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

: PCMaternal - JSON Representation

Active as of 2025-08-25

Raw json | Download

{
  "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 &quot;LOINC&quot;: 'http://loinc.org' \n\nvalueset &quot;Delivery Procedures&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1045.59' \nvalueset &quot;ED Visit and OB Triage&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1029.369' \nvalueset &quot;Encounter Inpatient&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307' \nvalueset &quot;Estimated Gestational Age at Delivery&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1045.26' \nvalueset &quot;Observation Services&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1111.143' \n\ncode &quot;Date and time of obstetric delivery&quot;: '93857-1' from &quot;LOINC&quot; display 'Date and time of obstetric delivery'\ncode &quot;Delivery date Estimated&quot;: '11778-8' from &quot;LOINC&quot; display 'Delivery date Estimated'\n\nparameter &quot;Measurement Period&quot; Interval&lt;DateTime&gt;\n  default Interval[@2026-01-01T00:00:00.000Z, @2027-01-01T00:00:00.000Z)\n\ncontext Patient\n\ndefine &quot;Delivery Encounter With Age Range&quot;:\n  &quot;Encounter With Age Range&quot; EncounterWithAge\n    with [&quot;Procedure&quot;: &quot;Delivery Procedures&quot;] DeliveryProcedure\n      such that DeliveryProcedure.status = 'completed'\n        and DeliveryProcedure.performed.toInterval  ( ) starts during EncounterWithAge.hospitalizationWithEDOBTriageObservation ()\n\ndefine &quot;Encounter With Age Range&quot;:\n  CQMCommon.&quot;Inpatient Encounter&quot; InpatientEncounter\n    where AgeInYearsAt(date from start of InpatientEncounter.period) in Interval[ 8, 65 )\n                  \n\ndefine &quot;Variable Calculated Gestational Age&quot;:\n &quot;Delivery Encounter With Age Range&quot; 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([&quot;Encounter&quot;: &quot;Observation Services&quot;] 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([&quot;Encounter&quot;: &quot;ED Visit and OB Triage&quot;] 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([&quot;SimpleObservation&quot;: &quot;Delivery date Estimated&quot;] 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([&quot;SimpleObservation&quot;: &quot;Estimated Gestational Age at Delivery&quot;] 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([&quot;SimpleObservation&quot;: &quot;Date and time of obstetric delivery&quot;] 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"
    }
  ]
}