WHO Immunization Implementation Guide
0.2.0 - ci-build

WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-immunizations/tree/123/merge and changes regularly. See the Directory of published versions

: IMMZD2DTMeaslesElements - JSON Representation

Draft as of 2026-03-03

Raw json | Download

{
  "resourceType" : "Library",
  "id" : "IMMZD2DTMeaslesElements",
  "meta" : {
    "profile" : [
      🔗 "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"🔗 ,
      "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"🔗 ,
      "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"🔗 ,
      "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"
    ]
  },
  "text" : {
    "status" : "extensions",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n    <table class=\"grid dict\">\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTMeaslesElements</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTMeaslesElements</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">0.2.0</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Url: </b></th>\n            <td style=\"padding-left: 4px;\"><a href=\"Library-IMMZD2DTMeaslesElements.html\">IMMZD2DTMeaslesElements</a></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">draft</td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Type: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                    \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>system: </b> <span><a href=\"http://terminology.hl7.org/7.0.1/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2026-03-03 13:07:11+0000</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">WHO</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Description: </b></th>\n            <td style=\"padding-left: 4px;\"><div><p>This library defines context-independent elements for Measles used throughout the Immunization CPG</p>\n</div></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Related Artifacts: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                \n                \n                <p><b>Dependencies</b></p>\n                <ul>\n                  \n                    <li><a href=\"Library-WHOConcepts.html\">WHOConcepts</a></li>\n                  \n                    <li><a href=\"Library-WHOCommon.html\">WHOCommon</a></li>\n                  \n                    <li><a href=\"Library-WHOElements.html\">WHOElements</a></li>\n                  \n                    <li><a href=\"Library-IMMZCommon.html\">IMMZCommon</a></li>\n                  \n                    <li><a href=\"Library-IMMZConcepts.html\">IMMZConcepts</a></li>\n                  \n                    <li><a href=\"Library-IMMZElements.html\">IMMZElements</a></li>\n                  \n                </ul>\n                \n                \n                \n                \n                \n            </td>\n        </tr>\n        \n\n        \n        <tr>\n          <th scope=\"row\"><b>Parameters: </b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n              \n                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Measles Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Measles Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Number of Measles Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 9 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>MCV Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Number of MCV Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No measles primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is more than or equal to 9 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No live vaccine was administered in the last 4 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Live vaccine was administered in the last 4 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV1 was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 15 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is more than or equal to 15 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV2 was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 12 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is more than or equal to 12 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 6 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV Dose 0 Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Number of MCV Dose 0 Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV0 was not administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is between 6 months and 9 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV0 was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>MCV Supplementary Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Number of MCV Supplementary Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Measles supplementary dose was not administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Measles routine immunization schedule is complete</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Live vaccine was administered in the past 4 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No live vaccine was administered in the past 4 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Measles supplementary dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Date of Latest Live Attenuated Vaccine</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n            </table>\n          </td>\n        </tr>\n        \n\n        \n\n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n              <tr><td><pre><code class=\"language-cql\">\n/*\n  * Library: IMMZD2DTMeaslesElements\n  */\nlibrary IMMZD2DTMeaslesElements\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude WHOConcepts\ninclude WHOCommon called WC\ninclude WHOElements called WE\n\ninclude IMMZCommon called Common\ninclude IMMZConcepts called Concepts\ninclude IMMZElements called Elements\n\n\ncontext Patient\n\n/*\n@internal: Measles containing Doses Administered to Patient\n*/\ndefine &quot;Measles Doses Administered to Patient&quot;:\n\n  Elements.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;Measles-containing vaccines&quot;\n\n/*\n@internal: Measles containing Doses Administered to Patient that are in the Primary series\n*/\ndefine &quot;Measles Primary Series Doses Administered to Patient&quot;:\n\n  &quot;Measles Doses Administered to Patient&quot;.seriesPrimary()\n\n/*\n@internal: Number of Measles Primary Series doses\n*/\ndefine &quot;Number of Measles Primary Series Doses Administered&quot;:\n\n  Count(&quot;Measles Primary Series Doses Administered to Patient&quot;)\n\n/*\n@input: Client's age is less than 9 months\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 9 months\n@code: Client's age is less than 9 months-41\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n*/\ndefine &quot;Client's age is less than 9 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &lt; 9\n\n/*\n@input: No measles primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0\n@code: No measles primary series doses were administered-127\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;No measles primary series doses were administered&quot;:\n  &quot;Number of MCV Primary Series Doses Administered&quot; = 0\n\n/*\n@input: Client's age is more than or equal to 9 months\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 9 months\n@code: Client's age is more than or equal to 9 months-41\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;Client's age is more than or equal to 9 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &gt;= 9\n\n/*\n@input: No live vaccine was administered in the last 4 weeks\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) ≥ 4 weeks\n@code: No live vaccine was administered in the last 4 weeks-92\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;No live vaccine was administered in the last 4 weeks&quot;:\n  Elements.&quot;No live vaccine was administered in the last 4 weeks&quot;\n\n/*\n@input: Live vaccine was administered in the last 4 weeks\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) &lt; 4 weeks\n@code: Live vaccine was administered in the last 4 weeks-92\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;Live vaccine was administered in the last 4 weeks&quot;:\n  Elements.&quot;Live vaccine was administered in the last 4 weeks&quot;\n\n/*\n@input: MCV1 was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1\n@code: MCV1 was administered-127\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;MCV1 was administered&quot;:\n  &quot;Number of MCV Primary Series Doses Administered&quot; = 1\n\n/*\n@input: Client's age is less than 15 months\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 15 months\n@code: Client's age is less than 15 months-42\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;Client's age is less than 15 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &lt; 15\n\n/*\n@input: Client's age is more than or equal to 15 months\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 15 months\n@code: Client's age is more than or equal to 15 months-42\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;Client's age is more than or equal to 15 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &gt;= 15\n\n/*\n@input: MCV2 was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2\n@code: MCV2 was administered-127\n@decision: IMMZ.D2.DT.Measles.Ongoing transmission: Countries with ongoing transmission in which the risk of measles mortality remains high (countries that provide first dose of measles-containing vaccine (MCV) at 9 months and second dose of MCV at 15 months)\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;MCV2 was administered&quot;:\n  &quot;Number of MCV Primary Series Doses Administered&quot; = 2\n\n/*\n@input: Client's age is less than 12 months\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 12 months\n@code: Client's age is less than 12 months-42\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;Client's age is less than 12 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &lt; 12\n\n/*\n@input: Client's age is more than or equal to 12 months\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 12 months\n@code: Client's age is more than or equal to 12 months-42\n@decision: IMMZ.D2.DT.Measles.Low transmission: Countries with low levels of measles transmission (countries that provide first dose of measles-containing vaccine (MCV) at 12 months and second dose of MCV at 15 months)\n*/\ndefine &quot;Client's age is more than or equal to 12 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &gt;= 12\n\n/*\n@input: Client's age is less than 6 months\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 6 months\n@code: Client's age is less than 6 months-41\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;Client's age is less than 6 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &lt; 6\n\n/*\n@input: MCV0 was not administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Dose 0&quot;) = 0\n@code: MCV0 was not administered-119\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;MCV0 was not administered&quot;:\n  &quot;Number of MCV Dose 0 Doses Administered&quot; = 0\n\n/*\n@input: Client's age is between 6 months and 9 months\n@pseudocode: 6 months ≤ Today's date − &quot;Date of birth&quot; &lt; 9 months\n@code: Client's age is between 6 months and 9 months-52\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;Client's age is between 6 months and 9 months&quot;:\n  6 &lt;= Elements.&quot;Current Patient Age In Months&quot;\n  and Elements.&quot;Current Patient Age In Months&quot; &lt; 9\n\n/*\n@input: MCV0 was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Dose 0&quot;) = 1\n@code: MCV0 was administered-119\n@decision: IMMZ.D2.DT.Measles.MCV dose 0: Measles-containing vaccine dose 0 (MCV0) administration\n*/\ndefine &quot;MCV0 was administered&quot;:\n  &quot;Number of MCV Dose 0 Doses Administered&quot; = 1\n\n/*\n@input: Measles supplementary dose was not administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Supplementary dose&quot;) = 0\n@code: Measles supplementary dose was not administered-131\n@decision: IMMZ.D2.DT.Measles.Supplementary dose: Measles-containing vaccine (MCV) supplementary dose administration\n*/\ndefine &quot;Measles supplementary dose was not administered&quot;:\n  &quot;Number of MCV Supplementary Doses Administered&quot; = 0\n\n/*\n@input: Measles routine immunization schedule is complete\n@pseudocode: &quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot;)\n@code: Measles routine immunization schedule is complete-104\n@decision: IMMZ.D2.DT.Measles.Supplementary dose: Measles-containing vaccine (MCV) supplementary dose administration\n*/\ndefine &quot;Measles routine immunization schedule is complete&quot;:\n  &quot;MCV2 was administered&quot;\n  or\n  Coalesce(\n    &quot;MCV Doses Administered to Patient&quot; Dose\n    aggregate Result: Elements.&quot;Completed the primary vaccination series Observation&quot;.partOf.references(Dose) or Result,\n    false )\n\n/*\n@input: Live vaccine was administered in the past 4 weeks\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) &lt; 4 weeks\n@code: Live vaccine was administered in the past 4 weeks-92\n@decision: IMMZ.D2.DT.Measles.Supplementary dose: Measles-containing vaccine (MCV) supplementary dose administration\n*/\ndefine &quot;Live vaccine was administered in the past 4 weeks&quot;:\n  &quot;Live vaccine was administered in the last 4 weeks&quot;\n\n/*\n@input: No live vaccine was administered in the past 4 weeks\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) ≥ 4 weeks\n@code: No live vaccine was administered in the past 4 weeks-92\n@decision: IMMZ.D2.DT.Measles.Supplementary dose: Measles-containing vaccine (MCV) supplementary dose administration\n*/\ndefine &quot;No live vaccine was administered in the past 4 weeks&quot;:\n  &quot;No live vaccine was administered in the last 4 weeks&quot;\n\n/*\n@input: Measles supplementary dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Measles-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Supplementary dose&quot;) = 1\n@code: Measles supplementary dose was administered-131\n@decision: IMMZ.D2.DT.Measles.Supplementary dose: Measles-containing vaccine (MCV) supplementary dose administration\n*/\ndefine &quot;Measles supplementary dose was administered&quot;:\n  &quot;Number of MCV Supplementary Doses Administered&quot; = 1\n\n/*\n@internal: MCV Doses Administered to Patient\n*/\ndefine &quot;MCV Doses Administered to Patient&quot;:\n  Elements.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;Measles-containing vaccines&quot;\n\n/*\n@internal: MCV Primary Series Doses Administered to Patient\n*/\ndefine &quot;MCV Primary Series Doses Administered to Patient&quot;:\n  &quot;MCV Doses Administered to Patient&quot;.seriesPrimary()\n\n/*\n@internal: MCV Dose 0 Doses Administered to Patient\n*/\ndefine &quot;MCV Dose 0 Doses Administered to Patient&quot;:\n  &quot;MCV Doses Administered to Patient&quot;.seriesDose0()\n\n/*\n@internal: MCV Supplementary Doses Administered to Patient\n*/\ndefine &quot;MCV Supplementary Doses Administered to Patient&quot;:\n  &quot;MCV Doses Administered to Patient&quot;.seriesSupplementary()\n\n/*\n@internal: Number of MCV Primary Series Doses Administered\n*/\ndefine &quot;Number of MCV Primary Series Doses Administered&quot;:\n  Count(&quot;MCV Primary Series Doses Administered to Patient&quot;)\n\n/*\n@internal: Number of MCV Dose 0 Doses Administered\n*/\ndefine &quot;Number of MCV Dose 0 Doses Administered&quot;:\n  Count(&quot;MCV Dose 0 Doses Administered to Patient&quot;)\n\n/*\n@internal: Number of MCV Supplementary Doses Administered\n*/\ndefine &quot;Number of MCV Supplementary Doses Administered&quot;:\n  Count(&quot;MCV Supplementary Doses Administered to Patient&quot;)\n\n/*\n@internal: Date of Latest Live Attenuated Vaccine\n*/\ndefine &quot;Date of Latest Live Attenuated Vaccine&quot;:\n  date from start of Elements.&quot;Live Attenuated Vaccines&quot;.mostRecent().occurrence.toInterval()\n</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+xml</th></tr>\n              <tr><td><pre><code>Encoded data (98256 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"
  },
  "extension" : [
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability",
      "valueCode" : "computable"
    }
  ],
  "url" : "http://smart.who.int/immunizations/Library/IMMZD2DTMeaslesElements",
  "version" : "0.2.0",
  "name" : "IMMZD2DTMeaslesElements",
  "title" : "IMMZD2DTMeaslesElements",
  "status" : "draft",
  "experimental" : false,
  "type" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/library-type",
        "code" : "logic-library"
      }
    ]
  },
  "date" : "2026-03-03T13:07:11+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "description" : "This library defines context-independent elements for Measles used throughout the Immunization CPG",
  "relatedArtifact" : [
    {
      "type" : "depends-on",
      "display" : "Library WHOConcepts",
      "resource" : "http://smart.who.int/immunizations/Library/WHOConcepts"
    },
    {
      "type" : "depends-on",
      "display" : "Library WC",
      "resource" : "http://smart.who.int/immunizations/Library/WHOCommon"
    },
    {
      "type" : "depends-on",
      "display" : "Library WE",
      "resource" : "http://smart.who.int/immunizations/Library/WHOElements"
    },
    {
      "type" : "depends-on",
      "display" : "Library Common",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZCommon"
    },
    {
      "type" : "depends-on",
      "display" : "Library Concepts",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZConcepts"
    },
    {
      "type" : "depends-on",
      "display" : "Library Elements",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZElements"
    }
  ],
  "parameter" : [
    {
      "name" : "Patient",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Patient"
    },
    {
      "name" : "Measles Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Measles Primary Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of Measles Primary Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "Client's age is less than 9 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "MCV Primary Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of MCV Primary Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "No measles primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 9 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "No live vaccine was administered in the last 4 weeks",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Live vaccine was administered in the last 4 weeks",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV1 was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 15 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 15 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV2 was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 12 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 12 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 6 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV Dose 0 Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of MCV Dose 0 Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "MCV0 was not administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is between 6 months and 9 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV0 was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "MCV Supplementary Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of MCV Supplementary Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "Measles supplementary dose was not administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Measles routine immunization schedule is complete",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Live vaccine was administered in the past 4 weeks",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "No live vaccine was administered in the past 4 weeks",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Measles supplementary dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Date of Latest Live Attenuated Vaccine",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVE1lYXNsZXNFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFRNZWFzbGVzRWxlbWVudHMKCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCmluY2x1ZGUgRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIFdIT0NvbmNlcHRzCmluY2x1ZGUgV0hPQ29tbW9uIGNhbGxlZCBXQwppbmNsdWRlIFdIT0VsZW1lbnRzIGNhbGxlZCBXRQoKaW5jbHVkZSBJTU1aQ29tbW9uIGNhbGxlZCBDb21tb24KaW5jbHVkZSBJTU1aQ29uY2VwdHMgY2FsbGVkIENvbmNlcHRzCmluY2x1ZGUgSU1NWkVsZW1lbnRzIGNhbGxlZCBFbGVtZW50cwoKCmNvbnRleHQgUGF0aWVudAoKLyoKQGludGVybmFsOiBNZWFzbGVzIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJNZWFzbGVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKCiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogTWVhc2xlcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgIk1lYXNsZXMgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgoKICAiTWVhc2xlcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzUHJpbWFyeSgpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBNZWFzbGVzIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIE1lYXNsZXMgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKCiAgQ291bnQoIk1lYXNsZXMgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDkgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIDwgOQoKLyoKQGlucHV0OiBObyBtZWFzbGVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBObyBtZWFzbGVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyNwpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAiTm8gbWVhc2xlcyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA5IG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omlIDkgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgbW9udGhzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTUNWIGRvc2UgMDogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgZG9zZSAwIChNQ1YwKSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPj0gOQoKLyoKQGlucHV0OiBObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJMaXZlIHZhY2NpbmUiID0gVFJVRSkg4omlIDQgd2Vla3MKQGNvZGU6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MtOTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyI6CiAgRWxlbWVudHMuIk5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiCgovKgpAaW5wdXQ6IExpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIkxpdmUgdmFjY2luZSIgPSBUUlVFKSA8IDQgd2Vla3MKQGNvZGU6IExpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MtOTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyI6CiAgRWxlbWVudHMuIkxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiCgovKgpAaW5wdXQ6IE1DVjEgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogTUNWMSB3YXMgYWRtaW5pc3RlcmVkLTEyNwpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAiTUNWMSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE1IG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxNSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzLTQyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE1IG1vbnRocyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiA8IDE1CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTUgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaUgMTUgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE1IG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxNSBtb250aHMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPj0gMTUKCi8qCkBpbnB1dDogTUNWMiB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBjb2RlOiBNQ1YyIHdhcyBhZG1pbmlzdGVyZWQtMTI3CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICJNQ1YyIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDEyIG1vbnRocwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMtNDIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiA8IDEyCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaUgMTIgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEyIG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiID49IDEyCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgNiBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMtNDEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTUNWIGRvc2UgMDogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgZG9zZSAwIChNQ1YwKSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPCA2CgovKgpAaW5wdXQ6IE1DVjAgd2FzIG5vdCBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiRG9zZSAwIikgPSAwCkBjb2RlOiBNQ1YwIHdhcyBub3QgYWRtaW5pc3RlcmVkLTExOQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiTUNWMCB3YXMgbm90IGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgbW9udGhzIGFuZCA5IG1vbnRocwpAcHNldWRvY29kZTogNiBtb250aHMg4omkIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgOSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgbW9udGhzIGFuZCA5IG1vbnRocy01MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiBtb250aHMgYW5kIDkgbW9udGhzIjoKICA2IDw9IEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIKICBhbmQgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiA8IDkKCi8qCkBpbnB1dDogTUNWMCB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkRvc2UgMCIpID0gMQpAY29kZTogTUNWMCB3YXMgYWRtaW5pc3RlcmVkLTExOQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiTUNWMCB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIE1DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIG5vdCBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiU3VwcGxlbWVudGFyeSBkb3NlIikgPSAwCkBjb2RlOiBNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZC0xMzEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICJNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBNZWFzbGVzIHJvdXRpbmUgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlCkBwc2V1ZG9jb2RlOiAiQ29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyIgPSBUUlVFICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMiKQpAY29kZTogTWVhc2xlcyByb3V0aW5lIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS0xMDQKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICJNZWFzbGVzIHJvdXRpbmUgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlIjoKICAiTUNWMiB3YXMgYWRtaW5pc3RlcmVkIgogIG9yCiAgQ29hbGVzY2UoCiAgICAiTUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBEb3NlCiAgICBhZ2dyZWdhdGUgUmVzdWx0OiBFbGVtZW50cy4iQ29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyBPYnNlcnZhdGlvbiIucGFydE9mLnJlZmVyZW5jZXMoRG9zZSkgb3IgUmVzdWx0LAogICAgZmFsc2UgKQoKLyoKQGlucHV0OiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJMaXZlIHZhY2NpbmUiID0gVFJVRSkgPCA0IHdlZWtzCkBjb2RlOiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLlN1cHBsZW1lbnRhcnkgZG9zZTogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgc3VwcGxlbWVudGFyeSBkb3NlIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAiTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyI6CiAgIkxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiCgovKgpAaW5wdXQ6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIkxpdmUgdmFjY2luZSIgPSBUUlVFKSDiiaUgNCB3ZWVrcwpAY29kZTogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcy05MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgIk5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MiOgogICJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIgoKLyoKQGlucHV0OiBNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlN1cHBsZW1lbnRhcnkgZG9zZSIpID0gMQpAY29kZTogTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMzEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICJNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCIgPSAxCgovKgpAaW50ZXJuYWw6IE1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIk1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIk1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiTUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIk1DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJNQ1YgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc0Rvc2UwKCkKCi8qCkBpbnRlcm5hbDogTUNWIFN1cHBsZW1lbnRhcnkgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIk1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzU3VwcGxlbWVudGFyeSgpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICJOdW1iZXIgb2YgTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgIk51bWJlciBvZiBNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IExpdmUgQXR0ZW51YXRlZCBWYWNjaW5lCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgTGl2ZSBBdHRlbnVhdGVkIFZhY2NpbmUiOgogIGRhdGUgZnJvbSBzdGFydCBvZiBFbGVtZW50cy4iTGl2ZSBBdHRlbnVhdGVkIFZhY2NpbmVzIi5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkK"
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNDk1Ij4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRNZWFzbGVzRWxlbWVudHMKICAqLwpsaWJyYXJ5IElNTVpEMkRUTWVhc2xlc0VsZW1lbnRzPC9hOnM+CiAgICAgIDwvYTpzPgogICA8L2Fubm90YXRpb24+CiAgIDxpZGVudGlmaWVyIGlkPSJJTU1aRDJEVE1lYXNsZXNFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB2ZXJzaW9uPSIxLjAuMCIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwNiIgbG9jYXRvcj0iNzoxLTc6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwNiI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwOCIgbG9jYXRvcj0iODoxLTg6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA4Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEwIiBsb2NhdG9yPSIxMDoxLTEwOjE5IiBsb2NhbElkZW50aWZpZXI9IldIT0NvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0NvbmNlcHRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTIiIGxvY2F0b3I9IjExOjEtMTE6MjciIGxvY2FsSWRlbnRpZmllcj0iV0MiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdDPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNCIgbG9jYXRvcj0iMTI6MS0xMjoyOSIgbG9jYWxJZGVudGlmaWVyPSJXRSIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9FbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdFPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNiIgbG9jYXRvcj0iMTQ6MS0xNDozMiIgbG9jYWxJZGVudGlmaWVyPSJDb21tb24iIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkNvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iMTU6MS0xNTozNiIgbG9jYWxJZGVudGlmaWVyPSJDb25jZXB0cyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIwIiBsb2NhdG9yPSIxNjoxLTE2OjM2IiBsb2NhbElkZW50aWZpZXI9IkVsZW1lbnRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyMCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBFbGVtZW50czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyNSIgbG9jYXRvcj0iMTk6MS0xOToxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjMiIGxvY2F0b3I9IjE5OjEtMTk6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMjQiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjIyIiBsb2NhdG9yPSIxOToxLTE5OjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI4IiBsb2NhdG9yPSIyNDoxLTI4OjU5IiBuYW1lPSJNZWFzbGVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJNZWFzbGVzIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTWVhc2xlcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtNZWFzbGVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDAiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50cy4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQwIiBsb2NhdG9yPSIyNjozLTI4OjU5IiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjIyOSIgbG9jYXRvcj0iMjY6My0yNjo0NCIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMzEiIGxvY2F0b3I9IjI2OjMtMjY6NDIiIG5hbWU9IkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMjM3IiBsb2NhdG9yPSIyNzozLTI4OjU5IiB4c2k6dHlwZT0iSW5WYWx1ZVNldCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjM5IiBuYW1lPSJ0OkNvbmNlcHQiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPGNvZGUgbG9jYWxJZD0iMjM4IiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjM0IiBsb2NhdG9yPSIyODo1LTI4OjE3IiBwYXRoPSJ2YWNjaW5lQ29kZSIgc2NvcGU9IkkiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICA8L2NvZGU+CiAgICAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIyMzYiIGxvY2F0b3I9IjI4OjIyLTI4OjU5IiBuYW1lPSJNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgcHJlc2VydmU9InRydWUiLz4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNDMiIGxvY2F0b3I9IjMzOjEtMzU6NTciIG5hbWU9Ik1lYXNsZXMgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik1lYXNsZXMgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMiLz4KICAgICAgICAgICAgPGE6cyByPSIyNDMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTWVhc2xlcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgJnF1b3Q7TWVhc2xlcyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKCiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O01lYXNsZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzUHJpbWFyeSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQ1IiBsb2NhdG9yPSIzNTozLTM1OjU3IiBuYW1lPSJzZXJpZXNQcmltYXJ5IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDQiIGxvY2F0b3I9IjM1OjMtMzU6NDEiIG5hbWU9Ik1lYXNsZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQ4IiBsb2NhdG9yPSI0MDoxLTQyOjYzIiBuYW1lPSJOdW1iZXIgb2YgTWVhc2xlcyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik51bWJlciBvZiBNZWFzbGVzIFByaW1hcnkgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQ4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBNZWFzbGVzIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgTWVhc2xlcyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs6CgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNZWFzbGVzIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI1MiIgbG9jYXRvcj0iNDI6My00Mjo2MyIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNDkiIGxvY2F0b3I9IjQyOjktNDI6NjIiIG5hbWU9Ik1lYXNsZXMgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjU1IiBsb2NhdG9yPSI1MDoxLTUxOjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA5IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzLTQxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI1NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA5IG1vbnRocwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocy00MQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTkiPiAmbHQ7IDk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI1NiIgbG9jYXRvcj0iNTE6My01MTo0NiIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI2MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjYxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU4IiBsb2NhdG9yPSI1MTozLTUxOjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTkiIGxvY2F0b3I9IjUxOjQ2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjc0IiBsb2NhdG9yPSIyNDM6MS0yNDY6NTkiIG5hbWU9Ik1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjc0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgJnF1b3Q7TUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzLiZxdW90O0Rvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gSTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZQogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+STwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz52YWNjaW5lQ29kZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGluIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db25jZXB0czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyODYiIGxvY2F0b3I9IjI0NDozLTI0Njo1OSIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNzUiIGxvY2F0b3I9IjI0NDozLTI0NDo0NCIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNzciIGxvY2F0b3I9IjI0NDozLTI0NDo0MiIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIyODMiIGxvY2F0b3I9IjI0NTozLTI0Njo1OSIgeHNpOnR5cGU9IkluVmFsdWVTZXQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4NSIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxjb2RlIGxvY2FsSWQ9IjI4NCIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4MCIgbG9jYXRvcj0iMjQ2OjUtMjQ2OjE3IiBwYXRoPSJ2YWNjaW5lQ29kZSIgc2NvcGU9IkkiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICA8L2NvZGU+CiAgICAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIyODIiIGxvY2F0b3I9IjI0NjoyMi0yNDY6NTkiIG5hbWU9Ik1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyIgbGlicmFyeU5hbWU9IkNvbmNlcHRzIiBwcmVzZXJ2ZT0idHJ1ZSIvPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI3MSIgbG9jYXRvcj0iMjUxOjEtMjUyOjUzIiBuYW1lPSJNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9IjI3MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O01DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyODgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc1ByaW1hcnkoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4OCIgbG9jYXRvcj0iMjUyOjMtMjUyOjUzIiBuYW1lPSJzZXJpZXNQcmltYXJ5IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODciIGxvY2F0b3I9IjI1MjozLTI1MjozNyIgbmFtZT0iTUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2OCIgbG9jYXRvcj0iMjY5OjEtMjcwOjU5IiBuYW1lPSJOdW1iZXIgb2YgTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6cyByPSIyNjgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5MiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjkyIiBsb2NhdG9yPSIyNzA6My0yNzA6NTkiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjg5IiBsb2NhdG9yPSIyNzA6OS0yNzA6NTgiIG5hbWU9Ik1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNjQiIGxvY2F0b3I9IjYwOjEtNjE6NTUiIG5hbWU9Ik5vIG1lYXNsZXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIG1lYXNsZXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIG1lYXNsZXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTI3Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjY0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIG1lYXNsZXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBjb2RlOiBObyBtZWFzbGVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyNwpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAmcXVvdDtObyBtZWFzbGVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTQiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2NSIgbG9jYXRvcj0iNjE6My02MTo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyOTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5NiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5MyIgbG9jYXRvcj0iNjE6My02MTo1MSIgbmFtZT0iTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5NCIgbG9jYXRvcj0iNjE6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyOTkiIGxvY2F0b3I9IjcwOjEtNzE6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgOSBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA5IG1vbnRocy00MSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjk5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgOSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMtNDEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwMCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDMiPiA+PSA5PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMDAiIGxvY2F0b3I9IjcxOjMtNzE6NDciIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzA0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMDUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDIiIGxvY2F0b3I9IjcxOjMtNzE6NDIiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwMyIgbG9jYXRvcj0iNzE6NDciIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDgiIGxvY2F0b3I9IjgxOjEtODI6NjUiIG5hbWU9Ik5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkg4omlIDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcy05MiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24iLz4KICAgICAgICAgICAgPGE6cyByPSIzMDgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkg4omlIDQgd2Vla3MKQGNvZGU6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MtOTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAmcXVvdDtObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMxMCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzEwIiBsb2NhdG9yPSI4MjozLTgyOjY1IiBuYW1lPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMxMyIgbG9jYXRvcj0iOTI6MS05Mzo2MiIgbmFtZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtMaXZlIHZhY2NpbmUmcXVvdDsgPSBUUlVFKSAmbHQ7IDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcy05MiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24iLz4KICAgICAgICAgICAgPGE6cyByPSIzMTMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkgJmx0OyA0IHdlZWtzCkBjb2RlOiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzLTkyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTUNWIGRvc2UgMDogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgZG9zZSAwIChNQ1YwKSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgJnF1b3Q7TGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMxNSIgbG9jYXRvcj0iOTM6My05Mzo2MiIgbmFtZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMTgiIGxvY2F0b3I9IjEwMjoxLTEwMzo1NSIgbmFtZT0iTUNWMSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJNQ1YxIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik1DVjEgd2FzIGFkbWluaXN0ZXJlZC0xMjciLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6cyByPSIzMTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTUNWMSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O01lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAY29kZTogTUNWMSB3YXMgYWRtaW5pc3RlcmVkLTEyNwpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5PbmdvaW5nIHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggb25nb2luZyB0cmFuc21pc3Npb24gaW4gd2hpY2ggdGhlIHJpc2sgb2YgbWVhc2xlcyBtb3J0YWxpdHkgcmVtYWlucyBoaWdoIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgOSBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpCiovCmRlZmluZSAmcXVvdDtNQ1YxIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzE5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBNQ1YgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMSI+ID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzE5IiBsb2NhdG9yPSIxMDM6My0xMDM6NTUiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzIyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjAiIGxvY2F0b3I9IjEwMzozLTEwMzo1MSIgbmFtZT0iTnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyMSIgbG9jYXRvcj0iMTAzOjU1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzI2IiBsb2NhdG9yPSIxMTI6MS0xMTM6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE1IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMTUgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzLTQyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuT25nb2luZyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIG9uZ29pbmcgdHJhbnNtaXNzaW9uIGluIHdoaWNoIHRoZSByaXNrIG9mIG1lYXNsZXMgbW9ydGFsaXR5IHJlbWFpbnMgaGlnaCAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDkgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLkxvdyB0cmFuc21pc3Npb246IENvdW50cmllcyB3aXRoIGxvdyBsZXZlbHMgb2YgbWVhc2xlcyB0cmFuc21pc3Npb24gKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCAxMiBtb250aHMgYW5kIHNlY29uZCBkb3NlIG9mIE1DViBhdCAxNSBtb250aHMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzI2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyAxNSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzLTQyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTUgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMyNyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzAiPiAmbHQ7IDE1PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMjciIGxvY2F0b3I9IjExMzozLTExMzo0NyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzMSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzMyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI5IiBsb2NhdG9yPSIxMTM6My0xMTM6NDIiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzMCIgbG9jYXRvcj0iMTEzOjQ2LTExMzo0NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxNSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMzUiIGxvY2F0b3I9IjEyMjoxLTEyMzo0OCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxNSBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTUgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDE1IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE1IG1vbnRocy00MiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMzNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE1IG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAxNSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTUgbW9udGhzLTQyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTUgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMzNiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzkiPiA+PSAxNTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzM2IiBsb2NhdG9yPSIxMjM6My0xMjM6NDgiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzQwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzgiIGxvY2F0b3I9IjEyMzozLTEyMzo0MiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM5IiBsb2NhdG9yPSIxMjM6NDctMTIzOjQ4IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjE1IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0NCIgbG9jYXRvcj0iMTMyOjEtMTMzOjU1IiBuYW1lPSJNQ1YyIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik1DVjIgd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iTUNWMiB3YXMgYWRtaW5pc3RlcmVkLTEyNyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjM0NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBNQ1YyIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyCkBjb2RlOiBNQ1YyIHdhcyBhZG1pbmlzdGVyZWQtMTI3CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk9uZ29pbmcgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBvbmdvaW5nIHRyYW5zbWlzc2lvbiBpbiB3aGljaCB0aGUgcmlzayBvZiBtZWFzbGVzIG1vcnRhbGl0eSByZW1haW5zIGhpZ2ggKGNvdW50cmllcyB0aGF0IHByb3ZpZGUgZmlyc3QgZG9zZSBvZiBtZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBhdCA5IG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykKKi8KZGVmaW5lICZxdW90O01DVjIgd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIE1DViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ3Ij4gPSAyPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNDUiIGxvY2F0b3I9IjEzMzozLTEzMzo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM0OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0NiIgbG9jYXRvcj0iMTMzOjMtMTMzOjUxIiBuYW1lPSJOdW1iZXIgb2YgTUNWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQ3IiBsb2NhdG9yPSIxMzM6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNTIiIGxvY2F0b3I9IjE0MToxLTE0Mjo0NyIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyAxMiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMtNDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjM1MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMTIgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzUzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NiI+ICZsdDsgMTI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM1MyIgbG9jYXRvcj0iMTQyOjMtMTQyOjQ3IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzU3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNTgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTUiIGxvY2F0b3I9IjE0MjozLTE0Mjo0MiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU2IiBsb2NhdG9yPSIxNDI6NDYtMTQyOjQ3IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM2MSIgbG9jYXRvcj0iMTUwOjEtMTUxOjQ4IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEyIG1vbnRocyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzLTQyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuTG93IHRyYW5zbWlzc2lvbjogQ291bnRyaWVzIHdpdGggbG93IGxldmVscyBvZiBtZWFzbGVzIHRyYW5zbWlzc2lvbiAoY291bnRyaWVzIHRoYXQgcHJvdmlkZSBmaXJzdCBkb3NlIG9mIG1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIGF0IDEyIG1vbnRocyBhbmQgc2Vjb25kIGRvc2Ugb2YgTUNWIGF0IDE1IG1vbnRocykiLz4KICAgICAgICAgICAgPGE6cyByPSIzNjEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMTIgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEyIG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5Mb3cgdHJhbnNtaXNzaW9uOiBDb3VudHJpZXMgd2l0aCBsb3cgbGV2ZWxzIG9mIG1lYXNsZXMgdHJhbnNtaXNzaW9uIChjb3VudHJpZXMgdGhhdCBwcm92aWRlIGZpcnN0IGRvc2Ugb2YgbWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgYXQgMTIgbW9udGhzIGFuZCBzZWNvbmQgZG9zZSBvZiBNQ1YgYXQgMTUgbW9udGhzKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzYyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2NSI+ID49IDEyPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNjIiIGxvY2F0b3I9IjE1MTozLTE1MTo0OCIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjYiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM2NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM2NCIgbG9jYXRvcj0iMTUxOjMtMTUxOjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjUiIGxvY2F0b3I9IjE1MTo0Ny0xNTE6NDgiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMTIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzcwIiBsb2NhdG9yPSIxNTk6MS0xNjA6NDYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDYgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMtNDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzcwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDYgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgbW9udGhzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiBtb250aHMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzcxIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3NCI+ICZsdDsgNjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzcxIiBsb2NhdG9yPSIxNjA6My0xNjA6NDYiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNzUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM3NiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3MyIgbG9jYXRvcj0iMTYwOjMtMTYwOjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzQiIGxvY2F0b3I9IjE2MDo0NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM4NiIgbG9jYXRvcj0iMjU3OjEtMjU4OjUxIiBuYW1lPSJNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMzg2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE1DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O01DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzg4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O01DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzg4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zZXJpZXNEb3NlMCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzg4IiBsb2NhdG9yPSIyNTg6My0yNTg6NTEiIG5hbWU9InNlcmllc0Rvc2UwIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODciIGxvY2F0b3I9IjI1ODozLTI1ODozNyIgbmFtZT0iTUNWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM4MyIgbG9jYXRvcj0iMjc1OjEtMjc2OjUxIiBuYW1lPSJOdW1iZXIgb2YgTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik51bWJlciBvZiBNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTpzIHI9IjM4MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzOTIiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzOTIiIGxvY2F0b3I9IjI3NjozLTI3Njo1MSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIzODkiIGxvY2F0b3I9IjI3Njo5LTI3Njo1MCIgbmFtZT0iTUNWIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNzkiIGxvY2F0b3I9IjE2ODoxLTE2OTo0NyIgbmFtZT0iTUNWMCB3YXMgbm90IGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTUNWMCB3YXMgbm90IGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Rvc2UgMCZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik1DVjAgd2FzIG5vdCBhZG1pbmlzdGVyZWQtMTE5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuTUNWIGRvc2UgMDogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgZG9zZSAwIChNQ1YwKSBhZG1pbmlzdHJhdGlvbiIvPgogICAgICAgICAgICA8YTpzIHI9IjM3OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBNQ1YwIHdhcyBub3QgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O01lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7RG9zZSAwJnF1b3Q7KSA9IDAKQGNvZGU6IE1DVjAgd2FzIG5vdCBhZG1pbmlzdGVyZWQtMTE5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICZxdW90O01DVjAgd2FzIG5vdCBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzgwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTQiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4MCIgbG9jYXRvcj0iMTY5OjMtMTY5OjQ3IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5NSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzk2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzkzIiBsb2NhdG9yPSIxNjk6My0xNjk6NDMiIG5hbWU9Ik51bWJlciBvZiBNQ1YgRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk0IiBsb2NhdG9yPSIxNjk6NDciIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzOTkiIGxvY2F0b3I9IjE3NzoxLTE3OTo1MCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiBtb250aHMgYW5kIDkgbW9udGhzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IG1vbnRocyBhbmQgOSBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDkgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgbW9udGhzIGFuZCA5IG1vbnRocy01MiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24iLz4KICAgICAgICAgICAgPGE6cyByPSIzOTkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiBtb250aHMgYW5kIDkgbW9udGhzCkBwc2V1ZG9jb2RlOiA2IG1vbnRocyDiiaQgVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgOSBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgbW9udGhzIGFuZCA5IG1vbnRocy01MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IG1vbnRocyBhbmQgOSBtb250aHMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDAwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMiI+NiAmbHQ7PSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDA3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxMCI+ICZsdDsgOTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQwMCIgbG9jYXRvcj0iMTc4OjMtMTc5OjUwIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDAxIiBsb2NhdG9yPSIxNzg6My0xNzg6NDciIHhzaTp0eXBlPSJMZXNzT3JFcXVhbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDA1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MDYiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDIiIGxvY2F0b3I9IjE3ODozIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjYiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwNCIgbG9jYXRvcj0iMTc4OjgtMTc4OjQ3IiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwNyIgbG9jYXRvcj0iMTc5OjctMTc5OjUwIiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDExIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MTIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDkiIGxvY2F0b3I9IjE3OTo3LTE3OTo0NiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDEwIiBsb2NhdG9yPSIxNzk6NTAiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQxNSIgbG9jYXRvcj0iMTg3OjEtMTg4OjQ3IiBuYW1lPSJNQ1YwIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik1DVjAgd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Rvc2UgMCZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik1DVjAgd2FzIGFkbWluaXN0ZXJlZC0xMTkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5NQ1YgZG9zZSAwOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSBkb3NlIDAgKE1DVjApIGFkbWluaXN0cmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDE1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE1DVjAgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Rvc2UgMCZxdW90OykgPSAxCkBjb2RlOiBNQ1YwIHdhcyBhZG1pbmlzdGVyZWQtMTE5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLk1DViBkb3NlIDA6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIGRvc2UgMCAoTUNWMCkgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICZxdW90O01DVjAgd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MTYiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIE1DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxOCI+ID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDE2IiBsb2NhdG9yPSIxODg6My0xODg6NDciIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDE5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MjAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTciIGxvY2F0b3I9IjE4ODozLTE4ODo0MyIgbmFtZT0iTnVtYmVyIG9mIE1DViBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTgiIGxvY2F0b3I9IjE4ODo0NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQzMCIgbG9jYXRvcj0iMjYzOjEtMjY0OjU5IiBuYW1lPSJNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTUNWIFN1cHBsZW1lbnRhcnkgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSI0MzAiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTUNWIFN1cHBsZW1lbnRhcnkgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O01DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDMxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNQ1YgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzU3VwcGxlbWVudGFyeSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDMyIiBsb2NhdG9yPSIyNjQ6My0yNjQ6NTkiIG5hbWU9InNlcmllc1N1cHBsZW1lbnRhcnkiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQzMSIgbG9jYXRvcj0iMjY0OjMtMjY0OjM3IiBuYW1lPSJNQ1YgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDI3IiBsb2NhdG9yPSIyODE6MS0yODI6NTgiIG5hbWU9Ik51bWJlciBvZiBNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik51bWJlciBvZiBNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6cyByPSI0MjciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgJnF1b3Q7TnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MzYiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TUNWIFN1cHBsZW1lbnRhcnkgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDM2IiBsb2NhdG9yPSIyODI6My0yODI6NTgiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNDMzIiBsb2NhdG9yPSIyODI6OS0yODI6NTciIG5hbWU9Ik1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyMyIgbG9jYXRvcj0iMTk2OjEtMTk3OjU0IiBuYW1lPSJNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIG5vdCBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtTdXBwbGVtZW50YXJ5IGRvc2UmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZC0xMzEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbiIvPgogICAgICAgICAgICA8YTpzIHI9IjQyMyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1N1cHBsZW1lbnRhcnkgZG9zZSZxdW90OykgPSAwCkBjb2RlOiBNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgbm90IGFkbWluaXN0ZXJlZC0xMzEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24KKi8KZGVmaW5lICZxdW90O01lYXNsZXMgc3VwcGxlbWVudGFyeSBkb3NlIHdhcyBub3QgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQyNCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgTUNWIFN1cHBsZW1lbnRhcnkgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzOCI+ID0gMDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDI0IiBsb2NhdG9yPSIxOTc6My0xOTc6NTQiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDM5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NDAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzciIGxvY2F0b3I9IjE5NzozLTE5Nzo1MCIgbmFtZT0iTnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM4IiBsb2NhdG9yPSIxOTc6NTQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NDMiIGxvY2F0b3I9IjIwNToxLTIxMToxMSIgbmFtZT0iTWVhc2xlcyByb3V0aW5lIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTWVhc2xlcyByb3V0aW5lIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzJnF1b3Q7ID0gVFJVRSAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJNZWFzbGVzIHJvdXRpbmUgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlLTEwNCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5NZWFzbGVzLlN1cHBsZW1lbnRhcnkgZG9zZTogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgc3VwcGxlbWVudGFyeSBkb3NlIGFkbWluaXN0cmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDQzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE1lYXNsZXMgcm91dGluZSBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUKQHBzZXVkb2NvZGU6ICZxdW90O0NvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMmcXVvdDsgPSBUUlVFICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspCkBjb2RlOiBNZWFzbGVzIHJvdXRpbmUgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlLTEwNApAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgJnF1b3Q7TWVhc2xlcyByb3V0aW5lIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NDQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TUNWMiB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIG9yCiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDc2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db2FsZXNjZSgKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O01DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IERvc2U8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5hZ2dyZWdhdGUgUmVzdWx0OiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyBPYnNlcnZhdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+cGFydE9mPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5yZWZlcmVuY2VzKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RG9zZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gb3IgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDcwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5SZXN1bHQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDczIj4sCiAgICBmYWxzZSApPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDQ0IiBsb2NhdG9yPSIyMDY6My0yMTE6MTEiIHhzaTp0eXBlPSJPciI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0NSIgbG9jYXRvcj0iMjA2OjMtMjA2OjI1IiBuYW1lPSJNQ1YyIHdhcyBhZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3NiIgbG9jYXRvcj0iMjA4OjMtMjExOjExIiB4c2k6dHlwZT0iQ29hbGVzY2UiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzIiIGxvY2F0b3I9IjIwOTo1LTIxMDoxMTkiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNDQ2IiBsb2NhdG9yPSIyMDk6NS0yMDk6NDQiIGFsaWFzPSJEb3NlIj4KICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDQ3IiBsb2NhdG9yPSIyMDk6NS0yMDk6MzkiIG5hbWU9Ik1DViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDxhZ2dyZWdhdGUgbG9jYWxJZD0iNDQ5IiBsb2NhdG9yPSIyMTA6NS0yMTA6MTE5IiBpZGVudGlmaWVyPSJSZXN1bHQiPgogICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NTIiIGxvY2F0b3I9IjIxMDoyMy0yMTA6MTE5IiB4c2k6dHlwZT0iT3IiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjYiIGxvY2F0b3I9IjIxMDoyMy0yMTA6MTA5IiBuYW1lPSJyZWZlcmVuY2VzIiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDY3IiB4c2k6dHlwZT0iTGlzdFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZWxlbWVudFR5cGUgbG9jYWxJZD0iNDY4IiBuYW1lPSJmaGlyOlJlZmVyZW5jZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NpZ25hdHVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NjkiIG5hbWU9ImZoaXI6UmVzb3VyY2UiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY0IiBsb2NhdG9yPSIyMTA6MjMtMjEwOjkyIiB4c2k6dHlwZT0iRmxhdHRlbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2MiIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI0NjEiIGFsaWFzPSIkdGhpcyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ1NCIgbG9jYXRvcj0iMjEwOjIzLTIxMDo4NSIgbmFtZT0iQ29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyBPYnNlcnZhdGlvbiIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjQ1OCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1NyIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1NiIgcGF0aD0icGFydE9mIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjQ1NSIgbmFtZT0iJHRoaXMiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJldHVybiBsb2NhbElkPSI0NjMiIGRpc3RpbmN0PSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ2MCIgcGF0aD0icGFydE9mIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjQ1OSIgbmFtZT0iJHRoaXMiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcmV0dXJuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY1IiBsb2NhdG9yPSIyMTA6MTA1LTIxMDoxMDgiIG5hbWU9IkRvc2UiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3MSIgYXNUeXBlPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3MCIgbG9jYXRvcj0iMjEwOjExNC0yMTA6MTE5IiBuYW1lPSJSZXN1bHQiIHhzaTp0eXBlPSJRdWVyeUxldFJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgICAgICAgPHN0YXJ0aW5nIGxvY2FsSWQ9IjQ1MCIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgICAgICAgPC9hZ2dyZWdhdGU+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDczIiBsb2NhdG9yPSIyMTE6NS0yMTE6OSIgdmFsdWVUeXBlPSJ0OkJvb2xlYW4iIHZhbHVlPSJmYWxzZSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ3OSIgbG9jYXRvcj0iMjE5OjEtMjIwOjUzIiBuYW1lPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O0xpdmUgdmFjY2luZSZxdW90OyA9IFRSVUUpICZsdDsgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24iLz4KICAgICAgICAgICAgPGE6cyByPSI0NzkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkgJmx0OyA0IHdlZWtzCkBjb2RlOiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5NZWFzbGVzLlN1cHBsZW1lbnRhcnkgZG9zZTogTWVhc2xlcy1jb250YWluaW5nIHZhY2NpbmUgKE1DVikgc3VwcGxlbWVudGFyeSBkb3NlIGFkbWluaXN0cmF0aW9uCiovCmRlZmluZSAmcXVvdDtMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ4MCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDgwIiBsb2NhdG9yPSIyMjA6My0yMjA6NTMiIG5hbWU9IkxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4MyIgbG9jYXRvcj0iMjI4OjEtMjI5OjU2IiBuYW1lPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O0xpdmUgdmFjY2luZSZxdW90OyA9IFRSVUUpIOKJpSA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MtOTIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbiIvPgogICAgICAgICAgICA8YTpzIHI9IjQ4MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtMaXZlIHZhY2NpbmUmcXVvdDsgPSBUUlVFKSDiiaUgNCB3ZWVrcwpAY29kZTogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcy05MgpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgJnF1b3Q7Tm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0ODQiPgogICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O05vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ4NCIgbG9jYXRvcj0iMjI5OjMtMjI5OjU2IiBuYW1lPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0ODciIGxvY2F0b3I9IjIzNzoxLTIzODo1NCIgbmFtZT0iTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1N1cHBsZW1lbnRhcnkgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik1lYXNsZXMgc3VwcGxlbWVudGFyeSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTMxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULk1lYXNsZXMuU3VwcGxlbWVudGFyeSBkb3NlOiBNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZSAoTUNWKSBzdXBwbGVtZW50YXJ5IGRvc2UgYWRtaW5pc3RyYXRpb24iLz4KICAgICAgICAgICAgPGE6cyByPSI0ODciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtNZWFzbGVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1N1cHBsZW1lbnRhcnkgZG9zZSZxdW90OykgPSAxCkBjb2RlOiBNZWFzbGVzIHN1cHBsZW1lbnRhcnkgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEzMQpAZGVjaXNpb246IElNTVouRDIuRFQuTWVhc2xlcy5TdXBwbGVtZW50YXJ5IGRvc2U6IE1lYXNsZXMtY29udGFpbmluZyB2YWNjaW5lIChNQ1YpIHN1cHBsZW1lbnRhcnkgZG9zZSBhZG1pbmlzdHJhdGlvbgoqLwpkZWZpbmUgJnF1b3Q7TWVhc2xlcyBzdXBwbGVtZW50YXJ5IGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0ODgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIE1DViBTdXBwbGVtZW50YXJ5IERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTAiPiA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ4OCIgbG9jYXRvcj0iMjM4OjMtMjM4OjU0IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ5MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDkyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDg5IiBsb2NhdG9yPSIyMzg6My0yMzg6NTAiIG5hbWU9Ik51bWJlciBvZiBNQ1YgU3VwcGxlbWVudGFyeSBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5MCIgbG9jYXRvcj0iMjM4OjU0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDk1IiBsb2NhdG9yPSIyODc6MS0yODg6OTMiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IExpdmUgQXR0ZW51YXRlZCBWYWNjaW5lIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJEYXRlIG9mIExhdGVzdCBMaXZlIEF0dGVudWF0ZWQgVmFjY2luZSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ5NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBEYXRlIG9mIExhdGVzdCBMaXZlIEF0dGVudWF0ZWQgVmFjY2luZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBMYXRlc3QgTGl2ZSBBdHRlbnVhdGVkIFZhY2NpbmUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDk2Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDk3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TGl2ZSBBdHRlbnVhdGVkIFZhY2NpbmVzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5tb3N0UmVjZW50KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm9jY3VycmVuY2U8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnRvSW50ZXJ2YWwoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDk2IiBsb2NhdG9yPSIyODg6My0yODg6OTMiIHhzaTp0eXBlPSJEYXRlRnJvbSI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5NyIgbG9jYXRvcj0iMjg4OjEzLTI4ODo5MyIgeHNpOnR5cGU9IlN0YXJ0Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTA0IiBsb2NhdG9yPSIyODg6MjItMjg4OjkzIiBuYW1lPSJ0b0ludGVydmFsIiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwMyIgbG9jYXRvcj0iMjg4OjIyLTI4ODo4MCIgcGF0aD0ib2NjdXJyZW5jZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI1MDAiIGxvY2F0b3I9IjI4ODoyMi0yODg6NjkiIG5hbWU9Im1vc3RSZWNlbnQiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MDEiIHhzaTp0eXBlPSJMaXN0VHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50VHlwZSBsb2NhbElkPSI1MDIiIG5hbWU9ImZoaXI6SW1tdW5pemF0aW9uIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2lnbmF0dXJlPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0OTkiIGxvY2F0b3I9IjI4ODoyMi0yODg6NTYiIG5hbWU9IkxpdmUgQXR0ZW51YXRlZCBWYWNjaW5lcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="
    }
  ]
}