WHO Immunization Implementation Guide
0.2.0 - ci-build

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

: IMMZD2DTTBEElements - TTL Representation

Draft as of 2026-03-03

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "IMMZD2DTTBEElements"] ; # 
  fhir:meta [
    ( fhir:profile [
fhir:v "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary>     ] [
fhir:v "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary>     ] [
fhir:v "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library>     ] [
fhir:v "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module>     ] )
  ] ; # 
  fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir:div [ fhir:v "<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;\">IMMZD2DTTBEElements</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTTBEElements</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-IMMZD2DTTBEElements.html\">IMMZD2DTTBEElements</a></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">draft</td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Type: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                    \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>system: </b> <span><a href=\"http://terminology.hl7.org/7.0.1/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2026-03-03 13:07:11+0000</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">WHO</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Description: </b></th>\n            <td style=\"padding-left: 4px;\"><div><p>This library defines context-independent elements for 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-IMMZElements.html\">IMMZElements</a></li>\n                  \n                </ul>\n                \n                \n                \n                \n                \n            </td>\n        </tr>\n        \n\n        \n        <tr>\n          <th scope=\"row\"><b>Parameters: </b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n              \n                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>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: IMMZD2DTTBEElements\n  */\nlibrary IMMZD2DTTBEElements\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude WHOConcepts\ninclude WHOCommon called WC\ninclude WHOElements called WE\n\ninclude IMMZCommon called Common\ninclude IMMZConcepts called Concepts\ninclude IMMZElements called Elements\n\n\ncontext Patient\n\n/*\n@internal: TBE containing Doses Administered to Patient\n*/\ndefine \"TBE Doses Administered to Patient\":\n  Elements.\"Doses Administered to Patient\" I\n  where\n    I.vaccineCode in Concepts.\"TBE vaccines\"\n\n/*\n@internal: TBE containing Doses Administered to Patient that are in the Primary series\n*/\ndefine \"TBE Primary Series Doses Administered to Patient\":\n  \"TBE Doses Administered to Patient\".seriesPrimary()\n\n/*\n@internal: Number of TBE Primary Series doses\n*/\ndefine \"Number of TBE Primary Series Doses Administered\":\n  Count(\"TBE Primary Series Doses Administered to Patient\")\n\n/*\n@input: Client's age is less than 1 year\n@pseudocode: Today's date − \"Date of birth\" &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		)\n*/\ndefine \"Client's age is less than 1 year\":\n  Elements.\"Current Patient Age In Years\" &lt; 1\n\n/*\n@input: No TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Primary series\") = 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		)\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	)\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					)\n*/\ndefine \"No TBE primary series doses were administered\":\n  \"Number of TBE Primary Series Doses Administered\"  = 0\n\n/*\n@input: Client's age is more than or equal to 1 year\n@pseudocode: Today's date − \"Date of birth\" ≥ 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		)\n*/\ndefine \"Client's age is more than or equal to 1 year\":\n  Elements.\"Current Patient Age In Years\" &gt;= 1\n\n/*\n@input: One TBE primary series dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Primary series\") = 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		)\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	)\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					)\n*/\ndefine \"One TBE primary series dose was administered\":\n  \"Number of TBE Primary Series Doses Administered\"  = 1\n\n/*\n@input: The latest TBE dose was administered less than 1 month ago\n@pseudocode: Today's date − \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") &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		)\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	)\n*/\ndefine \"The latest TBE dose was administered less than 1 month ago\":\n  \"Date of Latest TBE Dose\" is not null\n    and duration in months between \"Date of Latest TBE Dose\" and Now() &lt; 1\n\n/*\n@input: The latest TBE dose was administered more than 1 month ago\n@pseudocode: Today's date − \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") ≥ 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		)\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	)\n*/\ndefine \"The latest TBE dose was administered more than 1 month ago\":\n  not \"The latest TBE dose was administered less than 1 month ago\"\n\n/*\n@input: Two TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Primary series\") = 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		)\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	)\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					)\n*/\ndefine \"Two TBE primary series doses were administered\":\n  \"Number of TBE Primary Series Doses Administered\"  = 2\n\n/*\n@input: The latest TBE dose was administered less than 5 months ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") &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					)\n*/\ndefine \"The latest TBE dose was administered less than 5 months ago\":\n  \"Date of Latest TBE Dose\" is not null\n    and duration in months between \"Date of Latest TBE Dose\" and Now() &lt; 5\n\n/*\n@input: The latest TBE dose was administered more than 5 months ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") ≥ 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					)\n*/\ndefine \"The latest TBE dose was administered more than 5 months ago\":\n  not \"The latest TBE dose was administered less than 5 months ago\"\n\n/*\n@input: Three TBE primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Primary series\") = 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		)\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	)\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					)\n*/\ndefine \"Three TBE primary series doses were administered\":\n  \"Number of TBE Primary Series Doses Administered\"  = 3\n\n/*\n@input: No TBE booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Booster dose\") = 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		)\n*/\ndefine \"No TBE booster dose was administered\":\n  \"Number of TBE Booster Series Doses Administered\" = 0\n\n/*\n@input: The latest TBE dose was administered less than 3 years ago\n@pseudocode: 'Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") &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		)\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	)\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					)\n*/\ndefine \"The latest TBE dose was administered less than 3 years ago\":\n  \"Date of Latest TBE Dose\" is not null\n    and duration in years between \"Date of Latest TBE Dose\" and Now() &lt; 3\n\n/*\n@input: The latest TBE dose was administered more than 3 years ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") ≥ 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		)\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	)\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					)\n*/\ndefine \"The latest TBE dose was administered more than 3 years ago\":\n  not \"The latest TBE dose was administered less than 3 years ago\"\n\n/*\n@input: At least one booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"TBE vaccines\" and \"Type of dose\" = \"Booster dose\") ≥ 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		)\n*/\ndefine \"At least one booster dose was administered\":\n  \"Number of TBE Booster Series Doses Administered\" &gt;= 1\n\n/*\n@input: The latest TBE dose was administered less than 9 months ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") &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		)\n*/\ndefine \"The latest TBE dose was administered less than 9 months ago\":\n  \"Date of Latest TBE Dose\" is not null\n    and duration in months between \"Date of Latest TBE Dose\" and Now() &lt; 9\n\n/*\n@input: The latest TBE dose was administered more than 9 months ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") ≥ 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		)\n*/\ndefine \"The latest TBE dose was administered more than 9 months ago\":\n  not \"The latest TBE dose was administered less than 9 months ago\"\n\n/*\n@input: Client's age is less than 3 years\n@pseudocode: Today's date − \"Date of birth\" &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	)\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					)\n*/\ndefine \"Client's age is less than 3 years\":\n  Elements.\"Current Patient Age In Years\" &lt; 3\n\n/*\n@input: Client's age is more than or equal to 3 years\n@pseudocode: Today's date − \"Date of birth\" ≥ 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	)\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					)\n*/\ndefine \"Client's age is more than or equal to 3 years\":\n  Elements.\"Current Patient Age In Years\" &gt;= 3\n\n/*\n@input: The latest TBE dose was administered less than 12 months ago\n@pseudocode: Today's date − latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") &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	)\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					)\n*/\ndefine \"The latest TBE dose was administered less than 12 months ago\":\n  \"Date of Latest TBE Dose\" is not null\n    and duration in months between \"Date of Latest TBE Dose\" and Now() &lt; 12\n\n/*\n@input: The latest TBE dose was administered more than 12 months ago\n@pseudocode: Today's date − \"Date and time of vaccination\" (where \"Vaccine type\" = \"TBE vaccines\") ≥ 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	)\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					)\n*/\ndefine \"The latest TBE dose was administered more than 12 months ago\":\n  not \"The latest TBE dose was administered less than 12 months ago\"\n\n/*\n@internal: Date of Latest TBE Dose\n*/\ndefine \"Date of Latest TBE Dose\":\n  date from start of \"TBE Doses Administered to Patient\".mostRecent().occurrence.toInterval()\n\n/*\n@internal: TBE Booster Series Doses Administered to Patient\n*/\ndefine \"TBE Booster Series Doses Administered to Patient\":\n  \"TBE Doses Administered to Patient\".seriesBooster()\n\n/*\n@internal: Number of TBE Booster Series Doses Administered\n*/\ndefine \"Number of TBE Booster Series Doses Administered\":\n  Count(\"TBE Booster Series Doses Administered to Patient\")\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 (112460 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"^^rdf:XMLLiteral ]
  ] ; # 
  fhir:extension ( [
fhir:url [
fhir:v "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability>     ] ;
fhir:value [
a fhir:Code ;
fhir:v "computable"     ]
  ] ) ; # 
  fhir:url [
fhir:v "http://smart.who.int/immunizations/Library/IMMZD2DTTBEElements"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZD2DTTBEElements>
  ] ; # 
  fhir:version [ fhir:v "0.2.0"] ; # 
  fhir:name [ fhir:v "IMMZD2DTTBEElements"] ; # 
  fhir:title [ fhir:v "IMMZD2DTTBEElements"] ; # 
  fhir:status [ fhir:v "draft"] ; # 
  fhir:experimental [ fhir:v false] ; # 
  fhir:type [
    ( fhir:coding [
fhir:system [
fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ;
fhir:l <http://terminology.hl7.org/CodeSystem/library-type>       ] ;
fhir:code [ fhir:v "logic-library" ]     ] )
  ] ; # 
  fhir:date [ fhir:v "2026-03-03T13:07:11+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "WHO"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "WHO" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://who.int" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "This library defines context-independent elements for TBE used throughout the Immunization CPG"] ; # 
  fhir:relatedArtifact ( [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library WHOConcepts" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/WHOConcepts"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/WHOConcepts>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library WC" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/WHOCommon"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/WHOCommon>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library WE" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/WHOElements"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/WHOElements>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Common" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZCommon"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZCommon>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Concepts" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZConcepts"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZConcepts>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Elements" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZElements"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZElements>     ]
  ] ) ; # 
  fhir:parameter ( [
fhir:name [ fhir:v "Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Patient" ]
  ] [
fhir:name [ fhir:v "TBE Doses Administered to Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "*" ] ;
fhir:type [ fhir:v "Immunization" ]
  ] [
fhir:name [ fhir:v "TBE Primary Series Doses Administered to Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "*" ] ;
fhir:type [ fhir:v "Immunization" ]
  ] [
fhir:name [ fhir:v "Number of TBE Primary Series Doses Administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "integer" ]
  ] [
fhir:name [ fhir:v "Client's age is less than 1 year" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "No TBE primary series doses were administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Client's age is more than or equal to 1 year" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "One TBE primary series dose was administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Date of Latest TBE Dose" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered less than 1 month ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered more than 1 month ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Two TBE primary series doses were administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered less than 5 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered more than 5 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Three TBE primary series doses were administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "TBE Booster Series Doses Administered to Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "*" ] ;
fhir:type [ fhir:v "Immunization" ]
  ] [
fhir:name [ fhir:v "Number of TBE Booster Series Doses Administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "integer" ]
  ] [
fhir:name [ fhir:v "No TBE booster dose was administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered less than 3 years ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered more than 3 years ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "At least one booster dose was administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered less than 9 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered more than 9 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Client's age is less than 3 years" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Client's age is more than or equal to 3 years" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered less than 12 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "The latest TBE dose was administered more than 12 months ago" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] ) ; # 
  fhir:content ( [
fhir:contentType [ fhir:v "text/cql" ] ;
fhir:data [ fhir:v "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFRCRUVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVFRCRUVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbGVtZW50cyBjYWxsZWQgRWxlbWVudHMKCgpjb250ZXh0IFBhdGllbnQKCi8qCkBpbnRlcm5hbDogVEJFIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogIEVsZW1lbnRzLiJEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlCiAgICBJLnZhY2NpbmVDb2RlIGluIENvbmNlcHRzLiJUQkUgdmFjY2luZXMiCgovKgpAaW50ZXJuYWw6IFRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgIlRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlRCRSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzUHJpbWFyeSgpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDEgeWVhcgpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXItMzkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXIiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA8IDEKCi8qCkBpbnB1dDogTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiICA9IDAKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxIHllYXIKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPj0gMQoKLyoKQGlucHV0OiBPbmUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgID0gMQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikgPCAxIG1vbnRoCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvLTk1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgYW5kIE5vdygpIDwgMQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIikg4omlIDEgbW9udGgKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSBtb250aCBhZ28tOTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvIjoKICBub3QgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28iCgovKgpAaW5wdXQ6IFR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVEJFIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQGNvZGU6IFR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVHdvIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiAgPSAyCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIpIDwgNSBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvLTEwMwpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgYW5kIE5vdygpIDwgNQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSDiiaUgNSBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNSBtb250aHMgYWdvLTEwMwpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyIKCi8qCkBpbnB1dDogVGhyZWUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAzCkBjb2RlOiBUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhyZWUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiICA9IDMKCi8qCkBpbnB1dDogTm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMApAY29kZTogTm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICJObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28KQHBzZXVkb2NvZGU6ICdUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRCRSB2YWNjaW5lcyIpIDwgMyB5ZWFycwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4geWVhcnMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGFuZCBOb3coKSA8IDMKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSDiiaUgMyB5ZWFycwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnby0xMDIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDMgeWVhcnMgYWdvIjoKICBub3QgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28iCgovKgpAaW5wdXQ6IEF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSDiiaUgMQpAY29kZTogQXQgbGVhc3Qgb25lIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTExMApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICJBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPj0gMQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSA8IDkgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgYW5kIE5vdygpIDwgOQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSDiiaUgOSBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvLTEwMwpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvIjoKICBub3QgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvIgoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgMyB5ZWFycwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAzIHllYXJzLTQwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDMgeWVhcnMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA8IDMKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAzIHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaUgMyB5ZWFycwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAzIHllYXJzLTQwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA+PSAzCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSA8IDEyIG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvLTEwNApAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiBhbmQgTm93KCkgPCAxMgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUQkUgdmFjY2luZXMiKSDiiaUgMTIgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28tOTcKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnbyI6CiAgbm90ICJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28iCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiOgogIGRhdGUgZnJvbSBzdGFydCBvZiAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiVEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNCb29zdGVyKCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCg=="^^xsd:base64Binary ]
  ] [
fhir:contentType [ fhir:v "application/elm+xml" ] ;
fhir:data [ fhir:v "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMzcyIj4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRUQkVFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFRUQkVFbGVtZW50czwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQyRFRUQkVFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB2ZXJzaW9uPSIxLjAuMCIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwNiIgbG9jYXRvcj0iNzoxLTc6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwNiI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwOCIgbG9jYXRvcj0iODoxLTg6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA4Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEwIiBsb2NhdG9yPSIxMDoxLTEwOjE5IiBsb2NhbElkZW50aWZpZXI9IldIT0NvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0NvbmNlcHRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTIiIGxvY2F0b3I9IjExOjEtMTE6MjciIGxvY2FsSWRlbnRpZmllcj0iV0MiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdDPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNCIgbG9jYXRvcj0iMTI6MS0xMjoyOSIgbG9jYWxJZGVudGlmaWVyPSJXRSIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9FbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdFPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNiIgbG9jYXRvcj0iMTQ6MS0xNDozMiIgbG9jYWxJZGVudGlmaWVyPSJDb21tb24iIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkNvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iMTU6MS0xNTozNiIgbG9jYWxJZGVudGlmaWVyPSJDb25jZXB0cyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIwIiBsb2NhdG9yPSIxNjoxLTE2OjM2IiBsb2NhbElkZW50aWZpZXI9IkVsZW1lbnRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyMCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBFbGVtZW50czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyNSIgbG9jYXRvcj0iMTk6MS0xOToxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjMiIGxvY2F0b3I9IjE5OjEtMTk6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMjQiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjIyIiBsb2NhdG9yPSIxOToxLTE5OjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI4IiBsb2NhdG9yPSIyNDoxLTI3OjQ0IiBuYW1lPSJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjI4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjQwIj4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMjkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHMuJnF1b3Q7RG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBJPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhY2NpbmVDb2RlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RCRSB2YWNjaW5lcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0MCIgbG9jYXRvcj0iMjU6My0yNzo0NCIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyMjkiIGxvY2F0b3I9IjI1OjMtMjU6NDQiIGFsaWFzPSJJIj4KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjMxIiBsb2NhdG9yPSIyNTozLTI1OjQyIiBuYW1lPSJEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjIzNyIgbG9jYXRvcj0iMjY6My0yNzo0NCIgeHNpOnR5cGU9IkluVmFsdWVTZXQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjIzOSIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxjb2RlIGxvY2FsSWQ9IjIzOCIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzNCIgbG9jYXRvcj0iMjc6NS0yNzoxNyIgcGF0aD0idmFjY2luZUNvZGUiIHNjb3BlPSJJIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgPC9jb2RlPgogICAgICAgICAgICAgICA8dmFsdWVzZXQgbG9jYWxJZD0iMjM2IiBsb2NhdG9yPSIyNzoyMi0yNzo0NCIgbmFtZT0iVEJFIHZhY2NpbmVzIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHByZXNlcnZlPSJ0cnVlIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQzIiBsb2NhdG9yPSIzMjoxLTMzOjUzIiBuYW1lPSJUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlRCRSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI0MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBUQkUgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICZxdW90O1RCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc1ByaW1hcnkoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iMzM6My0zMzo1MyIgbmFtZT0ic2VyaWVzUHJpbWFyeSIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjQ0IiBsb2NhdG9yPSIzMzozLTMzOjM3IiBuYW1lPSJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQ4IiBsb2NhdG9yPSIzODoxLTM5OjU5IiBuYW1lPSJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTIiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI1MiIgbG9jYXRvcj0iMzk6My0zOTo1OSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNDkiIGxvY2F0b3I9IjM5OjktMzk6NTgiIG5hbWU9IlRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTUiIGxvY2F0b3I9IjUwOjEtNTE6NDUiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyLTM5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI1NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhcgpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMSB5ZWFyCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhci0zOQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB5ZWFyJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1OSI+ICZsdDsgMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjU2IiBsb2NhdG9yPSI1MTozLTUxOjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjYwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNjEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTgiIGxvY2F0b3I9IjUxOjMtNTE6NDEiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI1MTo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NCIgbG9jYXRvcj0iNjY6MS02Nzo1NiIgbmFtZT0iTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMTIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyNjQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMApAY29kZTogTm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7Tm8gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjciPiAgPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNjUiIGxvY2F0b3I9IjY3OjMtNjc6NTYiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjY4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNjkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjYiIGxvY2F0b3I9IjY3OjMtNjc6NTEiIG5hbWU9Ik51bWJlciBvZiBUQkUgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjciIGxvY2F0b3I9IjY3OjU2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjcyIiBsb2NhdG9yPSI3ODoxLTc5OjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgeWVhciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyLTM5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI3MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgeWVhcgpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAxIHllYXIKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB5ZWFyLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHllYXImcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjczIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc2Ij4gPj0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjczIiBsb2NhdG9yPSI3OTozLTc5OjQ2IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjc4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc1IiBsb2NhdG9yPSI3OTozLTc5OjQxIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iNzk6NDYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyODEiIGxvY2F0b3I9Ijk0OjEtOTU6NTYiIG5hbWU9Ik9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjgxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE9uZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAY29kZTogT25lIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtPbmUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyODIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg0Ij4gID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjgyIiBsb2NhdG9yPSI5NTozLTk1OjU2IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4NSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjg2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjgzIiBsb2NhdG9yPSI5NTozLTk1OjUxIiBuYW1lPSJOdW1iZXIgb2YgVEJFIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSI5NTo1NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI5MyIgbG9jYXRvcj0iMzEzOjEtMzE0OjkzIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiLz4KICAgICAgICAgICAgPGE6cyByPSIyOTMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UKKi8KZGVmaW5lICZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5NCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+ZGF0ZSBmcm9tIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c3RhcnQgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+bW9zdFJlY2VudCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5vY2N1cnJlbmNlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50b0ludGVydmFsKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5NCIgbG9jYXRvcj0iMzE0OjMtMzE0OjkzIiB4c2k6dHlwZT0iRGF0ZUZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyOTUiIGxvY2F0b3I9IjMxNDoxMy0zMTQ6OTMiIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwMSIgbG9jYXRvcj0iMzE0OjIyLTMxNDo5MyIgbmFtZT0idG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDAiIGxvY2F0b3I9IjMxNDoyMi0zMTQ6ODAiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjk3IiBsb2NhdG9yPSIzMTQ6MjItMzE0OjY5IiBuYW1lPSJtb3N0UmVjZW50IiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjk4IiB4c2k6dHlwZT0iTGlzdFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZWxlbWVudFR5cGUgbG9jYWxJZD0iMjk5IiBuYW1lPSJmaGlyOkltbXVuaXphdGlvbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NpZ25hdHVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjk2IiBsb2NhdG9yPSIzMTQ6MjItMzE0OjU2IiBuYW1lPSJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI4OSIgbG9jYXRvcj0iMTA4OjEtMTEwOjc0IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgbW9udGggYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyAxIG1vbnRoIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28tOTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyODkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMSBtb250aApAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnby05NQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyOTAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTYiPiAmbHQ7IDE8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyOTAiIGxvY2F0b3I9IjEwOTozLTExMDo3NCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNCIgbG9jYXRvcj0iMTA5OjMtMTA5OjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzAzIiBsb2NhdG9yPSIxMDk6My0xMDk6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDIiIGxvY2F0b3I9IjEwOTozLTEwOToyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDUiIGxvY2F0b3I9IjExMDo5LTExMDo3NCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxNyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzE4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA2IiBsb2NhdG9yPSIxMTA6OS0xMTA6NzAiIHByZWNpc2lvbj0iTW9udGgiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxNCIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxNSIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTIiIHhzaTp0eXBlPSJUb0RhdGVUaW1lIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMTMiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDciIGxvY2F0b3I9IjExMDozNi0xMTA6NjAiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxMCIgbG9jYXRvcj0iMTEwOjY2LTExMDo3MCIgeHNpOnR5cGU9Ik5vdyIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxNiIgbG9jYXRvcj0iMTEwOjc0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMjEiIGxvY2F0b3I9IjEyMzoxLTEyNDo2NiIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSAxIG1vbnRoIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSBtb250aCBhZ28tOTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzMjEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIG1vbnRoIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSAxIG1vbnRoCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvLTk1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgbW9udGggYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMyMiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIG1vbnRoIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMyMiIgbG9jYXRvcj0iMTI0OjMtMTI0OjY2IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIzIiBsb2NhdG9yPSIxMjQ6Ny0xMjQ6NjYiIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSBtb250aCBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzI2IiBsb2NhdG9yPSIxMzk6MS0xNDA6NTYiIG5hbWU9IlR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzI2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFR3byBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyCkBjb2RlOiBUd28gVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7VHdvIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI5Ij4gID0gMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzI3IiBsb2NhdG9yPSIxNDA6My0xNDA6NTYiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzMwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMzEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjgiIGxvY2F0b3I9IjE0MDozLTE0MDo1MSIgbmFtZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOSIgbG9jYXRvcj0iMTQwOjU2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzM0IiBsb2NhdG9yPSIxNTE6MS0xNTM6NzQiIG5hbWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgNSBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28tMTAzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMzNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDUgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDUgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMzUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTAiPiAmbHQ7IDU8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMzUiIGxvY2F0b3I9IjE1MjozLTE1Mzo3NCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzOCIgbG9jYXRvcj0iMTUyOjMtMTUyOjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM3IiBsb2NhdG9yPSIxNTI6My0xNTI6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzYiIGxvY2F0b3I9IjE1MjozLTE1MjoyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzkiIGxvY2F0b3I9IjE1Mzo5LTE1Mzo3NCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzUyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQwIiBsb2NhdG9yPSIxNTM6OS0xNTM6NzAiIHByZWNpc2lvbj0iTW9udGgiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM0OCIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM0OSIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDYiIHhzaTp0eXBlPSJUb0RhdGVUaW1lIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDciIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDEiIGxvY2F0b3I9IjE1MzozNi0xNTM6NjAiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0NCIgbG9jYXRvcj0iMTUzOjY2LTE1Mzo3MCIgeHNpOnR5cGU9Ik5vdyIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1MCIgbG9jYXRvcj0iMTUzOjc0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNTUiIGxvY2F0b3I9IjE2NDoxLTE2NTo2NyIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNSBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDUgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNSBtb250aHMgYWdvLTEwMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbikiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzNTUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA1IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDUgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDUgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNTYiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNSBtb250aHMgYWdvJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzU2IiBsb2NhdG9yPSIxNjU6My0xNjU6NjciIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTciIGxvY2F0b3I9IjE2NTo3LTE2NTo2NyIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA1IG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzYwIiBsb2NhdG9yPSIxODA6MS0xODE6NTYiIG5hbWU9IlRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhyZWUgVEJFIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaHJlZSBUQkUgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTEyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzYwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMKQGNvZGU6IFRocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1RocmVlIFRCRSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNjEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYzIj4gID0gMzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzYxIiBsb2NhdG9yPSIxODE6My0xODE6NTYiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzY0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjIiIGxvY2F0b3I9IjE4MTozLTE4MTo1MSIgbmFtZT0iTnVtYmVyIG9mIFRCRSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM2MyIgbG9jYXRvcj0iMTgxOjU2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzc1IiBsb2NhdG9yPSIzMTk6MS0zMjA6NTMiIG5hbWU9IlRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMzc1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgJnF1b3Q7VEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3NyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzQm9vc3RlcigpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzc3IiBsb2NhdG9yPSIzMjA6My0zMjA6NTMiIG5hbWU9InNlcmllc0Jvb3N0ZXIiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3NiIgbG9jYXRvcj0iMzIwOjMtMzIwOjM3IiBuYW1lPSJUQkUgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzcyIiBsb2NhdG9yPSIzMjU6MS0zMjY6NTkiIG5hbWU9Ik51bWJlciBvZiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTpzIHI9IjM3MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgJnF1b3Q7TnVtYmVyIG9mIFRCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzgxIj4KICAgICAgICAgICAgICAgICAgPGE6cz5Db3VudCg8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RCRSBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzODEiIGxvY2F0b3I9IjMyNjozLTMyNjo1OSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIzNzgiIGxvY2F0b3I9IjMyNjo5LTMyNjo1OCIgbmFtZT0iVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM2OCIgbG9jYXRvcj0iMTkyOjEtMTkzOjU1IiBuYW1lPSJObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMTAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzY4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIFRCRSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwCkBjb2RlOiBObyBUQkUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTEwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRlNNRS1JbW11bjogRlNNRS1JbW11biBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VwdXI6IEVuY2VwdXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKQoqLwpkZWZpbmUgJnF1b3Q7Tm8gVEJFIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM2OSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVEJFIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODMiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM2OSIgbG9jYXRvcj0iMTkzOjMtMTkzOjU1IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM4NCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzg1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzgyIiBsb2NhdG9yPSIxOTM6My0xOTM6NTEiIG5hbWU9Ik51bWJlciBvZiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODMiIGxvY2F0b3I9IjE5Mzo1NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIwIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM4OCIgbG9jYXRvcj0iMjA4OjEtMjEwOjczIiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90OykgJmx0OyAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28tMTAzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzg4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28KQHBzZXVkb2NvZGU6ICdUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMyB5ZWFycwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMyB5ZWFycyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzg5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiB5ZWFycyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDQiPiAmbHQ7IDM8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzODkiIGxvY2F0b3I9IjIwOTozLTIxMDo3MyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5MiIgbG9jYXRvcj0iMjA5OjMtMjA5OjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzkxIiBsb2NhdG9yPSIyMDk6My0yMDk6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTAiIGxvY2F0b3I9IjIwOTozLTIwOToyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTMiIGxvY2F0b3I9IjIxMDo5LTIxMDo3MyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwNSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDA2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk0IiBsb2NhdG9yPSIyMTA6OS0yMTA6NjkiIHByZWNpc2lvbj0iWWVhciIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDAyIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDAzIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwMCIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwMSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5NSIgbG9jYXRvcj0iMjEwOjM1LTIxMDo1OSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk4IiBsb2NhdG9yPSIyMTA6NjUtMjEwOjY5IiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA0IiBsb2NhdG9yPSIyMTA6NzMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQwOSIgbG9jYXRvcj0iMjI1OjEtMjI2OjY2IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDMgeWVhcnMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDMgeWVhcnMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RCRSB2YWNjaW5lcyZxdW90Oykg4omlIDMgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnby0xMDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0MDkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMyB5ZWFycwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAzIHllYXJzIGFnby0xMDIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMyB5ZWFycyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDEwIj4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDExIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDMgeWVhcnMgYWdvJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDEwIiBsb2NhdG9yPSIyMjY6My0yMjY6NjYiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTEiIGxvY2F0b3I9IjIyNjo3LTIyNjo2NiIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAzIHllYXJzIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MTQiIGxvY2F0b3I9IjIzNzoxLTIzODo1NiIgbmFtZT0iQXQgbGVhc3Qgb25lIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspIOKJpSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMTAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkZTTUUtSW1tdW46IEZTTUUtSW1tdW4gc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDE0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IEF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90Oykg4omlIDEKQGNvZGU6IEF0IGxlYXN0IG9uZSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMTAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5GU01FLUltbXVuOiBGU01FLUltbXVuIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAmcXVvdDtBdCBsZWFzdCBvbmUgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDE1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNyI+ID49IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxNSIgbG9jYXRvcj0iMjM4OjMtMjM4OjU2IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQxOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDE5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDE2IiBsb2NhdG9yPSIyMzg6My0yMzg6NTEiIG5hbWU9Ik51bWJlciBvZiBUQkUgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTciIGxvY2F0b3I9IjIzODo1NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyMiIgbG9jYXRvcj0iMjQ3OjEtMjQ5Ojc0IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDkgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvLTEwMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQyMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDkgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDkgbW9udGhzIGFnby0xMDMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQyMyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDI2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjciPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyOCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Tm93KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzOCI+ICZsdDsgOTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQyMyIgbG9jYXRvcj0iMjQ4OjMtMjQ5Ojc0IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI2IiBsb2NhdG9yPSIyNDg6My0yNDg6MzkiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjUiIGxvY2F0b3I9IjI0ODozLTI0ODozOSIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyNCIgbG9jYXRvcj0iMjQ4OjMtMjQ4OjI3IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyNyIgbG9jYXRvcj0iMjQ5OjktMjQ5Ojc0IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDM5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NDAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjgiIGxvY2F0b3I9IjI0OTo5LTI0OTo3MCIgcHJlY2lzaW9uPSJNb250aCIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDM2IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDM3IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQzNCIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQzNSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyOSIgbG9jYXRvcj0iMjQ5OjM2LTI0OTo2MCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDMyIiBsb2NhdG9yPSIyNDk6NjYtMjQ5OjcwIiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM4IiBsb2NhdG9yPSIyNDk6NzQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ0MyIgbG9jYXRvcj0iMjU4OjEtMjU5OjY3IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgOSBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28tMTAzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlcHVyOiBFbmNlcHVyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDQzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOSBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSA5IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA5IG1vbnRocyBhZ28tMTAzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZXB1cjogRW5jZXB1ciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDkgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NDQiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOSBtb250aHMgYWdvJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDQ0IiBsb2NhdG9yPSIyNTk6My0yNTk6NjciIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDUiIGxvY2F0b3I9IjI1OTo3LTI1OTo2NyIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA5IG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDQ4IiBsb2NhdG9yPSIyNzA6MS0yNzE6NDUiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycy00MCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDQ4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMyB5ZWFycwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAzIHllYXJzLTQwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMyB5ZWFycyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NDkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDUwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDUxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTIiPiAmbHQ7IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ0OSIgbG9jYXRvcj0iMjcxOjMtMjcxOjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDUzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NTQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTEiIGxvY2F0b3I9IjI3MTozLTI3MTo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTIiIGxvY2F0b3I9IjI3MTo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ1NyIgbG9jYXRvcj0iMjgyOjEtMjgzOjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAzIHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycy00MCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDU3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMyB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAzIHllYXJzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDMgeWVhcnMtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JKQpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkJCQkJKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAzIHllYXJzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ1OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDYwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2MSI+ID49IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ1OCIgbG9jYXRvcj0iMjgzOjMtMjgzOjQ2IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2MiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDYzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDYwIiBsb2NhdG9yPSIyODM6My0yODM6NDEiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDYxIiBsb2NhdG9yPSIyODM6NDYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NjYiIGxvY2F0b3I9IjI5NDoxLTI5Njo3NSIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDEyIG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28tMTA0Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5UQkUtTW9zY293OiBUQkUtTW9zY293IHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVEJFLkVuY2VWaXI6IEVuY2VWaXIgc2NoZWR1bGUmI3hhOyhJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0NjYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxMiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspICZsdDsgMTIgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28tMTA0CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlCihJbiBhcmVhcyB3aGVyZSB0aGUgZGlzZWFzZSBpcyBoaWdobHkgZW5kZW1pYywgaW1wbHlpbmcgdGhhdCB0aGVyZSBpcyBhIGhpZ2ggaW5kaXZpZHVhbCByaXNrIG9mIGluZmVjdGlvbiwgV0hPIHJlY29tbWVuZHMgdGhhdCB2YWNjaW5hdGlvbiBiZSBvZmZlcmVkIHRvIGFsbCBhZ2UgZ3JvdXBzLCBpbmNsdWRpbmcgY2hpbGRyZW4JCQkJCSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMTIgbW9udGhzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDcxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVEJFIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODIiPiAmbHQ7IDEyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDY3IiBsb2NhdG9yPSIyOTU6My0yOTY6NzUiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzAiIGxvY2F0b3I9IjI5NTozLTI5NTozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2OSIgbG9jYXRvcj0iMjk1OjMtMjk1OjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY4IiBsb2NhdG9yPSIyOTU6My0yOTU6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRCRSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDcxIiBsb2NhdG9yPSIyOTY6OS0yOTY6NzUiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0ODMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ4NCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3MiIgbG9jYXRvcj0iMjk2OjktMjk2OjcwIiBwcmVjaXNpb249Ik1vbnRoIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0ODAiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0ODEiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDc4IiB4c2k6dHlwZT0iVG9EYXRlVGltZSI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDc5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDczIiBsb2NhdG9yPSIyOTY6MzYtMjk2OjYwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUQkUgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzYiIGxvY2F0b3I9IjI5Njo2Ni0yOTY6NzAiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODIiIGxvY2F0b3I9IjI5Njo3NC0yOTY6NzUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMTIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0ODciIGxvY2F0b3I9IjMwNzoxLTMwODo2OCIgbmFtZT0iVGhlIGxhdGVzdCBUQkUgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxMiBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VEJFIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnby05NyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5UQkUuVEJFLU1vc2NvdzogVEJFLU1vc2NvdyBzY2hlZHVsZSYjeGE7KEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlRCRS5FbmNlVmlyOiBFbmNlVmlyIHNjaGVkdWxlJiN4YTsoSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDg3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUQkUgdmFjY2luZXMmcXVvdDspIOKJpSAxMiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgVEJFIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMTIgbW9udGhzIGFnby05NwpAZGVjaXNpb246IElNTVouRDIuRFQuVEJFLlRCRS1Nb3Njb3c6IFRCRS1Nb3Njb3cgc2NoZWR1bGUKKEluIGFyZWFzIHdoZXJlIHRoZSBkaXNlYXNlIGlzIGhpZ2hseSBlbmRlbWljLCBpbXBseWluZyB0aGF0IHRoZXJlIGlzIGEgaGlnaCBpbmRpdmlkdWFsIHJpc2sgb2YgaW5mZWN0aW9uLCBXSE8gcmVjb21tZW5kcyB0aGF0IHZhY2NpbmF0aW9uIGJlIG9mZmVyZWQgdG8gYWxsIGFnZSBncm91cHMsIGluY2x1ZGluZyBjaGlsZHJlbgkpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5UQkUuRW5jZVZpcjogRW5jZVZpciBzY2hlZHVsZQooSW4gYXJlYXMgd2hlcmUgdGhlIGRpc2Vhc2UgaXMgaGlnaGx5IGVuZGVtaWMsIGltcGx5aW5nIHRoYXQgdGhlcmUgaXMgYSBoaWdoIGluZGl2aWR1YWwgcmlzayBvZiBpbmZlY3Rpb24sIFdITyByZWNvbW1lbmRzIHRoYXQgdmFjY2luYXRpb24gYmUgb2ZmZXJlZCB0byBhbGwgYWdlIGdyb3VwcywgaW5jbHVkaW5nIGNoaWxkcmVuCQkJCQkpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEyIG1vbnRocyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDg4Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0ODgiIGxvY2F0b3I9IjMwODozLTMwODo2OCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4OSIgbG9jYXRvcj0iMzA4OjctMzA4OjY4IiBuYW1lPSJUaGUgbGF0ZXN0IFRCRSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEyIG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="^^xsd:base64Binary ]
  ] ) . #