WHO Immunization Implementation Guide
0.2.0 - ci-build
WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-immunizations/ and changes regularly. See the Directory of published versions
| Draft as of 2025-11-07 |
<Library xmlns="http://hl7.org/fhir">
<id value="IMMZD2DTPolioElements"/>
<meta>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"/>
</meta>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<div>
<table class="grid dict">
<tr>
<th scope="row"><b>Title: </b></th>
<td style="padding-left: 4px;">IMMZD2DTPolioElements</td>
</tr>
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">IMMZD2DTPolioElements</td>
</tr>
<tr>
<th scope="row"><b>Version: </b></th>
<td style="padding-left: 4px;">0.2.0</td>
</tr>
<tr>
<th scope="row"><b>Url: </b></th>
<td style="padding-left: 4px;"><a href="Library-IMMZD2DTPolioElements.html">IMMZD2DTPolioElements</a></td>
</tr>
<tr>
<th scope="row"><b>Status: </b></th>
<td style="padding-left: 4px;">draft</td>
</tr>
<tr>
<th scope="row"><b>Type: </b></th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<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>
</p>
<p style="margin-bottom: 5px;">
<b>code: </b> <span>logic-library</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Date: </b></th>
<td style="padding-left: 4px;">2025-11-07 22:20:12+0000</td>
</tr>
<tr>
<th scope="row"><b>Publisher: </b></th>
<td style="padding-left: 4px;">WHO</td>
</tr>
<tr>
<th scope="row"><b>Description: </b></th>
<td style="padding-left: 4px;"><div><p>This library defines context-independent elements for Polio used throughout the Immunization CPG</p>
</div></td>
</tr>
<tr>
<th scope="row"><b>Related Artifacts: </b></th>
<td style="padding-left: 4px;">
<p><b>Dependencies</b></p>
<ul>
<li><a href="Library-WHOConcepts.html">WHOConcepts</a></li>
<li><a href="Library-WHOCommon.html">WHOCommon</a></li>
<li><a href="Library-WHOElements.html">WHOElements</a></li>
<li><a href="Library-IMMZCommon.html">IMMZCommon</a></li>
<li><a href="Library-IMMZConcepts.html">IMMZConcepts</a></li>
<li><a href="Library-IMMZElements.html">IMMZElements</a></li>
</ul>
</td>
</tr>
<tr>
<th scope="row"><b>Parameters: </b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<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>
<tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Polio Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Polio Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Number of Polio Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Polio Dose 0 Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Number of Polio Dose 0 Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>Client's age is less than 1 week</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>bOPV birth dose (a zero dose) was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Client's age is less than 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>No poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>Client's age is more than 3 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>One poliovirus primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>bOPV Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Date of Latest bOPV Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<tr><th>Polio bOPV Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Number of Polio bOPV Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>The poliovirus dose administered is bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>The poliovirus dose administered is IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>IPV Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Date of Latest IPV Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<tr><th>Two poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>The two doses administered are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>The two doses administered are IPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Three poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>The three doses administered are bOPV</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Client's age is less than 14 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<tr><th>Four poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<tr><th>Five poliovirus primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Client's age is less than 8 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<tr><th>Date of Latest Polio Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<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>
<tr><th>Date of First Primary Series Polio Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
<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>
<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>
<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>
<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>
<tr><th>Polio Booster Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Number of Polio Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>No polio booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Polio booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Polio IPV Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>Number of Polio IPV Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<table>
<tr><th><a id="cql-content"><b>Content: </b></a> text/cql</th></tr>
<tr><td><pre><code class="language-cql">
/*
* Library: IMMZD2DTPolioElements
*/
library IMMZD2DTPolioElements
using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1'
include WHOConcepts
include WHOCommon called WC
include WHOElements called WE
include IMMZCommon called Common
include IMMZConcepts called Concepts
include IMMZElements called Elements
context Patient
/*
@internal: Polio containing Doses Administered to Patient
*/
define "Polio Doses Administered to Patient":
Elements."Doses Administered to Patient" I
where
I.vaccineCode in Concepts."Poliovirus-containing vaccines"
/*
@internal: Polio containing Doses Administered to Patient that are in the Primary series
*/
define "Polio Primary Series Doses Administered to Patient":
"Polio Doses Administered to Patient".seriesPrimary()
/*
@internal: Number of Polio Primary Series doses
*/
define "Number of Polio Primary Series Doses Administered":
Count("Polio Primary Series Doses Administered to Patient")
/*
@input: bOPV birth dose (a zero dose) was not administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Dose 0" AND "Birth dose" = TRUE) = 0
@code: bOPV birth dose (a zero dose) was not administered-146
@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)
*/
define "bOPV birth dose (a zero dose) was not administered":
"Number of Polio Dose 0 Doses Administered" = 0
/*
@input: Client's age is less than 1 week
@pseudocode: Today's date − "Date of birth" < 1 week
@code: Client's age is less than 1 week-39
@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)
*/
define "Client's age is less than 1 week":
Elements."Current Patient Age In Weeks" < 1
/*
@input: Client's age is more than or equal to 1 week
@pseudocode: Today's date − "Date of birth" ≥ 1 week
@code: Client's age is more than or equal to 1 week-39
@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)
*/
define "Client's age is more than or equal to 1 week":
Elements."Current Patient Age In Weeks" >= 1
/*
@input: bOPV birth dose (a zero dose) was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Dose 0" AND "Birth dose" = TRUE) = 1
@code: bOPV birth dose (a zero dose) was administered-146
@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)
*/
define "bOPV birth dose (a zero dose) was administered":
"Number of Polio Dose 0 Doses Administered" = 1
/*
@input: Client's age is less than 6 weeks
@pseudocode: Today's date − "Date of birth" < 6 weeks
@code: Client's age is less than 6 weeks-40
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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%)
*/
define "Client's age is less than 6 weeks":
Elements."Current Patient Age In Weeks" < 6
/*
@input: No poliovirus primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 0
@code: No poliovirus primary series doses were administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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])
@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%)
*/
define "No poliovirus primary series doses were administered":
"Number of Polio Primary Series Doses Administered" = 0
/*
@input: Client's age is between 6 weeks and 3 months
@pseudocode: 6 weeks ≤ Today's date − "Date of birth" ≤ 3 months
@code: Client's age is between 6 weeks and 3 months-51
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Client's age is between 6 weeks and 3 months":
6 <= Elements."Current Patient Age In Weeks"
and Elements."Current Patient Age In Months" <= 3
/*
@input: Client's age is more than 3 months
@pseudocode: Today's date − "Date of birth" > 3 months
@code: Client's age is more than 3 months-41
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Client's age is more than 3 months":
Elements."Current Patient Age In Months" > 3
/*
@input: One poliovirus primary series dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 1
@code: One poliovirus primary series dose was administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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])
@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%)
*/
define "One poliovirus primary series dose was administered":
"Number of Polio Primary Series Doses Administered" = 1
/*
@input: Client's age is between 6 weeks and 14 weeks
@pseudocode: 6 weeks ≤ Today's date − "Date of birth" < 14 weeks
@code: Client's age is between 6 weeks and 14 weeks-51
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Client's age is between 6 weeks and 14 weeks":
6 <= Elements."Current Patient Age In Weeks"
and Elements."Current Patient Age In Weeks" < 14
/*
@input: The latest bOPV dose was administered less than 4 weeks ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of poliovirus dose" = "bOPV") < 4 weeks
@code: The latest bOPV dose was administered less than 4 weeks ago-159
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The latest bOPV dose was administered less than 4 weeks ago":
"Date of Latest bOPV Dose" is not null
and duration in weeks between "Date of Latest bOPV Dose" and Now() < 4
/*
@input: The latest bOPV dose was administered more than 4 weeks ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of poliovirus dose" = "bOPV") ≥ 4 weeks
@code: The latest bOPV dose was administered more than 4 weeks ago-159
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The latest bOPV dose was administered more than 4 weeks ago":
not("The latest bOPV dose was administered less than 4 weeks ago")
/*
@input: The poliovirus dose administered is bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 1
@code: The poliovirus dose administered is bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The poliovirus dose administered is bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 1
/*
@input: Client's age is more than or equal to 14 weeks
@pseudocode: Today's date − "Date of birth" ≥ 14 weeks
@code: Client's age is more than or equal to 14 weeks-41
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Client's age is more than or equal to 14 weeks":
Elements."Current Patient Age In Weeks" >= 14
/*
@input: The poliovirus dose administered is IPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 0
@code: The poliovirus dose administered is IPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The poliovirus dose administered is IPV":
"Number of Polio bOPV Primary Series Doses Administered" = 0
/*
@input: The latest IPV dose was administered less than 4 months ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of poliovirus dose" = "IPV") < 4 months
@code: The latest IPV dose was administered less than 4 months ago-159
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The latest IPV dose was administered less than 4 months ago":
"Date of Latest IPV Dose" is not null
and duration in months between "Date of Latest IPV Dose" and Now() < 4
/*
@input: The latest IPV dose was administered more than 4 months ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of poliovirus dose" = "IPV") ≥ 4 months
@code: The latest IPV dose was administered more than 4 months ago-159
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The latest IPV dose was administered more than 4 months ago":
not("The latest IPV dose was administered less than 4 months ago")
/*
@input: Two poliovirus primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 2
@code: Two poliovirus primary series doses were administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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])
@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%)
*/
define "Two poliovirus primary series doses were administered":
"Number of Polio Primary Series Doses Administered" = 2
/*
@input: The two doses administered are bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 2
@code: The two doses administered are bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The two doses administered are bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 2
/*
@input: From the two doses administered one is bOPV and one is IPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 1
@code: From the two doses administered one is bOPV and one is IPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "From the two doses administered one is bOPV and one is IPV":
"Number of Polio bOPV Primary Series Doses Administered" = 1
/*
@input: The two doses administered are IPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 0
@code: The two doses administered are IPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The two doses administered are IPV":
"Number of Polio bOPV Primary Series Doses Administered" = 0
/*
@input: Three poliovirus primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 3
@code: Three poliovirus primary series doses were administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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])
@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%)
*/
define "Three poliovirus primary series doses were administered":
"Number of Polio Primary Series Doses Administered" = 3
/*
@input: The three doses administered are bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 3
@code: The three doses administered are bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "The three doses administered are bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 3
/*
@input: Client's age is less than 14 weeks
@pseudocode: Today's date − "Date of birth" < 14 weeks
@code: Client's age is less than 14 weeks-41
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Client's age is less than 14 weeks":
Elements."Current Patient Age In Weeks" < 14
/*
@input: From the three doses administered, one is IPV and two are bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 2
@code: From the three doses administered, one is IPV and two are bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "From the three doses administered, one is IPV and two are bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 2
/*
@input: From the three doses administered, one is bOPV and two are IPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 1
@code: From the three doses administered, one is bOPV and two are IPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "From the three doses administered, one is bOPV and two are IPV":
"Number of Polio bOPV Primary Series Doses Administered" = 1
/*
@input: Four poliovirus primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 4
@code: Four poliovirus primary series doses were administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
@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])
*/
define "Four poliovirus primary series doses were administered":
"Number of Polio Primary Series Doses Administered" = 4
/*
@input: From the four doses administered, one is IPV and three are bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 3
@code: From the four doses administered, one is IPV and three are bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "From the four doses administered, one is IPV and three are bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 3
/*
@input: From the four doses administered, two are IPV and two are bOPV
@pseudocode: Count of vaccines administered (where "Type of poliovirus dose" = "bOPV" and "Type of dose" = "Primary series") = 2
@code: From the four doses administered, two are IPV and two are bOPV-115
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "From the four doses administered, two are IPV and two are bOPV":
"Number of Polio bOPV Primary Series Doses Administered" = 2
/*
@input: Five poliovirus primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Primary series") = 5
@code: Five poliovirus primary series doses were administered-130
@decision: IMMZ.D2.DT.Polio.bOPV plus IPV: "Bivalent oral polio vaccine (bOPV) plus inactivated polio vaccine (IPV)" schedule (applicable for all countries)
*/
define "Five poliovirus primary series doses were administered":
"Number of Polio Primary Series Doses Administered" = 5
/*
@input: Client's age is less than 8 weeks
@pseudocode: Today's date − "Date of birth" < 8 weeks
@code: Client's age is less than 8 weeks-40
@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])
*/
define "Client's age is less than 8 weeks":
Elements."Current Patient Age In Weeks" < 8
/*
@input: Client's age is more than or equal to 8 weeks
@pseudocode: Today's date − "Date of birth" ≥ 8 weeks
@code: Client's age is more than or equal to 8 weeks-40
@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])
*/
define "Client's age is more than or equal to 8 weeks":
Elements."Current Patient Age In Weeks" >= 8
/*
@input: The latest poliovirus dose was administered less than 4 weeks ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines") < 4 weeks
@code: The latest poliovirus dose was administered less than 4 weeks ago-120
@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])
@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%)
*/
define "The latest poliovirus dose was administered less than 4 weeks ago":
"Date of Latest Polio Dose" is not null
and duration in weeks between "Date of Latest Polio Dose" and Now() < 4
/*
@input: The latest poliovirus dose was administered more than 4 weeks ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines") ≥ 4 weeks
@code: The latest poliovirus dose was administered more than 4 weeks ago-120
@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])
@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%)
*/
define "The latest poliovirus dose was administered more than 4 weeks ago":
not("The latest poliovirus dose was administered less than 4 weeks ago")
/*
@input: Client's age is more than or equal to 6 weeks
@pseudocode: Today's date − "Date of birth" ≥ 6 weeks
@code: Client's age is more than or equal to 6 weeks-40
@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%)
*/
define "Client's age is more than or equal to 6 weeks":
Elements."Current Patient Age In Weeks" >= 6
/*
@input: Client's age was more than 6 weeks when the primary series was started
@pseudocode: "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" AND "Dose number" = 1) − "Date of birth" > 6 weeks
@code: Client's age was more than 6 weeks when the primary series was started-138
@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%)
*/
define "Client's age was more than 6 weeks when the primary series was started":
AgeInWeeksAt("Date of First Primary Series Polio Dose") > 6
/*
@input: Client's age was 6 weeks when the primary series was started
@pseudocode: "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines" AND "Dose number" = 1) − "Date of birth" = 6 weeks
@code: Client's age was 6 weeks when the primary series was started-138
@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%)
*/
define "Client's age was 6 weeks when the primary series was started":
AgeInWeeksAt("Date of First Primary Series Polio Dose") = 6
/*
@input: The latest poliovirus dose was administered less than 6 months ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines") < 6 months
@code: The latest poliovirus dose was administered less than 6 months ago-121
@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%)
*/
define "The latest poliovirus dose was administered less than 6 months ago":
"Date of Latest Polio Dose" is not null
and duration in months between "Date of Latest Polio Dose" and Now() < 6
/*
@input: The latest poliovirus dose was administered more than 6 months ago
@pseudocode: Today's date − Latest "Date and time of vaccination" (where "Vaccine type" = "Poliovirus-containing vaccines") ≥ 6 months
@code: The latest poliovirus dose was administered more than 6 months ago-121
@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%)
*/
define "The latest poliovirus dose was administered more than 6 months ago":
not("The latest poliovirus dose was administered less than 6 months ago")
/*
@input: No polio booster dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Booster dose") = 0
@code: No polio booster dose was administered-128
@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%)
*/
define "No polio booster dose was administered":
"Number of Polio Booster Series Doses Administered" = 0
/*
@input: Polio booster dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Poliovirus-containing vaccines" and "Type of dose" = "Booster dose") = 1
@code: Polio booster dose was administered-128
@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%)
*/
define "Polio booster dose was administered":
"Number of Polio Booster Series Doses Administered" = 1
/*
@internal: bOPV Doses Administered to Patient
*/
define "bOPV Doses Administered to Patient":
"Polio Doses Administered to Patient" I
where I.typeOfDose() ~ Concepts."bOPV"
/*
@internal: IPV Doses Administered to Patient
*/
define "IPV Doses Administered to Patient":
"Polio Doses Administered to Patient" I
where I.typeOfDose() ~ Concepts."IPV"
/*
@internal: Date of Latest Polio Dose
*/
define "Date of Latest Polio Dose":
date from start of "Polio Doses Administered to Patient".mostRecent().occurrence.toInterval()
/*
@internal: Date of Latest bOPV Dose
*/
define "Date of Latest bOPV Dose":
date from start of "bOPV Doses Administered to Patient".mostRecent().occurrence.toInterval()
/*
@internal: Date of Latest IPV Dose
*/
define "Date of Latest IPV Dose":
date from start of "IPV Doses Administered to Patient".mostRecent().occurrence.toInterval()
/*
@internal: Polio Dose 0 Doses Administered to Patient
*/
define "Polio Dose 0 Doses Administered to Patient":
"Polio Doses Administered to Patient".seriesDose0()
/*
@internal: Number of Polio Dose 0 Doses Administered
*/
define "Number of Polio Dose 0 Doses Administered":
Count("Polio Dose 0 Doses Administered to Patient")
/*
@internal: Date of First Primary Series Polio Dose
*/
define "Date of First Primary Series Polio Dose":
date from start of "Polio Primary Series Doses Administered to Patient".earliest().occurrence.toInterval()
/*
@internal: Polio bOPV Primary Series Doses Administered to Patient
*/
define "Polio bOPV Primary Series Doses Administered to Patient":
"Polio Primary Series Doses Administered to Patient" I
where I.typeOfDose() ~ Concepts."bOPV"
/*
@internal: Polio IPV Primary Series Doses Administered to Patient
*/
define "Polio IPV Primary Series Doses Administered to Patient":
"Polio Primary Series Doses Administered to Patient" I
where I.typeOfDose() ~ Concepts."IPV"
/*
@internal: Number of Polio bOPV Primary Series Doses Administered
*/
define "Number of Polio bOPV Primary Series Doses Administered":
Count("Polio bOPV Primary Series Doses Administered to Patient")
/*
@internal: Number of Polio IPV Primary Series Doses Administered
*/
define "Number of Polio IPV Primary Series Doses Administered":
Count("Polio IPV Primary Series Doses Administered to Patient")
/*
@internal: Polio Booster Series Doses Administered to Patient
*/
define "Polio Booster Series Doses Administered to Patient":
"Polio Doses Administered to Patient".seriesBooster()
/*
@internal: Number of Polio Booster Series Doses Administered
*/
define "Number of Polio Booster Series Doses Administered":
Count("Polio Booster Series Doses Administered to Patient")
</code></pre></td></tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<table>
<tr><th><b>Content: </b> application/elm+xml</th></tr>
<tr><td><pre><code>Encoded data (198852 characters)</code></pre></td></tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</text>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability">
<valueCode value="computable"/>
</extension>
<url
value="http://smart.who.int/immunizations/Library/IMMZD2DTPolioElements"/>
<version value="0.2.0"/>
<name value="IMMZD2DTPolioElements"/>
<title value="IMMZD2DTPolioElements"/>
<status value="draft"/>
<experimental value="false"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2025-11-07T22:20:12+00:00"/>
<publisher value="WHO"/>
<contact>
<name value="WHO"/>
<telecom>
<system value="url"/>
<value value="http://who.int"/>
</telecom>
</contact>
<description
value="This library defines context-independent elements for Polio used throughout the Immunization CPG"/>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library WHOConcepts"/>
<resource value="http://smart.who.int/immunizations/Library/WHOConcepts"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library WC"/>
<resource value="http://smart.who.int/immunizations/Library/WHOCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library WE"/>
<resource value="http://smart.who.int/immunizations/Library/WHOElements"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library Common"/>
<resource value="http://smart.who.int/immunizations/Library/IMMZCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library Concepts"/>
<resource
value="http://smart.who.int/immunizations/Library/IMMZConcepts"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library Elements"/>
<resource
value="http://smart.who.int/immunizations/Library/IMMZElements"/>
</relatedArtifact>
<parameter>
<name value="Patient"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Patient"/>
</parameter>
<parameter>
<name value="Polio Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Polio Primary Series Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Number of Polio Primary Series Doses Administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="integer"/>
</parameter>
<parameter>
<name value="Polio Dose 0 Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Number of Polio Dose 0 Doses Administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="integer"/>
</parameter>
<parameter>
<name value="bOPV birth dose (a zero dose) was not administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is less than 1 week"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is more than or equal to 1 week"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="bOPV birth dose (a zero dose) was administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is less than 6 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="No poliovirus primary series doses were administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is between 6 weeks and 3 months"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is more than 3 months"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="One poliovirus primary series dose was administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is between 6 weeks and 14 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="bOPV Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Date of Latest bOPV Dose"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="date"/>
</parameter>
<parameter>
<name
value="The latest bOPV dose was administered less than 4 weeks ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="The latest bOPV dose was administered more than 4 weeks ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Polio bOPV Primary Series Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Number of Polio bOPV Primary Series Doses Administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="integer"/>
</parameter>
<parameter>
<name value="The poliovirus dose administered is bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is more than or equal to 14 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="The poliovirus dose administered is IPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="IPV Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Date of Latest IPV Dose"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="date"/>
</parameter>
<parameter>
<name
value="The latest IPV dose was administered less than 4 months ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="The latest IPV dose was administered more than 4 months ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Two poliovirus primary series doses were administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="The two doses administered are bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="From the two doses administered one is bOPV and one is IPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="The two doses administered are IPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Three poliovirus primary series doses were administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="The three doses administered are bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is less than 14 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="From the three doses administered, one is IPV and two are bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="From the three doses administered, one is bOPV and two are IPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Four poliovirus primary series doses were administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="From the four doses administered, one is IPV and three are bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="From the four doses administered, two are IPV and two are bOPV"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Five poliovirus primary series doses were administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is less than 8 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is more than or equal to 8 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Date of Latest Polio Dose"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="date"/>
</parameter>
<parameter>
<name
value="The latest poliovirus dose was administered less than 4 weeks ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="The latest poliovirus dose was administered more than 4 weeks ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Client's age is more than or equal to 6 weeks"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Date of First Primary Series Polio Dose"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="date"/>
</parameter>
<parameter>
<name
value="Client's age was more than 6 weeks when the primary series was started"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="Client's age was 6 weeks when the primary series was started"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="The latest poliovirus dose was administered less than 6 months ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name
value="The latest poliovirus dose was administered more than 6 months ago"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Polio Booster Series Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Number of Polio Booster Series Doses Administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="integer"/>
</parameter>
<parameter>
<name value="No polio booster dose was administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Polio booster dose was administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Polio IPV Primary Series Doses Administered to Patient"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Immunization"/>
</parameter>
<parameter>
<name value="Number of Polio IPV Primary Series Doses Administered"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="integer"/>
</parameter>
<content>
<contentType value="text/cql"/>
<data
value="Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFBvbGlvRWxlbWVudHMKICAqLwpsaWJyYXJ5IElNTVpEMkRUUG9saW9FbGVtZW50cwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29uY2VwdHMKaW5jbHVkZSBXSE9Db21tb24gY2FsbGVkIFdDCmluY2x1ZGUgV0hPRWxlbWVudHMgY2FsbGVkIFdFCgppbmNsdWRlIElNTVpDb21tb24gY2FsbGVkIENvbW1vbgppbmNsdWRlIElNTVpDb25jZXB0cyBjYWxsZWQgQ29uY2VwdHMKaW5jbHVkZSBJTU1aRWxlbWVudHMgY2FsbGVkIEVsZW1lbnRzCgoKY29udGV4dCBQYXRpZW50CgovKgpAaW50ZXJuYWw6IFBvbGlvIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogUG9saW8gY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICJQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiUG9saW92aXJ1cy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiRG9zZSAwIiBBTkQgIkJpcnRoIGRvc2UiID0gVFJVRSkgPSAwCkBjb2RlOiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgbm90IGFkbWluaXN0ZXJlZC0xNDYKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIG5vdCBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMSB3ZWVrCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDEgd2VlawpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWstMzkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxIHdlZWsiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxIHdlZWsKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxIHdlZWsKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrLTM5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5CaXJ0aCBkb3NlOiBCaXJ0aCBkb3NlIGFkbWluaXN0cmF0aW9uIGFzIHBhcnQgb2YgImJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHRoYXQgYXJlIHBvbGlvbXllbGl0aXMgKHBvbGlvKS1lbmRlbWljIGNvdW50cmllcyBvciBhdCBoaWdoIHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1YnNlcXVlbnQgc3ByZWFkIG9mIHBvbGlvIHRoYXQgZm9sbG93IHRoZSBjb21iaW5lZCBiT1BW4oCTSVBWIHNjaGVkdWxlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMSB3ZWVrIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gMQoKLyoKQGlucHV0OiBiT1BWIGJpcnRoIGRvc2UgKGEgemVybyBkb3NlKSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkRvc2UgMCIgQU5EICJCaXJ0aCBkb3NlIiA9IFRSVUUpID0gMQpAY29kZTogYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIGFkbWluaXN0ZXJlZC0xNDYKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLkJpcnRoIGRvc2U6IEJpcnRoIGRvc2UgYWRtaW5pc3RyYXRpb24gYXMgcGFydCBvZiAiYml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgdGhhdCBhcmUgcG9saW9teWVsaXRpcyAocG9saW8pLWVuZGVtaWMgY291bnRyaWVzIG9yIGF0IGhpZ2ggcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3Vic2VxdWVudCBzcHJlYWQgb2YgcG9saW8gdGhhdCBmb2xsb3cgdGhlIGNvbWJpbmVkIGJPUFbigJNJUFYgc2NoZWR1bGUpCiovCmRlZmluZSAiYk9QViBiaXJ0aCBkb3NlIChhIHplcm8gZG9zZSkgd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIDwgNgoKLyoKQGlucHV0OiBObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBObyBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIk5vIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpCAzIG1vbnRocwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMtNTEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMyBtb250aHMiOgogIDYgPD0gRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiCiAgYW5kIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPD0gMwoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA+IDMgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDMgbW9udGhzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMyBtb250aHMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPiAzCgovKgpAaW5wdXQ6IE9uZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogT25lIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIk9uZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCAxNCB3ZWVrcwpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxNCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MtNTEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgMTQgd2Vla3MiOgogIDYgPD0gRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiCiAgYW5kIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDE0CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIpIDwgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgYk9QViBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZSIgYW5kIE5vdygpIDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IGJPUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiKSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBiT1BWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgYk9QViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAxCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxNCB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxNCB3ZWVrcy00MQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDE0IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gMTQKCi8qCkBpbnB1dDogVGhlIHBvbGlvdmlydXMgZG9zZSBhZG1pbmlzdGVyZWQgaXMgSVBWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBUaGUgcG9saW92aXJ1cyBkb3NlIGFkbWluaXN0ZXJlZCBpcyBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBwb2xpb3ZpcnVzIGRvc2UgYWRtaW5pc3RlcmVkIGlzIElQViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAwCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiSVBWIikgPCA0IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28tMTU5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCBtb250aHMgYWdvIjoKICAiRGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IElQViBEb3NlIiBhbmQgTm93KCkgPCA0CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSVBWIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiSVBWIikg4omlIDQgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IElQViBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgbW9udGhzIGFnby0xNTkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IG1vbnRocyBhZ28iOgogIG5vdCgiVGhlIGxhdGVzdCBJUFYgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IG1vbnRocyBhZ28iKQoKLyoKQGlucHV0OiBUd28gcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMgpAY29kZTogVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiVHdvIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDIKCi8qCkBpbnB1dDogVGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQGNvZGU6IFRoZSB0d28gZG9zZXMgYWRtaW5pc3RlcmVkIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IEZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGNvZGU6IEZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkZyb20gdGhlIHR3byBkb3NlcyBhZG1pbmlzdGVyZWQgb25lIGlzIGJPUFYgYW5kIG9uZSBpcyBJUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCkBjb2RlOiBUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJUaGUgdHdvIGRvc2VzIGFkbWluaXN0ZXJlZCBhcmUgSVBWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMwpAY29kZTogVGhyZWUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMzAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaHJlZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAzCgovKgpAaW5wdXQ6IFRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKQGNvZGU6IFRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIlRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQgYXJlIGJPUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMwoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDE0IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDE0IHdlZWtzLTQxCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTQgd2Vla3MiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDE0CgovKgpAaW5wdXQ6IEZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdHdvIGFyZSBiT1BWCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJUeXBlIG9mIHBvbGlvdmlydXMgZG9zZSIgPSAiYk9QViIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBjb2RlOiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHR3byBhcmUgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0d28gYXJlIGJPUFYiOgogICJOdW1iZXIgb2YgUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMgoKLyoKQGlucHV0OiBGcm9tIHRoZSB0aHJlZSBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBiT1BWIGFuZCB0d28gYXJlIElQVgpAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVHlwZSBvZiBwb2xpb3ZpcnVzIGRvc2UiID0gImJPUFYiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogRnJvbSB0aGUgdGhyZWUgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgYk9QViBhbmQgdHdvIGFyZSBJUFYtMTE1CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQoqLwpkZWZpbmUgIkZyb20gdGhlIHRocmVlIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIGJPUFYgYW5kIHR3byBhcmUgSVBWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogRm91ciBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSA0CkBjb2RlOiBGb3VyIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTMwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5iT1BWIHBsdXMgSVBWOiAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKSBwbHVzIGluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChhcHBsaWNhYmxlIGZvciBhbGwgY291bnRyaWVzKQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQoqLwpkZWZpbmUgIkZvdXIgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gNAoKLyoKQGlucHV0OiBGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgb25lIGlzIElQViBhbmQgdGhyZWUgYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKQGNvZGU6IEZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCBvbmUgaXMgSVBWIGFuZCB0aHJlZSBhcmUgYk9QVi0xMTUKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLmJPUFYgcGx1cyBJUFY6ICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYpIHBsdXMgaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGFwcGxpY2FibGUgZm9yIGFsbCBjb3VudHJpZXMpCiovCmRlZmluZSAiRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIG9uZSBpcyBJUFYgYW5kIHRocmVlIGFyZSBiT1BWIjoKICAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDMKCi8qCkBpbnB1dDogRnJvbSB0aGUgZm91ciBkb3NlcyBhZG1pbmlzdGVyZWQsIHR3byBhcmUgSVBWIGFuZCB0d28gYXJlIGJPUFYKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlR5cGUgb2YgcG9saW92aXJ1cyBkb3NlIiA9ICJiT1BWIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQGNvZGU6IEZyb20gdGhlIGZvdXIgZG9zZXMgYWRtaW5pc3RlcmVkLCB0d28gYXJlIElQViBhbmQgdHdvIGFyZSBiT1BWLTExNQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJGcm9tIHRoZSBmb3VyIGRvc2VzIGFkbWluaXN0ZXJlZCwgdHdvIGFyZSBJUFYgYW5kIHR3byBhcmUgYk9QViI6CiAgIk51bWJlciBvZiBQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW5wdXQ6IEZpdmUgcG9saW92aXJ1cyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gNQpAY29kZTogRml2ZSBwb2xpb3ZpcnVzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEzMApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uYk9QViBwbHVzIElQVjogIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVikgcGx1cyBpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoYXBwbGljYWJsZSBmb3IgYWxsIGNvdW50cmllcykKKi8KZGVmaW5lICJGaXZlIHBvbGlvdmlydXMgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDUKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA4IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDggd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOCB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uU2VxdWVudGlhbCBJUFbigJNiT1BWOiBTZXF1ZW50aWFsICJCaXZhbGVudCBvcmFsIHBvbGlvIHZhY2NpbmUgKGJPUFYp4oCTaW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKSIgc2NoZWR1bGUgKGluIGNvdW50cmllcyB3aXRoIGhpZ2ggdmFjY2luYXRpb24gY292ZXJhZ2UgW2UuZy4gOTDigJM5NSVdIGFuZCBsb3cgaW1wb3J0YXRpb24gcmlzayBbd2hlcmUgbmVpZ2hib3VyaW5nIGNvdW50cmllcyBhbmQvb3IgY291bnRyaWVzIHRoYXQgc2hhcmUgc3Vic3RhbnRpYWwgcG9wdWxhdGlvbiBtb3ZlbWVudCBoYXZlIGEgc2ltaWxhcmx5IGhpZ2ggY292ZXJhZ2VdKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOCB3ZWVrcyI6CiAgRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIDwgOAoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSA4IHdlZWtzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLlNlcXVlbnRpYWwgSVBW4oCTYk9QVjogU2VxdWVudGlhbCAiQml2YWxlbnQgb3JhbCBwb2xpbyB2YWNjaW5lIChiT1BWKeKAk2luYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQVikiIHNjaGVkdWxlIChpbiBjb3VudHJpZXMgd2l0aCBoaWdoIHZhY2NpbmF0aW9uIGNvdmVyYWdlIFtlLmcuIDkw4oCTOTUlXSBhbmQgbG93IGltcG9ydGF0aW9uIHJpc2sgW3doZXJlIG5laWdoYm91cmluZyBjb3VudHJpZXMgYW5kL29yIGNvdW50cmllcyB0aGF0IHNoYXJlIHN1YnN0YW50aWFsIHBvcHVsYXRpb24gbW92ZW1lbnQgaGF2ZSBhIHNpbWlsYXJseSBoaWdoIGNvdmVyYWdlXSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDggd2Vla3MiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA+PSA4CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIDwgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTIwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gd2Vla3MgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSIgYW5kIE5vdygpIDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiKSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28tMTIwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5TZXF1ZW50aWFsIElQVuKAk2JPUFY6IFNlcXVlbnRpYWwgIkJpdmFsZW50IG9yYWwgcG9saW8gdmFjY2luZSAoYk9QVinigJNpbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpIiBzY2hlZHVsZSAoaW4gY291bnRyaWVzIHdpdGggaGlnaCB2YWNjaW5hdGlvbiBjb3ZlcmFnZSBbZS5nLiA5MOKAkzk1JV0gYW5kIGxvdyBpbXBvcnRhdGlvbiByaXNrIFt3aGVyZSBuZWlnaGJvdXJpbmcgY291bnRyaWVzIGFuZC9vciBjb3VudHJpZXMgdGhhdCBzaGFyZSBzdWJzdGFudGlhbCBwb3B1bGF0aW9uIG1vdmVtZW50IGhhdmUgYSBzaW1pbGFybHkgaGlnaCBjb3ZlcmFnZV0pCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IHBvbGlvdmlydXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIpCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNiB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omlIDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA2IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPj0gNgoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiA2IHdlZWtzIHdoZW4gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBzdGFydGVkCkBwc2V1ZG9jb2RlOiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgQU5EICJEb3NlIG51bWJlciIgPSAxKSDiiJIgIkRhdGUgb2YgYmlydGgiID4gNiB3ZWVrcwpAY29kZTogQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDYgd2Vla3Mgd2hlbiB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIHN0YXJ0ZWQiOgogIEFnZUluV2Vla3NBdCgiRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlIikgPiA2CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZApAcHNldWRvY29kZTogIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIEFORCAiRG9zZSBudW1iZXIiID0gMSkg4oiSICJEYXRlIG9mIGJpcnRoIiA9IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZC0xMzgKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSB3YXMgNiB3ZWVrcyB3aGVuIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgc3RhcnRlZCI6CiAgQWdlSW5XZWVrc0F0KCJEYXRlIG9mIEZpcnN0IFByaW1hcnkgU2VyaWVzIFBvbGlvIERvc2UiKSA9IDYKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIDwgNiBtb250aHMKQGNvZGU6IFRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnby0xMjEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlBvbGlvLklQVi1vbmx5OiBJbmFjdGl2YXRlZCBwb2xpbyB2YWNjaW5lIChJUFYpLW9ubHkgKGluIGNvdW50cmllcywgaW4gcG9saW8tZnJlZSByZWdpb25zLCB3aXRoIGEgdmVyeSBsb3cgcmlzayBvZiBpbXBvcnRhdGlvbiBhbmQgc3VzdGFpbmVkIGhpZ2ggcm91dGluZSBpbW11bml6YXRpb24gY292ZXJhZ2UgKHRoaXJkIGRvc2Ugb2YgdGhlIGRpcGh0aGVyaWHigJN0ZXRhbnVz4oCTcGVydHVzc2lzIHZhY2NpbmUgW0RUUDNdID4gOTAlKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGlzIG5vdCBudWxsCiAgICBhbmQgZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IFBvbGlvIERvc2UiIGFuZCBOb3coKSA8IDYKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIExhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIpIOKJpSA2IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvLTEyMQpAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBwb2xpb3ZpcnVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvIjoKICBub3QoIlRoZSBsYXRlc3QgcG9saW92aXJ1cyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyIpCgovKgpAaW5wdXQ6IE5vIHBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBvbGlvdmlydXMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMApAY29kZTogTm8gcG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI4CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5Qb2xpby5JUFYtb25seTogSW5hY3RpdmF0ZWQgcG9saW8gdmFjY2luZSAoSVBWKS1vbmx5IChpbiBjb3VudHJpZXMsIGluIHBvbGlvLWZyZWUgcmVnaW9ucywgd2l0aCBhIHZlcnkgbG93IHJpc2sgb2YgaW1wb3J0YXRpb24gYW5kIHN1c3RhaW5lZCBoaWdoIHJvdXRpbmUgaW1tdW5pemF0aW9uIGNvdmVyYWdlICh0aGlyZCBkb3NlIG9mIHRoZSBkaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyB2YWNjaW5lIFtEVFAzXSA+IDkwJSkKKi8KZGVmaW5lICJObyBwb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBQb2xpbyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQb2xpb3ZpcnVzLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKQGNvZGU6IFBvbGlvIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyOApAZGVjaXNpb246IElNTVouRDIuRFQuUG9saW8uSVBWLW9ubHk6IEluYWN0aXZhdGVkIHBvbGlvIHZhY2NpbmUgKElQViktb25seSAoaW4gY291bnRyaWVzLCBpbiBwb2xpby1mcmVlIHJlZ2lvbnMsIHdpdGggYSB2ZXJ5IGxvdyByaXNrIG9mIGltcG9ydGF0aW9uIGFuZCBzdXN0YWluZWQgaGlnaCByb3V0aW5lIGltbXVuaXphdGlvbiBjb3ZlcmFnZSAodGhpcmQgZG9zZSBvZiB0aGUgZGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgdmFjY2luZSBbRFRQM10gPiA5MCUpCiovCmRlZmluZSAiUG9saW8gYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnRlcm5hbDogYk9QViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgImJPUFYgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlIEkudHlwZU9mRG9zZSgpIH4gQ29uY2VwdHMuImJPUFYiCgovKgpAaW50ZXJuYWw6IElQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIklQViBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIlBvbGlvIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUgSS50eXBlT2ZEb3NlKCkgfiBDb25jZXB0cy4iSVBWIgoKLyoKQGludGVybmFsOiBEYXRlIG9mIExhdGVzdCBQb2xpbyBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgUG9saW8gRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIubW9zdFJlY2VudCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZQoqLwpkZWZpbmUgIkRhdGUgb2YgTGF0ZXN0IGJPUFYgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJiT1BWIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgSVBWIERvc2UKKi8KZGVmaW5lICJEYXRlIG9mIExhdGVzdCBJUFYgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJJUFYgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLm1vc3RSZWNlbnQoKS5vY2N1cnJlbmNlLnRvSW50ZXJ2YWwoKQoKLyoKQGludGVybmFsOiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzRG9zZTAoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZAoqLwpkZWZpbmUgIk51bWJlciBvZiBQb2xpbyBEb3NlIDAgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiUG9saW8gRG9zZSAwIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBGaXJzdCBQcmltYXJ5IFNlcmllcyBQb2xpbyBEb3NlIjoKICBkYXRlIGZyb20gc3RhcnQgb2YgIlBvbGlvIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5lYXJsaWVzdCgpLm9jY3VycmVuY2UudG9JbnRlcnZhbCgpCgovKgpAaW50ZXJuYWw6IFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBiT1BWIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiUG9saW8gUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIEkKICB3aGVyZSBJLnR5cGVPZkRvc2UoKSB+IENvbmNlcHRzLiJiT1BWIgoKLyoKQGludGVybmFsOiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJQb2xpbyBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlIEkudHlwZU9mRG9zZSgpIH4gQ29uY2VwdHMuIklQViIKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIGJPUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiUG9saW8gYk9QViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIElQViBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJQb2xpbyBJUFYgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBQb2xpbyBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIlBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiUG9saW8gRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc0Jvb3N0ZXIoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgUG9saW8gQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIFBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCI6CiAgQ291bnQoIlBvbGlvIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikK"/>
</content>
<content>
<contentType value="application/elm+xml"/>
<data
value="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=="/>
</content>
</Library>