eCQM QICore Content Implementation Guide
2025.0.0 - CI Build
eCQM QICore Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2025.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/ecqm-content-qicore-2025/ and changes regularly. See the Directory of published versions
Active as of 2025-04-15 |
<Library xmlns="http://hl7.org/fhir">
<id value="CMS349FHIRHIVScreening"/>
<meta>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-computablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-executablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/elm-json-library"/>
<profile
value="http://hl7.org/fhir/uv/cql/StructureDefinition/elm-xml-library"/>
</meta>
<language value="en"/>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<table class="grid dict">
<tr>
<th scope="row"><b>Title: </b></th>
<td style="padding-left: 4px;">CMS349FHIRHIVScreening</td>
</tr>
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">CMS349FHIRHIVScreening</td>
</tr>
<tr>
<th scope="row"><b>Version: </b></th>
<td style="padding-left: 4px;">0.3.000</td>
</tr>
<tr>
<th scope="row"><b>Url: </b></th>
<td style="padding-left: 4px;">https://madie.cms.gov/Library/CMS349FHIRHIVScreening</td>
</tr>
<tr>
<th scope="row">
<b>
official
</b>
</th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<span>CMS349FHIRHIVScreening</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Type: </b></th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<b>system: </b> <span>http://terminology.hl7.org/CodeSystem/library-type</span>
</p>
<p style="margin-bottom: 5px;">
<b>code: </b> <span>logic-library</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Date: </b></th>
<td style="padding-left: 4px;">2025-04-15T18:46:00+00:00</td>
</tr>
<tr>
<th scope="row"><b>Publisher: </b></th>
<td style="padding-left: 4px;">Centers for Disease Control and Prevention (CDC)</td>
</tr>
<tr>
<th scope="row"><b>Description: </b></th>
<td style="padding-left: 4px;">CMS349FHIRHIVScreening</td>
</tr>
<tr>
<th scope="row"><b>Related Artifacts: </b></th>
<td style="padding-left: 4px;">
<p><b>Dependencies</b></p>
<ul>
<li>https://madie.cms.gov/Library/SupplementalDataElements|5.1.000</li>
<li>https://madie.cms.gov/Library/FHIRHelpers|4.4.000</li>
<li>https://madie.cms.gov/Library/QICoreCommon|4.0.000</li>
<li>http://loinc.org</li>
<li>http://terminology.hl7.org/CodeSystem/condition-ver-status</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1056.50</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001</li>
<li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003</li>
</ul>
</td>
</tr>
<tr>
<th scope="row"><b>Data Requirements:</b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<tr><th><b>Type</b></th><th><b>Profile</b></th><th><b>MS</b></th><th><b>Code Filter</b></th></tr>
<tr>
<th>Patient</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient</th>
<th>;;;</th>
<th>
</th>
</tr>
<tr>
<th>Observation</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab</th>
<th>;;;;;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>code</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1056.50</span>
</span>
</th>
</tr>
<tr>
<th>Observation</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab</th>
<th>;;;;;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>code</span>
</span>
<br/>
<p style="margin-bottom: 5px;">
<b>system: </b> <span>http://loinc.org</span>
</p>
<p style="margin-bottom: 5px;">
<b>code: </b> <span>75622-1</span>
</p>
<p style="margin-bottom: 5px;">
<b>display: </b> <span>HIV 1 and 2 tests - Meaningful Use set</span>
</p>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022</span>
</span>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023</span>
</span>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024</span>
</span>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025</span>
</span>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001</span>
</span>
</th>
</tr>
<tr>
<th>Coverage</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage</th>
<th>;;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>type</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591</span>
</span>
</th>
</tr>
<tr>
<th>Condition</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-problems-health-concerns</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>code</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003</span>
</span>
</th>
</tr>
<tr>
<th>Condition</th>
<th>http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis</th>
<th>;</th>
<th>
<b>code filter: </b>
<br/>
<span style="padding-left: 4px;">
<b>path: </b><span>code</span>
</span>
<br/>
<span style="padding-left: 4px;">
<b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003</span>
</span>
</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 CMS349FHIRHIVScreening version '0.3.000'
using QICore version '6.0.0'
include FHIRHelpers version '4.4.000' called FHIRHelpers
include SupplementalDataElements version '5.1.000' called SDE
include CQMCommon version '4.0.000' called CQMCommon
include QICoreCommon version '4.0.000' called QICoreCommon
codesystem "LOINC": 'http://loinc.org'
codesystem "ActCode": 'http://terminology.hl7.org/CodeSystem/v3-ActCode'
codesystem "ConditionClinicalStatusCodes": 'http://terminology.hl7.org/CodeSystem/condition-clinical'
codesystem "ConditionVerificationStatus": 'http://terminology.hl7.org/CodeSystem/condition-ver-status'
codesystem "SNOMEDCT": 'http://snomed.info/sct'
valueset "HIV": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003'
valueset "Human Immunodeficiency Virus (HIV) Laboratory Test Codes (Ab and Ag)": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1056.50'
valueset "Office Visit": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001'
valueset "Preventive Care Services - Established Office Visit, 18 and Up": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025'
valueset "Preventive Care Services, Initial Office Visit, 0 to 17": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022'
valueset "Preventive Care Services-Initial Office Visit, 18 and Up": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023'
valueset "Preventive Care, Established Office Visit, 0 to 17": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024'
code "Birth date": '21112-8' from "LOINC" display 'Birth date'
code "HIV 1 and 2 tests - Meaningful Use set": '75622-1' from "LOINC" display 'HIV 1 and 2 tests - Meaningful Use set'
code "AMB": 'AMB' from "ActCode" display 'Ambulatory'
code "active": 'active' from "ConditionClinicalStatusCodes"
code "refuted": 'refuted' from "ConditionVerificationStatus"
code "Dead (finding)": '419099009' from "SNOMEDCT" display 'Dead (finding)'
parameter "Measurement Period" Interval<DateTime>
context Patient
define "Initial Population":
AgeInYearsAt(date from start of "Measurement Period") in Interval[15, 65]
and exists "Qualifying Encounters"
define "Denominator":
"Initial Population"
define "Numerator":
( "Has HIV Test Performed" )
define "Denominator Exclusions":
exists ( ( [ConditionProblemsHealthConcerns: "HIV"]
union [ConditionEncounterDiagnosis: "HIV"] ) HIVDiagnosis
where HIVDiagnosis.prevalenceInterval ( ) starts before day of start of "Measurement Period"
and HIVDiagnosis.verificationStatus !~ "refuted"
)
define "Denominator Exceptions":
"Patient Expired"
define "Qualifying Encounters":
( ["Encounter": type in "Preventive Care Services, Initial Office Visit, 0 to 17"]
union ["Encounter": type in "Preventive Care Services-Initial Office Visit, 18 and Up"]
union ["Encounter": type in "Preventive Care, Established Office Visit, 0 to 17"]
union ["Encounter": type in "Preventive Care Services - Established Office Visit, 18 and Up"]
union ["Encounter": type in "Office Visit"] ) Encounter
where Encounter.period during day of "Measurement Period"
and Encounter.status = 'finished'
define "Patient Expired":
Patient.deceased on or before end of "Measurement Period"
define "Has HIV Test Performed":
exists ( ["LaboratoryResultObservation": "Human Immunodeficiency Virus (HIV) Laboratory Test Codes (Ab and Ag)"]
union ["LaboratoryResultObservation": "HIV 1 and 2 tests - Meaningful Use set"] ) HIVTest
where HIVTest.value is not null
and AgeInYearsAt(date from start of HIVTest.effective.toInterval()) in Interval[15, 65]
and HIVTest.effective.toInterval ( ) starts before end of "Measurement Period"
and ( HIVTest.status = 'final'
or HIVTest.status = 'amended'
or HIVTest.status = 'corrected'
)
define "SDE Ethnicity":
SDE."SDE Ethnicity"
define "SDE Payer":
SDE."SDE Payer"
define "SDE Race":
SDE."SDE Race"
define "SDE Sex":
SDE."SDE Sex"</code></pre></td></tr>
</table>
</td>
</tr>
</table>
</div>
</text>
<contained>
<Parameters>
<id value="options"/>
<parameter>
<name value="translatorVersion"/>
<valueString value="3.25.0"/>
</parameter>
<parameter>
<name value="option"/>
<valueString value="EnableAnnotations"/>
</parameter>
<parameter>
<name value="option"/>
<valueString value="EnableLocators"/>
</parameter>
<parameter>
<name value="option"/>
<valueString value="DisableListDemotion"/>
</parameter>
<parameter>
<name value="option"/>
<valueString value="DisableListPromotion"/>
</parameter>
<parameter>
<name value="format"/>
<valueString value="JSON"/>
</parameter>
<parameter>
<name value="format"/>
<valueString value="XML"/>
</parameter>
<parameter>
<name value="analyzeDataRequirements"/>
<valueBoolean value="false"/>
</parameter>
<parameter>
<name value="collapseDataRequirements"/>
<valueBoolean value="false"/>
</parameter>
<parameter>
<name value="compatibilityLevel"/>
<valueString value="1.5"/>
</parameter>
<parameter>
<name value="enableCqlOnly"/>
<valueBoolean value="false"/>
</parameter>
<parameter>
<name value="errorLevel"/>
<valueString value="Info"/>
</parameter>
<parameter>
<name value="signatureLevel"/>
<valueString value="Overloads"/>
</parameter>
<parameter>
<name value="validateUnits"/>
<valueBoolean value="true"/>
</parameter>
<parameter>
<name value="verifyOnly"/>
<valueBoolean value="false"/>
</parameter>
</Parameters>
</contained>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://loinc.org"/>
<code value="21112-8"/>
<display value="Birth date"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://loinc.org"/>
<code value="75622-1"/>
<display value="HIV 1 and 2 tests - Meaningful Use set"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://terminology.hl7.org/CodeSystem/v3-ActCode"/>
<code value="AMB"/>
<display value="AMB"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-clinical"/>
<code value="active"/>
<display value="active"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
<code value="refuted"/>
<display value="refuted"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://snomed.info/sct"/>
<code value="419099009"/>
<display value="Dead (finding)"/>
</valueCoding>
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/cqf-cqlOptions">
<valueReference>
<reference value="#options"/>
</valueReference>
</extension>
<url value="https://madie.cms.gov/Library/CMS349FHIRHIVScreening"/>
<identifier>
<use value="official"/>
<system value="https://madie.cms.gov/login"/>
<value value="CMS349FHIRHIVScreening"/>
</identifier>
<version value="0.3.000"/>
<name value="CMS349FHIRHIVScreening"/>
<title value="CMS349FHIRHIVScreening"/>
<status value="active"/>
<experimental value="false"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2025-04-15T18:46:00+00:00"/>
<publisher value="Centers for Disease Control and Prevention (CDC)"/>
<description value="CMS349FHIRHIVScreening"/>
<content>
<contentType value="text/cql"/>
<data
value="bGlicmFyeSBDTVMzNDlGSElSSElWU2NyZWVuaW5nIHZlcnNpb24gJzAuMy4wMDAnDQoNCnVzaW5nIFFJQ29yZSB2ZXJzaW9uICc2LjAuMCcNCg0KaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjQuMDAwJyBjYWxsZWQgRkhJUkhlbHBlcnMNCmluY2x1ZGUgU3VwcGxlbWVudGFsRGF0YUVsZW1lbnRzIHZlcnNpb24gJzUuMS4wMDAnIGNhbGxlZCBTREUNCmluY2x1ZGUgQ1FNQ29tbW9uIHZlcnNpb24gJzQuMC4wMDAnIGNhbGxlZCBDUU1Db21tb24NCmluY2x1ZGUgUUlDb3JlQ29tbW9uIHZlcnNpb24gJzQuMC4wMDAnIGNhbGxlZCBRSUNvcmVDb21tb24NCg0KY29kZXN5c3RlbSAiTE9JTkMiOiAnaHR0cDovL2xvaW5jLm9yZycNCmNvZGVzeXN0ZW0gIkFjdENvZGUiOiAnaHR0cDovL3Rlcm1pbm9sb2d5LmhsNy5vcmcvQ29kZVN5c3RlbS92My1BY3RDb2RlJw0KY29kZXN5c3RlbSAiQ29uZGl0aW9uQ2xpbmljYWxTdGF0dXNDb2RlcyI6ICdodHRwOi8vdGVybWlub2xvZ3kuaGw3Lm9yZy9Db2RlU3lzdGVtL2NvbmRpdGlvbi1jbGluaWNhbCcNCmNvZGVzeXN0ZW0gIkNvbmRpdGlvblZlcmlmaWNhdGlvblN0YXR1cyI6ICdodHRwOi8vdGVybWlub2xvZ3kuaGw3Lm9yZy9Db2RlU3lzdGVtL2NvbmRpdGlvbi12ZXItc3RhdHVzJw0KY29kZXN5c3RlbSAiU05PTUVEQ1QiOiAnaHR0cDovL3Nub21lZC5pbmZvL3NjdCcNCg0KdmFsdWVzZXQgIkhJViI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMjAuMTIuMTAwMycNCnZhbHVlc2V0ICJIdW1hbiBJbW11bm9kZWZpY2llbmN5IFZpcnVzIChISVYpIExhYm9yYXRvcnkgVGVzdCBDb2RlcyAoQWIgYW5kIEFnKSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEwNTYuNTAnDQp2YWx1ZXNldCAiT2ZmaWNlIFZpc2l0IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDAxJw0KdmFsdWVzZXQgIlByZXZlbnRpdmUgQ2FyZSBTZXJ2aWNlcyAtIEVzdGFibGlzaGVkIE9mZmljZSBWaXNpdCwgMTggYW5kIFVwIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDI1Jw0KdmFsdWVzZXQgIlByZXZlbnRpdmUgQ2FyZSBTZXJ2aWNlcywgSW5pdGlhbCBPZmZpY2UgVmlzaXQsIDAgdG8gMTciOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwMjInDQp2YWx1ZXNldCAiUHJldmVudGl2ZSBDYXJlIFNlcnZpY2VzLUluaXRpYWwgT2ZmaWNlIFZpc2l0LCAxOCBhbmQgVXAiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwMjMnDQp2YWx1ZXNldCAiUHJldmVudGl2ZSBDYXJlLCBFc3RhYmxpc2hlZCBPZmZpY2UgVmlzaXQsIDAgdG8gMTciOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwMjQnDQoNCmNvZGUgIkJpcnRoIGRhdGUiOiAnMjExMTItOCcgZnJvbSAiTE9JTkMiIGRpc3BsYXkgJ0JpcnRoIGRhdGUnDQpjb2RlICJISVYgMSBhbmQgMiB0ZXN0cyAtIE1lYW5pbmdmdWwgVXNlIHNldCI6ICc3NTYyMi0xJyBmcm9tICJMT0lOQyIgZGlzcGxheSAnSElWIDEgYW5kIDIgdGVzdHMgLSBNZWFuaW5nZnVsIFVzZSBzZXQnDQpjb2RlICJBTUIiOiAnQU1CJyBmcm9tICJBY3RDb2RlIiBkaXNwbGF5ICdBbWJ1bGF0b3J5Jw0KY29kZSAiYWN0aXZlIjogJ2FjdGl2ZScgZnJvbSAiQ29uZGl0aW9uQ2xpbmljYWxTdGF0dXNDb2RlcyINCmNvZGUgInJlZnV0ZWQiOiAncmVmdXRlZCcgZnJvbSAiQ29uZGl0aW9uVmVyaWZpY2F0aW9uU3RhdHVzIg0KY29kZSAiRGVhZCAoZmluZGluZykiOiAnNDE5MDk5MDA5JyBmcm9tICJTTk9NRURDVCIgZGlzcGxheSAnRGVhZCAoZmluZGluZyknDQoNCnBhcmFtZXRlciAiTWVhc3VyZW1lbnQgUGVyaW9kIiBJbnRlcnZhbDxEYXRlVGltZT4NCg0KY29udGV4dCBQYXRpZW50DQoNCmRlZmluZSAiSW5pdGlhbCBQb3B1bGF0aW9uIjoNCiAgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBzdGFydCBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIikgaW4gSW50ZXJ2YWxbMTUsIDY1XQ0KICAgIGFuZCBleGlzdHMgIlF1YWxpZnlpbmcgRW5jb3VudGVycyINCg0KZGVmaW5lICJEZW5vbWluYXRvciI6DQogICJJbml0aWFsIFBvcHVsYXRpb24iDQoNCmRlZmluZSAiTnVtZXJhdG9yIjoNCiAgKCAiSGFzIEhJViBUZXN0IFBlcmZvcm1lZCIgKQ0KDQpkZWZpbmUgIkRlbm9taW5hdG9yIEV4Y2x1c2lvbnMiOg0KICBleGlzdHMgKCAoIFtDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zOiAiSElWIl0NCiAgICAgIHVuaW9uIFtDb25kaXRpb25FbmNvdW50ZXJEaWFnbm9zaXM6ICJISVYiXSApIEhJVkRpYWdub3Npcw0KICAgICAgd2hlcmUgSElWRGlhZ25vc2lzLnByZXZhbGVuY2VJbnRlcnZhbCAoICkgc3RhcnRzIGJlZm9yZSBkYXkgb2Ygc3RhcnQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCINCiAgICAgICAgYW5kIEhJVkRpYWdub3Npcy52ZXJpZmljYXRpb25TdGF0dXMgIX4gInJlZnV0ZWQiDQogICkNCg0KZGVmaW5lICJEZW5vbWluYXRvciBFeGNlcHRpb25zIjoNCiAgIlBhdGllbnQgRXhwaXJlZCINCg0KZGVmaW5lICJRdWFsaWZ5aW5nIEVuY291bnRlcnMiOg0KICAoIFsiRW5jb3VudGVyIjogdHlwZSBpbiAiUHJldmVudGl2ZSBDYXJlIFNlcnZpY2VzLCBJbml0aWFsIE9mZmljZSBWaXNpdCwgMCB0byAxNyJdDQogICAgdW5pb24gWyJFbmNvdW50ZXIiOiB0eXBlIGluICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMtSW5pdGlhbCBPZmZpY2UgVmlzaXQsIDE4IGFuZCBVcCJdDQogICAgdW5pb24gWyJFbmNvdW50ZXIiOiB0eXBlIGluICJQcmV2ZW50aXZlIENhcmUsIEVzdGFibGlzaGVkIE9mZmljZSBWaXNpdCwgMCB0byAxNyJdDQogICAgdW5pb24gWyJFbmNvdW50ZXIiOiB0eXBlIGluICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMgLSBFc3RhYmxpc2hlZCBPZmZpY2UgVmlzaXQsIDE4IGFuZCBVcCJdDQogICAgdW5pb24gWyJFbmNvdW50ZXIiOiB0eXBlIGluICJPZmZpY2UgVmlzaXQiXSApIEVuY291bnRlcg0KICAgIHdoZXJlIEVuY291bnRlci5wZXJpb2QgZHVyaW5nIGRheSBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIg0KICAgICAgYW5kIEVuY291bnRlci5zdGF0dXMgPSAnZmluaXNoZWQnDQoNCmRlZmluZSAiUGF0aWVudCBFeHBpcmVkIjoNCiAgUGF0aWVudC5kZWNlYXNlZCBvbiBvciBiZWZvcmUgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiDQoNCmRlZmluZSAiSGFzIEhJViBUZXN0IFBlcmZvcm1lZCI6DQogIGV4aXN0cyAoIFsiTGFib3JhdG9yeVJlc3VsdE9ic2VydmF0aW9uIjogIkh1bWFuIEltbXVub2RlZmljaWVuY3kgVmlydXMgKEhJVikgTGFib3JhdG9yeSBUZXN0IENvZGVzIChBYiBhbmQgQWcpIl0NCiAgICB1bmlvbiBbIkxhYm9yYXRvcnlSZXN1bHRPYnNlcnZhdGlvbiI6ICJISVYgMSBhbmQgMiB0ZXN0cyAtIE1lYW5pbmdmdWwgVXNlIHNldCJdICkgSElWVGVzdA0KICAgIHdoZXJlIEhJVlRlc3QudmFsdWUgaXMgbm90IG51bGwNCiAgICAgIGFuZCBBZ2VJblllYXJzQXQoZGF0ZSBmcm9tIHN0YXJ0IG9mIEhJVlRlc3QuZWZmZWN0aXZlLnRvSW50ZXJ2YWwoKSkgaW4gSW50ZXJ2YWxbMTUsIDY1XQ0KICAgICAgYW5kIEhJVlRlc3QuZWZmZWN0aXZlLnRvSW50ZXJ2YWwgKCApIHN0YXJ0cyBiZWZvcmUgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiDQogICAgICBhbmQgKCBISVZUZXN0LnN0YXR1cyA9ICdmaW5hbCcNCiAgICAgICAgICBvciBISVZUZXN0LnN0YXR1cyA9ICdhbWVuZGVkJw0KICAgICAgICAgIG9yIEhJVlRlc3Quc3RhdHVzID0gJ2NvcnJlY3RlZCcNCiAgICAgICkNCg0KZGVmaW5lICJTREUgRXRobmljaXR5IjoNCiAgU0RFLiJTREUgRXRobmljaXR5Ig0KDQpkZWZpbmUgIlNERSBQYXllciI6DQogIFNERS4iU0RFIFBheWVyIg0KDQpkZWZpbmUgIlNERSBSYWNlIjoNCiAgU0RFLiJTREUgUmFjZSINCg0KZGVmaW5lICJTREUgU2V4IjoNCiAgU0RFLiJTREUgU2V4Ig=="/>
</content>
</Library>