CDC National Healthcare Safety Network (NHSN) Digital Quality Measures (dQM) Content Package IG
2.0.0-cibuild - Release 2 ci-build
CDC National Healthcare Safety Network (NHSN) Digital Quality Measures (dQM) Content Package IG - Local Development build (v2.0.0-cibuild) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Page standards status: Trial-use | Maturity Level: 1 |
<Library xmlns="http://hl7.org/fhir">
<id value="NHSNLongTermCareMonthlyInitialPopulation"/>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<div>
<table class="grid dict">
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">NHSNLongTermCareMonthlyInitialPopulation</td>
</tr>
<tr>
<th scope="row"><b>Version: </b></th>
<td style="padding-left: 4px;">2.0.0-cibuild</td>
</tr>
<tr>
<th scope="row"><b>Url: </b></th>
<td style="padding-left: 4px;"><a href="Library-NHSNLongTermCareMonthlyInitialPopulation.html">NHSNLongTermCareMonthlyInitialPopulation</a></td>
</tr>
<tr>
<th scope="row"><b>Status: </b></th>
<td style="padding-left: 4px;">draft</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://terminology.hl7.org/6.5.0/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;">2025-11-10 16:09:20+0000</td>
</tr>
<tr>
<th scope="row"><b>Publisher: </b></th>
<td style="padding-left: 4px;">CDC National Healthcare Safety Network (NHSN)</td>
</tr>
<tr>
<th scope="row"><b>Jurisdiction: </b></th>
<td style="padding-left: 4px;">US</td>
</tr>
<tr>
<th scope="row"><b>Related Artifacts: </b></th>
<td style="padding-left: 4px;">
<p><b>Dependencies</b></p>
<ul>
<li><a href="http://fhir.org/guides/cqf/common/4.0.1/4.0.1/Library-FHIR-ModelInfo.html">http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</a></li>
<li><code>http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/FHIRHelpers|4.0.2</code></li>
<li><code>http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/NHSNHelpers|0.0.002</code></li>
<li><code>http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/SharedResourceCreation|0.1.010</code></li>
<li><a href="http://terminology.hl7.org/6.5.0/CodeSystem-observation-category.html">Observation Category Codesversion: null1.0.1)</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>Encounter</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Coverage</th><th>Coverage</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE IP Encounters</th><th>Encounter</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Medication Administration</th><th>MedicationAdministration</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Medication Request</th><th>MedicationRequest</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Medication</th><th>Medication</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Observation Lab Category</th><th>Observation</th><th>0</th><th>*</th><th>Out</th></tr>
<tr><th>SDE Minimal Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
<tr><th>SDE Specimen</th><th>Specimen</th><th>0</th><th>*</th><th>Out</th></tr>
</table>
</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/StructureDefinition/Patient</th>
<th>;;;;;;;;;;;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>Encounter</th>
<th>http://hl7.org/fhir/StructureDefinition/Encounter</th>
<th>;;;;;;;;;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>Coverage</th>
<th>http://hl7.org/fhir/StructureDefinition/Coverage</th>
<th>;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>MedicationAdministration</th>
<th>http://hl7.org/fhir/StructureDefinition/MedicationAdministration</th>
<th>;;;;;;;;;;;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>MedicationRequest</th>
<th>http://hl7.org/fhir/StructureDefinition/MedicationRequest</th>
<th>;;;;;;;;;;;;;;;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>Medication</th>
<th>http://hl7.org/fhir/StructureDefinition/Medication</th>
<th>;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>Observation</th>
<th>http://hl7.org/fhir/StructureDefinition/Observation</th>
<th>;;;;;;;;;;;;;;;;;;;;;;;;;</th>
<th>
</th>
</tr>
<tr>
<th>Specimen</th>
<th>http://hl7.org/fhir/StructureDefinition/Specimen</th>
<th>;;;;;;;;;;;;;;;;</th>
<th>
</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 NHSNLongTermCareMonthlyInitialPopulation version '2.0.0-cibuild'
using FHIR version '4.0.1'
include FHIRHelpers version '4.0.2' called FHIRHelpers
include NHSNHelpers version '0.0.002' called NHSNHelpers
include SharedResourceCreation version '0.1.010' called SharedResource
codesystem "Observation Category": 'http://terminology.hl7.org/CodeSystem/observation-category'
//code for Observation Category
code "laboratory": 'laboratory' from "Observation Category" display 'Laboratory'
parameter "Measurement Period"
default Interval[@2025-01-01T00:00:00.000Z, @2025-01-31T23:59:59.000Z)
context Patient
define "Initial Population":
[Encounter] QualifyingEncounters
where QualifyingEncounters.period overlaps "Measurement Period"
define "SDE Coverage":
[Coverage] Coverages
where exists(
"Initial Population" IP
where Coverages.period overlaps IP.period)
return CoverageResource(Coverages,
{FHIR.canonical{value: ''}})
define "SDE IP Encounters":
"Initial Population" IP
return EncounterResource(IP,
{FHIR.canonical{value: ''}})
define "SDE Medication Administration":
[MedicationAdministration] MedicationAdministrations
where exists(
"Initial Population" IP
where NHSNHelpers."Normalize Interval"(MedicationAdministrations.effective) overlaps IP.period)
return MedicationAdministrationResource(MedicationAdministrations,
{FHIR.canonical{value: ''}})
define "SDE Medication Request":
[MedicationRequest] MedicationRequests
where exists(
"Initial Population" IP
where MedicationRequests.authoredOn during IP.period)
return MedicationRequestResource(MedicationRequests,
{FHIR.canonical{value: ''}})
define "SDE Medication":
("SDE Medication Request"
union "SDE Medication Administration") MedReqOrAdmin
where MedReqOrAdmin.medication is FHIR.Reference
and exists("Initial Population") //No longer need to check for timing here because it's checked in SDE Medication Request/Administriation
return MedicationResource(GetMedicationFrom(MedReqOrAdmin.medication),
{FHIR.canonical{value: ''}})
define "SDE Observation Lab Category":
[Observation] Observations
where (exists(Observations.category Category where Category ~ "laboratory"))
and exists(
"Initial Population" IP
where NHSNHelpers."Normalize Interval"(Observations.effective) overlaps IP.period)
return ObservationLabResource(Observations,
{FHIR.canonical{value: ''}})
define "SDE Minimal Patient":
Patient p
return PatientResource(p,
{FHIR.canonical{value: ''}})
define "SDE Specimen":
[Specimen] Specimens
where exists(
"Initial Population" IP
where NHSNHelpers."Normalize Interval"(Specimens.collection.collected) overlaps IP.period
)
return SharedResource.SpecimenResource(Specimens,
{FHIR.canonical{value: ''}})
//
//Functions
//
define function "GetMedicationFrom"(choice Choice<FHIR.CodeableConcept, FHIR.Reference>):
case
when choice is FHIR.Reference then
GetMedication(choice as FHIR.Reference)
else
null
end
define function "GetMedication"(reference Reference):
singleton from (
[Medication] Medications
where Medications.id = NHSNHelpers.GetId(reference.reference)
)
//
//Measure Specific Resource Creation Functions
//
define function CoverageResource(coverage Coverage, profileURLs List<FHIR.canonical>):
coverage c
return Coverage{
id: FHIR.id{value: 'LCR-' + c.id},
meta: SharedResource.MetaElement(c, profileURLs),
extension: c.extension,
status: c.status,
type: c.type,
subscriber: c.subscriber,
period: c.period
}
define function EncounterHospitalization(hospitalization FHIR.Encounter.Hospitalization):
hospitalization h
return FHIR.Encounter.Hospitalization{
origin: h.origin,
admitSource: h.admitSource,
reAdmission: h.reAdmission,
dischargeDisposition: h.dischargeDisposition
}
define function EncounterResource(encounter Encounter, profileURLs List<FHIR.canonical>):
encounter e
return Encounter{
id: FHIR.id{value: 'LCR-' + e.id},
meta: SharedResource.MetaElement(e, profileURLs),
extension: e.extension,
identifier: SharedResource.EncounterIdentifier(e.identifier),
status: e.status,
statusHistory: SharedResource.EncounterStatusHistory(e.statusHistory),
class: e.class,
classHistory: SharedResource.EncounterClassHistory(e.classHistory),
type: e.type,
subject: e.subject,
period: e.period,
length: e.length,
reasonCode: e.reasonCode,
reasonReference: e.reasonReference,
hospitalization: EncounterHospitalization(e.hospitalization),
partOf: e.partOf
}
define function MedicationResource(medication Medication, profileURLs List<FHIR.canonical>):
medication m
return Medication{
id: FHIR.id {value: 'LCR-' + m.id},
meta: SharedResource.MetaElement(m, profileURLs),
extension: m.extension,
code: m.code,
status: m.status,
form: m.form,
amount: m.amount,
ingredient: SharedResource.MedicationIngredient(m.ingredient)
}
define function MedicationAdministrationDosage(dosage FHIR.MedicationAdministration.Dosage):
dosage d
return FHIR.MedicationAdministration.Dosage{
text: d.text,
route: d.route,
method: d.method,
dose: d.dose
}
define function MedicationAdministrationResource(medicationAdministration MedicationAdministration, profileURLs List<FHIR.canonical>):
medicationAdministration m
return MedicationAdministration{
id: FHIR.id {value: 'LCR-' + m.id},
meta: SharedResource.MetaElement(m, profileURLs),
extension: m.extension,
instantiates: m.instantiates,
partOf: m.partOf,
status: m.status,
statusReason: m.statusReason,
category: m.category,
medication: m.medication,
subject: m.subject,
context: m.context,
supportingInformation: m.supportingInformation,
effective: m.effective,
reasonCode: m.reasonCode,
reasonReference: m.reasonReference,
request: m.request,
dosage: MedicationAdministrationDosage(m.dosage),
eventHistory: m.eventHistory
}
define function MedicationRequestDoseAndRate(doseAndRate List<FHIR.Dosage.DoseAndRate>):
doseAndRate dR
return FHIR.Dosage.DoseAndRate{
type: dR.type,
dose: dR.dose,
rate: dR.rate
}
define function MedicationRequestDosageInstruction(dosageInstruction List<FHIR.Dosage>):
dosageInstruction dI
return FHIR.Dosage{
text: dI.text,
timing: dI.timing,
asNeeded: dI.asNeeded,
route: dI.route,
method: dI.method,
doseAndRate: MedicationRequestDoseAndRate(dI.doseAndRate)
}
define function MedicationRequestResource(medicationRequest MedicationRequest, profileURLs List<FHIR.canonical>):
medicationRequest m
return MedicationRequest{
id: FHIR.id {value: 'LCR-' + m.id},
meta: SharedResource.MetaElement(medicationRequest, profileURLs),
extension: m.extension,
status: m.status,
statusReason: m.statusReason,
intent: m.intent,
category: m.category,
priority: m.priority,
doNotPerform: m.doNotPerform,
reported: m.reported,
medication: m.medication,
subject: m.subject,
encounter: m.encounter,
authoredOn: m.authoredOn,
requester: m.requester,
recorder: m.recorder,
reasonCode: m.reasonCode,
reasonReference: m.reasonReference,
instantiatesCanonical: m.instantiatesCanonical,
instantiatesUri: m.instantiatesUri,
courseOfTherapyType: m.courseOfTherapyType,
dosageInstruction: MedicationRequestDosageInstruction(m.dosageInstruction)
}
define function ObservationLabCoding(coding List<Coding>):
coding c
return Coding{
id: c.id,
extension: c.extension,
system: c.system,
code: c.code
}
define function ObservationLabCategory(category List<CodeableConcept>):
category c
return CodeableConcept{
coding: ObservationLabCoding(c.coding),
text: c.text
}
define function ObservationLabResource(observation Observation, profileURLs List<FHIR.canonical>):
observation o
return Observation{
id: FHIR.id {value: 'LCR-' + o.id},
meta: SharedResource.MetaElement(o, profileURLs),
extension: o.extension,
basedOn: o.basedOn,
partOf: o.partOf,
status: o.status,
category: ObservationLabCategory(o.category),
code: o.code,
subject: o.subject,
focus: o.focus,
encounter: o.encounter,
effective: o.effective,
issued: o.issued,
performer: o.performer,
value: o.value,
dataAbsentReason: o.dataAbsentReason,
interpretation: o.interpretation,
note: o.note,
bodySite: o.bodySite,
method: o.method,
specimen: o.specimen,
device: o.device,
referenceRange: SharedResource.ObservationReferenceRange(o.referenceRange),
hasMember: o.hasMember,
derivedFrom: o.derivedFrom,
component: SharedResource.ObservationComponent(o.component)
}
define function "GetPatientExtensions"(domainResource DomainResource):
domainResource.extension E
where E.url.value = 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-race'
or E.url.value = 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity'
or E.url.value = 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation'
or E.url.value = 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex'
or E.url.value = 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex'
return E
define function PatientLink(link List<FHIR.Patient.Link>):
link l
return FHIR.Patient.Link{
id: l.id,
other: l.other,
type: l.type
}
define function PatientResource(patient Patient, profileURLs List<FHIR.canonical>):
patient p
return Patient{
id: FHIR.id{value: 'LCR-' + p.id},
meta: SharedResource.MetaElement(p, profileURLs),
extension: GetPatientExtensions(p),
identifier: p.identifier,
active: p.active,
name: SharedResource.PatientName(p.name),
telecom: SharedResource.PatientTelecom(p.telecom),
gender: p.gender,
birthDate: p.birthDate,
deceased: p.deceased,
address: SharedResource.PatientAddress(p.address),
maritalStatus: p.maritalStatus,
multipleBirth: p.multipleBirth,
photo: p.photo,
contact: SharedResource.PatientContact(p.contact),
communication: SharedResource.PatientCommunication(p.communication),
generalPractitioner: p.generalPractitioner,
managingOrganization: p.managingOrganization,
link: PatientLink(p.link)
}</code></pre></td></tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</text>
<contained>
<Parameters>
<id value="options"/>
<parameter>
<name value="translatorVersion"/>
<valueString value="3.11.0"/>
</parameter>
<parameter>
<name value="option"/>
<valueString value="EnableDateRangeOptimization"/>
</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="analyzeDataRequirements"/>
<valueBoolean value="false"/>
</parameter>
<parameter>
<name value="collapseDataRequirements"/>
<valueBoolean value="true"/>
</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-cqlOptions">
<valueReference>
<reference value="#options"/>
</valueReference>
</extension>
<extension
url="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-softwaresystem">
<valueReference>🔗
<reference value="Device/cqf-tooling"/>
</valueReference>
</extension>
<url
value="http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/NHSNLongTermCareMonthlyInitialPopulation"/>
<version value="2.0.0-cibuild"/>
<name value="NHSNLongTermCareMonthlyInitialPopulation"/>
<status value="draft"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2025-11-10T16:09:20+00:00"/>
<publisher value="CDC National Healthcare Safety Network (NHSN)"/>
<contact>
<name value="CDC National Healthcare Safety Network (NHSN)"/>
<telecom>
<system value="url"/>
<value value="http://www.cdc.gov/nhsn"/>
</telecom>
<telecom>
<system value="email"/>
<value value="nhsn@cdc.gov"/>
</telecom>
</contact>
<jurisdiction>
<coding>
<system value="urn:iso:std:iso:3166"/>
<code value="US"/>
</coding>
</jurisdiction>
<relatedArtifact>
<type value="depends-on"/>
<display value="FHIR model information"/>
<resource
value="http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library FHIRHelpers"/>
<resource
value="http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/FHIRHelpers|4.0.2"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library NHSNHelpers"/>
<resource
value="http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/NHSNHelpers|0.0.002"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library SharedResource"/>
<resource
value="http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library/SharedResourceCreation|0.1.010"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Code system Observation Category"/>
<resource
value="http://terminology.hl7.org/CodeSystem/observation-category|1.0.1"/>
</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="*"/>
<type value="Encounter"/>
</parameter>
<parameter>
<name value="SDE Coverage"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Coverage"/>
</parameter>
<parameter>
<name value="SDE IP Encounters"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Encounter"/>
</parameter>
<parameter>
<name value="SDE Medication Administration"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="MedicationAdministration"/>
</parameter>
<parameter>
<name value="SDE Medication Request"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="MedicationRequest"/>
</parameter>
<parameter>
<name value="SDE Medication"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Medication"/>
</parameter>
<parameter>
<name value="SDE Observation Lab Category"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Observation"/>
</parameter>
<parameter>
<name value="SDE Minimal Patient"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Patient"/>
</parameter>
<parameter>
<name value="SDE Specimen"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Specimen"/>
</parameter>
<dataRequirement>
<type value="Patient"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
<mustSupport value="id"/>
<mustSupport value="identifier"/>
<mustSupport value="active"/>
<mustSupport value="name"/>
<mustSupport value="telecom"/>
<mustSupport value="gender"/>
<mustSupport value="birthDate"/>
<mustSupport value="deceased"/>
<mustSupport value="address"/>
<mustSupport value="maritalStatus"/>
<mustSupport value="multipleBirth"/>
<mustSupport value="photo"/>
<mustSupport value="contact"/>
<mustSupport value="communication"/>
<mustSupport value="generalPractitioner"/>
<mustSupport value="managingOrganization"/>
<mustSupport value="link"/>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Encounter"/>
<mustSupport value="period"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="identifier"/>
<mustSupport value="status"/>
<mustSupport value="statusHistory"/>
<mustSupport value="class"/>
<mustSupport value="classHistory"/>
<mustSupport value="type"/>
<mustSupport value="subject"/>
<mustSupport value="length"/>
<mustSupport value="reasonCode"/>
<mustSupport value="reasonReference"/>
<mustSupport value="hospitalization"/>
<mustSupport value="partOf"/>
</dataRequirement>
<dataRequirement>
<type value="Coverage"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Coverage"/>
<mustSupport value="period"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="status"/>
<mustSupport value="type"/>
<mustSupport value="subscriber"/>
</dataRequirement>
<dataRequirement>
<type value="MedicationAdministration"/>
<profile
value="http://hl7.org/fhir/StructureDefinition/MedicationAdministration"/>
<mustSupport value="effective"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="instantiates"/>
<mustSupport value="partOf"/>
<mustSupport value="status"/>
<mustSupport value="statusReason"/>
<mustSupport value="category"/>
<mustSupport value="medication"/>
<mustSupport value="subject"/>
<mustSupport value="context"/>
<mustSupport value="supportingInformation"/>
<mustSupport value="reasonCode"/>
<mustSupport value="reasonReference"/>
<mustSupport value="request"/>
<mustSupport value="dosage"/>
<mustSupport value="eventHistory"/>
</dataRequirement>
<dataRequirement>
<type value="MedicationRequest"/>
<profile
value="http://hl7.org/fhir/StructureDefinition/MedicationRequest"/>
<mustSupport value="authoredOn"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="status"/>
<mustSupport value="statusReason"/>
<mustSupport value="intent"/>
<mustSupport value="category"/>
<mustSupport value="priority"/>
<mustSupport value="doNotPerform"/>
<mustSupport value="reported"/>
<mustSupport value="medication"/>
<mustSupport value="subject"/>
<mustSupport value="encounter"/>
<mustSupport value="requester"/>
<mustSupport value="recorder"/>
<mustSupport value="reasonCode"/>
<mustSupport value="reasonReference"/>
<mustSupport value="instantiatesCanonical"/>
<mustSupport value="instantiatesUri"/>
<mustSupport value="courseOfTherapyType"/>
<mustSupport value="dosageInstruction"/>
</dataRequirement>
<dataRequirement>
<type value="Medication"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Medication"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="code"/>
<mustSupport value="status"/>
<mustSupport value="form"/>
<mustSupport value="amount"/>
<mustSupport value="ingredient"/>
</dataRequirement>
<dataRequirement>
<type value="Observation"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mustSupport value="category"/>
<mustSupport value="effective"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="basedOn"/>
<mustSupport value="partOf"/>
<mustSupport value="status"/>
<mustSupport value="code"/>
<mustSupport value="subject"/>
<mustSupport value="focus"/>
<mustSupport value="encounter"/>
<mustSupport value="issued"/>
<mustSupport value="performer"/>
<mustSupport value="value"/>
<mustSupport value="dataAbsentReason"/>
<mustSupport value="interpretation"/>
<mustSupport value="note"/>
<mustSupport value="bodySite"/>
<mustSupport value="method"/>
<mustSupport value="specimen"/>
<mustSupport value="device"/>
<mustSupport value="referenceRange"/>
<mustSupport value="hasMember"/>
<mustSupport value="derivedFrom"/>
<mustSupport value="component"/>
</dataRequirement>
<dataRequirement>
<type value="Specimen"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Specimen"/>
<mustSupport value="collection"/>
<mustSupport value="collection.collected"/>
<mustSupport value="id"/>
<mustSupport value="extension"/>
<mustSupport value="identifier"/>
<mustSupport value="accessionIdentifier"/>
<mustSupport value="status"/>
<mustSupport value="type"/>
<mustSupport value="subject"/>
<mustSupport value="receivedTime"/>
<mustSupport value="parent"/>
<mustSupport value="request"/>
<mustSupport value="processing"/>
<mustSupport value="container"/>
<mustSupport value="condition"/>
<mustSupport value="note"/>
</dataRequirement>
<content>
<contentType value="text/cql"/>
<data
value="bGlicmFyeSBOSFNOTG9uZ1Rlcm1DYXJlTW9udGhseUluaXRpYWxQb3B1bGF0aW9uIHZlcnNpb24gJzIuMC4wLWNpYnVpbGQnCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMicgY2FsbGVkIEZISVJIZWxwZXJzCmluY2x1ZGUgTkhTTkhlbHBlcnMgdmVyc2lvbiAnMC4wLjAwMicgY2FsbGVkIE5IU05IZWxwZXJzCmluY2x1ZGUgU2hhcmVkUmVzb3VyY2VDcmVhdGlvbiB2ZXJzaW9uICcwLjEuMDEwJyBjYWxsZWQgU2hhcmVkUmVzb3VyY2UKCmNvZGVzeXN0ZW0gIk9ic2VydmF0aW9uIENhdGVnb3J5IjogJ2h0dHA6Ly90ZXJtaW5vbG9neS5obDcub3JnL0NvZGVTeXN0ZW0vb2JzZXJ2YXRpb24tY2F0ZWdvcnknCgovL2NvZGUgZm9yIE9ic2VydmF0aW9uIENhdGVnb3J5CmNvZGUgImxhYm9yYXRvcnkiOiAnbGFib3JhdG9yeScgZnJvbSAiT2JzZXJ2YXRpb24gQ2F0ZWdvcnkiIGRpc3BsYXkgJ0xhYm9yYXRvcnknCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgCiAgICBkZWZhdWx0IEludGVydmFsW0AyMDI1LTAxLTAxVDAwOjAwOjAwLjAwMFosIEAyMDI1LTAxLTMxVDIzOjU5OjU5LjAwMFopCgpjb250ZXh0IFBhdGllbnQgCgpkZWZpbmUgIkluaXRpYWwgUG9wdWxhdGlvbiI6CiAgW0VuY291bnRlcl0gUXVhbGlmeWluZ0VuY291bnRlcnMKICB3aGVyZSBRdWFsaWZ5aW5nRW5jb3VudGVycy5wZXJpb2Qgb3ZlcmxhcHMgIk1lYXN1cmVtZW50IFBlcmlvZCIgCgpkZWZpbmUgIlNERSBDb3ZlcmFnZSI6IAoJW0NvdmVyYWdlXSBDb3ZlcmFnZXMKICB3aGVyZSBleGlzdHMoCiAgICAiSW5pdGlhbCBQb3B1bGF0aW9uIiBJUAogICAgd2hlcmUgQ292ZXJhZ2VzLnBlcmlvZCBvdmVybGFwcyBJUC5wZXJpb2QpCiAgcmV0dXJuIENvdmVyYWdlUmVzb3VyY2UoQ292ZXJhZ2VzLAogIHtGSElSLmNhbm9uaWNhbHt2YWx1ZTogJyd9fSkKCmRlZmluZSAiU0RFIElQIEVuY291bnRlcnMiOgogICJJbml0aWFsIFBvcHVsYXRpb24iIElQCiAgcmV0dXJuIEVuY291bnRlclJlc291cmNlKElQLCAKICB7RkhJUi5jYW5vbmljYWx7dmFsdWU6ICcnfX0pCiAKZGVmaW5lICJTREUgTWVkaWNhdGlvbiBBZG1pbmlzdHJhdGlvbiI6CiAgW01lZGljYXRpb25BZG1pbmlzdHJhdGlvbl0gTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9ucyAKICB3aGVyZSBleGlzdHMoCiAgICAiSW5pdGlhbCBQb3B1bGF0aW9uIiBJUAogICAgd2hlcmUgTkhTTkhlbHBlcnMuIk5vcm1hbGl6ZSBJbnRlcnZhbCIoTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9ucy5lZmZlY3RpdmUpIG92ZXJsYXBzIElQLnBlcmlvZCkKICByZXR1cm4gTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9uUmVzb3VyY2UoTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9ucywKICB7RkhJUi5jYW5vbmljYWx7dmFsdWU6ICcnfX0pCiAKZGVmaW5lICJTREUgTWVkaWNhdGlvbiBSZXF1ZXN0IjoKICBbTWVkaWNhdGlvblJlcXVlc3RdIE1lZGljYXRpb25SZXF1ZXN0cyAKICB3aGVyZSBleGlzdHMoCiAgICAiSW5pdGlhbCBQb3B1bGF0aW9uIiBJUAogICAgd2hlcmUgTWVkaWNhdGlvblJlcXVlc3RzLmF1dGhvcmVkT24gZHVyaW5nIElQLnBlcmlvZCkKICByZXR1cm4gTWVkaWNhdGlvblJlcXVlc3RSZXNvdXJjZShNZWRpY2F0aW9uUmVxdWVzdHMsCiAge0ZISVIuY2Fub25pY2Fse3ZhbHVlOiAnJ319KQoKZGVmaW5lICJTREUgTWVkaWNhdGlvbiI6CiAgKCJTREUgTWVkaWNhdGlvbiBSZXF1ZXN0IgogIHVuaW9uICJTREUgTWVkaWNhdGlvbiBBZG1pbmlzdHJhdGlvbiIpIE1lZFJlcU9yQWRtaW4KICB3aGVyZSBNZWRSZXFPckFkbWluLm1lZGljYXRpb24gaXMgRkhJUi5SZWZlcmVuY2UKICBhbmQgZXhpc3RzKCJJbml0aWFsIFBvcHVsYXRpb24iKSAvL05vIGxvbmdlciBuZWVkIHRvIGNoZWNrIGZvciB0aW1pbmcgaGVyZSBiZWNhdXNlIGl0J3MgY2hlY2tlZCBpbiBTREUgTWVkaWNhdGlvbiBSZXF1ZXN0L0FkbWluaXN0cmlhdGlvbgogIHJldHVybiBNZWRpY2F0aW9uUmVzb3VyY2UoR2V0TWVkaWNhdGlvbkZyb20oTWVkUmVxT3JBZG1pbi5tZWRpY2F0aW9uKSwKICB7RkhJUi5jYW5vbmljYWx7dmFsdWU6ICcnfX0pCgpkZWZpbmUgIlNERSBPYnNlcnZhdGlvbiBMYWIgQ2F0ZWdvcnkiOgogIFtPYnNlcnZhdGlvbl0gT2JzZXJ2YXRpb25zIAogIHdoZXJlIChleGlzdHMoT2JzZXJ2YXRpb25zLmNhdGVnb3J5IENhdGVnb3J5IHdoZXJlIENhdGVnb3J5IH4gImxhYm9yYXRvcnkiKSkKICAgIGFuZCBleGlzdHMoCiAgICAgICJJbml0aWFsIFBvcHVsYXRpb24iIElQCiAgICAgIHdoZXJlIE5IU05IZWxwZXJzLiJOb3JtYWxpemUgSW50ZXJ2YWwiKE9ic2VydmF0aW9ucy5lZmZlY3RpdmUpIG92ZXJsYXBzIElQLnBlcmlvZCkKICByZXR1cm4gT2JzZXJ2YXRpb25MYWJSZXNvdXJjZShPYnNlcnZhdGlvbnMsCiAge0ZISVIuY2Fub25pY2Fse3ZhbHVlOiAnJ319KQoKZGVmaW5lICJTREUgTWluaW1hbCBQYXRpZW50IjoKICBQYXRpZW50IHAKICByZXR1cm4gUGF0aWVudFJlc291cmNlKHAsCiAge0ZISVIuY2Fub25pY2Fse3ZhbHVlOiAnJ319KQoKZGVmaW5lICJTREUgU3BlY2ltZW4iOgogIFtTcGVjaW1lbl0gU3BlY2ltZW5zCiAgd2hlcmUgZXhpc3RzKAogICAgIkluaXRpYWwgUG9wdWxhdGlvbiIgSVAKICAgIHdoZXJlIE5IU05IZWxwZXJzLiJOb3JtYWxpemUgSW50ZXJ2YWwiKFNwZWNpbWVucy5jb2xsZWN0aW9uLmNvbGxlY3RlZCkgb3ZlcmxhcHMgSVAucGVyaW9kCiAgKQogIHJldHVybiBTaGFyZWRSZXNvdXJjZS5TcGVjaW1lblJlc291cmNlKFNwZWNpbWVucywKICB7RkhJUi5jYW5vbmljYWx7dmFsdWU6ICcnfX0pCgovLwovL0Z1bmN0aW9ucwovLwpkZWZpbmUgZnVuY3Rpb24gIkdldE1lZGljYXRpb25Gcm9tIihjaG9pY2UgQ2hvaWNlPEZISVIuQ29kZWFibGVDb25jZXB0LCBGSElSLlJlZmVyZW5jZT4pOgogIGNhc2UKICAgIHdoZW4gY2hvaWNlIGlzIEZISVIuUmVmZXJlbmNlIHRoZW4KICAgICAgR2V0TWVkaWNhdGlvbihjaG9pY2UgYXMgRkhJUi5SZWZlcmVuY2UpCiAgICBlbHNlCiAgICAgIG51bGwKICBlbmQKCmRlZmluZSBmdW5jdGlvbiAiR2V0TWVkaWNhdGlvbiIocmVmZXJlbmNlIFJlZmVyZW5jZSk6CiAgc2luZ2xldG9uIGZyb20gKAogICAgW01lZGljYXRpb25dIE1lZGljYXRpb25zCiAgICB3aGVyZSBNZWRpY2F0aW9ucy5pZCA9IE5IU05IZWxwZXJzLkdldElkKHJlZmVyZW5jZS5yZWZlcmVuY2UpCiAgKQoKLy8KLy9NZWFzdXJlIFNwZWNpZmljIFJlc291cmNlIENyZWF0aW9uIEZ1bmN0aW9ucwovLwpkZWZpbmUgZnVuY3Rpb24gQ292ZXJhZ2VSZXNvdXJjZShjb3ZlcmFnZSBDb3ZlcmFnZSwgcHJvZmlsZVVSTHMgTGlzdDxGSElSLmNhbm9uaWNhbD4pOgogIGNvdmVyYWdlIGMKICByZXR1cm4gQ292ZXJhZ2V7CiAgICBpZDogRkhJUi5pZHt2YWx1ZTogJ0xDUi0nICsgYy5pZH0sCiAgICBtZXRhOiBTaGFyZWRSZXNvdXJjZS5NZXRhRWxlbWVudChjLCBwcm9maWxlVVJMcyksCiAgICBleHRlbnNpb246IGMuZXh0ZW5zaW9uLAogICAgc3RhdHVzOiBjLnN0YXR1cywKICAgIHR5cGU6IGMudHlwZSwKICAgIHN1YnNjcmliZXI6IGMuc3Vic2NyaWJlciwKICAgIHBlcmlvZDogYy5wZXJpb2QKICB9CgpkZWZpbmUgZnVuY3Rpb24gRW5jb3VudGVySG9zcGl0YWxpemF0aW9uKGhvc3BpdGFsaXphdGlvbiBGSElSLkVuY291bnRlci5Ib3NwaXRhbGl6YXRpb24pOgogIGhvc3BpdGFsaXphdGlvbiBoCiAgcmV0dXJuIEZISVIuRW5jb3VudGVyLkhvc3BpdGFsaXphdGlvbnsKICAgIG9yaWdpbjogaC5vcmlnaW4sCiAgICBhZG1pdFNvdXJjZTogaC5hZG1pdFNvdXJjZSwKICAgIHJlQWRtaXNzaW9uOiBoLnJlQWRtaXNzaW9uLAogICAgZGlzY2hhcmdlRGlzcG9zaXRpb246IGguZGlzY2hhcmdlRGlzcG9zaXRpb24KICB9CgpkZWZpbmUgZnVuY3Rpb24gRW5jb3VudGVyUmVzb3VyY2UoZW5jb3VudGVyIEVuY291bnRlciwgcHJvZmlsZVVSTHMgTGlzdDxGSElSLmNhbm9uaWNhbD4pOgogIGVuY291bnRlciBlCiAgcmV0dXJuIEVuY291bnRlcnsKICAgIGlkOiBGSElSLmlke3ZhbHVlOiAnTENSLScgKyBlLmlkfSwKICAgIG1ldGE6IFNoYXJlZFJlc291cmNlLk1ldGFFbGVtZW50KGUsIHByb2ZpbGVVUkxzKSwKICAgIGV4dGVuc2lvbjogZS5leHRlbnNpb24sCiAgICBpZGVudGlmaWVyOiBTaGFyZWRSZXNvdXJjZS5FbmNvdW50ZXJJZGVudGlmaWVyKGUuaWRlbnRpZmllciksCiAgICBzdGF0dXM6IGUuc3RhdHVzLAogICAgc3RhdHVzSGlzdG9yeTogU2hhcmVkUmVzb3VyY2UuRW5jb3VudGVyU3RhdHVzSGlzdG9yeShlLnN0YXR1c0hpc3RvcnkpLAogICAgY2xhc3M6IGUuY2xhc3MsCiAgICBjbGFzc0hpc3Rvcnk6IFNoYXJlZFJlc291cmNlLkVuY291bnRlckNsYXNzSGlzdG9yeShlLmNsYXNzSGlzdG9yeSksCiAgICB0eXBlOiBlLnR5cGUsCiAgICBzdWJqZWN0OiBlLnN1YmplY3QsCiAgICBwZXJpb2Q6IGUucGVyaW9kLAogICAgbGVuZ3RoOiBlLmxlbmd0aCwKICAgIHJlYXNvbkNvZGU6IGUucmVhc29uQ29kZSwKICAgIHJlYXNvblJlZmVyZW5jZTogZS5yZWFzb25SZWZlcmVuY2UsCiAgICBob3NwaXRhbGl6YXRpb246IEVuY291bnRlckhvc3BpdGFsaXphdGlvbihlLmhvc3BpdGFsaXphdGlvbiksCiAgICBwYXJ0T2Y6IGUucGFydE9mCiAgfQoKZGVmaW5lIGZ1bmN0aW9uIE1lZGljYXRpb25SZXNvdXJjZShtZWRpY2F0aW9uIE1lZGljYXRpb24sIHByb2ZpbGVVUkxzIExpc3Q8RkhJUi5jYW5vbmljYWw+KToKICBtZWRpY2F0aW9uIG0KICByZXR1cm4gTWVkaWNhdGlvbnsKICAgIGlkOiBGSElSLmlkIHt2YWx1ZTogJ0xDUi0nICsgbS5pZH0sCiAgICBtZXRhOiBTaGFyZWRSZXNvdXJjZS5NZXRhRWxlbWVudChtLCBwcm9maWxlVVJMcyksCiAgICBleHRlbnNpb246IG0uZXh0ZW5zaW9uLAogICAgY29kZTogbS5jb2RlLAogICAgc3RhdHVzOiBtLnN0YXR1cywKICAgIGZvcm06IG0uZm9ybSwKICAgIGFtb3VudDogbS5hbW91bnQsCiAgICBpbmdyZWRpZW50OiBTaGFyZWRSZXNvdXJjZS5NZWRpY2F0aW9uSW5ncmVkaWVudChtLmluZ3JlZGllbnQpCiAgfQoKZGVmaW5lIGZ1bmN0aW9uIE1lZGljYXRpb25BZG1pbmlzdHJhdGlvbkRvc2FnZShkb3NhZ2UgRkhJUi5NZWRpY2F0aW9uQWRtaW5pc3RyYXRpb24uRG9zYWdlKToKICBkb3NhZ2UgZAogIHJldHVybiBGSElSLk1lZGljYXRpb25BZG1pbmlzdHJhdGlvbi5Eb3NhZ2V7CiAgICB0ZXh0OiBkLnRleHQsCiAgICByb3V0ZTogZC5yb3V0ZSwKICAgIG1ldGhvZDogZC5tZXRob2QsCiAgICBkb3NlOiBkLmRvc2UKICB9CgpkZWZpbmUgZnVuY3Rpb24gTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9uUmVzb3VyY2UobWVkaWNhdGlvbkFkbWluaXN0cmF0aW9uIE1lZGljYXRpb25BZG1pbmlzdHJhdGlvbiwgcHJvZmlsZVVSTHMgTGlzdDxGSElSLmNhbm9uaWNhbD4pOgogIG1lZGljYXRpb25BZG1pbmlzdHJhdGlvbiBtCiAgcmV0dXJuIE1lZGljYXRpb25BZG1pbmlzdHJhdGlvbnsKICAgIGlkOiBGSElSLmlkIHt2YWx1ZTogJ0xDUi0nICsgbS5pZH0sCiAgICBtZXRhOiBTaGFyZWRSZXNvdXJjZS5NZXRhRWxlbWVudChtLCBwcm9maWxlVVJMcyksCiAgICBleHRlbnNpb246IG0uZXh0ZW5zaW9uLAogICAgaW5zdGFudGlhdGVzOiBtLmluc3RhbnRpYXRlcywKICAgIHBhcnRPZjogbS5wYXJ0T2YsCiAgICBzdGF0dXM6IG0uc3RhdHVzLAogICAgc3RhdHVzUmVhc29uOiBtLnN0YXR1c1JlYXNvbiwKICAgIGNhdGVnb3J5OiBtLmNhdGVnb3J5LAogICAgbWVkaWNhdGlvbjogbS5tZWRpY2F0aW9uLAogICAgc3ViamVjdDogbS5zdWJqZWN0LAogICAgY29udGV4dDogbS5jb250ZXh0LAogICAgc3VwcG9ydGluZ0luZm9ybWF0aW9uOiBtLnN1cHBvcnRpbmdJbmZvcm1hdGlvbiwKICAgIGVmZmVjdGl2ZTogbS5lZmZlY3RpdmUsCiAgICByZWFzb25Db2RlOiBtLnJlYXNvbkNvZGUsCiAgICByZWFzb25SZWZlcmVuY2U6IG0ucmVhc29uUmVmZXJlbmNlLAogICAgcmVxdWVzdDogbS5yZXF1ZXN0LAogICAgZG9zYWdlOiBNZWRpY2F0aW9uQWRtaW5pc3RyYXRpb25Eb3NhZ2UobS5kb3NhZ2UpLAogICAgZXZlbnRIaXN0b3J5OiBtLmV2ZW50SGlzdG9yeQogIH0KCmRlZmluZSBmdW5jdGlvbiBNZWRpY2F0aW9uUmVxdWVzdERvc2VBbmRSYXRlKGRvc2VBbmRSYXRlIExpc3Q8RkhJUi5Eb3NhZ2UuRG9zZUFuZFJhdGU+KToKICBkb3NlQW5kUmF0ZSBkUgogIHJldHVybiBGSElSLkRvc2FnZS5Eb3NlQW5kUmF0ZXsKICAgIHR5cGU6IGRSLnR5cGUsCiAgICBkb3NlOiBkUi5kb3NlLAogICAgcmF0ZTogZFIucmF0ZQogIH0KCmRlZmluZSBmdW5jdGlvbiBNZWRpY2F0aW9uUmVxdWVzdERvc2FnZUluc3RydWN0aW9uKGRvc2FnZUluc3RydWN0aW9uIExpc3Q8RkhJUi5Eb3NhZ2U+KToKICBkb3NhZ2VJbnN0cnVjdGlvbiBkSQogIHJldHVybiBGSElSLkRvc2FnZXsKICAgIHRleHQ6IGRJLnRleHQsCiAgICB0aW1pbmc6IGRJLnRpbWluZywKICAgIGFzTmVlZGVkOiBkSS5hc05lZWRlZCwKICAgIHJvdXRlOiBkSS5yb3V0ZSwKICAgIG1ldGhvZDogZEkubWV0aG9kLAogICAgZG9zZUFuZFJhdGU6IE1lZGljYXRpb25SZXF1ZXN0RG9zZUFuZFJhdGUoZEkuZG9zZUFuZFJhdGUpCiAgfQoKZGVmaW5lIGZ1bmN0aW9uIE1lZGljYXRpb25SZXF1ZXN0UmVzb3VyY2UobWVkaWNhdGlvblJlcXVlc3QgTWVkaWNhdGlvblJlcXVlc3QsIHByb2ZpbGVVUkxzIExpc3Q8RkhJUi5jYW5vbmljYWw+KToKICBtZWRpY2F0aW9uUmVxdWVzdCBtCiAgcmV0dXJuIE1lZGljYXRpb25SZXF1ZXN0ewogICAgaWQ6IEZISVIuaWQge3ZhbHVlOiAnTENSLScgKyBtLmlkfSwKICAgIG1ldGE6IFNoYXJlZFJlc291cmNlLk1ldGFFbGVtZW50KG1lZGljYXRpb25SZXF1ZXN0LCBwcm9maWxlVVJMcyksCiAgICBleHRlbnNpb246IG0uZXh0ZW5zaW9uLAogICAgc3RhdHVzOiBtLnN0YXR1cywKICAgIHN0YXR1c1JlYXNvbjogbS5zdGF0dXNSZWFzb24sCiAgICBpbnRlbnQ6IG0uaW50ZW50LAogICAgY2F0ZWdvcnk6IG0uY2F0ZWdvcnksCiAgICBwcmlvcml0eTogbS5wcmlvcml0eSwKICAgIGRvTm90UGVyZm9ybTogbS5kb05vdFBlcmZvcm0sCiAgICByZXBvcnRlZDogbS5yZXBvcnRlZCwKICAgIG1lZGljYXRpb246IG0ubWVkaWNhdGlvbiwKICAgIHN1YmplY3Q6IG0uc3ViamVjdCwKICAgIGVuY291bnRlcjogbS5lbmNvdW50ZXIsCiAgICBhdXRob3JlZE9uOiBtLmF1dGhvcmVkT24sCiAgICByZXF1ZXN0ZXI6IG0ucmVxdWVzdGVyLAogICAgcmVjb3JkZXI6IG0ucmVjb3JkZXIsCiAgICByZWFzb25Db2RlOiBtLnJlYXNvbkNvZGUsCiAgICByZWFzb25SZWZlcmVuY2U6IG0ucmVhc29uUmVmZXJlbmNlLAogICAgaW5zdGFudGlhdGVzQ2Fub25pY2FsOiBtLmluc3RhbnRpYXRlc0Nhbm9uaWNhbCwKICAgIGluc3RhbnRpYXRlc1VyaTogbS5pbnN0YW50aWF0ZXNVcmksCiAgICBjb3Vyc2VPZlRoZXJhcHlUeXBlOiBtLmNvdXJzZU9mVGhlcmFweVR5cGUsCiAgICBkb3NhZ2VJbnN0cnVjdGlvbjogTWVkaWNhdGlvblJlcXVlc3REb3NhZ2VJbnN0cnVjdGlvbihtLmRvc2FnZUluc3RydWN0aW9uKQogIH0KCmRlZmluZSBmdW5jdGlvbiBPYnNlcnZhdGlvbkxhYkNvZGluZyhjb2RpbmcgTGlzdDxDb2Rpbmc+KToKICBjb2RpbmcgYwogIHJldHVybiBDb2Rpbmd7CiAgICBpZDogYy5pZCwKICAgIGV4dGVuc2lvbjogYy5leHRlbnNpb24sCiAgICBzeXN0ZW06IGMuc3lzdGVtLAogICAgY29kZTogYy5jb2RlCiAgfQoKZGVmaW5lIGZ1bmN0aW9uIE9ic2VydmF0aW9uTGFiQ2F0ZWdvcnkoY2F0ZWdvcnkgTGlzdDxDb2RlYWJsZUNvbmNlcHQ+KToKICBjYXRlZ29yeSBjCiAgcmV0dXJuIENvZGVhYmxlQ29uY2VwdHsKICAgIGNvZGluZzogT2JzZXJ2YXRpb25MYWJDb2RpbmcoYy5jb2RpbmcpLAogICAgdGV4dDogYy50ZXh0CiAgfQoKZGVmaW5lIGZ1bmN0aW9uIE9ic2VydmF0aW9uTGFiUmVzb3VyY2Uob2JzZXJ2YXRpb24gT2JzZXJ2YXRpb24sIHByb2ZpbGVVUkxzIExpc3Q8RkhJUi5jYW5vbmljYWw+KToKICBvYnNlcnZhdGlvbiBvCiAgcmV0dXJuIE9ic2VydmF0aW9uewogICAgaWQ6IEZISVIuaWQge3ZhbHVlOiAnTENSLScgKyBvLmlkfSwKICAgIG1ldGE6IFNoYXJlZFJlc291cmNlLk1ldGFFbGVtZW50KG8sIHByb2ZpbGVVUkxzKSwKICAgIGV4dGVuc2lvbjogby5leHRlbnNpb24sCiAgICBiYXNlZE9uOiBvLmJhc2VkT24sCiAgICBwYXJ0T2Y6IG8ucGFydE9mLAogICAgc3RhdHVzOiBvLnN0YXR1cywKICAgIGNhdGVnb3J5OiBPYnNlcnZhdGlvbkxhYkNhdGVnb3J5KG8uY2F0ZWdvcnkpLAogICAgY29kZTogby5jb2RlLAogICAgc3ViamVjdDogby5zdWJqZWN0LAogICAgZm9jdXM6IG8uZm9jdXMsCiAgICBlbmNvdW50ZXI6IG8uZW5jb3VudGVyLAogICAgZWZmZWN0aXZlOiBvLmVmZmVjdGl2ZSwKICAgIGlzc3VlZDogby5pc3N1ZWQsCiAgICBwZXJmb3JtZXI6IG8ucGVyZm9ybWVyLAogICAgdmFsdWU6IG8udmFsdWUsCiAgICBkYXRhQWJzZW50UmVhc29uOiBvLmRhdGFBYnNlbnRSZWFzb24sCiAgICBpbnRlcnByZXRhdGlvbjogby5pbnRlcnByZXRhdGlvbiwKICAgIG5vdGU6IG8ubm90ZSwKICAgIGJvZHlTaXRlOiBvLmJvZHlTaXRlLAogICAgbWV0aG9kOiBvLm1ldGhvZCwKICAgIHNwZWNpbWVuOiBvLnNwZWNpbWVuLAogICAgZGV2aWNlOiBvLmRldmljZSwKICAgIHJlZmVyZW5jZVJhbmdlOiBTaGFyZWRSZXNvdXJjZS5PYnNlcnZhdGlvblJlZmVyZW5jZVJhbmdlKG8ucmVmZXJlbmNlUmFuZ2UpLAogICAgaGFzTWVtYmVyOiBvLmhhc01lbWJlciwKICAgIGRlcml2ZWRGcm9tOiBvLmRlcml2ZWRGcm9tLAogICAgY29tcG9uZW50OiBTaGFyZWRSZXNvdXJjZS5PYnNlcnZhdGlvbkNvbXBvbmVudChvLmNvbXBvbmVudCkKICB9CgpkZWZpbmUgZnVuY3Rpb24gIkdldFBhdGllbnRFeHRlbnNpb25zIihkb21haW5SZXNvdXJjZSBEb21haW5SZXNvdXJjZSk6CiAgZG9tYWluUmVzb3VyY2UuZXh0ZW5zaW9uIEUKICB3aGVyZSBFLnVybC52YWx1ZSA9ICdodHRwOi8vaGw3Lm9yZy9maGlyL3VzL2NvcmUvU3RydWN0dXJlRGVmaW5pdGlvbi91cy1jb3JlLXJhY2UnCiAgICBvciBFLnVybC52YWx1ZSA9ICdodHRwOi8vaGw3Lm9yZy9maGlyL3VzL2NvcmUvU3RydWN0dXJlRGVmaW5pdGlvbi91cy1jb3JlLWV0aG5pY2l0eScKICAgIG9yIEUudXJsLnZhbHVlID0gJ2h0dHA6Ly9obDcub3JnL2ZoaXIvdXMvY29yZS9TdHJ1Y3R1cmVEZWZpbml0aW9uL3VzLWNvcmUtdHJpYmFsLWFmZmlsaWF0aW9uJwogICAgb3IgRS51cmwudmFsdWUgPSAnaHR0cDovL2hsNy5vcmcvZmhpci91cy9jb3JlL1N0cnVjdHVyZURlZmluaXRpb24vdXMtY29yZS1iaXJ0aHNleCcKICAgIG9yIEUudXJsLnZhbHVlID0gJ2h0dHA6Ly9obDcub3JnL2ZoaXIvdXMvY29yZS9TdHJ1Y3R1cmVEZWZpbml0aW9uL3VzLWNvcmUtc2V4JwogIHJldHVybiBFCgpkZWZpbmUgZnVuY3Rpb24gUGF0aWVudExpbmsobGluayBMaXN0PEZISVIuUGF0aWVudC5MaW5rPik6CiAgbGluayBsCiAgcmV0dXJuIEZISVIuUGF0aWVudC5MaW5rewogICAgaWQ6IGwuaWQsCiAgICBvdGhlcjogbC5vdGhlciwKICAgIHR5cGU6IGwudHlwZQogIH0KCmRlZmluZSBmdW5jdGlvbiBQYXRpZW50UmVzb3VyY2UocGF0aWVudCBQYXRpZW50LCBwcm9maWxlVVJMcyBMaXN0PEZISVIuY2Fub25pY2FsPik6CiAgcGF0aWVudCBwCiAgcmV0dXJuIFBhdGllbnR7CiAgICBpZDogRkhJUi5pZHt2YWx1ZTogJ0xDUi0nICsgcC5pZH0sCiAgICBtZXRhOiBTaGFyZWRSZXNvdXJjZS5NZXRhRWxlbWVudChwLCBwcm9maWxlVVJMcyksCiAgICBleHRlbnNpb246IEdldFBhdGllbnRFeHRlbnNpb25zKHApLAogICAgaWRlbnRpZmllcjogcC5pZGVudGlmaWVyLAogICAgYWN0aXZlOiBwLmFjdGl2ZSwKICAgIG5hbWU6IFNoYXJlZFJlc291cmNlLlBhdGllbnROYW1lKHAubmFtZSksCiAgICB0ZWxlY29tOiBTaGFyZWRSZXNvdXJjZS5QYXRpZW50VGVsZWNvbShwLnRlbGVjb20pLAogICAgZ2VuZGVyOiBwLmdlbmRlciwKICAgIGJpcnRoRGF0ZTogcC5iaXJ0aERhdGUsCiAgICBkZWNlYXNlZDogcC5kZWNlYXNlZCwKICAgIGFkZHJlc3M6IFNoYXJlZFJlc291cmNlLlBhdGllbnRBZGRyZXNzKHAuYWRkcmVzcyksCiAgICBtYXJpdGFsU3RhdHVzOiBwLm1hcml0YWxTdGF0dXMsCiAgICBtdWx0aXBsZUJpcnRoOiBwLm11bHRpcGxlQmlydGgsCiAgICBwaG90bzogcC5waG90bywKICAgIGNvbnRhY3Q6IFNoYXJlZFJlc291cmNlLlBhdGllbnRDb250YWN0KHAuY29udGFjdCksCiAgICBjb21tdW5pY2F0aW9uOiBTaGFyZWRSZXNvdXJjZS5QYXRpZW50Q29tbXVuaWNhdGlvbihwLmNvbW11bmljYXRpb24pLAogICAgZ2VuZXJhbFByYWN0aXRpb25lcjogcC5nZW5lcmFsUHJhY3RpdGlvbmVyLAogICAgbWFuYWdpbmdPcmdhbml6YXRpb246IHAubWFuYWdpbmdPcmdhbml6YXRpb24sCiAgICBsaW5rOiBQYXRpZW50TGluayhwLmxpbmspCiAgfQ=="/>
<url
value="http://www.cdc.gov/nhsn/fhirportal/dqm/ig/Library-NHSNLongTermCareMonthlyInitialPopulation.cql"/>
</content>
</Library>