WHO Immunization Implementation Guide
0.2.0 - ci-build

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

: IMMZD2DTDTPElements - JSON Representation

Draft as of 2025-08-08

Raw json | Download

{
  "resourceType" : "Library",
  "id" : "IMMZD2DTDTPElements",
  "meta" : {
    "profile" : [
      🔗 "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"🔗 ,
      "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"🔗 ,
      "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"🔗 ,
      "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"
    ]
  },
  "text" : {
    "status" : "extensions",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n    <table class=\"grid dict\">\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTDTPElements</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTDTPElements</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-IMMZD2DTDTPElements.html\">IMMZD2DTDTPElements</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/6.0.2/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2025-08-08 19:12: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 DTP 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>DTP Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Td Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Date of Latest DTP Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Date of Latest Td Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP 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 DTP Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No DTP primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>One DTP primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Two DTP primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Three DTP primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Td 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 Td Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No tetanus and diphtheria booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No tetanus and diphtheria booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>One tetanus and diphtheria booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>One tetanus and diphtheria booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Two tetanus and diphtheria booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Three tetanus and diphtheria booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis 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 Pertussis Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>No pertussis booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>One pertussis booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is between 6 weeks and 1 year</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 12 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is more than or equal to 12 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 4 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 4 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is less than 9 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 9 years</th><th>boolean</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>Client's age is more than 1 year</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client's age is between 1 year and 6 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 6 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered less than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered more than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered less than 1 year ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest DTP dose was administered more than 1 year ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest tetanus and diphtheria dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest tetanus and diphtheria dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest tetanus and diphtheria dose was administered less than 1 year ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>The latest tetanus and diphtheria dose was administered more than 1 year ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client is currently pregnant</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: IMMZD2DTDTPElements\n  */\nlibrary IMMZD2DTDTPElements\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\ncontext Patient\n\n/*\n@internal: DTP containing Doses Administered to Patient\n*/\ndefine &quot;DTP Doses Administered to Patient&quot;:\n  Elements.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;DTP-containing vaccines&quot;\n\n/*\n@internal: Td containing Doses Administered to Patient\n*/\ndefine &quot;Td Doses Administered to Patient&quot;:\n  Elements.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;Tetanus and diphtheria-containing vaccines&quot;\n\n/*\n@internal: Pertussis containing Doses Administered to Patient\n*/\ndefine &quot;Pertussis Doses Administered to Patient&quot;:\n  Elements.&quot;Doses Administered to Patient&quot; I\n  where\n    I.vaccineCode in Concepts.&quot;Pertussis-containing vaccines&quot;\n\n/*\n@internal: Date and time of last DTP dose\n*/\ndefine &quot;Date of Latest DTP Dose&quot;:\n  date from start of &quot;DTP Doses Administered to Patient&quot;.mostRecent().occurrence.toInterval()\n\n/*\n@internal: Date and time of last Td dose\n*/\ndefine &quot;Date of Latest Td Dose&quot;:\n  date from start of &quot;Td Doses Administered to Patient&quot;.mostRecent().occurrence.toInterval()\n\n/*\n@internal: DTP containing Doses Administered to Patient that are in the Primary series\n*/\ndefine &quot;DTP Primary Series Doses Administered to Patient&quot;:\n  &quot;DTP Doses Administered to Patient&quot;.seriesPrimary()\n\n/*\n@internal: Number of DTP Primary Series doses\n*/\ndefine &quot;Number of DTP Primary Series Doses Administered&quot;:\n  Count(&quot;DTP Primary Series Doses Administered to Patient&quot;)\n\n/*\n@input: No DTP primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n*/\ndefine &quot;No DTP primary series doses were administered&quot;:\n  &quot;Number of DTP Primary Series Doses Administered&quot; = 0\n\n/*\n@input: One DTP primary series dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;One DTP primary series dose was administered&quot;:\n  &quot;Number of DTP Primary Series Doses Administered&quot; = 1\n\n/*\n@input: Two DTP primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;Two DTP primary series doses were administered&quot;:\n  &quot;Number of DTP Primary Series Doses Administered&quot; = 2\n\n/*\n@input: Three DTP primary series doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 3\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;Three DTP primary series doses were administered&quot;:\n  &quot;Number of DTP Primary Series Doses Administered&quot; = 3\n\n/*\n@internal: Td containing Doses Administered to Patient that are in the Booster series\n*/\ndefine &quot;Td Booster Series Doses Administered to Patient&quot;:\n  &quot;Td Doses Administered to Patient&quot;.seriesBooster()\n\n/*\n@internal: Number of Td Booster Series doses\n*/\ndefine &quot;Number of Td Booster Series Doses Administered&quot;:\n  Count(&quot;Td Booster Series Doses Administered to Patient&quot;)\n\n/*\n@input: No tetanus and diphtheria booster doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 0\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n*/\ndefine &quot;No tetanus and diphtheria booster doses were administered&quot;:\n  &quot;Number of Td Booster Series Doses Administered&quot; = 0\n\n/*\n@input: No tetanus and diphtheria booster dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 0\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n*/\ndefine &quot;No tetanus and diphtheria booster dose was administered&quot;:\n  &quot;No tetanus and diphtheria booster doses were administered&quot;\n\n/*\n@input: One tetanus and diphtheria booster dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;One tetanus and diphtheria booster dose was administered&quot;:\n  &quot;Number of Td Booster Series Doses Administered&quot; = 1\n\n/*\n@input: One tetanus and diphtheria booster doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n*/\ndefine &quot;One tetanus and diphtheria booster doses were administered&quot;:\n  &quot;One tetanus and diphtheria booster dose was administered&quot;\n\n\n/*\n@input: Two tetanus and diphtheria booster doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 2\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;Two tetanus and diphtheria booster doses were administered&quot;:\n  &quot;Number of Td Booster Series Doses Administered&quot; = 2\n\n/*\n@input: Three tetanus and diphtheria booster doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 3\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;Three tetanus and diphtheria booster doses were administered&quot;:\n  &quot;Number of Td Booster Series Doses Administered&quot; = 3\n\n/*\n@internal: Pertussis containing Doses Administered to Patient that are in the Booster series\n*/\ndefine &quot;Pertussis Booster Series Doses Administered to Patient&quot;:\n  &quot;Pertussis Doses Administered to Patient&quot;.seriesBooster()\n\n/*\n@internal: Number of Pertussis Booster Series doses\n*/\ndefine &quot;Number of Pertussis Booster Series Doses Administered&quot;:\n  Count(&quot;Pertussis Booster Series Doses Administered to Patient&quot;)\n\n/*\n@input: No pertussis booster doses were administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 0\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;No pertussis booster doses were administered&quot;:\n  &quot;Number of Pertussis Booster Series Doses Administered&quot; = 0\n\n/*\n@input: One pertussis booster dose was administered\n@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;One pertussis booster dose was administered&quot;:\n  &quot;Number of Pertussis Booster Series Doses Administered&quot; = 1\n\n/*\n@input: Client's age is less than 6 weeks\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 6 weeks\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is less than 6 weeks&quot;:\n  Elements.&quot;Current Patient Age In Weeks&quot; &lt; 6\n\n/*\n@input: Client's age is between 6 weeks and 1 year\n@pseudocode: 6 weeks ≤ Today's date − &quot;Date of birth&quot; &lt; 1 year\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is between 6 weeks and 1 year&quot;:\n  6 &lt;= Elements.&quot;Current Patient Age In Weeks&quot;\n  and Elements.&quot;Current Patient Age In Years&quot; &lt; 1\n\n/*\n@input: Client's age is less than 12 months\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 12 months\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is less than 12 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &lt; 12\n\n/*\n@input: Client's age is more than or equal to 12 months\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 12 months\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is more than or equal to 12 months&quot;:\n  Elements.&quot;Current Patient Age In Months&quot; &gt;= 12\n\n/*\n@input: Client's age is less than 4 years\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 4 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is less than 4 years&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &lt; 4\n\n/*\n@input: Client's age is more than or equal to 4 years\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 4 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is more than or equal to 4 years&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &gt;= 4\n\n/*\n@input: Client's age is less than 9 years\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 9 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is less than 9 years&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &lt; 9\n\n/*\n@input: Client's age is more than or equal to 9 years\n@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 9 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is more than or equal to 9 years&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &gt;= 9\n\n/*\n@input: Client's age is less than 1 year\n@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 1 year\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n*/\ndefine &quot;Client's age is less than 1 year&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &lt; 1\n\n/*\n@input: Client's age is more than 1 year\n@pseudocode: Today's date − &quot;Date of birth&quot; &gt;= 1 year\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;Client's age is more than 1 year&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &gt;= 1\n\n/*\n@input: Client's age is between 1 year and 6 years\n@pseudocode: 1 year ≤  Today's date − &quot;Date of birth&quot; ≤  6 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;Client's age is between 1 year and 6 years&quot;:\n  1 &lt;= Elements.&quot;Current Patient Age In Years&quot; \n  and Elements.&quot;Current Patient Age In Years&quot; &lt;= 6\n\n/*\n@input: Client's age is more than 6 years\n@pseudocode: Today's date − &quot;Date of birth&quot; &gt;  6 years\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;Client's age is more than 6 years&quot;:\n  Elements.&quot;Current Patient Age In Years&quot; &gt; 6\n\n/*\n@input: The latest DTP dose was administered less than 4 weeks ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) &lt; 4 weeks\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered less than 4 weeks ago&quot;:\n  &quot;Date of Latest DTP Dose&quot; is not null\n    and duration in weeks between &quot;Date of Latest DTP Dose&quot; and Now() &lt; 4\n/*\n@input: The latest DTP dose was administered more than 4 weeks ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) ≥ 4 weeks\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered more than 4 weeks ago&quot;:\n  not(&quot;The latest DTP dose was administered less than 4 weeks ago&quot;)\n\n/*\n@input: The latest DTP dose was administered less than 6 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) &lt; 6 months\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered less than 6 months ago&quot;:\n  &quot;Date of Latest DTP Dose&quot; is not null\n    and duration in months between &quot;Date of Latest DTP Dose&quot; and Now() &lt; 6\n    \n/*\n@input: The latest DTP dose was administered more than 6 months ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) ≥ 6 months\n@decision: DTP vaccination schedule, on-time start (at ≤ 12 months of age)\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered more than 6 months ago&quot;:\n  not(&quot;The latest DTP dose was administered less than 6 months ago&quot;)\n\n/*\n@input: The latest DTP dose was administered less than 1 year ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) &lt; 1 year\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered less than 1 year ago&quot;:\n  &quot;Date of Latest DTP Dose&quot; is not null\n    and duration in years between &quot;Date of Latest DTP Dose&quot; and Now() &lt; 1\n\n/*\n@input: The latest DTP dose was administered more than 1 year ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) ≥ 1 year\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n*/\ndefine &quot;The latest DTP dose was administered more than 1 year ago&quot;:\n  not(&quot;The latest DTP dose was administered less than 1 year ago&quot;)\n\n/*\n@input: The latest tetanus and diphtheria dose was administered less than 4 weeks ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing\n vaccines&quot;) &lt; 4 weeks\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n*/\ndefine &quot;The latest tetanus and diphtheria dose was administered less than 4 weeks ago&quot;:\n  &quot;Date of Latest Td Dose&quot; is not null\n    and duration in weeks between &quot;Date of Latest Td Dose&quot; and Now() &lt; 4\n\n/*\n@input: The latest tetanus and diphtheria dose was administered more than 4 weeks ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing\n vaccines&quot;) &gt; 4 weeks\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n*/\ndefine &quot;The latest tetanus and diphtheria dose was administered more than 4 weeks ago&quot;:\n  not(&quot;The latest tetanus and diphtheria dose was administered less than 4 weeks ago&quot;)\n\n/*\n@input: The latest tetanus and diphtheria dose was administered less than 1 year ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;) &lt; 1 year\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;The latest tetanus and diphtheria dose was administered less than 1 year ago&quot;:\n  &quot;Date of Latest Td Dose&quot; is not null\n    and duration in years between &quot;Date of Latest Td Dose&quot; and Now() &lt; 1\n\n/*\n@input: The latest tetanus and diphtheria dose was administered more than 1 year ago\n@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;) ≥ 1 year\n@decision: DTP vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;The latest tetanus and diphtheria dose was administered more than 1 year ago&quot;:\n  not(&quot;The latest tetanus and diphtheria dose was administered less than 1 year ago&quot;)\n\n/*\n@input: Client is currently pregnant\n@pseudocode: &quot;Currently pregnant&quot; = TRUE\n@decision: Determine whether DTP-containing vaccines are needed for pregnant women\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood DTP doses\n@decision: Diphtheria and tetanus vaccination schedule in pregnant women who received 4 childhood DTP doses\n*/\ndefine &quot;Client is currently pregnant&quot;:\n  Elements.&quot;The client is pregnant&quot;</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 (151672 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"
  },
  "extension" : [
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability",
      "valueCode" : "computable"
    }
  ],
  "url" : "http://smart.who.int/immunizations/Library/IMMZD2DTDTPElements",
  "version" : "0.2.0",
  "name" : "IMMZD2DTDTPElements",
  "title" : "IMMZD2DTDTPElements",
  "status" : "draft",
  "experimental" : false,
  "type" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/library-type",
        "code" : "logic-library"
      }
    ]
  },
  "date" : "2025-08-08T19:12:11+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "description" : "This library defines context-independent elements for DTP used throughout the Immunization CPG",
  "relatedArtifact" : [
    {
      "type" : "depends-on",
      "display" : "Library WHOConcepts",
      "resource" : "http://smart.who.int/immunizations/Library/WHOConcepts"
    },
    {
      "type" : "depends-on",
      "display" : "Library WC",
      "resource" : "http://smart.who.int/immunizations/Library/WHOCommon"
    },
    {
      "type" : "depends-on",
      "display" : "Library WE",
      "resource" : "http://smart.who.int/immunizations/Library/WHOElements"
    },
    {
      "type" : "depends-on",
      "display" : "Library Common",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZCommon"
    },
    {
      "type" : "depends-on",
      "display" : "Library Concepts",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZConcepts"
    },
    {
      "type" : "depends-on",
      "display" : "Library Elements",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZElements"
    }
  ],
  "parameter" : [
    {
      "name" : "Patient",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Patient"
    },
    {
      "name" : "DTP Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Td Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Pertussis Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Date of Latest DTP Dose",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Date of Latest Td Dose",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "DTP Primary Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of DTP Primary Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "No DTP primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "One DTP primary series dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Two DTP primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Three DTP primary series doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Td Booster Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of Td Booster Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "No tetanus and diphtheria booster doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "No tetanus and diphtheria booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "One tetanus and diphtheria booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "One tetanus and diphtheria booster doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Two tetanus and diphtheria booster doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Three tetanus and diphtheria booster doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Pertussis Booster Series Doses Administered to Patient",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Immunization"
    },
    {
      "name" : "Number of Pertussis Booster Series Doses Administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "integer"
    },
    {
      "name" : "No pertussis booster doses were administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "One pertussis booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 6 weeks",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is between 6 weeks and 1 year",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 12 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 12 months",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 4 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 4 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 9 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than or equal to 9 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is less than 1 year",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than 1 year",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is between 1 year and 6 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client's age is more than 6 years",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered less than 4 weeks ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered more than 4 weeks ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered less than 6 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered more than 6 months ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered less than 1 year ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest DTP dose was administered more than 1 year ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest tetanus and diphtheria dose was administered less than 4 weeks ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest tetanus and diphtheria dose was administered more than 4 weeks ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest tetanus and diphtheria dose was administered less than 1 year ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "The latest tetanus and diphtheria dose was administered more than 1 year ago",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client is currently pregnant",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVERUUEVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVERUUEVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbGVtZW50cyBjYWxsZWQgRWxlbWVudHMKCmNvbnRleHQgUGF0aWVudAoKLyoKQGludGVybmFsOiBEVFAgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIkRUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIgoKLyoKQGludGVybmFsOiBUZCBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiVGQgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogIEVsZW1lbnRzLiJEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlCiAgICBJLnZhY2NpbmVDb2RlIGluIENvbmNlcHRzLiJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiCgovKgpAaW50ZXJuYWw6IFBlcnR1c3NpcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiUGVydHVzc2lzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICBFbGVtZW50cy4iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIEkKICB3aGVyZQogICAgSS52YWNjaW5lQ29kZSBpbiBDb25jZXB0cy4iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMiCgovKgpAaW50ZXJuYWw6IERhdGUgYW5kIHRpbWUgb2YgbGFzdCBEVFAgZG9zZQoqLwpkZWZpbmUgIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIjoKICBkYXRlIGZyb20gc3RhcnQgb2YgIkRUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIubW9zdFJlY2VudCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IERhdGUgYW5kIHRpbWUgb2YgbGFzdCBUZCBkb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJUZCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIubW9zdFJlY2VudCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IERUUCBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgIkRUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIkRUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzUHJpbWFyeSgpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICJOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIkRUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW5wdXQ6IE5vIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KKi8KZGVmaW5lICJObyBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IE9uZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICJPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogVHdvIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiVHdvIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDIKCi8qCkBpbnB1dDogVGhyZWUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKQGRlY2lzaW9uOiBEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbgpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDQgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgIlRocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDMKCi8qCkBpbnRlcm5hbDogVGQgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgQm9vc3RlciBzZXJpZXMKKi8KZGVmaW5lICJUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlRkIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNCb29zdGVyKCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogTm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMApAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgIk5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMApAZGVjaXNpb246IERldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuCiovCmRlZmluZSAiTm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCi8qCkBpbnB1dDogT25lIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMQpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgIk9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCgovKgpAaW5wdXQ6IFR3byB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICJUd28gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IFRocmVlIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAiVGhyZWUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAzCgovKgpAaW50ZXJuYWw6IFBlcnR1c3NpcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBCb29zdGVyIHNlcmllcwoqLwpkZWZpbmUgIlBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlBlcnR1c3NpcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzQm9vc3RlcigpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICJOdW1iZXIgb2YgUGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW5wdXQ6IE5vIHBlcnR1c3NpcyBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAwCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiTm8gcGVydHVzc2lzIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IE9uZSBwZXJ0dXNzaXMgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICJPbmUgcGVydHVzc2lzIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgNiB3ZWVrcwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPCA2CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDEgeWVhcgpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxIHllYXIKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDEgeWVhciI6CiAgNiA8PSBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIKICBhbmQgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIDwgMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxMiBtb250aHMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIDwgMTIKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxMiBtb250aHMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiID49IDEyCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNCB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCA0IHllYXJzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDQgeWVhcnMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA8IDQKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA0IHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaUgNCB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA0IHllYXJzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPj0gNAoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgOSB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IHllYXJzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPCA5CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omlIDkgeWVhcnMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSB5ZWFycyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiID49IDkKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgMSB5ZWFyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIDwgMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDEgeWVhcgpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPj0gMSB5ZWFyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPj0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMKQHBzZXVkb2NvZGU6IDEgeWVhciDiiaQgIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpCAgNiB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyI6CiAgMSA8PSBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgCiAgYW5kIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA8PSA2CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gNiB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPiAgNiB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gNiB5ZWFycyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiID4gNgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikgPCA0IHdlZWtzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiBhbmQgTm93KCkgPCA0Ci8qCkBpbnB1dDogVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpIOKJpSA0IHdlZWtzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSA8IDYgbW9udGhzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UiIGFuZCBOb3coKSA8IDYKICAgIAovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikg4omlIDYgbW9udGhzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAiVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28iOgogIG5vdCgiVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iKQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSA8IDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB5ZWFycyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgYW5kIE5vdygpIDwgMQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgeWVhciBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSDiiaUgMSB5ZWFyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSB5ZWFyIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28iKQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcKIHZhY2NpbmVzIikgPCA0IHdlZWtzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAiVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIGFuZCBOb3coKSA8IDQKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nCiB2YWNjaW5lcyIpID4gNCB3ZWVrcwpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiKSA8IDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB5ZWFycyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiBhbmQgTm93KCkgPCAxCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgeWVhciBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIikg4omlIDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIHllYXIgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28iKQoKLyoKQGlucHV0OiBDbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50CkBwc2V1ZG9jb2RlOiAiQ3VycmVudGx5IHByZWduYW50IiA9IFRSVUUKQGRlY2lzaW9uOiBEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbgpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDQgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgIkNsaWVudCBpcyBjdXJyZW50bHkgcHJlZ25hbnQiOgogIEVsZW1lbnRzLiJUaGUgY2xpZW50IGlzIHByZWduYW50Ig=="
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNjcxIj4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFREVFBFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFREVFBFbGVtZW50czwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQyRFREVFBFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjEwOjEtMTA6MTkiIGxvY2FsSWRlbnRpZmllcj0iV0hPQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMiIgbG9jYXRvcj0iMTE6MS0xMToyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTIiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxMjoxLTEyOjI5IiBsb2NhbElkZW50aWZpZXI9IldFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0VsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE0Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0VsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0U8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE2IiBsb2NhdG9yPSIxNDoxLTE0OjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE4IiBsb2NhdG9yPSIxNToxLTE1OjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjE2OjEtMTY6MzYiIGxvY2FsSWRlbnRpZmllcj0iRWxlbWVudHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjIwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIEVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI1IiBsb2NhdG9yPSIxODoxLTE4OjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMyIgbG9jYXRvcj0iMTg6MS0xODoxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyNCIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjIiIGxvY2F0b3I9IjE4OjEtMTg6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjgiIGxvY2F0b3I9IjIzOjEtMjY6NTUiIG5hbWU9IkRUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRFRQIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogRFRQIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O0RUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDAiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50cy4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDAiIGxvY2F0b3I9IjI0OjMtMjY6NTUiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjI5IiBsb2NhdG9yPSIyNDozLTI0OjQ0IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMSIgbG9jYXRvcj0iMjQ6My0yNDo0MiIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIyMzciIGxvY2F0b3I9IjI1OjMtMjY6NTUiIHhzaTp0eXBlPSJJblZhbHVlU2V0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyMzkiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8Y29kZSBsb2NhbElkPSIyMzgiIG5hbWU9IlRvQ29uY2VwdCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzQiIGxvY2F0b3I9IjI2OjUtMjY6MTciIHBhdGg9InZhY2NpbmVDb2RlIiBzY29wZT0iSSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgIDwvY29kZT4KICAgICAgICAgICAgICAgPHZhbHVlc2V0IGxvY2FsSWQ9IjIzNiIgbG9jYXRvcj0iMjY6MjItMjY6NTUiIG5hbWU9IkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHByZXNlcnZlPSJ0cnVlIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQzIiBsb2NhdG9yPSIzMToxLTM0Ojc0IiBuYW1lPSJUZCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iVGQgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9IjI0MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBUZCBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtUZCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTUiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50cy4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjU1IiBsb2NhdG9yPSIzMjozLTM0Ojc0IiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI0NCIgbG9jYXRvcj0iMzI6My0zMjo0NCIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDYiIGxvY2F0b3I9IjMyOjMtMzI6NDIiIG5hbWU9IkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMjUyIiBsb2NhdG9yPSIzMzozLTM0Ojc0IiB4c2k6dHlwZT0iSW5WYWx1ZVNldCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjU0IiBuYW1lPSJ0OkNvbmNlcHQiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPGNvZGUgbG9jYWxJZD0iMjUzIiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjQ5IiBsb2NhdG9yPSIzNDo1LTM0OjE3IiBwYXRoPSJ2YWNjaW5lQ29kZSIgc2NvcGU9IkkiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICA8L2NvZGU+CiAgICAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIyNTEiIGxvY2F0b3I9IjM0OjIyLTM0Ojc0IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgcHJlc2VydmU9InRydWUiLz4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTgiIGxvY2F0b3I9IjM5OjEtNDI6NjEiIG5hbWU9IlBlcnR1c3NpcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iUGVydHVzc2lzIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSIyNTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogUGVydHVzc2lzIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1BlcnR1c3NpcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNzAiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50cy4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNzAiIGxvY2F0b3I9IjQwOjMtNDI6NjEiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI0MDozLTQwOjQ0IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2MSIgbG9jYXRvcj0iNDA6My00MDo0MiIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIyNjciIGxvY2F0b3I9IjQxOjMtNDI6NjEiIHhzaTp0eXBlPSJJblZhbHVlU2V0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNjkiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8Y29kZSBsb2NhbElkPSIyNjgiIG5hbWU9IlRvQ29uY2VwdCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjQiIGxvY2F0b3I9IjQyOjUtNDI6MTciIHBhdGg9InZhY2NpbmVDb2RlIiBzY29wZT0iSSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgIDwvY29kZT4KICAgICAgICAgICAgICAgPHZhbHVlc2V0IGxvY2FsSWQ9IjI2NiIgbG9jYXRvcj0iNDI6MjItNDI6NjEiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHByZXNlcnZlPSJ0cnVlIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjczIiBsb2NhdG9yPSI0NzoxLTQ4OjkzIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBhbmQgdGltZSBvZiBsYXN0IERUUCBkb3NlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjczIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IERhdGUgYW5kIHRpbWUgb2YgbGFzdCBEVFAgZG9zZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjc0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5tb3N0UmVjZW50KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm9jY3VycmVuY2U8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnRvSW50ZXJ2YWwoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjc0IiBsb2NhdG9yPSI0ODozLTQ4OjkzIiB4c2k6dHlwZT0iRGF0ZUZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzUiIGxvY2F0b3I9IjQ4OjEzLTQ4OjkzIiB4c2k6dHlwZT0iU3RhcnQiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODEiIGxvY2F0b3I9IjQ4OjIyLTQ4OjkzIiBuYW1lPSJ0b0ludGVydmFsIiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4MCIgbG9jYXRvcj0iNDg6MjItNDg6ODAiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjc3IiBsb2NhdG9yPSI0ODoyMi00ODo2OSIgbmFtZT0ibW9zdFJlY2VudCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3OCIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjI3OSIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iNDg6MjItNDg6NTYiIG5hbWU9IkRUUCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSI1MzoxLTU0OjkyIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJEYXRlIGFuZCB0aW1lIG9mIGxhc3QgVGQgZG9zZSIvPgogICAgICAgICAgICA8YTpzIHI9IjI4NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBEYXRlIGFuZCB0aW1lIG9mIGxhc3QgVGQgZG9zZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyODUiPgogICAgICAgICAgICAgICAgICA8YTpzPmRhdGUgZnJvbSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnN0YXJ0IG9mIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGQgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+bW9zdFJlY2VudCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5vY2N1cnJlbmNlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50b0ludGVydmFsKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4NSIgbG9jYXRvcj0iNTQ6My01NDo5MiIgeHNpOnR5cGU9IkRhdGVGcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg2IiBsb2NhdG9yPSI1NDoxMy01NDo5MiIgeHNpOnR5cGU9IlN0YXJ0Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjkyIiBsb2NhdG9yPSI1NDoyMi01NDo5MiIgbmFtZT0idG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyOTEiIGxvY2F0b3I9IjU0OjIyLTU0Ojc5IiBwYXRoPSJvY2N1cnJlbmNlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI4OCIgbG9jYXRvcj0iNTQ6MjItNTQ6NjgiIG5hbWU9Im1vc3RSZWNlbnQiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyODkiIHhzaTp0eXBlPSJMaXN0VHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50VHlwZSBsb2NhbElkPSIyOTAiIG5hbWU9ImZoaXI6SW1tdW5pemF0aW9uIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2lnbmF0dXJlPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODciIGxvY2F0b3I9IjU0OjIyLTU0OjU1IiBuYW1lPSJUZCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjk1IiBsb2NhdG9yPSI1OToxLTYwOjUzIiBuYW1lPSJEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IkRUUCBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI5NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBEVFAgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICZxdW90O0RUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyOTciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc1ByaW1hcnkoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5NyIgbG9jYXRvcj0iNjA6My02MDo1MyIgbmFtZT0ic2VyaWVzUHJpbWFyeSIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjk2IiBsb2NhdG9yPSI2MDozLTYwOjM3IiBuYW1lPSJEVFAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzAwIiBsb2NhdG9yPSI2NToxLTY2OjU5IiBuYW1lPSJOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIERUUCBQcmltYXJ5IFNlcmllcyBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjMwMCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMDQiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMwNCIgbG9jYXRvcj0iNjY6My02Njo1OSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIzMDEiIGxvY2F0b3I9IjY2OjktNjY6NTgiIG5hbWU9IkRUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDciIGxvY2F0b3I9Ijc1OjEtNzY6NTUiIG5hbWU9Ik5vIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTm8gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4iLz4KICAgICAgICAgICAgPGE6cyByPSIzMDciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KKi8KZGVmaW5lICZxdW90O05vIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMDgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIERUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMDgiIGxvY2F0b3I9Ijc2OjMtNzY6NTUiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzExIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMTIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDkiIGxvY2F0b3I9Ijc2OjMtNzY6NTEiIG5hbWU9Ik51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTAiIGxvY2F0b3I9Ijc2OjU1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzE1IiBsb2NhdG9yPSI4NDoxLTg1OjU1IiBuYW1lPSJPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iT25lIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzE1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE9uZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTYiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIERUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzE4Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTYiIGxvY2F0b3I9Ijg1OjMtODU6NTUiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzE5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTciIGxvY2F0b3I9Ijg1OjMtODU6NTEiIG5hbWU9Ik51bWJlciBvZiBEVFAgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTgiIGxvY2F0b3I9Ijg1OjU1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzIzIiBsb2NhdG9yPSI5MzoxLTk0OjU1IiBuYW1lPSJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjMyMyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMyNCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjYiPiA9IDI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMyNCIgbG9jYXRvcj0iOTQ6My05NDo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNSIgbG9jYXRvcj0iOTQ6My05NDo1MSIgbmFtZT0iTnVtYmVyIG9mIERUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNiIgbG9jYXRvcj0iOTQ6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMzEiIGxvY2F0b3I9IjEwNToxLTEwNjo1NSIgbmFtZT0iVGhyZWUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaHJlZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMiLz4KICAgICAgICAgICAgPGE6cyByPSIzMzEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhyZWUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICZxdW90O1RocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMzIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIERUUCBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM0Ij4gPSAzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMzIiIGxvY2F0b3I9IjEwNjozLTEwNjo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMzUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzNiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzMyIgbG9jYXRvcj0iMTA2OjMtMTA2OjUxIiBuYW1lPSJOdW1iZXIgb2YgRFRQIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM0IiBsb2NhdG9yPSIxMDY6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMzkiIGxvY2F0b3I9IjExMToxLTExMjo1MiIgbmFtZT0iVGQgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlRkIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIEJvb3N0ZXIgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzM5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFRkIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIEJvb3N0ZXIgc2VyaWVzCiovCmRlZmluZSAmcXVvdDtUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGQgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzQm9vc3RlcigpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQxIiBsb2NhdG9yPSIxMTI6My0xMTI6NTIiIG5hbWU9InNlcmllc0Jvb3N0ZXIiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0MCIgbG9jYXRvcj0iMTEyOjMtMTEyOjM2IiBuYW1lPSJUZCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNDQiIGxvY2F0b3I9IjExNzoxLTExODo1OCIgbmFtZT0iTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQ0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBkb3NlcwoqLwpkZWZpbmUgJnF1b3Q7TnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDgiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGQgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQ4IiBsb2NhdG9yPSIxMTg6My0xMTg6NTgiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzQ1IiBsb2NhdG9yPSIxMTg6OS0xMTg6NTciIG5hbWU9IlRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM1MSIgbG9jYXRvcj0iMTI3OjEtMTI4OjU0IiBuYW1lPSJObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzUxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAmcXVvdDtObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzUyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU0Ij4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNTIiIGxvY2F0b3I9IjEyODozLTEyODo1NCIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1NiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1MyIgbG9jYXRvcj0iMTI4OjMtMTI4OjUwIiBuYW1lPSJOdW1iZXIgb2YgVGQgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTQiIGxvY2F0b3I9IjEyODo1NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIwIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM1OSIgbG9jYXRvcj0iMTM1OjEtMTM2OjYxIiBuYW1lPSJObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzU5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMApAZGVjaXNpb246IERldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuCiovCmRlZmluZSAmcXVvdDtObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM2MCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Tm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNjAiIGxvY2F0b3I9IjEzNjozLTEzNjo2MSIgbmFtZT0iTm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNjMiIGxvY2F0b3I9IjE0NjoxLTE0Nzo1NCIgbmFtZT0iT25lIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzYzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKQGRlY2lzaW9uOiBEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbgpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDQgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgJnF1b3Q7T25lIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzY0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY2Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNjQiIGxvY2F0b3I9IjE0NzozLTE0Nzo1NCIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM2OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM2NSIgbG9jYXRvcj0iMTQ3OjMtMTQ3OjUwIiBuYW1lPSJOdW1iZXIgb2YgVGQgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjYiIGxvY2F0b3I9IjE0Nzo1NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3MSIgbG9jYXRvcj0iMTU0OjEtMTU1OjYwIiBuYW1lPSJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjM3MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICZxdW90O09uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzcyIj4KICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzcyIiBsb2NhdG9yPSIxNTU6My0xNTU6NjAiIG5hbWU9Ik9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNzUiIGxvY2F0b3I9IjE2NzoxLTE2ODo1NCIgbmFtZT0iVHdvIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVHdvIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzc1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFR3byB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQpAZGVjaXNpb246IERldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAmcXVvdDtUd28gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVGQgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3OCI+ID0gMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzc2IiBsb2NhdG9yPSIxNjg6My0xNjg6NTQiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzc5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzODAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzciIGxvY2F0b3I9IjE2ODozLTE2ODo1MCIgbmFtZT0iTnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzc4IiBsb2NhdG9yPSIxNjg6NTQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzODMiIGxvY2F0b3I9IjE3ODoxLTE3OTo1NCIgbmFtZT0iVGhyZWUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaHJlZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDQgY2hpbGRob29kIERUUCBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjM4MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaHJlZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRGV0ZXJtaW5lIHdoZXRoZXIgRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMgYXJlIG5lZWRlZCBmb3IgcHJlZ25hbnQgd29tZW4KQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMKQGRlY2lzaW9uOiBEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMKKi8KZGVmaW5lICZxdW90O1RocmVlIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzODQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFRkIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODYiPiA9IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4NCIgbG9jYXRvcj0iMTc5OjMtMTc5OjU0IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM4NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzg4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzg1IiBsb2NhdG9yPSIxNzk6My0xNzk6NTAiIG5hbWU9Ik51bWJlciBvZiBUZCBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4NiIgbG9jYXRvcj0iMTc5OjU0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzkxIiBsb2NhdG9yPSIxODQ6MS0xODU6NTkiIG5hbWU9IlBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iUGVydHVzc2lzIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIEJvb3N0ZXIgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzkxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBlcnR1c3NpcyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBCb29zdGVyIHNlcmllcwoqLwpkZWZpbmUgJnF1b3Q7UGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM5MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzkyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzQm9vc3RlcigpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzkzIiBsb2NhdG9yPSIxODU6My0xODU6NTkiIG5hbWU9InNlcmllc0Jvb3N0ZXIiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5MiIgbG9jYXRvcj0iMTg1OjMtMTg1OjQzIiBuYW1lPSJQZXJ0dXNzaXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzk2IiBsb2NhdG9yPSIxOTA6MS0xOTE6NjUiIG5hbWU9Ik51bWJlciBvZiBQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgUGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzk2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQwMCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDAwIiBsb2NhdG9yPSIxOTE6My0xOTE6NjUiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzk3IiBsb2NhdG9yPSIxOTE6OS0xOTE6NjQiIG5hbWU9IlBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MDMiIGxvY2F0b3I9IjE5OToxLTIwMDo2MSIgbmFtZT0iTm8gcGVydHVzc2lzIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIHBlcnR1c3NpcyBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UiLz4KICAgICAgICAgICAgPGE6cyByPSI0MDMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gcGVydHVzc2lzIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtObyBwZXJ0dXNzaXMgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MDQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBlcnR1c3NpcyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDA2Ij4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MDQiIGxvY2F0b3I9IjIwMDozLTIwMDo2MSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MDciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwNSIgbG9jYXRvcj0iMjAwOjMtMjAwOjU3IiBuYW1lPSJOdW1iZXIgb2YgUGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA2IiBsb2NhdG9yPSIyMDA6NjEiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MTEiIGxvY2F0b3I9IjIwODoxLTIwOTo2MSIgbmFtZT0iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDExIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE9uZSBwZXJ0dXNzaXMgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtPbmUgcGVydHVzc2lzIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxMiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUGVydHVzc2lzIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTQiPiA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxMiIgbG9jYXRvcj0iMjA5OjMtMjA5OjYxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQxNSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDE2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDEzIiBsb2NhdG9yPSIyMDk6My0yMDk6NTciIG5hbWU9Ik51bWJlciBvZiBQZXJ0dXNzaXMgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTQiIGxvY2F0b3I9IjIwOTo2MSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQxOSIgbG9jYXRvcj0iMjE2OjEtMjE3OjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgd2Vla3MiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgNiB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0MTkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA2IHdlZWtzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MjAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjMiPiAmbHQ7IDY8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQyMCIgbG9jYXRvcj0iMjE3OjMtMjE3OjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDI0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MjUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjIiIGxvY2F0b3I9IjIxNzozLTIxNzo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjMiIGxvY2F0b3I9IjIxNzo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyOCIgbG9jYXRvcj0iMjI0OjEtMjI2OjQ5IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxIHllYXIiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQyOCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxIHllYXIKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxIHllYXImcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDI5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMSI+NiAmbHQ7PSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzOCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzkiPiAmbHQ7IDE8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MjkiIGxvY2F0b3I9IjIyNTozLTIyNjo0OSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQzMCIgbG9jYXRvcj0iMjI1OjMtMjI1OjQ2IiB4c2k6dHlwZT0iTGVzc09yRXF1YWwiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQzNCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDM1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDMxIiBsb2NhdG9yPSIyMjU6MyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzMiIGxvY2F0b3I9IjIyNTo4LTIyNTo0NiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQzNiIgbG9jYXRvcj0iMjI2OjctMjI2OjQ5IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDQwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NDEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzgiIGxvY2F0b3I9IjIyNjo3LTIyNjo0NSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzkiIGxvY2F0b3I9IjIyNjo0OSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDQ0IiBsb2NhdG9yPSIyMzM6MS0yMzQ6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ0NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMTIgbW9udGhzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ0NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDgiPiAmbHQ7IDEyPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NDUiIGxvY2F0b3I9IjIzNDozLTIzNDo0NyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ0OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDUwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ3IiBsb2NhdG9yPSIyMzQ6My0yMzQ6NDIiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0OCIgbG9jYXRvcj0iMjM0OjQ2LTIzNDo0NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NTMiIGxvY2F0b3I9IjI0MToxLTI0Mjo0OCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDEyIG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0NTMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMTIgbW9udGhzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ1NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTciPiA+PSAxMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDU0IiBsb2NhdG9yPSIyNDI6My0yNDI6NDgiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDU4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NTkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTYiIGxvY2F0b3I9IjI0MjozLTI0Mjo0MiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDU3IiBsb2NhdG9yPSIyNDI6NDctMjQyOjQ4IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ2MiIgbG9jYXRvcj0iMjQ5OjEtMjUwOjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDQgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNCB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgNCB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0NjIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA0IHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA0IHllYXJzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNCB5ZWFycyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NjMiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjYiPiAmbHQ7IDQ8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ2MyIgbG9jYXRvcj0iMjUwOjMtMjUwOjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDY3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NjgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjUiIGxvY2F0b3I9IjI1MDozLTI1MDo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjYiIGxvY2F0b3I9IjI1MDo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ3MSIgbG9jYXRvcj0iMjU3OjEtMjU4OjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDQgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNCB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSA0IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ3MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDQgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgNCB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDQgeWVhcnMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDcyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDc1Ij4gPj0gNDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDcyIiBsb2NhdG9yPSIyNTg6My0yNTg6NDYiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDc2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NzciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzQiIGxvY2F0b3I9IjI1ODozLTI1ODo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzUiIGxvY2F0b3I9IjI1ODo0NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4MCIgbG9jYXRvcj0iMjY1OjEtMjY2OjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgOSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0ODAiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA5IHllYXJzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOSB5ZWFycyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0ODEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODQiPiAmbHQ7IDk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ4MSIgbG9jYXRvcj0iMjY2OjMtMjY2OjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDg1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0ODYiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODMiIGxvY2F0b3I9IjI2NjozLTI2Njo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODQiIGxvY2F0b3I9IjI2Njo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4OSIgbG9jYXRvcj0iMjczOjEtMjc0OjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSA5IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ4OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgOSB5ZWFycwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgeWVhcnMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDkwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDkzIj4gPj0gOTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDkwIiBsb2NhdG9yPSIyNzQ6My0yNzQ6NDYiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDk0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0OTIiIGxvY2F0b3I9IjI3NDozLTI3NDo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0OTMiIGxvY2F0b3I9IjI3NDo0NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ5OCIgbG9jYXRvcj0iMjgxOjEtMjgyOjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0OTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgeWVhciZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0OTkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDIiPiAmbHQ7IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ5OSIgbG9jYXRvcj0iMjgyOjMtMjgyOjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTAzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MDQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDEiIGxvY2F0b3I9IjI4MjozLTI4Mjo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDIiIGxvY2F0b3I9IjI4Mjo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjUwNyIgbG9jYXRvcj0iMjg5OjEtMjkwOjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDEgeWVhciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+PSAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UiLz4KICAgICAgICAgICAgPGE6cyByPSI1MDciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+PSAxIHllYXIKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDEgeWVhciZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MDgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTEwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MTEiPiA+PSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MDgiIGxvY2F0b3I9IjI5MDozLTI5MDo0NiIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MTIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUxMyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUxMCIgbG9jYXRvcj0iMjkwOjMtMjkwOjQxIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUxMSIgbG9jYXRvcj0iMjkwOjQ2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTE2IiBsb2NhdG9yPSIyOTg6MS0zMDA6NTAiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gMSB5ZWFyIGFuZCA2IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omkICA2IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjUxNiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMKQHBzZXVkb2NvZGU6IDEgeWVhciDiiaQgIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgIDYgeWVhcnMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MTciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTE5Ij4xICZsdDs9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyMSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IAogIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyNiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjciPiAmbHQ7PSA2PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTE3IiBsb2NhdG9yPSIyOTk6My0zMDA6NTAiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MTgiIGxvY2F0b3I9IjI5OTozLTI5OTo0NiIgeHNpOnR5cGU9Ikxlc3NPckVxdWFsIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MjIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUyMyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUxOSIgbG9jYXRvcj0iMjk5OjMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTIxIiBsb2NhdG9yPSIyOTk6OC0yOTk6NDYiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjQiIGxvY2F0b3I9IjMwMDo3LTMwMDo1MCIgeHNpOnR5cGU9Ikxlc3NPckVxdWFsIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MjgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUyOSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUyNiIgbG9jYXRvcj0iMzAwOjctMzAwOjQ1IiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUyNyIgbG9jYXRvcj0iMzAwOjUwIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjYiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1MzIiIGxvY2F0b3I9IjMwODoxLTMwOTo0NSIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA2IHllYXJzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDYgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+ICA2IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjUzMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDYgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+ICA2IHllYXJzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDYgeWVhcnMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTMzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTM2Ij4gPiA2PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MzMiIGxvY2F0b3I9IjMwOTozLTMwOTo0NSIgeHNpOnR5cGU9IkdyZWF0ZXIiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUzNyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTM4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTM1IiBsb2NhdG9yPSIzMDk6My0zMDk6NDEiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTM2IiBsb2NhdG9yPSIzMDk6NDUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NDEiIGxvY2F0b3I9IjMxNzoxLTMxOTo3MyIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjU0MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyA0IHdlZWtzCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU0MiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQ1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gd2Vla3MgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTUxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ob3coKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTU3Ij4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTQyIiBsb2NhdG9yPSIzMTg6My0zMTk6NzMiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NDUiIGxvY2F0b3I9IjMxODozLTMxODozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0NCIgbG9jYXRvcj0iMzE4OjMtMzE4OjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQzIiBsb2NhdG9yPSIzMTg6My0zMTg6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ2IiBsb2NhdG9yPSIzMTk6OS0zMTk6NzMiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NTgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0NyIgbG9jYXRvcj0iMzE5OjktMzE5OjY5IiBwcmVjaXNpb249IldlZWsiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1NSIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1NiIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NTMiIHhzaTp0eXBlPSJUb0RhdGVUaW1lIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NTQiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NDgiIGxvY2F0b3I9IjMxOTozNS0zMTk6NTkiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU1MSIgbG9jYXRvcj0iMzE5OjY1LTMxOTo2OSIgeHNpOnR5cGU9Ik5vdyIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU1NyIgbG9jYXRvcj0iMzE5OjczIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NjIiIGxvY2F0b3I9IjMyNjoxLTMyNzo2NyIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90Oykg4omlIDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTYyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNCB3ZWVrcwpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSwgb24tdGltZSBzdGFydCAoYXQg4omkIDEyIG1vbnRocyBvZiBhZ2UpCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1NjMiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU2NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU2NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTYzIiBsb2NhdG9yPSIzMjc6My0zMjc6NjciIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NjQiIGxvY2F0b3I9IjMyNzo2LTMyNzo2NyIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NjciIGxvY2F0b3I9IjMzNToxLTMzNzo3NCIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDYgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjU2NyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgNiBtb250aHMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU2OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTcxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Tm93KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU4MyI+ICZsdDsgNjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU2OCIgbG9jYXRvcj0iMzM2OjMtMzM3Ojc0IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTcxIiBsb2NhdG9yPSIzMzY6My0zMzY6MzkiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NzAiIGxvY2F0b3I9IjMzNjozLTMzNjozOSIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU2OSIgbG9jYXRvcj0iMzM2OjMtMzM2OjI3IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3MiIgbG9jYXRvcj0iMzM3OjktMzM3Ojc0IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTg0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1ODUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NzMiIGxvY2F0b3I9IjMzNzo5LTMzNzo3MCIgcHJlY2lzaW9uPSJNb250aCIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTgxIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTgyIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3OSIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU4MCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3NCIgbG9jYXRvcj0iMzM3OjM2LTMzNzo2MCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTc3IiBsb2NhdG9yPSIzMzc6NjYtMzM3OjcwIiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTgzIiBsb2NhdG9yPSIzMzc6NzQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjU4OCIgbG9jYXRvcj0iMzQ1OjEtMzQ2OjY4IiBuYW1lPSJUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIOKJpSA2IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlLCBvbi10aW1lIHN0YXJ0IChhdCDiiaQgMTIgbW9udGhzIG9mIGFnZSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UiLz4KICAgICAgICAgICAgPGE6cyByPSI1ODgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNiBtb250aHMKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUsIG9uLXRpbWUgc3RhcnQgKGF0IOKJpCAxMiBtb250aHMgb2YgYWdlKQpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU4OSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTkwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTkwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTg5IiBsb2NhdG9yPSIzNDY6My0zNDY6NjgiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTAiIGxvY2F0b3I9IjM0Njo2LTM0Njo2OCIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTkzIiBsb2NhdG9yPSIzNTM6MS0zNTU6NzMiIG5hbWU9IlRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTpzIHI9IjU5MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDEgeWVhcgpAZGVjaXNpb246IERUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1OTQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU5NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTk1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTk4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1OTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIHllYXJzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Tm93KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwOSI+ICZsdDsgMTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU5NCIgbG9jYXRvcj0iMzU0OjMtMzU1OjczIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTk3IiBsb2NhdG9yPSIzNTQ6My0zNTQ6MzkiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTYiIGxvY2F0b3I9IjM1NDozLTM1NDozOSIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU5NSIgbG9jYXRvcj0iMzU0OjMtMzU0OjI3IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU5OCIgbG9jYXRvcj0iMzU1OjktMzU1OjczIiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjEwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MTEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTkiIGxvY2F0b3I9IjM1NTo5LTM1NTo2OSIgcHJlY2lzaW9uPSJZZWFyIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MDciIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MDgiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjA1IiB4c2k6dHlwZT0iVG9EYXRlVGltZSI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjA2IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjAwIiBsb2NhdG9yPSIzNTU6MzUtMzU1OjU5IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MDMiIGxvY2F0b3I9IjM1NTo2NS0zNTU6NjkiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MDkiIGxvY2F0b3I9IjM1NTo3MyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjE0IiBsb2NhdG9yPSIzNjI6MS0zNjM6NjYiIG5hbWU9IlRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSB5ZWFyIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIHllYXIgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjE0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSB5ZWFyIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIOKJpSAxIHllYXIKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IERUUCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDEgeWVhciBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjE1Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3Q8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPig8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgRFRQIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjE1IiBsb2NhdG9yPSIzNjM6My0zNjM6NjYiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTYiIGxvY2F0b3I9IjM2Mzo2LTM2Mzo2NiIgbmFtZT0iVGhlIGxhdGVzdCBEVFAgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjYxOSIgbG9jYXRvcj0iMzcxOjEtMzczOjcyIiBuYW1lPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCAzIGNoaWxkaG9vZCBEVFAgZG9zZXMiLz4KICAgICAgICAgICAgPGE6cyByPSI2MTkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZwogdmFjY2luZXMmcXVvdDspICZsdDsgNCB3ZWVrcwpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjIwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MjMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYyMSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MjUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUZCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ob3coKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjM1Ij4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjIwIiBsb2NhdG9yPSIzNzI6My0zNzM6NzIiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjMiIGxvY2F0b3I9IjM3MjozLTM3MjozOCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYyMiIgbG9jYXRvcj0iMzcyOjMtMzcyOjM4IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjIxIiBsb2NhdG9yPSIzNzI6My0zNzI6MjYiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjQiIGxvY2F0b3I9IjM3Mzo5LTM3Mzo3MiIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYzNiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjM3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjI1IiBsb2NhdG9yPSIzNzM6OS0zNzM6NjgiIHByZWNpc2lvbj0iV2VlayIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjMzIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjM0IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYzMSIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYzMiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYyNiIgbG9jYXRvcj0iMzczOjM1LTM3Mzo1OCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjkiIGxvY2F0b3I9IjM3Mzo2NC0zNzM6NjgiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MzUiIGxvY2F0b3I9IjM3Mzo3MiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjQwIiBsb2NhdG9yPSIzODE6MS0zODI6ODYiIG5hbWU9IlRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmciLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjY0MCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nCiB2YWNjaW5lcyZxdW90OykgPiA0IHdlZWtzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2NDEiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjY0MSIgbG9jYXRvcj0iMzgyOjMtMzgyOjg2IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjQyIiBsb2NhdG9yPSIzODI6Ni0zODI6ODYiIG5hbWU9IlRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjY0NSIgbG9jYXRvcj0iMzkxOjEtMzkzOjcyIiBuYW1lPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRUUCB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IkRpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjQ1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDEgeWVhciBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyAxIHllYXIKQGRlY2lzaW9uOiBEVFAgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiAxIHllYXIgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjY0NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQ5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRkIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjUxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiB5ZWFycyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Tm93KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MSI+ICZsdDsgMTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjY0NiIgbG9jYXRvcj0iMzkyOjMtMzkzOjcyIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjQ5IiBsb2NhdG9yPSIzOTI6My0zOTI6MzgiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDgiIGxvY2F0b3I9IjM5MjozLTM5MjozOCIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY0NyIgbG9jYXRvcj0iMzkyOjMtMzkyOjI2IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjUwIiBsb2NhdG9yPSIzOTM6OS0zOTM6NzIiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NjIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY2MyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY1MSIgbG9jYXRvcj0iMzkzOjktMzkzOjY4IiBwcmVjaXNpb249IlllYXIiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY1OSIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY2MCIgbmFtZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NTciIHhzaTp0eXBlPSJUb0RhdGVUaW1lIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NTgiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NTIiIGxvY2F0b3I9IjM5MzozNS0zOTM6NTgiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU1IiBsb2NhdG9yPSIzOTM6NjQtMzkzOjY4IiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjYxIiBsb2NhdG9yPSIzOTM6NzIiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjY2NiIgbG9jYXRvcj0iNDAyOjEtNDAzOjg1IiBuYW1lPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIHllYXIgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiAxIHllYXIgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90Oykg4omlIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMiLz4KICAgICAgICAgICAgPGE6cyByPSI2NjYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSB5ZWFyIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgMSB5ZWFyCkBkZWNpc2lvbjogRFRQIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIERUUCBkb3NlcwpAZGVjaXNpb246IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDQgY2hpbGRob29kIERUUCBkb3NlcwoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gMSB5ZWFyIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2NjciPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjY3IiBsb2NhdG9yPSI0MDM6My00MDM6ODUiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NjgiIGxvY2F0b3I9IjQwMzo2LTQwMzo4NSIgbmFtZT0iVGhlIGxhdGVzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gMSB5ZWFyIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2NzEiIGxvY2F0b3I9IjQxMjoxLTQxMzozNSIgbmFtZT0iQ2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtDdXJyZW50bHkgcHJlZ25hbnQmcXVvdDsgPSBUUlVFIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEZXRlcm1pbmUgd2hldGhlciBEVFAtY29udGFpbmluZyB2YWNjaW5lcyBhcmUgbmVlZGVkIGZvciBwcmVnbmFudCB3b21lbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJEaXBodGhlcmlhIGFuZCB0ZXRhbnVzIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGluIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCA0IGNoaWxkaG9vZCBEVFAgZG9zZXMiLz4KICAgICAgICAgICAgPGE6cyByPSI2NzEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudApAcHNldWRvY29kZTogJnF1b3Q7Q3VycmVudGx5IHByZWduYW50JnF1b3Q7ID0gVFJVRQpAZGVjaXNpb246IERldGVybWluZSB3aGV0aGVyIERUUC1jb250YWluaW5nIHZhY2NpbmVzIGFyZSBuZWVkZWQgZm9yIHByZWduYW50IHdvbWVuCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgRFRQIGRvc2VzCkBkZWNpc2lvbjogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgNCBjaGlsZGhvb2QgRFRQIGRvc2VzCiovCmRlZmluZSAmcXVvdDtDbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjY3MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjcyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjczIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgY2xpZW50IGlzIHByZWduYW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjczIiBsb2NhdG9yPSI0MTM6My00MTM6MzUiIG5hbWU9IlRoZSBjbGllbnQgaXMgcHJlZ25hbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="
    }
  ]
}