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="HIVIND41Logic"/>
<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.41 Logic</td>
</tr>
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">HIVIND41Logic</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-HIVIND41Logic.html">HIV.IND.41 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 breastfeeding infants whose mothers are receiving ART at 12 (and 24 months) postpartum</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.41 Logic
* Ref No: VER.5
* Short Name: ART coverage in breastfeeding mothers
*
* Definition: % of HIV-exposed breastfeeding infants whose mothers are receiving ART at 12 (and 24 months) postpartum
*
* Numerator: Number of HIV-exposed breastfeeding infants whose mothers are receiving ART at 12 months (and 24 months*) postpartum
* Numerator Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND whose mothers are "Breastfeeding" 12 months after "Delivery date" AND mothers with "On ART"=True 12 months after "Delivery date" | | Also reported for 24 months after "Delivery date"
* Numerator Exclusions:
*
* Denominator: Number of HIV-exposed infants attending MNCH services for a 12-month visit (and 24-month visit or first visit after the end of breastfeeding)
* Denominator Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(whose mothers attend a 12-month "Maternal and child health service visit") OR (first "Maternal and child health service visit" after "Delivery date" where mother is NOT "Breastfeeding")] | | Also reported for mothers attending 24-month "Maternal and child health service visit"
* Denominator Exclusions:
*
* Disaggregations:
* • Age (<15, 15–19, 20–24, 25+ years)
* • Timing of ART initiation (already on ART at first ANC visit, newly on ART during pregnancy or labour and delivery)
* • Cities and other administrative regions of epidemiologic importance
*
* Disaggregation Elements: Age | Timing of ART initiation | Breastfeeding at 24 months
*
* Numerator and Denominator Elements:
* Breastfeeding
* Delivery date
* HIV-exposed infant or child
* Maternal and child health service visit
* On ART
*
* Reference: Consolidated guidelines on person-centred HIV strategic information: strengthening routine data for impact. Geneva: World Health Organization; 2022
*
* Data Concepts:
* HIV.A.DE17: Age | Calculated age (number of years) of the client based on date of birth
* HIV.B.DE32: Breastfeeding | Infant is being breastfed by mother
* HIV.D.DE32: Breastfeeding | Client is giving infant breast milk
* HIV.D.DE38: On ART | Client is currently taking ART
* HIV.E.DE41: Timing of ART initiation | When the pregnant woman or mother initiated ART, for women living with HIV.
* HIV.E.DE42: Already on ART at first antenatal care visit | The pregnant woman was already on antiretroviral therapy (ART) at first antenatal care visit
* HIV.E.DE43: Newly on ART during pregnancy | The pregnant woman started ART during her pregnancy
* HIV.E.DE44: Newly on ART during labour and delivery | The woman started ART during labour and delivery
* HIV.E.DE46: Delivery date | Date on which the woman delivered
* HIV.E.DE112: HIV-exposed infant or child | Whether the infant or child was determined to have had HIV exposure
* HIV.E.DE173: Maternal and child health service visit | Maternal and child health service visit attended by an HIV-exposed infant
* HIV.E.DE174: 12-month visit | HIV-exposed infant attending MCH services for a 12-month visit
* HIV.E.DE175: 24-month visit | HIV-exposed infants attending MCH services for a 24-month visit
* HIV.E.DE176: First visit after the end of breastfeeding | HIV-exposed infant attending MCH services for a first visit after the end of breastfeeding
* HIV.H.DE47: On ART | Client is currently taking ART
* HIV.SRV.DE20: HIV-exposed infant or child | Whether the infant or child was determined to have had HIV exposure
*
* Additional Context
* - what it measures: This indicator measures the programme's ability to reduce the risk of transmission via breastfeeding (Prong 3 of the PMTCT strategy).
* - rationale: • In many countries the average breastfeeding period is 18–24 months. The long breastfeeding period represents an important risk period for HIV-exposed infants. | • Ensuring that HIV-positive mothers are retained on ART, especially during the breastfeeding period, is critical to sustaining the health of the mother and preventing infection of her infant.
* - method: For the numerator: Programme records (for example, PMTCT registers, ART registers). | | For the denominator: Programme records (for example, MCH service records)
*
* Suggested Scoring Method: proportion | http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/proportion-measure-cqfm
*/
library HIVIND41Logic
// 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: Number of HIV-exposed breastfeeding infants whose mothers are receiving ART at 12 months (and 24 months*) postpartum
* Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND whose mothers are "Breastfeeding" 12 months after "Delivery date" AND mothers with "On ART"=True 12 months after "Delivery date" | | Also reported for 24 months after "Delivery date"
*/
define "Numerator":
true
/**
* Denominator
*
* Definition: Number of HIV-exposed infants attending MNCH services for a 12-month visit (and 24-month visit or first visit after the end of breastfeeding)
* Calculation: COUNT of infants who are an "HIV-exposed infant or child" AND [(whose mothers attend a 12-month "Maternal and child health service visit") OR (first "Maternal and child health service visit" after "Delivery date" where mother is NOT "Breastfeeding")] | | Also reported for mothers attending 24-month "Maternal and child health service visit"
*/
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 (15416 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 (20504 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/HIVIND41Logic"/>
<version value="0.3.0"/>
<name value="HIVIND41Logic"/>
<title value="HIV.IND.41 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 breastfeeding infants whose mothers are receiving ART at 12 (and 24 months) postpartum"/>
<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="LyoqCiAqIExpYnJhcnk6IEhJVi5JTkQuNDEgTG9naWMKICogUmVmIE5vOiBWRVIuNQogKiBTaG9ydCBOYW1lOiBBUlQgY292ZXJhZ2UgaW4gYnJlYXN0ZmVlZGluZyBtb3RoZXJzCiAqCiAqIERlZmluaXRpb246ICUgb2YgSElWLWV4cG9zZWQgYnJlYXN0ZmVlZGluZyBpbmZhbnRzIHdob3NlIG1vdGhlcnMgYXJlIHJlY2VpdmluZyBBUlQgYXQgMTIgKGFuZCAyNCBtb250aHMpIHBvc3RwYXJ0dW0KICoKICogTnVtZXJhdG9yOiBOdW1iZXIgb2YgSElWLWV4cG9zZWQgYnJlYXN0ZmVlZGluZyBpbmZhbnRzIHdob3NlIG1vdGhlcnMgYXJlIHJlY2VpdmluZyBBUlQgYXQgMTIgbW9udGhzIChhbmQgMjQgbW9udGhzKikgcG9zdHBhcnR1bQogKiBOdW1lcmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgd2hvc2UgbW90aGVycyBhcmUgIkJyZWFzdGZlZWRpbmciIDEyIG1vbnRocyBhZnRlciAiRGVsaXZlcnkgZGF0ZSIgQU5EIG1vdGhlcnMgd2l0aCAiT24gQVJUIj1UcnVlIDEyIG1vbnRocyBhZnRlciAiRGVsaXZlcnkgZGF0ZSIgfCAgfCBBbHNvIHJlcG9ydGVkIGZvciAyNCBtb250aHMgYWZ0ZXIgIkRlbGl2ZXJ5IGRhdGUiCiAqIE51bWVyYXRvciBFeGNsdXNpb25zOiAKICoKICogRGVub21pbmF0b3I6IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGF0dGVuZGluZyBNTkNIIHNlcnZpY2VzIGZvciBhIDEyLW1vbnRoIHZpc2l0IChhbmQgMjQtbW9udGggdmlzaXQgb3IgZmlyc3QgdmlzaXQgYWZ0ZXIgdGhlIGVuZCBvZiBicmVhc3RmZWVkaW5nKQogKiBEZW5vbWluYXRvciBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuICJISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQiIEFORCBbKHdob3NlIG1vdGhlcnMgYXR0ZW5kIGEgMTItbW9udGggIk1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCIpIE9SIChmaXJzdCAiTWF0ZXJuYWwgYW5kIGNoaWxkIGhlYWx0aCBzZXJ2aWNlIHZpc2l0IiBhZnRlciAiRGVsaXZlcnkgZGF0ZSIgd2hlcmUgbW90aGVyIGlzIE5PVCAiQnJlYXN0ZmVlZGluZyIpXSB8ICB8IEFsc28gcmVwb3J0ZWQgZm9yIG1vdGhlcnMgYXR0ZW5kaW5nIDI0LW1vbnRoICJNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQiCiAqIERlbm9taW5hdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEaXNhZ2dyZWdhdGlvbnM6CiAqIOKAoiBBZ2UgKDwxNSwgMTXigJMxOSwgMjDigJMyNCwgMjUrIHllYXJzKSAKICogIOKAoiBUaW1pbmcgb2YgQVJUIGluaXRpYXRpb24gKGFscmVhZHkgb24gQVJUIGF0IGZpcnN0IEFOQyB2aXNpdCwgbmV3bHkgb24gQVJUIGR1cmluZyBwcmVnbmFuY3kgb3IgbGFib3VyIGFuZCBkZWxpdmVyeSkgCiAqICDigKLCoENpdGllcyBhbmQgb3RoZXIgYWRtaW5pc3RyYXRpdmUgcmVnaW9ucyBvZiBlcGlkZW1pb2xvZ2ljIGltcG9ydGFuY2UKICoKICogRGlzYWdncmVnYXRpb24gRWxlbWVudHM6IEFnZSB8IFRpbWluZyBvZiBBUlQgaW5pdGlhdGlvbiB8IEJyZWFzdGZlZWRpbmcgYXQgMjQgbW9udGhzCiAqCiAqIE51bWVyYXRvciBhbmQgRGVub21pbmF0b3IgRWxlbWVudHM6CiAqIEJyZWFzdGZlZWRpbmcgCiAqICBEZWxpdmVyeSBkYXRlIAogKiAgSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIAogKiAgTWF0ZXJuYWwgYW5kIGNoaWxkIGhlYWx0aCBzZXJ2aWNlIHZpc2l0IAogKiAgT24gQVJUCiAqCiAqIFJlZmVyZW5jZTogQ29uc29saWRhdGVkIGd1aWRlbGluZXMgb24gcGVyc29uLWNlbnRyZWQgSElWIHN0cmF0ZWdpYyBpbmZvcm1hdGlvbjogc3RyZW5ndGhlbmluZyByb3V0aW5lIGRhdGEgZm9yIGltcGFjdC4gR2VuZXZhOiBXb3JsZCBIZWFsdGggT3JnYW5pemF0aW9uOyAyMDIyCiAqIAogKiBEYXRhIENvbmNlcHRzOgogKiBISVYuQS5ERTE3OiBBZ2UgfCBDYWxjdWxhdGVkIGFnZSAobnVtYmVyIG9mIHllYXJzKSBvZiB0aGUgY2xpZW50IGJhc2VkIG9uIGRhdGUgb2YgYmlydGgKICogSElWLkIuREUzMjogQnJlYXN0ZmVlZGluZyB8IEluZmFudCBpcyBiZWluZyBicmVhc3RmZWQgYnkgbW90aGVyCiAqIEhJVi5ELkRFMzI6IEJyZWFzdGZlZWRpbmcgfCBDbGllbnQgaXMgZ2l2aW5nIGluZmFudCBicmVhc3QgbWlsawogKiBISVYuRC5ERTM4OiBPbiBBUlQgfCBDbGllbnQgaXMgY3VycmVudGx5IHRha2luZyBBUlQKICogSElWLkUuREU0MTogVGltaW5nIG9mIEFSVCBpbml0aWF0aW9uIHwgV2hlbiB0aGUgcHJlZ25hbnQgd29tYW4gb3IgbW90aGVyIGluaXRpYXRlZCBBUlQsIGZvciB3b21lbiBsaXZpbmcgd2l0aCBISVYuCiAqIEhJVi5FLkRFNDI6IEFscmVhZHkgb24gQVJUIGF0IGZpcnN0IGFudGVuYXRhbCBjYXJlIHZpc2l0IHwgVGhlIHByZWduYW50IHdvbWFuIHdhcyBhbHJlYWR5IG9uIGFudGlyZXRyb3ZpcmFsIHRoZXJhcHkgKEFSVCkgYXQgZmlyc3QgYW50ZW5hdGFsIGNhcmUgdmlzaXQKICogSElWLkUuREU0MzogTmV3bHkgb24gQVJUIGR1cmluZyBwcmVnbmFuY3kgfCBUaGUgcHJlZ25hbnQgd29tYW4gc3RhcnRlZCBBUlQgZHVyaW5nIGhlciBwcmVnbmFuY3kKICogSElWLkUuREU0NDogTmV3bHkgb24gQVJUIGR1cmluZyBsYWJvdXIgYW5kIGRlbGl2ZXJ5IHwgVGhlIHdvbWFuIHN0YXJ0ZWQgQVJUIGR1cmluZyBsYWJvdXIgYW5kIGRlbGl2ZXJ5CiAqIEhJVi5FLkRFNDY6IERlbGl2ZXJ5IGRhdGUgfCBEYXRlIG9uIHdoaWNoIHRoZSB3b21hbiBkZWxpdmVyZWQKICogSElWLkUuREUxMTI6IEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCB8IFdoZXRoZXIgdGhlIGluZmFudCBvciBjaGlsZCB3YXMgZGV0ZXJtaW5lZCB0byBoYXZlIGhhZCBISVYgZXhwb3N1cmUKICogSElWLkUuREUxNzM6IE1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCB8IE1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCBhdHRlbmRlZCBieSBhbiBISVYtZXhwb3NlZCBpbmZhbnQKICogSElWLkUuREUxNzQ6IDEyLW1vbnRoIHZpc2l0IHwgSElWLWV4cG9zZWQgaW5mYW50IGF0dGVuZGluZyBNQ0ggc2VydmljZXMgZm9yIGEgMTItbW9udGggdmlzaXQKICogSElWLkUuREUxNzU6IDI0LW1vbnRoIHZpc2l0IHwgSElWLWV4cG9zZWQgaW5mYW50cyBhdHRlbmRpbmcgTUNIIHNlcnZpY2VzIGZvciBhIDI0LW1vbnRoIHZpc2l0CiAqIEhJVi5FLkRFMTc2OiBGaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmcgfCBISVYtZXhwb3NlZCBpbmZhbnQgYXR0ZW5kaW5nIE1DSCBzZXJ2aWNlcyBmb3IgYSBmaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmcKICogSElWLkguREU0NzogT24gQVJUIHwgQ2xpZW50IGlzIGN1cnJlbnRseSB0YWtpbmcgQVJUIAogKiBISVYuU1JWLkRFMjA6IEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCB8IFdoZXRoZXIgdGhlIGluZmFudCBvciBjaGlsZCB3YXMgZGV0ZXJtaW5lZCB0byBoYXZlIGhhZCBISVYgZXhwb3N1cmUKICoKICogQWRkaXRpb25hbCBDb250ZXh0CiAqIC0gd2hhdCBpdCBtZWFzdXJlczogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgdGhlIHByb2dyYW1tZSdzIGFiaWxpdHkgdG8gcmVkdWNlIHRoZSByaXNrIG9mIHRyYW5zbWlzc2lvbiB2aWEgYnJlYXN0ZmVlZGluZyAoUHJvbmcgMyBvZiB0aGUgUE1UQ1Qgc3RyYXRlZ3kpLgogKiAtIHJhdGlvbmFsZTog4oCiwqBJbiBtYW55IGNvdW50cmllcyB0aGUgYXZlcmFnZSBicmVhc3RmZWVkaW5nIHBlcmlvZCBpcyAxOOKAkzI0IG1vbnRocy4gVGhlIGxvbmcgYnJlYXN0ZmVlZGluZyBwZXJpb2QgcmVwcmVzZW50cyBhbiBpbXBvcnRhbnQgcmlzayBwZXJpb2QgZm9yIEhJVi1leHBvc2VkIGluZmFudHMuIHwg4oCiwqBFbnN1cmluZyB0aGF0IEhJVi1wb3NpdGl2ZSBtb3RoZXJzIGFyZSByZXRhaW5lZCBvbiBBUlQsIGVzcGVjaWFsbHkgZHVyaW5nIHRoZSBicmVhc3RmZWVkaW5nIHBlcmlvZCwgaXMgY3JpdGljYWwgdG8gc3VzdGFpbmluZyB0aGUgaGVhbHRoIG9mIHRoZSBtb3RoZXIgYW5kIHByZXZlbnRpbmcgaW5mZWN0aW9uIG9mIGhlciBpbmZhbnQuCiAqIC0gbWV0aG9kOiBGb3IgdGhlIG51bWVyYXRvcjogUHJvZ3JhbW1lIHJlY29yZHMgKGZvciBleGFtcGxlLCBQTVRDVCByZWdpc3RlcnMsIEFSVCByZWdpc3RlcnMpLiB8ICB8IEZvciB0aGUgZGVub21pbmF0b3I6IFByb2dyYW1tZSByZWNvcmRzIChmb3IgZXhhbXBsZSwgTUNIIHNlcnZpY2UgcmVjb3JkcykKICogCiAqIFN1Z2dlc3RlZCBTY29yaW5nIE1ldGhvZDogcHJvcG9ydGlvbiB8IGh0dHA6Ly9obDcub3JnL2ZoaXIvdXMvY3FmbWVhc3VyZXMvU3RydWN0dXJlRGVmaW5pdGlvbi9wcm9wb3J0aW9uLW1lYXN1cmUtY3FmbQogKi8KCmxpYnJhcnkgSElWSU5ENDFMb2dpYwoKLy8gSW5jbHVkZWQgTGlicmFyaWVzCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIEhJVkNvbW1vbiB2ZXJzaW9uICcwLjAuMScgY2FsbGVkIEhJQwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db21tb24gY2FsbGVkIFdDb20KCi8vIEluZGljYXRvciBEZWZpbml0aW9uCnBhcmFtZXRlciAiTWVhc3VyZW1lbnQgUGVyaW9kIiBJbnRlcnZhbDxEYXRlPiBkZWZhdWx0IEludGVydmFsW0AyMDIzLTAxLTAxLCBAMjAyMy0wMS0zMF0KCmNvbnRleHQgUGF0aWVudAovKiBQb3B1bGF0aW9ucyAqLwoKLyoKICpJbml0aWFsIFBvcHVsYXRpb24KICovCgpkZWZpbmUgIkluaXRpYWwgUG9wdWxhdGlvbiI6CiAgdHJ1ZQoKLyoqCiAqIE51bWVyYXRvcgogKiAKICogRGVmaW5pdGlvbjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGJyZWFzdGZlZWRpbmcgaW5mYW50cyB3aG9zZSBtb3RoZXJzIGFyZSByZWNlaXZpbmcgQVJUIGF0IDEyIG1vbnRocyAoYW5kIDI0IG1vbnRocyopIHBvc3RwYXJ0dW0KICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgd2hvc2UgbW90aGVycyBhcmUgIkJyZWFzdGZlZWRpbmciIDEyIG1vbnRocyBhZnRlciAiRGVsaXZlcnkgZGF0ZSIgQU5EIG1vdGhlcnMgd2l0aCAiT24gQVJUIj1UcnVlIDEyIG1vbnRocyBhZnRlciAiRGVsaXZlcnkgZGF0ZSIgfCAgfCBBbHNvIHJlcG9ydGVkIGZvciAyNCBtb250aHMgYWZ0ZXIgIkRlbGl2ZXJ5IGRhdGUiCiAqLwoKZGVmaW5lICJOdW1lcmF0b3IiOgogIHRydWUKCgovKioKICogRGVub21pbmF0b3IKICoKICogRGVmaW5pdGlvbjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgYXR0ZW5kaW5nIE1OQ0ggc2VydmljZXMgZm9yIGEgMTItbW9udGggdmlzaXQgKGFuZCAyNC1tb250aCB2aXNpdCBvciBmaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmcpCiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gIkhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCIgQU5EIFsod2hvc2UgbW90aGVycyBhdHRlbmQgYSAxMi1tb250aCAiTWF0ZXJuYWwgYW5kIGNoaWxkIGhlYWx0aCBzZXJ2aWNlIHZpc2l0IikgT1IgKGZpcnN0ICJNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQiIGFmdGVyICJEZWxpdmVyeSBkYXRlIiB3aGVyZSBtb3RoZXIgaXMgTk9UICJCcmVhc3RmZWVkaW5nIildIHwgIHwgQWxzbyByZXBvcnRlZCBmb3IgbW90aGVycyBhdHRlbmRpbmcgMjQtbW9udGggIk1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCIKICovCgpkZWZpbmUgIkRlbm9taW5hdG9yIjoKICB0cnVlCiAgICAKCi8qIGVuZCBQb3B1bGF0aW9ucyAqLwoK"/>
</content>
<content>
<contentType value="application/elm+xml"/>
<data
value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICA8YTpzPi8qKgogKiBMaWJyYXJ5OiBISVYuSU5ELjQxIExvZ2ljCiAqIFJlZiBObzogVkVSLjUKICogU2hvcnQgTmFtZTogQVJUIGNvdmVyYWdlIGluIGJyZWFzdGZlZWRpbmcgbW90aGVycwogKgogKiBEZWZpbml0aW9uOiAlIG9mIEhJVi1leHBvc2VkIGJyZWFzdGZlZWRpbmcgaW5mYW50cyB3aG9zZSBtb3RoZXJzIGFyZSByZWNlaXZpbmcgQVJUIGF0IDEyIChhbmQgMjQgbW9udGhzKSBwb3N0cGFydHVtCiAqCiAqIE51bWVyYXRvcjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGJyZWFzdGZlZWRpbmcgaW5mYW50cyB3aG9zZSBtb3RoZXJzIGFyZSByZWNlaXZpbmcgQVJUIGF0IDEyIG1vbnRocyAoYW5kIDI0IG1vbnRocyopIHBvc3RwYXJ0dW0KICogTnVtZXJhdG9yIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gJnF1b3Q7SElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkJnF1b3Q7IEFORCB3aG9zZSBtb3RoZXJzIGFyZSAmcXVvdDtCcmVhc3RmZWVkaW5nJnF1b3Q7IDEyIG1vbnRocyBhZnRlciAmcXVvdDtEZWxpdmVyeSBkYXRlJnF1b3Q7IEFORCBtb3RoZXJzIHdpdGggJnF1b3Q7T24gQVJUJnF1b3Q7PVRydWUgMTIgbW9udGhzIGFmdGVyICZxdW90O0RlbGl2ZXJ5IGRhdGUmcXVvdDsgfCAgfCBBbHNvIHJlcG9ydGVkIGZvciAyNCBtb250aHMgYWZ0ZXIgJnF1b3Q7RGVsaXZlcnkgZGF0ZSZxdW90OwogKiBOdW1lcmF0b3IgRXhjbHVzaW9uczogCiAqCiAqIERlbm9taW5hdG9yOiBOdW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyBhdHRlbmRpbmcgTU5DSCBzZXJ2aWNlcyBmb3IgYSAxMi1tb250aCB2aXNpdCAoYW5kIDI0LW1vbnRoIHZpc2l0IG9yIGZpcnN0IHZpc2l0IGFmdGVyIHRoZSBlbmQgb2YgYnJlYXN0ZmVlZGluZykKICogRGVub21pbmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAmcXVvdDtISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQmcXVvdDsgQU5EIFsod2hvc2UgbW90aGVycyBhdHRlbmQgYSAxMi1tb250aCAmcXVvdDtNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQmcXVvdDspIE9SIChmaXJzdCAmcXVvdDtNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQmcXVvdDsgYWZ0ZXIgJnF1b3Q7RGVsaXZlcnkgZGF0ZSZxdW90OyB3aGVyZSBtb3RoZXIgaXMgTk9UICZxdW90O0JyZWFzdGZlZWRpbmcmcXVvdDspXSB8ICB8IEFsc28gcmVwb3J0ZWQgZm9yIG1vdGhlcnMgYXR0ZW5kaW5nIDI0LW1vbnRoICZxdW90O01hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCZxdW90OwogKiBEZW5vbWluYXRvciBFeGNsdXNpb25zOiAKICoKICogRGlzYWdncmVnYXRpb25zOgogKiDigKIgQWdlICgmbHQ7MTUsIDE14oCTMTksIDIw4oCTMjQsIDI1KyB5ZWFycykgCiAqICDigKIgVGltaW5nIG9mIEFSVCBpbml0aWF0aW9uIChhbHJlYWR5IG9uIEFSVCBhdCBmaXJzdCBBTkMgdmlzaXQsIG5ld2x5IG9uIEFSVCBkdXJpbmcgcHJlZ25hbmN5IG9yIGxhYm91ciBhbmQgZGVsaXZlcnkpIAogKiAg4oCiwqBDaXRpZXMgYW5kIG90aGVyIGFkbWluaXN0cmF0aXZlIHJlZ2lvbnMgb2YgZXBpZGVtaW9sb2dpYyBpbXBvcnRhbmNlCiAqCiAqIERpc2FnZ3JlZ2F0aW9uIEVsZW1lbnRzOiBBZ2UgfCBUaW1pbmcgb2YgQVJUIGluaXRpYXRpb24gfCBCcmVhc3RmZWVkaW5nIGF0IDI0IG1vbnRocwogKgogKiBOdW1lcmF0b3IgYW5kIERlbm9taW5hdG9yIEVsZW1lbnRzOgogKiBCcmVhc3RmZWVkaW5nIAogKiAgRGVsaXZlcnkgZGF0ZSAKICogIEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCAKICogIE1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCAKICogIE9uIEFSVAogKgogKiBSZWZlcmVuY2U6IENvbnNvbGlkYXRlZCBndWlkZWxpbmVzIG9uIHBlcnNvbi1jZW50cmVkIEhJViBzdHJhdGVnaWMgaW5mb3JtYXRpb246IHN0cmVuZ3RoZW5pbmcgcm91dGluZSBkYXRhIGZvciBpbXBhY3QuIEdlbmV2YTogV29ybGQgSGVhbHRoIE9yZ2FuaXphdGlvbjsgMjAyMgogKiAKICogRGF0YSBDb25jZXB0czoKICogSElWLkEuREUxNzogQWdlIHwgQ2FsY3VsYXRlZCBhZ2UgKG51bWJlciBvZiB5ZWFycykgb2YgdGhlIGNsaWVudCBiYXNlZCBvbiBkYXRlIG9mIGJpcnRoCiAqIEhJVi5CLkRFMzI6IEJyZWFzdGZlZWRpbmcgfCBJbmZhbnQgaXMgYmVpbmcgYnJlYXN0ZmVkIGJ5IG1vdGhlcgogKiBISVYuRC5ERTMyOiBCcmVhc3RmZWVkaW5nIHwgQ2xpZW50IGlzIGdpdmluZyBpbmZhbnQgYnJlYXN0IG1pbGsKICogSElWLkQuREUzODogT24gQVJUIHwgQ2xpZW50IGlzIGN1cnJlbnRseSB0YWtpbmcgQVJUCiAqIEhJVi5FLkRFNDE6IFRpbWluZyBvZiBBUlQgaW5pdGlhdGlvbiB8IFdoZW4gdGhlIHByZWduYW50IHdvbWFuIG9yIG1vdGhlciBpbml0aWF0ZWQgQVJULCBmb3Igd29tZW4gbGl2aW5nIHdpdGggSElWLgogKiBISVYuRS5ERTQyOiBBbHJlYWR5IG9uIEFSVCBhdCBmaXJzdCBhbnRlbmF0YWwgY2FyZSB2aXNpdCB8IFRoZSBwcmVnbmFudCB3b21hbiB3YXMgYWxyZWFkeSBvbiBhbnRpcmV0cm92aXJhbCB0aGVyYXB5IChBUlQpIGF0IGZpcnN0IGFudGVuYXRhbCBjYXJlIHZpc2l0CiAqIEhJVi5FLkRFNDM6IE5ld2x5IG9uIEFSVCBkdXJpbmcgcHJlZ25hbmN5IHwgVGhlIHByZWduYW50IHdvbWFuIHN0YXJ0ZWQgQVJUIGR1cmluZyBoZXIgcHJlZ25hbmN5CiAqIEhJVi5FLkRFNDQ6IE5ld2x5IG9uIEFSVCBkdXJpbmcgbGFib3VyIGFuZCBkZWxpdmVyeSB8IFRoZSB3b21hbiBzdGFydGVkIEFSVCBkdXJpbmcgbGFib3VyIGFuZCBkZWxpdmVyeQogKiBISVYuRS5ERTQ2OiBEZWxpdmVyeSBkYXRlIHwgRGF0ZSBvbiB3aGljaCB0aGUgd29tYW4gZGVsaXZlcmVkCiAqIEhJVi5FLkRFMTEyOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqIEhJVi5FLkRFMTczOiBNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQgfCBNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQgYXR0ZW5kZWQgYnkgYW4gSElWLWV4cG9zZWQgaW5mYW50CiAqIEhJVi5FLkRFMTc0OiAxMi1tb250aCB2aXNpdCB8IEhJVi1leHBvc2VkIGluZmFudCBhdHRlbmRpbmcgTUNIIHNlcnZpY2VzIGZvciBhIDEyLW1vbnRoIHZpc2l0CiAqIEhJVi5FLkRFMTc1OiAyNC1tb250aCB2aXNpdCB8IEhJVi1leHBvc2VkIGluZmFudHMgYXR0ZW5kaW5nIE1DSCBzZXJ2aWNlcyBmb3IgYSAyNC1tb250aCB2aXNpdAogKiBISVYuRS5ERTE3NjogRmlyc3QgdmlzaXQgYWZ0ZXIgdGhlIGVuZCBvZiBicmVhc3RmZWVkaW5nIHwgSElWLWV4cG9zZWQgaW5mYW50IGF0dGVuZGluZyBNQ0ggc2VydmljZXMgZm9yIGEgZmlyc3QgdmlzaXQgYWZ0ZXIgdGhlIGVuZCBvZiBicmVhc3RmZWVkaW5nCiAqIEhJVi5ILkRFNDc6IE9uIEFSVCB8IENsaWVudCBpcyBjdXJyZW50bHkgdGFraW5nIEFSVCAKICogSElWLlNSVi5ERTIwOiBISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQgfCBXaGV0aGVyIHRoZSBpbmZhbnQgb3IgY2hpbGQgd2FzIGRldGVybWluZWQgdG8gaGF2ZSBoYWQgSElWIGV4cG9zdXJlCiAqCiAqIEFkZGl0aW9uYWwgQ29udGV4dAogKiAtIHdoYXQgaXQgbWVhc3VyZXM6IFRoaXMgaW5kaWNhdG9yIG1lYXN1cmVzIHRoZSBwcm9ncmFtbWUncyBhYmlsaXR5IHRvIHJlZHVjZSB0aGUgcmlzayBvZiB0cmFuc21pc3Npb24gdmlhIGJyZWFzdGZlZWRpbmcgKFByb25nIDMgb2YgdGhlIFBNVENUIHN0cmF0ZWd5KS4KICogLSByYXRpb25hbGU6IOKAosKgSW4gbWFueSBjb3VudHJpZXMgdGhlIGF2ZXJhZ2UgYnJlYXN0ZmVlZGluZyBwZXJpb2QgaXMgMTjigJMyNCBtb250aHMuIFRoZSBsb25nIGJyZWFzdGZlZWRpbmcgcGVyaW9kIHJlcHJlc2VudHMgYW4gaW1wb3J0YW50IHJpc2sgcGVyaW9kIGZvciBISVYtZXhwb3NlZCBpbmZhbnRzLiB8IOKAosKgRW5zdXJpbmcgdGhhdCBISVYtcG9zaXRpdmUgbW90aGVycyBhcmUgcmV0YWluZWQgb24gQVJULCBlc3BlY2lhbGx5IGR1cmluZyB0aGUgYnJlYXN0ZmVlZGluZyBwZXJpb2QsIGlzIGNyaXRpY2FsIHRvIHN1c3RhaW5pbmcgdGhlIGhlYWx0aCBvZiB0aGUgbW90aGVyIGFuZCBwcmV2ZW50aW5nIGluZmVjdGlvbiBvZiBoZXIgaW5mYW50LgogKiAtIG1ldGhvZDogRm9yIHRoZSBudW1lcmF0b3I6IFByb2dyYW1tZSByZWNvcmRzIChmb3IgZXhhbXBsZSwgUE1UQ1QgcmVnaXN0ZXJzLCBBUlQgcmVnaXN0ZXJzKS4gfCAgfCBGb3IgdGhlIGRlbm9taW5hdG9yOiBQcm9ncmFtbWUgcmVjb3JkcyAoZm9yIGV4YW1wbGUsIE1DSCBzZXJ2aWNlIHJlY29yZHMpCiAqIAogKiBTdWdnZXN0ZWQgU2NvcmluZyBNZXRob2Q6IHByb3BvcnRpb24gfCBodHRwOi8vaGw3Lm9yZy9maGlyL3VzL2NxZm1lYXN1cmVzL1N0cnVjdHVyZURlZmluaXRpb24vcHJvcG9ydGlvbi1tZWFzdXJlLWNxZm0KICovCgpsaWJyYXJ5IEhJVklORDQxTG9naWM8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9IkhJVklORDQxTG9naWMiIHN5c3RlbT0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2Ii8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYXRvcj0iNjE6MS02MToyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMSI+CiAgICAgICAgICAgICAgIDxhOnM+Ly8gSW5jbHVkZWQgTGlicmFyaWVzCnVzaW5nIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC91c2luZ3M+CiAgIDxpbmNsdWRlcz4KICAgICAgPGRlZiBsb2NhbElkPSIyIiBsb2NhdG9yPSI2MzoxLTYzOjQ0IiBsb2NhbElkZW50aWZpZXI9IkhJQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2L0hJVkNvbW1vbiIgdmVyc2lvbj0iMC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkhJVkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMC4wLjEnIGNhbGxlZCBISUM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMyIgbG9jYXRvcj0iNjQ6MS02NDozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIzIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNCIgbG9jYXRvcj0iNjY6MS02NjoyOSIgbG9jYWxJZGVudGlmaWVyPSJXQ29tIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9oaXYvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9Db21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBXQ29tPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIxMCIgbG9jYXRvcj0iNjk6MS02OTo4OCIgbmFtZT0iTWVhc3VyZW1lbnQgUGVyaW9kIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTAiPgogICAgICAgICAgICAgICA8YTpzPi8vIEluZGljYXRvciBEZWZpbml0aW9uCnBhcmFtZXRlciAmcXVvdDtNZWFzdXJlbWVudCBQZXJpb2QmcXVvdDsgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iOSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+SW50ZXJ2YWwmbHQ7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RGF0ZTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4+PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBkZWZhdWx0IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUiPkludGVydmFsW0AyMDIzLTAxLTAxLCBAMjAyMy0wMS0zMF08L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxkZWZhdWx0IGxvY2FsSWQ9IjciIGxvY2F0b3I9IjY5OjU1LTY5Ojg4IiBsb3dDbG9zZWQ9InRydWUiIGhpZ2hDbG9zZWQ9InRydWUiIHhzaTp0eXBlPSJJbnRlcnZhbCI+CiAgICAgICAgICAgIDxsb3cgbG9jYWxJZD0iNSIgbG9jYXRvcj0iNjk6NjQtNjk6NzQiIHhzaTp0eXBlPSJEYXRlIj4KICAgICAgICAgICAgICAgPHllYXIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyMDIzIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8bW9udGggdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8ZGF5IHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9sb3c+CiAgICAgICAgICAgIDxoaWdoIGxvY2FsSWQ9IjYiIGxvY2F0b3I9IjY5Ojc3LTY5Ojg3IiB4c2k6dHlwZT0iRGF0ZSI+CiAgICAgICAgICAgICAgIDx5ZWFyIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMjAyMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPG1vbnRoIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPGRheSB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjMwIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L2hpZ2g+CiAgICAgICAgIDwvZGVmYXVsdD4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iOSIgbG9jYXRvcj0iNjk6MzItNjk6NDUiIHhzaTp0eXBlPSJJbnRlcnZhbFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICA8cG9pbnRUeXBlIGxvY2FsSWQ9IjgiIGxvY2F0b3I9IjY5OjQxLTY5OjQ0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgPC9wYXJhbWV0ZXJUeXBlU3BlY2lmaWVyPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYXRvcj0iNzE6MS03MToxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhdG9yPSI3MToxLTcxOjE1IiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI3MToxLTcxOjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMTIiIGxvY2F0b3I9Ijc4OjEtNzk6NiIgbmFtZT0iSW5pdGlhbCBQb3B1bGF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICA8YTpzIHI9IjExIj4vKiBQb3B1bGF0aW9ucyAqLwoKLyoKICpJbml0aWFsIFBvcHVsYXRpb24KICovCgpkZWZpbmUgJnF1b3Q7SW5pdGlhbCBQb3B1bGF0aW9uJnF1b3Q7OgogIHRydWU8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTEiIGxvY2F0b3I9Ijc5OjMtNzk6NiIgdmFsdWVUeXBlPSJ0OkJvb2xlYW4iIHZhbHVlPSJ0cnVlIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIxNCIgbG9jYXRvcj0iODg6MS04OTo2IiBuYW1lPSJOdW1lcmF0b3IiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIxNCI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMTMiPi8qKgogKiBOdW1lcmF0b3IKICogCiAqIERlZmluaXRpb246IE51bWJlciBvZiBISVYtZXhwb3NlZCBicmVhc3RmZWVkaW5nIGluZmFudHMgd2hvc2UgbW90aGVycyBhcmUgcmVjZWl2aW5nIEFSVCBhdCAxMiBtb250aHMgKGFuZCAyNCBtb250aHMqKSBwb3N0cGFydHVtCiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gJnF1b3Q7SElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkJnF1b3Q7IEFORCB3aG9zZSBtb3RoZXJzIGFyZSAmcXVvdDtCcmVhc3RmZWVkaW5nJnF1b3Q7IDEyIG1vbnRocyBhZnRlciAmcXVvdDtEZWxpdmVyeSBkYXRlJnF1b3Q7IEFORCBtb3RoZXJzIHdpdGggJnF1b3Q7T24gQVJUJnF1b3Q7PVRydWUgMTIgbW9udGhzIGFmdGVyICZxdW90O0RlbGl2ZXJ5IGRhdGUmcXVvdDsgfCAgfCBBbHNvIHJlcG9ydGVkIGZvciAyNCBtb250aHMgYWZ0ZXIgJnF1b3Q7RGVsaXZlcnkgZGF0ZSZxdW90OwogKi8KCmRlZmluZSAmcXVvdDtOdW1lcmF0b3ImcXVvdDs6CiAgdHJ1ZTwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxMyIgbG9jYXRvcj0iODk6My04OTo2IiB2YWx1ZVR5cGU9InQ6Qm9vbGVhbiIgdmFsdWU9InRydWUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjE2IiBsb2NhdG9yPSI5OToxLTEwMDo2IiBuYW1lPSJEZW5vbWluYXRvciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjE2Ij4KICAgICAgICAgICAgICAgPGE6cyByPSIxNSI+LyoqCiAqIERlbm9taW5hdG9yCiAqCiAqIERlZmluaXRpb246IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGF0dGVuZGluZyBNTkNIIHNlcnZpY2VzIGZvciBhIDEyLW1vbnRoIHZpc2l0IChhbmQgMjQtbW9udGggdmlzaXQgb3IgZmlyc3QgdmlzaXQgYWZ0ZXIgdGhlIGVuZCBvZiBicmVhc3RmZWVkaW5nKQogKiBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuICZxdW90O0hJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCZxdW90OyBBTkQgWyh3aG9zZSBtb3RoZXJzIGF0dGVuZCBhIDEyLW1vbnRoICZxdW90O01hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCZxdW90OykgT1IgKGZpcnN0ICZxdW90O01hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCZxdW90OyBhZnRlciAmcXVvdDtEZWxpdmVyeSBkYXRlJnF1b3Q7IHdoZXJlIG1vdGhlciBpcyBOT1QgJnF1b3Q7QnJlYXN0ZmVlZGluZyZxdW90OyldIHwgIHwgQWxzbyByZXBvcnRlZCBmb3IgbW90aGVycyBhdHRlbmRpbmcgMjQtbW9udGggJnF1b3Q7TWF0ZXJuYWwgYW5kIGNoaWxkIGhlYWx0aCBzZXJ2aWNlIHZpc2l0JnF1b3Q7CiAqLwoKZGVmaW5lICZxdW90O0Rlbm9taW5hdG9yJnF1b3Q7OgogIHRydWU8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTUiIGxvY2F0b3I9IjEwMDozLTEwMDo2IiB2YWx1ZVR5cGU9InQ6Qm9vbGVhbiIgdmFsdWU9InRydWUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"/>
</content>
<content>
<contentType value="application/elm+json"/>
<data
value="ewogICAibGlicmFyeSIgOiB7CiAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAidHJhbnNsYXRvck9wdGlvbnMiIDogIkVuYWJsZUFubm90YXRpb25zLEVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iLAogICAgICAgICAic2lnbmF0dXJlTGV2ZWwiIDogIk92ZXJsb2FkcyIsCiAgICAgICAgICJ0eXBlIiA6ICJDcWxUb0VsbUluZm8iCiAgICAgIH0sIHsKICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBMaWJyYXJ5OiBISVYuSU5ELjQxIExvZ2ljXG4gKiBSZWYgTm86IFZFUi41XG4gKiBTaG9ydCBOYW1lOiBBUlQgY292ZXJhZ2UgaW4gYnJlYXN0ZmVlZGluZyBtb3RoZXJzXG4gKlxuICogRGVmaW5pdGlvbjogJSBvZiBISVYtZXhwb3NlZCBicmVhc3RmZWVkaW5nIGluZmFudHMgd2hvc2UgbW90aGVycyBhcmUgcmVjZWl2aW5nIEFSVCBhdCAxMiAoYW5kIDI0IG1vbnRocykgcG9zdHBhcnR1bVxuICpcbiAqIE51bWVyYXRvcjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGJyZWFzdGZlZWRpbmcgaW5mYW50cyB3aG9zZSBtb3RoZXJzIGFyZSByZWNlaXZpbmcgQVJUIGF0IDEyIG1vbnRocyAoYW5kIDI0IG1vbnRocyopIHBvc3RwYXJ0dW1cbiAqIE51bWVyYXRvciBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuIFwiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkXCIgQU5EIHdob3NlIG1vdGhlcnMgYXJlIFwiQnJlYXN0ZmVlZGluZ1wiIDEyIG1vbnRocyBhZnRlciBcIkRlbGl2ZXJ5IGRhdGVcIiBBTkQgbW90aGVycyB3aXRoIFwiT24gQVJUXCI9VHJ1ZSAxMiBtb250aHMgYWZ0ZXIgXCJEZWxpdmVyeSBkYXRlXCIgfCAgfCBBbHNvIHJlcG9ydGVkIGZvciAyNCBtb250aHMgYWZ0ZXIgXCJEZWxpdmVyeSBkYXRlXCJcbiAqIE51bWVyYXRvciBFeGNsdXNpb25zOiBcbiAqXG4gKiBEZW5vbWluYXRvcjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgYXR0ZW5kaW5nIE1OQ0ggc2VydmljZXMgZm9yIGEgMTItbW9udGggdmlzaXQgKGFuZCAyNC1tb250aCB2aXNpdCBvciBmaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmcpXG4gKiBEZW5vbWluYXRvciBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuIFwiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkXCIgQU5EIFsod2hvc2UgbW90aGVycyBhdHRlbmQgYSAxMi1tb250aCBcIk1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdFwiKSBPUiAoZmlyc3QgXCJNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXRcIiBhZnRlciBcIkRlbGl2ZXJ5IGRhdGVcIiB3aGVyZSBtb3RoZXIgaXMgTk9UIFwiQnJlYXN0ZmVlZGluZ1wiKV0gfCAgfCBBbHNvIHJlcG9ydGVkIGZvciBtb3RoZXJzIGF0dGVuZGluZyAyNC1tb250aCBcIk1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdFwiXG4gKiBEZW5vbWluYXRvciBFeGNsdXNpb25zOiBcbiAqXG4gKiBEaXNhZ2dyZWdhdGlvbnM6XG4gKiDigKIgQWdlICg8MTUsIDE14oCTMTksIDIw4oCTMjQsIDI1KyB5ZWFycykgXG4gKiAg4oCiIFRpbWluZyBvZiBBUlQgaW5pdGlhdGlvbiAoYWxyZWFkeSBvbiBBUlQgYXQgZmlyc3QgQU5DIHZpc2l0LCBuZXdseSBvbiBBUlQgZHVyaW5nIHByZWduYW5jeSBvciBsYWJvdXIgYW5kIGRlbGl2ZXJ5KSBcbiAqICDigKLCoENpdGllcyBhbmQgb3RoZXIgYWRtaW5pc3RyYXRpdmUgcmVnaW9ucyBvZiBlcGlkZW1pb2xvZ2ljIGltcG9ydGFuY2VcbiAqXG4gKiBEaXNhZ2dyZWdhdGlvbiBFbGVtZW50czogQWdlIHwgVGltaW5nIG9mIEFSVCBpbml0aWF0aW9uIHwgQnJlYXN0ZmVlZGluZyBhdCAyNCBtb250aHNcbiAqXG4gKiBOdW1lcmF0b3IgYW5kIERlbm9taW5hdG9yIEVsZW1lbnRzOlxuICogQnJlYXN0ZmVlZGluZyBcbiAqICBEZWxpdmVyeSBkYXRlIFxuICogIEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCBcbiAqICBNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXQgXG4gKiAgT24gQVJUXG4gKlxuICogUmVmZXJlbmNlOiBDb25zb2xpZGF0ZWQgZ3VpZGVsaW5lcyBvbiBwZXJzb24tY2VudHJlZCBISVYgc3RyYXRlZ2ljIGluZm9ybWF0aW9uOiBzdHJlbmd0aGVuaW5nIHJvdXRpbmUgZGF0YSBmb3IgaW1wYWN0LiBHZW5ldmE6IFdvcmxkIEhlYWx0aCBPcmdhbml6YXRpb247IDIwMjJcbiAqIFxuICogRGF0YSBDb25jZXB0czpcbiAqIEhJVi5BLkRFMTc6IEFnZSB8IENhbGN1bGF0ZWQgYWdlIChudW1iZXIgb2YgeWVhcnMpIG9mIHRoZSBjbGllbnQgYmFzZWQgb24gZGF0ZSBvZiBiaXJ0aFxuICogSElWLkIuREUzMjogQnJlYXN0ZmVlZGluZyB8IEluZmFudCBpcyBiZWluZyBicmVhc3RmZWQgYnkgbW90aGVyXG4gKiBISVYuRC5ERTMyOiBCcmVhc3RmZWVkaW5nIHwgQ2xpZW50IGlzIGdpdmluZyBpbmZhbnQgYnJlYXN0IG1pbGtcbiAqIEhJVi5ELkRFMzg6IE9uIEFSVCB8IENsaWVudCBpcyBjdXJyZW50bHkgdGFraW5nIEFSVFxuICogSElWLkUuREU0MTogVGltaW5nIG9mIEFSVCBpbml0aWF0aW9uIHwgV2hlbiB0aGUgcHJlZ25hbnQgd29tYW4gb3IgbW90aGVyIGluaXRpYXRlZCBBUlQsIGZvciB3b21lbiBsaXZpbmcgd2l0aCBISVYuXG4gKiBISVYuRS5ERTQyOiBBbHJlYWR5IG9uIEFSVCBhdCBmaXJzdCBhbnRlbmF0YWwgY2FyZSB2aXNpdCB8IFRoZSBwcmVnbmFudCB3b21hbiB3YXMgYWxyZWFkeSBvbiBhbnRpcmV0cm92aXJhbCB0aGVyYXB5IChBUlQpIGF0IGZpcnN0IGFudGVuYXRhbCBjYXJlIHZpc2l0XG4gKiBISVYuRS5ERTQzOiBOZXdseSBvbiBBUlQgZHVyaW5nIHByZWduYW5jeSB8IFRoZSBwcmVnbmFudCB3b21hbiBzdGFydGVkIEFSVCBkdXJpbmcgaGVyIHByZWduYW5jeVxuICogSElWLkUuREU0NDogTmV3bHkgb24gQVJUIGR1cmluZyBsYWJvdXIgYW5kIGRlbGl2ZXJ5IHwgVGhlIHdvbWFuIHN0YXJ0ZWQgQVJUIGR1cmluZyBsYWJvdXIgYW5kIGRlbGl2ZXJ5XG4gKiBISVYuRS5ERTQ2OiBEZWxpdmVyeSBkYXRlIHwgRGF0ZSBvbiB3aGljaCB0aGUgd29tYW4gZGVsaXZlcmVkXG4gKiBISVYuRS5ERTExMjogSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIHwgV2hldGhlciB0aGUgaW5mYW50IG9yIGNoaWxkIHdhcyBkZXRlcm1pbmVkIHRvIGhhdmUgaGFkIEhJViBleHBvc3VyZVxuICogSElWLkUuREUxNzM6IE1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCB8IE1hdGVybmFsIGFuZCBjaGlsZCBoZWFsdGggc2VydmljZSB2aXNpdCBhdHRlbmRlZCBieSBhbiBISVYtZXhwb3NlZCBpbmZhbnRcbiAqIEhJVi5FLkRFMTc0OiAxMi1tb250aCB2aXNpdCB8IEhJVi1leHBvc2VkIGluZmFudCBhdHRlbmRpbmcgTUNIIHNlcnZpY2VzIGZvciBhIDEyLW1vbnRoIHZpc2l0XG4gKiBISVYuRS5ERTE3NTogMjQtbW9udGggdmlzaXQgfCBISVYtZXhwb3NlZCBpbmZhbnRzIGF0dGVuZGluZyBNQ0ggc2VydmljZXMgZm9yIGEgMjQtbW9udGggdmlzaXRcbiAqIEhJVi5FLkRFMTc2OiBGaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmcgfCBISVYtZXhwb3NlZCBpbmZhbnQgYXR0ZW5kaW5nIE1DSCBzZXJ2aWNlcyBmb3IgYSBmaXJzdCB2aXNpdCBhZnRlciB0aGUgZW5kIG9mIGJyZWFzdGZlZWRpbmdcbiAqIEhJVi5ILkRFNDc6IE9uIEFSVCB8IENsaWVudCBpcyBjdXJyZW50bHkgdGFraW5nIEFSVCBcbiAqIEhJVi5TUlYuREUyMDogSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIHwgV2hldGhlciB0aGUgaW5mYW50IG9yIGNoaWxkIHdhcyBkZXRlcm1pbmVkIHRvIGhhdmUgaGFkIEhJViBleHBvc3VyZVxuICpcbiAqIEFkZGl0aW9uYWwgQ29udGV4dFxuICogLSB3aGF0IGl0IG1lYXN1cmVzOiBUaGlzIGluZGljYXRvciBtZWFzdXJlcyB0aGUgcHJvZ3JhbW1lJ3MgYWJpbGl0eSB0byByZWR1Y2UgdGhlIHJpc2sgb2YgdHJhbnNtaXNzaW9uIHZpYSBicmVhc3RmZWVkaW5nIChQcm9uZyAzIG9mIHRoZSBQTVRDVCBzdHJhdGVneSkuXG4gKiAtIHJhdGlvbmFsZTog4oCiwqBJbiBtYW55IGNvdW50cmllcyB0aGUgYXZlcmFnZSBicmVhc3RmZWVkaW5nIHBlcmlvZCBpcyAxOOKAkzI0IG1vbnRocy4gVGhlIGxvbmcgYnJlYXN0ZmVlZGluZyBwZXJpb2QgcmVwcmVzZW50cyBhbiBpbXBvcnRhbnQgcmlzayBwZXJpb2QgZm9yIEhJVi1leHBvc2VkIGluZmFudHMuIHwg4oCiwqBFbnN1cmluZyB0aGF0IEhJVi1wb3NpdGl2ZSBtb3RoZXJzIGFyZSByZXRhaW5lZCBvbiBBUlQsIGVzcGVjaWFsbHkgZHVyaW5nIHRoZSBicmVhc3RmZWVkaW5nIHBlcmlvZCwgaXMgY3JpdGljYWwgdG8gc3VzdGFpbmluZyB0aGUgaGVhbHRoIG9mIHRoZSBtb3RoZXIgYW5kIHByZXZlbnRpbmcgaW5mZWN0aW9uIG9mIGhlciBpbmZhbnQuXG4gKiAtIG1ldGhvZDogRm9yIHRoZSBudW1lcmF0b3I6IFByb2dyYW1tZSByZWNvcmRzIChmb3IgZXhhbXBsZSwgUE1UQ1QgcmVnaXN0ZXJzLCBBUlQgcmVnaXN0ZXJzKS4gfCAgfCBGb3IgdGhlIGRlbm9taW5hdG9yOiBQcm9ncmFtbWUgcmVjb3JkcyAoZm9yIGV4YW1wbGUsIE1DSCBzZXJ2aWNlIHJlY29yZHMpXG4gKiBcbiAqIFN1Z2dlc3RlZCBTY29yaW5nIE1ldGhvZDogcHJvcG9ydGlvbiB8IGh0dHA6Ly9obDcub3JnL2ZoaXIvdXMvY3FmbWVhc3VyZXMvU3RydWN0dXJlRGVmaW5pdGlvbi9wcm9wb3J0aW9uLW1lYXN1cmUtY3FmbVxuICovXG5cbiIsImxpYnJhcnkgSElWSU5ENDFMb2dpYyIgXQogICAgICAgICAgICB9IF0KICAgICAgICAgfQogICAgICB9IF0sCiAgICAgICJpZGVudGlmaWVyIiA6IHsKICAgICAgICAgImlkIiA6ICJISVZJTkQ0MUxvZ2ljIiwKICAgICAgICAgInN5c3RlbSIgOiAiaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2IgogICAgICB9LAogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7CiAgICAgICAgICJpZCIgOiAidXJuOmhsNy1vcmc6ZWxtIiwKICAgICAgICAgInZlcnNpb24iIDogInIxIgogICAgICB9LAogICAgICAidXNpbmdzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiU3lzdGVtIiwKICAgICAgICAgICAgInVyaSIgOiAidXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIgogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjEtNjE6MjYiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSIiwKICAgICAgICAgICAgInVyaSIgOiAiaHR0cDovL2hsNy5vcmcvZmhpciIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICI0LjAuMSIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjEiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8vIEluY2x1ZGVkIExpYnJhcmllc1xuIiwidXNpbmcgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJGSElSIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAnNC4wLjEnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgImluY2x1ZGVzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MS02Mzo0NCIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkhJQyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vc21hcnQud2hvLmludC9oaXYvSElWQ29tbW9uIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjAuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMiIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkhJVkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIHZlcnNpb24gIiwiJzAuMC4xJyIsIiBjYWxsZWQgIiwiSElDIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIzIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjY0OjEtNjQ6MzUiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSSGVscGVycyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL0ZISVJIZWxwZXJzIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMyIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkZISVJIZWxwZXJzIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInNC4wLjEnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI0IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjY2OjEtNjY6MjkiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJXQ29tIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9zbWFydC53aG8uaW50L2hpdi9XSE9Db21tb24iLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiV0hPQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgY2FsbGVkICIsIldDb20iIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAicGFyYW1ldGVycyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OToxLTY5Ojg4IiwKICAgICAgICAgICAgIm5hbWUiIDogIk1lYXN1cmVtZW50IFBlcmlvZCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMTAiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8vIEluZGljYXRvciBEZWZpbml0aW9uXG4iLCJwYXJhbWV0ZXIgIiwiXCJNZWFzdXJlbWVudCBQZXJpb2RcIiIsIiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiOSIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiSW50ZXJ2YWw8IiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjgiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkRhdGUiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIj4iIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiBkZWZhdWx0ICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI3IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkludGVydmFsWyIsIkAyMDIzLTAxLTAxIiwiLCAiLCJAMjAyMy0wMS0zMCIsIl0iIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImRlZmF1bHQiIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNyIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OTo1NS02OTo4OCIsCiAgICAgICAgICAgICAgICJsb3dDbG9zZWQiIDogdHJ1ZSwKICAgICAgICAgICAgICAgImhpZ2hDbG9zZWQiIDogdHJ1ZSwKICAgICAgICAgICAgICAgInR5cGUiIDogIkludGVydmFsIiwKICAgICAgICAgICAgICAgImxvdyIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI1IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY5OjY0LTY5Ojc0IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkRhdGUiLAogICAgICAgICAgICAgICAgICAieWVhciIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAibW9udGgiIDogewogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgImRheSIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJoaWdoIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6NzctNjk6ODciLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRGF0ZSIsCiAgICAgICAgICAgICAgICAgICJ5ZWFyIiA6IHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIyMDIzIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICJtb250aCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAiZGF5IiA6IHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICIzMCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgInBhcmFtZXRlclR5cGVTcGVjaWZpZXIiIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiOSIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OTozMi02OTo0NSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJbnRlcnZhbFR5cGVTcGVjaWZpZXIiLAogICAgICAgICAgICAgICAicG9pbnRUeXBlIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjgiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6NDEtNjk6NDQiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EYXRlIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiY29udGV4dHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNzE6MS03MToxNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IgogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgInN0YXRlbWVudHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYXRvciIgOiAiNzE6MS03MToxNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTaW5nbGV0b25Gcm9tIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzE6MS03MToxNSIsCiAgICAgICAgICAgICAgICAgICJkYXRhVHlwZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9UGF0aWVudCIsCiAgICAgICAgICAgICAgICAgICJ0ZW1wbGF0ZUlkIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJSZXRyaWV2ZSIKICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjEyIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjEtNzk6NiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJbml0aWFsIFBvcHVsYXRpb24iLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjExIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8qIFBvcHVsYXRpb25zICovXG5cbi8qXG4gKkluaXRpYWwgUG9wdWxhdGlvblxuICovXG5cbiIsImRlZmluZSAiLCJcIkluaXRpYWwgUG9wdWxhdGlvblwiIiwiOlxuICAiLCJ0cnVlIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTEiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzk6My03OTo2IiwKICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1Cb29sZWFuIiwKICAgICAgICAgICAgICAgInZhbHVlIiA6ICJ0cnVlIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMTQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiODg6MS04OTo2IiwKICAgICAgICAgICAgIm5hbWUiIDogIk51bWVyYXRvciIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIxNCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBOdW1lcmF0b3JcbiAqIFxuICogRGVmaW5pdGlvbjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGJyZWFzdGZlZWRpbmcgaW5mYW50cyB3aG9zZSBtb3RoZXJzIGFyZSByZWNlaXZpbmcgQVJUIGF0IDEyIG1vbnRocyAoYW5kIDI0IG1vbnRocyopIHBvc3RwYXJ0dW1cbiAqIENhbGN1bGF0aW9uOiBDT1VOVCBvZiBpbmZhbnRzIHdobyBhcmUgYW4gXCJISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGRcIiBBTkQgd2hvc2UgbW90aGVycyBhcmUgXCJCcmVhc3RmZWVkaW5nXCIgMTIgbW9udGhzIGFmdGVyIFwiRGVsaXZlcnkgZGF0ZVwiIEFORCBtb3RoZXJzIHdpdGggXCJPbiBBUlRcIj1UcnVlIDEyIG1vbnRocyBhZnRlciBcIkRlbGl2ZXJ5IGRhdGVcIiB8ICB8IEFsc28gcmVwb3J0ZWQgZm9yIDI0IG1vbnRocyBhZnRlciBcIkRlbGl2ZXJ5IGRhdGVcIlxuICovXG5cbiIsImRlZmluZSAiLCJcIk51bWVyYXRvclwiIiwiOlxuICAiLCJ0cnVlIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODk6My04OTo2IiwKICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1Cb29sZWFuIiwKICAgICAgICAgICAgICAgInZhbHVlIiA6ICJ0cnVlIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMTYiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiOTk6MS0xMDA6NiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJEZW5vbWluYXRvciIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTUiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLyoqXG4gKiBEZW5vbWluYXRvclxuICpcbiAqIERlZmluaXRpb246IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGF0dGVuZGluZyBNTkNIIHNlcnZpY2VzIGZvciBhIDEyLW1vbnRoIHZpc2l0IChhbmQgMjQtbW9udGggdmlzaXQgb3IgZmlyc3QgdmlzaXQgYWZ0ZXIgdGhlIGVuZCBvZiBicmVhc3RmZWVkaW5nKVxuICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiBcIkhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZFwiIEFORCBbKHdob3NlIG1vdGhlcnMgYXR0ZW5kIGEgMTItbW9udGggXCJNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXRcIikgT1IgKGZpcnN0IFwiTWF0ZXJuYWwgYW5kIGNoaWxkIGhlYWx0aCBzZXJ2aWNlIHZpc2l0XCIgYWZ0ZXIgXCJEZWxpdmVyeSBkYXRlXCIgd2hlcmUgbW90aGVyIGlzIE5PVCBcIkJyZWFzdGZlZWRpbmdcIildIHwgIHwgQWxzbyByZXBvcnRlZCBmb3IgbW90aGVycyBhdHRlbmRpbmcgMjQtbW9udGggXCJNYXRlcm5hbCBhbmQgY2hpbGQgaGVhbHRoIHNlcnZpY2UgdmlzaXRcIlxuICovXG5cbiIsImRlZmluZSAiLCJcIkRlbm9taW5hdG9yXCIiLCI6XG4gICIsInRydWUiIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxNSIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDA6My0xMDA6NiIsCiAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9Qm9vbGVhbiIsCiAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAidHJ1ZSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICB9CiAgICAgICAgIH0gXQogICAgICB9CiAgIH0KfQ=="/>
</content>
</Library>