WHO SMART Guidelines - HIV
0.3.0 - ci-build
WHO SMART Guidelines - HIV - Local Development build (v0.3.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Draft as of 2024-12-06 |
<Library xmlns="http://hl7.org/fhir">
<id value="HIVIND42Logic"/>
<meta>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"/>
</meta>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<div>
<table class="grid dict">
<tr>
<th scope="row"><b>Title: </b></th>
<td style="padding-left: 4px;">HIV.IND.42 Logic</td>
</tr>
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">HIVIND42Logic</td>
</tr>
<tr>
<th scope="row"><b>Version: </b></th>
<td style="padding-left: 4px;">0.3.0</td>
</tr>
<tr>
<th scope="row"><b>Url: </b></th>
<td style="padding-left: 4px;"><a href="Library-HIVIND42Logic.html">HIV.IND.42 Logic</a></td>
</tr>
<tr>
<th scope="row"><b>Status: </b></th>
<td style="padding-left: 4px;">draft</td>
</tr>
<tr>
<th scope="row"><b>Experimental: </b></th>
<td style="padding-left: 4px;">true</td>
</tr>
<tr>
<th scope="row"><b>Type: </b></th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<b>system: </b> <span><a href="http://hl7.org/fhir/R4/codesystem-library-type.html">http://terminology.hl7.org/CodeSystem/library-type</a></span>
</p>
<p style="margin-bottom: 5px;">
<b>code: </b> <span>logic-library</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Date: </b></th>
<td style="padding-left: 4px;">2024-12-06 22:28:12+0000</td>
</tr>
<tr>
<th scope="row"><b>Publisher: </b></th>
<td style="padding-left: 4px;">WHO</td>
</tr>
<tr>
<th scope="row"><b>Description: </b></th>
<td style="padding-left: 4px;"><div><p>% of HIV-exposed infants whose final HIV outcome status is known</p>
</div></td>
</tr>
<tr>
<th scope="row"><b>Related Artifacts: </b></th>
<td style="padding-left: 4px;">
<p><b>Dependencies</b></p>
<ul>
<li><code>http://smart.who.int/hiv/Library/HIVCommon|0.0.1</code></li>
<li><a href="Library-WHOCommon.html">WHOCommon</a></li>
</ul>
</td>
</tr>
<tr>
<th scope="row"><b>Parameters: </b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>
<tr><th>Measurement Period</th><th>Period</th><th>0</th><th>1</th><th>In</th></tr>
<tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Initial Population</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Numerator</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>Denominator</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<table>
<tr><th><a id="cql-content"><b>Content: </b></a> text/cql</th></tr>
<tr><td><pre><code class="language-cql">/**
* Library: HIV.IND.42 Logic
* Ref No: VER.6
* Short Name: Final outcome of PMTCT
*
* Definition: % of HIV-exposed infants whose final HIV outcome status is known
*
* Numerator: HIV-exposed infants born within the past 12 months (or 24 months in breastfeeding settings) who have known final HIV outcome status
* Numerator Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(with an "Infant date of birth" in past 12 months) OR (with an "Infant date of birth" in past 24 months IF mothers are "Breastfeeding")] AND "Registered in birth cohort"=True AND with a "Final diagnosis of HIV-exposed infant" of NOT NULL
* Numerator Exclusions:
*
* Denominator: a) Programme-based/service delivery denominator | Number of HIV-exposed infants who were born within the 12 months (or 24 months in breastfeeding settings) prior to the reporting period and registered in the birth cohort | For example, for the reporting period January to December 2021 the denominator would be the number of HIV-exposed infants born between January to December 2020 in non-breast feeding settings and January to December 2019 in breastfeeding settings. | | b) Population-based denominator | Estimated number of HIV-positive women who delivered within the past 12 months | (or 24 months in breastfeeding settings)
* Denominator Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(with an "Infant date of birth" within past 12 months) OR (with an "Infant date of birth" within past 24 months IF mothers are "Breastfeeding")] AND "Registered in birth cohort"=True
* Denominator Exclusions:
*
* Disaggregations:
* • Outcome status (HIV-positive, HIV-negative, no longer breastfeeding)
* • Cities and other administrative regions of epidemiologic importance
*
* Disaggregation Elements: Infant HIV status
*
* Numerator and Denominator Elements:
* Breastfeeding
* Final diagnosis of HIV-exposed infant
* HIV-exposed infant or child
* Infant date of birth
* Registered in birth cohort
*
* Reference: Consolidated guidelines on person-centred HIV strategic information: strengthening routine data for impact. Geneva: World Health Organization; 2022
*
* Data Concepts:
* HIV.B.DE32: Breastfeeding | Infant is being breastfed by mother
* HIV.D.DE32: Breastfeeding | Client is giving infant breast milk
* HIV.E.DE87: Infant date of birth | The infant's date of birth (DOB) if known
* HIV.E.DE112: HIV-exposed infant or child | Whether the infant or child was determined to have had HIV exposure
* HIV.E.DE179: Registered in birth cohort | Whether the infant has been registered in a birth cohort
* HIV.E.DE225: Infant HIV status | HIV status reported after applying the HIV testing algorithm. No single HIV test can provide an HIV-positive diagnosis.
* HIV.E.DE226: HIV-positive | Infant is HIV-positive
* HIV.E.DE227: HIV-negative | Infant is HIV-negative
* HIV.E.DE228: Unknown | Infant has unknown HIV status
* HIV.E.DE230: Final diagnosis of HIV-exposed infant | HIV-exposed infant final status at 18 months or 3 months after cessation of breastfeeding (whichever is later).
* HIV.E.DE231: HIV-positive | The infant is HIV-positive
* HIV.E.DE232: HIV-negative and no longer breastfeeding | The infant is HIV-negative and the mother has quit breastfeeding
* HIV.E.DE233: HIV status unknown | The final HIV status of the child is unknown because the infant died, was lost to follow-up or transferred out without ever having an HIV-positive diagnosis or is active in care but was not tested at 18 months
* HIV.SRV.DE20: HIV-exposed infant or child | Whether the infant or child was determined to have had HIV exposure
* HIV.SRV.DE22: Final diagnosis of HIV-exposed infant | HIV-exposed infant final status at 18 months or 3 months after cessation of breastfeeding (whichever is later).
*
* Additional Context
* - what it measures: This indicator measures quality of programme follow-up to track exposed infants and ascertain final HIV status.
* - rationale: • Effective PMTCT programmes must follow HIV-exposed infants until the end of the breastfeeding period to ensure that the full cascade of services and support is provided to HIV-positive mothers and their infants. | • The ability to ascertain final outcome status through routine programme data across multiple points of care is a key challenge.
* - method: This indicator measures quality of programme follow-up to track exposed infants and ascertain final HIV status.
*
* Suggested Scoring Method: proportion | http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/proportion-measure-cqfm
*/
library HIVIND42Logic
// Included Libraries
using FHIR version '4.0.1'
include HIVCommon version '0.0.1' called HIC
include FHIRHelpers version '4.0.1'
include WHOCommon called WCom
// Indicator Definition
parameter "Measurement Period" Interval<Date> default Interval[@2023-01-01, @2023-01-30]
context Patient
/* Populations */
/*
*Initial Population
*/
define "Initial Population":
true
/**
* Numerator
*
* Definition: HIV-exposed infants born within the past 12 months (or 24 months in breastfeeding settings) who have known final HIV outcome status
* Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(with an "Infant date of birth" in past 12 months) OR (with an "Infant date of birth" in past 24 months IF mothers are "Breastfeeding")] AND "Registered in birth cohort"=True AND with a "Final diagnosis of HIV-exposed infant" of NOT NULL
*/
define "Numerator":
true
/**
* Denominator
*
* Definition: a) Programme-based/service delivery denominator | Number of HIV-exposed infants who were born within the 12 months (or 24 months in breastfeeding settings) prior to the reporting period and registered in the birth cohort | For example, for the reporting period January to December 2021 the denominator would be the number of HIV-exposed infants born between January to December 2020 in non-breast feeding settings and January to December 2019 in breastfeeding settings. | | b) Population-based denominator | Estimated number of HIV-positive women who delivered within the past 12 months | (or 24 months in breastfeeding settings)
* Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(with an "Infant date of birth" within past 12 months) OR (with an "Infant date of birth" within past 24 months IF mothers are "Breastfeeding")] AND "Registered in birth cohort"=True
*/
define "Denominator":
true
/* end Populations */
</code></pre></td></tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<table>
<tr><th><b>Content: </b> application/elm+xml</th></tr>
<tr><td><pre><code>Encoded data (16344 characters)</code></pre></td></tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<table>
<tr><th><b>Content: </b> application/elm+json</th></tr>
<tr><td><pre><code>Encoded data (21452 characters)</code></pre></td></tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</text>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability">
<valueCode value="computable"/>
</extension>
<url value="http://smart.who.int/hiv/Library/HIVIND42Logic"/>
<version value="0.3.0"/>
<name value="HIVIND42Logic"/>
<title value="HIV.IND.42 Logic"/>
<status value="draft"/>
<experimental value="true"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2024-12-06T22:28:12+00:00"/>
<publisher value="WHO"/>
<contact>
<name value="WHO"/>
<telecom>
<system value="url"/>
<value value="http://who.int"/>
</telecom>
</contact>
<description
value="% of HIV-exposed infants whose final HIV outcome status is known"/>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library HIC"/>
<resource value="http://smart.who.int/hiv/Library/HIVCommon|0.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library WCom"/>
<resource value="http://smart.who.int/hiv/Library/WHOCommon"/>
</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="Initial Population"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</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>
<content>
<contentType value="text/cql"/>
<data
value="LyoqCiAqIExpYnJhcnk6IEhJVi5JTkQuNDIgTG9naWMKICogUmVmIE5vOiBWRVIuNgogKiBTaG9ydCBOYW1lOiBGaW5hbCBvdXRjb21lIG9mIFBNVENUCiAqCiAqIERlZmluaXRpb246ICUgb2YgSElWLWV4cG9zZWQgaW5mYW50cyB3aG9zZSBmaW5hbCBISVYgb3V0Y29tZSBzdGF0dXMgaXMga25vd24KICoKICogTnVtZXJhdG9yOiBISVYtZXhwb3NlZCBpbmZhbnRzIGJvcm4gd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyAob3IgMjQgbW9udGhzIGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MpIHdobyBoYXZlIGtub3duIGZpbmFsIEhJViBvdXRjb21lIHN0YXR1cwogKiBOdW1lcmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgWyh3aXRoIGFuICJJbmZhbnQgZGF0ZSBvZiBiaXJ0aCIgaW4gcGFzdCAxMiBtb250aHMpIE9SICh3aXRoIGFuICJJbmZhbnQgZGF0ZSBvZiBiaXJ0aCIgaW4gcGFzdCAyNCBtb250aHMgSUYgbW90aGVycyBhcmUgIkJyZWFzdGZlZWRpbmciKV0gQU5EICJSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydCI9VHJ1ZSBBTkQgd2l0aCBhICJGaW5hbCBkaWFnbm9zaXMgb2YgSElWLWV4cG9zZWQgaW5mYW50IiBvZiBOT1QgTlVMTAogKiBOdW1lcmF0b3IgRXhjbHVzaW9uczogCiAqCiAqIERlbm9taW5hdG9yOiBhKSBQcm9ncmFtbWUtYmFzZWQvc2VydmljZSBkZWxpdmVyeSBkZW5vbWluYXRvciB8IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIHdobyB3ZXJlIGJvcm4gd2l0aGluIHRoZSAxMiBtb250aHMgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKSBwcmlvciB0byB0aGUgcmVwb3J0aW5nIHBlcmlvZCBhbmQgcmVnaXN0ZXJlZCBpbiB0aGUgYmlydGggY29ob3J0IHwgRm9yIGV4YW1wbGUsIGZvciB0aGUgcmVwb3J0aW5nIHBlcmlvZCBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMjEgdGhlIGRlbm9taW5hdG9yIHdvdWxkIGJlIHRoZSBudW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIGJldHdlZW4gSmFudWFyeSB0byBEZWNlbWJlciAyMDIwIGluIG5vbi1icmVhc3QgZmVlZGluZyBzZXR0aW5ncyBhbmQgSmFudWFyeSB0byBEZWNlbWJlciAyMDE5IGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MuIHwgIHwgYikgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvciB8IEVzdGltYXRlZCBudW1iZXIgb2YgSElWLXBvc2l0aXZlIHdvbWVuIHdobyBkZWxpdmVyZWQgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB8IChvciAyNCBtb250aHMgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncykKICogRGVub21pbmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgWyh3aXRoIGFuICJJbmZhbnQgZGF0ZSBvZiBiaXJ0aCIgd2l0aGluIHBhc3QgMTIgbW9udGhzKSBPUiAod2l0aCBhbiAiSW5mYW50IGRhdGUgb2YgYmlydGgiIHdpdGhpbiBwYXN0IDI0IG1vbnRocyBJRiBtb3RoZXJzIGFyZSAiQnJlYXN0ZmVlZGluZyIpXSBBTkQgIlJlZ2lzdGVyZWQgaW4gYmlydGggY29ob3J0Ij1UcnVlCiAqIERlbm9taW5hdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEaXNhZ2dyZWdhdGlvbnM6CiAqIOKAosKgT3V0Y29tZSBzdGF0dXMgKEhJVi1wb3NpdGl2ZSwgSElWLW5lZ2F0aXZlLCBubyBsb25nZXIgYnJlYXN0ZmVlZGluZykgCiAqICDigKLCoENpdGllcyBhbmQgb3RoZXIgYWRtaW5pc3RyYXRpdmUgcmVnaW9ucyBvZiBlcGlkZW1pb2xvZ2ljIGltcG9ydGFuY2UKICoKICogRGlzYWdncmVnYXRpb24gRWxlbWVudHM6IEluZmFudCBISVYgc3RhdHVzCiAqCiAqIE51bWVyYXRvciBhbmQgRGVub21pbmF0b3IgRWxlbWVudHM6CiAqIEJyZWFzdGZlZWRpbmcgCiAqICBGaW5hbCBkaWFnbm9zaXMgb2YgSElWLWV4cG9zZWQgaW5mYW50IAogKiAgSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIAogKiAgSW5mYW50IGRhdGUgb2YgYmlydGggCiAqICBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydAogKgogKiBSZWZlcmVuY2U6IENvbnNvbGlkYXRlZCBndWlkZWxpbmVzIG9uIHBlcnNvbi1jZW50cmVkIEhJViBzdHJhdGVnaWMgaW5mb3JtYXRpb246IHN0cmVuZ3RoZW5pbmcgcm91dGluZSBkYXRhIGZvciBpbXBhY3QuIEdlbmV2YTogV29ybGQgSGVhbHRoIE9yZ2FuaXphdGlvbjsgMjAyMgogKiAKICogRGF0YSBDb25jZXB0czoKICogSElWLkIuREUzMjogQnJlYXN0ZmVlZGluZyB8IEluZmFudCBpcyBiZWluZyBicmVhc3RmZWQgYnkgbW90aGVyCiAqIEhJVi5ELkRFMzI6IEJyZWFzdGZlZWRpbmcgfCBDbGllbnQgaXMgZ2l2aW5nIGluZmFudCBicmVhc3QgbWlsawogKiBISVYuRS5ERTg3OiBJbmZhbnQgZGF0ZSBvZiBiaXJ0aCB8IFRoZSBpbmZhbnQncyBkYXRlIG9mIGJpcnRoIChET0IpIGlmIGtub3duCiAqIEhJVi5FLkRFMTEyOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqIEhJVi5FLkRFMTc5OiBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydCB8IFdoZXRoZXIgdGhlIGluZmFudCBoYXMgYmVlbiByZWdpc3RlcmVkIGluIGEgYmlydGggY29ob3J0CiAqIEhJVi5FLkRFMjI1OiBJbmZhbnQgSElWIHN0YXR1cyB8IEhJViBzdGF0dXMgcmVwb3J0ZWQgYWZ0ZXIgYXBwbHlpbmcgdGhlIEhJViB0ZXN0aW5nIGFsZ29yaXRobS4gTm8gc2luZ2xlIEhJViB0ZXN0IGNhbiBwcm92aWRlIGFuIEhJVi1wb3NpdGl2ZSBkaWFnbm9zaXMuCiAqIEhJVi5FLkRFMjI2OiBISVYtcG9zaXRpdmUgfCBJbmZhbnQgaXMgSElWLXBvc2l0aXZlCiAqIEhJVi5FLkRFMjI3OiBISVYtbmVnYXRpdmUgfCBJbmZhbnQgaXMgSElWLW5lZ2F0aXZlCiAqIEhJVi5FLkRFMjI4OiBVbmtub3duIHwgSW5mYW50IGhhcyB1bmtub3duIEhJViBzdGF0dXMKICogSElWLkUuREUyMzA6IEZpbmFsIGRpYWdub3NpcyBvZiBISVYtZXhwb3NlZCBpbmZhbnQgfCBISVYtZXhwb3NlZCBpbmZhbnQgZmluYWwgc3RhdHVzIGF0IDE4IG1vbnRocyBvciAzIG1vbnRocyBhZnRlciBjZXNzYXRpb24gb2YgYnJlYXN0ZmVlZGluZyAod2hpY2hldmVyIGlzIGxhdGVyKS4KICogSElWLkUuREUyMzE6IEhJVi1wb3NpdGl2ZSB8IFRoZSBpbmZhbnQgaXMgSElWLXBvc2l0aXZlCiAqIEhJVi5FLkRFMjMyOiBISVYtbmVnYXRpdmUgYW5kIG5vIGxvbmdlciBicmVhc3RmZWVkaW5nIHwgVGhlIGluZmFudCBpcyBISVYtbmVnYXRpdmUgYW5kIHRoZSBtb3RoZXIgaGFzIHF1aXQgYnJlYXN0ZmVlZGluZwogKiBISVYuRS5ERTIzMzogSElWIHN0YXR1cyB1bmtub3duIHwgVGhlIGZpbmFsIEhJViBzdGF0dXMgb2YgdGhlIGNoaWxkIGlzIHVua25vd24gYmVjYXVzZSB0aGUgaW5mYW50IGRpZWQsIHdhcyBsb3N0IHRvIGZvbGxvdy11cCBvciB0cmFuc2ZlcnJlZCBvdXQgd2l0aG91dCBldmVyIGhhdmluZyBhbiBISVYtcG9zaXRpdmUgZGlhZ25vc2lzIG9yIGlzIGFjdGl2ZSBpbiBjYXJlIGJ1dCB3YXMgbm90IHRlc3RlZCBhdCAxOCBtb250aHMKICogSElWLlNSVi5ERTIwOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqIEhJVi5TUlYuREUyMjogRmluYWwgZGlhZ25vc2lzIG9mIEhJVi1leHBvc2VkIGluZmFudCB8IEhJVi1leHBvc2VkIGluZmFudCBmaW5hbCBzdGF0dXMgYXQgMTggbW9udGhzIG9yIDMgbW9udGhzIGFmdGVyIGNlc3NhdGlvbiBvZiBicmVhc3RmZWVkaW5nICh3aGljaGV2ZXIgaXMgbGF0ZXIpLgogKgogKiBBZGRpdGlvbmFsIENvbnRleHQKICogLSB3aGF0IGl0IG1lYXN1cmVzOiBUaGlzIGluZGljYXRvciBtZWFzdXJlcyBxdWFsaXR5IG9mIHByb2dyYW1tZSBmb2xsb3ctdXAgdG8gdHJhY2sgZXhwb3NlZCBpbmZhbnRzIGFuZCBhc2NlcnRhaW4gZmluYWwgSElWIHN0YXR1cy4KICogLSByYXRpb25hbGU6IOKAosKgRWZmZWN0aXZlIFBNVENUIHByb2dyYW1tZXMgbXVzdCBmb2xsb3cgSElWLWV4cG9zZWQgaW5mYW50cyB1bnRpbCB0aGUgZW5kIG9mIHRoZSBicmVhc3RmZWVkaW5nIHBlcmlvZCB0byBlbnN1cmUgdGhhdCB0aGUgZnVsbCBjYXNjYWRlIG9mIHNlcnZpY2VzIGFuZCBzdXBwb3J0IGlzIHByb3ZpZGVkIHRvIEhJVi1wb3NpdGl2ZSBtb3RoZXJzIGFuZCB0aGVpciBpbmZhbnRzLiB8IOKAosKgVGhlIGFiaWxpdHkgdG8gYXNjZXJ0YWluIGZpbmFsIG91dGNvbWUgc3RhdHVzIHRocm91Z2ggcm91dGluZSBwcm9ncmFtbWUgZGF0YSBhY3Jvc3MgbXVsdGlwbGUgcG9pbnRzIG9mIGNhcmUgaXMgYSBrZXkgY2hhbGxlbmdlLgogKiAtIG1ldGhvZDogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgcXVhbGl0eSBvZiBwcm9ncmFtbWUgZm9sbG93LXVwIHRvIHRyYWNrIGV4cG9zZWQgaW5mYW50cyBhbmQgYXNjZXJ0YWluIGZpbmFsIEhJViBzdGF0dXMuCiAqIAogKiBTdWdnZXN0ZWQgU2NvcmluZyBNZXRob2Q6IHByb3BvcnRpb24gfCBodHRwOi8vaGw3Lm9yZy9maGlyL3VzL2NxZm1lYXN1cmVzL1N0cnVjdHVyZURlZmluaXRpb24vcHJvcG9ydGlvbi1tZWFzdXJlLWNxZm0KICovCgpsaWJyYXJ5IEhJVklORDQyTG9naWMKCi8vIEluY2x1ZGVkIExpYnJhcmllcwp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBISVZDb21tb24gdmVyc2lvbiAnMC4wLjEnIGNhbGxlZCBISUMKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29tbW9uIGNhbGxlZCBXQ29tCgovLyBJbmRpY2F0b3IgRGVmaW5pdGlvbgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZT4gZGVmYXVsdCBJbnRlcnZhbFtAMjAyMy0wMS0wMSwgQDIwMjMtMDEtMzBdCgpjb250ZXh0IFBhdGllbnQKLyogUG9wdWxhdGlvbnMgKi8KCi8qCiAqSW5pdGlhbCBQb3B1bGF0aW9uCiAqLwoKZGVmaW5lICJJbml0aWFsIFBvcHVsYXRpb24iOgogIHRydWUKCi8qKgogKiBOdW1lcmF0b3IKICogCiAqIERlZmluaXRpb246IEhJVi1leHBvc2VkIGluZmFudHMgYm9ybiB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIChvciAyNCBtb250aHMgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncykgd2hvIGhhdmUga25vd24gZmluYWwgSElWIG91dGNvbWUgc3RhdHVzCiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gIkhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCIgQU5EIFsod2l0aCBhbiAiSW5mYW50IGRhdGUgb2YgYmlydGgiIGluIHBhc3QgMTIgbW9udGhzKSBPUiAod2l0aCBhbiAiSW5mYW50IGRhdGUgb2YgYmlydGgiIGluIHBhc3QgMjQgbW9udGhzIElGIG1vdGhlcnMgYXJlICJCcmVhc3RmZWVkaW5nIildIEFORCAiUmVnaXN0ZXJlZCBpbiBiaXJ0aCBjb2hvcnQiPVRydWUgQU5EIHdpdGggYSAiRmluYWwgZGlhZ25vc2lzIG9mIEhJVi1leHBvc2VkIGluZmFudCIgb2YgTk9UIE5VTEwKICovCgpkZWZpbmUgIk51bWVyYXRvciI6CiAgdHJ1ZQoKCi8qKgogKiBEZW5vbWluYXRvcgogKgogKiBEZWZpbml0aW9uOiBhKSBQcm9ncmFtbWUtYmFzZWQvc2VydmljZSBkZWxpdmVyeSBkZW5vbWluYXRvciB8IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIHdobyB3ZXJlIGJvcm4gd2l0aGluIHRoZSAxMiBtb250aHMgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKSBwcmlvciB0byB0aGUgcmVwb3J0aW5nIHBlcmlvZCBhbmQgcmVnaXN0ZXJlZCBpbiB0aGUgYmlydGggY29ob3J0IHwgRm9yIGV4YW1wbGUsIGZvciB0aGUgcmVwb3J0aW5nIHBlcmlvZCBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMjEgdGhlIGRlbm9taW5hdG9yIHdvdWxkIGJlIHRoZSBudW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIGJldHdlZW4gSmFudWFyeSB0byBEZWNlbWJlciAyMDIwIGluIG5vbi1icmVhc3QgZmVlZGluZyBzZXR0aW5ncyBhbmQgSmFudWFyeSB0byBEZWNlbWJlciAyMDE5IGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MuIHwgIHwgYikgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvciB8IEVzdGltYXRlZCBudW1iZXIgb2YgSElWLXBvc2l0aXZlIHdvbWVuIHdobyBkZWxpdmVyZWQgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB8IChvciAyNCBtb250aHMgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncykKICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgWyh3aXRoIGFuICJJbmZhbnQgZGF0ZSBvZiBiaXJ0aCIgd2l0aGluIHBhc3QgMTIgbW9udGhzKSBPUiAod2l0aCBhbiAiSW5mYW50IGRhdGUgb2YgYmlydGgiIHdpdGhpbiBwYXN0IDI0IG1vbnRocyBJRiBtb3RoZXJzIGFyZSAiQnJlYXN0ZmVlZGluZyIpXSBBTkQgIlJlZ2lzdGVyZWQgaW4gYmlydGggY29ob3J0Ij1UcnVlCiAqLwoKZGVmaW5lICJEZW5vbWluYXRvciI6CiAgdHJ1ZQogICAgCgovKiBlbmQgUG9wdWxhdGlvbnMgKi8KCg=="/>
</content>
<content>
<contentType value="application/elm+xml"/>
<data
value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICA8YTpzPi8qKgogKiBMaWJyYXJ5OiBISVYuSU5ELjQyIExvZ2ljCiAqIFJlZiBObzogVkVSLjYKICogU2hvcnQgTmFtZTogRmluYWwgb3V0Y29tZSBvZiBQTVRDVAogKgogKiBEZWZpbml0aW9uOiAlIG9mIEhJVi1leHBvc2VkIGluZmFudHMgd2hvc2UgZmluYWwgSElWIG91dGNvbWUgc3RhdHVzIGlzIGtub3duCiAqCiAqIE51bWVyYXRvcjogSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKSB3aG8gaGF2ZSBrbm93biBmaW5hbCBISVYgb3V0Y29tZSBzdGF0dXMKICogTnVtZXJhdG9yIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gJnF1b3Q7SElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkJnF1b3Q7IEFORCBbKHdpdGggYW4gJnF1b3Q7SW5mYW50IGRhdGUgb2YgYmlydGgmcXVvdDsgaW4gcGFzdCAxMiBtb250aHMpIE9SICh3aXRoIGFuICZxdW90O0luZmFudCBkYXRlIG9mIGJpcnRoJnF1b3Q7IGluIHBhc3QgMjQgbW9udGhzIElGIG1vdGhlcnMgYXJlICZxdW90O0JyZWFzdGZlZWRpbmcmcXVvdDspXSBBTkQgJnF1b3Q7UmVnaXN0ZXJlZCBpbiBiaXJ0aCBjb2hvcnQmcXVvdDs9VHJ1ZSBBTkQgd2l0aCBhICZxdW90O0ZpbmFsIGRpYWdub3NpcyBvZiBISVYtZXhwb3NlZCBpbmZhbnQmcXVvdDsgb2YgTk9UIE5VTEwKICogTnVtZXJhdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEZW5vbWluYXRvcjogYSkgUHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3IgfCBOdW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyB3aG8gd2VyZSBib3JuIHdpdGhpbiB0aGUgMTIgbW9udGhzIChvciAyNCBtb250aHMgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncykgcHJpb3IgdG8gdGhlIHJlcG9ydGluZyBwZXJpb2QgYW5kIHJlZ2lzdGVyZWQgaW4gdGhlIGJpcnRoIGNvaG9ydCB8IEZvciBleGFtcGxlLCBmb3IgdGhlIHJlcG9ydGluZyBwZXJpb2QgSmFudWFyeSB0byBEZWNlbWJlciAyMDIxIHRoZSBkZW5vbWluYXRvciB3b3VsZCBiZSB0aGUgbnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgYm9ybiBiZXR3ZWVuIEphbnVhcnkgdG8gRGVjZW1iZXIgMjAyMCBpbiBub24tYnJlYXN0IGZlZWRpbmcgc2V0dGluZ3MgYW5kIEphbnVhcnkgdG8gRGVjZW1iZXIgMjAxOSBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzLiB8ICB8IGIpIFBvcHVsYXRpb24tYmFzZWQgZGVub21pbmF0b3IgfCBFc3RpbWF0ZWQgbnVtYmVyIG9mIEhJVi1wb3NpdGl2ZSB3b21lbiB3aG8gZGVsaXZlcmVkIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgfCAob3IgMjQgbW9udGhzIGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MpCiAqIERlbm9taW5hdG9yIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gJnF1b3Q7SElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkJnF1b3Q7IEFORCBbKHdpdGggYW4gJnF1b3Q7SW5mYW50IGRhdGUgb2YgYmlydGgmcXVvdDsgd2l0aGluIHBhc3QgMTIgbW9udGhzKSBPUiAod2l0aCBhbiAmcXVvdDtJbmZhbnQgZGF0ZSBvZiBiaXJ0aCZxdW90OyB3aXRoaW4gcGFzdCAyNCBtb250aHMgSUYgbW90aGVycyBhcmUgJnF1b3Q7QnJlYXN0ZmVlZGluZyZxdW90OyldIEFORCAmcXVvdDtSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydCZxdW90Oz1UcnVlCiAqIERlbm9taW5hdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEaXNhZ2dyZWdhdGlvbnM6CiAqIOKAosKgT3V0Y29tZSBzdGF0dXMgKEhJVi1wb3NpdGl2ZSwgSElWLW5lZ2F0aXZlLCBubyBsb25nZXIgYnJlYXN0ZmVlZGluZykgCiAqICDigKLCoENpdGllcyBhbmQgb3RoZXIgYWRtaW5pc3RyYXRpdmUgcmVnaW9ucyBvZiBlcGlkZW1pb2xvZ2ljIGltcG9ydGFuY2UKICoKICogRGlzYWdncmVnYXRpb24gRWxlbWVudHM6IEluZmFudCBISVYgc3RhdHVzCiAqCiAqIE51bWVyYXRvciBhbmQgRGVub21pbmF0b3IgRWxlbWVudHM6CiAqIEJyZWFzdGZlZWRpbmcgCiAqICBGaW5hbCBkaWFnbm9zaXMgb2YgSElWLWV4cG9zZWQgaW5mYW50IAogKiAgSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIAogKiAgSW5mYW50IGRhdGUgb2YgYmlydGggCiAqICBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydAogKgogKiBSZWZlcmVuY2U6IENvbnNvbGlkYXRlZCBndWlkZWxpbmVzIG9uIHBlcnNvbi1jZW50cmVkIEhJViBzdHJhdGVnaWMgaW5mb3JtYXRpb246IHN0cmVuZ3RoZW5pbmcgcm91dGluZSBkYXRhIGZvciBpbXBhY3QuIEdlbmV2YTogV29ybGQgSGVhbHRoIE9yZ2FuaXphdGlvbjsgMjAyMgogKiAKICogRGF0YSBDb25jZXB0czoKICogSElWLkIuREUzMjogQnJlYXN0ZmVlZGluZyB8IEluZmFudCBpcyBiZWluZyBicmVhc3RmZWQgYnkgbW90aGVyCiAqIEhJVi5ELkRFMzI6IEJyZWFzdGZlZWRpbmcgfCBDbGllbnQgaXMgZ2l2aW5nIGluZmFudCBicmVhc3QgbWlsawogKiBISVYuRS5ERTg3OiBJbmZhbnQgZGF0ZSBvZiBiaXJ0aCB8IFRoZSBpbmZhbnQncyBkYXRlIG9mIGJpcnRoIChET0IpIGlmIGtub3duCiAqIEhJVi5FLkRFMTEyOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqIEhJVi5FLkRFMTc5OiBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydCB8IFdoZXRoZXIgdGhlIGluZmFudCBoYXMgYmVlbiByZWdpc3RlcmVkIGluIGEgYmlydGggY29ob3J0CiAqIEhJVi5FLkRFMjI1OiBJbmZhbnQgSElWIHN0YXR1cyB8IEhJViBzdGF0dXMgcmVwb3J0ZWQgYWZ0ZXIgYXBwbHlpbmcgdGhlIEhJViB0ZXN0aW5nIGFsZ29yaXRobS4gTm8gc2luZ2xlIEhJViB0ZXN0IGNhbiBwcm92aWRlIGFuIEhJVi1wb3NpdGl2ZSBkaWFnbm9zaXMuCiAqIEhJVi5FLkRFMjI2OiBISVYtcG9zaXRpdmUgfCBJbmZhbnQgaXMgSElWLXBvc2l0aXZlCiAqIEhJVi5FLkRFMjI3OiBISVYtbmVnYXRpdmUgfCBJbmZhbnQgaXMgSElWLW5lZ2F0aXZlCiAqIEhJVi5FLkRFMjI4OiBVbmtub3duIHwgSW5mYW50IGhhcyB1bmtub3duIEhJViBzdGF0dXMKICogSElWLkUuREUyMzA6IEZpbmFsIGRpYWdub3NpcyBvZiBISVYtZXhwb3NlZCBpbmZhbnQgfCBISVYtZXhwb3NlZCBpbmZhbnQgZmluYWwgc3RhdHVzIGF0IDE4IG1vbnRocyBvciAzIG1vbnRocyBhZnRlciBjZXNzYXRpb24gb2YgYnJlYXN0ZmVlZGluZyAod2hpY2hldmVyIGlzIGxhdGVyKS4KICogSElWLkUuREUyMzE6IEhJVi1wb3NpdGl2ZSB8IFRoZSBpbmZhbnQgaXMgSElWLXBvc2l0aXZlCiAqIEhJVi5FLkRFMjMyOiBISVYtbmVnYXRpdmUgYW5kIG5vIGxvbmdlciBicmVhc3RmZWVkaW5nIHwgVGhlIGluZmFudCBpcyBISVYtbmVnYXRpdmUgYW5kIHRoZSBtb3RoZXIgaGFzIHF1aXQgYnJlYXN0ZmVlZGluZwogKiBISVYuRS5ERTIzMzogSElWIHN0YXR1cyB1bmtub3duIHwgVGhlIGZpbmFsIEhJViBzdGF0dXMgb2YgdGhlIGNoaWxkIGlzIHVua25vd24gYmVjYXVzZSB0aGUgaW5mYW50IGRpZWQsIHdhcyBsb3N0IHRvIGZvbGxvdy11cCBvciB0cmFuc2ZlcnJlZCBvdXQgd2l0aG91dCBldmVyIGhhdmluZyBhbiBISVYtcG9zaXRpdmUgZGlhZ25vc2lzIG9yIGlzIGFjdGl2ZSBpbiBjYXJlIGJ1dCB3YXMgbm90IHRlc3RlZCBhdCAxOCBtb250aHMKICogSElWLlNSVi5ERTIwOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqIEhJVi5TUlYuREUyMjogRmluYWwgZGlhZ25vc2lzIG9mIEhJVi1leHBvc2VkIGluZmFudCB8IEhJVi1leHBvc2VkIGluZmFudCBmaW5hbCBzdGF0dXMgYXQgMTggbW9udGhzIG9yIDMgbW9udGhzIGFmdGVyIGNlc3NhdGlvbiBvZiBicmVhc3RmZWVkaW5nICh3aGljaGV2ZXIgaXMgbGF0ZXIpLgogKgogKiBBZGRpdGlvbmFsIENvbnRleHQKICogLSB3aGF0IGl0IG1lYXN1cmVzOiBUaGlzIGluZGljYXRvciBtZWFzdXJlcyBxdWFsaXR5IG9mIHByb2dyYW1tZSBmb2xsb3ctdXAgdG8gdHJhY2sgZXhwb3NlZCBpbmZhbnRzIGFuZCBhc2NlcnRhaW4gZmluYWwgSElWIHN0YXR1cy4KICogLSByYXRpb25hbGU6IOKAosKgRWZmZWN0aXZlIFBNVENUIHByb2dyYW1tZXMgbXVzdCBmb2xsb3cgSElWLWV4cG9zZWQgaW5mYW50cyB1bnRpbCB0aGUgZW5kIG9mIHRoZSBicmVhc3RmZWVkaW5nIHBlcmlvZCB0byBlbnN1cmUgdGhhdCB0aGUgZnVsbCBjYXNjYWRlIG9mIHNlcnZpY2VzIGFuZCBzdXBwb3J0IGlzIHByb3ZpZGVkIHRvIEhJVi1wb3NpdGl2ZSBtb3RoZXJzIGFuZCB0aGVpciBpbmZhbnRzLiB8IOKAosKgVGhlIGFiaWxpdHkgdG8gYXNjZXJ0YWluIGZpbmFsIG91dGNvbWUgc3RhdHVzIHRocm91Z2ggcm91dGluZSBwcm9ncmFtbWUgZGF0YSBhY3Jvc3MgbXVsdGlwbGUgcG9pbnRzIG9mIGNhcmUgaXMgYSBrZXkgY2hhbGxlbmdlLgogKiAtIG1ldGhvZDogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgcXVhbGl0eSBvZiBwcm9ncmFtbWUgZm9sbG93LXVwIHRvIHRyYWNrIGV4cG9zZWQgaW5mYW50cyBhbmQgYXNjZXJ0YWluIGZpbmFsIEhJViBzdGF0dXMuCiAqIAogKiBTdWdnZXN0ZWQgU2NvcmluZyBNZXRob2Q6IHByb3BvcnRpb24gfCBodHRwOi8vaGw3Lm9yZy9maGlyL3VzL2NxZm1lYXN1cmVzL1N0cnVjdHVyZURlZmluaXRpb24vcHJvcG9ydGlvbi1tZWFzdXJlLWNxZm0KICovCgpsaWJyYXJ5IEhJVklORDQyTG9naWM8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9IkhJVklORDQyTG9naWMiIHN5c3RlbT0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2Ii8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYXRvcj0iNTk6MS01OToyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMSI+CiAgICAgICAgICAgICAgIDxhOnM+Ly8gSW5jbHVkZWQgTGlicmFyaWVzCnVzaW5nIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC91c2luZ3M+CiAgIDxpbmNsdWRlcz4KICAgICAgPGRlZiBsb2NhbElkPSIyIiBsb2NhdG9yPSI2MToxLTYxOjQ0IiBsb2NhbElkZW50aWZpZXI9IkhJQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2L0hJVkNvbW1vbiIgdmVyc2lvbj0iMC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkhJVkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMC4wLjEnIGNhbGxlZCBISUM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMyIgbG9jYXRvcj0iNjI6MS02MjozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIzIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNCIgbG9jYXRvcj0iNjQ6MS02NDoyOSIgbG9jYWxJZGVudGlmaWVyPSJXQ29tIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9oaXYvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9Db21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBXQ29tPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIxMCIgbG9jYXRvcj0iNjc6MS02Nzo4OCIgbmFtZT0iTWVhc3VyZW1lbnQgUGVyaW9kIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTAiPgogICAgICAgICAgICAgICA8YTpzPi8vIEluZGljYXRvciBEZWZpbml0aW9uCnBhcmFtZXRlciAmcXVvdDtNZWFzdXJlbWVudCBQZXJpb2QmcXVvdDsgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iOSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+SW50ZXJ2YWwmbHQ7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RGF0ZTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4+PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBkZWZhdWx0IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUiPkludGVydmFsW0AyMDIzLTAxLTAxLCBAMjAyMy0wMS0zMF08L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxkZWZhdWx0IGxvY2FsSWQ9IjciIGxvY2F0b3I9IjY3OjU1LTY3Ojg4IiBsb3dDbG9zZWQ9InRydWUiIGhpZ2hDbG9zZWQ9InRydWUiIHhzaTp0eXBlPSJJbnRlcnZhbCI+CiAgICAgICAgICAgIDxsb3cgbG9jYWxJZD0iNSIgbG9jYXRvcj0iNjc6NjQtNjc6NzQiIHhzaTp0eXBlPSJEYXRlIj4KICAgICAgICAgICAgICAgPHllYXIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyMDIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8bW9udGggdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8ZGF5IHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9sb3c+CiAgICAgICAgICAgIDxoaWdoIGxvY2FsSWQ9IjYiIGxvY2F0b3I9IjY3Ojc3LTY3Ojg3IiB4c2k6dHlwZT0iRGF0ZSI+CiAgICAgICAgICAgICAgIDx5ZWFyIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMjAyMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPG1vbnRoIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPGRheSB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMwIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L2hpZ2g+CiAgICAgICAgIDwvZGVmYXVsdD4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iOSIgbG9jYXRvcj0iNjc6MzItNjc6NDUiIHhzaTp0eXBlPSJJbnRlcnZhbFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICA8cG9pbnRUeXBlIGxvY2FsSWQ9IjgiIGxvY2F0b3I9IjY3OjQxLTY3OjQ0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgPC9wYXJhbWV0ZXJUeXBlU3BlY2lmaWVyPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYXRvcj0iNjk6MS02OToxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhdG9yPSI2OToxLTY5OjE1IiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI2OToxLTY5OjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMTIiIGxvY2F0b3I9Ijc2OjEtNzc6NiIgbmFtZT0iSW5pdGlhbCBQb3B1bGF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICA8YTpzIHI9IjExIj4vKiBQb3B1bGF0aW9ucyAqLwoKLyoKICpJbml0aWFsIFBvcHVsYXRpb24KICovCgpkZWZpbmUgJnF1b3Q7SW5pdGlhbCBQb3B1bGF0aW9uJnF1b3Q7OgogIHRydWU8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTEiIGxvY2F0b3I9Ijc3OjMtNzc6NiIgdmFsdWVUeXBlPSJ0OkJvb2xlYW4iIHZhbHVlPSJ0cnVlIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIxNCIgbG9jYXRvcj0iODY6MS04Nzo2IiBuYW1lPSJOdW1lcmF0b3IiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIxNCI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMTMiPi8qKgogKiBOdW1lcmF0b3IKICogCiAqIERlZmluaXRpb246IEhJVi1leHBvc2VkIGluZmFudHMgYm9ybiB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIChvciAyNCBtb250aHMgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncykgd2hvIGhhdmUga25vd24gZmluYWwgSElWIG91dGNvbWUgc3RhdHVzCiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gJnF1b3Q7SElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkJnF1b3Q7IEFORCBbKHdpdGggYW4gJnF1b3Q7SW5mYW50IGRhdGUgb2YgYmlydGgmcXVvdDsgaW4gcGFzdCAxMiBtb250aHMpIE9SICh3aXRoIGFuICZxdW90O0luZmFudCBkYXRlIG9mIGJpcnRoJnF1b3Q7IGluIHBhc3QgMjQgbW9udGhzIElGIG1vdGhlcnMgYXJlICZxdW90O0JyZWFzdGZlZWRpbmcmcXVvdDspXSBBTkQgJnF1b3Q7UmVnaXN0ZXJlZCBpbiBiaXJ0aCBjb2hvcnQmcXVvdDs9VHJ1ZSBBTkQgd2l0aCBhICZxdW90O0ZpbmFsIGRpYWdub3NpcyBvZiBISVYtZXhwb3NlZCBpbmZhbnQmcXVvdDsgb2YgTk9UIE5VTEwKICovCgpkZWZpbmUgJnF1b3Q7TnVtZXJhdG9yJnF1b3Q7OgogIHRydWU8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTMiIGxvY2F0b3I9Ijg3OjMtODc6NiIgdmFsdWVUeXBlPSJ0OkJvb2xlYW4iIHZhbHVlPSJ0cnVlIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIxNiIgbG9jYXRvcj0iOTc6MS05ODo2IiBuYW1lPSJEZW5vbWluYXRvciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjE2Ij4KICAgICAgICAgICAgICAgPGE6cyByPSIxNSI+LyoqCiAqIERlbm9taW5hdG9yCiAqCiAqIERlZmluaXRpb246IGEpIFByb2dyYW1tZS1iYXNlZC9zZXJ2aWNlIGRlbGl2ZXJ5IGRlbm9taW5hdG9yIHwgTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgd2hvIHdlcmUgYm9ybiB3aXRoaW4gdGhlIDEyIG1vbnRocyAob3IgMjQgbW9udGhzIGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MpIHByaW9yIHRvIHRoZSByZXBvcnRpbmcgcGVyaW9kIGFuZCByZWdpc3RlcmVkIGluIHRoZSBiaXJ0aCBjb2hvcnQgfCBGb3IgZXhhbXBsZSwgZm9yIHRoZSByZXBvcnRpbmcgcGVyaW9kIEphbnVhcnkgdG8gRGVjZW1iZXIgMjAyMSB0aGUgZGVub21pbmF0b3Igd291bGQgYmUgdGhlIG51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGJvcm4gYmV0d2VlbiBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMjAgaW4gbm9uLWJyZWFzdCBmZWVkaW5nIHNldHRpbmdzIGFuZCBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMTkgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncy4gfCAgfCBiKSBQb3B1bGF0aW9uLWJhc2VkIGRlbm9taW5hdG9yIHwgRXN0aW1hdGVkIG51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHwgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKQogKiBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuICZxdW90O0hJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCZxdW90OyBBTkQgWyh3aXRoIGFuICZxdW90O0luZmFudCBkYXRlIG9mIGJpcnRoJnF1b3Q7IHdpdGhpbiBwYXN0IDEyIG1vbnRocykgT1IgKHdpdGggYW4gJnF1b3Q7SW5mYW50IGRhdGUgb2YgYmlydGgmcXVvdDsgd2l0aGluIHBhc3QgMjQgbW9udGhzIElGIG1vdGhlcnMgYXJlICZxdW90O0JyZWFzdGZlZWRpbmcmcXVvdDspXSBBTkQgJnF1b3Q7UmVnaXN0ZXJlZCBpbiBiaXJ0aCBjb2hvcnQmcXVvdDs9VHJ1ZQogKi8KCmRlZmluZSAmcXVvdDtEZW5vbWluYXRvciZxdW90OzoKICB0cnVlPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjE1IiBsb2NhdG9yPSI5ODozLTk4OjYiIHZhbHVlVHlwZT0idDpCb29sZWFuIiB2YWx1ZT0idHJ1ZSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="/>
</content>
<content>
<contentType value="application/elm+json"/>
<data
value="ewogICAibGlicmFyeSIgOiB7CiAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAidHJhbnNsYXRvck9wdGlvbnMiIDogIkVuYWJsZUFubm90YXRpb25zLEVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iLAogICAgICAgICAic2lnbmF0dXJlTGV2ZWwiIDogIk92ZXJsb2FkcyIsCiAgICAgICAgICJ0eXBlIiA6ICJDcWxUb0VsbUluZm8iCiAgICAgIH0sIHsKICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBMaWJyYXJ5OiBISVYuSU5ELjQyIExvZ2ljXG4gKiBSZWYgTm86IFZFUi42XG4gKiBTaG9ydCBOYW1lOiBGaW5hbCBvdXRjb21lIG9mIFBNVENUXG4gKlxuICogRGVmaW5pdGlvbjogJSBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIHdob3NlIGZpbmFsIEhJViBvdXRjb21lIHN0YXR1cyBpcyBrbm93blxuICpcbiAqIE51bWVyYXRvcjogSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKSB3aG8gaGF2ZSBrbm93biBmaW5hbCBISVYgb3V0Y29tZSBzdGF0dXNcbiAqIE51bWVyYXRvciBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuIFwiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkXCIgQU5EIFsod2l0aCBhbiBcIkluZmFudCBkYXRlIG9mIGJpcnRoXCIgaW4gcGFzdCAxMiBtb250aHMpIE9SICh3aXRoIGFuIFwiSW5mYW50IGRhdGUgb2YgYmlydGhcIiBpbiBwYXN0IDI0IG1vbnRocyBJRiBtb3RoZXJzIGFyZSBcIkJyZWFzdGZlZWRpbmdcIildIEFORCBcIlJlZ2lzdGVyZWQgaW4gYmlydGggY29ob3J0XCI9VHJ1ZSBBTkQgd2l0aCBhIFwiRmluYWwgZGlhZ25vc2lzIG9mIEhJVi1leHBvc2VkIGluZmFudFwiIG9mIE5PVCBOVUxMXG4gKiBOdW1lcmF0b3IgRXhjbHVzaW9uczogXG4gKlxuICogRGVub21pbmF0b3I6IGEpIFByb2dyYW1tZS1iYXNlZC9zZXJ2aWNlIGRlbGl2ZXJ5IGRlbm9taW5hdG9yIHwgTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgd2hvIHdlcmUgYm9ybiB3aXRoaW4gdGhlIDEyIG1vbnRocyAob3IgMjQgbW9udGhzIGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MpIHByaW9yIHRvIHRoZSByZXBvcnRpbmcgcGVyaW9kIGFuZCByZWdpc3RlcmVkIGluIHRoZSBiaXJ0aCBjb2hvcnQgfCBGb3IgZXhhbXBsZSwgZm9yIHRoZSByZXBvcnRpbmcgcGVyaW9kIEphbnVhcnkgdG8gRGVjZW1iZXIgMjAyMSB0aGUgZGVub21pbmF0b3Igd291bGQgYmUgdGhlIG51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGJvcm4gYmV0d2VlbiBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMjAgaW4gbm9uLWJyZWFzdCBmZWVkaW5nIHNldHRpbmdzIGFuZCBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMTkgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncy4gfCAgfCBiKSBQb3B1bGF0aW9uLWJhc2VkIGRlbm9taW5hdG9yIHwgRXN0aW1hdGVkIG51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHwgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKVxuICogRGVub21pbmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiBcIkhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZFwiIEFORCBbKHdpdGggYW4gXCJJbmZhbnQgZGF0ZSBvZiBiaXJ0aFwiIHdpdGhpbiBwYXN0IDEyIG1vbnRocykgT1IgKHdpdGggYW4gXCJJbmZhbnQgZGF0ZSBvZiBiaXJ0aFwiIHdpdGhpbiBwYXN0IDI0IG1vbnRocyBJRiBtb3RoZXJzIGFyZSBcIkJyZWFzdGZlZWRpbmdcIildIEFORCBcIlJlZ2lzdGVyZWQgaW4gYmlydGggY29ob3J0XCI9VHJ1ZVxuICogRGVub21pbmF0b3IgRXhjbHVzaW9uczogXG4gKlxuICogRGlzYWdncmVnYXRpb25zOlxuICog4oCiwqBPdXRjb21lIHN0YXR1cyAoSElWLXBvc2l0aXZlLCBISVYtbmVnYXRpdmUsIG5vIGxvbmdlciBicmVhc3RmZWVkaW5nKSBcbiAqICDigKLCoENpdGllcyBhbmQgb3RoZXIgYWRtaW5pc3RyYXRpdmUgcmVnaW9ucyBvZiBlcGlkZW1pb2xvZ2ljIGltcG9ydGFuY2VcbiAqXG4gKiBEaXNhZ2dyZWdhdGlvbiBFbGVtZW50czogSW5mYW50IEhJViBzdGF0dXNcbiAqXG4gKiBOdW1lcmF0b3IgYW5kIERlbm9taW5hdG9yIEVsZW1lbnRzOlxuICogQnJlYXN0ZmVlZGluZyBcbiAqICBGaW5hbCBkaWFnbm9zaXMgb2YgSElWLWV4cG9zZWQgaW5mYW50IFxuICogIEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCBcbiAqICBJbmZhbnQgZGF0ZSBvZiBiaXJ0aCBcbiAqICBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydFxuICpcbiAqIFJlZmVyZW5jZTogQ29uc29saWRhdGVkIGd1aWRlbGluZXMgb24gcGVyc29uLWNlbnRyZWQgSElWIHN0cmF0ZWdpYyBpbmZvcm1hdGlvbjogc3RyZW5ndGhlbmluZyByb3V0aW5lIGRhdGEgZm9yIGltcGFjdC4gR2VuZXZhOiBXb3JsZCBIZWFsdGggT3JnYW5pemF0aW9uOyAyMDIyXG4gKiBcbiAqIERhdGEgQ29uY2VwdHM6XG4gKiBISVYuQi5ERTMyOiBCcmVhc3RmZWVkaW5nIHwgSW5mYW50IGlzIGJlaW5nIGJyZWFzdGZlZCBieSBtb3RoZXJcbiAqIEhJVi5ELkRFMzI6IEJyZWFzdGZlZWRpbmcgfCBDbGllbnQgaXMgZ2l2aW5nIGluZmFudCBicmVhc3QgbWlsa1xuICogSElWLkUuREU4NzogSW5mYW50IGRhdGUgb2YgYmlydGggfCBUaGUgaW5mYW50J3MgZGF0ZSBvZiBiaXJ0aCAoRE9CKSBpZiBrbm93blxuICogSElWLkUuREUxMTI6IEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCB8IFdoZXRoZXIgdGhlIGluZmFudCBvciBjaGlsZCB3YXMgZGV0ZXJtaW5lZCB0byBoYXZlIGhhZCBISVYgZXhwb3N1cmVcbiAqIEhJVi5FLkRFMTc5OiBSZWdpc3RlcmVkIGluIGJpcnRoIGNvaG9ydCB8IFdoZXRoZXIgdGhlIGluZmFudCBoYXMgYmVlbiByZWdpc3RlcmVkIGluIGEgYmlydGggY29ob3J0XG4gKiBISVYuRS5ERTIyNTogSW5mYW50IEhJViBzdGF0dXMgfCBISVYgc3RhdHVzIHJlcG9ydGVkIGFmdGVyIGFwcGx5aW5nIHRoZSBISVYgdGVzdGluZyBhbGdvcml0aG0uIE5vIHNpbmdsZSBISVYgdGVzdCBjYW4gcHJvdmlkZSBhbiBISVYtcG9zaXRpdmUgZGlhZ25vc2lzLlxuICogSElWLkUuREUyMjY6IEhJVi1wb3NpdGl2ZSB8IEluZmFudCBpcyBISVYtcG9zaXRpdmVcbiAqIEhJVi5FLkRFMjI3OiBISVYtbmVnYXRpdmUgfCBJbmZhbnQgaXMgSElWLW5lZ2F0aXZlXG4gKiBISVYuRS5ERTIyODogVW5rbm93biB8IEluZmFudCBoYXMgdW5rbm93biBISVYgc3RhdHVzXG4gKiBISVYuRS5ERTIzMDogRmluYWwgZGlhZ25vc2lzIG9mIEhJVi1leHBvc2VkIGluZmFudCB8IEhJVi1leHBvc2VkIGluZmFudCBmaW5hbCBzdGF0dXMgYXQgMTggbW9udGhzIG9yIDMgbW9udGhzIGFmdGVyIGNlc3NhdGlvbiBvZiBicmVhc3RmZWVkaW5nICh3aGljaGV2ZXIgaXMgbGF0ZXIpLlxuICogSElWLkUuREUyMzE6IEhJVi1wb3NpdGl2ZSB8IFRoZSBpbmZhbnQgaXMgSElWLXBvc2l0aXZlXG4gKiBISVYuRS5ERTIzMjogSElWLW5lZ2F0aXZlIGFuZCBubyBsb25nZXIgYnJlYXN0ZmVlZGluZyB8IFRoZSBpbmZhbnQgaXMgSElWLW5lZ2F0aXZlIGFuZCB0aGUgbW90aGVyIGhhcyBxdWl0IGJyZWFzdGZlZWRpbmdcbiAqIEhJVi5FLkRFMjMzOiBISVYgc3RhdHVzIHVua25vd24gfCBUaGUgZmluYWwgSElWIHN0YXR1cyBvZiB0aGUgY2hpbGQgaXMgdW5rbm93biBiZWNhdXNlIHRoZSBpbmZhbnQgZGllZCwgd2FzIGxvc3QgdG8gZm9sbG93LXVwIG9yIHRyYW5zZmVycmVkIG91dCB3aXRob3V0IGV2ZXIgaGF2aW5nIGFuIEhJVi1wb3NpdGl2ZSBkaWFnbm9zaXMgb3IgaXMgYWN0aXZlIGluIGNhcmUgYnV0IHdhcyBub3QgdGVzdGVkIGF0IDE4IG1vbnRoc1xuICogSElWLlNSVi5ERTIwOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlXG4gKiBISVYuU1JWLkRFMjI6IEZpbmFsIGRpYWdub3NpcyBvZiBISVYtZXhwb3NlZCBpbmZhbnQgfCBISVYtZXhwb3NlZCBpbmZhbnQgZmluYWwgc3RhdHVzIGF0IDE4IG1vbnRocyBvciAzIG1vbnRocyBhZnRlciBjZXNzYXRpb24gb2YgYnJlYXN0ZmVlZGluZyAod2hpY2hldmVyIGlzIGxhdGVyKS5cbiAqXG4gKiBBZGRpdGlvbmFsIENvbnRleHRcbiAqIC0gd2hhdCBpdCBtZWFzdXJlczogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgcXVhbGl0eSBvZiBwcm9ncmFtbWUgZm9sbG93LXVwIHRvIHRyYWNrIGV4cG9zZWQgaW5mYW50cyBhbmQgYXNjZXJ0YWluIGZpbmFsIEhJViBzdGF0dXMuXG4gKiAtIHJhdGlvbmFsZTog4oCiwqBFZmZlY3RpdmUgUE1UQ1QgcHJvZ3JhbW1lcyBtdXN0IGZvbGxvdyBISVYtZXhwb3NlZCBpbmZhbnRzIHVudGlsIHRoZSBlbmQgb2YgdGhlIGJyZWFzdGZlZWRpbmcgcGVyaW9kIHRvIGVuc3VyZSB0aGF0IHRoZSBmdWxsIGNhc2NhZGUgb2Ygc2VydmljZXMgYW5kIHN1cHBvcnQgaXMgcHJvdmlkZWQgdG8gSElWLXBvc2l0aXZlIG1vdGhlcnMgYW5kIHRoZWlyIGluZmFudHMuIHwg4oCiwqBUaGUgYWJpbGl0eSB0byBhc2NlcnRhaW4gZmluYWwgb3V0Y29tZSBzdGF0dXMgdGhyb3VnaCByb3V0aW5lIHByb2dyYW1tZSBkYXRhIGFjcm9zcyBtdWx0aXBsZSBwb2ludHMgb2YgY2FyZSBpcyBhIGtleSBjaGFsbGVuZ2UuXG4gKiAtIG1ldGhvZDogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgcXVhbGl0eSBvZiBwcm9ncmFtbWUgZm9sbG93LXVwIHRvIHRyYWNrIGV4cG9zZWQgaW5mYW50cyBhbmQgYXNjZXJ0YWluIGZpbmFsIEhJViBzdGF0dXMuXG4gKiBcbiAqIFN1Z2dlc3RlZCBTY29yaW5nIE1ldGhvZDogcHJvcG9ydGlvbiB8IGh0dHA6Ly9obDcub3JnL2ZoaXIvdXMvY3FmbWVhc3VyZXMvU3RydWN0dXJlRGVmaW5pdGlvbi9wcm9wb3J0aW9uLW1lYXN1cmUtY3FmbVxuICovXG5cbiIsImxpYnJhcnkgSElWSU5ENDJMb2dpYyIgXQogICAgICAgICAgICB9IF0KICAgICAgICAgfQogICAgICB9IF0sCiAgICAgICJpZGVudGlmaWVyIiA6IHsKICAgICAgICAgImlkIiA6ICJISVZJTkQ0MkxvZ2ljIiwKICAgICAgICAgInN5c3RlbSIgOiAiaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2IgogICAgICB9LAogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7CiAgICAgICAgICJpZCIgOiAidXJuOmhsNy1vcmc6ZWxtIiwKICAgICAgICAgInZlcnNpb24iIDogInIxIgogICAgICB9LAogICAgICAidXNpbmdzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiU3lzdGVtIiwKICAgICAgICAgICAgInVyaSIgOiAidXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIgogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU5OjEtNTk6MjYiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSIiwKICAgICAgICAgICAgInVyaSIgOiAiaHR0cDovL2hsNy5vcmcvZmhpciIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICI0LjAuMSIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjEiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8vIEluY2x1ZGVkIExpYnJhcmllc1xuIiwidXNpbmcgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJGSElSIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAnNC4wLjEnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgImluY2x1ZGVzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MS02MTo0NCIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkhJQyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vc21hcnQud2hvLmludC9oaXYvSElWQ29tbW9uIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjAuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMiIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkhJVkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIHZlcnNpb24gIiwiJzAuMC4xJyIsIiBjYWxsZWQgIiwiSElDIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIzIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjYyOjEtNjI6MzUiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSSGVscGVycyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL0ZISVJIZWxwZXJzIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMyIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkZISVJIZWxwZXJzIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInNC4wLjEnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI0IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjY0OjEtNjQ6MjkiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJXQ29tIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9zbWFydC53aG8uaW50L2hpdi9XSE9Db21tb24iLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiV0hPQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgY2FsbGVkICIsIldDb20iIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAicGFyYW1ldGVycyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NzoxLTY3Ojg4IiwKICAgICAgICAgICAgIm5hbWUiIDogIk1lYXN1cmVtZW50IFBlcmlvZCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMTAiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8vIEluZGljYXRvciBEZWZpbml0aW9uXG4iLCJwYXJhbWV0ZXIgIiwiXCJNZWFzdXJlbWVudCBQZXJpb2RcIiIsIiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiOSIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiSW50ZXJ2YWw8IiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjgiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkRhdGUiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIj4iIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiBkZWZhdWx0ICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI3IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkludGVydmFsWyIsIkAyMDIzLTAxLTAxIiwiLCAiLCJAMjAyMy0wMS0zMCIsIl0iIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImRlZmF1bHQiIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNyIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2Nzo1NS02Nzo4OCIsCiAgICAgICAgICAgICAgICJsb3dDbG9zZWQiIDogdHJ1ZSwKICAgICAgICAgICAgICAgImhpZ2hDbG9zZWQiIDogdHJ1ZSwKICAgICAgICAgICAgICAgInR5cGUiIDogIkludGVydmFsIiwKICAgICAgICAgICAgICAgImxvdyIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI1IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY3OjY0LTY3Ojc0IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkRhdGUiLAogICAgICAgICAgICAgICAgICAieWVhciIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAibW9udGgiIDogewogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgImRheSIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJoaWdoIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NzctNjc6ODciLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRGF0ZSIsCiAgICAgICAgICAgICAgICAgICJ5ZWFyIiA6IHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIyMDIzIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJtb250aCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAiZGF5IiA6IHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIzMCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgInBhcmFtZXRlclR5cGVTcGVjaWZpZXIiIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiOSIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NzozMi02Nzo0NSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJbnRlcnZhbFR5cGVTcGVjaWZpZXIiLAogICAgICAgICAgICAgICAicG9pbnRUeXBlIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjgiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NDEtNjc6NDQiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EYXRlIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiY29udGV4dHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6MS02OToxNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IgogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgInN0YXRlbWVudHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6MS02OToxNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTaW5nbGV0b25Gcm9tIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6MS02OToxNSIsCiAgICAgICAgICAgICAgICAgICJkYXRhVHlwZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9UGF0aWVudCIsCiAgICAgICAgICAgICAgICAgICJ0ZW1wbGF0ZUlkIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJSZXRyaWV2ZSIKICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjEyIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjc2OjEtNzc6NiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJbml0aWFsIFBvcHVsYXRpb24iLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjExIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8qIFBvcHVsYXRpb25zICovXG5cbi8qXG4gKkluaXRpYWwgUG9wdWxhdGlvblxuICovXG5cbiIsImRlZmluZSAiLCJcIkluaXRpYWwgUG9wdWxhdGlvblwiIiwiOlxuICAiLCJ0cnVlIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTEiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzc6My03Nzo2IiwKICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1Cb29sZWFuIiwKICAgICAgICAgICAgICAgInZhbHVlIiA6ICJ0cnVlIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMTQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiODY6MS04Nzo2IiwKICAgICAgICAgICAgIm5hbWUiIDogIk51bWVyYXRvciIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIxNCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBOdW1lcmF0b3JcbiAqIFxuICogRGVmaW5pdGlvbjogSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKSB3aG8gaGF2ZSBrbm93biBmaW5hbCBISVYgb3V0Y29tZSBzdGF0dXNcbiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gXCJISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGRcIiBBTkQgWyh3aXRoIGFuIFwiSW5mYW50IGRhdGUgb2YgYmlydGhcIiBpbiBwYXN0IDEyIG1vbnRocykgT1IgKHdpdGggYW4gXCJJbmZhbnQgZGF0ZSBvZiBiaXJ0aFwiIGluIHBhc3QgMjQgbW9udGhzIElGIG1vdGhlcnMgYXJlIFwiQnJlYXN0ZmVlZGluZ1wiKV0gQU5EIFwiUmVnaXN0ZXJlZCBpbiBiaXJ0aCBjb2hvcnRcIj1UcnVlIEFORCB3aXRoIGEgXCJGaW5hbCBkaWFnbm9zaXMgb2YgSElWLWV4cG9zZWQgaW5mYW50XCIgb2YgTk9UIE5VTExcbiAqL1xuXG4iLCJkZWZpbmUgIiwiXCJOdW1lcmF0b3JcIiIsIjpcbiAgIiwidHJ1ZSIgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjEzIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg3OjMtODc6NiIsCiAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9Qm9vbGVhbiIsCiAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAidHJ1ZSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjE2IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjk3OjEtOTg6NiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJEZW5vbWluYXRvciIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTUiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBEZW5vbWluYXRvclxuICpcbiAqIERlZmluaXRpb246IGEpIFByb2dyYW1tZS1iYXNlZC9zZXJ2aWNlIGRlbGl2ZXJ5IGRlbm9taW5hdG9yIHwgTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgd2hvIHdlcmUgYm9ybiB3aXRoaW4gdGhlIDEyIG1vbnRocyAob3IgMjQgbW9udGhzIGluIGJyZWFzdGZlZWRpbmcgc2V0dGluZ3MpIHByaW9yIHRvIHRoZSByZXBvcnRpbmcgcGVyaW9kIGFuZCByZWdpc3RlcmVkIGluIHRoZSBiaXJ0aCBjb2hvcnQgfCBGb3IgZXhhbXBsZSwgZm9yIHRoZSByZXBvcnRpbmcgcGVyaW9kIEphbnVhcnkgdG8gRGVjZW1iZXIgMjAyMSB0aGUgZGVub21pbmF0b3Igd291bGQgYmUgdGhlIG51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGJvcm4gYmV0d2VlbiBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMjAgaW4gbm9uLWJyZWFzdCBmZWVkaW5nIHNldHRpbmdzIGFuZCBKYW51YXJ5IHRvIERlY2VtYmVyIDIwMTkgaW4gYnJlYXN0ZmVlZGluZyBzZXR0aW5ncy4gfCAgfCBiKSBQb3B1bGF0aW9uLWJhc2VkIGRlbm9taW5hdG9yIHwgRXN0aW1hdGVkIG51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHwgKG9yIDI0IG1vbnRocyBpbiBicmVhc3RmZWVkaW5nIHNldHRpbmdzKVxuICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiBcIkhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZFwiIEFORCBbKHdpdGggYW4gXCJJbmZhbnQgZGF0ZSBvZiBiaXJ0aFwiIHdpdGhpbiBwYXN0IDEyIG1vbnRocykgT1IgKHdpdGggYW4gXCJJbmZhbnQgZGF0ZSBvZiBiaXJ0aFwiIHdpdGhpbiBwYXN0IDI0IG1vbnRocyBJRiBtb3RoZXJzIGFyZSBcIkJyZWFzdGZlZWRpbmdcIildIEFORCBcIlJlZ2lzdGVyZWQgaW4gYmlydGggY29ob3J0XCI9VHJ1ZVxuICovXG5cbiIsImRlZmluZSAiLCJcIkRlbm9taW5hdG9yXCIiLCI6XG4gICIsInRydWUiIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxNSIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5ODozLTk4OjYiLAogICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUJvb2xlYW4iLAogICAgICAgICAgICAgICAidmFsdWUiIDogInRydWUiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgfQogICAgICAgICB9IF0KICAgICAgfQogICB9Cn0="/>
</content>
</Library>