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

: HIV.IND.39 Logic - XML Representation

Draft as of 2024-11-07

Raw xml | Download


<Library xmlns="http://hl7.org/fhir">
  <id value="HIVIND39Logic"/>
  <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="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: Library HIVIND39Logic</b></p><a name="HIVIND39Logic"> </a><a name="hcHIVIND39Logic"> </a><a name="HIVIND39Logic-en-US"> </a><h2>Related Artifacts</h2><table class="grid"><tr><td>Depends On</td><td>Library HIC</td><td><code>http://smart.who.int/hiv/Library/HIVCommon|0.0.1</code></td></tr><tr><td>Depends On</td><td>Library WCom</td><td><a href="Library-WHOCommon.html">WHOCommon</a></td></tr></table><h2>Parameters</h2><table class="grid"><tr><td>Measurement Period</td><td>in</td><td>0</td><td>1</td><td>Period</td></tr><tr><td>Patient</td><td>out</td><td>0</td><td>1</td><td>Patient</td></tr><tr><td>Initial Population</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr><tr><td>Numerator</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr><tr><td>Denominator</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr></table><h2>Contents</h2><p><code>text/cql</code></p><pre><code class="language-sql">/**
 * Library: HIV.IND.39 Logic
 * Ref No: VER.3
 * Short Name: Infant ARV prophylaxis coverage
 *
 * Definition: % of HIV-exposed infants who initiated ARV prophylaxis
 *
 * Numerator: Number of HIV-exposed infants born within the past 12 months who were started on ARV prophylaxis at birth
 * Numerator Calculation: COUNT of infants who are an &quot;HIV-exposed infant or child&quot; AND &quot;Infant date of birth&quot; within reporting period AND &quot;Infant ART start date&quot; is on&quot;Infant date of birth&quot;
 * Numerator Exclusions: 
 *
 * Denominator: a) Programme-based/service delivery denominator: Number of HIV-positive women who delivered in a facility within the past 12 months. |  | B) Population-based denominator: Number of HIV-positive women who delivered within the past 12 months.
 * Denominator Calculation: Programme-based/service delivery denominator: | COUNT of women with &quot;HIV status&quot;='HIV-positive' AND &quot;Place of delivery&quot; is a 'Health facility' AND &quot;Delivery date&quot; within reporting period |  | Population-based denominator: | *Estimated number of HIV-positive women who delivered during the past 12 months
 * Denominator Exclusions: 
 *
 * Disaggregations:
 * • ARV drug regimen 
 *  • Cities and other administrative regions of epidemiologic importance
 *
 * Disaggregation Elements: Current ART regimen
 *
 * Numerator and Denominator Elements:
 * Delivery date 
 *  HIV status 
 *  HIV-exposed infant or child 
 *  Infant ART start date 
 *  Infant date of birth 
 *  Place of delivery
 *
 * Reference: Consolidated guidelines on person-centred HIV strategic information: strengthening routine data for impact. Geneva: World Health Organization; 2022
 * 
 * Data Concepts:
 * HIV.B.DE115: HIV status | HIV status reported after applying the national HIV testing algorithm. No single HIV test can provide an HIV-positive diagnosis.
 * HIV.B.DE116: HIV-positive | Client is HIV-positive
 * HIV.B.DE117: HIV-negative | Client is HIV-negative
 * HIV.B.DE118: Unknown | Client has unknown HIV status
 * HIV.D.DE75: Current ART regimen | The current ART regimen the client is taking
 * HIV.E.DE46: Delivery date | Date on which the woman delivered
 * HIV.E.DE67: Place of delivery | The type of place where the woman delivered
 * HIV.E.DE68: Health facility | The woman delivered at a health facility
 * HIV.E.DE69: Home | The woman delivered at home
 * HIV.E.DE70: Other | The woman delivered at another location that is not at home or at a health facility
 * 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.DE229: Infant ART start date | The date on which the infant was started or restarted on antiretroviral therapy (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 delivery of prevention services to HIV-exposed infants immediately after birth.
 * - rationale: • ARV prophylaxis for HIV-exposed infants is critical for reducing the risk of mother-to-child transmission in the immediate postpartum period – part of Prong 3 of the PMTCT strategy. | • In particular, coverage of HIV-exposed infants who are born in facilities should be very high. | • When using the programme-based/service delivery denominator, the indicator measures coverage among only HIV-exposed infants who are born in facilities, which is a direct measure of a programme's ability to meet standards of care.
 * - method: For the numerator: Programme records (for example, PMTCT registers) | a) For the programme-based/service delivery denominator: Programme records, labour and delivery registers | b) For the population-based denominator: Modelling-based estimates (for example, Spectrum AIM). |  | Note: The population-based denominator is a proxy measure for the number of infants born to HIV-infected women. |  | The recommended reporting period is 12 months.
 * 
 * Suggested Scoring Method: proportion | http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/proportion-measure-cqfm
 */

library HIVIND39Logic

// 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 &quot;Measurement Period&quot; Interval&lt;Date&gt; default Interval[@2023-01-01, @2023-01-30]

context Patient
/* Populations */

/*
 *Initial Population
 */

define &quot;Initial Population&quot;:
  true

/**
 * Numerator
 * 
 * Definition: Number of HIV-exposed infants born within the past 12 months who were started on ARV prophylaxis at birth
 * Calculation: COUNT of infants who are an &quot;HIV-exposed infant or child&quot; AND &quot;Infant date of birth&quot; within reporting period AND &quot;Infant ART start date&quot; is on&quot;Infant date of birth&quot;
 */

