WHO Immunization Implementation Guide
0.2.0 - ci-build

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

: IMMZD18SDTPPregnancyStartingWith3DosesLogic - TTL Representation

Draft as of 2025-11-10

Raw ttl | Download

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

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

 a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "IMMZD18SDTPPregnancyStartingWith3DosesLogic"] ; # 
  fhir:meta [
    ( fhir:profile [
fhir:v "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary>     ] [
fhir:v "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary>     ] [
fhir:v "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library>     ] [
fhir:v "http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module>     ] )
  ] ; # 
  fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir:div [ fhir:v "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n    <table class=\"grid dict\">\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD18SDTPPregnancyStartingWith3DosesLogic</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD18SDTPPregnancyStartingWith3DosesLogic</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-IMMZD18SDTPPregnancyStartingWith3DosesLogic.html\">IMMZD18SDTPPregnancyStartingWith3DosesLogic</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.5.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2025-11-10 23:31:43+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.Pregnancy starting with 3 doses 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>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>Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)</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 (during pregnancy) 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 (during pregnancy) Overdue</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 (during pregnancy) Expiration</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 (during pregnancy) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Second 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>Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)</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 (during pregnancy) 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 (during pregnancy) Overdue</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 (during pregnancy) Expiration</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 (during pregnancy) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Third tetanus and diphtheria-containing 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 3</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 3 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 3 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 3 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 3 Expiration</th><th>Resource</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 * Library: IMMZD18SDTPPregnancyStartingWith3DosesLogic (IMMZ.D18.S.DTP.Pregnancy starting with 3 doses schedule)\n * Schedule Table: Diphtheria and tetanus vaccination schedule in pregnant women who received 3 childhood diphtheria–tetanus–pertussis (DTP) doses\n */\nlibrary IMMZD18SDTPPregnancyStartingWith3DosesLogic\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\n\ncontext Patient\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\n@description: Provision of tetanus and diphtheria booster dose 1 for pregnant women who received only 3 doses of DTP during childhood without booster doses\n@trigger: The primary DTP series has been completed and client is currently pregnant\n@pseudo: \"Completed the primary vaccination series\" = TRUE (where \"Vaccine type\" = \"DTP-containing vaccines\") AND \"Currently pregnant\" = TRUE\n@triggerDate: \"Contact date\" WHEN \"ANC contact number\" = 1\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\":\n  Encounter.\"Three DTP primary series doses were administered\"\n  and Encounter.\"Client is currently pregnant\"\n  and not(\"First tetanus and diphtheria booster dose was administered\")\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Create\n@create: Pregnant women who have received only 3 doses of tetanus-containing vaccines during childhood without booster doses should receive 2 doses of tetanus-containing vaccines at the earliest opportunity during pregnancy with a minimal interval of 4 weeks between doses and the second dose at least 2 weeks before giving birth.\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Create\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\"\n  then 'Pregnant women who have received only 3 doses of tetanus-containing vaccines during childhood without booster doses should receive 2 doses of tetanus-containing vaccines at the earliest opportunity during pregnancy with a minimal interval of 4 weeks between doses and the second dose at least 2 weeks before giving birth.' + '\nDue Date: ' + ToString(\"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Due Date\") + '\nOverdue: ' + ToString(\"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Overdue\") + '\nExpiration: ' + \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Expiration\"\n  else ''\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Due Date\n@pseudocode: \"Contact date\" WHEN \"ANC contact number\" = 1\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Due Date\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\" then Today\n  else null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Overdue\n@pseudocode: Every subsequent contact until 38 weeks\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Overdue\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\" then Today\n  else null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Expiration\n@pseudocode: Two weeks before birth for the pregnancy; however, individuals remain eligible to be vaccinated.\n\"Gestational age\" &lt; 38 weeks\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Expiration\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\" then 'Two weeks before birth'\n  else null\n\n  \n/*\n@complete: First tetanus and diphtheria booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 1\n*/\ndefine \"First tetanus and diphtheria booster dose was administered\":\n  Encounter.\"One tetanus and diphtheria booster dose was administered\"\n\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\n@description: Provision of tetanus and diphtheria booster dose 2 for pregnant women who received only 3 doses of DTP during childhood without booster doses\n@trigger: First tetanus and diphtheria booster dose was administered\n@pseudo: Count of vaccines administered (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 1\n@triggerDate: Latest \"Date and time of vaccination\" where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\"\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\":\n  \"First tetanus and diphtheria booster dose was administered\" and\n  Encounter.\"Client is currently pregnant\" and\n  not \"Second tetanus and diphtheria booster dose was administered\"\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Create\n@create: Pregnant women who have received only 3 doses of tetanus-containing vaccines during childhood without booster doses should receive 2 doses of tetanus-containing vaccines at the earliest opportunity during pregnancy with a minimal interval of 4 weeks between doses and the second dose at least 2 weeks before giving birth.\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Create\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\"\n  then 'Pregnant women who have received only 3 doses of tetanus-containing vaccines during childhood without booster doses should receive 2 doses of tetanus-containing vaccines at the earliest opportunity during pregnancy with a minimal interval of 4 weeks between doses and the second dose at least 2 weeks before giving birth.' + '\nDue Date: ' + ToString(\"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Due Date\") + '\nOverdue: ' + ToString(\"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Overdue\") + '\nExpiration: ' + \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Expiration\"\n  else ''\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Due Date\n@pseudocode: Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\") + 4 'week'\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Due Date\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\" then Encounter.\"Date of Latest Td Dose\" + 4 weeks\n  else null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Overdue\n@pseudocode: Every subsequent contact until 38 weeks\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Overdue\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\" then Encounter.\"Date of Latest Td Dose\" + 4 weeks\n  else null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Expiration\n@pseudocode: Two weeks before birth for the pregnancy; however, individuals remain eligible to be vaccinated after giving birth.\n\"Gestational age\" &lt; 38 weeks\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Expiration\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\" then 'Two weeks before birth'\n  else null\n\n  \n/*\n@complete: Second tetanus and diphtheria booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 2\n*/\ndefine \"Second tetanus and diphtheria booster dose was administered\":\n  Encounter.\"Two tetanus and diphtheria booster doses were administered\"\n\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 3\n@description: Provision of tetanus and diphtheria booster dose 3 for pregnant women who received only 3 doses of DTP during childhood without booster doses\n@trigger: Second tetanus and diphtheria booster dose was administered\n@pseudo: Count of vaccines administered (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 2\n@triggerDate: Latest \"Date and time of vaccination\" where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\"\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 3\":\n  \"Second tetanus and diphtheria booster dose was administered\" and\n  not \"Third tetanus and diphtheria-containing booster dose was administered. Tetanus and diphtheria immunization schedule has been completed\"\n\n\n/*\n@output: Tetanus and diphtheria-containing vaccine booster dose 3 Create\n@create: A sixth dose would be needed at least 1 year after the fifth dose, or during the next pregnancy.\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 3 Create\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 3\"\n  then 'A sixth dose would be needed at least 1 year after the fifth dose, or during the next pregnancy.' + '\nDue Date: ' + ToString(\"Tetanus and diphtheria-containing vaccine booster dose 3 Due Date\")\n  else ''\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 3 Due Date\n@pseudocode: Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\") + 1 year or during next pregnancy\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 3 Due Date\":\n  if \"Tetanus and diphtheria-containing vaccine booster dose 3\" then Encounter.\"Date of Latest Td Dose\" + 1 year\n  else null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 3 Overdue\n@pseudocode: To be determined by Member States\n*/\ndefine \"Tetanus and diphtheria-containing vaccine booster dose 3 Overdue\":\n  null\n\n\n/*\n@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 3 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 \"Tetanus and diphtheria-containing vaccine booster dose 3 Expiration\":\n  null\n\n  \n/*\n@complete: Third tetanus and diphtheria-containing booster dose was administered. Tetanus and diphtheria immunization schedule has been completed\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 3\n\"Immunization recommendation status\" = \"Complete\" (where \"Vaccine type\" = \"Tetanus and diphtheria-containing vaccines\")\n*/\ndefine \"Third tetanus and diphtheria-containing booster dose was administered. Tetanus and diphtheria immunization schedule has been completed\":\n  Encounter.\"Three tetanus and diphtheria booster doses were administered\"\n\n\n\n/*\n@test: Test expected results based on example patients\n*/\ndefine \"Test Validation\":\n  case\n    when Patient.id = 'DTP66.3' then \"Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)\"\n    when Patient.id = 'DTP67.4' then \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\"\n    when Patient.id = 'DTP68.4' then \"Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)\"\n    when Patient.id = 'DTP69.3' then \"Tetanus and diphtheria-containing vaccine booster dose 3\"\n    when Patient.id = 'DTP70.3' then \"Tetanus and diphtheria-containing vaccine booster dose 3\"\n    when Patient.id = 'DTP71.2' then \"Third tetanus and diphtheria-containing booster dose was administered. Tetanus and diphtheria immunization schedule has been completed\"\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 (97052 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"^^rdf:XMLLiteral ]
  ] ; # 
  fhir:extension ( [
fhir:url [
fhir:v "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability>     ] ;
fhir:value [
a fhir:Code ;
fhir:v "computable"     ]
  ] ) ; # 
  fhir:url [
fhir:v "http://smart.who.int/immunizations/Library/IMMZD18SDTPPregnancyStartingWith3DosesLogic"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZD18SDTPPregnancyStartingWith3DosesLogic>
  ] ; # 
  fhir:version [ fhir:v "0.2.0"] ; # 
  fhir:name [ fhir:v "IMMZD18SDTPPregnancyStartingWith3DosesLogic"] ; # 
  fhir:title [ fhir:v "IMMZD18SDTPPregnancyStartingWith3DosesLogic"] ; # 
  fhir:status [ fhir:v "draft"] ; # 
  fhir:experimental [ fhir:v false] ; # 
  fhir:type [
    ( fhir:coding [
fhir:system [
fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ;
fhir:l <http://terminology.hl7.org/CodeSystem/library-type>       ] ;
fhir:code [ fhir:v "logic-library" ]     ] )
  ] ; # 
  fhir:date [ fhir:v "2025-11-10T23:31:43+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "WHO"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "WHO" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://who.int" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "This library defines decision support logic for the IMMZ.D18.S.DTP.Pregnancy starting with 3 doses schedule table in the Immunization CPG"] ; # 
  fhir:relatedArtifact ( [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library WC" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/WHOCommon"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/WHOCommon>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Common" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZCommon"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZCommon>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Concepts" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZConcepts"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZConcepts>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library IE" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZEncounterElements"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZEncounterElements>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Encounter" ] ;
fhir:resource [
fhir:v "http://smart.who.int/immunizations/Library/IMMZD2DTDTPEncounterElements"^^xsd:anyURI ;
fhir:l <http://smart.who.int/immunizations/Library/IMMZD2DTDTPEncounterElements>     ]
  ] ) ; # 
  fhir:parameter ( [
fhir:name [ fhir:v "Today" ] ;
fhir:use [ fhir:v "in" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Patient" ]
  ] [
fhir:name [ fhir:v "First tetanus and diphtheria booster dose was administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy)" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Due Date" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Overdue" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Expiration" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "string" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 1 (during pregnancy) Create" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "string" ]
  ] [
fhir:name [ fhir:v "Second tetanus and diphtheria booster dose was administered" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy)" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Due Date" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Overdue" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Expiration" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "string" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 2 (during pregnancy) Create" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "string" ]
  ] [
fhir:name [ fhir:v "Third tetanus and diphtheria-containing booster dose was administered. Tetanus and diphtheria immunization schedule has been completed" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 3" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 3 Due Date" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "date" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 3 Create" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "string" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 3 Overdue" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Resource" ]
  ] [
fhir:name [ fhir:v "Tetanus and diphtheria-containing vaccine booster dose 3 Expiration" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Resource" ]
  ] [
fhir:name [ fhir:v "Test Validation" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Resource" ]
  ] ) ; # 
  fhir:content ( [
fhir:contentType [ fhir:v "text/cql" ] ;
fhir:data [ fhir:v "LyoKICogTGlicmFyeTogSU1NWkQxOFNEVFBQcmVnbmFuY3lTdGFydGluZ1dpdGgzRG9zZXNMb2dpYyAoSU1NWi5EMTguUy5EVFAuUHJlZ25hbmN5IHN0YXJ0aW5nIHdpdGggMyBkb3NlcyBzY2hlZHVsZSkKICogU2NoZWR1bGUgVGFibGU6IERpcGh0aGVyaWEgYW5kIHRldGFudXMgdmFjY2luYXRpb24gc2NoZWR1bGUgaW4gcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIDMgY2hpbGRob29kIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIChEVFApIGRvc2VzCiAqLwpsaWJyYXJ5IElNTVpEMThTRFRQUHJlZ25hbmN5U3RhcnRpbmdXaXRoM0Rvc2VzTG9naWMKCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCmluY2x1ZGUgRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwoKaW5jbHVkZSBJTU1aRW5jb3VudGVyRWxlbWVudHMgY2FsbGVkIElFCmluY2x1ZGUgSU1NWkQyRFREVFBFbmNvdW50ZXJFbGVtZW50cyBjYWxsZWQgRW5jb3VudGVyCgpwYXJhbWV0ZXIgVG9kYXkgRGF0ZSBkZWZhdWx0IFRvZGF5KCkKCgpjb250ZXh0IFBhdGllbnQKCgovKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMSBmb3IgcHJlZ25hbnQgd29tZW4gd2hvIHJlY2VpdmVkIG9ubHkgMyBkb3NlcyBvZiBEVFAgZHVyaW5nIGNoaWxkaG9vZCB3aXRob3V0IGJvb3N0ZXIgZG9zZXMKQHRyaWdnZXI6IFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIGFuZCBjbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50CkBwc2V1ZG86ICJDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzIiA9IFRSVUUgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikgQU5EICJDdXJyZW50bHkgcHJlZ25hbnQiID0gVFJVRQpAdHJpZ2dlckRhdGU6ICJDb250YWN0IGRhdGUiIFdIRU4gIkFOQyBjb250YWN0IG51bWJlciIgPSAxCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIjoKICBFbmNvdW50ZXIuIlRocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKICBhbmQgRW5jb3VudGVyLiJDbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50IgogIGFuZCBub3QoIkZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiKQoKCi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBDcmVhdGUKQGNyZWF0ZTogUHJlZ25hbnQgd29tZW4gd2hvIGhhdmUgcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyBzaG91bGQgcmVjZWl2ZSAyIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBhdCB0aGUgZWFybGllc3Qgb3Bwb3J0dW5pdHkgZHVyaW5nIHByZWduYW5jeSB3aXRoIGEgbWluaW1hbCBpbnRlcnZhbCBvZiA0IHdlZWtzIGJldHdlZW4gZG9zZXMgYW5kIHRoZSBzZWNvbmQgZG9zZSBhdCBsZWFzdCAyIHdlZWtzIGJlZm9yZSBnaXZpbmcgYmlydGguCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIENyZWF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIKICB0aGVuICdQcmVnbmFudCB3b21lbiB3aG8gaGF2ZSByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIHNob3VsZCByZWNlaXZlIDIgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGF0IHRoZSBlYXJsaWVzdCBvcHBvcnR1bml0eSBkdXJpbmcgcHJlZ25hbmN5IHdpdGggYSBtaW5pbWFsIGludGVydmFsIG9mIDQgd2Vla3MgYmV0d2VlbiBkb3NlcyBhbmQgdGhlIHNlY29uZCBkb3NlIGF0IGxlYXN0IDIgd2Vla3MgYmVmb3JlIGdpdmluZyBiaXJ0aC4nICsgJwpEdWUgRGF0ZTogJyArIFRvU3RyaW5nKCJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUiKSArICcKT3ZlcmR1ZTogJyArIFRvU3RyaW5nKCJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZSIpICsgJwpFeHBpcmF0aW9uOiAnICsgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uIgogIGVsc2UgJycKCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUKQHBzZXVkb2NvZGU6ICJDb250YWN0IGRhdGUiIFdIRU4gIkFOQyBjb250YWN0IG51bWJlciIgPSAxCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIjoKICBpZiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIiB0aGVuIFRvZGF5CiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IEV2ZXJ5IHN1YnNlcXVlbnQgY29udGFjdCB1bnRpbCAzOCB3ZWVrcwoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlIjoKICBpZiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIiB0aGVuIFRvZGF5CiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFR3byB3ZWVrcyBiZWZvcmUgYmlydGggZm9yIHRoZSBwcmVnbmFuY3k7IGhvd2V2ZXIsIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoiR2VzdGF0aW9uYWwgYWdlIiA8IDM4IHdlZWtzCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIEV4cGlyYXRpb24iOgogIGlmICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkiIHRoZW4gJ1R3byB3ZWVrcyBiZWZvcmUgYmlydGgnCiAgZWxzZSBudWxsCgogIAovKgpAY29tcGxldGU6IEZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCiovCmRlZmluZSAiRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgRW5jb3VudGVyLiJPbmUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDIgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzCkB0cmlnZ2VyOiBGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG86IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiB3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIjoKICAiRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgYW5kCiAgRW5jb3VudGVyLiJDbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50IiBhbmQKICBub3QgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIgoKCi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBDcmVhdGUKQGNyZWF0ZTogUHJlZ25hbnQgd29tZW4gd2hvIGhhdmUgcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyBzaG91bGQgcmVjZWl2ZSAyIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBhdCB0aGUgZWFybGllc3Qgb3Bwb3J0dW5pdHkgZHVyaW5nIHByZWduYW5jeSB3aXRoIGEgbWluaW1hbCBpbnRlcnZhbCBvZiA0IHdlZWtzIGJldHdlZW4gZG9zZXMgYW5kIHRoZSBzZWNvbmQgZG9zZSBhdCBsZWFzdCAyIHdlZWtzIGJlZm9yZSBnaXZpbmcgYmlydGguCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIENyZWF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSIKICB0aGVuICdQcmVnbmFudCB3b21lbiB3aG8gaGF2ZSByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIHNob3VsZCByZWNlaXZlIDIgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGF0IHRoZSBlYXJsaWVzdCBvcHBvcnR1bml0eSBkdXJpbmcgcHJlZ25hbmN5IHdpdGggYSBtaW5pbWFsIGludGVydmFsIG9mIDQgd2Vla3MgYmV0d2VlbiBkb3NlcyBhbmQgdGhlIHNlY29uZCBkb3NlIGF0IGxlYXN0IDIgd2Vla3MgYmVmb3JlIGdpdmluZyBiaXJ0aC4nICsgJwpEdWUgRGF0ZTogJyArIFRvU3RyaW5nKCJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUiKSArICcKT3ZlcmR1ZTogJyArIFRvU3RyaW5nKCJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZSIpICsgJwpFeHBpcmF0aW9uOiAnICsgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uIgogIGVsc2UgJycKCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIpICsgNCAnd2VlaycKKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUiOgogIGlmICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiArIDQgd2Vla3MKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZQpAcHNldWRvY29kZTogRXZlcnkgc3Vic2VxdWVudCBjb250YWN0IHVudGlsIDM4IHdlZWtzCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIE92ZXJkdWUiOgogIGlmICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiArIDQgd2Vla3MKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVHdvIHdlZWtzIGJlZm9yZSBiaXJ0aCBmb3IgdGhlIHByZWduYW5jeTsgaG93ZXZlciwgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQgYWZ0ZXIgZ2l2aW5nIGJpcnRoLgoiR2VzdGF0aW9uYWwgYWdlIiA8IDM4IHdlZWtzCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIEV4cGlyYXRpb24iOgogIGlmICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiIHRoZW4gJ1R3byB3ZWVrcyBiZWZvcmUgYmlydGgnCiAgZWxzZSBudWxsCgogIAovKgpAY29tcGxldGU6IFNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMgoqLwpkZWZpbmUgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICBFbmNvdW50ZXIuIlR3byB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiCgoKCi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDMgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzCkB0cmlnZ2VyOiBTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMgpAdHJpZ2dlckRhdGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgd2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIjoKICAiU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGFuZAogIG5vdCAiVGhpcmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiCgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgQ3JlYXRlCkBjcmVhdGU6IEEgc2l4dGggZG9zZSB3b3VsZCBiZSBuZWVkZWQgYXQgbGVhc3QgMSB5ZWFyIGFmdGVyIHRoZSBmaWZ0aCBkb3NlLCBvciBkdXJpbmcgdGhlIG5leHQgcHJlZ25hbmN5LgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIENyZWF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIgogIHRoZW4gJ0Egc2l4dGggZG9zZSB3b3VsZCBiZSBuZWVkZWQgYXQgbGVhc3QgMSB5ZWFyIGFmdGVyIHRoZSBmaWZ0aCBkb3NlLCBvciBkdXJpbmcgdGhlIG5leHQgcHJlZ25hbmN5LicgKyAnCkR1ZSBEYXRlOiAnICsgVG9TdHJpbmcoIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIER1ZSBEYXRlIikKICBlbHNlICcnCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIpICsgMSB5ZWFyIG9yIGR1cmluZyBuZXh0IHByZWduYW5jeQoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIER1ZSBEYXRlIjoKICBpZiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBUZCBEb3NlIiArIDEgeWVhcgogIGVsc2UgbnVsbAoKCi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcwoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIE92ZXJkdWUiOgogIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgRXhwaXJhdGlvbiI6CiAgbnVsbAoKICAKLyoKQGNvbXBsZXRlOiBUaGlyZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDMKIkltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMiID0gIkNvbXBsZXRlIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIikKKi8KZGVmaW5lICJUaGlyZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCI6CiAgRW5jb3VudGVyLiJUaHJlZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiCgoKCi8qCkB0ZXN0OiBUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cwoqLwpkZWZpbmUgIlRlc3QgVmFsaWRhdGlvbiI6CiAgY2FzZQogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDY2LjMnIHRoZW4gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIKICAgIHdoZW4gUGF0aWVudC5pZCA9ICdEVFA2Ny40JyB0aGVuICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQNjguNCcgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDY5LjMnIHRoZW4gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDcwLjMnIHRoZW4gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDcxLjInIHRoZW4gIlRoaXJkIHRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkIgogICAgZWxzZSAnTm8gdGVzdCBjYXNlIHNldCcKICBlbmQK"^^xsd:base64Binary ]
  ] [
fhir:contentType [ fhir:v "application/elm+xml" ] ;
fhir:data [ fhir:v "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNDg1Ij4KICAgICAgICAgPGE6cz4vKgogKiBMaWJyYXJ5OiBJTU1aRDE4U0RUUFByZWduYW5jeVN0YXJ0aW5nV2l0aDNEb3Nlc0xvZ2ljIChJTU1aLkQxOC5TLkRUUC5QcmVnbmFuY3kgc3RhcnRpbmcgd2l0aCAzIGRvc2VzIHNjaGVkdWxlKQogKiBTY2hlZHVsZSBUYWJsZTogRGlwaHRoZXJpYSBhbmQgdGV0YW51cyB2YWNjaW5hdGlvbiBzY2hlZHVsZSBpbiBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgMyBjaGlsZGhvb2QgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgKERUUCkgZG9zZXMKICovCmxpYnJhcnkgSU1NWkQxOFNEVFBQcmVnbmFuY3lTdGFydGluZ1dpdGgzRG9zZXNMb2dpYzwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQxOFNEVFBQcmVnbmFuY3lTdGFydGluZ1dpdGgzRG9zZXNMb2dpYyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjEwOjEtMTA6MjciIGxvY2FsSWRlbnRpZmllcj0iV0MiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdDPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMiIgbG9jYXRvcj0iMTI6MS0xMjozMiIgbG9jYWxJZGVudGlmaWVyPSJDb21tb24iIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkNvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNCIgbG9jYXRvcj0iMTM6MS0xMzozNiIgbG9jYWxJZGVudGlmaWVyPSJDb25jZXB0cyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTQiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE2IiBsb2NhdG9yPSIxNToxLTE1OjM5IiBsb2NhbElkZW50aWZpZXI9IklFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpFbmNvdW50ZXJFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRW5jb3VudGVyRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBJRTwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTgiIGxvY2F0b3I9IjE2OjEtMTY6NTMiIGxvY2FsSWRlbnRpZmllcj0iRW5jb3VudGVyIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpEMkRURFRQRW5jb3VudGVyRWxlbWVudHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkQyRFREVFBFbmNvdW50ZXJFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIEVuY291bnRlcjwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPHBhcmFtZXRlcnM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIwIiBsb2NhdG9yPSIxODoxLTE4OjM2IiBuYW1lPSJUb2RheSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyMCI+CiAgICAgICAgICAgICAgIDxhOnM+cGFyYW1ldGVyIFRvZGF5IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyNCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+RGF0ZTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gZGVmYXVsdCA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMjMiPgogICAgICAgICAgICAgICAgICA8YTpzPlRvZGF5KCk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxkZWZhdWx0IGxvY2FsSWQ9IjIyMyIgbG9jYXRvcj0iMTg6MzAtMTg6MzYiIHhzaTp0eXBlPSJUb2RheSIvPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSIyMjQiIGxvY2F0b3I9IjE4OjE3LTE4OjIwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyOSIgbG9jYXRvcj0iMjE6MS0yMToxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjciIGxvY2F0b3I9IjIxOjEtMjE6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMjgiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjI2IiBsb2NhdG9yPSIyMToxLTIxOjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQyIiBsb2NhdG9yPSI4MjoxLTgzOjcwIiBuYW1lPSJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6cyByPSIyNDIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBjb21wbGV0ZTogRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxCiovCmRlZmluZSAmcXVvdDtGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7T25lIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDQiIGxvY2F0b3I9IjgzOjMtODM6NzAiIG5hbWU9Ik9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzIiIGxvY2F0b3I9IjMxOjEtMzQ6NzEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlc2NyaXB0aW9uIiB2YWx1ZT0iUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDEgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IlRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIGFuZCBjbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvIiB2YWx1ZT0iJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyA9IFRSVUUgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSBBTkQgJnF1b3Q7Q3VycmVudGx5IHByZWduYW50JnF1b3Q7ID0gVFJVRSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXJEYXRlIiB2YWx1ZT0iJnF1b3Q7Q29udGFjdCBkYXRlJnF1b3Q7IFdIRU4gJnF1b3Q7QU5DIGNvbnRhY3QgbnVtYmVyJnF1b3Q7ID0gMSIvPgogICAgICAgICAgICA8YTpzIHI9IjIzMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDEgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzCkB0cmlnZ2VyOiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCBhbmQgY2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudApAcHNldWRvOiAmcXVvdDtDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzJnF1b3Q7ID0gVFJVRSAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIEFORCAmcXVvdDtDdXJyZW50bHkgcHJlZ25hbnQmcXVvdDsgPSBUUlVFCkB0cmlnZ2VyRGF0ZTogJnF1b3Q7Q29udGFjdCBkYXRlJnF1b3Q7IFdIRU4gJnF1b3Q7QU5DIGNvbnRhY3QgbnVtYmVyJnF1b3Q7ID0gMQoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIzMyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzOCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Rmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMyIgbG9jYXRvcj0iMzI6My0zNDo3MSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzNCIgbG9jYXRvcj0iMzI6My0zMzo0NiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzNiIgbG9jYXRvcj0iMzI6My0zMjo2MiIgbmFtZT0iVGhyZWUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzgiIGxvY2F0b3I9IjMzOjctMzM6NDYiIG5hbWU9IkNsaWVudCBpcyBjdXJyZW50bHkgcHJlZ25hbnQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjM5IiBsb2NhdG9yPSIzNDo3LTM0OjcxIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjQ1IiBsb2NhdG9yPSIzNDoxMC0zNDo3MSIgbmFtZT0iRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NiIgbG9jYXRvcj0iNTQ6MS01NjoxMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0NvbnRhY3QgZGF0ZSZxdW90OyBXSEVOICZxdW90O0FOQyBjb250YWN0IG51bWJlciZxdW90OyA9IDEiLz4KICAgICAgICAgICAgPGE6cyByPSIyNjYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogJnF1b3Q7Q29udGFjdCBkYXRlJnF1b3Q7IFdIRU4gJnF1b3Q7QU5DIGNvbnRhY3QgbnVtYmVyJnF1b3Q7ID0gMQoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzAiPgogIGVsc2UgbnVsbDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY3IiBsb2NhdG9yPSI1NTozLTU2OjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjI2OCIgbG9jYXRvcj0iNTU6Ni01NTo4MiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIyNjkiIGxvY2F0b3I9IjU1Ojg5LTU1OjkzIiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIyNzEiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzAiIGxvY2F0b3I9IjU2OjgtNTY6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyODgiIGxvY2F0b3I9IjYzOjEtNjU6MTEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIE92ZXJkdWUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iRXZlcnkgc3Vic2VxdWVudCBjb250YWN0IHVudGlsIDM4IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjg4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZQpAcHNldWRvY29kZTogRXZlcnkgc3Vic2VxdWVudCBjb250YWN0IHVudGlsIDM4IHdlZWtzCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyODkiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9kYXk8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkyIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4OSIgbG9jYXRvcj0iNjQ6My02NToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIyOTAiIGxvY2F0b3I9IjY0OjYtNjQ6ODIiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMjkxIiBsb2NhdG9yPSI2NDo4OS02NDo5MyIgbmFtZT0iVG9kYXkiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMjkzIiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjkyIiBsb2NhdG9yPSI2NTo4LTY1OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzEwIiBsb2NhdG9yPSI3MzoxLTc1OjExIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0dlc3RhdGlvbmFsIGFnZSZxdW90OyAmbHQ7IDM4IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVHdvIHdlZWtzIGJlZm9yZSBiaXJ0aCBmb3IgdGhlIHByZWduYW5jeTsgaG93ZXZlciwgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuCiZxdW90O0dlc3RhdGlvbmFsIGFnZSZxdW90OyAmbHQ7IDM4IHdlZWtzCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbiZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTEiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1R3byB3ZWVrcyBiZWZvcmUgYmlydGgnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNSI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTEiIGxvY2F0b3I9Ijc0OjMtNzU6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMzEyIiBsb2NhdG9yPSI3NDo2LTc0OjgyIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjMxMyIgbG9jYXRvcj0iNzQ6ODktNzQ6MTEyIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iVHdvIHdlZWtzIGJlZm9yZSBiaXJ0aCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMzE2IiBhc1R5cGU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTUiIGxvY2F0b3I9Ijc1OjgtNzU6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNDgiIGxvY2F0b3I9IjQxOjEtNDc6OSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIENyZWF0ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBDcmVhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjcmVhdGUiIHZhbHVlPSJQcmVnbmFudCB3b21lbiB3aG8gaGF2ZSByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIHNob3VsZCByZWNlaXZlIDIgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGF0IHRoZSBlYXJsaWVzdCBvcHBvcnR1bml0eSBkdXJpbmcgcHJlZ25hbmN5IHdpdGggYSBtaW5pbWFsIGludGVydmFsIG9mIDQgd2Vla3MgYmV0d2VlbiBkb3NlcyBhbmQgdGhlIHNlY29uZCBkb3NlIGF0IGxlYXN0IDIgd2Vla3MgYmVmb3JlIGdpdmluZyBiaXJ0aC4iLz4KICAgICAgICAgICAgPGE6cyByPSIyNDgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBDcmVhdGUKQGNyZWF0ZTogUHJlZ25hbnQgd29tZW4gd2hvIGhhdmUgcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyBzaG91bGQgcmVjZWl2ZSAyIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBhdCB0aGUgZWFybGllc3Qgb3Bwb3J0dW5pdHkgZHVyaW5nIHByZWduYW5jeSB3aXRoIGEgbWluaW1hbCBpbnRlcnZhbCBvZiA0IHdlZWtzIGJldHdlZW4gZG9zZXMgYW5kIHRoZSBzZWNvbmQgZG9zZSBhdCBsZWFzdCAyIHdlZWtzIGJlZm9yZSBnaXZpbmcgYmlydGguCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0OSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidQcmVnbmFudCB3b21lbiB3aG8gaGF2ZSByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIHNob3VsZCByZWNlaXZlIDIgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGF0IHRoZSBlYXJsaWVzdCBvcHBvcnR1bml0eSBkdXJpbmcgcHJlZ25hbmN5IHdpdGggYSBtaW5pbWFsIGludGVydmFsIG9mIDQgd2Vla3MgYmV0d2VlbiBkb3NlcyBhbmQgdGhlIHNlY29uZCBkb3NlIGF0IGxlYXN0IDIgd2Vla3MgYmVmb3JlIGdpdmluZyBiaXJ0aC4nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpEdWUgRGF0ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKT3ZlcmR1ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpFeHBpcmF0aW9uOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDkiIGxvY2F0b3I9IjQyOjMtNDc6OSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIyNTAiIGxvY2F0b3I9IjQyOjYtNDI6ODIiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMzIwIiBsb2NhdG9yPSI0Mzo4LTQ2OjEwNCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA3IiBsb2NhdG9yPSI0Mzo4LTQ1OjEyNiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzAyIiBsb2NhdG9yPSI0Mzo4LTQ1OjEwOCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg1IiBsb2NhdG9yPSI0Mzo4LTQ0OjEyNSIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjgwIiBsb2NhdG9yPSI0Mzo4LTQ0OjExMCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjYzIiBsb2NhdG9yPSI0Mzo4LTQzOjM0NiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU3IiBsb2NhdG9yPSI0Mzo4LTQzOjMzMCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IlByZWduYW50IHdvbWVuIHdobyBoYXZlIHJlY2VpdmVkIG9ubHkgMyBkb3NlcyBvZiB0ZXRhbnVzLWNvbnRhaW5pbmcgdmFjY2luZXMgZHVyaW5nIGNoaWxkaG9vZCB3aXRob3V0IGJvb3N0ZXIgZG9zZXMgc2hvdWxkIHJlY2VpdmUgMiBkb3NlcyBvZiB0ZXRhbnVzLWNvbnRhaW5pbmcgdmFjY2luZXMgYXQgdGhlIGVhcmxpZXN0IG9wcG9ydHVuaXR5IGR1cmluZyBwcmVnbmFuY3kgd2l0aCBhIG1pbmltYWwgaW50ZXJ2YWwgb2YgNCB3ZWVrcyBiZXR3ZWVuIGRvc2VzIGFuZCB0aGUgc2Vjb25kIGRvc2UgYXQgbGVhc3QgMiB3ZWVrcyBiZWZvcmUgZ2l2aW5nIGJpcnRoLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI0MzozMzQtNDM6MzQ2IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iJiN4YTtEdWUgRGF0ZTogIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iNDQ6MTUtNDQ6MTEwIiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3NyIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3MiIgbG9jYXRvcj0iNDQ6MjQtNDQ6MTA5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODEiIGxvY2F0b3I9IjQ0OjExNC00NDoxMjUiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO092ZXJkdWU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyOTgiIGxvY2F0b3I9IjQ1OjE0LTQ1OjEwOCIgeHNpOnR5cGU9IlRvU3RyaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyOTkiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyOTQiIGxvY2F0b3I9IjQ1OjIzLTQ1OjEwNyIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIE92ZXJkdWUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDMiIGxvY2F0b3I9IjQ1OjExMi00NToxMjYiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0V4cGlyYXRpb246ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTciIGxvY2F0b3I9IjQ2OjE3LTQ2OjEwNCIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpIEV4cGlyYXRpb24iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMzIxIiBsb2NhdG9yPSI0Nzo4LTQ3OjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzM0IiBsb2NhdG9yPSIxNDU6MS0xNDY6NzIiIG5hbWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzM0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IFNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDIKKi8KZGVmaW5lICZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMzNiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VHdvIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzNiIgbG9jYXRvcj0iMTQ2OjMtMTQ2OjcyIiBuYW1lPSJUd28gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMjUiIGxvY2F0b3I9Ijk0OjEtOTc6NjciIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlc2NyaXB0aW9uIiB2YWx1ZT0iUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDIgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IkZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG8iIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlckRhdGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7IHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyIvPgogICAgICAgICAgICA8YTpzIHI9IjMyNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDIgZm9yIHByZWduYW50IHdvbWVuIHdobyByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgRFRQIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzCkB0cmlnZ2VyOiBGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG86IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMQpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7IHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMyNiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0ZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZAogIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIGN1cnJlbnRseSBwcmVnbmFudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMyNiIgbG9jYXRvcj0iOTU6My05Nzo2NyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNyIgbG9jYXRvcj0iOTU6My05Njo0MiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOCIgbG9jYXRvcj0iOTU6My05NTo2MiIgbmFtZT0iRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMwIiBsb2NhdG9yPSI5NjozLTk2OjQyIiBuYW1lPSJDbGllbnQgaXMgY3VycmVudGx5IHByZWduYW50IiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzMSIgbG9jYXRvcj0iOTc6My05Nzo2NyIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzNyIgbG9jYXRvcj0iOTc6Ny05Nzo2NyIgbmFtZT0iU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNTgiIGxvY2F0b3I9IjExNzoxLTExOToxMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA0ICd3ZWVrJyIvPgogICAgICAgICAgICA8YTpzIHI9IjM1OCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSArIDQgJ3dlZWsnCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzU5Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz40IHdlZWtzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjciPgogIGVsc2UgbnVsbDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzU5IiBsb2NhdG9yPSIxMTg6My0xMTk6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMzYwIiBsb2NhdG9yPSIxMTg6Ni0xMTg6ODIiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMzYxIiBsb2NhdG9yPSIxMTg6ODktMTE4OjEzMiIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzY1IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjYiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzYzIiBsb2NhdG9yPSIxMTg6ODktMTE4OjEyMiIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzY0IiBsb2NhdG9yPSIxMTg6MTI2LTExODoxMzIiIHZhbHVlPSI0IiB1bml0PSJ3ZWVrcyIgeHNpOnR5cGU9IlF1YW50aXR5Ii8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMzY4IiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzY3IiBsb2NhdG9yPSIxMTk6OC0xMTk6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzODUiIGxvY2F0b3I9IjEyNjoxLTEyODoxMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJFdmVyeSBzdWJzZXF1ZW50IGNvbnRhY3QgdW50aWwgMzggd2Vla3MiLz4KICAgICAgICAgICAgPGE6cyByPSIzODUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBFdmVyeSBzdWJzZXF1ZW50IGNvbnRhY3QgdW50aWwgMzggd2Vla3MKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM4NiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzg3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzg4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFRkIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+NCB3ZWVrczwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk0Ij4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4NiIgbG9jYXRvcj0iMTI3OjMtMTI4OjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjM4NyIgbG9jYXRvcj0iMTI3OjYtMTI3OjgyIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjM4OCIgbG9jYXRvcj0iMTI3Ojg5LTEyNzoxMzIiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5MiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzkzIiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5MCIgbG9jYXRvcj0iMTI3Ojg5LTEyNzoxMjIiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5MSIgbG9jYXRvcj0iMTI3OjEyNi0xMjc6MTMyIiB2YWx1ZT0iNCIgdW5pdD0id2Vla3MiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjM5NSIgYXNUeXBlPSJ0OkRhdGUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5NCIgbG9jYXRvcj0iMTI4OjgtMTI4OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDEyIiBsb2NhdG9yPSIxMzY6MS0xMzg6MTEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIEV4cGlyYXRpb24iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7R2VzdGF0aW9uYWwgYWdlJnF1b3Q7ICZsdDsgMzggd2Vla3MiLz4KICAgICAgICAgICAgPGE6cyByPSI0MTIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUd28gd2Vla3MgYmVmb3JlIGJpcnRoIGZvciB0aGUgcHJlZ25hbmN5OyBob3dldmVyLCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZCBhZnRlciBnaXZpbmcgYmlydGguCiZxdW90O0dlc3RhdGlvbmFsIGFnZSZxdW90OyAmbHQ7IDM4IHdlZWtzCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbiZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MTMiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1R3byB3ZWVrcyBiZWZvcmUgYmlydGgnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNyI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MTMiIGxvY2F0b3I9IjEzNzozLTEzODoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI0MTQiIGxvY2F0b3I9IjEzNzo2LTEzNzo4MiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI0MTUiIGxvY2F0b3I9IjEzNzo4OS0xMzc6MTEyIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iVHdvIHdlZWtzIGJlZm9yZSBiaXJ0aCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNDE4IiBhc1R5cGU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTciIGxvY2F0b3I9IjEzODo4LTEzODoxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0MCIgbG9jYXRvcj0iMTA0OjEtMTEwOjkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iUHJlZ25hbnQgd29tZW4gd2hvIGhhdmUgcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyBzaG91bGQgcmVjZWl2ZSAyIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBhdCB0aGUgZWFybGllc3Qgb3Bwb3J0dW5pdHkgZHVyaW5nIHByZWduYW5jeSB3aXRoIGEgbWluaW1hbCBpbnRlcnZhbCBvZiA0IHdlZWtzIGJldHdlZW4gZG9zZXMgYW5kIHRoZSBzZWNvbmQgZG9zZSBhdCBsZWFzdCAyIHdlZWtzIGJlZm9yZSBnaXZpbmcgYmlydGguIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgQ3JlYXRlCkBjcmVhdGU6IFByZWduYW50IHdvbWVuIHdobyBoYXZlIHJlY2VpdmVkIG9ubHkgMyBkb3NlcyBvZiB0ZXRhbnVzLWNvbnRhaW5pbmcgdmFjY2luZXMgZHVyaW5nIGNoaWxkaG9vZCB3aXRob3V0IGJvb3N0ZXIgZG9zZXMgc2hvdWxkIHJlY2VpdmUgMiBkb3NlcyBvZiB0ZXRhbnVzLWNvbnRhaW5pbmcgdmFjY2luZXMgYXQgdGhlIGVhcmxpZXN0IG9wcG9ydHVuaXR5IGR1cmluZyBwcmVnbmFuY3kgd2l0aCBhIG1pbmltYWwgaW50ZXJ2YWwgb2YgNCB3ZWVrcyBiZXR3ZWVuIGRvc2VzIGFuZCB0aGUgc2Vjb25kIGRvc2UgYXQgbGVhc3QgMiB3ZWVrcyBiZWZvcmUgZ2l2aW5nIGJpcnRoLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDEiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nUHJlZ25hbnQgd29tZW4gd2hvIGhhdmUgcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyBzaG91bGQgcmVjZWl2ZSAyIGRvc2VzIG9mIHRldGFudXMtY29udGFpbmluZyB2YWNjaW5lcyBhdCB0aGUgZWFybGllc3Qgb3Bwb3J0dW5pdHkgZHVyaW5nIHByZWduYW5jeSB3aXRoIGEgbWluaW1hbCBpbnRlcnZhbCBvZiA0IHdlZWtzIGJldHdlZW4gZG9zZXMgYW5kIHRoZSBzZWNvbmQgZG9zZSBhdCBsZWFzdCAyIHdlZWtzIGJlZm9yZSBnaXZpbmcgYmlydGguJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRHVlIERhdGUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCk92ZXJkdWU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgT3ZlcmR1ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MDUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRXhwaXJhdGlvbjogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgZWxzZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPicnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQxIiBsb2NhdG9yPSIxMDU6My0xMTA6OSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIzNDIiIGxvY2F0b3I9IjEwNTo2LTEwNTo4MiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI0MjIiIGxvY2F0b3I9IjEwNjo4LTEwOToxMDQiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwOSIgbG9jYXRvcj0iMTA2OjgtMTA4OjEyNiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA0IiBsb2NhdG9yPSIxMDY6OC0xMDg6MTA4IiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODIiIGxvY2F0b3I9IjEwNjo4LTEwNzoxMjUiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3NyIgbG9jYXRvcj0iMTA2OjgtMTA3OjExMCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU1IiBsb2NhdG9yPSIxMDY6OC0xMDY6MzQ2IiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDkiIGxvY2F0b3I9IjEwNjo4LTEwNjozMzAiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJQcmVnbmFudCB3b21lbiB3aG8gaGF2ZSByZWNlaXZlZCBvbmx5IDMgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGR1cmluZyBjaGlsZGhvb2Qgd2l0aG91dCBib29zdGVyIGRvc2VzIHNob3VsZCByZWNlaXZlIDIgZG9zZXMgb2YgdGV0YW51cy1jb250YWluaW5nIHZhY2NpbmVzIGF0IHRoZSBlYXJsaWVzdCBvcHBvcnR1bml0eSBkdXJpbmcgcHJlZ25hbmN5IHdpdGggYSBtaW5pbWFsIGludGVydmFsIG9mIDQgd2Vla3MgYmV0d2VlbiBkb3NlcyBhbmQgdGhlIHNlY29uZCBkb3NlIGF0IGxlYXN0IDIgd2Vla3MgYmVmb3JlIGdpdmluZyBiaXJ0aC4iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1MSIgbG9jYXRvcj0iMTA2OjMzNC0xMDY6MzQ2IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iJiN4YTtEdWUgRGF0ZTogIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3MyIgbG9jYXRvcj0iMTA3OjE1LTEwNzoxMTAiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzc0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzY5IiBsb2NhdG9yPSIxMDc6MjQtMTA3OjEwOSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIER1ZSBEYXRlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzc4IiBsb2NhdG9yPSIxMDc6MTE0LTEwNzoxMjUiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO092ZXJkdWU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDAiIGxvY2F0b3I9IjEwODoxNC0xMDg6MTA4IiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwMSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5NiIgbG9jYXRvcj0iMTA4OjIzLTEwODoxMDciIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSBPdmVyZHVlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA1IiBsb2NhdG9yPSIxMDg6MTEyLTEwODoxMjYiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0V4cGlyYXRpb246ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTkiIGxvY2F0b3I9IjEwOToxNy0xMDk6MTA0IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkgRXhwaXJhdGlvbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI0MjMiIGxvY2F0b3I9IjExMDo4LTExMDo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQzMyIgbG9jYXRvcj0iMjAzOjEtMjA0Ojc0IiBuYW1lPSJUaGlyZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iVGhpcmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMyIvPgogICAgICAgICAgICA8YTpzIHI9IjQzMyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGNvbXBsZXRlOiBUaGlyZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAzCiZxdW90O0ltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMmcXVvdDsgPSAmcXVvdDtDb21wbGV0ZSZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KQoqLwpkZWZpbmUgJnF1b3Q7VGhpcmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaHJlZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MzUiIGxvY2F0b3I9IjIwNDozLTIwNDo3NCIgbmFtZT0iVGhyZWUgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MjciIGxvY2F0b3I9IjE1NzoxLTE1OToxNDIiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSAzIGZvciBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIERUUCBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXIiIHZhbHVlPSJTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkbyIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgd2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iNDI3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMwpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSAzIGZvciBwcmVnbmFudCB3b21lbiB3aG8gcmVjZWl2ZWQgb25seSAzIGRvc2VzIG9mIERUUCBkdXJpbmcgY2hpbGRob29kIHdpdGhvdXQgYm9vc3RlciBkb3NlcwpAdHJpZ2dlcjogU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAyCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgd2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7CiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MjgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7U2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZAogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhpcmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDI4IiBsb2NhdG9yPSIxNTg6My0xNTk6MTQyIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI5IiBsb2NhdG9yPSIxNTg6My0xNTg6NjMiIG5hbWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzAiIGxvY2F0b3I9IjE1OTozLTE1OToxNDIiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzYiIGxvY2F0b3I9IjE1OTo3LTE1OToxNDIiIG5hbWU9IlRoaXJkIHRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDUzIiBsb2NhdG9yPSIxNzc6MS0xNzk6MTEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSArIDEgeWVhciBvciBkdXJpbmcgbmV4dCBwcmVnbmFuY3kiLz4KICAgICAgICAgICAgPGE6cyByPSI0NTMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSArIDEgeWVhciBvciBkdXJpbmcgbmV4dCBwcmVnbmFuY3kKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIER1ZSBEYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ1NCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgVGQgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4xIHllYXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2MiI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NTQiIGxvY2F0b3I9IjE3ODozLTE3OToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI0NTUiIGxvY2F0b3I9IjE3ODo2LTE3ODo2MyIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjQ1NiIgbG9jYXRvcj0iMTc4OjcwLTE3ODoxMTIiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2MCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDYxIiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1OCIgbG9jYXRvcj0iMTc4OjcwLTE3ODoxMDMiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1OSIgbG9jYXRvcj0iMTc4OjEwNy0xNzg6MTEyIiB2YWx1ZT0iMSIgdW5pdD0ieWVhciIgeHNpOnR5cGU9IlF1YW50aXR5Ii8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNDYzIiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDYyIiBsb2NhdG9yPSIxNzk6OC0xNzk6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MzkiIGxvY2F0b3I9IjE2NjoxLTE3MDo5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBDcmVhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjcmVhdGUiIHZhbHVlPSJBIHNpeHRoIGRvc2Ugd291bGQgYmUgbmVlZGVkIGF0IGxlYXN0IDEgeWVhciBhZnRlciB0aGUgZmlmdGggZG9zZSwgb3IgZHVyaW5nIHRoZSBuZXh0IHByZWduYW5jeS4iLz4KICAgICAgICAgICAgPGE6cyByPSI0MzkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIENyZWF0ZQpAY3JlYXRlOiBBIHNpeHRoIGRvc2Ugd291bGQgYmUgbmVlZGVkIGF0IGxlYXN0IDEgeWVhciBhZnRlciB0aGUgZmlmdGggZG9zZSwgb3IgZHVyaW5nIHRoZSBuZXh0IHByZWduYW5jeS4KKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NDAiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nQSBzaXh0aCBkb3NlIHdvdWxkIGJlIG5lZWRlZCBhdCBsZWFzdCAxIHllYXIgYWZ0ZXIgdGhlIGZpZnRoIGRvc2UsIG9yIGR1cmluZyB0aGUgbmV4dCBwcmVnbmFuY3kuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NDAiIGxvY2F0b3I9IjE2NzozLTE3MDo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjQ0MSIgbG9jYXRvcj0iMTY3OjYtMTY3OjYzIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNDcyIiBsb2NhdG9yPSIxNjg6OC0xNjk6OTEiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1MCIgbG9jYXRvcj0iMTY4OjgtMTY4OjEyMSIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ0IiBsb2NhdG9yPSIxNjg6OC0xNjg6MTA1IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iQSBzaXh0aCBkb3NlIHdvdWxkIGJlIG5lZWRlZCBhdCBsZWFzdCAxIHllYXIgYWZ0ZXIgdGhlIGZpZnRoIGRvc2UsIG9yIGR1cmluZyB0aGUgbmV4dCBwcmVnbmFuY3kuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDYiIGxvY2F0b3I9IjE2ODoxMDktMTY4OjEyMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjgiIGxvY2F0b3I9IjE2OToxNS0xNjk6OTEiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDY5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY0IiBsb2NhdG9yPSIxNjk6MjQtMTY5OjkwIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjQ3MyIgbG9jYXRvcj0iMTcwOjgtMTcwOjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDc3IiBsb2NhdG9yPSIxODY6MS0xODc6NiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgT3ZlcmR1ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIE92ZXJkdWUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDc3Ij4KICAgICAgICAgICAgICAgPGE6cyByPSI0NzgiPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcwoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgT3ZlcmR1ZSZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ3OCIgbG9jYXRvcj0iMTg3OjMtMTg3OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4MSIgbG9jYXRvcj0iMTk0OjEtMTk1OjYiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzIEV4cGlyYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSI0ODEiPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ4MiI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMgRXhwaXJhdGlvbiZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ4MiIgbG9jYXRvcj0iMTk1OjMtMTk1OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4NSIgbG9jYXRvcj0iMjExOjEtMjIwOjUiIG5hbWU9IlRlc3QgVmFsaWRhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9InRlc3QiIHZhbHVlPSJUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cyIvPgogICAgICAgICAgICA8YTpzIHI9IjQ4NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAmcXVvdDtUZXN0IFZhbGlkYXRpb24mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDg2Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5jYXNlCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDkwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDkxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQNjYuMyc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGR1cmluZyBwcmVnbmFuY3kpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFA2Ny40JzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0RUUDY4LjQnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkdXJpbmcgcHJlZ25hbmN5KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQNjkuMyc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTMxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzMiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0RUUDcwLjMnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFA3MS4yJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTUyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGlyZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J05vIHRlc3QgY2FzZSBzZXQnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVuZDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDg2IiBsb2NhdG9yPSIyMTI6My0yMjA6NSIgeHNpOnR5cGU9IkNhc2UiPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNDg3IiBsb2NhdG9yPSIyMTM6NS0yMTM6MTE0Ij4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNDg4IiBsb2NhdG9yPSIyMTM6MTAtMjEzOjMxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ5NSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTYiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5MyIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTQiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5MCIgbG9jYXRvcj0iMjEzOjEwLTIxMzoxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNDg5IiBsb2NhdG9yPSIyMTM6MTAtMjEzOjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkxIiBsb2NhdG9yPSIyMTM6MjMtMjEzOjMxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRFRQNjYuMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI1NTUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5NyIgbG9jYXRvcj0iMjEzOjM4LTIxMzoxMTQiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkdXJpbmcgcHJlZ25hbmN5KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI1NTYiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1NTciIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjU1OCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjQ5OCIgbG9jYXRvcj0iMjE0OjUtMjE0OjExNCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjQ5OSIgbG9jYXRvcj0iMjE0OjEwLTIxNDozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MDYiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTA3IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDQiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTA1IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDEiIGxvY2F0b3I9IjIxNDoxMC0yMTQ6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjUwMCIgbG9jYXRvcj0iMjE0OjEwLTIxNDoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwMiIgbG9jYXRvcj0iMjE0OjIzLTIxNDozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDY3LjQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNTU5IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDgiIGxvY2F0b3I9IjIxNDozOC0yMTQ6MTE0IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZHVyaW5nIHByZWduYW5jeSkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNTYwIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNTYxIiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1NjIiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI1MDkiIGxvY2F0b3I9IjIxNTo1LTIxNToxMTQiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI1MTAiIGxvY2F0b3I9IjIxNToxMC0yMTU6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTE3IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUxOCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTE1IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUxNiIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTEyIiBsb2NhdG9yPSIyMTU6MTAtMjE1OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI1MTEiIGxvY2F0b3I9IjIxNToxMC0yMTU6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MTMiIGxvY2F0b3I9IjIxNToyMy0yMTU6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFA2OC40IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjU2MyIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTE5IiBsb2NhdG9yPSIyMTU6MzgtMjE1OjExNCIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGR1cmluZyBwcmVnbmFuY3kpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjU2NCIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjU2NSIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNTY2IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNTIwIiBsb2NhdG9yPSIyMTY6NS0yMTY6OTUiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI1MjEiIGxvY2F0b3I9IjIxNjoxMC0yMTY6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTI4IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUyOSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTI2IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUyNyIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTIzIiBsb2NhdG9yPSIyMTY6MTAtMjE2OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI1MjIiIGxvY2F0b3I9IjIxNjoxMC0yMTY6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjQiIGxvY2F0b3I9IjIxNjoyMy0yMTY6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFA2OS4zIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjU2NyIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTMwIiBsb2NhdG9yPSIyMTY6MzgtMjE2Ojk1IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI1NjgiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1NjkiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjU3MCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjUzMSIgbG9jYXRvcj0iMjE3OjUtMjE3Ojk1Ij4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNTMyIiBsb2NhdG9yPSIyMTc6MTAtMjE3OjMxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUzOSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NDAiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzNyIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MzgiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzNCIgbG9jYXRvcj0iMjE3OjEwLTIxNzoxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNTMzIiBsb2NhdG9yPSIyMTc6MTAtMjE3OjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTM1IiBsb2NhdG9yPSIyMTc6MjMtMjE3OjMxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRFRQNzAuMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI1NzEiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0MSIgbG9jYXRvcj0iMjE3OjM4LTIxNzo5NSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNTcyIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNTczIiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1NzQiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI1NDIiIGxvY2F0b3I9IjIxODo1LTIxODoxNzMiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI1NDMiIGxvY2F0b3I9IjIxODoxMC0yMTg6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTUwIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ4IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU0OSIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ1IiBsb2NhdG9yPSIyMTg6MTAtMjE4OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI1NDQiIGxvY2F0b3I9IjIxODoxMC0yMTg6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NDYiIGxvY2F0b3I9IjIxODoyMy0yMTg6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFA3MS4yIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjU3NSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTUyIiBsb2NhdG9yPSIyMTg6MzgtMjE4OjE3MyIgbmFtZT0iVGhpcmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iNTc2IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iNTc3IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1NzgiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjU3OSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTUzIiBsb2NhdG9yPSIyMTk6MTAtMjE5OjI3IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iTm8gdGVzdCBjYXNlIHNldCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI1ODAiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI1ODEiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjU4MiIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="^^xsd:base64Binary ]
  ] ) . #