Draft dQM CMS Content Implementation Guide
2025.1.0 - CI Build
Draft dQM CMS Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2025.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/dqm-content-cms-2025/ and changes regularly. See the Directory of published versions
| Active as of 2025-08-25 |
{
"resourceType" : "Library",
"id" : "PCMaternal",
"meta" : {
"profile" : [
🔗 "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"🔗 ,
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-computablelibrary"🔗 ,
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"🔗 ,
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-executablelibrary"🔗 ,
"http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"🔗 ,
"http://hl7.org/fhir/uv/cql/StructureDefinition/elm-json-library"🔗 ,
"http://hl7.org/fhir/uv/cql/StructureDefinition/elm-xml-library"
]
},
"language" : "en",
"text" : {
"status" : "extensions",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\">\n <table class=\"narrative-table\">\n <tbody>\n<tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"metadata\"> </a>Metadata</th>\n\n\n</tr>\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Title</th>\n\n\n\n<td class=\"content-container\">PCMaternal</td>\n\n\n</tr>\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Version</th>\n\n\n\n<td class=\"content-container\">6.1.000</td>\n\n\n</tr>\n\n\n\n\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Identifier</th>\n\n\n\n<td class=\"content-container\">68560e060d70b65363c69eea</td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Topic</th>\n\n\n\n<td class=\"content-container\">FHIR\n</td>\n\n\n</tr>\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Topic</th>\n\n\n\n<td class=\"content-container\">CQL\n</td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Steward (Publisher)</th>\n\n\n\n<td class=\"content-container\">The Joint Commission</td>\n\n\n</tr>\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Description</th>\n\n\n\n<td class=\"content-container\"><div><p>This library specifies common data elements used by PC01, PC02, PC07.</p>\n</div></td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Type</th>\n\n\n\n<td class=\"content-container\">\n <a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a>#logic-library\n\n\n</td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"parameters\"> </a>Parameters</th>\n\n\n</tr>\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Parameter</th>\n\n\n\n<td class=\"content-container\">None</td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Library Content</th>\n\n\n</tr>\n \n \n <tr>\n <th scope=\"row\" class=\"row-header\">CQL Content</th>\n <td>\n <a name=\"cql-content\"> </a>\n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\nNOTE: For use by March 2026 US Realm Connectathon participants for internal use only. Not for use or distribution in commercial products.\n*/\nlibrary PCMaternal version '6.1.000'\n\nusing USQualityCore version '0.1.0-cibuild'\nusing USCore version '6.1.0-derived'\nusing FHIR version '4.0.1'\n\ninclude hl7.fhir.uv.cql.FHIRHelpers version '4.0.1' called FHIRHelpers\ninclude hl7.fhir.uv.cql.FHIRCommon version '2.0.0' called FHIRCommon\ninclude hl7.fhir.us.cql.USCoreCommon version '2.0.0-ballot' called USCoreCommon\ninclude hl7.fhir.us.cql.USCoreElements version '2.0.0-ballot' called USCoreElements\n\ninclude USQualityCoreCommon version '0.1.0-cibuild' called USQualityCoreCommon\ninclude CQMCommon version '5.1.000' called CQMCommon\n\ncodesystem "LOINC": 'http://loinc.org' \n\nvalueset "Delivery Procedures": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1045.59' \nvalueset "ED Visit and OB Triage": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1029.369' \nvalueset "Encounter Inpatient": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307' \nvalueset "Estimated Gestational Age at Delivery": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1045.26' \nvalueset "Observation Services": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1111.143' \n\ncode "Date and time of obstetric delivery": '93857-1' from "LOINC" display 'Date and time of obstetric delivery'\ncode "Delivery date Estimated": '11778-8' from "LOINC" display 'Delivery date Estimated'\n\nparameter "Measurement Period" Interval<DateTime>\n default Interval[@2026-01-01T00:00:00.000Z, @2027-01-01T00:00:00.000Z)\n\ncontext Patient\n\ndefine "Delivery Encounter With Age Range":\n "Encounter With Age Range" EncounterWithAge\n with ["Procedure": "Delivery Procedures"] DeliveryProcedure\n such that DeliveryProcedure.status = 'completed'\n and DeliveryProcedure.performed.toInterval ( ) starts during EncounterWithAge.hospitalizationWithEDOBTriageObservation ()\n\ndefine "Encounter With Age Range":\n CQMCommon."Inpatient Encounter" InpatientEncounter\n where AgeInYearsAt(date from start of InpatientEncounter.period) in Interval[ 8, 65 )\n \n\ndefine "Variable Calculated Gestational Age":\n "Delivery Encounter With Age Range" DeliveryEncounter\n let CGA: DeliveryEncounter.calculatedGestationalAge()\n return {\n EncounterID: DeliveryEncounter.id,\n CalculatedCGA: CGA\n }\n\ndefine fluent function calculatedGestationalAge (TheEncounter Encounter ):\n //Gestational Age = (280 -(Estimated Delivery Date minus Reference Date/Delivery Date))/7\n ( 280 - ( difference in days between TheEncounter.lastTimeOfDelivery () and TheEncounter.lastEstimatedDeliveryDate( )) ) div 7\n\n \n \ndefine fluent function hospitalizationWithEDOBTriageObservation (TheEncounter Encounter ):\n /*hospitalizationWithEDOBTriageObservation returns the total interval from the start of any immediately prior emergency department visit or OB Triage visit through the observation visit to the discharge of the given encounter*/\n TheEncounter Visit\n let ObsVisit: Last(["Encounter": "Observation Services"] LastObs\n where LastObs.period ends 1 hour or less on or before start of Visit.period\n and LastObs.status = 'finished'\n sort by \n end of period\n ),\n VisitStart: Coalesce(start of ObsVisit.period, start of Visit.period),\n EDOBTriageVisit: Last(["Encounter": "ED Visit and OB Triage"] LastEDOBTriage\n where LastEDOBTriage.period ends 1 hour or less on or before VisitStart\n and LastEDOBTriage.status = 'finished'\n sort by \n end of period\n )\n return Interval[Coalesce(start of EDOBTriageVisit.period, VisitStart), \n end of Visit.period]\n \n\ndefine fluent function lastEstimatedDeliveryDate (TheEncounter Encounter ):\n /*This function identifies the last time the EDD was assessed 42 weeks or less prior to or on delivery and stores the result of that assessment.*/\n Last(["SimpleObservation": "Delivery date Estimated"] EstimatedDateOfDelivery\n where EstimatedDateOfDelivery.value as FHIR.dateTime is not null\n and EstimatedDateOfDelivery.status in { 'final', 'amended', 'corrected' }\n and EstimatedDateOfDelivery.effective.earliest ( ) 42 weeks or less before or on TheEncounter.lastTimeOfDelivery ()\n sort by effective.earliest ( )\n ).value as FHIR.dateTime\n\n\n define fluent function lastEstimatedGestationalAge (TheEncounter Encounter ):\n Last(["SimpleObservation": "Estimated Gestational Age at Delivery"] EstimatedGestationalAge\n let EGATiming: EstimatedGestationalAge.effective.earliest() where \n (EGATiming 24 hours or less before or on TheEncounter.lastTimeOfDelivery () \n and EstimatedGestationalAge.value is not null \n and EstimatedGestationalAge.status in { 'final', 'amended', 'corrected' }) or \n (EGATiming same day as TheEncounter.lastTimeOfDelivery () \n and EGATiming during TheEncounter.hospitalizationWithEDOBTriageObservation() \n and EstimatedGestationalAge.value is not null)\n sort by effective.earliest ())\n .value as Quantity\n\ndefine fluent function lastTimeOfDelivery (TheEncounter Encounter ):\n Last(["SimpleObservation": "Date and time of obstetric delivery"] TimeOfDelivery\n where TimeOfDelivery.value as FHIR.dateTime is not null\n and TimeOfDelivery.status in { 'final', 'amended', 'corrected' }\n and TimeOfDelivery.effective.earliest () during TheEncounter.hospitalizationWithEDOBTriageObservation ()\n and TimeOfDelivery.value as FHIR.dateTime during TheEncounter.hospitalizationWithEDOBTriageObservation()\n sort by effective.earliest()\n ).value as FHIR.dateTime</code></pre>\n </td>\n </tr>\n \n \n\n\n\n<tr>\n <th colspan=\"2\" scope=\"row\" class=\"row-header\">Generated using version 0.5.6 of the sample-content-ig Liquid templates</th>\n</tr>\n\n </tbody>\n </table>\n</div>"
},
"extension" : [
{
"url" : "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-softwaresystem",
"valueReference" : {
"reference" : "Device/cqf-tooling"
}
}
],
"url" : "https://madie.cms.gov/Library/PCMaternal",
"identifier" : [
{
"use" : "official",
"system" : "https://madie.cms.gov/login",
"value" : "68560e060d70b65363c69eea"
}
],
"version" : "6.1.000",
"name" : "PCMaternal",
"title" : "PCMaternal",
"status" : "active",
"experimental" : false,
"type" : {
"coding" : [
{
"system" : "http://terminology.hl7.org/CodeSystem/library-type",
"code" : "logic-library"
}
]
},
"date" : "2025-08-25T14:51:15+00:00",
"publisher" : "The Joint Commission",
"description" : "This library specifies common data elements used by PC01, PC02, PC07.",
"topic" : [
{
"text" : "FHIR"
},
{
"text" : "CQL"
}
],
"content" : [
{
"contentType" : "text/cql",
"data" : "LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBQQ01hdGVybmFsIHZlcnNpb24gJzYuMS4wMDAnCgp1c2luZyBVU1F1YWxpdHlDb3JlIHZlcnNpb24gJzAuMS4wLWNpYnVpbGQnCnVzaW5nIFVTQ29yZSB2ZXJzaW9uICc2LjEuMC1kZXJpdmVkJwp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBobDcuZmhpci51di5jcWwuRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnIGNhbGxlZCBGSElSSGVscGVycwppbmNsdWRlIGhsNy5maGlyLnV2LmNxbC5GSElSQ29tbW9uIHZlcnNpb24gJzIuMC4wJyBjYWxsZWQgRkhJUkNvbW1vbgppbmNsdWRlIGhsNy5maGlyLnVzLmNxbC5VU0NvcmVDb21tb24gdmVyc2lvbiAnMi4wLjAtYmFsbG90JyBjYWxsZWQgVVNDb3JlQ29tbW9uCmluY2x1ZGUgaGw3LmZoaXIudXMuY3FsLlVTQ29yZUVsZW1lbnRzIHZlcnNpb24gJzIuMC4wLWJhbGxvdCcgY2FsbGVkIFVTQ29yZUVsZW1lbnRzCgppbmNsdWRlIFVTUXVhbGl0eUNvcmVDb21tb24gdmVyc2lvbiAnMC4xLjAtY2lidWlsZCcgY2FsbGVkIFVTUXVhbGl0eUNvcmVDb21tb24KaW5jbHVkZSBDUU1Db21tb24gdmVyc2lvbiAnNS4xLjAwMCcgY2FsbGVkIENRTUNvbW1vbgoKY29kZXN5c3RlbSAiTE9JTkMiOiAnaHR0cDovL2xvaW5jLm9yZycgCgp2YWx1ZXNldCAiRGVsaXZlcnkgUHJvY2VkdXJlcyI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEwNDUuNTknIAp2YWx1ZXNldCAiRUQgVmlzaXQgYW5kIE9CIFRyaWFnZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEwMjkuMzY5JyAKdmFsdWVzZXQgIkVuY291bnRlciBJbnBhdGllbnQiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNjY2LjUuMzA3JyAKdmFsdWVzZXQgIkVzdGltYXRlZCBHZXN0YXRpb25hbCBBZ2UgYXQgRGVsaXZlcnkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzNzYyLjEuNC4xMDQ1LjI2JyAKdmFsdWVzZXQgIk9ic2VydmF0aW9uIFNlcnZpY2VzIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzc2Mi4xLjQuMTExMS4xNDMnIAoKY29kZSAiRGF0ZSBhbmQgdGltZSBvZiBvYnN0ZXRyaWMgZGVsaXZlcnkiOiAnOTM4NTctMScgZnJvbSAiTE9JTkMiIGRpc3BsYXkgJ0RhdGUgYW5kIHRpbWUgb2Ygb2JzdGV0cmljIGRlbGl2ZXJ5Jwpjb2RlICJEZWxpdmVyeSBkYXRlIEVzdGltYXRlZCI6ICcxMTc3OC04JyBmcm9tICJMT0lOQyIgZGlzcGxheSAnRGVsaXZlcnkgZGF0ZSBFc3RpbWF0ZWQnCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZVRpbWU+CiAgZGVmYXVsdCBJbnRlcnZhbFtAMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaLCBAMjAyNy0wMS0wMVQwMDowMDowMC4wMDBaKQoKY29udGV4dCBQYXRpZW50CgpkZWZpbmUgIkRlbGl2ZXJ5IEVuY291bnRlciBXaXRoIEFnZSBSYW5nZSI6CiAgIkVuY291bnRlciBXaXRoIEFnZSBSYW5nZSIgRW5jb3VudGVyV2l0aEFnZQogICAgd2l0aCBbIlByb2NlZHVyZSI6ICJEZWxpdmVyeSBQcm9jZWR1cmVzIl0gRGVsaXZlcnlQcm9jZWR1cmUKICAgICAgc3VjaCB0aGF0IERlbGl2ZXJ5UHJvY2VkdXJlLnN0YXR1cyA9ICdjb21wbGV0ZWQnCiAgICAgICAgYW5kIERlbGl2ZXJ5UHJvY2VkdXJlLnBlcmZvcm1lZC50b0ludGVydmFsICAoICkgc3RhcnRzIGR1cmluZyBFbmNvdW50ZXJXaXRoQWdlLmhvc3BpdGFsaXphdGlvbldpdGhFRE9CVHJpYWdlT2JzZXJ2YXRpb24gKCkKCmRlZmluZSAiRW5jb3VudGVyIFdpdGggQWdlIFJhbmdlIjoKICBDUU1Db21tb24uIklucGF0aWVudCBFbmNvdW50ZXIiIElucGF0aWVudEVuY291bnRlcgogICAgd2hlcmUgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBzdGFydCBvZiBJbnBhdGllbnRFbmNvdW50ZXIucGVyaW9kKSBpbiBJbnRlcnZhbFsgOCwgNjUgKQogICAgICAgICAgICAgICAgICAKCmRlZmluZSAiVmFyaWFibGUgQ2FsY3VsYXRlZCBHZXN0YXRpb25hbCBBZ2UiOgogIkRlbGl2ZXJ5IEVuY291bnRlciBXaXRoIEFnZSBSYW5nZSIgRGVsaXZlcnlFbmNvdW50ZXIKICAgIGxldCBDR0E6IERlbGl2ZXJ5RW5jb3VudGVyLmNhbGN1bGF0ZWRHZXN0YXRpb25hbEFnZSgpCiAgICByZXR1cm4gewogICAgICBFbmNvdW50ZXJJRDogRGVsaXZlcnlFbmNvdW50ZXIuaWQsCiAgICAgIENhbGN1bGF0ZWRDR0E6IENHQQogICAgfQoKZGVmaW5lIGZsdWVudCBmdW5jdGlvbiBjYWxjdWxhdGVkR2VzdGF0aW9uYWxBZ2UgKFRoZUVuY291bnRlciBFbmNvdW50ZXIgKToKICAvL0dlc3RhdGlvbmFsIEFnZSA9ICgyODAgLShFc3RpbWF0ZWQgRGVsaXZlcnkgRGF0ZSBtaW51cyBSZWZlcmVuY2UgRGF0ZS9EZWxpdmVyeSBEYXRlKSkvNwogKCAyODAgLSAoIGRpZmZlcmVuY2UgaW4gZGF5cyBiZXR3ZWVuIFRoZUVuY291bnRlci5sYXN0VGltZU9mRGVsaXZlcnkgKCkgYW5kIFRoZUVuY291bnRlci5sYXN0RXN0aW1hdGVkRGVsaXZlcnlEYXRlKCApKSApIGRpdiA3CgogICAgCiAgICAKZGVmaW5lIGZsdWVudCBmdW5jdGlvbiBob3NwaXRhbGl6YXRpb25XaXRoRURPQlRyaWFnZU9ic2VydmF0aW9uIChUaGVFbmNvdW50ZXIgRW5jb3VudGVyICk6CiAgLypob3NwaXRhbGl6YXRpb25XaXRoRURPQlRyaWFnZU9ic2VydmF0aW9uIHJldHVybnMgdGhlIHRvdGFsIGludGVydmFsIGZyb20gdGhlIHN0YXJ0IG9mIGFueSBpbW1lZGlhdGVseSBwcmlvciBlbWVyZ2VuY3kgZGVwYXJ0bWVudCB2aXNpdCBvciBPQiBUcmlhZ2UgdmlzaXQgdGhyb3VnaCB0aGUgb2JzZXJ2YXRpb24gdmlzaXQgdG8gdGhlIGRpc2NoYXJnZSBvZiB0aGUgZ2l2ZW4gZW5jb3VudGVyKi8KICBUaGVFbmNvdW50ZXIgVmlzaXQKICAgIGxldCBPYnNWaXNpdDogTGFzdChbIkVuY291bnRlciI6ICJPYnNlcnZhdGlvbiBTZXJ2aWNlcyJdIExhc3RPYnMKICAgICAgICB3aGVyZSBMYXN0T2JzLnBlcmlvZCBlbmRzIDEgaG91ciBvciBsZXNzIG9uIG9yIGJlZm9yZSBzdGFydCBvZiBWaXNpdC5wZXJpb2QKICAgICAgICAgIGFuZCBMYXN0T2JzLnN0YXR1cyA9ICdmaW5pc2hlZCcKICAgICAgICBzb3J0IGJ5IAogICAgICAgIGVuZCBvZiBwZXJpb2QKICAgICksCiAgICBWaXNpdFN0YXJ0OiBDb2FsZXNjZShzdGFydCBvZiBPYnNWaXNpdC5wZXJpb2QsIHN0YXJ0IG9mIFZpc2l0LnBlcmlvZCksCiAgICBFRE9CVHJpYWdlVmlzaXQ6IExhc3QoWyJFbmNvdW50ZXIiOiAiRUQgVmlzaXQgYW5kIE9CIFRyaWFnZSJdIExhc3RFRE9CVHJpYWdlCiAgICAgICAgd2hlcmUgTGFzdEVET0JUcmlhZ2UucGVyaW9kIGVuZHMgMSBob3VyIG9yIGxlc3Mgb24gb3IgYmVmb3JlIFZpc2l0U3RhcnQKICAgICAgICAgIGFuZCBMYXN0RURPQlRyaWFnZS5zdGF0dXMgPSAnZmluaXNoZWQnCiAgICAgICAgc29ydCBieSAKICAgICAgICBlbmQgb2YgcGVyaW9kCiAgICApCiAgICByZXR1cm4gSW50ZXJ2YWxbQ29hbGVzY2Uoc3RhcnQgb2YgRURPQlRyaWFnZVZpc2l0LnBlcmlvZCwgVmlzaXRTdGFydCksIAogICAgZW5kIG9mIFZpc2l0LnBlcmlvZF0KICAKCmRlZmluZSBmbHVlbnQgZnVuY3Rpb24gbGFzdEVzdGltYXRlZERlbGl2ZXJ5RGF0ZSAoVGhlRW5jb3VudGVyIEVuY291bnRlciApOgogIC8qVGhpcyBmdW5jdGlvbiBpZGVudGlmaWVzIHRoZSBsYXN0IHRpbWUgdGhlIEVERCB3YXMgYXNzZXNzZWQgNDIgd2Vla3Mgb3IgbGVzcyBwcmlvciB0byBvciBvbiBkZWxpdmVyeSBhbmQgc3RvcmVzIHRoZSByZXN1bHQgb2YgdGhhdCBhc3Nlc3NtZW50LiovCiAgTGFzdChbIlNpbXBsZU9ic2VydmF0aW9uIjogIkRlbGl2ZXJ5IGRhdGUgRXN0aW1hdGVkIl0gRXN0aW1hdGVkRGF0ZU9mRGVsaXZlcnkKICAgICAgd2hlcmUgRXN0aW1hdGVkRGF0ZU9mRGVsaXZlcnkudmFsdWUgYXMgRkhJUi5kYXRlVGltZSBpcyBub3QgbnVsbAogICAgICAgIGFuZCBFc3RpbWF0ZWREYXRlT2ZEZWxpdmVyeS5zdGF0dXMgaW4geyAnZmluYWwnLCAnYW1lbmRlZCcsICdjb3JyZWN0ZWQnIH0KICAgICAgICBhbmQgRXN0aW1hdGVkRGF0ZU9mRGVsaXZlcnkuZWZmZWN0aXZlLmVhcmxpZXN0ICggKSA0MiB3ZWVrcyBvciBsZXNzIGJlZm9yZSBvciBvbiBUaGVFbmNvdW50ZXIubGFzdFRpbWVPZkRlbGl2ZXJ5ICgpCiAgICAgIHNvcnQgYnkgZWZmZWN0aXZlLmVhcmxpZXN0ICggKQogICkudmFsdWUgYXMgRkhJUi5kYXRlVGltZQoKCiAgZGVmaW5lIGZsdWVudCBmdW5jdGlvbiBsYXN0RXN0aW1hdGVkR2VzdGF0aW9uYWxBZ2UgKFRoZUVuY291bnRlciBFbmNvdW50ZXIgKToKICBMYXN0KFsiU2ltcGxlT2JzZXJ2YXRpb24iOiAiRXN0aW1hdGVkIEdlc3RhdGlvbmFsIEFnZSBhdCBEZWxpdmVyeSJdIEVzdGltYXRlZEdlc3RhdGlvbmFsQWdlCiAgbGV0IEVHQVRpbWluZzogIEVzdGltYXRlZEdlc3RhdGlvbmFsQWdlLmVmZmVjdGl2ZS5lYXJsaWVzdCgpIHdoZXJlIAogIChFR0FUaW1pbmcgMjQgaG91cnMgb3IgbGVzcyBiZWZvcmUgb3Igb24gVGhlRW5jb3VudGVyLmxhc3RUaW1lT2ZEZWxpdmVyeSAoKSAKICBhbmQgRXN0aW1hdGVkR2VzdGF0aW9uYWxBZ2UudmFsdWUgaXMgbm90IG51bGwgCiAgYW5kIEVzdGltYXRlZEdlc3RhdGlvbmFsQWdlLnN0YXR1cyBpbiB7ICdmaW5hbCcsICdhbWVuZGVkJywgJ2NvcnJlY3RlZCcgfSkgb3IgCiAgICAgIChFR0FUaW1pbmcgc2FtZSBkYXkgYXMgVGhlRW5jb3VudGVyLmxhc3RUaW1lT2ZEZWxpdmVyeSAoKSAKICAgICAgYW5kIEVHQVRpbWluZyBkdXJpbmcgVGhlRW5jb3VudGVyLmhvc3BpdGFsaXphdGlvbldpdGhFRE9CVHJpYWdlT2JzZXJ2YXRpb24oKSAKICAgICAgYW5kIEVzdGltYXRlZEdlc3RhdGlvbmFsQWdlLnZhbHVlIGlzIG5vdCBudWxsKQogc29ydCBieSBlZmZlY3RpdmUuZWFybGllc3QgKCkpCiAgICAgICAgIC52YWx1ZSBhcyBRdWFudGl0eQoKZGVmaW5lIGZsdWVudCBmdW5jdGlvbiBsYXN0VGltZU9mRGVsaXZlcnkgKFRoZUVuY291bnRlciBFbmNvdW50ZXIgKToKICBMYXN0KFsiU2ltcGxlT2JzZXJ2YXRpb24iOiAiRGF0ZSBhbmQgdGltZSBvZiBvYnN0ZXRyaWMgZGVsaXZlcnkiXSBUaW1lT2ZEZWxpdmVyeQogICAgICB3aGVyZSBUaW1lT2ZEZWxpdmVyeS52YWx1ZSBhcyBGSElSLmRhdGVUaW1lIGlzIG5vdCBudWxsCiAgICAgICAgYW5kIFRpbWVPZkRlbGl2ZXJ5LnN0YXR1cyBpbiB7ICdmaW5hbCcsICdhbWVuZGVkJywgJ2NvcnJlY3RlZCcgfQogICAgICAgIGFuZCBUaW1lT2ZEZWxpdmVyeS5lZmZlY3RpdmUuZWFybGllc3QgKCkgZHVyaW5nIFRoZUVuY291bnRlci5ob3NwaXRhbGl6YXRpb25XaXRoRURPQlRyaWFnZU9ic2VydmF0aW9uICgpCiAgICAgICAgYW5kIFRpbWVPZkRlbGl2ZXJ5LnZhbHVlIGFzIEZISVIuZGF0ZVRpbWUgZHVyaW5nIFRoZUVuY291bnRlci5ob3NwaXRhbGl6YXRpb25XaXRoRURPQlRyaWFnZU9ic2VydmF0aW9uKCkKICAgICAgc29ydCBieSBlZmZlY3RpdmUuZWFybGllc3QoKQogICkudmFsdWUgYXMgRkhJUi5kYXRlVGltZQ==",
"url" : "https://madie.cms.gov/Library-PCMaternal.cql"
}
]
}