define &quot;Numerator&quot;:
  true


/**
 * Denominator
 *
 * Definition: a) Programme-based/service delivery denominator: Number of HIV-positive women who delivered in a facility within the past 12 months. |  | B) Population-based denominator: Number of HIV-positive women who delivered within the past 12 months.
 * Calculation: Programme-based/service delivery denominator: | COUNT of women with &quot;HIV status&quot;='HIV-positive' AND &quot;Place of delivery&quot; is a 'Health facility' AND &quot;Delivery date&quot; within reporting period |  | Population-based denominator: | *Estimated number of HIV-positive women who delivered during the past 12 months
 */

define &quot;Denominator&quot;:
  true
    

/* end Populations */

</code></pre><p><code>Content not shown - (</code><code>application/elm+xml</code>, size = 11Kb )</p></div>
  </text>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability">
    <valueCode value="computable"/>
  </extension>
  <url value="http://smart.who.int/hiv/Library/HIVIND39Logic"/>
  <version value="0.3.0"/>
  <name value="HIVIND39Logic"/>
  <title value="HIV.IND.39 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-11-07T21:07:17+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 who initiated ARV prophylaxis"/>
  <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="LyoqCiAqIExpYnJhcnk6IEhJVi5JTkQuMzkgTG9naWMKICogUmVmIE5vOiBWRVIuMwogKiBTaG9ydCBOYW1lOiBJbmZhbnQgQVJWIHByb3BoeWxheGlzIGNvdmVyYWdlCiAqCiAqIERlZmluaXRpb246ICUgb2YgSElWLWV4cG9zZWQgaW5mYW50cyB3aG8gaW5pdGlhdGVkIEFSViBwcm9waHlsYXhpcwogKgogKiBOdW1lcmF0b3I6IE51bWJlciBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIGJvcm4gd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aG8gd2VyZSBzdGFydGVkIG9uIEFSViBwcm9waHlsYXhpcyBhdCBiaXJ0aAogKiBOdW1lcmF0b3IgQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgIkluZmFudCBkYXRlIG9mIGJpcnRoIiB3aXRoaW4gcmVwb3J0aW5nIHBlcmlvZCBBTkQgIkluZmFudCBBUlQgc3RhcnQgZGF0ZSIgaXMgb24iSW5mYW50IGRhdGUgb2YgYmlydGgiCiAqIE51bWVyYXRvciBFeGNsdXNpb25zOiAKICoKICogRGVub21pbmF0b3I6IGEpIFByb2dyYW1tZS1iYXNlZC9zZXJ2aWNlIGRlbGl2ZXJ5IGRlbm9taW5hdG9yOiBOdW1iZXIgb2YgSElWLXBvc2l0aXZlIHdvbWVuIHdobyBkZWxpdmVyZWQgaW4gYSBmYWNpbGl0eSB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzLiB8ICB8IEIpIFBvcHVsYXRpb24tYmFzZWQgZGVub21pbmF0b3I6IE51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzLgogKiBEZW5vbWluYXRvciBDYWxjdWxhdGlvbjogUHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IHwgQ09VTlQgb2Ygd29tZW4gd2l0aCAiSElWIHN0YXR1cyI9J0hJVi1wb3NpdGl2ZScgQU5EICJQbGFjZSBvZiBkZWxpdmVyeSIgaXMgYSAnSGVhbHRoIGZhY2lsaXR5JyBBTkQgIkRlbGl2ZXJ5IGRhdGUiIHdpdGhpbiByZXBvcnRpbmcgcGVyaW9kIHwgIHwgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogfCAqRXN0aW1hdGVkIG51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCBkdXJpbmcgdGhlIHBhc3QgMTIgbW9udGhzCiAqIERlbm9taW5hdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEaXNhZ2dyZWdhdGlvbnM6CiAqIOKAosKgQVJWIGRydWcgcmVnaW1lbiAKICogIOKAosKgQ2l0aWVzIGFuZCBvdGhlciBhZG1pbmlzdHJhdGl2ZSByZWdpb25zIG9mIGVwaWRlbWlvbG9naWMgaW1wb3J0YW5jZQogKgogKiBEaXNhZ2dyZWdhdGlvbiBFbGVtZW50czogQ3VycmVudCBBUlQgcmVnaW1lbgogKgogKiBOdW1lcmF0b3IgYW5kIERlbm9taW5hdG9yIEVsZW1lbnRzOgogKiBEZWxpdmVyeSBkYXRlIAogKiAgSElWIHN0YXR1cyAKICogIEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCAKICogIEluZmFudCBBUlQgc3RhcnQgZGF0ZSAKICogIEluZmFudCBkYXRlIG9mIGJpcnRoIAogKiAgUGxhY2Ugb2YgZGVsaXZlcnkKICoKICogUmVmZXJlbmNlOiBDb25zb2xpZGF0ZWQgZ3VpZGVsaW5lcyBvbiBwZXJzb24tY2VudHJlZCBISVYgc3RyYXRlZ2ljIGluZm9ybWF0aW9uOiBzdHJlbmd0aGVuaW5nIHJvdXRpbmUgZGF0YSBmb3IgaW1wYWN0LiBHZW5ldmE6IFdvcmxkIEhlYWx0aCBPcmdhbml6YXRpb247IDIwMjIKICogCiAqIERhdGEgQ29uY2VwdHM6CiAqIEhJVi5CLkRFMTE1OiBISVYgc3RhdHVzIHwgSElWIHN0YXR1cyByZXBvcnRlZCBhZnRlciBhcHBseWluZyB0aGUgbmF0aW9uYWwgSElWIHRlc3RpbmcgYWxnb3JpdGhtLiBObyBzaW5nbGUgSElWIHRlc3QgY2FuIHByb3ZpZGUgYW4gSElWLXBvc2l0aXZlIGRpYWdub3Npcy4KICogSElWLkIuREUxMTY6IEhJVi1wb3NpdGl2ZSB8IENsaWVudCBpcyBISVYtcG9zaXRpdmUKICogSElWLkIuREUxMTc6IEhJVi1uZWdhdGl2ZSB8IENsaWVudCBpcyBISVYtbmVnYXRpdmUKICogSElWLkIuREUxMTg6IFVua25vd24gfCBDbGllbnQgaGFzIHVua25vd24gSElWIHN0YXR1cwogKiBISVYuRC5ERTc1OiBDdXJyZW50IEFSVCByZWdpbWVuIHwgVGhlIGN1cnJlbnQgQVJUIHJlZ2ltZW4gdGhlIGNsaWVudCBpcyB0YWtpbmcKICogSElWLkUuREU0NjogRGVsaXZlcnkgZGF0ZSB8IERhdGUgb24gd2hpY2ggdGhlIHdvbWFuIGRlbGl2ZXJlZAogKiBISVYuRS5ERTY3OiBQbGFjZSBvZiBkZWxpdmVyeSB8IFRoZSB0eXBlIG9mIHBsYWNlIHdoZXJlIHRoZSB3b21hbiBkZWxpdmVyZWQKICogSElWLkUuREU2ODogSGVhbHRoIGZhY2lsaXR5IHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBhIGhlYWx0aCBmYWNpbGl0eQogKiBISVYuRS5ERTY5OiBIb21lIHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBob21lCiAqIEhJVi5FLkRFNzA6IE90aGVyIHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBhbm90aGVyIGxvY2F0aW9uIHRoYXQgaXMgbm90IGF0IGhvbWUgb3IgYXQgYSBoZWFsdGggZmFjaWxpdHkKICogSElWLkUuREU4NzogSW5mYW50IGRhdGUgb2YgYmlydGggfCBUaGUgaW5mYW50J3MgZGF0ZSBvZiBiaXJ0aCAoRE9CKSBpZiBrbm93bgogKiBISVYuRS5ERTExMjogSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIHwgV2hldGhlciB0aGUgaW5mYW50IG9yIGNoaWxkIHdhcyBkZXRlcm1pbmVkIHRvIGhhdmUgaGFkIEhJViBleHBvc3VyZQogKiBISVYuRS5ERTIyOTogSW5mYW50IEFSVCBzdGFydCBkYXRlIHwgVGhlIGRhdGUgb24gd2hpY2ggdGhlIGluZmFudCB3YXMgc3RhcnRlZCBvciByZXN0YXJ0ZWQgb24gYW50aXJldHJvdmlyYWwgdGhlcmFweSAoQVJUKQogKiBISVYuU1JWLkRFMjA6IEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCB8IFdoZXRoZXIgdGhlIGluZmFudCBvciBjaGlsZCB3YXMgZGV0ZXJtaW5lZCB0byBoYXZlIGhhZCBISVYgZXhwb3N1cmUKICoKICogQWRkaXRpb25hbCBDb250ZXh0CiAqIC0gd2hhdCBpdCBtZWFzdXJlczogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgdGhlIGRlbGl2ZXJ5IG9mIHByZXZlbnRpb24gc2VydmljZXMgdG8gSElWLWV4cG9zZWQgaW5mYW50cyBpbW1lZGlhdGVseSBhZnRlciBiaXJ0aC4KICogLSByYXRpb25hbGU6IOKAoiBBUlYgcHJvcGh5bGF4aXMgZm9yIEhJVi1leHBvc2VkIGluZmFudHMgaXMgY3JpdGljYWwgZm9yIHJlZHVjaW5nIHRoZSByaXNrIG9mIG1vdGhlci10by1jaGlsZCB0cmFuc21pc3Npb24gaW4gdGhlIGltbWVkaWF0ZSBwb3N0cGFydHVtIHBlcmlvZCDigJMgcGFydCBvZiBQcm9uZyAzIG9mIHRoZSBQTVRDVCBzdHJhdGVneS4gfCDigKIgSW4gcGFydGljdWxhciwgY292ZXJhZ2Ugb2YgSElWLWV4cG9zZWQgaW5mYW50cyB3aG8gYXJlIGJvcm4gaW4gZmFjaWxpdGllcyBzaG91bGQgYmUgdmVyeSBoaWdoLiB8IOKAosKgV2hlbiB1c2luZyB0aGUgcHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3IsIHRoZSBpbmRpY2F0b3IgbWVhc3VyZXMgY292ZXJhZ2UgYW1vbmcgb25seSBISVYtZXhwb3NlZCBpbmZhbnRzIHdobyBhcmUgYm9ybiBpbiBmYWNpbGl0aWVzLCB3aGljaCBpcyBhIGRpcmVjdCBtZWFzdXJlIG9mIGEgcHJvZ3JhbW1lJ3MgYWJpbGl0eSB0byBtZWV0IHN0YW5kYXJkcyBvZiBjYXJlLgogKiAtIG1ldGhvZDogRm9yIHRoZSBudW1lcmF0b3I6IFByb2dyYW1tZSByZWNvcmRzIChmb3IgZXhhbXBsZSwgUE1UQ1QgcmVnaXN0ZXJzKSB8IGEpIEZvciB0aGUgcHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IFByb2dyYW1tZSByZWNvcmRzLCBsYWJvdXIgYW5kIGRlbGl2ZXJ5IHJlZ2lzdGVycyB8IGIpIEZvciB0aGUgcG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogTW9kZWxsaW5nLWJhc2VkIGVzdGltYXRlcyAoZm9yIGV4YW1wbGUsIFNwZWN0cnVtIEFJTSkuIHwgIHwgTm90ZTogVGhlIHBvcHVsYXRpb24tYmFzZWQgZGVub21pbmF0b3IgaXMgYSBwcm94eSBtZWFzdXJlIGZvciB0aGUgbnVtYmVyIG9mIGluZmFudHMgYm9ybiB0byBISVYtaW5mZWN0ZWQgd29tZW4uIHwgIHwgVGhlIHJlY29tbWVuZGVkIHJlcG9ydGluZyBwZXJpb2QgaXMgMTIgbW9udGhzLgogKiAKICogU3VnZ2VzdGVkIFNjb3JpbmcgTWV0aG9kOiBwcm9wb3J0aW9uIHwgaHR0cDovL2hsNy5vcmcvZmhpci91cy9jcWZtZWFzdXJlcy9TdHJ1Y3R1cmVEZWZpbml0aW9uL3Byb3BvcnRpb24tbWVhc3VyZS1jcWZtCiAqLwoKbGlicmFyeSBISVZJTkQzOUxvZ2ljCgovLyBJbmNsdWRlZCBMaWJyYXJpZXMKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgSElWQ29tbW9uIHZlcnNpb24gJzAuMC4xJyBjYWxsZWQgSElDCmluY2x1ZGUgRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0NvbQoKLy8gSW5kaWNhdG9yIERlZmluaXRpb24KcGFyYW1ldGVyICJNZWFzdXJlbWVudCBQZXJpb2QiIEludGVydmFsPERhdGU+IGRlZmF1bHQgSW50ZXJ2YWxbQDIwMjMtMDEtMDEsIEAyMDIzLTAxLTMwXQoKY29udGV4dCBQYXRpZW50Ci8qIFBvcHVsYXRpb25zICovCgovKgogKkluaXRpYWwgUG9wdWxhdGlvbgogKi8KCmRlZmluZSAiSW5pdGlhbCBQb3B1bGF0aW9uIjoKICB0cnVlCgovKioKICogTnVtZXJhdG9yCiAqIAogKiBEZWZpbml0aW9uOiBOdW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2hvIHdlcmUgc3RhcnRlZCBvbiBBUlYgcHJvcGh5bGF4aXMgYXQgYmlydGgKICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAiSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIiBBTkQgIkluZmFudCBkYXRlIG9mIGJpcnRoIiB3aXRoaW4gcmVwb3J0aW5nIHBlcmlvZCBBTkQgIkluZmFudCBBUlQgc3RhcnQgZGF0ZSIgaXMgb24iSW5mYW50IGRhdGUgb2YgYmlydGgiCiAqLwoKZGVmaW5lICJOdW1lcmF0b3IiOgogIHRydWUKCgovKioKICogRGVub21pbmF0b3IKICoKICogRGVmaW5pdGlvbjogYSkgUHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IE51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCBpbiBhIGZhY2lsaXR5IHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMuIHwgIHwgQikgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogTnVtYmVyIG9mIEhJVi1wb3NpdGl2ZSB3b21lbiB3aG8gZGVsaXZlcmVkIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMuCiAqIENhbGN1bGF0aW9uOiBQcm9ncmFtbWUtYmFzZWQvc2VydmljZSBkZWxpdmVyeSBkZW5vbWluYXRvcjogfCBDT1VOVCBvZiB3b21lbiB3aXRoICJISVYgc3RhdHVzIj0nSElWLXBvc2l0aXZlJyBBTkQgIlBsYWNlIG9mIGRlbGl2ZXJ5IiBpcyBhICdIZWFsdGggZmFjaWxpdHknIEFORCAiRGVsaXZlcnkgZGF0ZSIgd2l0aGluIHJlcG9ydGluZyBwZXJpb2QgfCAgfCBQb3B1bGF0aW9uLWJhc2VkIGRlbm9taW5hdG9yOiB8ICpFc3RpbWF0ZWQgbnVtYmVyIG9mIEhJVi1wb3NpdGl2ZSB3b21lbiB3aG8gZGVsaXZlcmVkIGR1cmluZyB0aGUgcGFzdCAxMiBtb250aHMKICovCgpkZWZpbmUgIkRlbm9taW5hdG9yIjoKICB0cnVlCiAgICAKCi8qIGVuZCBQb3B1bGF0aW9ucyAqLwoK"/>
  </content>
  <content>
    <contentType value="application/elm+xml"/>
    <data
          value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iTm9uZSIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1JbmZvIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IlRoZSBmdW5jdGlvbiBGSElSSGVscGVycy5Ub0ludGVydmFsIGhhcyBtdWx0aXBsZSBvdmVybG9hZHMgYW5kIGR1ZSB0byB0aGUgU2lnbmF0dXJlTGV2ZWwgc2V0dGluZyAoTm9uZSksIHRoZSBvdmVybG9hZCBzaWduYXR1cmUgaXMgbm90IGJlaW5nIGluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIFRoaXMgbWF5IHJlc3VsdCBpbiBhbWJpZ3VvdXMgZnVuY3Rpb24gcmVzb2x1dGlvbiBhdCBydW50aW1lLCBjb25zaWRlciBzZXR0aW5nIHRoZSBTaWduYXR1cmVMZXZlbCB0byBPdmVybG9hZHMgb3IgQWxsIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRwdXQgaW5jbHVkZXMgc3VmZmljaWVudCBpbmZvcm1hdGlvbiB0byBzdXBwb3J0IGNvcnJlY3Qgb3ZlcmxvYWQgc2VsZWN0aW9uIGF0IHJ1bnRpbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IlRoZSBmdW5jdGlvbiBGSElSSGVscGVycy5Ub0ludGVydmFsIGhhcyBtdWx0aXBsZSBvdmVybG9hZHMgYW5kIGR1ZSB0byB0aGUgU2lnbmF0dXJlTGV2ZWwgc2V0dGluZyAoTm9uZSksIHRoZSBvdmVybG9hZCBzaWduYXR1cmUgaXMgbm90IGJlaW5nIGluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIFRoaXMgbWF5IHJlc3VsdCBpbiBhbWJpZ3VvdXMgZnVuY3Rpb24gcmVzb2x1dGlvbiBhdCBydW50aW1lLCBjb25zaWRlciBzZXR0aW5nIHRoZSBTaWduYXR1cmVMZXZlbCB0byBPdmVybG9hZHMgb3IgQWxsIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRwdXQgaW5jbHVkZXMgc3VmZmljaWVudCBpbmZvcm1hdGlvbiB0byBzdXBwb3J0IGNvcnJlY3Qgb3ZlcmxvYWQgc2VsZWN0aW9uIGF0IHJ1bnRpbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICA8YTpzIHI9IjE2Ij4KICAgICAgICAgPGE6cz4vKioKICogTGlicmFyeTogSElWLklORC4zOSBMb2dpYwogKiBSZWYgTm86IFZFUi4zCiAqIFNob3J0IE5hbWU6IEluZmFudCBBUlYgcHJvcGh5bGF4aXMgY292ZXJhZ2UKICoKICogRGVmaW5pdGlvbjogJSBvZiBISVYtZXhwb3NlZCBpbmZhbnRzIHdobyBpbml0aWF0ZWQgQVJWIHByb3BoeWxheGlzCiAqCiAqIE51bWVyYXRvcjogTnVtYmVyIG9mIEhJVi1leHBvc2VkIGluZmFudHMgYm9ybiB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdobyB3ZXJlIHN0YXJ0ZWQgb24gQVJWIHByb3BoeWxheGlzIGF0IGJpcnRoCiAqIE51bWVyYXRvciBDYWxjdWxhdGlvbjogQ09VTlQgb2YgaW5mYW50cyB3aG8gYXJlIGFuICZxdW90O0hJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCZxdW90OyBBTkQgJnF1b3Q7SW5mYW50IGRhdGUgb2YgYmlydGgmcXVvdDsgd2l0aGluIHJlcG9ydGluZyBwZXJpb2QgQU5EICZxdW90O0luZmFudCBBUlQgc3RhcnQgZGF0ZSZxdW90OyBpcyBvbiZxdW90O0luZmFudCBkYXRlIG9mIGJpcnRoJnF1b3Q7CiAqIE51bWVyYXRvciBFeGNsdXNpb25zOiAKICoKICogRGVub21pbmF0b3I6IGEpIFByb2dyYW1tZS1iYXNlZC9zZXJ2aWNlIGRlbGl2ZXJ5IGRlbm9taW5hdG9yOiBOdW1iZXIgb2YgSElWLXBvc2l0aXZlIHdvbWVuIHdobyBkZWxpdmVyZWQgaW4gYSBmYWNpbGl0eSB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzLiB8ICB8IEIpIFBvcHVsYXRpb24tYmFzZWQgZGVub21pbmF0b3I6IE51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzLgogKiBEZW5vbWluYXRvciBDYWxjdWxhdGlvbjogUHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IHwgQ09VTlQgb2Ygd29tZW4gd2l0aCAmcXVvdDtISVYgc3RhdHVzJnF1b3Q7PSdISVYtcG9zaXRpdmUnIEFORCAmcXVvdDtQbGFjZSBvZiBkZWxpdmVyeSZxdW90OyBpcyBhICdIZWFsdGggZmFjaWxpdHknIEFORCAmcXVvdDtEZWxpdmVyeSBkYXRlJnF1b3Q7IHdpdGhpbiByZXBvcnRpbmcgcGVyaW9kIHwgIHwgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogfCAqRXN0aW1hdGVkIG51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCBkdXJpbmcgdGhlIHBhc3QgMTIgbW9udGhzCiAqIERlbm9taW5hdG9yIEV4Y2x1c2lvbnM6IAogKgogKiBEaXNhZ2dyZWdhdGlvbnM6CiAqIOKAosKgQVJWIGRydWcgcmVnaW1lbiAKICogIOKAosKgQ2l0aWVzIGFuZCBvdGhlciBhZG1pbmlzdHJhdGl2ZSByZWdpb25zIG9mIGVwaWRlbWlvbG9naWMgaW1wb3J0YW5jZQogKgogKiBEaXNhZ2dyZWdhdGlvbiBFbGVtZW50czogQ3VycmVudCBBUlQgcmVnaW1lbgogKgogKiBOdW1lcmF0b3IgYW5kIERlbm9taW5hdG9yIEVsZW1lbnRzOgogKiBEZWxpdmVyeSBkYXRlIAogKiAgSElWIHN0YXR1cyAKICogIEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCAKICogIEluZmFudCBBUlQgc3RhcnQgZGF0ZSAKICogIEluZmFudCBkYXRlIG9mIGJpcnRoIAogKiAgUGxhY2Ugb2YgZGVsaXZlcnkKICoKICogUmVmZXJlbmNlOiBDb25zb2xpZGF0ZWQgZ3VpZGVsaW5lcyBvbiBwZXJzb24tY2VudHJlZCBISVYgc3RyYXRlZ2ljIGluZm9ybWF0aW9uOiBzdHJlbmd0aGVuaW5nIHJvdXRpbmUgZGF0YSBmb3IgaW1wYWN0LiBHZW5ldmE6IFdvcmxkIEhlYWx0aCBPcmdhbml6YXRpb247IDIwMjIKICogCiAqIERhdGEgQ29uY2VwdHM6CiAqIEhJVi5CLkRFMTE1OiBISVYgc3RhdHVzIHwgSElWIHN0YXR1cyByZXBvcnRlZCBhZnRlciBhcHBseWluZyB0aGUgbmF0aW9uYWwgSElWIHRlc3RpbmcgYWxnb3JpdGhtLiBObyBzaW5nbGUgSElWIHRlc3QgY2FuIHByb3ZpZGUgYW4gSElWLXBvc2l0aXZlIGRpYWdub3Npcy4KICogSElWLkIuREUxMTY6IEhJVi1wb3NpdGl2ZSB8IENsaWVudCBpcyBISVYtcG9zaXRpdmUKICogSElWLkIuREUxMTc6IEhJVi1uZWdhdGl2ZSB8IENsaWVudCBpcyBISVYtbmVnYXRpdmUKICogSElWLkIuREUxMTg6IFVua25vd24gfCBDbGllbnQgaGFzIHVua25vd24gSElWIHN0YXR1cwogKiBISVYuRC5ERTc1OiBDdXJyZW50IEFSVCByZWdpbWVuIHwgVGhlIGN1cnJlbnQgQVJUIHJlZ2ltZW4gdGhlIGNsaWVudCBpcyB0YWtpbmcKICogSElWLkUuREU0NjogRGVsaXZlcnkgZGF0ZSB8IERhdGUgb24gd2hpY2ggdGhlIHdvbWFuIGRlbGl2ZXJlZAogKiBISVYuRS5ERTY3OiBQbGFjZSBvZiBkZWxpdmVyeSB8IFRoZSB0eXBlIG9mIHBsYWNlIHdoZXJlIHRoZSB3b21hbiBkZWxpdmVyZWQKICogSElWLkUuREU2ODogSGVhbHRoIGZhY2lsaXR5IHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBhIGhlYWx0aCBmYWNpbGl0eQogKiBISVYuRS5ERTY5OiBIb21lIHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBob21lCiAqIEhJVi5FLkRFNzA6IE90aGVyIHwgVGhlIHdvbWFuIGRlbGl2ZXJlZCBhdCBhbm90aGVyIGxvY2F0aW9uIHRoYXQgaXMgbm90IGF0IGhvbWUgb3IgYXQgYSBoZWFsdGggZmFjaWxpdHkKICogSElWLkUuREU4NzogSW5mYW50IGRhdGUgb2YgYmlydGggfCBUaGUgaW5mYW50J3MgZGF0ZSBvZiBiaXJ0aCAoRE9CKSBpZiBrbm93bgogKiBISVYuRS5ERTExMjogSElWLWV4cG9zZWQgaW5mYW50IG9yIGNoaWxkIHwgV2hldGhlciB0aGUgaW5mYW50IG9yIGNoaWxkIHdhcyBkZXRlcm1pbmVkIHRvIGhhdmUgaGFkIEhJViBleHBvc3VyZQogKiBISVYuRS5ERTIyOTogSW5mYW50IEFSVCBzdGFydCBkYXRlIHwgVGhlIGRhdGUgb24gd2hpY2ggdGhlIGluZmFudCB3YXMgc3RhcnRlZCBvciByZXN0YXJ0ZWQgb24gYW50aXJldHJvdmlyYWwgdGhlcmFweSAoQVJUKQogKiBISVYuU1JWLkRFMjA6IEhJVi1leHBvc2VkIGluZmFudCBvciBjaGlsZCB8IFdoZXRoZXIgdGhlIGluZmFudCBvciBjaGlsZCB3YXMgZGV0ZXJtaW5lZCB0byBoYXZlIGhhZCBISVYgZXhwb3N1cmUKICoKICogQWRkaXRpb25hbCBDb250ZXh0CiAqIC0gd2hhdCBpdCBtZWFzdXJlczogVGhpcyBpbmRpY2F0b3IgbWVhc3VyZXMgdGhlIGRlbGl2ZXJ5IG9mIHByZXZlbnRpb24gc2VydmljZXMgdG8gSElWLWV4cG9zZWQgaW5mYW50cyBpbW1lZGlhdGVseSBhZnRlciBiaXJ0aC4KICogLSByYXRpb25hbGU6IOKAoiBBUlYgcHJvcGh5bGF4aXMgZm9yIEhJVi1leHBvc2VkIGluZmFudHMgaXMgY3JpdGljYWwgZm9yIHJlZHVjaW5nIHRoZSByaXNrIG9mIG1vdGhlci10by1jaGlsZCB0cmFuc21pc3Npb24gaW4gdGhlIGltbWVkaWF0ZSBwb3N0cGFydHVtIHBlcmlvZCDigJMgcGFydCBvZiBQcm9uZyAzIG9mIHRoZSBQTVRDVCBzdHJhdGVneS4gfCDigKIgSW4gcGFydGljdWxhciwgY292ZXJhZ2Ugb2YgSElWLWV4cG9zZWQgaW5mYW50cyB3aG8gYXJlIGJvcm4gaW4gZmFjaWxpdGllcyBzaG91bGQgYmUgdmVyeSBoaWdoLiB8IOKAosKgV2hlbiB1c2luZyB0aGUgcHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3IsIHRoZSBpbmRpY2F0b3IgbWVhc3VyZXMgY292ZXJhZ2UgYW1vbmcgb25seSBISVYtZXhwb3NlZCBpbmZhbnRzIHdobyBhcmUgYm9ybiBpbiBmYWNpbGl0aWVzLCB3aGljaCBpcyBhIGRpcmVjdCBtZWFzdXJlIG9mIGEgcHJvZ3JhbW1lJ3MgYWJpbGl0eSB0byBtZWV0IHN0YW5kYXJkcyBvZiBjYXJlLgogKiAtIG1ldGhvZDogRm9yIHRoZSBudW1lcmF0b3I6IFByb2dyYW1tZSByZWNvcmRzIChmb3IgZXhhbXBsZSwgUE1UQ1QgcmVnaXN0ZXJzKSB8IGEpIEZvciB0aGUgcHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IFByb2dyYW1tZSByZWNvcmRzLCBsYWJvdXIgYW5kIGRlbGl2ZXJ5IHJlZ2lzdGVycyB8IGIpIEZvciB0aGUgcG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogTW9kZWxsaW5nLWJhc2VkIGVzdGltYXRlcyAoZm9yIGV4YW1wbGUsIFNwZWN0cnVtIEFJTSkuIHwgIHwgTm90ZTogVGhlIHBvcHVsYXRpb24tYmFzZWQgZGVub21pbmF0b3IgaXMgYSBwcm94eSBtZWFzdXJlIGZvciB0aGUgbnVtYmVyIG9mIGluZmFudHMgYm9ybiB0byBISVYtaW5mZWN0ZWQgd29tZW4uIHwgIHwgVGhlIHJlY29tbWVuZGVkIHJlcG9ydGluZyBwZXJpb2QgaXMgMTIgbW9udGhzLgogKiAKICogU3VnZ2VzdGVkIFNjb3JpbmcgTWV0aG9kOiBwcm9wb3J0aW9uIHwgaHR0cDovL2hsNy5vcmcvZmhpci91cy9jcWZtZWFzdXJlcy9TdHJ1Y3R1cmVEZWZpbml0aW9uL3Byb3BvcnRpb24tbWVhc3VyZS1jcWZtCiAqLwoKbGlicmFyeSBISVZJTkQzOUxvZ2ljPC9hOnM+CiAgICAgIDwvYTpzPgogICA8L2Fubm90YXRpb24+CiAgIDxpZGVudGlmaWVyIGlkPSJISVZJTkQzOUxvZ2ljIiBzeXN0ZW09Imh0dHA6Ly9zbWFydC53aG8uaW50L2hpdiIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2F0b3I9IjU5OjEtNTk6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjEiPgogICAgICAgICAgICAgICA8YTpzPi8vIEluY2x1ZGVkIExpYnJhcmllcwp1c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMiIgbG9jYXRvcj0iNjE6MS02MTo0NCIgbG9jYWxJZGVudGlmaWVyPSJISUMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2hpdi9ISVZDb21tb24iIHZlcnNpb249IjAuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5ISVZDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzAuMC4xJyBjYWxsZWQgSElDPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMiIGxvY2F0b3I9IjYyOjEtNjI6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMyI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSSGVscGVyczwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQiIGxvY2F0b3I9IjY0OjEtNjQ6MjkiIGxvY2FsSWRlbnRpZmllcj0iV0NvbSIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaGl2L1dIT0NvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjQiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0NvbTwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPHBhcmFtZXRlcnM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMTAiIGxvY2F0b3I9IjY3OjEtNjc6ODgiIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjEwIj4KICAgICAgICAgICAgICAgPGE6cz4vLyBJbmRpY2F0b3IgRGVmaW5pdGlvbgpwYXJhbWV0ZXIgJnF1b3Q7TWVhc3VyZW1lbnQgUGVyaW9kJnF1b3Q7IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjkiPgogICAgICAgICAgICAgICAgICA8YTpzPkludGVydmFsJmx0OzwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkRhdGU8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+PjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gZGVmYXVsdCA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI3Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1Ij5JbnRlcnZhbFtAMjAyMy0wMS0wMSwgQDIwMjMtMDEtMzBdPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZGVmYXVsdCBsb2NhbElkPSI3IiBsb2NhdG9yPSI2Nzo1NS02Nzo4OCIgbG93Q2xvc2VkPSJ0cnVlIiBoaWdoQ2xvc2VkPSJ0cnVlIiB4c2k6dHlwZT0iSW50ZXJ2YWwiPgogICAgICAgICAgICA8bG93IGxvY2FsSWQ9IjUiIGxvY2F0b3I9IjY3OjY0LTY3Ojc0IiB4c2k6dHlwZT0iRGF0ZSI+CiAgICAgICAgICAgICAgIDx5ZWFyIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMjAyMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPG1vbnRoIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPGRheSB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvbG93PgogICAgICAgICAgICA8aGlnaCBsb2NhbElkPSI2IiBsb2NhdG9yPSI2Nzo3Ny02Nzo4NyIgeHNpOnR5cGU9IkRhdGUiPgogICAgICAgICAgICAgICA8eWVhciB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjIwMjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDxtb250aCB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjEiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDxkYXkgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIzMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9oaWdoPgogICAgICAgICA8L2RlZmF1bHQ+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjkiIGxvY2F0b3I9IjY3OjMyLTY3OjQ1IiB4c2k6dHlwZT0iSW50ZXJ2YWxUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgPHBvaW50VHlwZSBsb2NhbElkPSI4IiBsb2NhdG9yPSI2Nzo0MS02Nzo0NCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgIDwvcGFyYW1ldGVyVHlwZVNwZWNpZmllcj4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2F0b3I9IjY5OjEtNjk6MTUiIG5hbWU9IlBhdGllbnQiLz4KICAgPC9jb250ZXh0cz4KICAgPHN0YXRlbWVudHM+CiAgICAgIDxkZWYgbG9jYXRvcj0iNjk6MS02OToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjk6MS02OToxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEyIiBsb2NhdG9yPSI3NjoxLTc3OjYiIG5hbWU9IkluaXRpYWwgUG9wdWxhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjEyIj4KICAgICAgICAgICAgICAgPGE6cyByPSIxMSI+LyogUG9wdWxhdGlvbnMgKi8KCi8qCiAqSW5pdGlhbCBQb3B1bGF0aW9uCiAqLwoKZGVmaW5lICZxdW90O0luaXRpYWwgUG9wdWxhdGlvbiZxdW90OzoKICB0cnVlPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjExIiBsb2NhdG9yPSI3NzozLTc3OjYiIHZhbHVlVHlwZT0idDpCb29sZWFuIiB2YWx1ZT0idHJ1ZSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMTQiIGxvY2F0b3I9Ijg2OjEtODc6NiIgbmFtZT0iTnVtZXJhdG9yIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTQiPgogICAgICAgICAgICAgICA8YTpzIHI9IjEzIj4vKioKICogTnVtZXJhdG9yCiAqIAogKiBEZWZpbml0aW9uOiBOdW1iZXIgb2YgSElWLWV4cG9zZWQgaW5mYW50cyBib3JuIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2hvIHdlcmUgc3RhcnRlZCBvbiBBUlYgcHJvcGh5bGF4aXMgYXQgYmlydGgKICogQ2FsY3VsYXRpb246IENPVU5UIG9mIGluZmFudHMgd2hvIGFyZSBhbiAmcXVvdDtISVYtZXhwb3NlZCBpbmZhbnQgb3IgY2hpbGQmcXVvdDsgQU5EICZxdW90O0luZmFudCBkYXRlIG9mIGJpcnRoJnF1b3Q7IHdpdGhpbiByZXBvcnRpbmcgcGVyaW9kIEFORCAmcXVvdDtJbmZhbnQgQVJUIHN0YXJ0IGRhdGUmcXVvdDsgaXMgb24mcXVvdDtJbmZhbnQgZGF0ZSBvZiBiaXJ0aCZxdW90OwogKi8KCmRlZmluZSAmcXVvdDtOdW1lcmF0b3ImcXVvdDs6CiAgdHJ1ZTwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxMyIgbG9jYXRvcj0iODc6My04Nzo2IiB2YWx1ZVR5cGU9InQ6Qm9vbGVhbiIgdmFsdWU9InRydWUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjE2IiBsb2NhdG9yPSI5NzoxLTk4OjYiIG5hbWU9IkRlbm9taW5hdG9yIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICAgICAgICA8YTpzIHI9IjE1Ij4vKioKICogRGVub21pbmF0b3IKICoKICogRGVmaW5pdGlvbjogYSkgUHJvZ3JhbW1lLWJhc2VkL3NlcnZpY2UgZGVsaXZlcnkgZGVub21pbmF0b3I6IE51bWJlciBvZiBISVYtcG9zaXRpdmUgd29tZW4gd2hvIGRlbGl2ZXJlZCBpbiBhIGZhY2lsaXR5IHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMuIHwgIHwgQikgUG9wdWxhdGlvbi1iYXNlZCBkZW5vbWluYXRvcjogTnVtYmVyIG9mIEhJVi1wb3NpdGl2ZSB3b21lbiB3aG8gZGVsaXZlcmVkIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMuCiAqIENhbGN1bGF0aW9uOiBQcm9ncmFtbWUtYmFzZWQvc2VydmljZSBkZWxpdmVyeSBkZW5vbWluYXRvcjogfCBDT1VOVCBvZiB3b21lbiB3aXRoICZxdW90O0hJViBzdGF0dXMmcXVvdDs9J0hJVi1wb3NpdGl2ZScgQU5EICZxdW90O1BsYWNlIG9mIGRlbGl2ZXJ5JnF1b3Q7IGlzIGEgJ0hlYWx0aCBmYWNpbGl0eScgQU5EICZxdW90O0RlbGl2ZXJ5IGRhdGUmcXVvdDsgd2l0aGluIHJlcG9ydGluZyBwZXJpb2QgfCAgfCBQb3B1bGF0aW9uLWJhc2VkIGRlbm9taW5hdG9yOiB8ICpFc3RpbWF0ZWQgbnVtYmVyIG9mIEhJVi1wb3NpdGl2ZSB3b21lbiB3aG8gZGVsaXZlcmVkIGR1cmluZyB0aGUgcGFzdCAxMiBtb250aHMKICovCgpkZWZpbmUgJnF1b3Q7RGVub21pbmF0b3ImcXVvdDs6CiAgdHJ1ZTwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxNSIgbG9jYXRvcj0iOTg6My05ODo2IiB2YWx1ZVR5cGU9InQ6Qm9vbGVhbiIgdmFsdWU9InRydWUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"/>
  </content>
</Library>