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
| Draft as of 2025-11-11 |
@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 "IMMZD2DTPolioElements"] ; # 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;\">IMMZD2DTPolioElements</td>\n </tr>\n \n\n \n \n <tr>\n <th scope=\"row\"><b>Id: </b></th>\n <td style=\"padding-left: 4px;\">IMMZD2DTPolioElements</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-IMMZD2DTPolioElements.html\">IMMZD2DTPolioElements</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-11 19:50:47+0000</td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Publisher: </b></th>\n <td style=\"padding-left: 4px;\">WHO</td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Description: </b></th>\n <td style=\"padding-left: 4px;\"><div><p>This library defines context-independent elements for Polio used throughout the Immunization CPG</p>\n</div></td>\n </tr>\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n <tr>\n <th scope=\"row\"><b>Related Artifacts: </b></th>\n <td style=\"padding-left: 4px;\">\n \n \n \n <p><b>Dependencies</b></p>\n <ul>\n \n <li><a href=\"Library-WHOConcepts.html\">WHOConcepts</a></li>\n \n <li><a href=\"Library-WHOCommon.html\">WHOCommon</a></li>\n \n <li><a href=\"Library-WHOElements.html\">WHOElements</a></li>\n \n <li><a href=\"Library-IMMZCommon.html\">IMMZCommon</a></li>\n \n <li><a href=\"Library-IMMZConcepts.html\">IMMZConcepts</a></li>\n \n <li><a href=\"Library-IMMZElements.html\">IMMZElements</a></li>\n \n </ul>\n \n \n \n \n \n </td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Parameters: </b></th>\n <td style=\"padding-left: 4px;\">\n <table class=\"grid-dict\">\n <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n \n <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Polio Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Polio Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio Dose 0 Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Polio Dose 0 Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>bOPV birth dose (a zero dose) was not administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is less than 1 week</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than or equal to 1 week</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>bOPV birth dose (a zero dose) was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is less than 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>No poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is between 6 weeks and 3 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than 3 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>One poliovirus primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is between 6 weeks and 14 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>bOPV Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Date of Latest bOPV Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest bOPV dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest bOPV dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio bOPV Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Polio bOPV Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The poliovirus dose administered is bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than or equal to 14 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The poliovirus dose administered is IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>IPV Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Date of Latest IPV Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest IPV dose was administered less than 4 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest IPV dose was administered more than 4 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Two poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The two doses administered are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>From the two doses administered one is bOPV and one is IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The two doses administered are IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Three poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The three doses administered are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is less than 14 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>From the three doses administered, one is IPV and two are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>From the three doses administered, one is bOPV and two are IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Four poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>From the four doses administered, one is IPV and three are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>From the four doses administered, two are IPV and two are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Five poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is less than 8 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than or equal to 8 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Date of Latest Polio Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest poliovirus dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest poliovirus dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than or equal to 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Date of First Primary Series Polio Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age was more than 6 weeks when the primary series was started</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age was 6 weeks when the primary series was started</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest poliovirus dose was administered less than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest poliovirus dose was administered more than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio Booster Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Polio Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>No polio booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Polio IPV Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Polio IPV Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n </table>\n </td>\n </tr>\n \n\n \n\n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n <tr><td><pre><code class=\"language-cql\">\n/*\n * Library: IMMZD2DTPolioElements\n */\nlibrary IMMZD2DTPolioElements\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude WHOConcepts\ninclude WHOCommon called WC\ninclude WHOElements called WE\n\ninclude IMMZCommon called Common\ninclude IMMZConcepts called Concepts\ninclude IMMZElements called Elements\n\n\ncontext Patient\n\n/*\n@internal: Polio containing Doses Administered to Patient\n*/\ndefine \"Polio Doses Administered to Patient\":\n Elements.\"Doses Administered to Patient\" I\n where\n I.vaccineCode in Concepts.\"Poliovirus-containing vaccines\"\n\n/*\n@internal: Polio containing Doses Administered to Patient that are in the Primary series\n*/\ndefine \"Polio Primary Series Doses Administered to Patient\":\n \"Polio Doses Administered to Patient\".seriesPrimary()\n\n/*\n@internal: Number of Polio Primary Series doses\n*/\ndefine \"Number of Polio Primary Series Doses Administered\":\n Count(\"Polio Primary Series Doses Administered to Patient\")\n\n/*\n@input: bOPV birth dose (a zero dose) was not administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Dose 0\" AND \"Birth dose\" = TRUE) = 0\n@code: bOPV birth dose (a zero dose) was not administered-146\n@decision: IMMZ.D2.DT.Polio.Birth dose: Birth dose administration as part of \"bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (in countries that are poliomyelitis (polio)-endemic countries or at high risk of importation and subsequent spread of polio that follow the combined bOPV–IPV schedule)\n*/\ndefine \"bOPV birth dose (a zero dose) was not administered\":\n \"Number of Polio Dose 0 Doses Administered\" = 0\n\n/*\n@input: Client's age is less than 1 week\n@pseudocode: Today's date − \"Date of birth\" < 1 week\n@code: Client's age is less than 1 week-39\n@decision: IMMZ.D2.DT.Polio.Birth dose: Birth dose administration as part of \"bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (in countries that are poliomyelitis (polio)-endemic countries or at high risk of importation and subsequent spread of polio that follow the combined bOPV–IPV schedule)\n*/\ndefine \"Client's age is less than 1 week\":\n Elements.\"Current Patient Age In Weeks\" < 1\n\n/*\n@input: Client's age is more than or equal to 1 week\n@pseudocode: Today's date − \"Date of birth\" ≥ 1 week\n@code: Client's age is more than or equal to 1 week-39\n@decision: IMMZ.D2.DT.Polio.Birth dose: Birth dose administration as part of \"bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (in countries that are poliomyelitis (polio)-endemic countries or at high risk of importation and subsequent spread of polio that follow the combined bOPV–IPV schedule)\n*/\ndefine \"Client's age is more than or equal to 1 week\":\n Elements.\"Current Patient Age In Weeks\" >= 1\n\n/*\n@input: bOPV birth dose (a zero dose) was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Dose 0\" AND \"Birth dose\" = TRUE) = 1\n@code: bOPV birth dose (a zero dose) was administered-146\n@decision: IMMZ.D2.DT.Polio.Birth dose: Birth dose administration as part of \"bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (in countries that are poliomyelitis (polio)-endemic countries or at high risk of importation and subsequent spread of polio that follow the combined bOPV–IPV schedule)\n*/\ndefine \"bOPV birth dose (a zero dose) was administered\":\n \"Number of Polio Dose 0 Doses Administered\" = 1\n\n/*\n@input: Client's age is less than 6 weeks\n@pseudocode: Today's date − \"Date of birth\" < 6 weeks\n@code: Client's age is less than 6 weeks-40\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Client's age is less than 6 weeks\":\n Elements.\"Current Patient Age In Weeks\" < 6\n\n/*\n@input: No poliovirus primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 0\n@code: No poliovirus primary series doses were administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"No poliovirus primary series doses were administered\":\n \"Number of Polio Primary Series Doses Administered\" = 0\n\n/*\n@input: Client's age is between 6 weeks and 3 months\n@pseudocode: 6 weeks ≤ Today's date − \"Date of birth\" ≤ 3 months\n@code: Client's age is between 6 weeks and 3 months-51\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Client's age is between 6 weeks and 3 months\":\n 6 <= Elements.\"Current Patient Age In Weeks\"\n and Elements.\"Current Patient Age In Months\" <= 3\n\n/*\n@input: Client's age is more than 3 months\n@pseudocode: Today's date − \"Date of birth\" > 3 months\n@code: Client's age is more than 3 months-41\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Client's age is more than 3 months\":\n Elements.\"Current Patient Age In Months\" > 3\n\n/*\n@input: One poliovirus primary series dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 1\n@code: One poliovirus primary series dose was administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"One poliovirus primary series dose was administered\":\n \"Number of Polio Primary Series Doses Administered\" = 1\n\n/*\n@input: Client's age is between 6 weeks and 14 weeks\n@pseudocode: 6 weeks ≤ Today's date − \"Date of birth\" < 14 weeks\n@code: Client's age is between 6 weeks and 14 weeks-51\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Client's age is between 6 weeks and 14 weeks\":\n 6 <= Elements.\"Current Patient Age In Weeks\"\n and Elements.\"Current Patient Age In Weeks\" < 14\n\n/*\n@input: The latest bOPV dose was administered less than 4 weeks ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of poliovirus dose\" = \"bOPV\") < 4 weeks\n@code: The latest bOPV dose was administered less than 4 weeks ago-159\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The latest bOPV dose was administered less than 4 weeks ago\":\n \"Date of Latest bOPV Dose\" is not null\n and duration in weeks between \"Date of Latest bOPV Dose\" and Now() < 4\n\n/*\n@input: The latest bOPV dose was administered more than 4 weeks ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of poliovirus dose\" = \"bOPV\") ≥ 4 weeks\n@code: The latest bOPV dose was administered more than 4 weeks ago-159\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The latest bOPV dose was administered more than 4 weeks ago\":\n not(\"The latest bOPV dose was administered less than 4 weeks ago\")\n\n/*\n@input: The poliovirus dose administered is bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 1\n@code: The poliovirus dose administered is bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The poliovirus dose administered is bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 1\n\n/*\n@input: Client's age is more than or equal to 14 weeks\n@pseudocode: Today's date − \"Date of birth\" ≥ 14 weeks\n@code: Client's age is more than or equal to 14 weeks-41\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Client's age is more than or equal to 14 weeks\":\n Elements.\"Current Patient Age In Weeks\" >= 14\n\n/*\n@input: The poliovirus dose administered is IPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 0\n@code: The poliovirus dose administered is IPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The poliovirus dose administered is IPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 0\n\n/*\n@input: The latest IPV dose was administered less than 4 months ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of poliovirus dose\" = \"IPV\") < 4 months\n@code: The latest IPV dose was administered less than 4 months ago-159\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The latest IPV dose was administered less than 4 months ago\":\n \"Date of Latest IPV Dose\" is not null\n and duration in months between \"Date of Latest IPV Dose\" and Now() < 4\n\n/*\n@input: The latest IPV dose was administered more than 4 months ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of poliovirus dose\" = \"IPV\") ≥ 4 months\n@code: The latest IPV dose was administered more than 4 months ago-159\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The latest IPV dose was administered more than 4 months ago\":\n not(\"The latest IPV dose was administered less than 4 months ago\")\n\n/*\n@input: Two poliovirus primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 2\n@code: Two poliovirus primary series doses were administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Two poliovirus primary series doses were administered\":\n \"Number of Polio Primary Series Doses Administered\" = 2\n\n/*\n@input: The two doses administered are bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 2\n@code: The two doses administered are bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The two doses administered are bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 2\n\n/*\n@input: From the two doses administered one is bOPV and one is IPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 1\n@code: From the two doses administered one is bOPV and one is IPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"From the two doses administered one is bOPV and one is IPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 1\n\n/*\n@input: The two doses administered are IPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 0\n@code: The two doses administered are IPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The two doses administered are IPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 0\n\n/*\n@input: Three poliovirus primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 3\n@code: Three poliovirus primary series doses were administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Three poliovirus primary series doses were administered\":\n \"Number of Polio Primary Series Doses Administered\" = 3\n\n/*\n@input: The three doses administered are bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 3\n@code: The three doses administered are bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"The three doses administered are bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 3\n\n/*\n@input: Client's age is less than 14 weeks\n@pseudocode: Today's date − \"Date of birth\" < 14 weeks\n@code: Client's age is less than 14 weeks-41\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Client's age is less than 14 weeks\":\n Elements.\"Current Patient Age In Weeks\" < 14\n\n/*\n@input: From the three doses administered, one is IPV and two are bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 2\n@code: From the three doses administered, one is IPV and two are bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"From the three doses administered, one is IPV and two are bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 2\n\n/*\n@input: From the three doses administered, one is bOPV and two are IPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 1\n@code: From the three doses administered, one is bOPV and two are IPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"From the three doses administered, one is bOPV and two are IPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 1\n\n/*\n@input: Four poliovirus primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 4\n@code: Four poliovirus primary series doses were administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n*/\ndefine \"Four poliovirus primary series doses were administered\":\n \"Number of Polio Primary Series Doses Administered\" = 4\n\n/*\n@input: From the four doses administered, one is IPV and three are bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 3\n@code: From the four doses administered, one is IPV and three are bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"From the four doses administered, one is IPV and three are bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 3\n\n/*\n@input: From the four doses administered, two are IPV and two are bOPV\n@pseudocode: Count of vaccines administered (where \"Type of poliovirus dose\" = \"bOPV\" and \"Type of dose\" = \"Primary series\") = 2\n@code: From the four doses administered, two are IPV and two are bOPV-115\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"From the four doses administered, two are IPV and two are bOPV\":\n \"Number of Polio bOPV Primary Series Doses Administered\" = 2\n\n/*\n@input: Five poliovirus primary series doses were administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Primary series\") = 5\n@code: Five poliovirus primary series doses were administered-130\n@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: \"Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)\" schedule (applicable for all countries)\n*/\ndefine \"Five poliovirus primary series doses were administered\":\n \"Number of Polio Primary Series Doses Administered\" = 5\n\n/*\n@input: Client's age is less than 8 weeks\n@pseudocode: Today's date − \"Date of birth\" < 8 weeks\n@code: Client's age is less than 8 weeks-40\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n*/\ndefine \"Client's age is less than 8 weeks\":\n Elements.\"Current Patient Age In Weeks\" < 8\n\n/*\n@input: Client's age is more than or equal to 8 weeks\n@pseudocode: Today's date − \"Date of birth\" ≥ 8 weeks\n@code: Client's age is more than or equal to 8 weeks-40\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n*/\ndefine \"Client's age is more than or equal to 8 weeks\":\n Elements.\"Current Patient Age In Weeks\" >= 8\n\n/*\n@input: The latest poliovirus dose was administered less than 4 weeks ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\") < 4 weeks\n@code: The latest poliovirus dose was administered less than 4 weeks ago-120\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"The latest poliovirus dose was administered less than 4 weeks ago\":\n \"Date of Latest Polio Dose\" is not null\n and duration in weeks between \"Date of Latest Polio Dose\" and Now() < 4\n\n/*\n@input: The latest poliovirus dose was administered more than 4 weeks ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\") ≥ 4 weeks\n@code: The latest poliovirus dose was administered more than 4 weeks ago-120\n@decision: IMMZ.D2.DT.Polio.Sequential IPV–bOPV: Sequential \"Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)\" schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"The latest poliovirus dose was administered more than 4 weeks ago\":\n not(\"The latest poliovirus dose was administered less than 4 weeks ago\")\n\n/*\n@input: Client's age is more than or equal to 6 weeks\n@pseudocode: Today's date − \"Date of birth\" ≥ 6 weeks\n@code: Client's age is more than or equal to 6 weeks-40\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Client's age is more than or equal to 6 weeks\":\n Elements.\"Current Patient Age In Weeks\" >= 6\n\n/*\n@input: Client's age was more than 6 weeks when the primary series was started\n@pseudocode: \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" AND \"Dose number\" = 1) − \"Date of birth\" > 6 weeks\n@code: Client's age was more than 6 weeks when the primary series was started-138\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Client's age was more than 6 weeks when the primary series was started\":\n AgeInWeeksAt(\"Date of First Primary Series Polio Dose\") > 6\n\n/*\n@input: Client's age was 6 weeks when the primary series was started\n@pseudocode: \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" AND \"Dose number\" = 1) − \"Date of birth\" = 6 weeks\n@code: Client's age was 6 weeks when the primary series was started-138\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Client's age was 6 weeks when the primary series was started\":\n AgeInWeeksAt(\"Date of First Primary Series Polio Dose\") = 6\n\n/*\n@input: The latest poliovirus dose was administered less than 6 months ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\") < 6 months\n@code: The latest poliovirus dose was administered less than 6 months ago-121\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"The latest poliovirus dose was administered less than 6 months ago\":\n \"Date of Latest Polio Dose\" is not null\n and duration in months between \"Date of Latest Polio Dose\" and Now() < 6\n\n/*\n@input: The latest poliovirus dose was administered more than 6 months ago\n@pseudocode: Today's date − Latest \"Date and time of vaccination\" (where \"Vaccine type\" = \"Poliovirus-containing vaccines\") ≥ 6 months\n@code: The latest poliovirus dose was administered more than 6 months ago-121\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"The latest poliovirus dose was administered more than 6 months ago\":\n not(\"The latest poliovirus dose was administered less than 6 months ago\")\n\n/*\n@input: No polio booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 0\n@code: No polio booster dose was administered-128\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"No polio booster dose was administered\":\n \"Number of Polio Booster Series Doses Administered\" = 0\n\n/*\n@input: Polio booster dose was administered\n@pseudocode: Count of vaccines administered (where \"Vaccine type\" = \"Poliovirus-containing vaccines\" and \"Type of dose\" = \"Booster dose\") = 1\n@code: Polio booster dose was administered-128\n@decision: IMMZ.D2.DT.Polio.IPV-only: Inactivated polio vaccine (IPV)-only (in countries, in polio-free regions, with a very low risk of importation and sustained high routine immunization coverage (third dose of the diphtheria–tetanus–pertussis vaccine [DTP3] > 90%)\n*/\ndefine \"Polio booster dose was administered\":\n \"Number of Polio Booster Series Doses Administered\" = 1\n\n/*\n@internal: bOPV Doses Administered to Patient\n*/\ndefine \"bOPV Doses Administered to Patient\":\n \"Polio Doses Administered to Patient\" I\n where I.typeOfDose() ~ Concepts.\"bOPV\"\n\n/*\n@internal: IPV Doses Administered to Patient\n*/\ndefine \"IPV Doses Administered to Patient\":\n \"Polio Doses Administered to Patient\" I\n where I.typeOfDose() ~ Concepts.\"IPV\"\n\n/*\n@internal: Date of Latest Polio Dose\n*/\ndefine \"Date of Latest Polio Dose\":\n date from start of \"Polio Doses Administered to Patient\".mostRecent().occurrence.toInterval()\n\n/*\n@internal: Date of Latest bOPV Dose\n*/\ndefine \"Date of Latest bOPV Dose\":\n date from start of \"bOPV Doses Administered to Patient\".mostRecent().occurrence.toInterval()\n\n/*\n@internal: Date of Latest IPV Dose\n*/\ndefine \"Date of Latest IPV Dose\":\n date from start of \"IPV Doses Administered to Patient\".mostRecent().occurrence.toInterval()\n\n/*\n@internal: Polio Dose 0 Doses Administered to Patient\n*/\ndefine \"Polio Dose 0 Doses Administered to Patient\":\n \"Polio Doses Administered to Patient\".seriesDose0()\n\n/*\n@internal: Number of Polio Dose 0 Doses Administered\n*/\ndefine \"Number of Polio Dose 0 Doses Administered\":\n Count(\"Polio Dose 0 Doses Administered to Patient\")\n\n/*\n@internal: Date of First Primary Series Polio Dose\n*/\ndefine \"Date of First Primary Series Polio Dose\":\n date from start of \"Polio Primary Series Doses Administered to Patient\".earliest().occurrence.toInterval()\n\n/*\n@internal: Polio bOPV Primary Series Doses Administered to Patient\n*/\ndefine \"Polio bOPV Primary Series Doses Administered to Patient\":\n \"Polio Primary Series Doses Administered to Patient\" I\n where I.typeOfDose() ~ Concepts.\"bOPV\"\n\n/*\n@internal: Polio IPV Primary Series Doses Administered to Patient\n*/\ndefine \"Polio IPV Primary Series Doses Administered to Patient\":\n \"Polio Primary Series Doses Administered to Patient\" I\n where I.typeOfDose() ~ Concepts.\"IPV\"\n\n/*\n@internal: Number of Polio bOPV Primary Series Doses Administered\n*/\ndefine \"Number of Polio bOPV Primary Series Doses Administered\":\n Count(\"Polio bOPV Primary Series Doses Administered to Patient\")\n\n/*\n@internal: Number of Polio IPV Primary Series Doses Administered\n*/\ndefine \"Number of Polio IPV Primary Series Doses Administered\":\n Count(\"Polio IPV Primary Series Doses Administered to Patient\")\n\n/*\n@internal: Polio Booster Series Doses Administered to Patient\n*/\ndefine \"Polio Booster Series Doses Administered to Patient\":\n \"Polio Doses Administered to Patient\".seriesBooster()\n\n/*\n@internal: Number of Polio Booster Series Doses Administered\n*/\ndefine \"Number of Polio Booster Series Doses Administered\":\n Count(\"Polio Booster Series Doses Administered to Patient\")\n</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n \n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><b>Content: </b> application/elm+xml</th></tr>\n <tr><td><pre><code>Encoded data (198852 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/IMMZD2DTPolioElements"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/IMMZD2DTPolioElements> ] ; # fhir:version [ fhir:v "0.2.0"] ; # fhir:name [ fhir:v "IMMZD2DTPolioElements"] ; # fhir:title [ fhir:v "IMMZD2DTPolioElements"] ; # 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-11T19:50:47+00:00"^^xsd:dateTime] ; # fhir:publisher [ fhir:v "WHO"] ; # fhir:contact ( [ fhir:name [ fhir:v "WHO" ] ; ( fhir:telecom [ fhir:system [ fhir:v "url" ] ; fhir:value [ fhir:v "http://who.int" ] ] ) ] ) ; # fhir:description [ fhir:v "This library defines context-independent elements for Polio used throughout the Immunization CPG"] ; # fhir:relatedArtifact ( [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library WHOConcepts" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/WHOConcepts"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/WHOConcepts> ] ] [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library WC" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/WHOCommon"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/WHOCommon> ] ] [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library WE" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/WHOElements"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/WHOElements> ] ] [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library Common" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/IMMZCommon"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/IMMZCommon> ] ] [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library Concepts" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/IMMZConcepts"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/IMMZConcepts> ] ] [ fhir:type [ fhir:v "depends-on" ] ; fhir:display [ fhir:v "Library Elements" ] ; fhir:resource [ fhir:v "http://smart.who.int/immunizations/Library/IMMZElements"^^xsd:anyURI ; fhir:l <http://smart.who.int/immunizations/Library/IMMZElements> ] ] ) ; # fhir:parameter ( [ fhir:name [ fhir:v "Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "Patient" ] ] [ fhir:name [ fhir:v "Polio Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Polio Primary Series Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Number of Polio Primary Series Doses Administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "integer" ] ] [ fhir:name [ fhir:v "Polio Dose 0 Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Number of Polio Dose 0 Doses Administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "integer" ] ] [ fhir:name [ fhir:v "bOPV birth dose (a zero dose) was not administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is less than 1 week" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is more than or equal to 1 week" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "bOPV birth dose (a zero 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 "Client's age is less than 6 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "No poliovirus primary series doses were administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is between 6 weeks and 3 months" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is more than 3 months" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "One poliovirus primary series dose was administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is between 6 weeks and 14 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "bOPV Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Date of Latest bOPV Dose" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "The latest bOPV dose was administered less than 4 weeks ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The latest bOPV dose was administered more than 4 weeks ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Polio bOPV Primary Series Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Number of Polio bOPV Primary Series Doses Administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "integer" ] ] [ fhir:name [ fhir:v "The poliovirus dose administered is bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is more than or equal to 14 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The poliovirus dose administered is IPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "IPV Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Date of Latest IPV Dose" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "The latest IPV dose was administered less than 4 months ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The latest IPV dose was administered more than 4 months ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Two poliovirus primary series doses were administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The two doses administered are bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "From the two doses administered one is bOPV and one is IPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The two doses administered are IPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Three poliovirus primary series doses were administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The three doses administered are bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is less than 14 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "From the three doses administered, one is IPV and two are bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "From the three doses administered, one is bOPV and two are IPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Four poliovirus primary series doses were administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "From the four doses administered, one is IPV and three are bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "From the four doses administered, two are IPV and two are bOPV" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Five poliovirus primary series doses were administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is less than 8 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is more than or equal to 8 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Date of Latest Polio Dose" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "The latest poliovirus dose was administered less than 4 weeks ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The latest poliovirus dose was administered more than 4 weeks ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age is more than or equal to 6 weeks" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Date of First Primary Series Polio Dose" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "date" ] ] [ fhir:name [ fhir:v "Client's age was more than 6 weeks when the primary series was started" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Client's age was 6 weeks when the primary series was started" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The latest poliovirus dose was administered less than 6 months ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "The latest poliovirus dose was administered more than 6 months ago" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "boolean" ] ] [ fhir:name [ fhir:v "Polio Booster Series Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Number of Polio Booster Series Doses Administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "integer" ] ] [ fhir:name [ fhir:v "No polio 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 "Polio 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 "Polio IPV Primary Series Doses Administered to Patient" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "*" ] ; fhir:type [ fhir:v "Immunization" ] ] [ fhir:name [ fhir:v "Number of Polio IPV Primary Series Doses Administered" ] ; fhir:use [ fhir:v "out" ] ; fhir:min [ fhir:v 0 ] ; fhir:max [ fhir:v "1" ] ; fhir:type [ fhir:v "integer" ] ] ) ; # fhir:content ( [ fhir:contentType [ fhir:v "text/cql" ] ; fhir:data [ fhir:v "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFBvbGlvRWxlbWVudHMKICAqLwpsaWJyYXJ5IElNTVpEMkRUUG9saW9FbGVtZW50cwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29uY2VwdHMKaW5jbHVkZSBXSE9Db21tb24gY2FsbGVkIFdDCmluY2x1ZGUgV0hPRWxlbWVudHMgY2FsbGVkIFdFCgppbmNsdWRlIElNTVpDb21tb24gY2FsbGVkIENvbW1vbgppbmNsdWRlIElNTVpDb25jZXB0cyBjYWxsZWQgQ29uY2VwdHMKaW5jbHVkZSBJTU1aRWxlbWVudHMgY2FsbGVkIEVsZW1lbnRzCgoKY29udGV4dCBQYXRpZW50CgovKgpAaW50ZXJuYWw6IFBvbGlvIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogUG9saW8gY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICJQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiUG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiRG9zZSAwIiBBTkQgIkJpcnRoIGRvc2UiID0gVFJVRSkgPSAwCkBjb2RlOiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgbm90IGFkbWluaXN0ZXJlZC0xNDYKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB3ZWVrCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDEgd2VlawpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWstMzkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWsiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHdlZWsKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxIHdlZWsKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5CaXJ0aCBkb3NlOiBCaXJ0aCBkb3NlIGFkbWluaXN0cmF0aW9uIGFzIHBhcnQgb2YgImJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHRoYXQgYXJlIHBvbGlvbXllbGl0aXMgKHBvbGlvKS1lbmRlbWljIGNvdW50cmllcyBvciBhdCBoaWdoIHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1YnNlcXVlbnQgc3ByZWFkIG9mIHBvbGlvIHRoYXQgZm9sbG93IHRoZSBjb21iaW5lZCBiT1BW4oCTSVBWIHNjaGVkdWxlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gMQoKLyoKQGlucHV0OiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkRvc2UgMCIgQU5EICJCaXJ0aCBkb3NlIiA9IFRSVUUpID0gMQpAY29kZTogYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIGFkbWluaXN0ZXJlZC0xNDYKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIDwgNgoKLyoKQGlucHV0OiBObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIk5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpCAzIG1vbnRocwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMtNTEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMiOgogIDYgPD0gRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiCiAgYW5kIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPD0gMwoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA+IDMgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMyBtb250aHMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPiAzCgovKgpAaW5wdXQ6IE9uZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogT25lIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIk9uZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxNCB3ZWVrcwpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxNCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MtNTEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MiOgogIDYgPD0gRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiCiAgYW5kIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDE0CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIpIDwgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgYk9QViBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZSIgYW5kIE5vdygpIDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IGJPUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiKSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAxCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxNCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxNCB3ZWVrcy00MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gMTQKCi8qCkBpbnB1dDogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgSVBWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBUaGUgcG9saW92aXJ1cyBkb3NlIGFkbWluaXN0ZXJlZCBpcyBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBwb2xpb3ZpcnVzIGRvc2UgYWRtaW5pc3RlcmVkIGlzIElQViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiSVBWIikgPCA0IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IElQViBEb3NlIiBhbmQgTm93KCkgPCA0CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiSVBWIikg4omlIDQgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgbW9udGhzIGFnby0xNTkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IG1vbnRocyBhZ28iOgogIG5vdCgiVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28iKQoKLyoKQGlucHV0OiBUd28gcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMgpAY29kZTogVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDIKCi8qCkBpbnB1dDogVGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQGNvZGU6IFRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IEZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGNvZGU6IEZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMwpAY29kZTogVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMzAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaHJlZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAzCgovKgpAaW5wdXQ6IFRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKQGNvZGU6IFRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMwoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDE0IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTQgd2Vla3MiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDE0CgovKgpAaW5wdXQ6IEZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdHdvIGFyZSBiT1BWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBjb2RlOiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHR3byBhcmUgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0d28gYXJlIGJPUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMgoKLyoKQGlucHV0OiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBiT1BWIGFuZCB0d28gYXJlIElQVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgYk9QViBhbmQgdHdvIGFyZSBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIGJPUFYgYW5kIHR3byBhcmUgSVBWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogRm91ciBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSA0CkBjb2RlOiBGb3VyIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQoqLwpkZWZpbmUgIkZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gNAoKLyoKQGlucHV0OiBGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdGhyZWUgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKQGNvZGU6IEZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0aHJlZSBhcmUgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHRocmVlIGFyZSBiT1BWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDMKCi8qCkBpbnB1dDogRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIHR3byBhcmUgSVBWIGFuZCB0d28gYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQGNvZGU6IEZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCB0d28gYXJlIElQViBhbmQgdHdvIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgdHdvIGFyZSBJUFYgYW5kIHR3byBhcmUgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IEZpdmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gNQpAY29kZTogRml2ZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJGaXZlIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDUKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDggd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOCB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOCB3ZWVrcyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIDwgOAoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSA4IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA+PSA4CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIDwgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTIwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gd2Vla3MgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSIgYW5kIE5vdygpIDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiKSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28tMTIwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIpCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNiB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omlIDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA2IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gNgoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkCkBwc2V1ZG9jb2RlOiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgQU5EICJEb3NlIG51bWJlciIgPSAxKSDiiJIgIkRhdGUgb2YgYmlydGgiID4gNiB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQiOgogIEFnZUluV2Vla3NBdCgiRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlIikgPiA2CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZApAcHNldWRvY29kZTogIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIEFORCAiRG9zZSBudW1iZXIiID0gMSkg4oiSICJEYXRlIG9mIGJpcnRoIiA9IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZCI6CiAgQWdlSW5XZWVrc0F0KCJEYXRlIG9mIEZpcnN0IFByaW1hcnkgU2VyaWVzIFBvbGlvIERvc2UiKSA9IDYKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIDwgNiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnby0xMjEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGFuZCBOb3coKSA8IDYKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIOKJpSA2IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvLTEyMQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyIpCgovKgpAaW5wdXQ6IE5vIHBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMApAY29kZTogTm8gcG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI4CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJObyBwb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBQb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKQGNvZGU6IFBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyOApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiUG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnRlcm5hbDogYk9QViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgImJPUFYgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlIEkudHlwZU9mRG9zZSgpIH4gQ29uY2VwdHMuImJPUFYiCgovKgpAaW50ZXJuYWw6IElQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIklQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUgSS50eXBlT2ZEb3NlKCkgfiBDb25jZXB0cy4iSVBWIgoKLyoKQGludGVybmFsOiBEYXRlIG9mIExhdGVzdCBQb2xpbyBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIubW9zdFJlY2VudCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZQoqLwpkZWZpbmUgIkRhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJiT1BWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UKKi8KZGVmaW5lICJEYXRlIG9mIExhdGVzdCBJUFYgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJJUFYgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLm1vc3RSZWNlbnQoKS5vY2N1cnJlbmNlLnRvSW50ZXJ2YWwoKQoKLyoKQGludGVybmFsOiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzRG9zZTAoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgIk51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlIjoKICBkYXRlIGZyb20gc3RhcnQgb2YgIlBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5lYXJsaWVzdCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIEkKICB3aGVyZSBJLnR5cGVPZkRvc2UoKSB+IENvbmNlcHRzLiJiT1BWIgoKLyoKQGludGVybmFsOiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlIEkudHlwZU9mRG9zZSgpIH4gQ29uY2VwdHMuIklQViIKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIlBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiUG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc0Jvb3N0ZXIoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikK"^^xsd:base64Binary ] ] [ fhir:contentType [ fhir:v "application/elm+xml" ] ; fhir:data [ fhir:v "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNzY3Ij4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRQb2xpb0VsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVFBvbGlvRWxlbWVudHM8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9IklNTVpEMkRUUG9saW9FbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjEwOjEtMTA6MTkiIGxvY2FsSWRlbnRpZmllcj0iV0hPQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMiIgbG9jYXRvcj0iMTE6MS0xMToyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTIiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxMjoxLTEyOjI5IiBsb2NhbElkZW50aWZpZXI9IldFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0VsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE0Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0VsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0U8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE2IiBsb2NhdG9yPSIxNDoxLTE0OjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE4IiBsb2NhdG9yPSIxNToxLTE1OjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjE2OjEtMTY6MzYiIGxvY2FsSWRlbnRpZmllcj0iRWxlbWVudHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjIwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIEVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI1IiBsb2NhdG9yPSIxOToxLTE5OjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMyIgbG9jYXRvcj0iMTk6MS0xOToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyNCIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjIiIGxvY2F0b3I9IjE5OjEtMTk6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjgiIGxvY2F0b3I9IjI0OjEtMjc6NjIiIG5hbWU9IlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJQb2xpbyBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjI4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBvbGlvIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1BvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0MCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzLiZxdW90O0Rvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gSTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZQogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+STwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz52YWNjaW5lQ29kZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGluIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db25jZXB0czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDAiIGxvY2F0b3I9IjI1OjMtMjc6NjIiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjI5IiBsb2NhdG9yPSIyNTozLTI1OjQ0IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMSIgbG9jYXRvcj0iMjU6My0yNTo0MiIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIyMzciIGxvY2F0b3I9IjI2OjMtMjc6NjIiIHhzaTp0eXBlPSJJblZhbHVlU2V0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyMzkiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8Y29kZSBsb2NhbElkPSIyMzgiIG5hbWU9IlRvQ29uY2VwdCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzQiIGxvY2F0b3I9IjI3OjUtMjc6MTciIHBhdGg9InZhY2NpbmVDb2RlIiBzY29wZT0iSSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgIDwvY29kZT4KICAgICAgICAgICAgICAgPHZhbHVlc2V0IGxvY2FsSWQ9IjIzNiIgbG9jYXRvcj0iMjc6MjItMjc6NjIiIG5hbWU9IlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgbGlicmFyeU5hbWU9IkNvbmNlcHRzIiBwcmVzZXJ2ZT0idHJ1ZSIvPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI0MyIgbG9jYXRvcj0iMzI6MS0zMzo1NSIgbmFtZT0iUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlBvbGlvIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBvbGlvIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzCiovCmRlZmluZSAmcXVvdDtQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzUHJpbWFyeSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQ1IiBsb2NhdG9yPSIzMzozLTMzOjU1IiBuYW1lPSJzZXJpZXNQcmltYXJ5IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDQiIGxvY2F0b3I9IjMzOjMtMzM6MzkiIG5hbWU9IlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI0OCIgbG9jYXRvcj0iMzg6MS0zOTo2MSIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQ4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBkb3NlcwoqLwpkZWZpbmUgJnF1b3Q7TnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTIiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjUyIiBsb2NhdG9yPSIzOTozLTM5OjYxIiB4c2k6dHlwZT0iQ291bnQiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI0OSIgbG9jYXRvcj0iMzk6OS0zOTo2MCIgbmFtZT0iUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjYyIiBsb2NhdG9yPSI0NjM6MS00NjQ6NTMiIG5hbWU9IlBvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjYyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgJnF1b3Q7UG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zZXJpZXNEb3NlMCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY0IiBsb2NhdG9yPSI0NjQ6My00NjQ6NTMiIG5hbWU9InNlcmllc0Rvc2UwIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjMiIGxvY2F0b3I9IjQ2NDozLTQ2NDozOSIgbmFtZT0iUG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI0Njk6MS00NzA6NTMiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgJnF1b3Q7TnVtYmVyIG9mIFBvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjY4Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5Db3VudCg8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNjgiIGxvY2F0b3I9IjQ3MDozLTQ3MDo1MyIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNjUiIGxvY2F0b3I9IjQ3MDo5LTQ3MDo1MiIgbmFtZT0iUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI1NSIgbG9jYXRvcj0iNDc6MS00ODo0OSIgbmFtZT0iYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9ImJPUFYgYmlydGggZG9zZSAoYSB6ZXJvIGRvc2UpIHdhcyBub3QgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7RG9zZSAwJnF1b3Q7IEFORCAmcXVvdDtCaXJ0aCBkb3NlJnF1b3Q7ID0gVFJVRSkgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9ImJPUFYgYmlydGggZG9zZSAoYSB6ZXJvIGRvc2UpIHdhcyBub3QgYWRtaW5pc3RlcmVkLTE0NiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Yml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB0aGF0IGFyZSBwb2xpb215ZWxpdGlzIChwb2xpbyktZW5kZW1pYyBjb3VudHJpZXMgb3IgYXQgaGlnaCByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdWJzZXF1ZW50IHNwcmVhZCBvZiBwb2xpbyB0aGF0IGZvbGxvdyB0aGUgY29tYmluZWQgYk9QVuKAk0lQViBzY2hlZHVsZSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyNTUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtEb3NlIDAmcXVvdDsgQU5EICZxdW90O0JpcnRoIGRvc2UmcXVvdDsgPSBUUlVFKSA9IDAKQGNvZGU6IGJPUFYgYmlydGggZG9zZSAoYSB6ZXJvIGRvc2UpIHdhcyBub3QgYWRtaW5pc3RlcmVkLTE0NgpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uQmlydGggZG9zZTogQmlydGggZG9zZSBhZG1pbmlzdHJhdGlvbiBhcyBwYXJ0IG9mICZxdW90O2JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAmcXVvdDtiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgbm90IGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTYiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjcwIj4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNTYiIGxvY2F0b3I9IjQ4OjMtNDg6NDkiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjcxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNzIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjkiIGxvY2F0b3I9IjQ4OjMtNDg6NDUiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzAiIGxvY2F0b3I9IjQ4OjQ5IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjc1IiBsb2NhdG9yPSI1NjoxLTU3OjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgd2VlayIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWsiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgd2VlayIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEgd2Vlay0zOSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Yml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB0aGF0IGFyZSBwb2xpb215ZWxpdGlzIChwb2xpbyktZW5kZW1pYyBjb3VudHJpZXMgb3IgYXQgaGlnaCByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdWJzZXF1ZW50IHNwcmVhZCBvZiBwb2xpbyB0aGF0IGZvbGxvdyB0aGUgY29tYmluZWQgYk9QVuKAk0lQViBzY2hlZHVsZSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyNzUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWsKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgd2VlawpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWstMzkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAmcXVvdDtiaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHRoYXQgYXJlIHBvbGlvbXllbGl0aXMgKHBvbGlvKS1lbmRlbWljIGNvdW50cmllcyBvciBhdCBoaWdoIHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1YnNlcXVlbnQgc3ByZWFkIG9mIHBvbGlvIHRoYXQgZm9sbG93IHRoZSBjb21iaW5lZCBiT1BW4oCTSVBWIHNjaGVkdWxlKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWsmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjc2Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc5Ij4gJmx0OyAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNzYiIGxvY2F0b3I9IjU3OjMtNTc6NDUiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyODAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3OCIgbG9jYXRvcj0iNTc6My01Nzo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzkiIGxvY2F0b3I9IjU3OjQ1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSI2NToxLTY2OjQ2IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgd2VlayIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHdlZWsiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMSB3ZWVrIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrLTM5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtiaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHRoYXQgYXJlIHBvbGlvbXllbGl0aXMgKHBvbGlvKS1lbmRlbWljIGNvdW50cmllcyBvciBhdCBoaWdoIHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1YnNlcXVlbnQgc3ByZWFkIG9mIHBvbGlvIHRoYXQgZm9sbG93IHRoZSBjb21iaW5lZCBiT1BW4oCTSVBWIHNjaGVkdWxlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI4NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEgd2VlawpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSAxIHdlZWsKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5CaXJ0aCBkb3NlOiBCaXJ0aCBkb3NlIGFkbWluaXN0cmF0aW9uIGFzIHBhcnQgb2YgJnF1b3Q7Yml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB0aGF0IGFyZSBwb2xpb215ZWxpdGlzIChwb2xpbyktZW5kZW1pYyBjb3VudHJpZXMgb3IgYXQgaGlnaCByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdWJzZXF1ZW50IHNwcmVhZCBvZiBwb2xpbyB0aGF0IGZvbGxvdyB0aGUgY29tYmluZWQgYk9QVuKAk0lQViBzY2hlZHVsZSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4OCI+ID49IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4NSIgbG9jYXRvcj0iNjY6My02Njo0NiIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyODkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NyIgbG9jYXRvcj0iNjY6My02Njo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODgiIGxvY2F0b3I9IjY2OjQ2IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjkzIiBsb2NhdG9yPSI3NDoxLTc1OjQ5IiBuYW1lPSJiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7RG9zZSAwJnF1b3Q7IEFORCAmcXVvdDtCaXJ0aCBkb3NlJnF1b3Q7ID0gVFJVRSkgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9ImJPUFYgYmlydGggZG9zZSAoYSB6ZXJvIGRvc2UpIHdhcyBhZG1pbmlzdGVyZWQtMTQ2Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtiaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHRoYXQgYXJlIHBvbGlvbXllbGl0aXMgKHBvbGlvKS1lbmRlbWljIGNvdW50cmllcyBvciBhdCBoaWdoIHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1YnNlcXVlbnQgc3ByZWFkIG9mIHBvbGlvIHRoYXQgZm9sbG93IHRoZSBjb21iaW5lZCBiT1BW4oCTSVBWIHNjaGVkdWxlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjI5MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7RG9zZSAwJnF1b3Q7IEFORCAmcXVvdDtCaXJ0aCBkb3NlJnF1b3Q7ID0gVFJVRSkgPSAxCkBjb2RlOiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkLTE0NgpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uQmlydGggZG9zZTogQmlydGggZG9zZSBhZG1pbmlzdHJhdGlvbiBhcyBwYXJ0IG9mICZxdW90O2JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAmcXVvdDtiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTYiPiA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5NCIgbG9jYXRvcj0iNzU6My03NTo0OSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyOTciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5NSIgbG9jYXRvcj0iNzU6My03NTo0NSIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIERvc2UgMCBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5NiIgbG9jYXRvcj0iNzU6NDkiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDEiIGxvY2F0b3I9Ijg0OjEtODU6NDUiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyA2IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcy00MCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMwMSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMDIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwNCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDUiPiAmbHQ7IDY8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMwMiIgbG9jYXRvcj0iODU6My04NTo0NSIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMwNiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzA3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA0IiBsb2NhdG9yPSI4NTozLTg1OjQxIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNSIgbG9jYXRvcj0iODU6NDUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMTAiIGxvY2F0b3I9Ijk1OjEtOTY6NTciIG5hbWU9Ik5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBjb2RlOiBObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAmcXVvdDtObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMxMSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMyI+ID0gMDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzExIiBsb2NhdG9yPSI5NjozLTk2OjU3IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxNCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzE1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzEyIiBsb2NhdG9yPSI5NjozLTk2OjUzIiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTMiIGxvY2F0b3I9Ijk2OjU3IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzE4IiBsb2NhdG9yPSIxMDQ6MS0xMDY6NTEiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDMgbW9udGhzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAzIG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpCAzIG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAzIG1vbnRocy01MSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzE4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDMgbW9udGhzCkBwc2V1ZG9jb2RlOiA2IHdlZWtzIOKJpCBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omkIDMgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAzIG1vbnRocy01MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAzIG1vbnRocyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIxIj42ICZsdDs9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjkiPiAmbHQ7PSAzPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzE5IiBsb2NhdG9yPSIxMDU6My0xMDY6NTEiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjAiIGxvY2F0b3I9IjEwNTozLTEwNTo0NiIgeHNpOnR5cGU9Ikxlc3NPckVxdWFsIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyNSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyMSIgbG9jYXRvcj0iMTA1OjMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIzIiBsb2NhdG9yPSIxMDU6OC0xMDU6NDYiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjYiIGxvY2F0b3I9IjEwNjo3LTEwNjo1MSIgeHNpOnR5cGU9Ikxlc3NPckVxdWFsIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMzAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzMSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOCIgbG9jYXRvcj0iMTA2OjctMTA2OjQ2IiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjkiIGxvY2F0b3I9IjEwNjo1MSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzM0IiBsb2NhdG9yPSIxMTQ6MS0xMTU6NDYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMyBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMyBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+IDMgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMyBtb250aHMtNDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMzNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgPiAzIG1vbnRocwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAzIG1vbnRocy00MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMzNSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzgiPiA+IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzNSIgbG9jYXRvcj0iMTE1OjMtMTE1OjQ2IiB4c2k6dHlwZT0iR3JlYXRlciI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzM5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzciIGxvY2F0b3I9IjExNTozLTExNTo0MiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM4IiBsb2NhdG9yPSIxMTU6NDYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNDMiIGxvY2F0b3I9IjEyNToxLTEyNjo1NyIgbmFtZT0iT25lIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik9uZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMzAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzNDMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogT25lIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAY29kZTogT25lIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAmcXVvdDtPbmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ2Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNDQiIGxvY2F0b3I9IjEyNjozLTEyNjo1NyIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM0OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM0NSIgbG9jYXRvcj0iMTI2OjMtMTI2OjUzIiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDYiIGxvY2F0b3I9IjEyNjo1NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM1MSIgbG9jYXRvcj0iMTM0OjEtMTM2OjUwIiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxNCB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDE0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDE0IHdlZWtzLTUxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSIzNTEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDE0IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxNCB3ZWVrcy01MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxNCB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNTIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU0Ij42ICZsdDs9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYxIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MiI+ICZsdDsgMTQ8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNTIiIGxvY2F0b3I9IjEzNTozLTEzNjo1MCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1MyIgbG9jYXRvcj0iMTM1OjMtMTM1OjQ2IiB4c2k6dHlwZT0iTGVzc09yRXF1YWwiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzU4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU0IiBsb2NhdG9yPSIxMzU6MyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTYiIGxvY2F0b3I9IjEzNTo4LTEzNTo0NiIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1OSIgbG9jYXRvcj0iMTM2OjctMTM2OjUwIiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzYzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjEiIGxvY2F0b3I9IjEzNjo3LTEzNjo0NSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjIiIGxvY2F0b3I9IjEzNjo0OS0xMzY6NTAiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMTQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNzYiIGxvY2F0b3I9IjQzMToxLTQzMzo0MCIgbmFtZT0iYk9QViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iYk9QViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9IjM3NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBiT1BWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtiT1BWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM5MSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gSTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnR5cGVPZkRvc2UoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IH4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzg0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O2JPUFYmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzOTEiIGxvY2F0b3I9IjQzMjozLTQzMzo0MCIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIzNzciIGxvY2F0b3I9IjQzMjozLTQzMjo0MSIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNzgiIGxvY2F0b3I9IjQzMjozLTQzMjozOSIgbmFtZT0iUG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMzgwIiBsb2NhdG9yPSI0MzM6My00MzM6NDAiIHhzaTp0eXBlPSJFcXVpdmFsZW50Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzODkiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5MCIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4NSIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4MiIgbG9jYXRvcj0iNDMzOjktNDMzOjIyIiBuYW1lPSJ0eXBlT2ZEb3NlIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODEiIGxvY2F0b3I9IjQzMzo5IiBuYW1lPSJJIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4NyIgeHNpOnR5cGU9IlRvQ29uY2VwdCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzg4IiBuYW1lPSJ0OkNvZGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzg0IiBsb2NhdG9yPSI0MzM6MjYtNDMzOjQwIiBuYW1lPSJiT1BWIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHhzaTp0eXBlPSJDb2RlUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNzEiIGxvY2F0b3I9IjQ1MToxLTQ1Mjo5NCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgYk9QViBEb3NlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJEYXRlIG9mIExhdGVzdCBiT1BWIERvc2UiLz4KICAgICAgICAgICAgPGE6cyByPSIzNzEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgYk9QViBEb3NlCiovCmRlZmluZSAmcXVvdDtEYXRlIG9mIExhdGVzdCBiT1BWIERvc2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzcyIj4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzczIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzkzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O2JPUFYgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM5MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+bW9zdFJlY2VudCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5vY2N1cnJlbmNlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50b0ludGVydmFsKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM3MiIgbG9jYXRvcj0iNDUyOjMtNDUyOjk0IiB4c2k6dHlwZT0iRGF0ZUZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzMiIGxvY2F0b3I9IjQ1MjoxMy00NTI6OTQiIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5NyIgbG9jYXRvcj0iNDUyOjIyLTQ1Mjo5NCIgbmFtZT0idG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTYiIGxvY2F0b3I9IjQ1MjoyMi00NTI6ODEiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzkzIiBsb2NhdG9yPSI0NTI6MjItNDUyOjcwIiBuYW1lPSJtb3N0UmVjZW50IiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzk0IiB4c2k6dHlwZT0iTGlzdFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZWxlbWVudFR5cGUgbG9jYWxJZD0iMzk1IiBuYW1lPSJmaGlyOkltbXVuaXphdGlvbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NpZ25hdHVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzkyIiBsb2NhdG9yPSI0NTI6MjItNDUyOjU3IiBuYW1lPSJiT1BWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNjciIGxvY2F0b3I9IjE0NDoxLTE0Njo3NCIgbmFtZT0iVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7KSAmbHQ7IDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTU5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSIzNjciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7KSAmbHQ7IDQgd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvLTE1OQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IGJPUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNjgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBiT1BWIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDAyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgYk9QViBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDA2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ob3coKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEyIj4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzY4IiBsb2NhdG9yPSIxNDU6My0xNDY6NzQiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDAiIGxvY2F0b3I9IjE0NTozLTE0NTo0MCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM5OSIgbG9jYXRvcj0iMTQ1OjMtMTQ1OjQwIiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzk4IiBsb2NhdG9yPSIxNDU6My0xNDU6MjgiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwMSIgbG9jYXRvcj0iMTQ2OjktMTQ2Ojc0IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDEzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MTQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDIiIGxvY2F0b3I9IjE0Njo5LTE0Njo3MCIgcHJlY2lzaW9uPSJXZWVrIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MTAiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MTEiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA4IiB4c2k6dHlwZT0iVG9EYXRlVGltZSI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDA5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDAzIiBsb2NhdG9yPSIxNDY6MzUtMTQ2OjYwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBiT1BWIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA2IiBsb2NhdG9yPSIxNDY6NjYtMTQ2OjcwIiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDEyIiBsb2NhdG9yPSIxNDY6NzQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQxNyIgbG9jYXRvcj0iMTU0OjEtMTU1OjY4IiBuYW1lPSJUaGUgbGF0ZXN0IGJPUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDspIOKJpSA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvLTE1OSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDE3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90Oykg4omlIDQgd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvLTE1OQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtUaGUgbGF0ZXN0IGJPUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MTgiPgogICAgICAgICAgICAgICAgICA8YTpzPm5vdDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxOCIgbG9jYXRvcj0iMTU1OjMtMTU1OjY4IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDE5IiBsb2NhdG9yPSIxNTU6Ni0xNTU6NjgiIG5hbWU9IlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyOSIgbG9jYXRvcj0iNDgxOjEtNDgzOjQwIiBuYW1lPSJQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iNDI5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1BvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBJPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dHlwZU9mRG9zZSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gfiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Yk9QViZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ0NCIgbG9jYXRvcj0iNDgyOjMtNDgzOjQwIiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjQzMCIgbG9jYXRvcj0iNDgyOjMtNDgyOjU2IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQzMSIgbG9jYXRvcj0iNDgyOjMtNDgyOjU0IiBuYW1lPSJQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSI0MzMiIGxvY2F0b3I9IjQ4MzozLTQ4Mzo0MCIgeHNpOnR5cGU9IkVxdWl2YWxlbnQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ0MiIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDQzIiBuYW1lPSJ0OkNvbmNlcHQiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM4IiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM1IiBsb2NhdG9yPSI0ODM6OS00ODM6MjIiIG5hbWU9InR5cGVPZkRvc2UiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQzNCIgbG9jYXRvcj0iNDgzOjkiIG5hbWU9IkkiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQwIiB4c2k6dHlwZT0iVG9Db25jZXB0Ij4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NDEiIG5hbWU9InQ6Q29kZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzciIGxvY2F0b3I9IjQ4MzoyNi00ODM6NDAiIG5hbWU9ImJPUFYiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgeHNpOnR5cGU9IkNvZGVSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyNiIgbG9jYXRvcj0iNDk1OjEtNDk2OjY2IiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9Ik51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTpzIHI9IjQyNiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NDgiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NDgiIGxvY2F0b3I9IjQ5NjozLTQ5Njo2NiIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI0NDUiIGxvY2F0b3I9IjQ5Njo5LTQ5Njo2NSIgbmFtZT0iUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MjIiIGxvY2F0b3I9IjE2MzoxLTE2NDo2MiIgbmFtZT0iVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QViIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QViIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVi0xMTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQyMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgcG9saW92aXJ1cyBkb3NlIGFkbWluaXN0ZXJlZCBpcyBiT1BWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAY29kZTogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QViZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MjMiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1MCI+ID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDIzIiBsb2NhdG9yPSIxNjQ6My0xNjQ6NjIiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDUxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NTIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDkiIGxvY2F0b3I9IjE2NDozLTE2NDo1OCIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NTAiIGxvY2F0b3I9IjE2NDo2MiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ1NSIgbG9jYXRvcj0iMTcyOjEtMTczOjQ3IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDE0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTQgd2Vla3MtNDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ1NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDE0IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTQgd2Vla3MmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDU2Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDU5Ij4gPj0gMTQ8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ1NiIgbG9jYXRvcj0iMTczOjMtMTczOjQ3IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDYxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDU4IiBsb2NhdG9yPSIxNzM6My0xNzM6NDEiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDU5IiBsb2NhdG9yPSIxNzM6NDYtMTczOjQ3IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjE0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ2NCIgbG9jYXRvcj0iMTgxOjEtMTgyOjYyIiBuYW1lPSJUaGUgcG9saW92aXJ1cyBkb3NlIGFkbWluaXN0ZXJlZCBpcyBJUFYiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBwb2xpb3ZpcnVzIGRvc2UgYWRtaW5pc3RlcmVkIGlzIElQViIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgSVBWLTExNSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDY0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBwb2xpb3ZpcnVzIGRvc2UgYWRtaW5pc3RlcmVkIGlzIElQVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAKQGNvZGU6IFRoZSBwb2xpb3ZpcnVzIGRvc2UgYWRtaW5pc3RlcmVkIGlzIElQVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgSVBWJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY3Ij4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NjUiIGxvY2F0b3I9IjE4MjozLTE4Mjo2MiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0NjgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ2OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2NiIgbG9jYXRvcj0iMTgyOjMtMTgyOjU4IiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2NyIgbG9jYXRvcj0iMTgyOjYyIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDgxIiBsb2NhdG9yPSI0Mzg6MS00NDA6MzkiIG5hbWU9IklQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iSVBWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iNDgxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IElQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgJnF1b3Q7SVBWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ5NiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gSTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnR5cGVPZkRvc2UoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IH4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lQViZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ5NiIgbG9jYXRvcj0iNDM5OjMtNDQwOjM5IiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjQ4MiIgbG9jYXRvcj0iNDM5OjMtNDM5OjQxIiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ4MyIgbG9jYXRvcj0iNDM5OjMtNDM5OjM5IiBuYW1lPSJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSI0ODUiIGxvY2F0b3I9IjQ0MDozLTQ0MDozOSIgeHNpOnR5cGU9IkVxdWl2YWxlbnQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ5NCIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDk1IiBuYW1lPSJ0OkNvbmNlcHQiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkwIiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDg3IiBsb2NhdG9yPSI0NDA6OS00NDA6MjIiIG5hbWU9InR5cGVPZkRvc2UiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4NiIgbG9jYXRvcj0iNDQwOjkiIG5hbWU9IkkiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkyIiB4c2k6dHlwZT0iVG9Db25jZXB0Ij4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTMiIG5hbWU9InQ6Q29kZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODkiIGxvY2F0b3I9IjQ0MDoyNi00NDA6MzkiIG5hbWU9IklQViIgbGlicmFyeU5hbWU9IkNvbmNlcHRzIiB4c2k6dHlwZT0iQ29kZVJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDc2IiBsb2NhdG9yPSI0NTc6MS00NTg6OTMiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IElQViBEb3NlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJEYXRlIG9mIExhdGVzdCBJUFYgRG9zZSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ3NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBEYXRlIG9mIExhdGVzdCBJUFYgRG9zZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDc3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDc4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5tb3N0UmVjZW50KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm9jY3VycmVuY2U8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnRvSW50ZXJ2YWwoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDc3IiBsb2NhdG9yPSI0NTg6My00NTg6OTMiIHhzaTp0eXBlPSJEYXRlRnJvbSI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3OCIgbG9jYXRvcj0iNDU4OjEzLTQ1ODo5MyIgeHNpOnR5cGU9IlN0YXJ0Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTAyIiBsb2NhdG9yPSI0NTg6MjItNDU4OjkzIiBuYW1lPSJ0b0ludGVydmFsIiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwMSIgbG9jYXRvcj0iNDU4OjIyLTQ1ODo4MCIgcGF0aD0ib2NjdXJyZW5jZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI0OTgiIGxvY2F0b3I9IjQ1ODoyMi00NTg6NjkiIG5hbWU9Im1vc3RSZWNlbnQiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0OTkiIHhzaTp0eXBlPSJMaXN0VHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50VHlwZSBsb2NhbElkPSI1MDAiIG5hbWU9ImZoaXI6SW1tdW5pemF0aW9uIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2lnbmF0dXJlPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0OTciIGxvY2F0b3I9IjQ1ODoyMi00NTg6NTYiIG5hbWU9IklQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDcyIiBsb2NhdG9yPSIxOTA6MS0xOTI6NzQiIG5hbWU9IlRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7SVBWJnF1b3Q7KSAmbHQ7IDQgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvLTE1OSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDcyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7SVBWJnF1b3Q7KSAmbHQ7IDQgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgbW9udGhzIGFnby0xNTkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDczIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUwNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IElQViBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTExIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ob3coKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTE3Ij4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDczIiBsb2NhdG9yPSIxOTE6My0xOTI6NzQiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDUiIGxvY2F0b3I9IjE5MTozLTE5MTozOSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwNCIgbG9jYXRvcj0iMTkxOjMtMTkxOjM5IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTAzIiBsb2NhdG9yPSIxOTE6My0xOTE6MjciIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IElQViBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTA2IiBsb2NhdG9yPSIxOTI6OS0xOTI6NzQiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MTgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUxOSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwNyIgbG9jYXRvcj0iMTkyOjktMTkyOjcwIiBwcmVjaXNpb249Ik1vbnRoIiB4c2k6dHlwZT0iRHVyYXRpb25CZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MTUiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MTYiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTEzIiB4c2k6dHlwZT0iVG9EYXRlVGltZSI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTE0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTA4IiBsb2NhdG9yPSIxOTI6MzYtMTkyOjYwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBJUFYgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MTEiIGxvY2F0b3I9IjE5Mjo2Ni0xOTI6NzAiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MTciIGxvY2F0b3I9IjE5Mjo3NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTIyIiBsb2NhdG9yPSIyMDA6MS0yMDE6NjgiIG5hbWU9IlRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCBtb250aHMgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7SVBWJnF1b3Q7KSDiiaUgNCBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IG1vbnRocyBhZ28tMTU5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSI1MjIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtJUFYmcXVvdDspIOKJpSA0IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IG1vbnRocyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjUyMyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTIzIiBsb2NhdG9yPSIyMDE6My0yMDE6NjgiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjQiIGxvY2F0b3I9IjIwMTo2LTIwMTo2OCIgbmFtZT0iVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTI3IiBsb2NhdG9yPSIyMTE6MS0yMTI6NTciIG5hbWU9IlR3byBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUd28gcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTI3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFR3byBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMgpAY29kZTogVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICZxdW90O1R3byBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjUyOCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzMCI+ID0gMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTI4IiBsb2NhdG9yPSIyMTI6My0yMTI6NTciIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTMxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1MzIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjkiIGxvY2F0b3I9IjIxMjozLTIxMjo1MyIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTMwIiBsb2NhdG9yPSIyMTI6NTciIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1MzUiIGxvY2F0b3I9IjIyMDoxLTIyMTo2MiIgbmFtZT0iVGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgYk9QVi0xMTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjUzNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgYk9QVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIKQGNvZGU6IFRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgYk9QViZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MzYiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzOCI+ID0gMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTM2IiBsb2NhdG9yPSIyMjE6My0yMjE6NjIiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTM5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NDAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MzciIGxvY2F0b3I9IjIyMTozLTIyMTo1OCIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MzgiIGxvY2F0b3I9IjIyMTo2MiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjU0MyIgbG9jYXRvcj0iMjI5OjEtMjMwOjYyIiBuYW1lPSJGcm9tIHRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIG9uZSBpcyBiT1BWIGFuZCBvbmUgaXMgSVBWIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJGcm9tIHRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIG9uZSBpcyBiT1BWIGFuZCBvbmUgaXMgSVBWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJGcm9tIHRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIG9uZSBpcyBiT1BWIGFuZCBvbmUgaXMgSVBWLTExNSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTQzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IEZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxCkBjb2RlOiBGcm9tIHRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIG9uZSBpcyBiT1BWIGFuZCBvbmUgaXMgSVBWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtGcm9tIHRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIG9uZSBpcyBiT1BWIGFuZCBvbmUgaXMgSVBWJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU0NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQ1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQ2Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1NDQiIGxvY2F0b3I9IjIzMDozLTIzMDo2MiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NDciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU0OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0NSIgbG9jYXRvcj0iMjMwOjMtMjMwOjU4IiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU0NiIgbG9jYXRvcj0iMjMwOjYyIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTUxIiBsb2NhdG9yPSIyMzg6MS0yMzk6NjIiIG5hbWU9IlRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBJUFYiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBJUFYiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBJUFYtMTE1Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSI1NTEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIElQVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAKQGNvZGU6IFRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICZxdW90O1RoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBJUFYmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTUyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NTMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NTQiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU1MiIgbG9jYXRvcj0iMjM5OjMtMjM5OjYyIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU1NSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTU2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTUzIiBsb2NhdG9yPSIyMzk6My0yMzk6NTgiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTU0IiBsb2NhdG9yPSIyMzk6NjIiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NTkiIGxvY2F0b3I9IjI0OToxLTI1MDo1NyIgbmFtZT0iVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMzAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkiLz4KICAgICAgICAgICAgPGE6cyByPSI1NTkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMKQGNvZGU6IFRocmVlIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICZxdW90O1RocmVlIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTYwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTYyIj4gPSAzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1NjAiIGxvY2F0b3I9IjI1MDozLTI1MDo1NyIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NjMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU2NCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU2MSIgbG9jYXRvcj0iMjUwOjMtMjUwOjUzIiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NjIiIGxvY2F0b3I9IjI1MDo1NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjU2NyIgbG9jYXRvcj0iMjU4OjEtMjU5OjYyIiBuYW1lPSJUaGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJUaGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWLTExNSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTY3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAzCkBjb2RlOiBUaGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtUaGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU2OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTY5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTcwIj4gPSAzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1NjgiIGxvY2F0b3I9IjI1OTozLTI1OTo2MiIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NzEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU3MiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU2OSIgbG9jYXRvcj0iMjU5OjMtMjU5OjU4IiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3MCIgbG9jYXRvcj0iMjU5OjYyIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTc1IiBsb2NhdG9yPSIyNjc6MS0yNjg6NDYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTQgd2Vla3MiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDE0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTQgd2Vla3MtNDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjU3NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyAxNCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxNCB3ZWVrcy00MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU3NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3OSI+ICZsdDsgMTQ8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU3NiIgbG9jYXRvcj0iMjY4OjMtMjY4OjQ2IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTgwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1ODEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NzgiIGxvY2F0b3I9IjI2ODozLTI2ODo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NzkiIGxvY2F0b3I9IjI2ODo0NS0yNjg6NDYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMTQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTg0IiBsb2NhdG9yPSIyNzY6MS0yNzc6NjIiIG5hbWU9IkZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdHdvIGFyZSBiT1BWIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHR3byBhcmUgYk9QViIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0d28gYXJlIGJPUFYtMTE1Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSI1ODQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0d28gYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UmcXVvdDsgPSAmcXVvdDtiT1BWJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyCkBjb2RlOiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHR3byBhcmUgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgJnF1b3Q7RnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0d28gYXJlIGJPUFYmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTg1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1ODYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1ODciPiA9IDI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU4NSIgbG9jYXRvcj0iMjc3OjMtMjc3OjYyIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjU4OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTg5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTg2IiBsb2NhdG9yPSIyNzc6My0yNzc6NTgiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTg3IiBsb2NhdG9yPSIyNzc6NjIiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1OTIiIGxvY2F0b3I9IjI4NToxLTI4Njo2MiIgbmFtZT0iRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgYk9QViBhbmQgdHdvIGFyZSBJUFYiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIGJPUFYgYW5kIHR3byBhcmUgSVBWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBiT1BWIGFuZCB0d28gYXJlIElQVi0xMTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjU5MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBiT1BWIGFuZCB0d28gYXJlIElQVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEKQGNvZGU6IEZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIGJPUFYgYW5kIHR3byBhcmUgSVBWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBiT1BWIGFuZCB0d28gYXJlIElQViZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1OTMiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU5NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU5NSI+ID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTkzIiBsb2NhdG9yPSIyODY6My0yODY6NjIiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTk2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1OTciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTQiIGxvY2F0b3I9IjI4NjozLTI4Njo1OCIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTUiIGxvY2F0b3I9IjI4Njo2MiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjYwMCIgbG9jYXRvcj0iMjk1OjEtMjk2OjU3IiBuYW1lPSJGb3VyIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iRm91ciBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjAwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IEZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDQKQGNvZGU6IEZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMzAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKKi8KZGVmaW5lICZxdW90O0ZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2MDEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDMiPiA9IDQ8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjYwMSIgbG9jYXRvcj0iMjk2OjMtMjk2OjU3IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYwNCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjA1IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjAyIiBsb2NhdG9yPSIyOTY6My0yOTY6NTMiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYwMyIgbG9jYXRvcj0iMjk2OjU3IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjA4IiBsb2NhdG9yPSIzMDQ6MS0zMDU6NjIiIG5hbWU9IkZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0aHJlZSBhcmUgYk9QViIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHRocmVlIGFyZSBiT1BWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdGhyZWUgYXJlIGJPUFYtMTE1Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykiLz4KICAgICAgICAgICAgPGE6cyByPSI2MDgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHRocmVlIGFyZSBiT1BWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMwpAY29kZTogRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHRocmVlIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdGhyZWUgYXJlIGJPUFYmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjA5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTEiPiA9IDM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjYwOSIgbG9jYXRvcj0iMzA1OjMtMzA1OjYyIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYxMiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjEzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjEwIiBsb2NhdG9yPSIzMDU6My0zMDU6NTgiIG5hbWU9Ik51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjExIiBsb2NhdG9yPSIzMDU6NjIiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2MTYiIGxvY2F0b3I9IjMxMzoxLTMxNDo2MiIgbmFtZT0iRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIHR3byBhcmUgSVBWIGFuZCB0d28gYXJlIGJPUFYiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCB0d28gYXJlIElQViBhbmQgdHdvIGFyZSBiT1BWIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1R5cGUgb2YgcG9saW92aXJ1cyBkb3NlJnF1b3Q7ID0gJnF1b3Q7Yk9QViZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgdHdvIGFyZSBJUFYgYW5kIHR3byBhcmUgYk9QVi0xMTUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IiZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKSIvPgogICAgICAgICAgICA8YTpzIHI9IjYxNiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgdHdvIGFyZSBJUFYgYW5kIHR3byBhcmUgYk9QVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSZxdW90OyA9ICZxdW90O2JPUFYmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIKQGNvZGU6IEZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCB0d28gYXJlIElQViBhbmQgdHdvIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAmcXVvdDtGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgdHdvIGFyZSBJUFYgYW5kIHR3byBhcmUgYk9QViZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2MTciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYxOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYxOSI+ID0gMjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjE3IiBsb2NhdG9yPSIzMTQ6My0zMTQ6NjIiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjIwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MjEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTgiIGxvY2F0b3I9IjMxNDozLTMxNDo1OCIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTkiIGxvY2F0b3I9IjMxNDo2MiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjYyNCIgbG9jYXRvcj0iMzIyOjEtMzIzOjU3IiBuYW1lPSJGaXZlIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkZpdmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iRml2ZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjI0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IEZpdmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDUKQGNvZGU6IEZpdmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMzAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgJnF1b3Q7Rml2ZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjYyNSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYyNyI+ID0gNTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjI1IiBsb2NhdG9yPSIzMjM6My0zMjM6NTciIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjI4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MjkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjYiIGxvY2F0b3I9IjMyMzozLTMyMzo1MyIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjI3IiBsb2NhdG9yPSIzMjM6NTciIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2MzIiIGxvY2F0b3I9IjMzMToxLTMzMjo0NSIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDggd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDggd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzLTQwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjMyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgOCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzLTQwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjYzMyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjM1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MzQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MzUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYzNiI+ICZsdDsgODwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjMzIiBsb2NhdG9yPSIzMzI6My0zMzI6NDUiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MzciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjYzOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYzNSIgbG9jYXRvcj0iMzMyOjMtMzMyOjQxIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYzNiIgbG9jYXRvcj0iMzMyOjQ1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjgiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjQxIiBsb2NhdG9yPSIzNDA6MS0zNDE6NDYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOCB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA4IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDggd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA4IHdlZWtzLTQwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjQxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSA4IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAmcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjQyIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQ1Ij4gPj0gODwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjQyIiBsb2NhdG9yPSIzNDE6My0zNDE6NDYiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjQ2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NDciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDQiIGxvY2F0b3I9IjM0MTozLTM0MTo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDUiIGxvY2F0b3I9IjM0MTo0NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI4IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjY1NCIgbG9jYXRvcj0iNDQ1OjEtNDQ2Ojk1IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBQb2xpbyBEb3NlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJEYXRlIG9mIExhdGVzdCBQb2xpbyBEb3NlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjU0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UKKi8KZGVmaW5lICZxdW90O0RhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjU1Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjU2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjU4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NTgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm1vc3RSZWNlbnQoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+b2NjdXJyZW5jZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dG9JbnRlcnZhbCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2NTUiIGxvY2F0b3I9IjQ0NjozLTQ0Njo5NSIgeHNpOnR5cGU9IkRhdGVGcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU2IiBsb2NhdG9yPSI0NDY6MTMtNDQ2Ojk1IiB4c2k6dHlwZT0iU3RhcnQiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NjIiIGxvY2F0b3I9IjQ0NjoyMi00NDY6OTUiIG5hbWU9InRvSW50ZXJ2YWwiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjYxIiBsb2NhdG9yPSI0NDY6MjItNDQ2OjgyIiBwYXRoPSJvY2N1cnJlbmNlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY1OCIgbG9jYXRvcj0iNDQ2OjIyLTQ0Njo3MSIgbmFtZT0ibW9zdFJlY2VudCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY1OSIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjY2MCIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY1NyIgbG9jYXRvcj0iNDQ2OjIyLTQ0Njo1OCIgbmFtZT0iUG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjY1MCIgbG9jYXRvcj0iMzUwOjEtMzUyOjc1IiBuYW1lPSJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTIwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSImcXVvdDtCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSZxdW90OyBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjY1MCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDQgd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvLTEyMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjUxIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaXMgbm90IG51bGw8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjY2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjY4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBQb2xpbyBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjcxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ob3coKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjc3Ij4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjUxIiBsb2NhdG9yPSIzNTE6My0zNTI6NzUiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NjUiIGxvY2F0b3I9IjM1MTozLTM1MTo0MSIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY2NCIgbG9jYXRvcj0iMzUxOjMtMzUxOjQxIiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjYzIiBsb2NhdG9yPSIzNTE6My0zNTE6MjkiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NjYiIGxvY2F0b3I9IjM1Mjo5LTM1Mjo3NSIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY3OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjc5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjY3IiBsb2NhdG9yPSIzNTI6OS0zNTI6NzEiIHByZWNpc2lvbj0iV2VlayIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjc1IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjc2IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY3MyIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY3NCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY2OCIgbG9jYXRvcj0iMzUyOjM1LTM1Mjo2MSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzEiIGxvY2F0b3I9IjM1Mjo2Ny0zNTI6NzEiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzciIGxvY2F0b3I9IjM1Mjo3NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjgyIiBsb2NhdG9yPSIzNjE6MS0zNjI6NzQiIG5hbWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIOKJpSA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvLTEyMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iJnF1b3Q7Qml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikmcXVvdDsgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkiLz4KICAgICAgICAgICAgPGE6cyByPSI2ODIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90Oykg4omlIDQgd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvLTEyMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICZxdW90O0JpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpJnF1b3Q7IHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjgzIj4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3Q8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPig8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2ODMiIGxvY2F0b3I9IjM2MjozLTM2Mjo3NCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY4NCIgbG9jYXRvcj0iMzYyOjYtMzYyOjc0IiBuYW1lPSJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2ODciIGxvY2F0b3I9IjM3MDoxLTM3MTo0NiIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA2IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDYgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgNiB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDYgd2Vla3MtNDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjg3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNiB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSA2IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDYgd2Vla3MtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA2IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjY4OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjkwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY5MSI+ID49IDY8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjY4OCIgbG9jYXRvcj0iMzcxOjMtMzcxOjQ2IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY5MiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjkzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjkwIiBsb2NhdG9yPSIzNzE6My0zNzE6NDEiIG5hbWU9IkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjkxIiBsb2NhdG9yPSIzNzE6NDYiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3MDAiIGxvY2F0b3I9IjQ3NToxLTQ3NjoxMDgiIG5hbWU9IkRhdGUgb2YgRmlyc3QgUHJpbWFyeSBTZXJpZXMgUG9saW8gRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNzAwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IERhdGUgb2YgRmlyc3QgUHJpbWFyeSBTZXJpZXMgUG9saW8gRG9zZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjcwMSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+ZGF0ZSBmcm9tIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c3RhcnQgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzA4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzAzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzA0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5lYXJsaWVzdCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5vY2N1cnJlbmNlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzA4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50b0ludGVydmFsKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjcwMSIgbG9jYXRvcj0iNDc2OjMtNDc2OjEwOCIgeHNpOnR5cGU9IkRhdGVGcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzAyIiBsb2NhdG9yPSI0NzY6MTMtNDc2OjEwOCIgeHNpOnR5cGU9IlN0YXJ0Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzA4IiBsb2NhdG9yPSI0NzY6MjItNDc2OjEwOCIgbmFtZT0idG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDciIGxvY2F0b3I9IjQ3NjoyMi00NzY6OTUiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNzA0IiBsb2NhdG9yPSI0NzY6MjItNDc2Ojg0IiBuYW1lPSJlYXJsaWVzdCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjcwNSIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjcwNiIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcwMyIgbG9jYXRvcj0iNDc2OjIyLTQ3Njo3MyIgbmFtZT0iUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjY5NiIgbG9jYXRvcj0iMzc5OjEtMzgwOjYxIiBuYW1lPSJDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBBTkQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+IDYgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNjk2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQKQHBzZXVkb2NvZGU6ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBBTkQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA+IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQtMTM4CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjk3Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MTQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkFnZUluV2Vla3NBdCg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgRmlyc3QgUHJpbWFyeSBTZXJpZXMgUG9saW8gRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxNyI+ID4gNjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNjk3IiBsb2NhdG9yPSIzODA6My0zODA6NjEiIHhzaTp0eXBlPSJHcmVhdGVyIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MTgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjcxOSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcxNCIgbG9jYXRvcj0iMzgwOjMtMzgwOjU3IiBwcmVjaXNpb249IldlZWsiIHhzaTp0eXBlPSJDYWxjdWxhdGVBZ2VBdCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzE1IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MTYiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MTMiIHBhdGg9ImJpcnRoRGF0ZS52YWx1ZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI3MTIiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzA5IiBsb2NhdG9yPSIzODA6MTYtMzgwOjU2IiBuYW1lPSJEYXRlIG9mIEZpcnN0IFByaW1hcnkgU2VyaWVzIFBvbGlvIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzE3IiBsb2NhdG9yPSIzODA6NjEiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3MjIiIGxvY2F0b3I9IjM4ODoxLTM4OTo2MSIgbmFtZT0iQ2xpZW50J3MgYWdlIHdhcyA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2Ugd2FzIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IEFORCAmcXVvdDtEb3NlIG51bWJlciZxdW90OyA9IDEpIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ID0gNiB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJDbGllbnQncyBhZ2Ugd2FzIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQtMTM4Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKSIvPgogICAgICAgICAgICA8YTpzIHI9IjcyMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2Ugd2FzIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQKQHBzZXVkb2NvZGU6ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBBTkQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyA9IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIHdhcyA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjcyMyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5BZ2VJbldlZWtzQXQoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIEZpcnN0IFByaW1hcnkgU2VyaWVzIFBvbGlvIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzIiPiA9IDY8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjcyMyIgbG9jYXRvcj0iMzg5OjMtMzg5OjYxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjczMyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzM0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzI5IiBsb2NhdG9yPSIzODk6My0zODk6NTciIHByZWNpc2lvbj0iV2VlayIgeHNpOnR5cGU9IkNhbGN1bGF0ZUFnZUF0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MzAiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjczMSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyOCIgcGF0aD0iYmlydGhEYXRlLnZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjcyNyIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjQiIGxvY2F0b3I9IjM4OToxNi0zODk6NTYiIG5hbWU9IkRhdGUgb2YgRmlyc3QgUHJpbWFyeSBTZXJpZXMgUG9saW8gRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzIiIGxvY2F0b3I9IjM4OTo2MSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjczNyIgbG9jYXRvcj0iMzk3OjEtMzk5Ojc2IiBuYW1lPSJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgNiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvLTEyMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkiLz4KICAgICAgICAgICAgPGE6cyByPSI3MzciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgNiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnby0xMjEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjczOCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzQxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzQzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NTMiPiAmbHQ7IDY8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI3MzgiIGxvY2F0b3I9IjM5ODozLTM5OTo3NiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc0MSIgbG9jYXRvcj0iMzk4OjMtMzk4OjQxIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzQwIiBsb2NhdG9yPSIzOTg6My0zOTg6NDEiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzkiIGxvY2F0b3I9IjM5ODozLTM5ODoyOSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc0MiIgbG9jYXRvcj0iMzk5OjktMzk5Ojc2IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzU0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3NTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NDMiIGxvY2F0b3I9IjM5OTo5LTM5OTo3MiIgcHJlY2lzaW9uPSJNb250aCIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzUxIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzUyIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc0OSIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9Ijc1MCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc0NCIgbG9jYXRvcj0iMzk5OjM2LTM5OTo2MiIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NDciIGxvY2F0b3I9IjM5OTo2OC0zOTk6NzIiIHhzaTp0eXBlPSJOb3ciLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NTMiIGxvY2F0b3I9IjM5OTo3NiIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNzU4IiBsb2NhdG9yPSI0MDc6MS00MDg6NzUiIG5hbWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90Oykg4omlIDYgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnby0xMjEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNzU4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnby0xMjEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9Ijc1OSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzYwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzYwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9Ijc1OSIgbG9jYXRvcj0iNDA4OjMtNDA4Ojc1IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzYwIiBsb2NhdG9yPSI0MDg6Ni00MDg6NzUiIG5hbWU9IlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3NzAiIGxvY2F0b3I9IjUwNzoxLTUwODo1NSIgbmFtZT0iUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iNzcwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI3NzIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzQm9vc3RlcigpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNzcyIiBsb2NhdG9yPSI1MDg6My01MDg6NTUiIG5hbWU9InNlcmllc0Jvb3N0ZXIiIGxpYnJhcnlOYW1lPSJDb21tb24iIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc3MSIgbG9jYXRvcj0iNTA4OjMtNTA4OjM5IiBuYW1lPSJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3NjciIGxvY2F0b3I9IjUxMzoxLTUxNDo2MSIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTpzIHI9Ijc2NyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9Ijc3NiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzczIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI3NzYiIGxvY2F0b3I9IjUxNDozLTUxNDo2MSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI3NzMiIGxvY2F0b3I9IjUxNDo5LTUxNDo2MCIgbmFtZT0iUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNzYzIiBsb2NhdG9yPSI0MTY6MS00MTc6NTciIG5hbWU9Ik5vIHBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyBwb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9Ik5vIHBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyOCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkiLz4KICAgICAgICAgICAgPGE6cyByPSI3NjMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gcG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMApAY29kZTogTm8gcG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI4CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICZxdW90O05vIHBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9Ijc2NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzc3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3OCI+ID0gMDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNzY0IiBsb2NhdG9yPSI0MTc6My00MTc6NTciIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzc5IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3ODAiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NzciIGxvY2F0b3I9IjQxNzozLTQxNzo1MyIgbmFtZT0iTnVtYmVyIG9mIFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzc4IiBsb2NhdG9yPSI0MTc6NTciIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3ODMiIGxvY2F0b3I9IjQyNToxLTQyNjo1NyIgbmFtZT0iUG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1BvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iUG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI4Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKSIvPgogICAgICAgICAgICA8YTpzIHI9Ijc4MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBQb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxCkBjb2RlOiBQb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMjgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgJnF1b3Q7UG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNzg0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3ODUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzg2Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI3ODQiIGxvY2F0b3I9IjQyNjozLTQyNjo1NyIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3ODciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9Ijc4OCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc4NSIgbG9jYXRvcj0iNDI2OjMtNDI2OjUzIiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3ODYiIGxvY2F0b3I9IjQyNjo1NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9Ijc5MSIgbG9jYXRvcj0iNDg4OjEtNDkwOjM5IiBuYW1lPSJQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIvPgogICAgICAgICAgICA8YTpzIHI9Ijc5MSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1BvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI4MDYiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc5MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzkzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc5NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3OTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc5NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+STwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50eXBlT2ZEb3NlKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiB+IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc5OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db25jZXB0czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJUFYmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI4MDYiIGxvY2F0b3I9IjQ4OTozLTQ5MDozOSIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI3OTIiIGxvY2F0b3I9IjQ4OTozLTQ4OTo1NiIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI3OTMiIGxvY2F0b3I9IjQ4OTozLTQ4OTo1NCIgbmFtZT0iUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iNzk1IiBsb2NhdG9yPSI0OTA6My00OTA6MzkiIHhzaTp0eXBlPSJFcXVpdmFsZW50Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI4MDQiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjgwNSIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgwMCIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc5NyIgbG9jYXRvcj0iNDkwOjktNDkwOjIyIiBuYW1lPSJ0eXBlT2ZEb3NlIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3OTYiIGxvY2F0b3I9IjQ5MDo5IiBuYW1lPSJJIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgwMiIgeHNpOnR5cGU9IlRvQ29uY2VwdCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iODAzIiBuYW1lPSJ0OkNvZGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzk5IiBsb2NhdG9yPSI0OTA6MjYtNDkwOjM5IiBuYW1lPSJJUFYiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgeHNpOnR5cGU9IkNvZGVSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjgwOSIgbG9jYXRvcj0iNTAxOjEtNTAyOjY1IiBuYW1lPSJOdW1iZXIgb2YgUG9saW8gSVBWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIFBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6cyByPSI4MDkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjgxMyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iODEwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iODEzIiBsb2NhdG9yPSI1MDI6My01MDI6NjUiIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iODEwIiBsb2NhdG9yPSI1MDI6OS01MDI6NjQiIG5hbWU9IlBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="^^xsd:base64Binary ] ] ) . #
IG © 2023+ WHO. Package smart.who.int.immunizations#0.2.0 based on FHIR 4.0.1. Generated 2025-11-11
Links: Table of Contents |
QA Report
| Version History | License