WHO Immunization Implementation Guide
0.1.0 - CI Build
WHO Immunization Implementation Guide, published by World Health Organization (WHO). This is not an authorized publication; it is the continuous build for version 0.1.0). 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 2023-08-02 |
<Library xmlns="http://hl7.org/fhir">
<id value="IMMZIND43"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><h2>Related Artifacts</h2><table class="grid"><tr><td>depends-on</td><td>FHIR model information</td><td><code>http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</code></td></tr><tr><td>depends-on</td><td>Library FHIRHelpers</td><td><code>http://fhir.org/guides/who/smart-immunization/Library/FHIRHelpers|4.0.1</code></td></tr><tr><td>depends-on</td><td>Library IMMZCom</td><td><a href="Library-IMMZCommon.html">IMMZCommon</a></td></tr><tr><td>depends-on</td><td>Library IMMZc</td><td><a href="Library-IMMZConcepts.html">IMMZConcepts</a></td></tr><tr><td>depends-on</td><td>Library IMMZCon</td><td><a href="Library-IMMZConfig.html">IMMZConfig</a></td></tr><tr><td>depends-on</td><td>Library IMMZIndCom</td><td><a href="Library-IMMZIndicatorCommon.html">IMMZIndicatorCommon</a></td></tr><tr><td>depends-on</td><td>Library IMMZvl</td><td><a href="Library-IMMZVaccineLibrary.html">IMMZVaccineLibrary</a></td></tr><tr><td>depends-on</td><td>Library FC</td><td><a href="Library-FHIRCommon.html">FHIRCommon</a></td></tr><tr><td>depends-on</td><td>Code system ISO-8601-Derived Periods</td><td><code>http://ohie.org/CodeSystem/iso-8601-derived-periods</code></td></tr><tr><td>depends-on</td><td>Code system Administrative Gender Codes</td><td><a href="http://hl7.org/fhir/R4/codesystem-administrative-gender.html">AdministrativeGender</a></td></tr><tr><td>depends-on</td><td>Value set Varicella Vaccine</td><td><code>http://fhir.org/guides/who/smart-immunization/ValueSet/IMMZ.A1.DE22</code></td></tr></table><h2>Parameters</h2><table class="grid"><tr><td>Measurement Period</td><td>in</td><td>0</td><td>1</td><td>Period</td></tr><tr><td>Patient</td><td>out</td><td>0</td><td>1</td><td>Patient</td></tr><tr><td>numerator</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr><tr><td>denominator</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr><tr><td>Dose Sequence Stratifier</td><td>out</td><td>0</td><td>*</td><td>Resource</td></tr><tr><td>Age Group Stratifier</td><td>out</td><td>0</td><td>1</td><td>Coding</td></tr><tr><td>Geographic Region Stratifier</td><td>out</td><td>0</td><td>1</td><td>string</td></tr><tr><td>Gender Stratifier</td><td>out</td><td>0</td><td>1</td><td>Coding</td></tr></table><h2>Data Requirements</h2><table class="grid"><tr><td colspan="2"><b>Type</b>: <a href="http://hl7.org/fhir/R4/patient.html">Patient</a> (<a href="http://hl7.org/fhir/R4/patient.html">Patient</a>)</td></tr></table><table class="grid"><tr><td colspan="2"><b>Type</b>: <a href="http://hl7.org/fhir/R4/immunization.html">Immunization</a> (<a href="http://hl7.org/fhir/R4/immunization.html">Immunization</a>)</td></tr></table><table class="grid"><tr><td colspan="2"><b>Type</b>: <a href="http://hl7.org/fhir/R4/immunizationrecommendation.html">ImmunizationRecommendation</a> (<a href="http://hl7.org/fhir/R4/immunizationrecommendation.html">ImmunizationRecommendation</a>)</td></tr></table><h2>Contents</h2><p><code>text/cql</code></p><pre><code class="language-sql">/*
* Library: IMMZ.IND.43
* Immunization coverage for Varicella vaccinations (Computed Denominator)
* Compares the administered doses of varicella containing vaccine with the number of immunization recommendations for varicella vaccines expressed as a percentage.
*
* Numerator: Number of administrations of vaccines containing a varicella component during reporting period
* Numerator Computation: COUNT immunization events WHERE administered product is a Varicella vaccine (IMMZ.A1.DE.22) during reporting period
* Denominator: Number of immunization recommendations for varicella vaccines due during reporting period.
* Denominator Computation: COUNT immunization recommendation WHERE recommended product is varicella vaccine (IMMZ.A1.DE22) AND due date during reporting period.
*
* Disaggregation:
* - Dose Sequence (1, 2)
* - Age Group (< 12 months, 12 - 18 months, 18 - 36 months, 36 months - 12 years, > 12 years)
* - Geographic Region
* - Gender
*
* References: WHO Immunization Facility Analysis Guide (1)
*/
library IMMZIND43
// Start Skeleton CQL
using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1'
include IMMZCommon called IMMZCom
include IMMZConcepts called IMMZc
include IMMZConfig called IMMZCon
include IMMZIndicatorCommon called IMMZIndCom
include IMMZVaccineLibrary called IMMZvl
include FHIRCommon called FC
// End Skeleton CQL
parameter "Measurement Period" Interval<Date>
context Patient
/*
* Numerator: Number of administrations of vaccines containing a varicella component during reporting period
* Numerator Computation: COUNT immunization events WHERE administered product is a Varicella vaccine (IMMZ.A1.DE.22) during reporting period
*/
define "numerator":
exists(IMMZIndCom."Varicella Doses Administered to Patient During Measurement Period") // TODO: Write logic here
/*
* Denominator: Number of immunization recommendations for varicella vaccines due during reporting period.
* Denominator Computation: COUNT immunization recommendation WHERE recommended product is varicella vaccine (IMMZ.A1.DE22) AND due date during reporting period.
* TODO: Should we use recommendation here (like HPV) to allow CDSS to define the "cohort" or should cohort just be anyone under 12?
*/
define "denominator":
exists(IMMZIndCom."Varicella Doses Recommended During Reporting Period")
/*
* Disaggregator: Dose Sequence (1, 2)
*/
define "Dose Sequence Stratifier":
IMMZIndCom."Varicella Doses Administered to Patient During Measurement Period" I
return (singleton from I.protocolApplied).doseNumber
/*
* Disaggregator: Age Group (< 12 months, 12 - 18 months, 18 - 36 months, 36 months - 12 years, > 12 years)
*/
define "Age Group Stratifier":
IMMZIndCom."Varicella By Age Stratifier"
/*
* Disaggregator: Geographic Region
*/
define "Geographic Region Stratifier":
IMMZIndCom."By Geographic Region Stratifier"
/*
* Disaggregator: Administrative Gender (or Biological Sex)
*/
define "Gender Stratifier":
IMMZIndCom."By Administrative Gender Stratifier"
/* End of IMMZ.IND.43 */
</code></pre><p><code>Content not shown - (</code><code>application/elm+xml</code>, size = 14Kb)</p><p><code>Content not shown - (</code><code>application/elm+json</code>, size = 63Kb)</p></div>
</text>
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem">
<valueReference>
<reference value="Device/cqf-tooling"/>
</valueReference>
</extension>
<url
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZIND43"/>
<version value="0.1.0"/>
<name value="IMMZIND43"/>
<status value="draft"/>
<date value="2023-08-02T04:40:13+00:00"/>
<publisher value="World Health Organization (WHO)"/>
<jurisdiction>
<coding>
<system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
<code value="001"/>
</coding>
</jurisdiction>
<relatedArtifact>
<type value="depends-on"/>
<display value="FHIR model information"/>
<resource
value="http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library FHIRHelpers"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/FHIRHelpers|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library IMMZCom"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library IMMZc"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZConcepts"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library IMMZCon"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZConfig"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library IMMZIndCom"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZIndicatorCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library IMMZvl"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/IMMZVaccineLibrary"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library FC"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/Library/FHIRCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Code system ISO-8601-Derived Periods"/>
<resource value="http://ohie.org/CodeSystem/iso-8601-derived-periods"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Code system Administrative Gender Codes"/>
<resource value="http://hl7.org/fhir/administrative-gender"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Varicella Vaccine"/>
<resource
value="http://fhir.org/guides/who/smart-immunization/ValueSet/IMMZ.A1.DE22"/>
</relatedArtifact>
<parameter>
<name value="Measurement Period"/>
<use value="in"/>
<min value="0"/>
<max value="1"/>
<type value="Period"/>
</parameter>
<parameter>
<name value="Patient"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Patient"/>
</parameter>
<parameter>
<name value="numerator"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="denominator"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Dose Sequence Stratifier"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Resource"/>
</parameter>
<parameter>
<name value="Age Group Stratifier"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Coding"/>
</parameter>
<parameter>
<name value="Geographic Region Stratifier"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="string"/>
</parameter>
<parameter>
<name value="Gender Stratifier"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Coding"/>
</parameter>
<dataRequirement>
<type value="Patient"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
<mustSupport value="use"/>
</dataRequirement>
<dataRequirement>
<type value="Immunization"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Immunization"/>
<mustSupport value="status"/>
<mustSupport value="vaccineCode"/>
<mustSupport value="occurrence"/>
<mustSupport value="protocolApplied"/>
<mustSupport value="protocolApplied.doseNumber"/>
</dataRequirement>
<dataRequirement>
<type value="ImmunizationRecommendation"/>
<profile
value="http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation"/>
<mustSupport value="recommendation"/>
</dataRequirement>
<content>
<contentType value="text/cql"/>
<data
value="LyoNCiAqIExpYnJhcnk6IElNTVouSU5ELjQzDQogKiBJbW11bml6YXRpb24gY292ZXJhZ2UgZm9yIFZhcmljZWxsYSB2YWNjaW5hdGlvbnMgKENvbXB1dGVkIERlbm9taW5hdG9yKSANCiAqIENvbXBhcmVzIHRoZSBhZG1pbmlzdGVyZWQgZG9zZXMgb2YgdmFyaWNlbGxhIGNvbnRhaW5pbmcgdmFjY2luZSB3aXRoIHRoZSBudW1iZXIgb2YgaW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9ucyBmb3IgdmFyaWNlbGxhIHZhY2NpbmVzIGV4cHJlc3NlZCBhcyBhIHBlcmNlbnRhZ2UuDQogKiANCiAqIE51bWVyYXRvcjogTnVtYmVyIG9mIGFkbWluaXN0cmF0aW9ucyBvZiB2YWNjaW5lcyBjb250YWluaW5nIGEgdmFyaWNlbGxhIGNvbXBvbmVudCBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZCANCiAqIE51bWVyYXRvciBDb21wdXRhdGlvbjogQ09VTlQgaW1tdW5pemF0aW9uIGV2ZW50cyBXSEVSRSBhZG1pbmlzdGVyZWQgcHJvZHVjdCBpcyBhIFZhcmljZWxsYSB2YWNjaW5lIChJTU1aLkExLkRFLjIyKSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZA0KICogRGVub21pbmF0b3I6IE51bWJlciBvZiBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb25zIGZvciB2YXJpY2VsbGEgdmFjY2luZXMgZHVlIGR1cmluZyByZXBvcnRpbmcgcGVyaW9kLg0KICogRGVub21pbmF0b3IgQ29tcHV0YXRpb246IENPVU5UIGltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBXSEVSRSByZWNvbW1lbmRlZCBwcm9kdWN0IGlzIHZhcmljZWxsYSB2YWNjaW5lIChJTU1aLkExLkRFMjIpIEFORCBkdWUgZGF0ZSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZC4NCiAqIA0KICogRGlzYWdncmVnYXRpb246DQogKiAgIC0gRG9zZSBTZXF1ZW5jZSAoMSwgMikNCiAqICAgLSBBZ2UgR3JvdXAgKDwgMTIgbW9udGhzLCAxMiAtIDE4IG1vbnRocywgMTggLSAzNiBtb250aHMsIDM2IG1vbnRocyAtIDEyIHllYXJzLCA+IDEyIHllYXJzKQ0KICogICAtIEdlb2dyYXBoaWMgUmVnaW9uDQogKiAgIC0gR2VuZGVyDQogKiANCiAqIFJlZmVyZW5jZXM6IFdITyBJbW11bml6YXRpb24gRmFjaWxpdHkgQW5hbHlzaXMgR3VpZGUgKDEpDQogKi8NCg0KbGlicmFyeSBJTU1aSU5ENDMNCg0KLy8gU3RhcnQgU2tlbGV0b24gQ1FMDQp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJw0KaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScNCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgSU1NWkNvbQ0KaW5jbHVkZSBJTU1aQ29uY2VwdHMgY2FsbGVkIElNTVpjDQppbmNsdWRlIElNTVpDb25maWcgY2FsbGVkIElNTVpDb24NCmluY2x1ZGUgSU1NWkluZGljYXRvckNvbW1vbiBjYWxsZWQgSU1NWkluZENvbQ0KaW5jbHVkZSBJTU1aVmFjY2luZUxpYnJhcnkgY2FsbGVkIElNTVp2bA0KaW5jbHVkZSBGSElSQ29tbW9uIGNhbGxlZCBGQw0KLy8gRW5kIFNrZWxldG9uIENRTA0KcGFyYW1ldGVyICJNZWFzdXJlbWVudCBQZXJpb2QiIEludGVydmFsPERhdGU+DQpjb250ZXh0IFBhdGllbnQNCg0KLyoNCiAqIE51bWVyYXRvcjogTnVtYmVyIG9mIGFkbWluaXN0cmF0aW9ucyBvZiB2YWNjaW5lcyBjb250YWluaW5nIGEgdmFyaWNlbGxhIGNvbXBvbmVudCBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZA0KICogTnVtZXJhdG9yIENvbXB1dGF0aW9uOiBDT1VOVCBpbW11bml6YXRpb24gZXZlbnRzIFdIRVJFIGFkbWluaXN0ZXJlZCBwcm9kdWN0IGlzIGEgVmFyaWNlbGxhIHZhY2NpbmUgKElNTVouQTEuREUuMjIpIGR1cmluZyByZXBvcnRpbmcgcGVyaW9kDQogKi8NCmRlZmluZSAibnVtZXJhdG9yIjoNCgkJZXhpc3RzKElNTVpJbmRDb20uIlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIikgLy8gVE9ETzogV3JpdGUgbG9naWMgaGVyZSANCg0KLyoNCiAqIERlbm9taW5hdG9yOiBOdW1iZXIgb2YgaW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9ucyBmb3IgdmFyaWNlbGxhIHZhY2NpbmVzIGR1ZSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZC4NCiAqIERlbm9taW5hdG9yIENvbXB1dGF0aW9uOiBDT1VOVCBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gV0hFUkUgcmVjb21tZW5kZWQgcHJvZHVjdCBpcyB2YXJpY2VsbGEgdmFjY2luZSAoSU1NWi5BMS5ERTIyKSBBTkQgZHVlIGRhdGUgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QuDQogKiBUT0RPOiBTaG91bGQgd2UgdXNlIHJlY29tbWVuZGF0aW9uIGhlcmUgKGxpa2UgSFBWKSB0byBhbGxvdyBDRFNTIHRvIGRlZmluZSB0aGUgImNvaG9ydCIgb3Igc2hvdWxkIGNvaG9ydCBqdXN0IGJlIGFueW9uZSB1bmRlciAxMj8NCiAqLw0KZGVmaW5lICJkZW5vbWluYXRvciI6DQoJZXhpc3RzKElNTVpJbmRDb20uIlZhcmljZWxsYSBEb3NlcyBSZWNvbW1lbmRlZCBEdXJpbmcgUmVwb3J0aW5nIFBlcmlvZCIpDQoNCi8qDQogKiBEaXNhZ2dyZWdhdG9yOiBEb3NlIFNlcXVlbmNlICgxLCAyKQ0KICovDQpkZWZpbmUgIkRvc2UgU2VxdWVuY2UgU3RyYXRpZmllciI6DQoJSU1NWkluZENvbS4iVmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiIEkNCglyZXR1cm4gKHNpbmdsZXRvbiBmcm9tIEkucHJvdG9jb2xBcHBsaWVkKS5kb3NlTnVtYmVyDQoNCi8qDQogKiBEaXNhZ2dyZWdhdG9yOiBBZ2UgR3JvdXAgKDwgMTIgbW9udGhzLCAxMiAtIDE4IG1vbnRocywgMTggLSAzNiBtb250aHMsIDM2IG1vbnRocyAtIDEyIHllYXJzLCA+IDEyIHllYXJzKQ0KICovDQpkZWZpbmUgIkFnZSBHcm91cCBTdHJhdGlmaWVyIjoNCglJTU1aSW5kQ29tLiJWYXJpY2VsbGEgQnkgQWdlIFN0cmF0aWZpZXIiDQoNCi8qDQogKiBEaXNhZ2dyZWdhdG9yOiBHZW9ncmFwaGljIFJlZ2lvbg0KICovDQpkZWZpbmUgIkdlb2dyYXBoaWMgUmVnaW9uIFN0cmF0aWZpZXIiOg0KCUlNTVpJbmRDb20uIkJ5IEdlb2dyYXBoaWMgUmVnaW9uIFN0cmF0aWZpZXIiDQoNCi8qDQogKiBEaXNhZ2dyZWdhdG9yOiBBZG1pbmlzdHJhdGl2ZSBHZW5kZXIgKG9yIEJpb2xvZ2ljYWwgU2V4KQ0KICovDQpkZWZpbmUgIkdlbmRlciBTdHJhdGlmaWVyIjoNCglJTU1aSW5kQ29tLiJCeSBBZG1pbmlzdHJhdGl2ZSBHZW5kZXIgU3RyYXRpZmllciINCg0KLyogRW5kIG9mIElNTVouSU5ELjQzICovDQo="/>
</content>
<content>
<contentType value="application/elm+xml"/>
<data
value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxsaWJyYXJ5IHhtbG5zPSJ1cm46aGw3LW9yZzplbG06cjEiIHhtbG5zOnQ9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6Zmhpcj0iaHR0cDovL2hsNy5vcmcvZmhpciIgeG1sbnM6cWRtNDM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY0XzMiIHhtbG5zOnFkbTUzPSJ1cm46aGVhbHRoaXQtZ292OnFkbTp2NV8zIiB4bWxuczphPSJ1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjEiPg0KICAgPGFubm90YXRpb24gdHJhbnNsYXRvclZlcnNpb249IjEuNCIgdHJhbnNsYXRvck9wdGlvbnM9IkVuYWJsZUFubm90YXRpb25zLEVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iIHhzaTp0eXBlPSJhOkNxbFRvRWxtSW5mbyIvPg0KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICA8YTpzIHI9IjM3Ij4NCiAgICAgICAgIDxhOnM+LyoKICogTGlicmFyeTogSU1NWi5JTkQuNDMKICogSW1tdW5pemF0aW9uIGNvdmVyYWdlIGZvciBWYXJpY2VsbGEgdmFjY2luYXRpb25zIChDb21wdXRlZCBEZW5vbWluYXRvcikgCiAqIENvbXBhcmVzIHRoZSBhZG1pbmlzdGVyZWQgZG9zZXMgb2YgdmFyaWNlbGxhIGNvbnRhaW5pbmcgdmFjY2luZSB3aXRoIHRoZSBudW1iZXIgb2YgaW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9ucyBmb3IgdmFyaWNlbGxhIHZhY2NpbmVzIGV4cHJlc3NlZCBhcyBhIHBlcmNlbnRhZ2UuCiAqIAogKiBOdW1lcmF0b3I6IE51bWJlciBvZiBhZG1pbmlzdHJhdGlvbnMgb2YgdmFjY2luZXMgY29udGFpbmluZyBhIHZhcmljZWxsYSBjb21wb25lbnQgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QgCiAqIE51bWVyYXRvciBDb21wdXRhdGlvbjogQ09VTlQgaW1tdW5pemF0aW9uIGV2ZW50cyBXSEVSRSBhZG1pbmlzdGVyZWQgcHJvZHVjdCBpcyBhIFZhcmljZWxsYSB2YWNjaW5lIChJTU1aLkExLkRFLjIyKSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZAogKiBEZW5vbWluYXRvcjogTnVtYmVyIG9mIGltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbnMgZm9yIHZhcmljZWxsYSB2YWNjaW5lcyBkdWUgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QuCiAqIERlbm9taW5hdG9yIENvbXB1dGF0aW9uOiBDT1VOVCBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gV0hFUkUgcmVjb21tZW5kZWQgcHJvZHVjdCBpcyB2YXJpY2VsbGEgdmFjY2luZSAoSU1NWi5BMS5ERTIyKSBBTkQgZHVlIGRhdGUgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QuCiAqIAogKiBEaXNhZ2dyZWdhdGlvbjoKICogICAtIERvc2UgU2VxdWVuY2UgKDEsIDIpCiAqICAgLSBBZ2UgR3JvdXAgKCZsdDsgMTIgbW9udGhzLCAxMiAtIDE4IG1vbnRocywgMTggLSAzNiBtb250aHMsIDM2IG1vbnRocyAtIDEyIHllYXJzLCA+IDEyIHllYXJzKQogKiAgIC0gR2VvZ3JhcGhpYyBSZWdpb24KICogICAtIEdlbmRlcgogKiAKICogUmVmZXJlbmNlczogV0hPIEltbXVuaXphdGlvbiBGYWNpbGl0eSBBbmFseXNpcyBHdWlkZSAoMSkKICovCmxpYnJhcnkgSU1NWklORDQzPC9hOnM+DQogICAgICA8L2E6cz4NCiAgIDwvYW5ub3RhdGlvbj4NCiAgIDxpZGVudGlmaWVyIGlkPSJJTU1aSU5ENDMiIHN5c3RlbT0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vc21hcnQtaW1tdW5pemF0aW9uIi8+DQogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPg0KICAgPHVzaW5ncz4NCiAgICAgIDxkZWYgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2F0b3I9IjIzOjEtMjM6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMSI+DQogICAgICAgICAgICAgICA8YTpzPi8vIFN0YXJ0IFNrZWxldG9uIENRTAp1c2luZyA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPkZISVI8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgPC91c2luZ3M+DQogICA8aW5jbHVkZXM+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjIiIGxvY2F0b3I9IjI0OjEtMjQ6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjIiPg0KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSIzIiBsb2NhdG9yPSIyNToxLTI1OjMzIiBsb2NhbElkZW50aWZpZXI9IklNTVpDb20iIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9JTU1aQ29tbW9uIj4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSIzIj4NCiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIElNTVpDb208L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjQiIGxvY2F0b3I9IjI2OjEtMjY6MzMiIGxvY2FsSWRlbnRpZmllcj0iSU1NWmMiIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9JTU1aQ29uY2VwdHMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjQiPg0KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbmNlcHRzPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBJTU1aYzwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICA8L2RlZj4NCiAgICAgIDxkZWYgbG9jYWxJZD0iNSIgbG9jYXRvcj0iMjc6MS0yNzozMyIgbG9jYWxJZGVudGlmaWVyPSJJTU1aQ29uIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9zbWFydC1pbW11bml6YXRpb24vSU1NWkNvbmZpZyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iNSI+DQogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uZmlnPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBJTU1aQ29uPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSI2IiBsb2NhdG9yPSIyODoxLTI4OjQ1IiBsb2NhbElkZW50aWZpZXI9IklNTVpJbmRDb20iIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9JTU1aSW5kaWNhdG9yQ29tbW9uIj4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSI2Ij4NCiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPklNTVpJbmRpY2F0b3JDb21tb248L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIElNTVpJbmRDb208L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjciIGxvY2F0b3I9IjI5OjEtMjk6NDAiIGxvY2FsSWRlbnRpZmllcj0iSU1NWnZsIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9zbWFydC1pbW11bml6YXRpb24vSU1NWlZhY2NpbmVMaWJyYXJ5Ij4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSI3Ij4NCiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPklNTVpWYWNjaW5lTGlicmFyeTwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgSU1NWnZsPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSI4IiBsb2NhdG9yPSIzMDoxLTMwOjI4IiBsb2NhbElkZW50aWZpZXI9IkZDIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9zbWFydC1pbW11bml6YXRpb24vRkhJUkNvbW1vbiI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iOCI+DQogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSQ29tbW9uPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBGQzwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICA8L2RlZj4NCiAgIDwvaW5jbHVkZXM+DQogICA8cGFyYW1ldGVycz4NCiAgICAgIDxkZWYgbG9jYWxJZD0iMTEiIGxvY2F0b3I9IjMyOjEtMzI6NDUiIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMTEiPg0KICAgICAgICAgICAgICAgPGE6cz4vLyBFbmQgU2tlbGV0b24gQ1FMCnBhcmFtZXRlciAmcXVvdDtNZWFzdXJlbWVudCBQZXJpb2QmcXVvdDsgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzIHI9IjEwIj4NCiAgICAgICAgICAgICAgICAgIDxhOnM+SW50ZXJ2YWwmbHQ7PC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjkiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz5EYXRlPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+PjwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjEwIiBsb2NhdG9yPSIzMjozMi0zMjo0NSIgeHNpOnR5cGU9IkludGVydmFsVHlwZVNwZWNpZmllciI+DQogICAgICAgICAgICA8cG9pbnRUeXBlIGxvY2FsSWQ9IjkiIGxvY2F0b3I9IjMyOjQxLTMyOjQ0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4NCiAgICAgICAgIDwvcGFyYW1ldGVyVHlwZVNwZWNpZmllcj4NCiAgICAgIDwvZGVmPg0KICAgPC9wYXJhbWV0ZXJzPg0KICAgPHN0YXRlbWVudHM+DQogICAgICA8ZGVmIGxvY2F0b3I9IjMzOjEtMzM6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPg0KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iMzM6MS0zMzoxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjE1IiBsb2NhdG9yPSIzOToxLTQwOjg4IiBuYW1lPSJudW1lcmF0b3IiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjE1Ij4NCiAgICAgICAgICAgICAgIDxhOnM+LyoKICogTnVtZXJhdG9yOiBOdW1iZXIgb2YgYWRtaW5pc3RyYXRpb25zIG9mIHZhY2NpbmVzIGNvbnRhaW5pbmcgYSB2YXJpY2VsbGEgY29tcG9uZW50IGR1cmluZyByZXBvcnRpbmcgcGVyaW9kCiAqIE51bWVyYXRvciBDb21wdXRhdGlvbjogQ09VTlQgaW1tdW5pemF0aW9uIGV2ZW50cyBXSEVSRSBhZG1pbmlzdGVyZWQgcHJvZHVjdCBpcyBhIFZhcmljZWxsYSB2YWNjaW5lIChJTU1aLkExLkRFLjIyKSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZAogKi8KZGVmaW5lICZxdW90O251bWVyYXRvciZxdW90OzoKCQk8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnMgcj0iMTQiPg0KICAgICAgICAgICAgICAgICAgPGE6cz5leGlzdHM8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTMiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aSW5kQ29tPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxMyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1ZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kJnF1b3Q7PC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxNCIgbG9jYXRvcj0iNDA6My00MDo4OCIgeHNpOnR5cGU9IkV4aXN0cyI+DQogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIxMyIgbG9jYXRvcj0iNDA6OS00MDo4OCIgbmFtZT0iVmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiIGxpYnJhcnlOYW1lPSJJTU1aSW5kQ29tIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjE5IiBsb2NhdG9yPSI0NzoxLTQ4OjczIiBuYW1lPSJkZW5vbWluYXRvciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMTkiPg0KICAgICAgICAgICAgICAgPGE6cz4vLyBUT0RPOiBXcml0ZSBsb2dpYyBoZXJlIAoKLyoKICogRGVub21pbmF0b3I6IE51bWJlciBvZiBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb25zIGZvciB2YXJpY2VsbGEgdmFjY2luZXMgZHVlIGR1cmluZyByZXBvcnRpbmcgcGVyaW9kLgogKiBEZW5vbWluYXRvciBDb21wdXRhdGlvbjogQ09VTlQgaW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9uIFdIRVJFIHJlY29tbWVuZGVkIHByb2R1Y3QgaXMgdmFyaWNlbGxhIHZhY2NpbmUgKElNTVouQTEuREUyMikgQU5EIGR1ZSBkYXRlIGR1cmluZyByZXBvcnRpbmcgcGVyaW9kLgogKiBUT0RPOiBTaG91bGQgd2UgdXNlIHJlY29tbWVuZGF0aW9uIGhlcmUgKGxpa2UgSFBWKSB0byBhbGxvdyBDRFNTIHRvIGRlZmluZSB0aGUgJnF1b3Q7Y29ob3J0JnF1b3Q7IG9yIHNob3VsZCBjb2hvcnQganVzdCBiZSBhbnlvbmUgdW5kZXIgMTI/CiAqLwpkZWZpbmUgJnF1b3Q7ZGVub21pbmF0b3ImcXVvdDs6Cgk8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnMgcj0iMTgiPg0KICAgICAgICAgICAgICAgICAgPGE6cz5leGlzdHM8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTciPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE3Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aSW5kQ29tPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1ZhcmljZWxsYSBEb3NlcyBSZWNvbW1lbmRlZCBEdXJpbmcgUmVwb3J0aW5nIFBlcmlvZCZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPg0KICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTgiIGxvY2F0b3I9IjQ4OjItNDg6NzMiIHhzaTp0eXBlPSJFeGlzdHMiPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTciIGxvY2F0b3I9IjQ4OjgtNDg6NzMiIG5hbWU9IlZhcmljZWxsYSBEb3NlcyBSZWNvbW1lbmRlZCBEdXJpbmcgUmVwb3J0aW5nIFBlcmlvZCIgbGlicmFyeU5hbWU9IklNTVpJbmRDb20iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICA8L2V4cHJlc3Npb24+DQogICAgICA8L2RlZj4NCiAgICAgIDxkZWYgbG9jYWxJZD0iMjgiIGxvY2F0b3I9IjUzOjEtNTU6NTMiIG5hbWU9IkRvc2UgU2VxdWVuY2UgU3RyYXRpZmllciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMjgiPg0KICAgICAgICAgICAgICAgPGE6cz4vKgogKiBEaXNhZ2dyZWdhdG9yOiBEb3NlIFNlcXVlbmNlICgxLCAyKQogKi8KZGVmaW5lICZxdW90O0Rvc2UgU2VxdWVuY2UgU3RyYXRpZmllciZxdW90OzoKCTwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cyByPSIyNyI+DQogICAgICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPklNTVpJbmRDb20uJnF1b3Q7VmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QmcXVvdDs8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBJPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz4KCTwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNiI+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPnJldHVybiA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPig8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5zaW5nbGV0b24gZnJvbSA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+cHJvdG9jb2xBcHBsaWVkPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZG9zZU51bWJlcjwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI3IiBsb2NhdG9yPSI1NDoyLTU1OjUzIiB4c2k6dHlwZT0iUXVlcnkiPg0KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyMSIgbG9jYXRvcj0iNTQ6Mi01NDo4MSIgYWxpYXM9IkkiPg0KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjAiIGxvY2F0b3I9IjU0OjItNTQ6NzkiIG5hbWU9IlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIiBsaWJyYXJ5TmFtZT0iSU1NWkluZENvbSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgPHJldHVybiBsb2NhbElkPSIyNiIgbG9jYXRvcj0iNTU6Mi01NTo1MyI+DQogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNSIgbG9jYXRvcj0iNTU6OS01NTo1MyIgcGF0aD0iZG9zZU51bWJlciIgeHNpOnR5cGU9IlByb3BlcnR5Ij4NCiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjQiIGxvY2F0b3I9IjU1OjktNTU6NDIiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4NCiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIzIiBsb2NhdG9yPSI1NToyNS01NTo0MSIgcGF0aD0icHJvdG9jb2xBcHBsaWVkIiBzY29wZT0iSSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+DQogICAgICAgICAgICAgICAgICA8L3NvdXJjZT4NCiAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgIDwvcmV0dXJuPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjMxIiBsb2NhdG9yPSI2MDoxLTYxOjQxIiBuYW1lPSJBZ2UgR3JvdXAgU3RyYXRpZmllciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMzEiPg0KICAgICAgICAgICAgICAgPGE6cz4vKgogKiBEaXNhZ2dyZWdhdG9yOiBBZ2UgR3JvdXAgKCZsdDsgMTIgbW9udGhzLCAxMiAtIDE4IG1vbnRocywgMTggLSAzNiBtb250aHMsIDM2IG1vbnRocyAtIDEyIHllYXJzLCA+IDEyIHllYXJzKQogKi8KZGVmaW5lICZxdW90O0FnZSBHcm91cCBTdHJhdGlmaWVyJnF1b3Q7OgoJPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzIHI9IjMwIj4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aSW5kQ29tPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMCI+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1ZhcmljZWxsYSBCeSBBZ2UgU3RyYXRpZmllciZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzAiIGxvY2F0b3I9IjYxOjItNjE6NDEiIG5hbWU9IlZhcmljZWxsYSBCeSBBZ2UgU3RyYXRpZmllciIgbGlicmFyeU5hbWU9IklNTVpJbmRDb20iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICA8L2RlZj4NCiAgICAgIDxkZWYgbG9jYWxJZD0iMzQiIGxvY2F0b3I9IjY2OjEtNjc6NDUiIG5hbWU9Ikdlb2dyYXBoaWMgUmVnaW9uIFN0cmF0aWZpZXIiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjM0Ij4NCiAgICAgICAgICAgICAgIDxhOnM+LyoKICogRGlzYWdncmVnYXRvcjogR2VvZ3JhcGhpYyBSZWdpb24KICovCmRlZmluZSAmcXVvdDtHZW9ncmFwaGljIFJlZ2lvbiBTdHJhdGlmaWVyJnF1b3Q7OgoJPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzIHI9IjMzIj4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aSW5kQ29tPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMyI+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0J5IEdlb2dyYXBoaWMgUmVnaW9uIFN0cmF0aWZpZXImcXVvdDs8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMzIiBsb2NhdG9yPSI2NzoyLTY3OjQ1IiBuYW1lPSJCeSBHZW9ncmFwaGljIFJlZ2lvbiBTdHJhdGlmaWVyIiBsaWJyYXJ5TmFtZT0iSU1NWkluZENvbSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSIzNyIgbG9jYXRvcj0iNzI6MS03Mzo0OSIgbmFtZT0iR2VuZGVyIFN0cmF0aWZpZXIiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjM3Ij4NCiAgICAgICAgICAgICAgIDxhOnM+LyoKICogRGlzYWdncmVnYXRvcjogQWRtaW5pc3RyYXRpdmUgR2VuZGVyIChvciBCaW9sb2dpY2FsIFNleCkKICovCmRlZmluZSAmcXVvdDtHZW5kZXIgU3RyYXRpZmllciZxdW90OzoKCTwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cyByPSIzNiI+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkluZENvbTwvYTpzPg0KICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtCeSBBZG1pbmlzdHJhdGl2ZSBHZW5kZXIgU3RyYXRpZmllciZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzYiIGxvY2F0b3I9IjczOjItNzM6NDkiIG5hbWU9IkJ5IEFkbWluaXN0cmF0aXZlIEdlbmRlciBTdHJhdGlmaWVyIiBsaWJyYXJ5TmFtZT0iSU1NWkluZENvbSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgIDwvZGVmPg0KICAgPC9zdGF0ZW1lbnRzPg0KPC9saWJyYXJ5Pg0K"/>
</content>
<content>
<contentType value="application/elm+json"/>
<data
value="ew0KICAibGlicmFyeSIgOiB7DQogICAgInR5cGUiIDogIkxpYnJhcnkiLA0KICAgICJpZGVudGlmaWVyIiA6IHsNCiAgICAgICJ0eXBlIiA6ICJWZXJzaW9uZWRJZGVudGlmaWVyIiwNCiAgICAgICJpZCIgOiAiSU1NWklORDQzIiwNCiAgICAgICJzeXN0ZW0iIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbiINCiAgICB9LA0KICAgICJzY2hlbWFJZGVudGlmaWVyIiA6IHsNCiAgICAgICJ0eXBlIiA6ICJWZXJzaW9uZWRJZGVudGlmaWVyIiwNCiAgICAgICJpZCIgOiAidXJuOmhsNy1vcmc6ZWxtIiwNCiAgICAgICJ2ZXJzaW9uIiA6ICJyMSINCiAgICB9LA0KICAgICJ1c2luZ3MiIDogew0KICAgICAgInR5cGUiIDogIkxpYnJhcnkkVXNpbmdzIiwNCiAgICAgICJkZWYiIDogWyB7DQogICAgICAgICJ0eXBlIiA6ICJVc2luZ0RlZiIsDQogICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIlN5c3RlbSIsDQogICAgICAgICJ1cmkiIDogInVybjpobDctb3JnOmVsbS10eXBlczpyMSINCiAgICAgIH0sIHsNCiAgICAgICAgInR5cGUiIDogIlVzaW5nRGVmIiwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIvLyBTdGFydCBTa2VsZXRvbiBDUUxcbiIsICJ1c2luZyAiIF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJGSElSIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIHZlcnNpb24gIiwgIic0LjAuMSciIF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJyIiA6ICIxIg0KICAgICAgICAgIH0NCiAgICAgICAgfSBdLA0KICAgICAgICAibG9jYWxJZCIgOiAiMSIsDQogICAgICAgICJsb2NhdG9yIiA6ICIyMzoxLTIzOjI2IiwNCiAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiRkhJUiIsDQogICAgICAgICJ1cmkiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIiLA0KICAgICAgICAidmVyc2lvbiIgOiAiNC4wLjEiDQogICAgICB9IF0NCiAgICB9LA0KICAgICJpbmNsdWRlcyIgOiB7DQogICAgICAidHlwZSIgOiAiTGlicmFyeSRJbmNsdWRlcyIsDQogICAgICAiZGVmIiA6IFsgew0KICAgICAgICAidHlwZSIgOiAiSW5jbHVkZURlZiIsDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIiwgImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiRkhJUkhlbHBlcnMiIF0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIgdmVyc2lvbiAiLCAiJzQuMC4xJyIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjIiDQogICAgICAgICAgfQ0KICAgICAgICB9IF0sDQogICAgICAgICJsb2NhbElkIiA6ICIyIiwNCiAgICAgICAgImxvY2F0b3IiIDogIjI0OjEtMjQ6MzUiLA0KICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSSGVscGVycyIsDQogICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9zbWFydC1pbW11bml6YXRpb24vRkhJUkhlbHBlcnMiLA0KICAgICAgICAidmVyc2lvbiIgOiAiNC4wLjEiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJJbmNsdWRlRGVmIiwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIiLCAiaW5jbHVkZSAiIF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJJTU1aQ29tbW9uIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIGNhbGxlZCAiLCAiSU1NWkNvbSIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjMiDQogICAgICAgICAgfQ0KICAgICAgICB9IF0sDQogICAgICAgICJsb2NhbElkIiA6ICIzIiwNCiAgICAgICAgImxvY2F0b3IiIDogIjI1OjEtMjU6MzMiLA0KICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJJTU1aQ29tIiwNCiAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9JTU1aQ29tbW9uIg0KICAgICAgfSwgew0KICAgICAgICAidHlwZSIgOiAiSW5jbHVkZURlZiIsDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIiwgImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSU1NWkNvbmNlcHRzIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIGNhbGxlZCAiLCAiSU1NWmMiIF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJyIiA6ICI0Ig0KICAgICAgICAgIH0NCiAgICAgICAgfSBdLA0KICAgICAgICAibG9jYWxJZCIgOiAiNCIsDQogICAgICAgICJsb2NhdG9yIiA6ICIyNjoxLTI2OjMzIiwNCiAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiSU1NWmMiLA0KICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vc21hcnQtaW1tdW5pemF0aW9uL0lNTVpDb25jZXB0cyINCiAgICAgIH0sIHsNCiAgICAgICAgInR5cGUiIDogIkluY2x1ZGVEZWYiLA0KICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAicyIgOiB7DQogICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgIiIsICJpbmNsdWRlICIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIklNTVpDb25maWciIF0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIgY2FsbGVkICIsICJJTU1aQ29uIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAiciIgOiAiNSINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjUiLA0KICAgICAgICAibG9jYXRvciIgOiAiMjc6MS0yNzozMyIsDQogICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIklNTVpDb24iLA0KICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vc21hcnQtaW1tdW5pemF0aW9uL0lNTVpDb25maWciDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJJbmNsdWRlRGVmIiwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIiLCAiaW5jbHVkZSAiIF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJJTU1aSW5kaWNhdG9yQ29tbW9uIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIGNhbGxlZCAiLCAiSU1NWkluZENvbSIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjYiDQogICAgICAgICAgfQ0KICAgICAgICB9IF0sDQogICAgICAgICJsb2NhbElkIiA6ICI2IiwNCiAgICAgICAgImxvY2F0b3IiIDogIjI4OjEtMjg6NDUiLA0KICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJJTU1aSW5kQ29tIiwNCiAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9JTU1aSW5kaWNhdG9yQ29tbW9uIg0KICAgICAgfSwgew0KICAgICAgICAidHlwZSIgOiAiSW5jbHVkZURlZiIsDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIiwgImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSU1NWlZhY2NpbmVMaWJyYXJ5IiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIGNhbGxlZCAiLCAiSU1NWnZsIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAiciIgOiAiNyINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjciLA0KICAgICAgICAibG9jYXRvciIgOiAiMjk6MS0yOTo0MCIsDQogICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIklNTVp2bCIsDQogICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9zbWFydC1pbW11bml6YXRpb24vSU1NWlZhY2NpbmVMaWJyYXJ5Ig0KICAgICAgfSwgew0KICAgICAgICAidHlwZSIgOiAiSW5jbHVkZURlZiIsDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiIiwgImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiRkhJUkNvbW1vbiIgXQ0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgIiBjYWxsZWQgIiwgIkZDIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAiciIgOiAiOCINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjgiLA0KICAgICAgICAibG9jYXRvciIgOiAiMzA6MS0zMDoyOCIsDQogICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkZDIiwNCiAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL3NtYXJ0LWltbXVuaXphdGlvbi9GSElSQ29tbW9uIg0KICAgICAgfSBdDQogICAgfSwNCiAgICAicGFyYW1ldGVycyIgOiB7DQogICAgICAidHlwZSIgOiAiTGlicmFyeSRQYXJhbWV0ZXJzIiwNCiAgICAgICJkZWYiIDogWyB7DQogICAgICAgICJ0eXBlIiA6ICJQYXJhbWV0ZXJEZWYiLA0KICAgICAgICAicGFyYW1ldGVyVHlwZVNwZWNpZmllciIgOiB7DQogICAgICAgICAgInR5cGUiIDogIkludGVydmFsVHlwZVNwZWNpZmllciIsDQogICAgICAgICAgInBvaW50VHlwZSIgOiB7DQogICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIiwNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICI5IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMjo0MS0zMjo0NCIsDQogICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EYXRlIg0KICAgICAgICAgIH0sDQogICAgICAgICAgImxvY2FsSWQiIDogIjEwIiwNCiAgICAgICAgICAibG9jYXRvciIgOiAiMzI6MzItMzI6NDUiDQogICAgICAgIH0sDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiLy8gRW5kIFNrZWxldG9uIENRTFxuIiwgInBhcmFtZXRlciAiLCAiXCJNZWFzdXJlbWVudCBQZXJpb2RcIiIsICIgIiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSW50ZXJ2YWw8IiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiRGF0ZSIgXQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgInIiIDogIjkiDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiPiIgXQ0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgInIiIDogIjEwIg0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjExIg0KICAgICAgICAgIH0NCiAgICAgICAgfSBdLA0KICAgICAgICAibG9jYWxJZCIgOiAiMTEiLA0KICAgICAgICAibG9jYXRvciIgOiAiMzI6MS0zMjo0NSIsDQogICAgICAgICJuYW1lIiA6ICJNZWFzdXJlbWVudCBQZXJpb2QiLA0KICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyINCiAgICAgIH0gXQ0KICAgIH0sDQogICAgInN0YXRlbWVudHMiIDogew0KICAgICAgInR5cGUiIDogIkxpYnJhcnkkU3RhdGVtZW50cyIsDQogICAgICAiZGVmIiA6IFsgew0KICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvbkRlZiIsDQogICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAidHlwZSIgOiAiU2luZ2xldG9uRnJvbSIsDQogICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgInR5cGUiIDogIlJldHJpZXZlIiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzMzoxLTMzOjE1IiwNCiAgICAgICAgICAgICJkYXRhVHlwZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9UGF0aWVudCIsDQogICAgICAgICAgICAidGVtcGxhdGVJZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiDQogICAgICAgICAgfQ0KICAgICAgICB9LA0KICAgICAgICAibG9jYXRvciIgOiAiMzM6MS0zMzoxNSIsDQogICAgICAgICJuYW1lIiA6ICJQYXRpZW50IiwNCiAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uRGVmIiwNCiAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICJ0eXBlIiA6ICJFeGlzdHMiLA0KICAgICAgICAgICJvcGVyYW5kIiA6IHsNCiAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMyIsDQogICAgICAgICAgICAibG9jYXRvciIgOiAiNDA6OS00MDo4OCIsDQogICAgICAgICAgICAibmFtZSIgOiAiVmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiLA0KICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJJTU1aSW5kQ29tIg0KICAgICAgICAgIH0sDQogICAgICAgICAgImxvY2FsSWQiIDogIjE0IiwNCiAgICAgICAgICAibG9jYXRvciIgOiAiNDA6My00MDo4OCINCiAgICAgICAgfSwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIvKlxuICogTnVtZXJhdG9yOiBOdW1iZXIgb2YgYWRtaW5pc3RyYXRpb25zIG9mIHZhY2NpbmVzIGNvbnRhaW5pbmcgYSB2YXJpY2VsbGEgY29tcG9uZW50IGR1cmluZyByZXBvcnRpbmcgcGVyaW9kXG4gKiBOdW1lcmF0b3IgQ29tcHV0YXRpb246IENPVU5UIGltbXVuaXphdGlvbiBldmVudHMgV0hFUkUgYWRtaW5pc3RlcmVkIHByb2R1Y3QgaXMgYSBWYXJpY2VsbGEgdmFjY2luZSAoSU1NWi5BMS5ERS4yMikgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2RcbiAqL1xuIiwgImRlZmluZSAiLCAiXCJudW1lcmF0b3JcIiIsICI6XG5cdFx0IiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiZXhpc3RzIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiKCIgXQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJJTU1aSW5kQ29tIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTIiDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICIuIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiXCJWYXJpY2VsbGEgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZFwiIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiDQogICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIikiIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICJyIiA6ICIxMyINCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICJyIiA6ICIxNCINCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJyIiA6ICIxNSINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjE1IiwNCiAgICAgICAgImxvY2F0b3IiIDogIjM5OjEtNDA6ODgiLA0KICAgICAgICAibmFtZSIgOiAibnVtZXJhdG9yIiwNCiAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLA0KICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyINCiAgICAgIH0sIHsNCiAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25EZWYiLA0KICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgInR5cGUiIDogIkV4aXN0cyIsDQogICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiLA0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjE3IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI0ODo4LTQ4OjczIiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJWYXJpY2VsbGEgRG9zZXMgUmVjb21tZW5kZWQgRHVyaW5nIFJlcG9ydGluZyBQZXJpb2QiLA0KICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJJTU1aSW5kQ29tIg0KICAgICAgICAgIH0sDQogICAgICAgICAgImxvY2FsSWQiIDogIjE4IiwNCiAgICAgICAgICAibG9jYXRvciIgOiAiNDg6Mi00ODo3MyINCiAgICAgICAgfSwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIvLyBUT0RPOiBXcml0ZSBsb2dpYyBoZXJlIFxuXG4vKlxuICogRGVub21pbmF0b3I6IE51bWJlciBvZiBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb25zIGZvciB2YXJpY2VsbGEgdmFjY2luZXMgZHVlIGR1cmluZyByZXBvcnRpbmcgcGVyaW9kLlxuICogRGVub21pbmF0b3IgQ29tcHV0YXRpb246IENPVU5UIGltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBXSEVSRSByZWNvbW1lbmRlZCBwcm9kdWN0IGlzIHZhcmljZWxsYSB2YWNjaW5lIChJTU1aLkExLkRFMjIpIEFORCBkdWUgZGF0ZSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZC5cbiAqIFRPRE86IFNob3VsZCB3ZSB1c2UgcmVjb21tZW5kYXRpb24gaGVyZSAobGlrZSBIUFYpIHRvIGFsbG93IENEU1MgdG8gZGVmaW5lIHRoZSBcImNvaG9ydFwiIG9yIHNob3VsZCBjb2hvcnQganVzdCBiZSBhbnlvbmUgdW5kZXIgMTI/XG4gKi9cbiIsICJkZWZpbmUgIiwgIlwiZGVub21pbmF0b3JcIiIsICI6XG5cdCIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgImV4aXN0cyIgXQ0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIigiIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSU1NWkluZENvbSIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiLiIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIlwiVmFyaWNlbGxhIERvc2VzIFJlY29tbWVuZGVkIER1cmluZyBSZXBvcnRpbmcgUGVyaW9kXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNyINCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiKSIgXQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgInIiIDogIjE3Ig0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgInIiIDogIjE4Ig0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjE5Ig0KICAgICAgICAgIH0NCiAgICAgICAgfSBdLA0KICAgICAgICAibG9jYWxJZCIgOiAiMTkiLA0KICAgICAgICAibG9jYXRvciIgOiAiNDc6MS00ODo3MyIsDQogICAgICAgICJuYW1lIiA6ICJkZW5vbWluYXRvciIsDQogICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uRGVmIiwNCiAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsDQogICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc2VkUXVlcnlTb3VyY2UiLA0KICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIsDQogICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMCIsDQogICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1NDoyLTU0Ojc5IiwNCiAgICAgICAgICAgICAgIm5hbWUiIDogIlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIiwNCiAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJJTU1aSW5kQ29tIg0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMSIsDQogICAgICAgICAgICAibG9jYXRvciIgOiAiNTQ6Mi01NDo4MSIsDQogICAgICAgICAgICAiYWxpYXMiIDogIkkiDQogICAgICAgICAgfSBdLA0KICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLA0KICAgICAgICAgICJyZXR1cm4iIDogew0KICAgICAgICAgICAgInR5cGUiIDogIlJldHVybkNsYXVzZSIsDQogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsDQogICAgICAgICAgICAgICJzb3VyY2UiIDogew0KICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTaW5nbGV0b25Gcm9tIiwNCiAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiLA0KICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIzIiwNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1NToyNS01NTo0MSIsDQogICAgICAgICAgICAgICAgICAicGF0aCIgOiAicHJvdG9jb2xBcHBsaWVkIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiSSINCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNCIsDQogICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjU1OjktNTU6NDIiDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNSIsDQogICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1NTo5LTU1OjUzIiwNCiAgICAgICAgICAgICAgInBhdGgiIDogImRvc2VOdW1iZXIiDQogICAgICAgICAgICB9LA0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjI2IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1NToyLTU1OjUzIg0KICAgICAgICAgIH0sDQogICAgICAgICAgImxvY2FsSWQiIDogIjI3IiwNCiAgICAgICAgICAibG9jYXRvciIgOiAiNTQ6Mi01NTo1MyINCiAgICAgICAgfSwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIvKlxuICogRGlzYWdncmVnYXRvcjogRG9zZSBTZXF1ZW5jZSAoMSwgMilcbiAqL1xuIiwgImRlZmluZSAiLCAiXCJEb3NlIFNlcXVlbmNlIFN0cmF0aWZpZXJcIiIsICI6XG5cdCIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIklNTVpJbmRDb20iLCAiLiIsICJcIlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIiAiLCAiSSIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIxIg0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIlxuXHQiIF0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJyZXR1cm4gIiBdDQogICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIigiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJzaW5nbGV0b24gZnJvbSAiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSSIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIyIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiLiIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgInByb3RvY29sQXBwbGllZCIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI0Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIikiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJkb3NlTnVtYmVyIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUiDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUiDQogICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjYiDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAiciIgOiAiMjciDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAiciIgOiAiMjgiDQogICAgICAgICAgfQ0KICAgICAgICB9IF0sDQogICAgICAgICJsb2NhbElkIiA6ICIyOCIsDQogICAgICAgICJsb2NhdG9yIiA6ICI1MzoxLTU1OjUzIiwNCiAgICAgICAgIm5hbWUiIDogIkRvc2UgU2VxdWVuY2UgU3RyYXRpZmllciIsDQogICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uRGVmIiwNCiAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwNCiAgICAgICAgICAibG9jYWxJZCIgOiAiMzAiLA0KICAgICAgICAgICJsb2NhdG9yIiA6ICI2MToyLTYxOjQxIiwNCiAgICAgICAgICAibmFtZSIgOiAiVmFyaWNlbGxhIEJ5IEFnZSBTdHJhdGlmaWVyIiwNCiAgICAgICAgICAibGlicmFyeU5hbWUiIDogIklNTVpJbmRDb20iDQogICAgICAgIH0sDQogICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyAiLypcbiAqIERpc2FnZ3JlZ2F0b3I6IEFnZSBHcm91cCAoPCAxMiBtb250aHMsIDEyIC0gMTggbW9udGhzLCAxOCAtIDM2IG1vbnRocywgMzYgbW9udGhzIC0gMTIgeWVhcnMsID4gMTIgeWVhcnMpXG4gKi9cbiIsICJkZWZpbmUgIiwgIlwiQWdlIEdyb3VwIFN0cmF0aWZpZXJcIiIsICI6XG5cdCIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIklNTVpJbmRDb20iIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICJyIiA6ICIyOSINCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbICIuIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiXCJWYXJpY2VsbGEgQnkgQWdlIFN0cmF0aWZpZXJcIiIgXQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgInIiIDogIjMwIg0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgInIiIDogIjMwIg0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgInIiIDogIjMxIg0KICAgICAgICAgIH0NCiAgICAgICAgfSBdLA0KICAgICAgICAibG9jYWxJZCIgOiAiMzEiLA0KICAgICAgICAibG9jYXRvciIgOiAiNjA6MS02MTo0MSIsDQogICAgICAgICJuYW1lIiA6ICJBZ2UgR3JvdXAgU3RyYXRpZmllciIsDQogICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uRGVmIiwNCiAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwNCiAgICAgICAgICAibG9jYWxJZCIgOiAiMzMiLA0KICAgICAgICAgICJsb2NhdG9yIiA6ICI2NzoyLTY3OjQ1IiwNCiAgICAgICAgICAibmFtZSIgOiAiQnkgR2VvZ3JhcGhpYyBSZWdpb24gU3RyYXRpZmllciIsDQogICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJJTU1aSW5kQ29tIg0KICAgICAgICB9LA0KICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAicyIgOiB7DQogICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICJzIiA6IFsgIi8qXG4gKiBEaXNhZ2dyZWdhdG9yOiBHZW9ncmFwaGljIFJlZ2lvblxuICovXG4iLCAiZGVmaW5lICIsICJcIkdlb2dyYXBoaWMgUmVnaW9uIFN0cmF0aWZpZXJcIiIsICI6XG5cdCIgXQ0KICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIklNTVpJbmRDb20iIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMiINCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbICIuIiBdDQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiXCJCeSBHZW9ncmFwaGljIFJlZ2lvbiBTdHJhdGlmaWVyXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMyINCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICJyIiA6ICIzMyINCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJyIiA6ICIzNCINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjM0IiwNCiAgICAgICAgImxvY2F0b3IiIDogIjY2OjEtNjc6NDUiLA0KICAgICAgICAibmFtZSIgOiAiR2VvZ3JhcGhpYyBSZWdpb24gU3RyYXRpZmllciIsDQogICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiDQogICAgICB9LCB7DQogICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uRGVmIiwNCiAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIiwNCiAgICAgICAgICAibG9jYWxJZCIgOiAiMzYiLA0KICAgICAgICAgICJsb2NhdG9yIiA6ICI3MzoyLTczOjQ5IiwNCiAgICAgICAgICAibmFtZSIgOiAiQnkgQWRtaW5pc3RyYXRpdmUgR2VuZGVyIFN0cmF0aWZpZXIiLA0KICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiSU1NWkluZENvbSINCiAgICAgICAgfSwNCiAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbICIvKlxuICogRGlzYWdncmVnYXRvcjogQWRtaW5pc3RyYXRpdmUgR2VuZGVyIChvciBCaW9sb2dpY2FsIFNleClcbiAqL1xuIiwgImRlZmluZSAiLCAiXCJHZW5kZXIgU3RyYXRpZmllclwiIiwgIjpcblx0IiBdDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICJnbG9iYWxTY29wZSIgOiB0cnVlLA0KICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAgICAgImRlY2xhcmVkVHlwZSIgOiAib3JnLmhsNy5jcWxfYW5ub3RhdGlvbnMucjEuTmFycmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyAiSU1NWkluZENvbSIgXQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgInIiIDogIjM1Ig0KICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAiZ2xvYmFsU2NvcGUiIDogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAic2NvcGUiIDogImphdmF4LnhtbC5iaW5kLkpBWEJFbGVtZW50JEdsb2JhbFNjb3BlIiwNCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICJzIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjF9cyIsDQogICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgICAgICAgICAidmFsdWUiIDogew0KICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMX1zIiwNCiAgICAgICAgICAgICAgICAgICAgICAiZGVjbGFyZWRUeXBlIiA6ICJvcmcuaGw3LmNxbF9hbm5vdGF0aW9ucy5yMS5OYXJyYXRpdmUiLA0KICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGUiLA0KICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbICJcIkJ5IEFkbWluaXN0cmF0aXZlIEdlbmRlciBTdHJhdGlmaWVyXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAgICAgICJyIiA6ICIzNiINCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAibmlsIiA6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICAgICAidHlwZVN1YnN0aXR1dGVkIiA6IGZhbHNlDQogICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICJyIiA6ICIzNiINCiAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgIm5pbCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgICAgICJ0eXBlU3Vic3RpdHV0ZWQiIDogZmFsc2UNCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJyIiA6ICIzNyINCiAgICAgICAgICB9DQogICAgICAgIH0gXSwNCiAgICAgICAgImxvY2FsSWQiIDogIjM3IiwNCiAgICAgICAgImxvY2F0b3IiIDogIjcyOjEtNzM6NDkiLA0KICAgICAgICAibmFtZSIgOiAiR2VuZGVyIFN0cmF0aWZpZXIiLA0KICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIg0KICAgICAgfSBdDQogICAgfSwNCiAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICJ0cmFuc2xhdG9yVmVyc2lvbiIgOiAiMS40IiwNCiAgICAgICJ0cmFuc2xhdG9yT3B0aW9ucyIgOiAiRW5hYmxlQW5ub3RhdGlvbnMsRW5hYmxlTG9jYXRvcnMsRGlzYWJsZUxpc3REZW1vdGlvbixEaXNhYmxlTGlzdFByb21vdGlvbiINCiAgICB9LCB7DQogICAgICAicyIgOiB7DQogICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6Y3FsLWFubm90YXRpb25zOnIxfXMiLA0KICAgICAgICAgICJkZWNsYXJlZFR5cGUiIDogIm9yZy5obDcuY3FsX2Fubm90YXRpb25zLnIxLk5hcnJhdGl2ZSIsDQogICAgICAgICAgInNjb3BlIiA6ICJqYXZheC54bWwuYmluZC5KQVhCRWxlbWVudCRHbG9iYWxTY29wZSIsDQogICAgICAgICAgInZhbHVlIiA6IHsNCiAgICAgICAgICAgICJzIiA6IFsgIi8qXG4gKiBMaWJyYXJ5OiBJTU1aLklORC40M1xuICogSW1tdW5pemF0aW9uIGNvdmVyYWdlIGZvciBWYXJpY2VsbGEgdmFjY2luYXRpb25zIChDb21wdXRlZCBEZW5vbWluYXRvcikgXG4gKiBDb21wYXJlcyB0aGUgYWRtaW5pc3RlcmVkIGRvc2VzIG9mIHZhcmljZWxsYSBjb250YWluaW5nIHZhY2NpbmUgd2l0aCB0aGUgbnVtYmVyIG9mIGltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbnMgZm9yIHZhcmljZWxsYSB2YWNjaW5lcyBleHByZXNzZWQgYXMgYSBwZXJjZW50YWdlLlxuICogXG4gKiBOdW1lcmF0b3I6IE51bWJlciBvZiBhZG1pbmlzdHJhdGlvbnMgb2YgdmFjY2luZXMgY29udGFpbmluZyBhIHZhcmljZWxsYSBjb21wb25lbnQgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QgXG4gKiBOdW1lcmF0b3IgQ29tcHV0YXRpb246IENPVU5UIGltbXVuaXphdGlvbiBldmVudHMgV0hFUkUgYWRtaW5pc3RlcmVkIHByb2R1Y3QgaXMgYSBWYXJpY2VsbGEgdmFjY2luZSAoSU1NWi5BMS5ERS4yMikgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2RcbiAqIERlbm9taW5hdG9yOiBOdW1iZXIgb2YgaW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9ucyBmb3IgdmFyaWNlbGxhIHZhY2NpbmVzIGR1ZSBkdXJpbmcgcmVwb3J0aW5nIHBlcmlvZC5cbiAqIERlbm9taW5hdG9yIENvbXB1dGF0aW9uOiBDT1VOVCBpbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gV0hFUkUgcmVjb21tZW5kZWQgcHJvZHVjdCBpcyB2YXJpY2VsbGEgdmFjY2luZSAoSU1NWi5BMS5ERTIyKSBBTkQgZHVlIGRhdGUgZHVyaW5nIHJlcG9ydGluZyBwZXJpb2QuXG4gKiBcbiAqIERpc2FnZ3JlZ2F0aW9uOlxuICogICAtIERvc2UgU2VxdWVuY2UgKDEsIDIpXG4gKiAgIC0gQWdlIEdyb3VwICg8IDEyIG1vbnRocywgMTIgLSAxOCBtb250aHMsIDE4IC0gMzYgbW9udGhzLCAzNiBtb250aHMgLSAxMiB5ZWFycywgPiAxMiB5ZWFycylcbiAqICAgLSBHZW9ncmFwaGljIFJlZ2lvblxuICogICAtIEdlbmRlclxuICogXG4gKiBSZWZlcmVuY2VzOiBXSE8gSW1tdW5pemF0aW9uIEZhY2lsaXR5IEFuYWx5c2lzIEd1aWRlICgxKVxuICovXG4iLCAibGlicmFyeSBJTU1aSU5ENDMiIF0NCiAgICAgICAgICB9LA0KICAgICAgICAgICJuaWwiIDogZmFsc2UsDQogICAgICAgICAgImdsb2JhbFNjb3BlIiA6IHRydWUsDQogICAgICAgICAgInR5cGVTdWJzdGl0dXRlZCIgOiBmYWxzZQ0KICAgICAgICB9IF0sDQogICAgICAgICJyIiA6ICIzNyINCiAgICAgIH0NCiAgICB9IF0NCiAgfQ0KfQ=="/>
</content>
</Library>
IG © 2021+ World Health Organization (WHO). Package who.fhir.immunization#0.1.0 based on FHIR 4.0.1. Generated 2023-08-02
Links: Table of Contents |
QA Report
| Version History | License