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/ and changes regularly. See the Directory of published versions

: IMMZD2DTTBEEncounterElements - JSON Representation

Draft as of 2025-11-25

Raw json | Download

{
  "resourceType" : "Library",
  "id" : "IMMZD2DTTBEEncounterElements",
  "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;\">IMMZD2DTTBEEncounterElements</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTTBEEncounterElements</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-IMMZD2DTTBEEncounterElements.html\">IMMZD2DTTBEEncounterElements</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.0/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;\">2025-11-25 20:07:03+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 encounter-based elements for TBE 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-IMMZEncounterElements.html\">IMMZEncounterElements</a></li>\n                  \n                    <li><a href=\"Library-IMMZD2DTTBEElements.html\">IMMZD2DTTBEElements</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>Today</th><th>date</th><th>0</th><th>1</th><th>In</th></tr>\n              \n                <tr><th>EncounterId</th><th>string</th><th>0</th><th>1</th><th>In</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>TBE Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>TBE 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 TBE 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 1 year</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No TBE 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 1 year</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>One TBE primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Date of Latest TBE Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered less than 1 month ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered more than 1 month ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Two TBE primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered less than 5 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered more than 5 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Three TBE primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>TBE Booster Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Number of TBE Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No TBE booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered less than 3 years ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered more than 3 years ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>At least one booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered less than 9 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered more than 9 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 3 years</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 3 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered less than 12 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest TBE dose was administered more than 12 months ago</th><th>boolean</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: IMMZD2DTTBEEncounterElements\n  */\nlibrary IMMZD2DTTBEEncounterElements\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 IMMZEncounterElements called Encounter\n\ninclude IMMZD2DTTBEElements called TBEElements\n\nparameter Today Date default Today()\nparameter EncounterId String\n\ncontext Patient\n\n/*\n@internal: TBE containing Doses Administered to Patient\n*/\ndefine &quot;TBE Doses Administered to Patient&quot;:\n  Encounter.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;TBE vaccines&quot;\n\n/*\n@internal: TBE containing Doses Administered to Patient that are in the Primary series\n*/\ndefine &quot;TBE Primary Series Doses Administered to Patient&quot;:\n  &quot;TBE Doses Administered to Patient&quot;.seriesPrimary()\n\n/*\n@internal: Number of TBE Primary Series doses\n*/\ndefine &quot;Number of TBE Primary Series Doses Administered&quot;:\n  Count(&quot;TBE Primary Series Doses Administered to Patient&quot;)\n\n/*\n@input: Client's age is less than 1 year\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 1 year\n@code: Client's age is less than 1 year-39\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;Client's age is less than 1 year&quot;:\n  Encounter.&quot;Current Patient Age In Years&quot; &lt; 1\n\n/*\n@input: No TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0\n@code: No TBE primary series doses were administered-112\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;No TBE primary series doses were administered&quot;:\n  &quot;Number of TBE Primary Series Doses Administered&quot;  = 0\n\n/*\n@input: Client's age is more than or equal to 1 year\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 1 year\n@code: Client's age is more than or equal to 1 year-39\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;Client's age is more than or equal to 1 year&quot;:\n  Encounter.&quot;Current Patient Age In Years&quot; &gt;= 1\n\n/*\n@input: One TBE primary series dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1\n@code: One TBE primary series dose was administered-112\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;One TBE primary series dose was administered&quot;:\n  &quot;Number of TBE Primary Series Doses Administered&quot;  = 1\n\n/*\n@input: The latest TBE dose was administered less than 1 month ago\n@pseudocode: Today's date − &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) &lt; 1 month\n@code: The latest TBE dose was administered less than 1 month ago-95\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n*/\ndefine &quot;The latest TBE dose was administered less than 1 month ago&quot;:\n  &quot;Date of Latest TBE Dose&quot; is not null\n    and duration in months between &quot;Date of Latest TBE Dose&quot; and Today &lt; 1\n\n/*\n@input: The latest TBE dose was administered more than 1 month ago\n@pseudocode: Today's date − &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) ≥ 1 month\n@code: The latest TBE dose was administered more than 1 month ago-95\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n*/\ndefine &quot;The latest TBE dose was administered more than 1 month ago&quot;:\n  not &quot;The latest TBE dose was administered less than 1 month ago&quot;\n\n/*\n@input: Two TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2\n@code: Two TBE primary series doses were administered-112\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;Two TBE primary series doses were administered&quot;:\n  &quot;Number of TBE Primary Series Doses Administered&quot;  = 2\n\n/*\n@input: The latest TBE dose was administered less than 5 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) &lt; 5 months\n@code: The latest TBE dose was administered less than 5 months ago-103\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered less than 5 months ago&quot;:\n  &quot;Date of Latest TBE Dose&quot; is not null\n    and duration in months between &quot;Date of Latest TBE Dose&quot; and Today &lt; 5\n\n/*\n@input: The latest TBE dose was administered more than 5 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) ≥ 5 months\n@code: The latest TBE dose was administered more than 5 months ago-103\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered more than 5 months ago&quot;:\n  not &quot;The latest TBE dose was administered less than 5 months ago&quot;\n\n/*\n@input: Three TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 3\n@code: Three TBE primary series doses were administered-112\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;Three TBE primary series doses were administered&quot;:\n  &quot;Number of TBE Primary Series Doses Administered&quot;  = 3\n\n/*\n@input: No TBE booster dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 0\n@code: No TBE booster dose was administered-110\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;No TBE booster dose was administered&quot;:\n  &quot;Number of TBE Booster Series Doses Administered&quot; = 0\n\n/*\n@input: The latest TBE dose was administered less than 3 years ago\n@pseudocode: 'Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) &lt; 3 years\n@code: The latest TBE dose was administered less than 3 years ago-103\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered less than 3 years ago&quot;:\n  &quot;Date of Latest TBE Dose&quot; is not null\n    and duration in years between &quot;Date of Latest TBE Dose&quot; and Today &lt; 3\n\n/*\n@input: The latest TBE dose was administered more than 3 years ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) ≥ 3 years\n@code: The latest TBE dose was administered more than 3 years ago-102\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered more than 3 years ago&quot;:\n  not &quot;The latest TBE dose was administered less than 3 years ago&quot;\n\n/*\n@input: At least one booster dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) ≥ 1\n@code: At least one booster dose was administered-110\n@decision: IMMZ.D2.DT.TBE.FSME-Immun: FSME-Immun schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children)\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;At least one booster dose was administered&quot;:\n  &quot;Number of TBE Booster Series Doses Administered&quot; &gt;= 1\n\n/*\n@input: The latest TBE dose was administered less than 9 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) &lt; 9 months\n@code: The latest TBE dose was administered less than 9 months ago-103\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;The latest TBE dose was administered less than 9 months ago&quot;:\n  &quot;Date of Latest TBE Dose&quot; is not null\n    and duration in months between &quot;Date of Latest TBE Dose&quot; and Today &lt; 9\n\n/*\n@input: The latest TBE dose was administered more than 9 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) ≥ 9 months\n@code: The latest TBE dose was administered more than 9 months ago-103\n@decision: IMMZ.D2.DT.TBE.Encepur: Encepur schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t)\n*/\ndefine &quot;The latest TBE dose was administered more than 9 months ago&quot;:\n  not &quot;The latest TBE dose was administered less than 9 months ago&quot;\n\n/*\n@input: Client's age is less than 3 years\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 3 years\n@code: Client's age is less than 3 years-40\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;Client's age is less than 3 years&quot;:\n  Encounter.&quot;Current Patient Age In Years&quot; &lt; 3\n\n/*\n@input: Client's age is more than or equal to 3 years\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 3 years\n@code: Client's age is more than or equal to 3 years-40\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;Client's age is more than or equal to 3 years&quot;:\n  Encounter.&quot;Current Patient Age In Years&quot; &gt;= 3\n\n/*\n@input: The latest TBE dose was administered less than 12 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) &lt; 12 months\n@code: The latest TBE dose was administered less than 12 months ago-104\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered less than 12 months ago&quot;:\n  &quot;Date of Latest TBE Dose&quot; is not null\n    and duration in months between &quot;Date of Latest TBE Dose&quot; and Today &lt; 12\n\n/*\n@input: The latest TBE dose was administered more than 12 months ago\n@pseudocode: Today's date − &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;TBE vaccines&quot;) ≥ 12 months\n@code: The latest TBE dose was administered more than 12 months ago-97\n@decision: IMMZ.D2.DT.TBE.TBE-Moscow: TBE-Moscow schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t)\n@decision: IMMZ.D2.DT.TBE.EnceVir: EnceVir schedule\n(In areas where the disease is highly endemic, implying that there is a high individual risk of infection, WHO recommends that vaccination be offered to all age groups, including children\t\t\t\t\t)\n*/\ndefine &quot;The latest TBE dose was administered more than 12 months ago&quot;:\n  not &quot;The latest TBE dose was administered less than 12 months ago&quot;\n\n/*\n@internal: Date of Latest TBE Dose\n*/\ndefine &quot;Date of Latest TBE Dose&quot;:\n  date from start of &quot;TBE Doses Administered to Patient&quot;.mostRecent().occurrence.toInterval()\n\n/*\n@internal: TBE Booster Series Doses Administered to Patient\n*/\ndefine &quot;TBE Booster Series Doses Administered to Patient&quot;:\n  &quot;TBE Doses Administered to Patient&quot;.seriesBooster()\n\n/*\n@internal: Number of TBE Booster Series Doses Administered\n*/\ndefine &quot;Number of TBE Booster Series Doses Administered&quot;:\n  Count(&quot;TBE Booster Series Doses Administered to Patient&quot;)\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 (113472 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/IMMZD2DTTBEEncounterElements",
  "version" : "0.2.0",
  "name" : "IMMZD2DTTBEEncounterElements",
  "title" : "IMMZD2DTTBEEncounterElements",
  "status" : "draft",
  "experimental" : false,
  "type" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/library-type",
        "code" : "logic-library"
      }
    ]
  },
  "date" : "2025-11-25T20:07:03+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "description" : "This library defines encounter-based elements for TBE 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 Encounter",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZEncounterElements"
    },
    {
      "type" : "depends-on",
      "display" : "Library TBEElements",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZD2DTTBEElements"
    }
  ],
  "parameter" : [
    {
      "name" : "Today",
      "use" : "in",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "EncounterId",
      "use" : "in",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Patient",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Patient"
    },
    {
      "name" : "TBE Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "TBE Primary Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of TBE Primary Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "Client's age is less than 1 year",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "No TBE primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 1 year",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "One TBE primary series dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Date of Latest TBE Dose",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "The latest TBE dose was administered less than 1 month ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered more than 1 month ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Two TBE primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered less than 5 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered more than 5 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Three TBE primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "TBE Booster Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of TBE Booster Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "No TBE booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered less than 3 years ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered more than 3 years ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "At least one booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered less than 9 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered more than 9 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 3 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 3 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered less than 12 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest TBE dose was administered more than 12 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFRCRUVuY291bnRlckVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVFRCRUVuY291bnRlckVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbmNvdW50ZXJFbGVtZW50cyBjYWxsZWQgRW5jb3VudGVyCgppbmNsdWRlIElNTVpEMkRUVEJFRWxlbWVudHMgY2FsbGVkIFRCRUVsZW1lbnRzCgpwYXJhbWV0ZXIgVG9kYXkgRGF0ZSBkZWZhdWx0IFRvZGF5KCkKcGFyYW1ldGVyIEVuY291bnRlcklkIFN0cmluZwoKY29udGV4dCBQYXRpZW50CgovKgpAaW50ZXJuYWw6IFRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICBFbmNvdW50ZXIuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIlRCRSB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogVEJFIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzCiovCmRlZmluZSAiVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBkb3NlcwoqLwpkZWZpbmUgIk51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgMSB5ZWFyCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhci0zOQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciI6CiAgRW5jb3VudGVyLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA8IDEKCi8qCkBpbnB1dDogTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiICA9IDAKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxIHllYXIKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyIjoKICBFbmNvdW50ZXIuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiID49IDEKCi8qCkBpbnB1dDogT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGNvZGU6IE9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIk9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiICA9IDEKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIpIDwgMSBtb250aApAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnby05NQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGFuZCBUb2RheSA8IDEKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIpIOKJpSAxIG1vbnRoCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvLTk1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvIgoKLyoKQGlucHV0OiBUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBjb2RlOiBUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIlR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgID0gMgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSA8IDUgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGFuZCBUb2RheSA8IDUKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikg4omlIDUgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28iOgogIG5vdCAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28iCgovKgpAaW5wdXQ6IFRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMwpAY29kZTogVGhyZWUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIlRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiAgPSAzCgovKgpAaW5wdXQ6IE5vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDAKQGNvZGU6IE5vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMTAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAiTm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvCkBwc2V1ZG9jb2RlOiAnVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSA8IDMgeWVhcnMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHllYXJzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBhbmQgVG9kYXkgPCAzCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikg4omlIDMgeWVhcnMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28tMTAyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvIgoKLyoKQGlucHV0OiBBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikg4omlIDEKQGNvZGU6IEF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMTAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAiQXQgbGVhc3Qgb25lIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID49IDEKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikgPCA5IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGFuZCBUb2RheSA8IDkKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikg4omlIDkgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbyIKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAzIHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDMgeWVhcnMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycy00MApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAzIHllYXJzIjoKICBFbmNvdW50ZXIuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIDwgMwoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAzIHllYXJzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycyI6CiAgRW5jb3VudGVyLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA+PSAzCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSA8IDEyIG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvLTEwNApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBhbmQgVG9kYXkgPCAxMgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSDiiaUgMTIgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28tOTcKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28iCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiOgogIGRhdGUgZnJvbSBzdGFydCBvZiAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNCb29zdGVyKCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCg=="
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMzczIj4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRUQkVFbmNvdW50ZXJFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFRUQkVFbmNvdW50ZXJFbGVtZW50czwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQyRFRUQkVFbmNvdW50ZXJFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjEwOjEtMTA6MTkiIGxvY2FsSWRlbnRpZmllcj0iV0hPQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMiIgbG9jYXRvcj0iMTE6MS0xMToyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTIiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxMjoxLTEyOjI5IiBsb2NhbElkZW50aWZpZXI9IldFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0VsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE0Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0VsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0U8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE2IiBsb2NhdG9yPSIxNDoxLTE0OjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE4IiBsb2NhdG9yPSIxNToxLTE1OjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjE2OjEtMTY6NDYiIGxvY2FsSWRlbnRpZmllcj0iRW5jb3VudGVyIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpFbmNvdW50ZXJFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyMCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRW5jb3VudGVyRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBFbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIyIiBsb2NhdG9yPSIxODoxLTE4OjQ2IiBsb2NhbElkZW50aWZpZXI9IlRCRUVsZW1lbnRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpEMkRUVEJFRWxlbWVudHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMjIiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkQyRFRUQkVFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFRCRUVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjQiIGxvY2F0b3I9IjIwOjEtMjA6MzYiIG5hbWU9IlRvZGF5IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjI0Ij4KICAgICAgICAgICAgICAgPGE6cz5wYXJhbWV0ZXIgVG9kYXkgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjI4Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5EYXRlPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBkZWZhdWx0IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyNyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+VG9kYXkoKTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGRlZmF1bHQgbG9jYWxJZD0iMjI3IiBsb2NhdG9yPSIyMDozMC0yMDozNiIgeHNpOnR5cGU9IlRvZGF5Ii8+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjIyOCIgbG9jYXRvcj0iMjA6MTctMjA6MjAiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzAiIGxvY2F0b3I9IjIxOjEtMjE6MjgiIG5hbWU9IkVuY291bnRlcklkIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjMwIj4KICAgICAgICAgICAgICAgPGE6cz5wYXJhbWV0ZXIgRW5jb3VudGVySWQgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjMxIj4KICAgICAgICAgICAgICAgICAgPGE6cz5TdHJpbmc8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjIzMSIgbG9jYXRvcj0iMjE6MjMtMjE6MjgiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgIDwvZGVmPgogICA8L3BhcmFtZXRlcnM+CiAgIDxjb250ZXh0cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMzYiIGxvY2F0b3I9IjIzOjEtMjM6MTUiIG5hbWU9IlBhdGllbnQiLz4KICAgPC9jb250ZXh0cz4KICAgPHN0YXRlbWVudHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjM0IiBsb2NhdG9yPSIyMzoxLTIzOjE1IiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjM1IiB4c2k6dHlwZT0iU2luZ2xldG9uRnJvbSI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzMyIgbG9jYXRvcj0iMjM6MS0yMzoxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIzOSIgbG9jYXRvcj0iMjg6MS0zMTo0NCIgbmFtZT0iVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJUQkUgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9IjIzOSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBUQkUgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgJnF1b3Q7VEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1MSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlci4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjUxIiBsb2NhdG9yPSIyOTozLTMxOjQ0IiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI0MCIgbG9jYXRvcj0iMjk6My0yOTo0NSIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDIiIGxvY2F0b3I9IjI5OjMtMjk6NDMiIG5hbWU9IkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjI0OCIgbG9jYXRvcj0iMzA6My0zMTo0NCIgeHNpOnR5cGU9IkluVmFsdWVTZXQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI1MCIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxjb2RlIGxvY2FsSWQ9IjI0OSIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iMzE6NS0zMToxNyIgcGF0aD0idmFjY2luZUNvZGUiIHNjb3BlPSJJIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgPC9jb2RlPgogICAgICAgICAgICAgICA8dmFsdWVzZXQgbG9jYWxJZD0iMjQ3IiBsb2NhdG9yPSIzMToyMi0zMTo0NCIgbmFtZT0iVEJFIHZhY2NpbmVzIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHByZXNlcnZlPSJ0cnVlIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjU0IiBsb2NhdG9yPSIzNjoxLTM3OjUzIiBuYW1lPSJUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI1NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBUQkUgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICZxdW90O1RCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTYiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc1ByaW1hcnkoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI1NiIgbG9jYXRvcj0iMzc6My0zNzo1MyIgbmFtZT0ic2VyaWVzUHJpbWFyeSIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU1IiBsb2NhdG9yPSIzNzozLTM3OjM3IiBuYW1lPSJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI0MjoxLTQzOjU5IiBuYW1lPSJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNjMiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2MyIgbG9jYXRvcj0iNDM6My00Mzo1OSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNjAiIGxvY2F0b3I9IjQzOjktNDM6NTgiIG5hbWU9IlRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNjYiIGxvY2F0b3I9IjU0OjEtNTU6NDYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyLTM5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhcgpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMSB5ZWFyCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhci0zOQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzAiPiAmbHQ7IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2NyIgbG9jYXRvcj0iNTU6My01NTo0NiIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjcyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY5IiBsb2NhdG9yPSI1NTozLTU1OjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzAiIGxvY2F0b3I9IjU1OjQ2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjc1IiBsb2NhdG9yPSI3MDoxLTcxOjU2IiBuYW1lPSJObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI3NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBjb2RlOiBObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjc2Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3OCI+ICA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iNzE6My03MTo1NiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNzkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NyIgbG9jYXRvcj0iNzE6My03MTo1MSIgbmFtZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3OCIgbG9jYXRvcj0iNzE6NTYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyODMiIGxvY2F0b3I9IjgyOjEtODM6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXItMzkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDEgeWVhcgpAY29kZTogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXItMzkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgeWVhciZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyODQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4gPj0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSI4MzozLTgzOjQ3IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjg5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg2IiBsb2NhdG9yPSI4MzozLTgzOjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODciIGxvY2F0b3I9IjgzOjQ3IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjkyIiBsb2NhdG9yPSI5ODoxLTk5OjU2IiBuYW1lPSJPbmUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI5MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBPbmUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEKQGNvZGU6IE9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7T25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjkzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NSI+ICA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5MyIgbG9jYXRvcj0iOTk6My05OTo1NiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyOTYiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5NCIgbG9jYXRvcj0iOTk6My05OTo1MSIgbmFtZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5NSIgbG9jYXRvcj0iOTk6NTYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDQiIGxvY2F0b3I9IjMxNzoxLTMxODo5MyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzA0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlCiovCmRlZmluZSAmcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMDUiPgogICAgICAgICAgICAgICAgICA8YTpzPmRhdGUgZnJvbSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnN0YXJ0IG9mIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzExIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm1vc3RSZWNlbnQoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+b2NjdXJyZW5jZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dG9JbnRlcnZhbCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMDUiIGxvY2F0b3I9IjMxODozLTMxODo5MyIgeHNpOnR5cGU9IkRhdGVGcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA2IiBsb2NhdG9yPSIzMTg6MTMtMzE4OjkzIiB4c2k6dHlwZT0iU3RhcnQiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTIiIGxvY2F0b3I9IjMxODoyMi0zMTg6OTMiIG5hbWU9InRvSW50ZXJ2YWwiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzExIiBsb2NhdG9yPSIzMTg6MjItMzE4OjgwIiBwYXRoPSJvY2N1cnJlbmNlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjMwOCIgbG9jYXRvcj0iMzE4OjIyLTMxODo2OSIgbmFtZT0ibW9zdFJlY2VudCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMwOSIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjMxMCIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNyIgbG9jYXRvcj0iMzE4OjIyLTMxODo1NiIgbmFtZT0iVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDAiIGxvY2F0b3I9IjExMjoxLTExNDo3NCIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMSBtb250aCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvLTk1Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzAwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDEgbW9udGgKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28tOTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzAxIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzE3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIyIj4gJmx0OyAxPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzAxIiBsb2NhdG9yPSIxMTM6My0xMTQ6NzQiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTUiIGxvY2F0b3I9IjExMzozLTExMzozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxNCIgbG9jYXRvcj0iMTEzOjMtMTEzOjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzEzIiBsb2NhdG9yPSIxMTM6My0xMTM6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzE2IiBsb2NhdG9yPSIxMTQ6OS0xMTQ6NzQiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyNCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxNyIgbG9jYXRvcj0iMTE0OjktMTE0OjcwIiBwcmVjaXNpb249Ik1vbnRoIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjAiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyMSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxOCIgbG9jYXRvcj0iMTE0OjM2LTExNDo2MCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxOSIgbG9jYXRvcj0iMTE0OjY2LTExNDo3MCIgbmFtZT0iVG9kYXkiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjIiIGxvY2F0b3I9IjExNDo3NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzI3IiBsb2NhdG9yPSIxMjc6MS0xMjg6NjYiIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSBtb250aCBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSBtb250aCBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMSBtb250aCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvLTk1Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzI3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSBtb250aCBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMSBtb250aApAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnby05NQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMjgiIGxvY2F0b3I9IjEyODozLTEyODo2NiIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOSIgbG9jYXRvcj0iMTI4OjctMTI4OjY2IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMzMiIgbG9jYXRvcj0iMTQzOjEtMTQ0OjU2IiBuYW1lPSJUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMzMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMgpAY29kZTogVHdvIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1R3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzMzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNSI+ICA9IDI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzMyIgbG9jYXRvcj0iMTQ0OjMtMTQ0OjU2IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzNiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzM3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM0IiBsb2NhdG9yPSIxNDQ6My0xNDQ6NTEiIG5hbWU9Ik51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzUiIGxvY2F0b3I9IjE0NDo1NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0MCIgbG9jYXRvcj0iMTU1OjEtMTU3Ojc0IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDUgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvLTEwMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzNDAiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyA1IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzQxIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzUxIj4gJmx0OyA1PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQxIiBsb2NhdG9yPSIxNTY6My0xNTc6NzQiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDQiIGxvY2F0b3I9IjE1NjozLTE1NjozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0MyIgbG9jYXRvcj0iMTU2OjMtMTU2OjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQyIiBsb2NhdG9yPSIxNTY6My0xNTY6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQ1IiBsb2NhdG9yPSIxNTc6OS0xNTc6NzQiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNTIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1MyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0NiIgbG9jYXRvcj0iMTU3OjktMTU3OjcwIiBwcmVjaXNpb249Ik1vbnRoIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDkiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1MCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0NyIgbG9jYXRvcj0iMTU3OjM2LTE1Nzo2MCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0OCIgbG9jYXRvcj0iMTU3OjY2LTE1Nzo3MCIgbmFtZT0iVG9kYXkiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTEiIGxvY2F0b3I9IjE1Nzo3NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI1IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzU2IiBsb2NhdG9yPSIxNjg6MS0xNjk6NjciIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNSBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSA1IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnby0xMDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzU2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNSBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSA1IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzU3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM1NyIgbG9jYXRvcj0iMTY5OjMtMTY5OjY3IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU4IiBsb2NhdG9yPSIxNjk6Ny0xNjk6NjciIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM2MSIgbG9jYXRvcj0iMTg0OjEtMTg1OjU2IiBuYW1lPSJUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhyZWUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjM2MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAzCkBjb2RlOiBUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzYyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2NCI+ICA9IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM2MiIgbG9jYXRvcj0iMTg1OjMtMTg1OjU2IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM2NSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzY2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzYzIiBsb2NhdG9yPSIxODU6My0xODU6NTEiIG5hbWU9Ik51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjQiIGxvY2F0b3I9IjE4NTo1NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3NiIgbG9jYXRvcj0iMzIzOjEtMzI0OjUzIiBuYW1lPSJUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9IjM3NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1RCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNzgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc0Jvb3N0ZXIoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM3OCIgbG9jYXRvcj0iMzI0OjMtMzI0OjUzIiBuYW1lPSJzZXJpZXNCb29zdGVyIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzciIGxvY2F0b3I9IjMyNDozLTMyNDozNyIgbmFtZT0iVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3MyIgbG9jYXRvcj0iMzI5OjEtMzMwOjU5IiBuYW1lPSJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6cyByPSIzNzMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM4MiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzgyIiBsb2NhdG9yPSIzMzA6My0zMzA6NTkiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzc5IiBsb2NhdG9yPSIzMzA6OS0zMzA6NTgiIG5hbWU9IlRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNjkiIGxvY2F0b3I9IjE5NjoxLTE5Nzo1NSIgbmFtZT0iTm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjM2OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMApAY29kZTogTm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICZxdW90O05vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNzAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzg0Ij4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNzAiIGxvY2F0b3I9IjE5NzozLTE5Nzo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzODUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM4NiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4MyIgbG9jYXRvcj0iMTk3OjMtMTk3OjUxIiBuYW1lPSJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzg0IiBsb2NhdG9yPSIxOTc6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzODkiIGxvY2F0b3I9IjIxMjoxLTIxNDo3MyIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMyB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvLTEwMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjM4OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvCkBwc2V1ZG9jb2RlOiAnVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDMgeWVhcnMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM5MCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzkzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4geWVhcnMgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDAwIj4gJmx0OyAzPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzkwIiBsb2NhdG9yPSIyMTM6My0yMTQ6NzMiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTMiIGxvY2F0b3I9IjIxMzozLTIxMzozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5MiIgbG9jYXRvcj0iMjEzOjMtMjEzOjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzkxIiBsb2NhdG9yPSIyMTM6My0yMTM6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk0IiBsb2NhdG9yPSIyMTQ6OS0yMTQ6NzMiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MDEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwMiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5NSIgbG9jYXRvcj0iMjE0OjktMjE0OjY5IiBwcmVjaXNpb249IlllYXIiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5OCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzk5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk2IiBsb2NhdG9yPSIyMTQ6MzUtMjE0OjU5IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk3IiBsb2NhdG9yPSIyMTQ6NjUtMjE0OjY5IiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwMCIgbG9jYXRvcj0iMjE0OjczIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MDUiIGxvY2F0b3I9IjIyOToxLTIzMDo2NiIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28tMTAyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDA1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDMgeWVhcnMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28tMTAyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDMgeWVhcnMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQwNiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQwNiIgbG9jYXRvcj0iMjMwOjMtMjMwOjY2IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA3IiBsb2NhdG9yPSIyMzA6Ny0yMzA6NjYiIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDEwIiBsb2NhdG9yPSIyNDE6MS0yNDI6NTYiIG5hbWU9IkF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQXQgbGVhc3Qgb25lIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSDiiaUgMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQxMCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspIOKJpSAxCkBjb2RlOiBBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgJnF1b3Q7QXQgbGVhc3Qgb25lIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxMSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTMiPiA+PSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MTEiIGxvY2F0b3I9IjI0MjozLTI0Mjo1NiIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MTQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQxNSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQxMiIgbG9jYXRvcj0iMjQyOjMtMjQyOjUxIiBuYW1lPSJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDEzIiBsb2NhdG9yPSIyNDI6NTYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MTgiIGxvY2F0b3I9IjI1MToxLTI1Mzo3NCIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyA5IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnby0xMDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0MTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyA5IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MTkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvZGF5PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjkiPiAmbHQ7IDk8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MTkiIGxvY2F0b3I9IjI1MjozLTI1Mzo3NCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyMiIgbG9jYXRvcj0iMjUyOjMtMjUyOjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDIxIiBsb2NhdG9yPSIyNTI6My0yNTI6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjAiIGxvY2F0b3I9IjI1MjozLTI1MjoyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjMiIGxvY2F0b3I9IjI1Mzo5LTI1Mzo3NCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQzMCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDMxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI0IiBsb2NhdG9yPSIyNTM6OS0yNTM6NzAiIHByZWNpc2lvbj0iTW9udGgiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQyNyIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDI4IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI1IiBsb2NhdG9yPSIyNTM6MzYtMjUzOjYwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI2IiBsb2NhdG9yPSIyNTM6NjYtMjUzOjcwIiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyOSIgbG9jYXRvcj0iMjUzOjc0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MzQiIGxvY2F0b3I9IjI2MjoxLTI2Mzo2NyIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDkgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvLTEwMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQzNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgOSBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvLTEwMwpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQzNSIgbG9jYXRvcj0iMjYzOjMtMjYzOjY3IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM2IiBsb2NhdG9yPSIyNjM6Ny0yNjM6NjciIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQzOSIgbG9jYXRvcj0iMjc0OjEtMjc1OjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMyB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMtNDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQzOSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDMgeWVhcnMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycy00MApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDQwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0MyI+ICZsdDsgMzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDQwIiBsb2NhdG9yPSIyNzU6My0yNzU6NDYiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NDQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ0NSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0MiIgbG9jYXRvcj0iMjc1OjMtMjc1OjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDMiIGxvY2F0b3I9IjI3NTo0NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ0OCIgbG9jYXRvcj0iMjg2OjEtMjg3OjQ3IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycy00MCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDQ4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAzIHllYXJzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAzIHllYXJzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ0OSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDUxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDUxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTIiPiA+PSAzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NDkiIGxvY2F0b3I9IjI4NzozLTI4Nzo0NyIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NTMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ1NCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1MSIgbG9jYXRvcj0iMjg3OjMtMjg3OjQyIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTIiIGxvY2F0b3I9IjI4Nzo0NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ1NyIgbG9jYXRvcj0iMjk4OjEtMzAwOjc1IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnby0xMDQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ1NyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyAxMiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnby0xMDQKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ1OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDYxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9kYXk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2OCI+ICZsdDsgMTI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NTgiIGxvY2F0b3I9IjI5OTozLTMwMDo3NSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2MSIgbG9jYXRvcj0iMjk5OjMtMjk5OjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDYwIiBsb2NhdG9yPSIyOTk6My0yOTk6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTkiIGxvY2F0b3I9IjI5OTozLTI5OToyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjIiIGxvY2F0b3I9IjMwMDo5LTMwMDo3NSIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDcwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDYzIiBsb2NhdG9yPSIzMDA6OS0zMDA6NzAiIHByZWNpc2lvbj0iTW9udGgiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2NiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDY3IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY0IiBsb2NhdG9yPSIzMDA6MzYtMzAwOjYwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY1IiBsb2NhdG9yPSIzMDA6NjYtMzAwOjcwIiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2OCIgbG9jYXRvcj0iMzAwOjc0LTMwMDo3NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ3MyIgbG9jYXRvcj0iMzExOjEtMzEyOjY4IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSAxMiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxMiBtb250aHMgYWdvLTk3Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0NzMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxMiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDEyIG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxMiBtb250aHMgYWdvLTk3CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NzQiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ3NCIgbG9jYXRvcj0iMzEyOjMtMzEyOjY4IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDc1IiBsb2NhdG9yPSIzMTI6Ny0zMTI6NjgiIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="
    }
  ]
}