WHO Immunization Implementation Guide
0.2.0 - ci-build

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

: IMMZD18SDTPDelayedLogic - JSON Representation

Draft as of 2025-07-23

Raw json | Download

{
  "resourceType" : "Library",
  "id" : "IMMZD18SDTPDelayedLogic",
  "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;\">IMMZD18SDTPDelayedLogic</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD18SDTPDelayedLogic</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-IMMZD18SDTPDelayedLogic.html\">IMMZD18SDTPDelayedLogic</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-07-23 20:56:04+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 decision support logic for the IMMZ.D18.S.DTP.Delayed or interrupted schedule table in 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-WHOCommon.html\">WHOCommon</a></li>\n                  \n                    <li><a href=\"Library-IMMZCommon.html\">IMMZCommon</a></li>\n                  \n                    <li><a href=\"Library-IMMZConcepts.html\">IMMZConcepts</a></li>\n                  \n                    <li><a href=\"Library-IMMZEncounterElements.html\">IMMZEncounterElements</a></li>\n                  \n                    <li><a href=\"Library-IMMZD2DTDTPEncounterElements.html\">IMMZD2DTDTPEncounterElements</a></li>\n                  \n                </ul>\n                \n                \n                \n                \n                \n            </td>\n        </tr>\n        \n\n        \n        <tr>\n          <th scope=\"row\"><b>Parameters: </b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n              \n                <tr><th>Today</th><th>date</th><th>0</th><th>1</th><th>In</th></tr>\n              \n                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 1 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 1 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>First DTP dose from the primary series was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Second DTP dose from the primary series was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 2 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 2 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 2 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 2 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 2 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Third DTP dose from the primary series was administered. The primary DTP series has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 3 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 3 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 3 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 3 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>DTP dose 3 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>First 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>Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Expiration</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Overdue</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Test Validation</th><th>Resource</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: IMMZD18SDTPDelayedLogic (IMMZ.D18.S.DTP.Delayed or interrupted schedule)\n * Schedule Table: Diphtheria–tetanus–pertussis (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 */\nlibrary IMMZD18SDTPDelayedLogic\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude WHOCommon called WC\n\ninclude IMMZCommon called Common\ninclude IMMZConcepts called Concepts\n\ninclude IMMZEncounterElements called IE\ninclude IMMZD2DTDTPEncounterElements called Encounter\n\nparameter Today Date default Today()\n\ncontext Patient\n\n\n/*\n@output: DTP dose 1 (delayed start)\n@description: Provision of DTP dose 1 with a delayed start\n@trigger: No DTP doses were administered and client's age is more than 1 year \nCount of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) = 0 AND Today's date − &quot;Date of birth&quot; &gt; 1 year\n@triggerDate: Date of birth\n*/\ndefine &quot;DTP dose 1 (delayed start)&quot;:\n  Encounter.&quot;No DTP primary series doses were administered&quot;\n  and Encounter.&quot;Client's age is more than 1 year&quot;\n\n/*\n@output: DTP dose 1 (delayed start) Create\n@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.\n*/\ndefine &quot;DTP dose 1 (delayed start) Create&quot;:\n  if &quot;DTP dose 1 (delayed start)&quot; \n  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '\nDue Date: ' + ToString(&quot;DTP dose 1 (delayed start) Due Date&quot;)\n  else ''\n\n/*\n@dynamicValue: DTP dose 1 (delayed start) Due Date\n@pseudocode: As soon as possible\n*/\ndefine &quot;DTP dose 1 (delayed start) Due Date&quot;:\n  if &quot;DTP dose 1 (delayed start)&quot; then Patient.birthDate + 1 year\n  else null\n\n/*\n@dynamicValue: DTP dose 1 (delayed start) Overdue\n@pseudocode: To be determined by Member States; however, there is no recommended overdue date.\n*/\ndefine &quot;DTP dose 1 (delayed start) Overdue&quot;:\n  null\n\n/*\n@dynamicValue: DTP dose 1 (delayed start) Expiration\n@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.\n*/\ndefine &quot;DTP dose 1 (delayed start) Expiration&quot;:\n  null\n  \n/*\n@complete: First DTP dose from the primary series 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*/\ndefine &quot;First DTP dose from the primary series was administered&quot;:\n  Encounter.&quot;One DTP primary series dose was administered&quot;\n\n/*\n@output: DTP dose 2 (delayed start)\n@description: Provision of DTP dose 2 with a delayed start\n@trigger: First DTP dose from the primary series was administered \nCount 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@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;\n*/\ndefine &quot;DTP dose 2 (delayed start)&quot;:\n  &quot;First DTP dose from the primary series was administered&quot; and\n  not &quot;Second DTP dose from the primary series was administered&quot;\n\n/*\n@output: DTP dose 2 (delayed start) Create\n@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.\n*/\ndefine &quot;DTP dose 2 (delayed start) Create&quot;:\n  if &quot;DTP dose 2 (delayed start)&quot; \n  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '\nDue Date: ' + ToString(&quot;DTP dose 2 (delayed start) Due Date&quot;)\n  else ''\n\n/*\n@dynamicValue: DTP dose 2 (delayed start) Due Date\n@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 4 weeks\n*/\ndefine &quot;DTP dose 2 (delayed start) Due Date&quot;:\n  if &quot;DTP dose 2 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 4 weeks\n  else null\n\n/*\n@dynamicValue: DTP dose 2 (delayed start) Overdue\n@pseudocode: To be determined by Member States; however, there is no recommended overdue date.\n*/\ndefine &quot;DTP dose 2 (delayed start) Overdue&quot;:\n  null\n\n/*\n@dynamicValue: DTP dose 2 (delayed start) Expiration\n@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.\n*/\ndefine &quot;DTP dose 2 (delayed start) Expiration&quot;:\n  null\n  \n/*\n@complete: Second DTP dose from the primary series 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;) = 2\n*/\ndefine &quot;Second DTP dose from the primary series was administered&quot;:\n  Encounter.&quot;Two DTP primary series doses were administered&quot;\n\n/*\n@output: DTP dose 3 (delayed start)\n@description: Provision of DTP dose 3 with a delayed start\n@trigger: Second DTP dose from the primary series was administered \nCount 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@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;\n*/\ndefine &quot;DTP dose 3 (delayed start)&quot;:\n  &quot;Second DTP dose from the primary series was administered&quot; and\n  not &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot;\n\n/*\n@output: DTP dose 3 (delayed start) Create\n@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.\n*/\ndefine &quot;DTP dose 3 (delayed start) Create&quot;:\n  if &quot;DTP dose 3 (delayed start)&quot; \n  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.\n\nIf tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.\n\nPregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '\nDue Date: ' + ToString(&quot;DTP dose 3 (delayed start) Due Date&quot;)\n  else ''\n\n/*\n@dynamicValue: DTP dose 3 (delayed start) Due Date\n@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 6 months\n*/\ndefine &quot;DTP dose 3 (delayed start) Due Date&quot;:\n  if &quot;DTP dose 3 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 6 months\n  else null\n\n/*\n@dynamicValue: DTP dose 3 (delayed start) Overdue\n@pseudocode: To be determined by Member States; however, there is no recommended overdue date.\n*/\ndefine &quot;DTP dose 3 (delayed start) Overdue&quot;:\n  null\n\n/*\n@dynamicValue: DTP dose 3 (delayed start) Expiration\n@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.\n*/\ndefine &quot;DTP dose 3 (delayed start) Expiration&quot;:\n  null\n  \n/*\n@complete: Third DTP dose from the primary series was administered. The primary DTP series has been completed\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*/\ndefine &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot;:\n  Encounter.&quot;Three DTP primary series doses were administered&quot;\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)\n@description: Provision of tetanus and diphtheria booster dose 1\n@trigger: The primary DTP series has been completed\n&quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;)\n@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;:\n  &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot; and\n  Encounter.&quot;No tetanus and diphtheria booster doses were administered&quot;\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create\n@create: Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create&quot;:\n  if &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; \n  then 'Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.' + '\nDue Date: ' + ToString(&quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date&quot;)\n  else ''\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date\n@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 1 year\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date&quot;:\n  if &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 1 year\n  else null\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue\n@pseudocode: To be determined by Member States; however, there is no recommended overdue date.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue&quot;:\n  null\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration\n@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration&quot;:\n  null\n  \n/*\n@complete: First 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*/\ndefine &quot;First tetanus and diphtheria booster dose was administered&quot;:\n  Encounter.&quot;One tetanus and diphtheria booster dose was administered&quot;\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)\n@description: Provision of tetanus and diphtheria booster dose 2\n@trigger: First tetanus and diphtheria booster dose was administered \nCount 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@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;)\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot;:\n  &quot;First tetanus and diphtheria booster dose was administered&quot; and\n  not &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot;\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create\n@create: Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create&quot;:\n  if &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; \n  then 'Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.' + '\nDue Date: ' + ToString(&quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date&quot;)\n  else ''\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date\n@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing  vaccines&quot;) + 1 year\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date&quot;:\n  if &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; then Encounter.&quot;Date of Latest Td Dose&quot; + 1 year\n  else null\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue\n@pseudocode: To be determined by Member States; however, there is no recommended overdue date.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue&quot;:\n  null\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration\n@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.\n*/\ndefine &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration&quot;:\n  null\n  \n/*\n@complete: Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed\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*/\ndefine &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot;:\n  Encounter.&quot;Two tetanus and diphtheria booster doses were administered&quot;\n\n/*\n@output: Pertussis-containing vaccine booster dose 1 (delayed start)\n@description: Provision of the pertussis-containing booster dose 1\n@trigger: The primary DTP series has been completed and client's age is between 1 year and 6 years\n&quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) AND 1 year ≤  Today's date − &quot;Date of birth&quot; ≤  6 years\n@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;)\n*/\ndefine &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;:\n  &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot; and\n  Encounter.&quot;Client's age is between 1 year and 6 years&quot; and\n  &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot; after day of Today and\n  not &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot;\n\n/*\n@output: Pertussis-containing vaccine booster dose 1 (delayed start) Create\n@create: A booster dose is recommended for children aged 1–6 years, preferably during the second year of life (≥ 6 months after last primary dose).\n*/\ndefine &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Create&quot;:\n  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; \n  then 'A booster dose is recommended for children aged 1–6 years, preferably during the second year of life (≥ 6 months after last primary dose).' + '\nDue Date: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Due Date&quot;) + '\nOverdue: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Overdue&quot;) + '\nExpiration: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot;)\n  else ''\n\n/*\n@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Due Date\n@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot;) + 6 months\n*/\ndefine &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Due Date&quot;:\n  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; then Encounter.&quot;Date of Latest Pertussis Dose&quot; + 6 months\n  else null\n\n/*\n@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Overdue\n@pseudocode: &quot;Date of birth&quot; + 7 years\n*/\ndefine &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Overdue&quot;:\n  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; then Patient.birthDate + 7 years\n  else null\n\n/*\n@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Expiration\n@pseudocode: &quot;Date of birth&quot; + 7 years\n*/\ndefine &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot;:\n  Patient.birthDate + 7 years\n  \n/*\n@complete: Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed\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*/\ndefine &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot;:\n  Encounter.&quot;One pertussis booster dose was administered&quot;\n\n/*\n@test: Test expected results based on example patients\n*/\ndefine &quot;Test Validation&quot;:\n  case\n    when Patient.id = '33.Agt1y' then &quot;DTP dose 1 (delayed start)&quot;\n    when Patient.id = '34.DTP1Dlt4w' then &quot;DTP dose 2 (delayed start)&quot;\n    when Patient.id = '35.DTP1Dgt4w' then &quot;DTP dose 2 (delayed start)&quot;\n    when Patient.id = '36.DTP2Dlt6m' then &quot;DTP dose 3 (delayed start)&quot;\n    when Patient.id = '37.DTP2Dgt6m' then &quot;DTP dose 3 (delayed start)&quot;\n    when Patient.id = '38.DTP3Dlt1y' then &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '39.DTP3Dgt1y' then &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '40.DTP3Td1Dlt1y' then &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '41.DTP3Td1Dgt1y' then &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '42.DTP3Td2' then &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '43.DTP3P0Abt1y6yDlt6m' then &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '44.DTP3P0Abt1y6yDgt6m' then &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '45.DTP3P0Agt6y' then not &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;\n    when Patient.id = '46.DTP3P1' then &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;\n    else 'No test case set'\n  end\n</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+xml</th></tr>\n              <tr><td><pre><code>Encoded data (176912 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/IMMZD18SDTPDelayedLogic",
  "version" : "0.2.0",
  "name" : "IMMZD18SDTPDelayedLogic",
  "title" : "IMMZD18SDTPDelayedLogic",
  "status" : "draft",
  "experimental" : false,
  "type" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/library-type",
        "code" : "logic-library"
      }
    ]
  },
  "date" : "2025-07-23T20:56:04+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "description" : "This library defines decision support logic for the IMMZ.D18.S.DTP.Delayed or interrupted schedule table in the Immunization CPG",
  "relatedArtifact" : [
    {
      "type" : "depends-on",
      "display" : "Library WC",
      "resource" : "http://smart.who.int/immunizations/Library/WHOCommon"
    },
    {
      "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 IE",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZEncounterElements"
    },
    {
      "type" : "depends-on",
      "display" : "Library Encounter",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZD2DTDTPEncounterElements"
    }
  ],
  "parameter" : [
    {
      "name" : "Today",
      "use" : "in",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Patient",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Patient"
    },
    {
      "name" : "DTP dose 1 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "DTP dose 1 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "DTP dose 1 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "DTP dose 1 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "DTP dose 1 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "First DTP dose from the primary series was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Second DTP dose from the primary series was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "DTP dose 2 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "DTP dose 2 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "DTP dose 2 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "DTP dose 2 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "DTP dose 2 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "Third DTP dose from the primary series was administered. The primary DTP series has been completed",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "DTP dose 3 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "DTP dose 3 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "DTP dose 3 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "DTP dose 3 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "DTP dose 3 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "First tetanus and diphtheria booster dose was administered",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    },
    {
      "name" : "Pertussis-containing vaccine booster dose 1 (delayed start) Expiration",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Pertussis-containing vaccine booster dose 1 (delayed start)",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Pertussis-containing vaccine booster dose 1 (delayed start) Due Date",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Pertussis-containing vaccine booster dose 1 (delayed start) Overdue",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Pertussis-containing vaccine booster dose 1 (delayed start) Create",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Test Validation",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "Ci8qCiAqIExpYnJhcnk6IElNTVpEMThTRFRQRGVsYXllZExvZ2ljIChJTU1aLkQxOC5TLkRUUC5EZWxheWVkIG9yIGludGVycnVwdGVkIHNjaGVkdWxlKQogKiBTY2hlZHVsZSBUYWJsZTogRGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgKERUUCkgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiAqLwpsaWJyYXJ5IElNTVpEMThTRFRQRGVsYXllZExvZ2ljCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db21tb24gY2FsbGVkIFdDCgppbmNsdWRlIElNTVpDb21tb24gY2FsbGVkIENvbW1vbgppbmNsdWRlIElNTVpDb25jZXB0cyBjYWxsZWQgQ29uY2VwdHMKCmluY2x1ZGUgSU1NWkVuY291bnRlckVsZW1lbnRzIGNhbGxlZCBJRQppbmNsdWRlIElNTVpEMkRURFRQRW5jb3VudGVyRWxlbWVudHMgY2FsbGVkIEVuY291bnRlcgoKcGFyYW1ldGVyIFRvZGF5IERhdGUgZGVmYXVsdCBUb2RheSgpCgpjb250ZXh0IFBhdGllbnQKCgovKgpAb3V0cHV0OiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiBEVFAgZG9zZSAxIHdpdGggYSBkZWxheWVkIHN0YXJ0CkB0cmlnZ2VyOiBObyBEVFAgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQgYW5kIGNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyIApDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikgPSAwIEFORCBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA+IDEgeWVhcgpAdHJpZ2dlckRhdGU6IERhdGUgb2YgYmlydGgKKi8KZGVmaW5lICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSI6CiAgRW5jb3VudGVyLiJObyBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiCiAgYW5kIEVuY291bnRlci4iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIiCgovKgpAb3V0cHV0OiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuCiovCmRlZmluZSAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIjoKICBpZiAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIAogIHRoZW4gJ0ZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLicgKyAnCkR1ZSBEYXRlOiAnICsgVG9TdHJpbmcoIkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIikKICBlbHNlICcnCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogQXMgc29vbiBhcyBwb3NzaWJsZQoqLwpkZWZpbmUgIkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHRoZW4gUGF0aWVudC5iaXJ0aERhdGUgKyAxIHllYXIKICBlbHNlIG51bGwKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgIkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiOgogIG51bGwKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBudWxsCiAgCi8qCkBjb21wbGV0ZTogRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAxCiovCmRlZmluZSAiRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCI6CiAgRW5jb3VudGVyLiJPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCi8qCkBvdXRwdXQ6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIERUUCBkb3NlIDIgd2l0aCBhIGRlbGF5ZWQgc3RhcnQKQHRyaWdnZXI6IEZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQgCkNvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAdHJpZ2dlckRhdGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIgoqLwpkZWZpbmUgIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIjoKICAiRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIgYW5kCiAgbm90ICJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIKCi8qCkBvdXRwdXQ6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiOgogIGlmICJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgCiAgdGhlbiAnRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKQogIGVsc2UgJycKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpICsgNCB3ZWVrcwoqLwpkZWZpbmUgIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgKyA0IHdlZWtzCiAgZWxzZSBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4KKi8KZGVmaW5lICJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuCiovCmRlZmluZSAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiI6CiAgbnVsbAogIAovKgpAY29tcGxldGU6IFNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKKi8KZGVmaW5lICJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCI6CiAgRW5jb3VudGVyLiJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIgoKLyoKQG91dHB1dDogRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgRFRQIGRvc2UgMyB3aXRoIGEgZGVsYXllZCBzdGFydApAdHJpZ2dlcjogU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQgCkNvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMgpAdHJpZ2dlckRhdGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIgoqLwpkZWZpbmUgIkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIjoKICAiU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiIGFuZAogIG5vdCAiVGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQiCgovKgpAb3V0cHV0OiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuCiovCmRlZmluZSAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIjoKICBpZiAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIAogIHRoZW4gJ0ZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLicgKyAnCkR1ZSBEYXRlOiAnICsgVG9TdHJpbmcoIkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIikKICBlbHNlICcnCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSArIDYgbW9udGhzCiovCmRlZmluZSAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiOgogIGlmICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBFbmNvdW50ZXIuIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiArIDYgbW9udGhzCiAgZWxzZSBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4KKi8KZGVmaW5lICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuCiovCmRlZmluZSAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiI6CiAgbnVsbAogIAovKgpAY29tcGxldGU6IFRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKKi8KZGVmaW5lICJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCI6CiAgRW5jb3VudGVyLiJUaHJlZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiCgovKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMQpAdHJpZ2dlcjogVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQKIkNvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMiID0gVFJVRSAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKQpAdHJpZ2dlckRhdGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSI6CiAgIlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIiBhbmQKICBFbmNvdW50ZXIuIk5vIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiOgogIGlmICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIAogIHRoZW4gJ1R3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4nICsgJwpEdWUgRGF0ZTogJyArIFRvU3RyaW5nKCJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKQogIGVsc2UgJycKCi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSArIDEgeWVhcgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBFbmNvdW50ZXIuIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiArIDEgeWVhcgogIGVsc2UgbnVsbAoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBudWxsCiAgCi8qCkBjb21wbGV0ZTogRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKKi8KZGVmaW5lICJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICBFbmNvdW50ZXIuIk9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDIKQHRyaWdnZXI6IEZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgCkNvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIikKKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiOgogICJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBhbmQKICBub3QgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiCgovKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IFR3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4KKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIjoKICBpZiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiAKICB0aGVuICdUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIikKICBlbHNlICcnCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyAgdmFjY2luZXMiKSArIDEgeWVhcgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBFbmNvdW50ZXIuIkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiICsgMSB5ZWFyCiAgZWxzZSBudWxsCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiOgogIG51bGwKCi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iOgogIG51bGwKICAKLyoKQGNvbXBsZXRlOiBTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMgoqLwpkZWZpbmUgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiOgogIEVuY291bnRlci4iVHdvIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCi8qCkBvdXRwdXQ6IFBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRoZSBwZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2UgMQpAdHJpZ2dlcjogVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQgYW5kIGNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycwoiQ29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyIgPSBUUlVFICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpIEFORCAxIHllYXIg4omkICBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaQgIDYgeWVhcnMKQHRyaWdnZXJEYXRlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpCiovCmRlZmluZSAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiOgogICJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgYW5kCiAgRW5jb3VudGVyLiJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMiIGFuZAogICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBhZnRlciBkYXkgb2YgVG9kYXkgYW5kCiAgbm90ICJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiCgovKgpAb3V0cHV0OiBQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogQSBib29zdGVyIGRvc2UgaXMgcmVjb21tZW5kZWQgZm9yIGNoaWxkcmVuIGFnZWQgMeKAkzYgeWVhcnMsIHByZWZlcmFibHkgZHVyaW5nIHRoZSBzZWNvbmQgeWVhciBvZiBsaWZlICjiiaUgNiBtb250aHMgYWZ0ZXIgbGFzdCBwcmltYXJ5IGRvc2UpLgoqLwpkZWZpbmUgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSI6CiAgaWYgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiAKICB0aGVuICdBIGJvb3N0ZXIgZG9zZSBpcyByZWNvbW1lbmRlZCBmb3IgY2hpbGRyZW4gYWdlZCAx4oCTNiB5ZWFycywgcHJlZmVyYWJseSBkdXJpbmcgdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgKOKJpSA2IG1vbnRocyBhZnRlciBsYXN0IHByaW1hcnkgZG9zZSkuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKSArICcKT3ZlcmR1ZTogJyArIFRvU3RyaW5nKCJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIikgKyAnCkV4cGlyYXRpb246ICcgKyBUb1N0cmluZygiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIpCiAgZWxzZSAnJwoKLyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzIikgKyA2IG1vbnRocwoqLwpkZWZpbmUgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBQZXJ0dXNzaXMgRG9zZSIgKyA2IG1vbnRocwogIGVsc2UgbnVsbAoKLyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogIkRhdGUgb2YgYmlydGgiICsgNyB5ZWFycwoqLwpkZWZpbmUgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiOgogIGlmICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBQYXRpZW50LmJpcnRoRGF0ZSArIDcgeWVhcnMKICBlbHNlIG51bGwKCi8qCkBkeW5hbWljVmFsdWU6IFBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6ICJEYXRlIG9mIGJpcnRoIiArIDcgeWVhcnMKKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBQYXRpZW50LmJpcnRoRGF0ZSArIDcgeWVhcnMKICAKLyoKQGNvbXBsZXRlOiBQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiOgogIEVuY291bnRlci4iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCi8qCkB0ZXN0OiBUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cwoqLwpkZWZpbmUgIlRlc3QgVmFsaWRhdGlvbiI6CiAgY2FzZQogICAgd2hlbiBQYXRpZW50LmlkID0gJzMzLkFndDF5JyB0aGVuICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICAgIHdoZW4gUGF0aWVudC5pZCA9ICczNC5EVFAxRGx0NHcnIHRoZW4gIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzM1LkRUUDFEZ3Q0dycgdGhlbiAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnMzYuRFRQMkRsdDZtJyB0aGVuICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIKICAgIHdoZW4gUGF0aWVudC5pZCA9ICczNy5EVFAyRGd0Nm0nIHRoZW4gIkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzM4LkRUUDNEbHQxeScgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzM5LkRUUDNEZ3QxeScgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzQwLkRUUDNUZDFEbHQxeScgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzQxLkRUUDNUZDFEZ3QxeScgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJzQyLkRUUDNUZDInIHRoZW4gIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIGFuZCAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnNDMuRFRQM1AwQWJ0MXk2eURsdDZtJyB0aGVuICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgYW5kICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnNDQuRFRQM1AwQWJ0MXk2eURndDZtJyB0aGVuICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgYW5kICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnNDUuRFRQM1AwQWd0NnknIHRoZW4gbm90ICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgYW5kICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnNDYuRFRQM1AxJyB0aGVuICJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIGFuZCAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgZWxzZSAnTm8gdGVzdCBjYXNlIHNldCcKICBlbmQK"
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNTc0Ij4KICAgICAgICAgPGE6cz4vKgogKiBMaWJyYXJ5OiBJTU1aRDE4U0RUUERlbGF5ZWRMb2dpYyAoSU1NWi5EMTguUy5EVFAuRGVsYXllZCBvciBpbnRlcnJ1cHRlZCBzY2hlZHVsZSkKICogU2NoZWR1bGUgVGFibGU6IERpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIChEVFApIHZhY2NpbmF0aW9uIHNjaGVkdWxlIGZvciB0aGUgZm9sbG93aW5nIGdyb3VwczogY2hpbGRyZW4g4omlIDEgeWVhciBvZiBhZ2Ugd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24sIGFkb2xlc2NlbnRzIGFuZCBhZHVsdHMgd2l0aCBubyBwcmV2aW91cyBpbW11bml6YXRpb24gKGluY2x1ZGluZyBwcmVnbmFudCB3b21lbikgYW5kIHN1cHBsZW1lbnRhcnkgaW1tdW5pemF0aW9uIGFjdGl2aXRpZXMgaW4gaGlnaC1yaXNrIGFyZWFzLCBmb3Igd29tZW4gb2YgcmVwcm9kdWN0aXZlIGFnZQogKi8KbGlicmFyeSBJTU1aRDE4U0RUUERlbGF5ZWRMb2dpYzwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQxOFNEVFBEZWxheWVkTG9naWMiIHN5c3RlbT0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucyIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwNiIgbG9jYXRvcj0iODoxLTg6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwNiI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwNyIgbG9jYXRvcj0iOToxLTk6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA3Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSIxMToxLTExOjI3IiBsb2NhbElkZW50aWZpZXI9IldDIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0NvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9Db21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBXQzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMDkiIGxvY2F0b3I9IjEzOjEtMTM6MzIiIGxvY2FsSWRlbnRpZmllcj0iQ29tbW9uIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDkiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIENvbW1vbjwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjE0OjEtMTQ6MzYiIGxvY2FsSWRlbnRpZmllcj0iQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkNvbmNlcHRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb25jZXB0czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIENvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMSIgbG9jYXRvcj0iMTY6MS0xNjozOSIgbG9jYWxJZGVudGlmaWVyPSJJRSIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aRW5jb3VudGVyRWxlbWVudHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTEiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkVuY291bnRlckVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgSUU8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEyIiBsb2NhdG9yPSIxNzoxLTE3OjUzIiBsb2NhbElkZW50aWZpZXI9IkVuY291bnRlciIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aRDJEVERUUEVuY291bnRlckVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpEMkRURFRQRW5jb3VudGVyRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBFbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvaW5jbHVkZXM+CiAgIDxwYXJhbWV0ZXJzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMyIgbG9jYXRvcj0iMTk6MS0xOTozNiIgbmFtZT0iVG9kYXkiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTMiPgogICAgICAgICAgICAgICA8YTpzPnBhcmFtZXRlciBUb2RheSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMTciPgogICAgICAgICAgICAgICAgICA8YTpzPkRhdGU8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGRlZmF1bHQgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheSgpPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZGVmYXVsdCBsb2NhbElkPSIyMTYiIGxvY2F0b3I9IjE5OjMwLTE5OjM2IiB4c2k6dHlwZT0iVG9kYXkiLz4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMjE3IiBsb2NhdG9yPSIxOToxNy0xOToyMCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgIDwvZGVmPgogICA8L3BhcmFtZXRlcnM+CiAgIDxjb250ZXh0cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjEiIGxvY2F0b3I9IjIxOjEtMjE6MTUiIG5hbWU9IlBhdGllbnQiLz4KICAgPC9jb250ZXh0cz4KICAgPHN0YXRlbWVudHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE5IiBsb2NhdG9yPSIyMToxLTIxOjE1IiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjIwIiB4c2k6dHlwZT0iU2luZ2xldG9uRnJvbSI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iMjE6MS0yMToxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMyIgbG9jYXRvcj0iMzE6MS0zMzo1MCIgbmFtZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlc2NyaXB0aW9uIiB2YWx1ZT0iUHJvdmlzaW9uIG9mIERUUCBkb3NlIDEgd2l0aCBhIGRlbGF5ZWQgc3RhcnQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspID0gMCBBTkQgVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ID4gMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlckRhdGUiIHZhbHVlPSJEYXRlIG9mIGJpcnRoIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjIzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiBEVFAgZG9zZSAxIHdpdGggYSBkZWxheWVkIHN0YXJ0CkB0cmlnZ2VyOiBObyBEVFAgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQgYW5kIGNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyIApDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSA9IDAgQU5EIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+IDEgeWVhcgpAdHJpZ2dlckRhdGU6IERhdGUgb2YgYmlydGgKKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyNCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjI2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMjUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtObyBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyNyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyNCIgbG9jYXRvcj0iMzI6My0zMzo1MCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIyNiIgbG9jYXRvcj0iMzI6My0zMjo1OSIgbmFtZT0iTm8gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjgiIGxvY2F0b3I9IjMzOjctMzM6NTAiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI0MSIgbG9jYXRvcj0iNTc6MS01OToxMSIgbmFtZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJBcyBzb29uIGFzIHBvc3NpYmxlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogQXMgc29vbiBhcyBwb3NzaWJsZQoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjQyIj4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+YmlydGhEYXRlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjEgeWVhcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUxIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0MiIgbG9jYXRvcj0iNTg6My01OToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIyNDMiIGxvY2F0b3I9IjU4OjYtNTg6MzMiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIyNDQiIGxvY2F0b3I9IjU4OjQwLTU4OjY1IiB4c2k6dHlwZT0iQWRkIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNDkiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI1MCIgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDgiIG5hbWU9IlRvRGF0ZSIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDYiIGxvY2F0b3I9IjU4OjQwLTU4OjU2IiBwYXRoPSJiaXJ0aERhdGUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjQ1IiBsb2NhdG9yPSI1ODo0MC01ODo0NiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NyIgbG9jYXRvcj0iNTg6NjAtNTg6NjUiIHZhbHVlPSIxIiB1bml0PSJ5ZWFyIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIyNTIiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTEiIGxvY2F0b3I9IjU5OjgtNTk6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzAiIGxvY2F0b3I9IjQzOjEtNTE6OSIgbmFtZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTsmI3hhO0lmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uJiN4YTsmI3hhO1ByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLiIvPgogICAgICAgICAgICA8YTpzIHI9IjIzMCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gCiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMzEiIGxvY2F0b3I9IjQ0OjMtNTE6OSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIyMzIiIGxvY2F0b3I9IjQ0OjYtNDQ6MzMiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIyNjEiIGxvY2F0b3I9IjQ1OjgtNTA6NjEiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzOSIgbG9jYXRvcj0iNDU6OC00OToxODIiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzNSIgbG9jYXRvcj0iNDU6OC00NTo2MDMiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4mI3hhOyYjeGE7SWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4mI3hhOyYjeGE7UHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzYiIGxvY2F0b3I9IjQ5OjE3MC00OToxODIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0R1ZSBEYXRlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU3IiBsb2NhdG9yPSI1MDoxNS01MDo2MSIgeHNpOnR5cGU9IlRvU3RyaW5nIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNTgiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTMiIGxvY2F0b3I9IjUwOjI0LTUwOjYwIiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjI2MiIgbG9jYXRvcj0iNTE6OC01MTo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NCIgbG9jYXRvcj0iNjU6MS02Njo2IiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4iLz4KICAgICAgICAgICAgPGE6cyByPSIyNjQiPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NSI+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlJnF1b3Q7OgogIG51bGw8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY1IiBsb2NhdG9yPSI2NjozLTY2OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NyIgbG9jYXRvcj0iNzI6MS03Mzo2IiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjY3Ij4KICAgICAgICAgICAgICAgPGE6cyByPSIyNjgiPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24mcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNjgiIGxvY2F0b3I9IjczOjMtNzM6NiIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjcwIiBsb2NhdG9yPSI3OToxLTgwOjU4IiBuYW1lPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjcwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IEZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEKKi8KZGVmaW5lICZxdW90O0ZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjcyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjcyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI3MiIgbG9jYXRvcj0iODA6My04MDo1OCIgbmFtZT0iT25lIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI3OSIgbG9jYXRvcj0iMTM3OjEtMTM4OjYwIiBuYW1lPSJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6cyByPSIyNzkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBjb21wbGV0ZTogU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIKKi8KZGVmaW5lICZxdW90O1NlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4MSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VHdvIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4MSIgbG9jYXRvcj0iMTM4OjMtMTM4OjYwIiBuYW1lPSJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNzQiIGxvY2F0b3I9Ijg5OjEtOTE6NjQiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiBEVFAgZG9zZSAyIHdpdGggYSBkZWxheWVkIHN0YXJ0Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlckRhdGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyIvPgogICAgICAgICAgICA8YTpzIHI9IjI3NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgRFRQIGRvc2UgMiB3aXRoIGEgZGVsYXllZCBzdGFydApAdHJpZ2dlcjogRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCAKQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0ZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZAogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7U2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjc1IiBsb2NhdG9yPSI5MDozLTkxOjY0IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc2IiBsb2NhdG9yPSI5MDozLTkwOjU5IiBuYW1lPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzciIGxvY2F0b3I9IjkxOjMtOTE6NjQiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODIiIGxvY2F0b3I9IjkxOjctOTE6NjQiIG5hbWU9IlNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjk1IiBsb2NhdG9yPSIxMTU6MS0xMTc6MTEiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI5NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA0IHdlZWtzCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyOTYiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjQgd2Vla3M8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyOTYiIGxvY2F0b3I9IjExNjozLTExNzoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIyOTciIGxvY2F0b3I9IjExNjo2LTExNjozMyIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjI5OCIgbG9jYXRvcj0iMTE2OjQwLTExNjo4NCIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzAyIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMDMiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzAwIiBsb2NhdG9yPSIxMTY6NDAtMTE2Ojc0IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzAxIiBsb2NhdG9yPSIxMTY6NzgtMTE2Ojg0IiB2YWx1ZT0iNCIgdW5pdD0id2Vla3MiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjMwNSIgYXNUeXBlPSJ0OkRhdGUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNCIgbG9jYXRvcj0iMTE3OjgtMTE3OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSIxMDE6MS0xMDk6OSIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTsmI3hhO0lmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uJiN4YTsmI3hhO1ByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLiIvPgogICAgICAgICAgICA8YTpzIHI9IjI4NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4NSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gCiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyODUiIGxvY2F0b3I9IjEwMjozLTEwOTo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjI4NiIgbG9jYXRvcj0iMTAyOjYtMTAyOjMzIiBuYW1lPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMzE0IiBsb2NhdG9yPSIxMDM6OC0xMDg6NjEiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5MyIgbG9jYXRvcj0iMTAzOjgtMTA3OjE4MiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg5IiBsb2NhdG9yPSIxMDM6OC0xMDM6NjAzIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTsmI3hhO0lmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uJiN4YTsmI3hhO1ByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjkwIiBsb2NhdG9yPSIxMDc6MTcwLTEwNzoxODIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0R1ZSBEYXRlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzEwIiBsb2NhdG9yPSIxMDg6MTUtMTA4OjYxIiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxMSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNiIgbG9jYXRvcj0iMTA4OjI0LTEwODo2MCIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIzMTUiIGxvY2F0b3I9IjEwOTo4LTEwOTo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMxNyIgbG9jYXRvcj0iMTIzOjEtMTI0OjYiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLiIvPgogICAgICAgICAgICA8YTpzIHI9IjMxNyI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzE4Ij4vKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTgiIGxvY2F0b3I9IjEyNDozLTEyNDo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMjAiIGxvY2F0b3I9IjEzMDoxLTEzMTo2IiBuYW1lPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzIwIj4KICAgICAgICAgICAgICAgPGE6cyByPSIzMjEiPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24mcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMjEiIGxvY2F0b3I9IjEzMTozLTEzMTo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMjgiIGxvY2F0b3I9IjE5NToxLTE5Njo2MiIgbmFtZT0iVGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb21wbGV0ZSIgdmFsdWU9IlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzI4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IFRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAzCiovCmRlZmluZSAmcXVvdDtUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMzAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzMCIgbG9jYXRvcj0iMTk2OjMtMTk2OjYyIiBuYW1lPSJUaHJlZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMyMyIgbG9jYXRvcj0iMTQ3OjEtMTQ5OjEwNiIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlc2NyaXB0aW9uIiB2YWx1ZT0iUHJvdmlzaW9uIG9mIERUUCBkb3NlIDMgd2l0aCBhIGRlbGF5ZWQgc3RhcnQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMzIzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiBEVFAgZG9zZSAzIHdpdGggYSBkZWxheWVkIHN0YXJ0CkB0cmlnZ2VyOiBTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCAKQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMgpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzI0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1NlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMyNCIgbG9jYXRvcj0iMTQ4OjMtMTQ5OjEwNiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNSIgbG9jYXRvcj0iMTQ4OjMtMTQ4OjYwIiBuYW1lPSJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI2IiBsb2NhdG9yPSIxNDk6My0xNDk6MTA2IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMxIiBsb2NhdG9yPSIxNDk6Ny0xNDk6MTA2IiBuYW1lPSJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0NCIgbG9jYXRvcj0iMTczOjEtMTc1OjExIiBuYW1lPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSArIDYgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQ0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSArIDYgbW9udGhzCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDUiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjYgbW9udGhzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTMiPgogIGVsc2UgbnVsbDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQ1IiBsb2NhdG9yPSIxNzQ6My0xNzU6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMzQ2IiBsb2NhdG9yPSIxNzQ6Ni0xNzQ6MzMiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIzNDciIGxvY2F0b3I9IjE3NDo0MC0xNzQ6ODUiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1MSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzUyIiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0OSIgbG9jYXRvcj0iMTc0OjQwLTE3NDo3NCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1MCIgbG9jYXRvcj0iMTc0Ojc4LTE3NDo4NSIgdmFsdWU9IjYiIHVuaXQ9Im1vbnRocyIgeHNpOnR5cGU9IlF1YW50aXR5Ii8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMzU0IiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzUzIiBsb2NhdG9yPSIxNzU6OC0xNzU6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMzMiIGxvY2F0b3I9IjE1OToxLTE2Nzo5IiBuYW1lPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjcmVhdGUiIHZhbHVlPSJGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4mI3hhOyYjeGE7SWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4mI3hhOyYjeGE7UHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzMzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgoKUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzM0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiAKICB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpEdWUgRGF0ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVsc2UgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzNCIgbG9jYXRvcj0iMTYwOjMtMTY3OjkiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMzM1IiBsb2NhdG9yPSIxNjA6Ni0xNjA6MzMiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIzNjMiIGxvY2F0b3I9IjE2MTo4LTE2Njo2MSIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQyIiBsb2NhdG9yPSIxNjE6OC0xNjU6MTgyIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzgiIGxvY2F0b3I9IjE2MTo4LTE2MTo2MDMiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4mI3hhOyYjeGE7SWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4mI3hhOyYjeGE7UHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzkiIGxvY2F0b3I9IjE2NToxNzAtMTY1OjE4MiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTkiIGxvY2F0b3I9IjE2NjoxNS0xNjY6NjEiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzYwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU1IiBsb2NhdG9yPSIxNjY6MjQtMTY2OjYwIiBuYW1lPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjM2NCIgbG9jYXRvcj0iMTY3OjgtMTY3OjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzY2IiBsb2NhdG9yPSIxODE6MS0xODI6NiIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzY2Ij4KICAgICAgICAgICAgICAgPGE6cyByPSIzNjciPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM2NyIgbG9jYXRvcj0iMTgyOjMtMTgyOjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM2OSIgbG9jYXRvcj0iMTg4OjEtMTg5OjYiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSIzNjkiPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3MCI+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM3MCIgbG9jYXRvcj0iMTg5OjMtMTg5OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3MiIgbG9jYXRvcj0iMjA1OjEtMjA3OjcxIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IiZxdW90O0NvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMmcXVvdDsgPSBUUlVFICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMzcyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMQpAdHJpZ2dlcjogVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQKJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyA9IFRSVUUgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KQpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kCiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzczIiBsb2NhdG9yPSIyMDY6My0yMDc6NzEiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzQiIGxvY2F0b3I9IjIwNjozLTIwNjoxMDIiIG5hbWU9IlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzYiIGxvY2F0b3I9IjIwNzozLTIwNzo3MSIgbmFtZT0iTm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM4OSIgbG9jYXRvcj0iMjIzOjEtMjI1OjExIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzg5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyAxIHllYXIKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzOTAiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4xIHllYXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5OCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzOTAiIGxvY2F0b3I9IjIyNDozLTIyNToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIzOTEiIGxvY2F0b3I9IjIyNDo2LTIyNDo3OSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIzOTIiIGxvY2F0b3I9IjIyNDo4Ni0yMjQ6MTI5IiB4c2k6dHlwZT0iQWRkIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzOTYiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5NyIgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTQiIGxvY2F0b3I9IjIyNDo4Ni0yMjQ6MTIwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk1IiBsb2NhdG9yPSIyMjQ6MTI0LTIyNDoxMjkiIHZhbHVlPSIxIiB1bml0PSJ5ZWFyIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIzOTkiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTgiIGxvY2F0b3I9IjIyNTo4LTIyNToxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3OCIgbG9jYXRvcj0iMjEzOjEtMjE3OjkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjM3OCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3OSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IAogIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDA4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1R3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpEdWUgRGF0ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDA0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNzkiIGxvY2F0b3I9IjIxNDozLTIxNzo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjM4MCIgbG9jYXRvcj0iMjE0OjYtMjE0Ojc5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjQwOCIgbG9jYXRvcj0iMjE1OjgtMjE2OjEwNyIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzg3IiBsb2NhdG9yPSIyMTU6OC0yMTU6MjMwIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODMiIGxvY2F0b3I9IjIxNTo4LTIxNToyMTQiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODQiIGxvY2F0b3I9IjIxNToyMTgtMjE1OjIzMCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDQiIGxvY2F0b3I9IjIxNjoxNS0yMTY6MTA3IiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwNSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwMCIgbG9jYXRvcj0iMjE2OjI0LTIxNjoxMDYiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjQwOSIgbG9jYXRvcj0iMjE3OjgtMjE3OjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDExIiBsb2NhdG9yPSIyMzE6MS0yMzI6NiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4iLz4KICAgICAgICAgICAgPGE6cyByPSI0MTEiPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxMiI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MTIiIGxvY2F0b3I9IjIzMjozLTIzMjo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MTQiIGxvY2F0b3I9IjIzODoxLTIzOTo2IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSI0MTQiPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxNSI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uJnF1b3Q7OgogIG51bGw8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDE1IiBsb2NhdG9yPSIyMzk6My0yMzk6NiIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDE3IiBsb2NhdG9yPSIyNDU6MS0yNDY6NzAiIG5hbWU9IkZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb21wbGV0ZSIgdmFsdWU9IkZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTpzIHI9IjQxNyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGNvbXBsZXRlOiBGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEKKi8KZGVmaW5lICZxdW90O0ZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDE5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDE5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxOSIgbG9jYXRvcj0iMjQ2OjMtMjQ2OjcwIiBuYW1lPSJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDI2IiBsb2NhdG9yPSIyOTU6MS0yOTY6NzIiIG5hbWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb21wbGV0ZSIgdmFsdWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMiIvPgogICAgICAgICAgICA8YTpzIHI9IjQyNiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGNvbXBsZXRlOiBTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDIKKi8KZGVmaW5lICZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDI4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDI4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUd28gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDI4IiBsb2NhdG9yPSIyOTY6My0yOTY6NzIiIG5hbWU9IlR3byB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyMSIgbG9jYXRvcj0iMjU1OjEtMjU3OjEzMiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVzY3JpcHRpb24iIHZhbHVlPSJQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXIiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlckRhdGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDIxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMgpAdHJpZ2dlcjogRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCAKQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MjIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Rmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kCiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDI0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQyMiIgbG9jYXRvcj0iMjU2OjMtMjU3OjEzMiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyMyIgbG9jYXRvcj0iMjU2OjMtMjU2OjYyIiBuYW1lPSJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjQiIGxvY2F0b3I9IjI1NzozLTI1NzoxMzIiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjkiIGxvY2F0b3I9IjI1Nzo3LTI1NzoxMzIiIG5hbWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NDIiIGxvY2F0b3I9IjI3MzoxLTI3NToxMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyAgdmFjY2luZXMmcXVvdDspICsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDQyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgIHZhY2NpbmVzJnF1b3Q7KSArIDEgeWVhcgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ0MyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRkIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+MSB5ZWFyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTEiPgogIGVsc2UgbnVsbDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDQzIiBsb2NhdG9yPSIyNzQ6My0yNzU6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iNDQ0IiBsb2NhdG9yPSIyNzQ6Ni0yNzQ6NzkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNDQ1IiBsb2NhdG9yPSIyNzQ6ODYtMjc0OjEyOCIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDQ5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NTAiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ3IiBsb2NhdG9yPSIyNzQ6ODYtMjc0OjExOSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ4IiBsb2NhdG9yPSIyNzQ6MTIzLTI3NDoxMjgiIHZhbHVlPSIxIiB1bml0PSJ5ZWFyIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI0NTIiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTEiIGxvY2F0b3I9IjI3NTo4LTI3NToxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQzMSIgbG9jYXRvcj0iMjYzOjEtMjY3OjkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQzMSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDMzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IAogIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDYxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1R3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpEdWUgRGF0ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MzIiIGxvY2F0b3I9IjI2NDozLTI2Nzo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjQzMyIgbG9jYXRvcj0iMjY0OjYtMjY0Ojc5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjQ2MSIgbG9jYXRvcj0iMjY1OjgtMjY2OjEwNyIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQwIiBsb2NhdG9yPSIyNjU6OC0yNjU6MjMwIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzYiIGxvY2F0b3I9IjI2NTo4LTI2NToyMTQiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzciIGxvY2F0b3I9IjI2NToyMTgtMjY1OjIzMCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTciIGxvY2F0b3I9IjI2NjoxNS0yNjY6MTA3IiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ1OCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1MyIgbG9jYXRvcj0iMjY2OjI0LTI2NjoxMDYiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjQ2MiIgbG9jYXRvcj0iMjY3OjgtMjY3OjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDY0IiBsb2NhdG9yPSIyODE6MS0yODI6NiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4iLz4KICAgICAgICAgICAgPGE6cyByPSI0NjQiPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NjUiIGxvY2F0b3I9IjI4MjozLTI4Mjo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NjciIGxvY2F0b3I9IjI4ODoxLTI4OTo2IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSI0NjciPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ2OCI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uJnF1b3Q7OgogIG51bGw8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDY4IiBsb2NhdG9yPSIyODk6My0yODk6NiIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDc4IiBsb2NhdG9yPSIzNDM6MS0zNDQ6MjkiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgKyA3IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDc4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICsgNyB5ZWFycwoqLwpkZWZpbmUgJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NzkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmJpcnRoRGF0ZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz43IHllYXJzPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDc5IiBsb2NhdG9yPSIzNDQ6My0zNDQ6MjkiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ4NCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDg1IiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4MyIgbmFtZT0iVG9EYXRlIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4MSIgbG9jYXRvcj0iMzQ0OjMtMzQ0OjE5IiBwYXRoPSJiaXJ0aERhdGUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNDgwIiBsb2NhdG9yPSIzNDQ6My0zNDQ6OSIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4MiIgbG9jYXRvcj0iMzQ0OjIzLTM0NDoyOSIgdmFsdWU9IjciIHVuaXQ9InllYXJzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0OTMiIGxvY2F0b3I9IjM1MDoxLTM1MTo1NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFBlcnR1c3NpcyBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDkzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IFBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEKKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0OTUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O09uZSBwZXJ0dXNzaXMgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0OTUiIGxvY2F0b3I9IjM1MTozLTM1MTo1NyIgbmFtZT0iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDcwIiBsb2NhdG9yPSIzMDU6MS0zMDk6MTEwIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVzY3JpcHRpb24iIHZhbHVlPSJQcm92aXNpb24gb2YgdGhlIHBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IiZxdW90O0NvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMmcXVvdDsgPSBUUlVFICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgQU5EIDEgeWVhciDiiaQgIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgIDYgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ3MCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGhlIHBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSAxCkB0cmlnZ2VyOiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCBhbmQgY2xpZW50J3MgYWdlIGlzIGJldHdlZW4gMSB5ZWFyIGFuZCA2IHllYXJzCiZxdW90O0NvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMmcXVvdDsgPSBUUlVFICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgQU5EIDEgeWVhciDiiaQgIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgIDYgeWVhcnMKQHRyaWdnZXJEYXRlOiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspCiovCmRlZmluZSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NzEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDczIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODgiPiBhZnRlciBkYXkgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NzEiIGxvY2F0b3I9IjMwNjozLTMwOToxMTAiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzIiIGxvY2F0b3I9IjMwNjozLTMwODo5MyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3MyIgbG9jYXRvcj0iMzA2OjMtMzA3OjU2IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDc0IiBsb2NhdG9yPSIzMDY6My0zMDY6MTAyIiBuYW1lPSJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDc2IiBsb2NhdG9yPSIzMDc6My0zMDc6NTYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODgiIGxvY2F0b3I9IjMwODozLTMwODo5MyIgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJBZnRlciI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDg5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTAiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODYiIGxvY2F0b3I9IjMwODozLTMwODo3NCIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDg3IiBsb2NhdG9yPSIzMDg6ODktMzA4OjkzIiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkxIiBsb2NhdG9yPSIzMDk6My0zMDk6MTEwIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDk2IiBsb2NhdG9yPSIzMDk6Ny0zMDk6MTEwIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1MTMiIGxvY2F0b3I9IjMyNzoxLTMyOToxMSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA2IG1vbnRocyIvPgogICAgICAgICAgICA8YTpzIHI9IjUxMyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA2IG1vbnRocwoqLwpkZWZpbmUgJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTE0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTE4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTE4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBQZXJ0dXNzaXMgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz42IG1vbnRoczwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIyIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjUxNCIgbG9jYXRvcj0iMzI4OjMtMzI5OjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjUxNSIgbG9jYXRvcj0iMzI4OjYtMzI4OjY2IiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNTE2IiBsb2NhdG9yPSIzMjg6NzMtMzI4OjEyNCIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTIwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MjEiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTE4IiBsb2NhdG9yPSIzMjg6NzMtMzI4OjExMyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgUGVydHVzc2lzIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUxOSIgbG9jYXRvcj0iMzI4OjExNy0zMjg6MTI0IiB2YWx1ZT0iNiIgdW5pdD0ibW9udGhzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI1MjMiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjIiIGxvY2F0b3I9IjMyOTo4LTMyOToxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjUzOCIgbG9jYXRvcj0iMzM1OjEtMzM3OjExIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICsgNyB5ZWFycyIvPgogICAgICAgICAgICA8YTpzIHI9IjUzOCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyArIDcgeWVhcnMKKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTM5Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+YmlydGhEYXRlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjcgeWVhcnM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0OCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MzkiIGxvY2F0b3I9IjMzNjozLTMzNzoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI1NDAiIGxvY2F0b3I9IjMzNjo2LTMzNjo2NiIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjU0MSIgbG9jYXRvcj0iMzM2OjczLTMzNjo5OSIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTQ2IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NDciIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ1IiBuYW1lPSJUb0RhdGUiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQzIiBsb2NhdG9yPSIzMzY6NzMtMzM2Ojg5IiBwYXRoPSJiaXJ0aERhdGUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNTQyIiBsb2NhdG9yPSIzMzY6NzMtMzM2Ojc5IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ0IiBsb2NhdG9yPSIzMzY6OTMtMzM2Ojk5IiB2YWx1ZT0iNyIgdW5pdD0ieWVhcnMiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjU0OSIgYXNUeXBlPSJ0OkRhdGUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0OCIgbG9jYXRvcj0iMzM3OjgtMzM3OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDk4IiBsb2NhdG9yPSIzMTU6MS0zMjE6OSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iQSBib29zdGVyIGRvc2UgaXMgcmVjb21tZW5kZWQgZm9yIGNoaWxkcmVuIGFnZWQgMeKAkzYgeWVhcnMsIHByZWZlcmFibHkgZHVyaW5nIHRoZSBzZWNvbmQgeWVhciBvZiBsaWZlICjiiaUgNiBtb250aHMgYWZ0ZXIgbGFzdCBwcmltYXJ5IGRvc2UpLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQ5OCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEEgYm9vc3RlciBkb3NlIGlzIHJlY29tbWVuZGVkIGZvciBjaGlsZHJlbiBhZ2VkIDHigJM2IHllYXJzLCBwcmVmZXJhYmx5IGR1cmluZyB0aGUgc2Vjb25kIHllYXIgb2YgbGlmZSAo4omlIDYgbW9udGhzIGFmdGVyIGxhc3QgcHJpbWFyeSBkb3NlKS4KKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0OTkiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IAogIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTcxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTM2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nQSBib29zdGVyIGRvc2UgaXMgcmVjb21tZW5kZWQgZm9yIGNoaWxkcmVuIGFnZWQgMeKAkzYgeWVhcnMsIHByZWZlcmFibHkgZHVyaW5nIHRoZSBzZWNvbmQgeWVhciBvZiBsaWZlICjiiaUgNiBtb250aHMgYWZ0ZXIgbGFzdCBwcmltYXJ5IGRvc2UpLic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCkR1ZSBEYXRlOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvU3RyaW5nKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTMzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCk92ZXJkdWU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTUwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpFeHBpcmF0aW9uOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvU3RyaW5nKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0OTkiIGxvY2F0b3I9IjMxNjozLTMyMTo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjUwMCIgbG9jYXRvcj0iMzE2OjYtMzE2OjY2IiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNTcxIiBsb2NhdG9yPSIzMTc6OC0zMjA6OTgiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU2MiIgbG9jYXRvcj0iMzE3OjgtMzE5OjExMCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTU4IiBsb2NhdG9yPSIzMTc6OC0zMTk6OTIiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzNiIgbG9jYXRvcj0iMzE3OjgtMzE4OjEwOSIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTMyIiBsb2NhdG9yPSIzMTc6OC0zMTg6OTQiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUxMSIgbG9jYXRvcj0iMzE3OjgtMzE3OjE2MyIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTA3IiBsb2NhdG9yPSIzMTc6OC0zMTc6MTQ3IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iQSBib29zdGVyIGRvc2UgaXMgcmVjb21tZW5kZWQgZm9yIGNoaWxkcmVuIGFnZWQgMeKAkzYgeWVhcnMsIHByZWZlcmFibHkgZHVyaW5nIHRoZSBzZWNvbmQgeWVhciBvZiBsaWZlICjiiaUgNiBtb250aHMgYWZ0ZXIgbGFzdCBwcmltYXJ5IGRvc2UpLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTA4IiBsb2NhdG9yPSIzMTc6MTUxLTMxNzoxNjMiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0R1ZSBEYXRlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTI4IiBsb2NhdG9yPSIzMTg6MTUtMzE4Ojk0IiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUyOSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUyNCIgbG9jYXRvcj0iMzE4OjI0LTMxODo5MyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MzMiIGxvY2F0b3I9IjMxODo5OC0zMTg6MTA5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iJiN4YTtPdmVyZHVlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTU0IiBsb2NhdG9yPSIzMTk6MTQtMzE5OjkyIiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1NSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU1MCIgbG9jYXRvcj0iMzE5OjIzLTMxOTo5MSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU1OSIgbG9jYXRvcj0iMzE5Ojk2LTMxOToxMTAiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0V4cGlyYXRpb246ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NjciIGxvY2F0b3I9IjMyMDoxNy0zMjA6OTgiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTY4IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTYzIiBsb2NhdG9yPSIzMjA6MjYtMzIwOjk3IiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNTcyIiBsb2NhdG9yPSIzMjE6OC0zMjE6OSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NzQiIGxvY2F0b3I9IjM1NjoxLTM3Mzo1IiBuYW1lPSJUZXN0IFZhbGlkYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0ZXN0IiB2YWx1ZT0iVGVzdCBleHBlY3RlZCByZXN1bHRzIGJhc2VkIG9uIGV4YW1wbGUgcGF0aWVudHMiLz4KICAgICAgICAgICAgPGE6cyByPSI1NzQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkB0ZXN0OiBUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cwoqLwpkZWZpbmUgJnF1b3Q7VGVzdCBWYWxpZGF0aW9uJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU3NSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Y2FzZQogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU4MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JzMzLkFndDF5JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTg1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1ODYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTg3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1ODkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU4OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTkwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nMzQuRFRQMURsdDR3JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTk1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1OTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1OTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU5OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTk5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nMzUuRFRQMURndDR3JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjA1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjA5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjEwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nMzYuRFRQMkRsdDZtJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjE1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjE3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYxOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nMzcuRFRQMkRndDZtJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MjYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MjkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYyOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjMwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nMzguRFRQM0RsdDF5JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYzOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MzkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiczOS5EVFAzRGd0MXknPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjUwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjUzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JzQwLkRUUDNUZDFEbHQxeSc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjYwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjYzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjY1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjY2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nNDEuRFRQM1RkMURndDF5JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjcxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY3NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY3NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjc2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPic0Mi5EVFAzVGQyJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjgzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjg3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY4OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjkwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nNDMuRFRQM1AwQWJ0MXk2eURsdDZtJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjk1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY5OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPic0NC5EVFAzUDBBYnQxeTZ5RGd0Nm0nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzEwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxMSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzEzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JzQ1LkRUUDNQMEFndDZ5JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nNDYuRFRQM1AxJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzMyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjczNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjczNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J05vIHRlc3QgY2FzZSBzZXQnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVuZDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTc1IiBsb2NhdG9yPSIzNTc6My0zNzM6NSIgeHNpOnR5cGU9IkNhc2UiPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNTc2IiBsb2NhdG9yPSIzNTg6NS0zNTg6NjYiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI1NzciIGxvY2F0b3I9IjM1ODoxMC0zNTg6MzIiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTgzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU4NCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTgxIiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU4MiIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTc5IiBsb2NhdG9yPSIzNTg6MTAtMzU4OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI1NzgiIGxvY2F0b3I9IjM1ODoxMC0zNTg6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1ODAiIGxvY2F0b3I9IjM1ODoyMy0zNTg6MzIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIzMy5BZ3QxeSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3MzYiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU4NSIgbG9jYXRvcj0iMzU4OjM5LTM1ODo2NiIgbmFtZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzM3IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzM4IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3MzkiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI1ODYiIGxvY2F0b3I9IjM1OTo1LTM1OTo3MCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjU4NyIgbG9jYXRvcj0iMzU5OjEwLTM1OTozNiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1OTMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTk0IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTEiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTkyIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1ODkiIGxvY2F0b3I9IjM1OToxMC0zNTk6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjU4OCIgbG9jYXRvcj0iMzU5OjEwLTM1OToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU5MCIgbG9jYXRvcj0iMzU5OjIzLTM1OTozNiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjM0LkRUUDFEbHQ0dyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3NDAiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU5NSIgbG9jYXRvcj0iMzU5OjQzLTM1OTo3MCIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzQxIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzQyIiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NDMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI1OTYiIGxvY2F0b3I9IjM2MDo1LTM2MDo3MCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjU5NyIgbG9jYXRvcj0iMzYwOjEwLTM2MDozNiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MDMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjA0IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MDEiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjAyIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTkiIGxvY2F0b3I9IjM2MDoxMC0zNjA6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjU5OCIgbG9jYXRvcj0iMzYwOjEwLTM2MDoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYwMCIgbG9jYXRvcj0iMzYwOjIzLTM2MDozNiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjM1LkRUUDFEZ3Q0dyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3NDQiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYwNSIgbG9jYXRvcj0iMzYwOjQzLTM2MDo3MCIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzQ1IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzQ2IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NDciIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2MDYiIGxvY2F0b3I9IjM2MTo1LTM2MTo3MCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjYwNyIgbG9jYXRvcj0iMzYxOjEwLTM2MTozNiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MTMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjE0IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTEiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjEyIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MDkiIGxvY2F0b3I9IjM2MToxMC0zNjE6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjYwOCIgbG9jYXRvcj0iMzYxOjEwLTM2MToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYxMCIgbG9jYXRvcj0iMzYxOjIzLTM2MTozNiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjM2LkRUUDJEbHQ2bSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3NDgiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYxNSIgbG9jYXRvcj0iMzYxOjQzLTM2MTo3MCIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzQ5IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzUwIiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NTEiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2MTYiIGxvY2F0b3I9IjM2Mjo1LTM2Mjo3MCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjYxNyIgbG9jYXRvcj0iMzYyOjEwLTM2MjozNiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MjMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjI0IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjEiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjIyIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTkiIGxvY2F0b3I9IjM2MjoxMC0zNjI6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjYxOCIgbG9jYXRvcj0iMzYyOjEwLTM2MjoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYyMCIgbG9jYXRvcj0iMzYyOjIzLTM2MjozNiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjM3LkRUUDJEZ3Q2bSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3NTIiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYyNSIgbG9jYXRvcj0iMzYyOjQzLTM2Mjo3MCIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzUzIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzU0IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NTUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2MjYiIGxvY2F0b3I9IjM2Mzo1LTM2MzoxODIiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI2MjciIGxvY2F0b3I9IjM2MzoxMC0zNjM6MzYiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjMzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYzNCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjMxIiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYzMiIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjI5IiBsb2NhdG9yPSIzNjM6MTAtMzYzOjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI2MjgiIGxvY2F0b3I9IjM2MzoxMC0zNjM6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MzAiIGxvY2F0b3I9IjM2MzoyMy0zNjM6MzYiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIzOC5EVFAzRGx0MXkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNzU2IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MzUiIGxvY2F0b3I9IjM2Mzo0My0zNjM6MTgyIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjM2IiBsb2NhdG9yPSIzNjM6NDMtMzYzOjExNiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MzciIGxvY2F0b3I9IjM2MzoxMjItMzYzOjE4MiIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI3NTciIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NTgiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc1OSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjYzOCIgbG9jYXRvcj0iMzY0OjUtMzY0OjE4MiI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjYzOSIgbG9jYXRvcj0iMzY0OjEwLTM2NDozNiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NDUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjQ2IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDMiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjQ0IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDEiIGxvY2F0b3I9IjM2NDoxMC0zNjQ6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY0MCIgbG9jYXRvcj0iMzY0OjEwLTM2NDoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY0MiIgbG9jYXRvcj0iMzY0OjIzLTM2NDozNiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjM5LkRUUDNEZ3QxeSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3NjAiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY0NyIgbG9jYXRvcj0iMzY0OjQzLTM2NDoxODIiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDgiIGxvY2F0b3I9IjM2NDo0My0zNjQ6MTE2IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY0OSIgbG9jYXRvcj0iMzY0OjEyMi0zNjQ6MTgyIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijc2MSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc2MiIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzYzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNjUwIiBsb2NhdG9yPSIzNjU6NS0zNjU6MTg1Ij4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNjUxIiBsb2NhdG9yPSIzNjU6MTAtMzY1OjM5IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY1NyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NTgiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY1NSIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NTYiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY1MyIgbG9jYXRvcj0iMzY1OjEwLTM2NToxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNjUyIiBsb2NhdG9yPSIzNjU6MTAtMzY1OjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU0IiBsb2NhdG9yPSIzNjU6MjMtMzY1OjM5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iNDAuRFRQM1RkMURsdDF5IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9Ijc2NCIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU5IiBsb2NhdG9yPSIzNjU6NDYtMzY1OjE4NSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY2MCIgbG9jYXRvcj0iMzY1OjQ2LTM2NToxMTkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjYxIiBsb2NhdG9yPSIzNjU6MTI1LTM2NToxODUiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzY1IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzY2IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NjciIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2NjIiIGxvY2F0b3I9IjM2Njo1LTM2NjoxODUiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI2NjMiIGxvY2F0b3I9IjM2NjoxMC0zNjY6MzkiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjY5IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY3MCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjY3IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY2OCIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjY1IiBsb2NhdG9yPSIzNjY6MTAtMzY2OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI2NjQiIGxvY2F0b3I9IjM2NjoxMC0zNjY6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NjYiIGxvY2F0b3I9IjM2NjoyMy0zNjY6MzkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSI0MS5EVFAzVGQxRGd0MXkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNzY4IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzEiIGxvY2F0b3I9IjM2Njo0Ni0zNjY6MTg1IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjcyIiBsb2NhdG9yPSIzNjY6NDYtMzY2OjExOSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzMiIGxvY2F0b3I9IjM2NjoxMjUtMzY2OjE4NSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI3NjkiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NzAiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc3MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjY3NCIgbG9jYXRvcj0iMzY3OjUtMzY3OjIzMiI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjY3NSIgbG9jYXRvcj0iMzY3OjEwLTM2NzozNCIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2ODEiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjgyIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzkiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjgwIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzciIGxvY2F0b3I9IjM2NzoxMC0zNjc6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY3NiIgbG9jYXRvcj0iMzY3OjEwLTM2NzoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY3OCIgbG9jYXRvcj0iMzY3OjIzLTM2NzozNCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjQyLkRUUDNUZDIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNzcyIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2ODMiIGxvY2F0b3I9IjM2Nzo0MS0zNjc6MjMyIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjg0IiBsb2NhdG9yPSIzNjc6NDEtMzY3OjE2NiIgbmFtZT0iU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjg1IiBsb2NhdG9yPSIzNjc6MTcyLTM2NzoyMzIiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNzczIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzc0IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NzUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2ODYiIGxvY2F0b3I9IjM2ODo1LTM2ODoxOTEiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI2ODciIGxvY2F0b3I9IjM2ODoxMC0zNjg6NDUiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjkzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY5NCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjkxIiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY5MiIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjg5IiBsb2NhdG9yPSIzNjg6MTAtMzY4OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI2ODgiIGxvY2F0b3I9IjM2ODoxMC0zNjg6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2OTAiIGxvY2F0b3I9IjM2ODoyMy0zNjg6NDUiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSI0My5EVFAzUDBBYnQxeTZ5RGx0Nm0iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNzc2IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2OTUiIGxvY2F0b3I9IjM2ODo1Mi0zNjg6MTkxIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjk2IiBsb2NhdG9yPSIzNjg6NTItMzY4OjExMiIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY5NyIgbG9jYXRvcj0iMzY4OjExOC0zNjg6MTkxIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI3NzciIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3NzgiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc3OSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjY5OCIgbG9jYXRvcj0iMzY5OjUtMzY5OjE5MSI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjY5OSIgbG9jYXRvcj0iMzY5OjEwLTM2OTo0NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MDUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzA2IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDMiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzA0IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDEiIGxvY2F0b3I9IjM2OToxMC0zNjk6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjcwMCIgbG9jYXRvcj0iMzY5OjEwLTM2OToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcwMiIgbG9jYXRvcj0iMzY5OjIzLTM2OTo0NSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjQ0LkRUUDNQMEFidDF5NnlEZ3Q2bSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3ODAiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcwNyIgbG9jYXRvcj0iMzY5OjUyLTM2OToxOTEiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDgiIGxvY2F0b3I9IjM2OTo1Mi0zNjk6MTEyIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzA5IiBsb2NhdG9yPSIzNjk6MTE4LTM2OToxOTEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijc4MSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc4MiIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzgzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNzEwIiBsb2NhdG9yPSIzNzA6NS0zNzA6MTg4Ij4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNzExIiBsb2NhdG9yPSIzNzA6MTAtMzcwOjM4IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjcxNyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MTgiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcxNSIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MTYiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcxMyIgbG9jYXRvcj0iMzcwOjEwLTM3MDoxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNzEyIiBsb2NhdG9yPSIzNzA6MTAtMzcwOjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzE0IiBsb2NhdG9yPSIzNzA6MjMtMzcwOjM4IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iNDUuRFRQM1AwQWd0NnkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNzg0IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MTkiIGxvY2F0b3I9IjM3MDo0NS0zNzA6MTg4IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzIwIiBsb2NhdG9yPSIzNzA6NDUtMzcwOjEwOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyMSIgbG9jYXRvcj0iMzcwOjQ5LTM3MDoxMDkiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyMiIgbG9jYXRvcj0iMzcwOjExNS0zNzA6MTg4IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI3ODUiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3ODYiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc4NyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjcyMyIgbG9jYXRvcj0iMzcxOjUtMzcxOjIyMiI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjcyNCIgbG9jYXRvcj0iMzcxOjEwLTM3MTozMyIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MzAiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzMxIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjgiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzI5IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjYiIGxvY2F0b3I9IjM3MToxMC0zNzE6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjcyNSIgbG9jYXRvcj0iMzcxOjEwLTM3MToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyNyIgbG9jYXRvcj0iMzcxOjIzLTM3MTozMyIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IjQ2LkRUUDNQMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3ODgiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjczMiIgbG9jYXRvcj0iMzcxOjQwLTM3MToyMjIiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzMiIGxvY2F0b3I9IjM3MTo0MC0zNzE6MTQzIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjczNCIgbG9jYXRvcj0iMzcxOjE0OS0zNzE6MjIyIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI3ODkiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI3OTAiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc5MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNzkyIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzUiIGxvY2F0b3I9IjM3MjoxMC0zNzI6MjciIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJObyB0ZXN0IGNhc2Ugc2V0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijc5MyIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijc5NCIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNzk1IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"
    }
  ]
}