{
  "resourceType" : "Library",
  "id" : "CMS71FHIRSTKAnticoagAFFlutter",
  "text" : {
    "status" : "extensions",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\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\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\">1.1.000</td>\n\n\n</tr>\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\">Status</th>\n\n\n\n<td class=\"content-container\">Draft</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\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\">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 CMS71FHIRSTKAnticoagAFFlutter version '1.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 CQMCommon version '5.1.000' called CQMCommon\ninclude USQualityCoreCommon version '0.1.0-cibuild' called USQualityCoreCommon\ninclude SupplementalDataElements version '6.1.000' called SDE\ninclude Status version '2.1.000' called Status\n\ninclude TJCOverall version '9.1.000' called TJC\n\nvalueset &quot;Anticoagulant Therapy&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.200'\nvalueset &quot;Atrial Ablation&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.203'\nvalueset &quot;Atrial Fibrillation or Flutter&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.202'\nvalueset &quot;Discharge To Acute Care Facility&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.87'\nvalueset &quot;Discharged to Health Care Facility for Hospice Care&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.207'\nvalueset &quot;Discharged to Home for Hospice Care&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.209'\nvalueset &quot;History of Atrial Ablation&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1110.76'\nvalueset &quot;Left Against Medical Advice&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.308'\nvalueset &quot;Medical Reason For Not Providing Treatment&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.473'\nvalueset &quot;Patient Expired&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.309'\nvalueset &quot;Patient Refusal&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.93'\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;Initial Population&quot;:\n  TJC.&quot;Ischemic Stroke Encounter&quot;\n\ndefine &quot;Denominator&quot;:\n  &quot;Encounter With A History Of Atrial Ablation&quot;\n    union &quot;Encounter With Prior Or Present Diagnosis Of Atrial Fibrillation Or Flutter&quot;\n\ndefine &quot;Encounter With A History Of Atrial Ablation&quot;:\n  ( TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n      where exists ( [&quot;Procedure&quot;: &quot;Atrial Ablation&quot;] AtrialAblationProcedure\n          where AtrialAblationProcedure.status = 'completed'\n            and AtrialAblationProcedure.performed.toInterval ( ) starts before start of IschemicStrokeEncounter.period\n      )\n  )\n    union ( TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n        with [&quot;ConditionProblemsHealthConcerns&quot;: &quot;History of Atrial Ablation&quot;] AtrialAblationDiagnosis\n          such that AtrialAblationDiagnosis.verificationStatus is not null implies ( AtrialAblationDiagnosis.verificationStatus !~ Status.&quot;refuted&quot;\n              and AtrialAblationDiagnosis.verificationStatus !~ Status.&quot;entered-in-error&quot;\n          )\n            and AtrialAblationDiagnosis.prevalenceInterval ( ) starts before start of IschemicStrokeEncounter.period\n    )\n    union ( TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n        with [&quot;SimpleObservation&quot;: &quot;History of Atrial Ablation&quot;] AtrialAblationObservation\n          such that AtrialAblationObservation.status in { 'final', 'amended', 'corrected' }\n            and AtrialAblationObservation.effective.earliest ( ) on or before end of IschemicStrokeEncounter.period\n    )\n    union ( TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n        with [&quot;ConditionEncounterDiagnosis&quot;: &quot;History of Atrial Ablation&quot;] AtrialAblationEncDiagnosis\n          such that AtrialAblationEncDiagnosis.verificationStatus is not null implies ( AtrialAblationEncDiagnosis.verificationStatus !~ Status.&quot;refuted&quot;\n              and AtrialAblationEncDiagnosis.verificationStatus !~ Status.&quot;entered-in-error&quot;\n          )\n            and AtrialAblationEncDiagnosis.prevalenceInterval ( ) starts before start of IschemicStrokeEncounter.period\n    )\n\ndefine &quot;Encounter With Prior Or Present Diagnosis Of Atrial Fibrillation Or Flutter&quot;:\n  ( TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n      with [&quot;ConditionProblemsHealthConcerns&quot;: &quot;Atrial Fibrillation or Flutter&quot;] AtrialFibrillationFlutter\n        such that AtrialFibrillationFlutter.verificationStatus is not null implies ( AtrialFibrillationFlutter.verificationStatus !~ Status.&quot;refuted&quot;\n            and AtrialFibrillationFlutter.verificationStatus !~ Status.&quot;entered-in-error&quot;\n        )\n          and AtrialFibrillationFlutter.prevalenceInterval ( ) starts on or before end of IschemicStrokeEncounter.period\n  )\n    union TJC.&quot;Ischemic Stroke Encounter&quot; IschemicStrokeEncounter\n      where exists ( ( IschemicStrokeEncounter.encounterDiagnosis ( ) ) EncounterDiagnosis\n          where EncounterDiagnosis.code in &quot;Atrial Fibrillation or Flutter&quot;\n      )\n\ndefine &quot;Denominator Exclusions&quot;:\n  ( &quot;Denominator&quot; Encounter\n      where Encounter.status = 'finished'\n        and ( Encounter.hospitalization.dischargeDisposition in &quot;Discharge To Acute Care Facility&quot;\n            or Encounter.hospitalization.dischargeDisposition in &quot;Left Against Medical Advice&quot;\n            or Encounter.hospitalization.dischargeDisposition in &quot;Patient Expired&quot;\n            or Encounter.hospitalization.dischargeDisposition in &quot;Discharged to Home for Hospice Care&quot;\n            or Encounter.hospitalization.dischargeDisposition in &quot;Discharged to Health Care Facility for Hospice Care&quot;\n        )\n  )\n    union &quot;Encounter With Comfort Measures During Hospitalization For Patients With Documented Atrial Fibrillation Or Flutter&quot;\n\ndefine &quot;Encounter With Comfort Measures During Hospitalization For Patients With Documented Atrial Fibrillation Or Flutter&quot;:\n  &quot;Denominator&quot; Encounter\n    with TJC.&quot;Intervention Comfort Measures&quot; ComfortMeasure\n      such that Coalesce(start of ComfortMeasure.performed.toInterval(), ComfortMeasure.authoredOn) during Encounter.hospitalizationWithObservation ( )\n\ndefine &quot;Numerator&quot;:\n  &quot;Denominator&quot; Encounter\n    with [&quot;MedicationRequest&quot;: &quot;Anticoagulant Therapy&quot;] DischargeAnticoagulant\n      such that DischargeAnticoagulant.status in { 'active', 'completed' }\n        and DischargeAnticoagulant.intent in { 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order' }\n        and ( DischargeAnticoagulant.isCommunity ( )\n            or DischargeAnticoagulant.isDischarge ( )\n        )\n        and DischargeAnticoagulant.authoredOn during Encounter.period\n        and not exists ( [&quot;TaskRejected&quot;] TaskReject\n            where TaskReject.focus.references ( DischargeAnticoagulant )\n              and TaskReject.code ~ USQualityCoreCommon.&quot;Fulfill&quot;\n        )\n\ndefine &quot;Denominator Exceptions&quot;:\n  &quot;Denominator&quot; Encounter\n    with &quot;Documented Reason For Not Giving Anticoagulant At Discharge&quot; NoDischargeAnticoagulant\n      such that NoDischargeAnticoagulant.authoredOn during Encounter.period\n\ndefine &quot;Documented Reason For Not Giving Anticoagulant At Discharge&quot;:\n  ( [&quot;MedicationNotRequested&quot;: &quot;Anticoagulant Therapy&quot;] NoAnticoagulant\n      where ( NoAnticoagulant.reasonCode in &quot;Medical Reason For Not Providing Treatment&quot;\n          or NoAnticoagulant.reasonCode in &quot;Patient Refusal&quot;\n      )\n        and ( NoAnticoagulant.isCommunity ( )\n            or NoAnticoagulant.isDischarge ( )\n        )\n        and NoAnticoagulant.status in { 'active', 'completed' }\n        and NoAnticoagulant.intent in { 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order' }\n  )\n    union ( [&quot;MedicationRequest&quot;: &quot;Anticoagulant Therapy&quot;] MedReqAntiCoagulant\n        with [&quot;TaskRejected&quot;] TaskReject\n          such that TaskReject.focus.references ( MedReqAntiCoagulant )\n            and ( TaskReject.statusReason in &quot;Medical Reason For Not Providing Treatment&quot;\n                or TaskReject.statusReason in &quot;Patient Refusal&quot;\n            )\n            and MedReqAntiCoagulant.status in { 'active', 'completed' }\n            and TaskReject.code ~ USQualityCoreCommon.&quot;Fulfill&quot;\n    )\n\ndefine &quot;SDE Ethnicity&quot;:\n  SDE.&quot;SDE Ethnicity&quot;\n\ndefine &quot;SDE Payer&quot;:\n  SDE.&quot;SDE Payer&quot;\n\ndefine &quot;SDE Race&quot;:\n  SDE.&quot;SDE Race&quot;\n\ndefine &quot;SDE Sex&quot;:\n  SDE.&quot;SDE Sex&quot;</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/CMS71FHIRSTKAnticoagAFFlutter",
  "version" : "1.1.000",
  "name" : "CMS71FHIRSTKAnticoagAFFlutter",
  "status" : "draft",
  "type" : {
    "coding" : [{
      "system" : "http://terminology.hl7.org/CodeSystem/library-type",
      "code" : "logic-library"
    }]
  },
  "date" : "2026-09-19T16:31:14+00:00",
  "content" : [{
    "contentType" : "text/cql",
    "data" : "LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBDTVM3MUZISVJTVEtBbnRpY29hZ0FGRmx1dHRlciB2ZXJzaW9uICcxLjEuMDAwJwoKdXNpbmcgVVNRdWFsaXR5Q29yZSB2ZXJzaW9uICcwLjEuMC1jaWJ1aWxkJwp1c2luZyBVU0NvcmUgdmVyc2lvbiAnNi4xLjAtZGVyaXZlZCcKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgaGw3LmZoaXIudXYuY3FsLkZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJyBjYWxsZWQgRkhJUkhlbHBlcnMKaW5jbHVkZSBobDcuZmhpci51di5jcWwuRkhJUkNvbW1vbiB2ZXJzaW9uICcyLjAuMCcgY2FsbGVkIEZISVJDb21tb24KaW5jbHVkZSBobDcuZmhpci51cy5jcWwuVVNDb3JlQ29tbW9uIHZlcnNpb24gJzIuMC4wLWJhbGxvdCcgY2FsbGVkIFVTQ29yZUNvbW1vbgppbmNsdWRlIGhsNy5maGlyLnVzLmNxbC5VU0NvcmVFbGVtZW50cyB2ZXJzaW9uICcyLjAuMC1iYWxsb3QnIGNhbGxlZCBVU0NvcmVFbGVtZW50cwoKaW5jbHVkZSBDUU1Db21tb24gdmVyc2lvbiAnNS4xLjAwMCcgY2FsbGVkIENRTUNvbW1vbgppbmNsdWRlIFVTUXVhbGl0eUNvcmVDb21tb24gdmVyc2lvbiAnMC4xLjAtY2lidWlsZCcgY2FsbGVkIFVTUXVhbGl0eUNvcmVDb21tb24KaW5jbHVkZSBTdXBwbGVtZW50YWxEYXRhRWxlbWVudHMgdmVyc2lvbiAnNi4xLjAwMCcgY2FsbGVkIFNERQppbmNsdWRlIFN0YXR1cyB2ZXJzaW9uICcyLjEuMDAwJyBjYWxsZWQgU3RhdHVzCgppbmNsdWRlIFRKQ092ZXJhbGwgdmVyc2lvbiAnOS4xLjAwMCcgY2FsbGVkIFRKQwoKdmFsdWVzZXQgIkFudGljb2FndWxhbnQgVGhlcmFweSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy4xMTcuMS43LjEuMjAwJwp2YWx1ZXNldCAiQXRyaWFsIEFibGF0aW9uIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjExNy4xLjcuMS4yMDMnCnZhbHVlc2V0ICJBdHJpYWwgRmlicmlsbGF0aW9uIG9yIEZsdXR0ZXIiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuMTE3LjEuNy4xLjIwMicKdmFsdWVzZXQgIkRpc2NoYXJnZSBUbyBBY3V0ZSBDYXJlIEZhY2lsaXR5IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjExNy4xLjcuMS44NycKdmFsdWVzZXQgIkRpc2NoYXJnZWQgdG8gSGVhbHRoIENhcmUgRmFjaWxpdHkgZm9yIEhvc3BpY2UgQ2FyZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy4xMTcuMS43LjEuMjA3Jwp2YWx1ZXNldCAiRGlzY2hhcmdlZCB0byBIb21lIGZvciBIb3NwaWNlIENhcmUiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuMTE3LjEuNy4xLjIwOScKdmFsdWVzZXQgIkhpc3Rvcnkgb2YgQXRyaWFsIEFibGF0aW9uIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzc2Mi4xLjQuMTExMC43NicKdmFsdWVzZXQgIkxlZnQgQWdhaW5zdCBNZWRpY2FsIEFkdmljZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy4xMTcuMS43LjEuMzA4Jwp2YWx1ZXNldCAiTWVkaWNhbCBSZWFzb24gRm9yIE5vdCBQcm92aWRpbmcgVHJlYXRtZW50IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjExNy4xLjcuMS40NzMnCnZhbHVlc2V0ICJQYXRpZW50IEV4cGlyZWQiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuMTE3LjEuNy4xLjMwOScKdmFsdWVzZXQgIlBhdGllbnQgUmVmdXNhbCI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy4xMTcuMS43LjEuOTMnCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZVRpbWU+CiAgZGVmYXVsdCBJbnRlcnZhbFtAMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaLCBAMjAyNy0wMS0wMVQwMDowMDowMC4wMDBaKQoKY29udGV4dCBQYXRpZW50CgpkZWZpbmUgIkluaXRpYWwgUG9wdWxhdGlvbiI6CiAgVEpDLiJJc2NoZW1pYyBTdHJva2UgRW5jb3VudGVyIgoKZGVmaW5lICJEZW5vbWluYXRvciI6CiAgIkVuY291bnRlciBXaXRoIEEgSGlzdG9yeSBPZiBBdHJpYWwgQWJsYXRpb24iCiAgICB1bmlvbiAiRW5jb3VudGVyIFdpdGggUHJpb3IgT3IgUHJlc2VudCBEaWFnbm9zaXMgT2YgQXRyaWFsIEZpYnJpbGxhdGlvbiBPciBGbHV0dGVyIgoKZGVmaW5lICJFbmNvdW50ZXIgV2l0aCBBIEhpc3RvcnkgT2YgQXRyaWFsIEFibGF0aW9uIjoKICAoIFRKQy4iSXNjaGVtaWMgU3Ryb2tlIEVuY291bnRlciIgSXNjaGVtaWNTdHJva2VFbmNvdW50ZXIKICAgICAgd2hlcmUgZXhpc3RzICggWyJQcm9jZWR1cmUiOiAiQXRyaWFsIEFibGF0aW9uIl0gQXRyaWFsQWJsYXRpb25Qcm9jZWR1cmUKICAgICAgICAgIHdoZXJlIEF0cmlhbEFibGF0aW9uUHJvY2VkdXJlLnN0YXR1cyA9ICdjb21wbGV0ZWQnCiAgICAgICAgICAgIGFuZCBBdHJpYWxBYmxhdGlvblByb2NlZHVyZS5wZXJmb3JtZWQudG9JbnRlcnZhbCAoICkgc3RhcnRzIGJlZm9yZSBzdGFydCBvZiBJc2NoZW1pY1N0cm9rZUVuY291bnRlci5wZXJpb2QKICAgICAgKQogICkKICAgIHVuaW9uICggVEpDLiJJc2NoZW1pYyBTdHJva2UgRW5jb3VudGVyIiBJc2NoZW1pY1N0cm9rZUVuY291bnRlcgogICAgICAgIHdpdGggWyJDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zIjogIkhpc3Rvcnkgb2YgQXRyaWFsIEFibGF0aW9uIl0gQXRyaWFsQWJsYXRpb25EaWFnbm9zaXMKICAgICAgICAgIHN1Y2ggdGhhdCBBdHJpYWxBYmxhdGlvbkRpYWdub3Npcy52ZXJpZmljYXRpb25TdGF0dXMgaXMgbm90IG51bGwgaW1wbGllcyAoIEF0cmlhbEFibGF0aW9uRGlhZ25vc2lzLnZlcmlmaWNhdGlvblN0YXR1cyAhfiBTdGF0dXMuInJlZnV0ZWQiCiAgICAgICAgICAgICAgYW5kIEF0cmlhbEFibGF0aW9uRGlhZ25vc2lzLnZlcmlmaWNhdGlvblN0YXR1cyAhfiBTdGF0dXMuImVudGVyZWQtaW4tZXJyb3IiCiAgICAgICAgICApCiAgICAgICAgICAgIGFuZCBBdHJpYWxBYmxhdGlvbkRpYWdub3Npcy5wcmV2YWxlbmNlSW50ZXJ2YWwgKCApIHN0YXJ0cyBiZWZvcmUgc3RhcnQgb2YgSXNjaGVtaWNTdHJva2VFbmNvdW50ZXIucGVyaW9kCiAgICApCiAgICB1bmlvbiAoIFRKQy4iSXNjaGVtaWMgU3Ryb2tlIEVuY291bnRlciIgSXNjaGVtaWNTdHJva2VFbmNvdW50ZXIKICAgICAgICB3aXRoIFsiU2ltcGxlT2JzZXJ2YXRpb24iOiAiSGlzdG9yeSBvZiBBdHJpYWwgQWJsYXRpb24iXSBBdHJpYWxBYmxhdGlvbk9ic2VydmF0aW9uCiAgICAgICAgICBzdWNoIHRoYXQgQXRyaWFsQWJsYXRpb25PYnNlcnZhdGlvbi5zdGF0dXMgaW4geyAnZmluYWwnLCAnYW1lbmRlZCcsICdjb3JyZWN0ZWQnIH0KICAgICAgICAgICAgYW5kIEF0cmlhbEFibGF0aW9uT2JzZXJ2YXRpb24uZWZmZWN0aXZlLmVhcmxpZXN0ICggKSBvbiBvciBiZWZvcmUgZW5kIG9mIElzY2hlbWljU3Ryb2tlRW5jb3VudGVyLnBlcmlvZAogICAgKQogICAgdW5pb24gKCBUSkMuIklzY2hlbWljIFN0cm9rZSBFbmNvdW50ZXIiIElzY2hlbWljU3Ryb2tlRW5jb3VudGVyCiAgICAgICAgd2l0aCBbIkNvbmRpdGlvbkVuY291bnRlckRpYWdub3NpcyI6ICJIaXN0b3J5IG9mIEF0cmlhbCBBYmxhdGlvbiJdIEF0cmlhbEFibGF0aW9uRW5jRGlhZ25vc2lzCiAgICAgICAgICBzdWNoIHRoYXQgQXRyaWFsQWJsYXRpb25FbmNEaWFnbm9zaXMudmVyaWZpY2F0aW9uU3RhdHVzIGlzIG5vdCBudWxsIGltcGxpZXMgKCBBdHJpYWxBYmxhdGlvbkVuY0RpYWdub3Npcy52ZXJpZmljYXRpb25TdGF0dXMgIX4gU3RhdHVzLiJyZWZ1dGVkIgogICAgICAgICAgICAgIGFuZCBBdHJpYWxBYmxhdGlvbkVuY0RpYWdub3Npcy52ZXJpZmljYXRpb25TdGF0dXMgIX4gU3RhdHVzLiJlbnRlcmVkLWluLWVycm9yIgogICAgICAgICAgKQogICAgICAgICAgICBhbmQgQXRyaWFsQWJsYXRpb25FbmNEaWFnbm9zaXMucHJldmFsZW5jZUludGVydmFsICggKSBzdGFydHMgYmVmb3JlIHN0YXJ0IG9mIElzY2hlbWljU3Ryb2tlRW5jb3VudGVyLnBlcmlvZAogICAgKQoKZGVmaW5lICJFbmNvdW50ZXIgV2l0aCBQcmlvciBPciBQcmVzZW50IERpYWdub3NpcyBPZiBBdHJpYWwgRmlicmlsbGF0aW9uIE9yIEZsdXR0ZXIiOgogICggVEpDLiJJc2NoZW1pYyBTdHJva2UgRW5jb3VudGVyIiBJc2NoZW1pY1N0cm9rZUVuY291bnRlcgogICAgICB3aXRoIFsiQ29uZGl0aW9uUHJvYmxlbXNIZWFsdGhDb25jZXJucyI6ICJBdHJpYWwgRmlicmlsbGF0aW9uIG9yIEZsdXR0ZXIiXSBBdHJpYWxGaWJyaWxsYXRpb25GbHV0dGVyCiAgICAgICAgc3VjaCB0aGF0IEF0cmlhbEZpYnJpbGxhdGlvbkZsdXR0ZXIudmVyaWZpY2F0aW9uU3RhdHVzIGlzIG5vdCBudWxsIGltcGxpZXMgKCBBdHJpYWxGaWJyaWxsYXRpb25GbHV0dGVyLnZlcmlmaWNhdGlvblN0YXR1cyAhfiBTdGF0dXMuInJlZnV0ZWQiCiAgICAgICAgICAgIGFuZCBBdHJpYWxGaWJyaWxsYXRpb25GbHV0dGVyLnZlcmlmaWNhdGlvblN0YXR1cyAhfiBTdGF0dXMuImVudGVyZWQtaW4tZXJyb3IiCiAgICAgICAgKQogICAgICAgICAgYW5kIEF0cmlhbEZpYnJpbGxhdGlvbkZsdXR0ZXIucHJldmFsZW5jZUludGVydmFsICggKSBzdGFydHMgb24gb3IgYmVmb3JlIGVuZCBvZiBJc2NoZW1pY1N0cm9rZUVuY291bnRlci5wZXJpb2QKICApCiAgICB1bmlvbiBUSkMuIklzY2hlbWljIFN0cm9rZSBFbmNvdW50ZXIiIElzY2hlbWljU3Ryb2tlRW5jb3VudGVyCiAgICAgIHdoZXJlIGV4aXN0cyAoICggSXNjaGVtaWNTdHJva2VFbmNvdW50ZXIuZW5jb3VudGVyRGlhZ25vc2lzICggKSApIEVuY291bnRlckRpYWdub3NpcwogICAgICAgICAgd2hlcmUgRW5jb3VudGVyRGlhZ25vc2lzLmNvZGUgaW4gIkF0cmlhbCBGaWJyaWxsYXRpb24gb3IgRmx1dHRlciIKICAgICAgKQoKZGVmaW5lICJEZW5vbWluYXRvciBFeGNsdXNpb25zIjoKICAoICJEZW5vbWluYXRvciIgRW5jb3VudGVyCiAgICAgIHdoZXJlIEVuY291bnRlci5zdGF0dXMgPSAnZmluaXNoZWQnCiAgICAgICAgYW5kICggRW5jb3VudGVyLmhvc3BpdGFsaXphdGlvbi5kaXNjaGFyZ2VEaXNwb3NpdGlvbiBpbiAiRGlzY2hhcmdlIFRvIEFjdXRlIENhcmUgRmFjaWxpdHkiCiAgICAgICAgICAgIG9yIEVuY291bnRlci5ob3NwaXRhbGl6YXRpb24uZGlzY2hhcmdlRGlzcG9zaXRpb24gaW4gIkxlZnQgQWdhaW5zdCBNZWRpY2FsIEFkdmljZSIKICAgICAgICAgICAgb3IgRW5jb3VudGVyLmhvc3BpdGFsaXphdGlvbi5kaXNjaGFyZ2VEaXNwb3NpdGlvbiBpbiAiUGF0aWVudCBFeHBpcmVkIgogICAgICAgICAgICBvciBFbmNvdW50ZXIuaG9zcGl0YWxpemF0aW9uLmRpc2NoYXJnZURpc3Bvc2l0aW9uIGluICJEaXNjaGFyZ2VkIHRvIEhvbWUgZm9yIEhvc3BpY2UgQ2FyZSIKICAgICAgICAgICAgb3IgRW5jb3VudGVyLmhvc3BpdGFsaXphdGlvbi5kaXNjaGFyZ2VEaXNwb3NpdGlvbiBpbiAiRGlzY2hhcmdlZCB0byBIZWFsdGggQ2FyZSBGYWNpbGl0eSBmb3IgSG9zcGljZSBDYXJlIgogICAgICAgICkKICApCiAgICB1bmlvbiAiRW5jb3VudGVyIFdpdGggQ29tZm9ydCBNZWFzdXJlcyBEdXJpbmcgSG9zcGl0YWxpemF0aW9uIEZvciBQYXRpZW50cyBXaXRoIERvY3VtZW50ZWQgQXRyaWFsIEZpYnJpbGxhdGlvbiBPciBGbHV0dGVyIgoKZGVmaW5lICJFbmNvdW50ZXIgV2l0aCBDb21mb3J0IE1lYXN1cmVzIER1cmluZyBIb3NwaXRhbGl6YXRpb24gRm9yIFBhdGllbnRzIFdpdGggRG9jdW1lbnRlZCBBdHJpYWwgRmlicmlsbGF0aW9uIE9yIEZsdXR0ZXIiOgogICJEZW5vbWluYXRvciIgRW5jb3VudGVyCiAgICB3aXRoIFRKQy4iSW50ZXJ2ZW50aW9uIENvbWZvcnQgTWVhc3VyZXMiIENvbWZvcnRNZWFzdXJlCiAgICAgIHN1Y2ggdGhhdCBDb2FsZXNjZShzdGFydCBvZiBDb21mb3J0TWVhc3VyZS5wZXJmb3JtZWQudG9JbnRlcnZhbCgpLCBDb21mb3J0TWVhc3VyZS5hdXRob3JlZE9uKSBkdXJpbmcgRW5jb3VudGVyLmhvc3BpdGFsaXphdGlvbldpdGhPYnNlcnZhdGlvbiAoICkKCmRlZmluZSAiTnVtZXJhdG9yIjoKICAiRGVub21pbmF0b3IiIEVuY291bnRlcgogICAgd2l0aCBbIk1lZGljYXRpb25SZXF1ZXN0IjogIkFudGljb2FndWxhbnQgVGhlcmFweSJdIERpc2NoYXJnZUFudGljb2FndWxhbnQKICAgICAgc3VjaCB0aGF0IERpc2NoYXJnZUFudGljb2FndWxhbnQuc3RhdHVzIGluIHsgJ2FjdGl2ZScsICdjb21wbGV0ZWQnIH0KICAgICAgICBhbmQgRGlzY2hhcmdlQW50aWNvYWd1bGFudC5pbnRlbnQgaW4geyAnb3JkZXInLCAnb3JpZ2luYWwtb3JkZXInLCAncmVmbGV4LW9yZGVyJywgJ2ZpbGxlci1vcmRlcicsICdpbnN0YW5jZS1vcmRlcicgfQogICAgICAgIGFuZCAoIERpc2NoYXJnZUFudGljb2FndWxhbnQuaXNDb21tdW5pdHkgKCApCiAgICAgICAgICAgIG9yIERpc2NoYXJnZUFudGljb2FndWxhbnQuaXNEaXNjaGFyZ2UgKCApCiAgICAgICAgKQogICAgICAgIGFuZCBEaXNjaGFyZ2VBbnRpY29hZ3VsYW50LmF1dGhvcmVkT24gZHVyaW5nIEVuY291bnRlci5wZXJpb2QKICAgICAgICBhbmQgbm90IGV4aXN0cyAoIFsiVGFza1JlamVjdGVkIl0gVGFza1JlamVjdAogICAgICAgICAgICB3aGVyZSBUYXNrUmVqZWN0LmZvY3VzLnJlZmVyZW5jZXMgKCBEaXNjaGFyZ2VBbnRpY29hZ3VsYW50ICkKICAgICAgICAgICAgICBhbmQgVGFza1JlamVjdC5jb2RlIH4gVVNRdWFsaXR5Q29yZUNvbW1vbi4iRnVsZmlsbCIKICAgICAgICApCgpkZWZpbmUgIkRlbm9taW5hdG9yIEV4Y2VwdGlvbnMiOgogICJEZW5vbWluYXRvciIgRW5jb3VudGVyCiAgICB3aXRoICJEb2N1bWVudGVkIFJlYXNvbiBGb3IgTm90IEdpdmluZyBBbnRpY29hZ3VsYW50IEF0IERpc2NoYXJnZSIgTm9EaXNjaGFyZ2VBbnRpY29hZ3VsYW50CiAgICAgIHN1Y2ggdGhhdCBOb0Rpc2NoYXJnZUFudGljb2FndWxhbnQuYXV0aG9yZWRPbiBkdXJpbmcgRW5jb3VudGVyLnBlcmlvZAoKZGVmaW5lICJEb2N1bWVudGVkIFJlYXNvbiBGb3IgTm90IEdpdmluZyBBbnRpY29hZ3VsYW50IEF0IERpc2NoYXJnZSI6CiAgKCBbIk1lZGljYXRpb25Ob3RSZXF1ZXN0ZWQiOiAiQW50aWNvYWd1bGFudCBUaGVyYXB5Il0gTm9BbnRpY29hZ3VsYW50CiAgICAgIHdoZXJlICggTm9BbnRpY29hZ3VsYW50LnJlYXNvbkNvZGUgaW4gIk1lZGljYWwgUmVhc29uIEZvciBOb3QgUHJvdmlkaW5nIFRyZWF0bWVudCIKICAgICAgICAgIG9yIE5vQW50aWNvYWd1bGFudC5yZWFzb25Db2RlIGluICJQYXRpZW50IFJlZnVzYWwiCiAgICAgICkKICAgICAgICBhbmQgKCBOb0FudGljb2FndWxhbnQuaXNDb21tdW5pdHkgKCApCiAgICAgICAgICAgIG9yIE5vQW50aWNvYWd1bGFudC5pc0Rpc2NoYXJnZSAoICkKICAgICAgICApCiAgICAgICAgYW5kIE5vQW50aWNvYWd1bGFudC5zdGF0dXMgaW4geyAnYWN0aXZlJywgJ2NvbXBsZXRlZCcgfQogICAgICAgIGFuZCBOb0FudGljb2FndWxhbnQuaW50ZW50IGluIHsgJ29yZGVyJywgJ29yaWdpbmFsLW9yZGVyJywgJ3JlZmxleC1vcmRlcicsICdmaWxsZXItb3JkZXInLCAnaW5zdGFuY2Utb3JkZXInIH0KICApCiAgICB1bmlvbiAoIFsiTWVkaWNhdGlvblJlcXVlc3QiOiAiQW50aWNvYWd1bGFudCBUaGVyYXB5Il0gTWVkUmVxQW50aUNvYWd1bGFudAogICAgICAgIHdpdGggWyJUYXNrUmVqZWN0ZWQiXSBUYXNrUmVqZWN0CiAgICAgICAgICBzdWNoIHRoYXQgVGFza1JlamVjdC5mb2N1cy5yZWZlcmVuY2VzICggTWVkUmVxQW50aUNvYWd1bGFudCApCiAgICAgICAgICAgIGFuZCAoIFRhc2tSZWplY3Quc3RhdHVzUmVhc29uIGluICJNZWRpY2FsIFJlYXNvbiBGb3IgTm90IFByb3ZpZGluZyBUcmVhdG1lbnQiCiAgICAgICAgICAgICAgICBvciBUYXNrUmVqZWN0LnN0YXR1c1JlYXNvbiBpbiAiUGF0aWVudCBSZWZ1c2FsIgogICAgICAgICAgICApCiAgICAgICAgICAgIGFuZCBNZWRSZXFBbnRpQ29hZ3VsYW50LnN0YXR1cyBpbiB7ICdhY3RpdmUnLCAnY29tcGxldGVkJyB9CiAgICAgICAgICAgIGFuZCBUYXNrUmVqZWN0LmNvZGUgfiBVU1F1YWxpdHlDb3JlQ29tbW9uLiJGdWxmaWxsIgogICAgKQoKZGVmaW5lICJTREUgRXRobmljaXR5IjoKICBTREUuIlNERSBFdGhuaWNpdHkiCgpkZWZpbmUgIlNERSBQYXllciI6CiAgU0RFLiJTREUgUGF5ZXIiCgpkZWZpbmUgIlNERSBSYWNlIjoKICBTREUuIlNERSBSYWNlIgoKZGVmaW5lICJTREUgU2V4IjoKICBTREUuIlNERSBTZXgi",
    "url" : "https://madie.cms.gov/Library-CMS71FHIRSTKAnticoagAFFlutter.cql"
  }]
}