{
  "resourceType" : "Library",
  "id" : "CMS136FHIRChildADHDMedFollowUp",
  "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 CMS136FHIRChildADHDMedFollowUp 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.CumulativeMedicationDuration version '2.0.0-ballot' called CMD\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 Hospice version '7.1.000' called Hospice\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\ncodesystem &quot;RXNORM&quot;: 'http://www.nlm.nih.gov/research/umls/rxnorm'\n\nvalueset &quot;Ambulatory&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.122.12.1003'\nvalueset &quot;Atomoxetine&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1170'\nvalueset &quot;Behavioral Health Follow up Visit&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1054'\nvalueset &quot;Clonidine&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1171'\nvalueset &quot;Dexmethylphenidate&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1172'\nvalueset &quot;Dextroamphetamine&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1173'\nvalueset &quot;Encounter Inpatient&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307'\nvalueset &quot;Guanfacine Medications&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.11.1252'\nvalueset &quot;Home Healthcare Services&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016'\nvalueset &quot;Lisdexamfetamine&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1174'\nvalueset &quot;Mental Behavioral and Neurodevelopmental Disorders&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.105.12.1203'\nvalueset &quot;Methylphenidate&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1176'\nvalueset &quot;Narcolepsy&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.114.12.1011'\nvalueset &quot;Office Visit&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001'\nvalueset &quot;Outpatient Consultation&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008'\nvalueset &quot;Preventive Care Services Group Counseling&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027'\nvalueset &quot;Preventive Care Services Individual Counseling&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026'\nvalueset &quot;Preventive Care Services, Initial Office Visit, 0 to 17&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022'\nvalueset &quot;Preventive Care, Established Office Visit, 0 to 17&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024'\nvalueset &quot;Psych Visit Diagnostic Evaluation&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1492'\nvalueset &quot;Psych Visit Psychotherapy&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1496'\nvalueset &quot;Psychotherapy and Pharmacologic Management&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1055'\nvalueset &quot;Telephone Visits&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080'\nvalueset &quot;Viloxazine&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1260'\nvalueset &quot;Virtual Encounter&quot;: 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089'\n\ncode &quot;methamphetamine hydrochloride 5 MG Oral Tablet&quot;: '977860' from &quot;RXNORM&quot; display 'methamphetamine hydrochloride 5 MG Oral Tablet'\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 1&quot;:\n  AgeInYearsAt(date from start of &quot;Intake Period&quot;) &gt;= 6\n    and AgeInYearsAt(date from \n      end of &quot;Intake Period&quot;\n    ) &lt;= 12\n    and exists &quot;Qualifying Encounter&quot;\n    and &quot;First ADHD Medication Prescribed During Intake Period&quot; is not null\n    and not exists &quot;Inpatient Stay with Qualifying Diagnosis During Initiation Phase&quot;\n\ndefine &quot;Intake Period&quot;:\n  Interval[&quot;March 1 of Year Prior to Measurement Period&quot;, &quot;Last Calendar Day of February of Measurement Period&quot;]\n\ndefine &quot;Last Calendar Day of February of Measurement Period&quot;:\n  ( DateTime(year from start of &quot;Measurement Period&quot;, 3, 1, 23, 59, 59, 0, 0) ) - 1 day\n\ndefine &quot;March 1 of Year Prior to Measurement Period&quot;:\n  DateTime((year from start of &quot;Measurement Period&quot; - 1), 3, 1, 0, 0, 0, 0, 0)\n\ndefine &quot;Qualifying Encounter&quot;:\n  ( ( [Encounter: &quot;Office Visit&quot;]\n      union [Encounter: &quot;Home Healthcare Services&quot;]\n      union [Encounter: &quot;Preventive Care, Established Office Visit, 0 to 17&quot;]\n      union [Encounter: &quot;Preventive Care Services, Initial Office Visit, 0 to 17&quot;]\n  ).isEncounterPerformed ( ) ) ValidEncounters\n    where CQMCommon.&quot;ToDateInterval&quot; ( ValidEncounters.period ) during day of Interval[&quot;IPSD&quot; - 6 months, &quot;IPSD&quot;]\n\n    /*Index Prescription Start Date (IPSD)*/\n\n\ndefine &quot;IPSD&quot;:\n  &quot;First ADHD Medication Prescribed During Intake Period&quot;\n\ndefine &quot;First ADHD Medication Prescribed During Intake Period&quot;:\n  First(&quot;ADHD Medication Prescribed During Intake Period and Not Previously on ADHD Medication&quot;.startDate)\n\ndefine &quot;ADHD Medication Prescribed During Intake Period and Not Previously on ADHD Medication&quot;:\n  ( ( ( ( [MedicationRequest: &quot;Atomoxetine&quot;]\n      union [MedicationRequest: &quot;Clonidine&quot;]\n      union [MedicationRequest: &quot;Dexmethylphenidate&quot;]\n      union [MedicationRequest: &quot;Dextroamphetamine&quot;]\n      union [MedicationRequest: &quot;Lisdexamfetamine&quot;]\n      union [MedicationRequest: &quot;methamphetamine hydrochloride 5 MG Oral Tablet&quot;]\n      union [MedicationRequest: &quot;Methylphenidate&quot;]\n      union [MedicationRequest: &quot;Guanfacine Medications&quot;]\n      union [MedicationRequest: &quot;Viloxazine&quot;]\n  ).isMedicationOrder ( ) ) ADHDMedications\n    where ADHDMedications.medicationRequestPeriod ( ) starts during &quot;Intake Period&quot; ) ADHDMedicationOrder\n    without ( ( [MedicationRequest: &quot;Atomoxetine&quot;]\n        union [MedicationRequest: &quot;Clonidine&quot;]\n        union [MedicationRequest: &quot;Dexmethylphenidate&quot;]\n        union [MedicationRequest: &quot;Dextroamphetamine&quot;]\n        union [MedicationRequest: &quot;Lisdexamfetamine&quot;]\n        union [MedicationRequest: &quot;methamphetamine hydrochloride 5 MG Oral Tablet&quot;]\n        union [MedicationRequest: &quot;Methylphenidate&quot;]\n        union [MedicationRequest: &quot;Guanfacine Medications&quot;]\n        union [MedicationRequest: &quot;Viloxazine&quot;]\n    ).isMedicationActive ( ) ) ActiveADHDMedication\n      such that ActiveADHDMedication.medicationRequestPeriod ( ) overlaps Interval[date from start of ADHDMedicationOrder.medicationRequestPeriod ( ) - 120 days, date from start of ADHDMedicationOrder.medicationRequestPeriod ( ) ) ) QualifyingMed\n    return all {\n      startDate: start of QualifyingMed.medicationRequestPeriod ( )\n    }\n    sort by startDate asc\n\ndefine &quot;Inpatient Stay with Qualifying Diagnosis During Initiation Phase&quot;:\n  &quot;Inpatient Stay with Qualifying Diagnosis&quot; InpatientStay\n    where CQMCommon.&quot;ToDateInterval&quot; ( InpatientStay.period ) starts 30 days or less after day of &quot;IPSD&quot;\n\ndefine &quot;Inpatient Stay with Qualifying Diagnosis&quot;:\n  ( ( [Encounter: &quot;Encounter Inpatient&quot;] ).isEncounterPerformed ( ) ) InpatientStay\n    where InpatientStay.hasPrincipalDiagnosisOf ( &quot;Mental Behavioral and Neurodevelopmental Disorders&quot; )\n\ndefine &quot;Denominator 1&quot;:\n  &quot;Initial Population 1&quot;\n\ndefine &quot;Denominator Exclusions&quot;:\n  Hospice.&quot;Has Hospice Services&quot;\n    or exists &quot;Narcolepsy Exclusion&quot;\n\ndefine &quot;Narcolepsy Exclusion&quot;:\n  // [E-13] base FHIR.Condition retrieve (defect-tracking/engine-issues.md E-13)\n  // Original:\n  //   [ConditionProblemsHealthConcerns: &quot;Narcolepsy&quot;]\n  //     union [ConditionEncounterDiagnosis: &quot;Narcolepsy&quot;]\n  ( ( [FHIR.Condition: &quot;Narcolepsy&quot;] ).verified ( ) ) NarcolepsyDx\n    where NarcolepsyDx.prevalenceInterval ( ) starts on or before end of &quot;Measurement Period&quot;\n\ndefine &quot;Numerator 1&quot;:\n  exists &quot;Encounter During Initiation Phase&quot;\n\ndefine &quot;Encounter During Initiation Phase&quot;:\n  ( &quot;Qualifying Numerator Encounter&quot;.isEncounterPerformed ( ) ) ValidNumeratorEncounter\n    where CQMCommon.&quot;ToDateInterval&quot; ( ValidNumeratorEncounter.period ) starts 30 days or less after day of &quot;IPSD&quot;\n\ndefine &quot;Qualifying Numerator Encounter&quot;:\n  [Encounter: &quot;Office Visit&quot;]\n    union [Encounter: &quot;Preventive Care Services Group Counseling&quot;]\n    union [Encounter: &quot;Behavioral Health Follow up Visit&quot;]\n    union [Encounter: &quot;Preventive Care Services Individual Counseling&quot;]\n    union ( [Encounter: &quot;Psychotherapy and Pharmacologic Management&quot;] PsychPharmManagement\n        where exists ( PsychPharmManagement.location Location\n            where CQMCommon.&quot;GetLocation&quot; ( Location.location ).type in &quot;Ambulatory&quot;\n        )\n    )\n    union [Encounter: &quot;Outpatient Consultation&quot;]\n    union [Encounter: &quot;Home Healthcare Services&quot;]\n    union [Encounter: &quot;Preventive Care Services, Initial Office Visit, 0 to 17&quot;]\n    union [Encounter: &quot;Preventive Care, Established Office Visit, 0 to 17&quot;]\n    union [Encounter: &quot;Psych Visit Diagnostic Evaluation&quot;]\n    union [Encounter: &quot;Psych Visit Psychotherapy&quot;]\n    union [Encounter: &quot;Telephone Visits&quot;]\n\ndefine &quot;Initial Population 2&quot;:\n  AgeInYearsAt(date from start of &quot;Intake Period&quot;) &gt;= 6\n    and AgeInYearsAt(date from \n      end of &quot;Intake Period&quot;\n    ) &lt;= 12\n    and exists &quot;Qualifying Encounter&quot;\n    and &quot;First ADHD Medication Prescribed During Intake Period&quot; is not null\n    and &quot;Has ADHD Cumulative Medication Duration Greater Than or Equal to 210 Days&quot;\n    and not exists &quot;Inpatient Stay with Qualifying Diagnosis During Continuation and Maintenance Phase&quot;\n\ndefine &quot;Has ADHD Cumulative Medication Duration Greater Than or Equal to 210 Days&quot;:\n  &quot;ADHD Cumulative Medication Duration&quot; &gt;= 210\n\ndefine &quot;ADHD Cumulative Medication Duration&quot;:\n  ( &quot;ADHD Medications Taken on IPSD or During Continuation and Maintenance Phase&quot; ).cumulativeDuration ( )\n\ndefine &quot;Inpatient Stay with Qualifying Diagnosis During Continuation and Maintenance Phase&quot;:\n  &quot;Inpatient Stay with Qualifying Diagnosis&quot; InpatientStay\n    where CQMCommon.&quot;ToDateInterval&quot; ( InpatientStay.period ) starts 300 days or less after day of &quot;IPSD&quot;\n\ndefine &quot;ADHD Medications Taken on IPSD or During Continuation and Maintenance Phase&quot;:\n  ( ( ( ( ( ( [MedicationRequest: &quot;Atomoxetine&quot;] ).isMedicationOrder ( ) ) AtomoxetineMed\n          return all {\n            period: AtomoxetineMed.medicationRequestPeriod ( ),\n            periodStart: start of AtomoxetineMed.medicationRequestPeriod ( )\n          }\n          sort by periodStart\n      ).period\n    ).rolloutIntervals ( )\n  )\n    union ( ( ( ( ( [MedicationRequest: &quot;Clonidine&quot;] ).isMedicationOrder ( ) ) ClonidineMed\n            return all {\n              period: ClonidineMed.medicationRequestPeriod ( ),\n              periodStart: start of ClonidineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Dexmethylphenidate&quot;] ).isMedicationOrder ( ) ) DexmethylphenidateMed\n            return all {\n              period: DexmethylphenidateMed.medicationRequestPeriod ( ),\n              periodStart: start of DexmethylphenidateMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Dextroamphetamine&quot;] ).isMedicationOrder ( ) ) DextroamphetamineMed\n            return all {\n              period: DextroamphetamineMed.medicationRequestPeriod ( ),\n              periodStart: start of DextroamphetamineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Lisdexamfetamine&quot;] ).isMedicationOrder ( ) ) LisdexamfetamineMed\n            return all {\n              period: LisdexamfetamineMed.medicationRequestPeriod ( ),\n              periodStart: start of LisdexamfetamineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Methylphenidate&quot;] ).isMedicationOrder ( ) ) MethylphenidateMed\n            return all {\n              period: MethylphenidateMed.medicationRequestPeriod ( ),\n              periodStart: start of MethylphenidateMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Guanfacine Medications&quot;] ).isMedicationOrder ( ) ) GuanfacineMed\n            return all {\n              period: GuanfacineMed.medicationRequestPeriod ( ),\n              periodStart: start of GuanfacineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;methamphetamine hydrochloride 5 MG Oral Tablet&quot;] ).isMedicationOrder ( ) ) MethamphetamineMed\n            return all {\n              period: MethamphetamineMed.medicationRequestPeriod ( ),\n              periodStart: start of MethamphetamineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    )\n    union ( ( ( ( ( [MedicationRequest: &quot;Viloxazine&quot;] ).isMedicationOrder ( ) ) ViloxazineMed\n            return all {\n              period: ViloxazineMed.medicationRequestPeriod ( ),\n              periodStart: start of ViloxazineMed.medicationRequestPeriod ( )\n            }\n            sort by periodStart\n        ).period\n      ).rolloutIntervals ( )\n    ) ) ADHDMedication\n    let IPSDAndContinuationMaintenancePhase: Interval[&quot;IPSD&quot;, &quot;IPSD&quot; + 300 days]\n    return all ADHDMedication\n      intersect IPSDAndContinuationMaintenancePhase\n\ndefine &quot;Denominator 2&quot;:\n  &quot;Initial Population 2&quot;\n\ndefine &quot;Numerator 2&quot;:\n  exists &quot;Encounter During Initiation Phase&quot;\n    and ( &quot;Two or More Encounters 31 to 300 Days into Continuation and Maintenance Phase&quot;\n        or ( exists &quot;Encounter 31 to 300 Days into Continuation and Maintenance Phase&quot; Encounter1\n            with &quot;Virtual Encounter 31 to 300 Days into Continuation and Maintenance Phase&quot; Encounter2\n              such that Encounter1 is not null\n                and Encounter2 is not null\n                and Encounter1 !~ Encounter2\n        )\n    )\n\ndefine &quot;Two or More Encounters 31 to 300 Days into Continuation and Maintenance Phase&quot;:\n  Count(&quot;Encounter 31 to 300 Days into Continuation and Maintenance Phase&quot;) &gt;= 2\n\ndefine &quot;Encounter 31 to 300 Days into Continuation and Maintenance Phase&quot;:\n  ( &quot;Qualifying Numerator Encounter&quot;.isEncounterPerformed ( ) ) ValidNumeratorEncounter\n    where CQMCommon.&quot;ToDateInterval&quot; ( ValidNumeratorEncounter.period ) starts during day of Interval[&quot;IPSD&quot; + 31 days, &quot;IPSD&quot; + 300 days]\n    return date from start of ValidNumeratorEncounter.period\n\ndefine &quot;Virtual Encounter 31 to 300 Days into Continuation and Maintenance Phase&quot;:\n  ( ( [Encounter: &quot;Virtual Encounter&quot;] ).isEncounterPerformed ( ) ) VirtualEnc\n    where CQMCommon.&quot;ToDateInterval&quot; ( VirtualEnc.period ) starts during day of Interval[&quot;IPSD&quot; + 31 days, &quot;IPSD&quot; + 300 days]\n    return date from start of VirtualEnc.period\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/CMS136FHIRChildADHDMedFollowUp",
  "version" : "1.1.000",
  "name" : "CMS136FHIRChildADHDMedFollowUp",
  "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" : "LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBDTVMxMzZGSElSQ2hpbGRBREhETWVkRm9sbG93VXAgdmVyc2lvbiAnMS4xLjAwMCcKCnVzaW5nIFVTUXVhbGl0eUNvcmUgdmVyc2lvbiAnMC4xLjAtY2lidWlsZCcKdXNpbmcgVVNDb3JlIHZlcnNpb24gJzYuMS4wLWRlcml2ZWQnCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIGhsNy5maGlyLnV2LmNxbC5GSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScgY2FsbGVkIEZISVJIZWxwZXJzCmluY2x1ZGUgaGw3LmZoaXIudXYuY3FsLkZISVJDb21tb24gdmVyc2lvbiAnMi4wLjAnIGNhbGxlZCBGSElSQ29tbW9uCmluY2x1ZGUgaGw3LmZoaXIudXMuY3FsLkN1bXVsYXRpdmVNZWRpY2F0aW9uRHVyYXRpb24gdmVyc2lvbiAnMi4wLjAtYmFsbG90JyBjYWxsZWQgQ01ECmluY2x1ZGUgaGw3LmZoaXIudXMuY3FsLlVTQ29yZUNvbW1vbiB2ZXJzaW9uICcyLjAuMC1iYWxsb3QnIGNhbGxlZCBVU0NvcmVDb21tb24KaW5jbHVkZSBobDcuZmhpci51cy5jcWwuVVNDb3JlRWxlbWVudHMgdmVyc2lvbiAnMi4wLjAtYmFsbG90JyBjYWxsZWQgVVNDb3JlRWxlbWVudHMKCmluY2x1ZGUgSG9zcGljZSB2ZXJzaW9uICc3LjEuMDAwJyBjYWxsZWQgSG9zcGljZQppbmNsdWRlIENRTUNvbW1vbiB2ZXJzaW9uICc1LjEuMDAwJyBjYWxsZWQgQ1FNQ29tbW9uCmluY2x1ZGUgVVNRdWFsaXR5Q29yZUNvbW1vbiB2ZXJzaW9uICcwLjEuMC1jaWJ1aWxkJyBjYWxsZWQgVVNRdWFsaXR5Q29yZUNvbW1vbgppbmNsdWRlIFN1cHBsZW1lbnRhbERhdGFFbGVtZW50cyB2ZXJzaW9uICc2LjEuMDAwJyBjYWxsZWQgU0RFCmluY2x1ZGUgU3RhdHVzIHZlcnNpb24gJzIuMS4wMDAnIGNhbGxlZCBTdGF0dXMKCmNvZGVzeXN0ZW0gIlJYTk9STSI6ICdodHRwOi8vd3d3Lm5sbS5uaWguZ292L3Jlc2VhcmNoL3VtbHMvcnhub3JtJwoKdmFsdWVzZXQgIkFtYnVsYXRvcnkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTIyLjEyLjEwMDMnCnZhbHVlc2V0ICJBdG9tb3hldGluZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMTcwJwp2YWx1ZXNldCAiQmVoYXZpb3JhbCBIZWFsdGggRm9sbG93IHVwIFZpc2l0IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDU0Jwp2YWx1ZXNldCAiQ2xvbmlkaW5lIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjExNzEnCnZhbHVlc2V0ICJEZXhtZXRoeWxwaGVuaWRhdGUiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTE3MicKdmFsdWVzZXQgIkRleHRyb2FtcGhldGFtaW5lIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjExNzMnCnZhbHVlc2V0ICJFbmNvdW50ZXIgSW5wYXRpZW50IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjY2Ni41LjMwNycKdmFsdWVzZXQgIkd1YW5mYWNpbmUgTWVkaWNhdGlvbnMiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTk2LjExLjEyNTInCnZhbHVlc2V0ICJIb21lIEhlYWx0aGNhcmUgU2VydmljZXMiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwMTYnCnZhbHVlc2V0ICJMaXNkZXhhbWZldGFtaW5lIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjExNzQnCnZhbHVlc2V0ICJNZW50YWwgQmVoYXZpb3JhbCBhbmQgTmV1cm9kZXZlbG9wbWVudGFsIERpc29yZGVycyI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMDUuMTIuMTIwMycKdmFsdWVzZXQgIk1ldGh5bHBoZW5pZGF0ZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMTc2Jwp2YWx1ZXNldCAiTmFyY29sZXBzeSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMTQuMTIuMTAxMScKdmFsdWVzZXQgIk9mZmljZSBWaXNpdCI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMDEuMTIuMTAwMScKdmFsdWVzZXQgIk91dHBhdGllbnQgQ29uc3VsdGF0aW9uIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDA4Jwp2YWx1ZXNldCAiUHJldmVudGl2ZSBDYXJlIFNlcnZpY2VzIEdyb3VwIENvdW5zZWxpbmciOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwMjcnCnZhbHVlc2V0ICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMgSW5kaXZpZHVhbCBDb3Vuc2VsaW5nIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDI2Jwp2YWx1ZXNldCAiUHJldmVudGl2ZSBDYXJlIFNlcnZpY2VzLCBJbml0aWFsIE9mZmljZSBWaXNpdCwgMCB0byAxNyI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMDEuMTIuMTAyMicKdmFsdWVzZXQgIlByZXZlbnRpdmUgQ2FyZSwgRXN0YWJsaXNoZWQgT2ZmaWNlIFZpc2l0LCAwIHRvIDE3IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDI0Jwp2YWx1ZXNldCAiUHN5Y2ggVmlzaXQgRGlhZ25vc3RpYyBFdmFsdWF0aW9uIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjUyNi4zLjE0OTInCnZhbHVlc2V0ICJQc3ljaCBWaXNpdCBQc3ljaG90aGVyYXB5IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjUyNi4zLjE0OTYnCnZhbHVlc2V0ICJQc3ljaG90aGVyYXB5IGFuZCBQaGFybWFjb2xvZ2ljIE1hbmFnZW1lbnQiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwNTUnCnZhbHVlc2V0ICJUZWxlcGhvbmUgVmlzaXRzIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEwMS4xMi4xMDgwJwp2YWx1ZXNldCAiVmlsb3hhemluZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMjYwJwp2YWx1ZXNldCAiVmlydHVhbCBFbmNvdW50ZXIiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwODknCgpjb2RlICJtZXRoYW1waGV0YW1pbmUgaHlkcm9jaGxvcmlkZSA1IE1HIE9yYWwgVGFibGV0IjogJzk3Nzg2MCcgZnJvbSAiUlhOT1JNIiBkaXNwbGF5ICdtZXRoYW1waGV0YW1pbmUgaHlkcm9jaGxvcmlkZSA1IE1HIE9yYWwgVGFibGV0JwoKcGFyYW1ldGVyICJNZWFzdXJlbWVudCBQZXJpb2QiIEludGVydmFsPERhdGVUaW1lPgogIGRlZmF1bHQgSW50ZXJ2YWxbQDIwMjYtMDEtMDFUMDA6MDA6MDAuMDAwWiwgQDIwMjctMDEtMDFUMDA6MDA6MDAuMDAwWikKCmNvbnRleHQgUGF0aWVudAoKZGVmaW5lICJJbml0aWFsIFBvcHVsYXRpb24gMSI6CiAgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBzdGFydCBvZiAiSW50YWtlIFBlcmlvZCIpID49IDYKICAgIGFuZCBBZ2VJblllYXJzQXQoZGF0ZSBmcm9tIAogICAgICBlbmQgb2YgIkludGFrZSBQZXJpb2QiCiAgICApIDw9IDEyCiAgICBhbmQgZXhpc3RzICJRdWFsaWZ5aW5nIEVuY291bnRlciIKICAgIGFuZCAiRmlyc3QgQURIRCBNZWRpY2F0aW9uIFByZXNjcmliZWQgRHVyaW5nIEludGFrZSBQZXJpb2QiIGlzIG5vdCBudWxsCiAgICBhbmQgbm90IGV4aXN0cyAiSW5wYXRpZW50IFN0YXkgd2l0aCBRdWFsaWZ5aW5nIERpYWdub3NpcyBEdXJpbmcgSW5pdGlhdGlvbiBQaGFzZSIKCmRlZmluZSAiSW50YWtlIFBlcmlvZCI6CiAgSW50ZXJ2YWxbIk1hcmNoIDEgb2YgWWVhciBQcmlvciB0byBNZWFzdXJlbWVudCBQZXJpb2QiLCAiTGFzdCBDYWxlbmRhciBEYXkgb2YgRmVicnVhcnkgb2YgTWVhc3VyZW1lbnQgUGVyaW9kIl0KCmRlZmluZSAiTGFzdCBDYWxlbmRhciBEYXkgb2YgRmVicnVhcnkgb2YgTWVhc3VyZW1lbnQgUGVyaW9kIjoKICAoIERhdGVUaW1lKHllYXIgZnJvbSBzdGFydCBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIiwgMywgMSwgMjMsIDU5LCA1OSwgMCwgMCkgKSAtIDEgZGF5CgpkZWZpbmUgIk1hcmNoIDEgb2YgWWVhciBQcmlvciB0byBNZWFzdXJlbWVudCBQZXJpb2QiOgogIERhdGVUaW1lKCh5ZWFyIGZyb20gc3RhcnQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIgLSAxKSwgMywgMSwgMCwgMCwgMCwgMCwgMCkKCmRlZmluZSAiUXVhbGlmeWluZyBFbmNvdW50ZXIiOgogICggKCBbRW5jb3VudGVyOiAiT2ZmaWNlIFZpc2l0Il0KICAgICAgdW5pb24gW0VuY291bnRlcjogIkhvbWUgSGVhbHRoY2FyZSBTZXJ2aWNlcyJdCiAgICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJQcmV2ZW50aXZlIENhcmUsIEVzdGFibGlzaGVkIE9mZmljZSBWaXNpdCwgMCB0byAxNyJdCiAgICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMsIEluaXRpYWwgT2ZmaWNlIFZpc2l0LCAwIHRvIDE3Il0KICApLmlzRW5jb3VudGVyUGVyZm9ybWVkICggKSApIFZhbGlkRW5jb3VudGVycwogICAgd2hlcmUgQ1FNQ29tbW9uLiJUb0RhdGVJbnRlcnZhbCIgKCBWYWxpZEVuY291bnRlcnMucGVyaW9kICkgZHVyaW5nIGRheSBvZiBJbnRlcnZhbFsiSVBTRCIgLSA2IG1vbnRocywgIklQU0QiXQoKICAgIC8qSW5kZXggUHJlc2NyaXB0aW9uIFN0YXJ0IERhdGUgKElQU0QpKi8KCgpkZWZpbmUgIklQU0QiOgogICJGaXJzdCBBREhEIE1lZGljYXRpb24gUHJlc2NyaWJlZCBEdXJpbmcgSW50YWtlIFBlcmlvZCIKCmRlZmluZSAiRmlyc3QgQURIRCBNZWRpY2F0aW9uIFByZXNjcmliZWQgRHVyaW5nIEludGFrZSBQZXJpb2QiOgogIEZpcnN0KCJBREhEIE1lZGljYXRpb24gUHJlc2NyaWJlZCBEdXJpbmcgSW50YWtlIFBlcmlvZCBhbmQgTm90IFByZXZpb3VzbHkgb24gQURIRCBNZWRpY2F0aW9uIi5zdGFydERhdGUpCgpkZWZpbmUgIkFESEQgTWVkaWNhdGlvbiBQcmVzY3JpYmVkIER1cmluZyBJbnRha2UgUGVyaW9kIGFuZCBOb3QgUHJldmlvdXNseSBvbiBBREhEIE1lZGljYXRpb24iOgogICggKCAoICggW01lZGljYXRpb25SZXF1ZXN0OiAiQXRvbW94ZXRpbmUiXQogICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJDbG9uaWRpbmUiXQogICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJEZXhtZXRoeWxwaGVuaWRhdGUiXQogICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJEZXh0cm9hbXBoZXRhbWluZSJdCiAgICAgIHVuaW9uIFtNZWRpY2F0aW9uUmVxdWVzdDogIkxpc2RleGFtZmV0YW1pbmUiXQogICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJtZXRoYW1waGV0YW1pbmUgaHlkcm9jaGxvcmlkZSA1IE1HIE9yYWwgVGFibGV0Il0KICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAiTWV0aHlscGhlbmlkYXRlIl0KICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAiR3VhbmZhY2luZSBNZWRpY2F0aW9ucyJdCiAgICAgIHVuaW9uIFtNZWRpY2F0aW9uUmVxdWVzdDogIlZpbG94YXppbmUiXQogICkuaXNNZWRpY2F0aW9uT3JkZXIgKCApICkgQURIRE1lZGljYXRpb25zCiAgICB3aGVyZSBBREhETWVkaWNhdGlvbnMubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApIHN0YXJ0cyBkdXJpbmcgIkludGFrZSBQZXJpb2QiICkgQURIRE1lZGljYXRpb25PcmRlcgogICAgd2l0aG91dCAoICggW01lZGljYXRpb25SZXF1ZXN0OiAiQXRvbW94ZXRpbmUiXQogICAgICAgIHVuaW9uIFtNZWRpY2F0aW9uUmVxdWVzdDogIkNsb25pZGluZSJdCiAgICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAiRGV4bWV0aHlscGhlbmlkYXRlIl0KICAgICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJEZXh0cm9hbXBoZXRhbWluZSJdCiAgICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAiTGlzZGV4YW1mZXRhbWluZSJdCiAgICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAibWV0aGFtcGhldGFtaW5lIGh5ZHJvY2hsb3JpZGUgNSBNRyBPcmFsIFRhYmxldCJdCiAgICAgICAgdW5pb24gW01lZGljYXRpb25SZXF1ZXN0OiAiTWV0aHlscGhlbmlkYXRlIl0KICAgICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJHdWFuZmFjaW5lIE1lZGljYXRpb25zIl0KICAgICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJWaWxveGF6aW5lIl0KICAgICkuaXNNZWRpY2F0aW9uQWN0aXZlICggKSApIEFjdGl2ZUFESERNZWRpY2F0aW9uCiAgICAgIHN1Y2ggdGhhdCBBY3RpdmVBREhETWVkaWNhdGlvbi5tZWRpY2F0aW9uUmVxdWVzdFBlcmlvZCAoICkgb3ZlcmxhcHMgSW50ZXJ2YWxbZGF0ZSBmcm9tIHN0YXJ0IG9mIEFESERNZWRpY2F0aW9uT3JkZXIubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApIC0gMTIwIGRheXMsIGRhdGUgZnJvbSBzdGFydCBvZiBBREhETWVkaWNhdGlvbk9yZGVyLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kICggKSApICkgUXVhbGlmeWluZ01lZAogICAgcmV0dXJuIGFsbCB7CiAgICAgIHN0YXJ0RGF0ZTogc3RhcnQgb2YgUXVhbGlmeWluZ01lZC5tZWRpY2F0aW9uUmVxdWVzdFBlcmlvZCAoICkKICAgIH0KICAgIHNvcnQgYnkgc3RhcnREYXRlIGFzYwoKZGVmaW5lICJJbnBhdGllbnQgU3RheSB3aXRoIFF1YWxpZnlpbmcgRGlhZ25vc2lzIER1cmluZyBJbml0aWF0aW9uIFBoYXNlIjoKICAiSW5wYXRpZW50IFN0YXkgd2l0aCBRdWFsaWZ5aW5nIERpYWdub3NpcyIgSW5wYXRpZW50U3RheQogICAgd2hlcmUgQ1FNQ29tbW9uLiJUb0RhdGVJbnRlcnZhbCIgKCBJbnBhdGllbnRTdGF5LnBlcmlvZCApIHN0YXJ0cyAzMCBkYXlzIG9yIGxlc3MgYWZ0ZXIgZGF5IG9mICJJUFNEIgoKZGVmaW5lICJJbnBhdGllbnQgU3RheSB3aXRoIFF1YWxpZnlpbmcgRGlhZ25vc2lzIjoKICAoICggW0VuY291bnRlcjogIkVuY291bnRlciBJbnBhdGllbnQiXSApLmlzRW5jb3VudGVyUGVyZm9ybWVkICggKSApIElucGF0aWVudFN0YXkKICAgIHdoZXJlIElucGF0aWVudFN0YXkuaGFzUHJpbmNpcGFsRGlhZ25vc2lzT2YgKCAiTWVudGFsIEJlaGF2aW9yYWwgYW5kIE5ldXJvZGV2ZWxvcG1lbnRhbCBEaXNvcmRlcnMiICkKCmRlZmluZSAiRGVub21pbmF0b3IgMSI6CiAgIkluaXRpYWwgUG9wdWxhdGlvbiAxIgoKZGVmaW5lICJEZW5vbWluYXRvciBFeGNsdXNpb25zIjoKICBIb3NwaWNlLiJIYXMgSG9zcGljZSBTZXJ2aWNlcyIKICAgIG9yIGV4aXN0cyAiTmFyY29sZXBzeSBFeGNsdXNpb24iCgpkZWZpbmUgIk5hcmNvbGVwc3kgRXhjbHVzaW9uIjoKICAvLyBbRS0xM10gYmFzZSBGSElSLkNvbmRpdGlvbiByZXRyaWV2ZSAoZGVmZWN0LXRyYWNraW5nL2VuZ2luZS1pc3N1ZXMubWQgRS0xMykKICAvLyBPcmlnaW5hbDoKICAvLyAgIFtDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zOiAiTmFyY29sZXBzeSJdCiAgLy8gICAgIHVuaW9uIFtDb25kaXRpb25FbmNvdW50ZXJEaWFnbm9zaXM6ICJOYXJjb2xlcHN5Il0KICAoICggW0ZISVIuQ29uZGl0aW9uOiAiTmFyY29sZXBzeSJdICkudmVyaWZpZWQgKCApICkgTmFyY29sZXBzeUR4CiAgICB3aGVyZSBOYXJjb2xlcHN5RHgucHJldmFsZW5jZUludGVydmFsICggKSBzdGFydHMgb24gb3IgYmVmb3JlIGVuZCBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgoKZGVmaW5lICJOdW1lcmF0b3IgMSI6CiAgZXhpc3RzICJFbmNvdW50ZXIgRHVyaW5nIEluaXRpYXRpb24gUGhhc2UiCgpkZWZpbmUgIkVuY291bnRlciBEdXJpbmcgSW5pdGlhdGlvbiBQaGFzZSI6CiAgKCAiUXVhbGlmeWluZyBOdW1lcmF0b3IgRW5jb3VudGVyIi5pc0VuY291bnRlclBlcmZvcm1lZCAoICkgKSBWYWxpZE51bWVyYXRvckVuY291bnRlcgogICAgd2hlcmUgQ1FNQ29tbW9uLiJUb0RhdGVJbnRlcnZhbCIgKCBWYWxpZE51bWVyYXRvckVuY291bnRlci5wZXJpb2QgKSBzdGFydHMgMzAgZGF5cyBvciBsZXNzIGFmdGVyIGRheSBvZiAiSVBTRCIKCmRlZmluZSAiUXVhbGlmeWluZyBOdW1lcmF0b3IgRW5jb3VudGVyIjoKICBbRW5jb3VudGVyOiAiT2ZmaWNlIFZpc2l0Il0KICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMgR3JvdXAgQ291bnNlbGluZyJdCiAgICB1bmlvbiBbRW5jb3VudGVyOiAiQmVoYXZpb3JhbCBIZWFsdGggRm9sbG93IHVwIFZpc2l0Il0KICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJQcmV2ZW50aXZlIENhcmUgU2VydmljZXMgSW5kaXZpZHVhbCBDb3Vuc2VsaW5nIl0KICAgIHVuaW9uICggW0VuY291bnRlcjogIlBzeWNob3RoZXJhcHkgYW5kIFBoYXJtYWNvbG9naWMgTWFuYWdlbWVudCJdIFBzeWNoUGhhcm1NYW5hZ2VtZW50CiAgICAgICAgd2hlcmUgZXhpc3RzICggUHN5Y2hQaGFybU1hbmFnZW1lbnQubG9jYXRpb24gTG9jYXRpb24KICAgICAgICAgICAgd2hlcmUgQ1FNQ29tbW9uLiJHZXRMb2NhdGlvbiIgKCBMb2NhdGlvbi5sb2NhdGlvbiApLnR5cGUgaW4gIkFtYnVsYXRvcnkiCiAgICAgICAgKQogICAgKQogICAgdW5pb24gW0VuY291bnRlcjogIk91dHBhdGllbnQgQ29uc3VsdGF0aW9uIl0KICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJIb21lIEhlYWx0aGNhcmUgU2VydmljZXMiXQogICAgdW5pb24gW0VuY291bnRlcjogIlByZXZlbnRpdmUgQ2FyZSBTZXJ2aWNlcywgSW5pdGlhbCBPZmZpY2UgVmlzaXQsIDAgdG8gMTciXQogICAgdW5pb24gW0VuY291bnRlcjogIlByZXZlbnRpdmUgQ2FyZSwgRXN0YWJsaXNoZWQgT2ZmaWNlIFZpc2l0LCAwIHRvIDE3Il0KICAgIHVuaW9uIFtFbmNvdW50ZXI6ICJQc3ljaCBWaXNpdCBEaWFnbm9zdGljIEV2YWx1YXRpb24iXQogICAgdW5pb24gW0VuY291bnRlcjogIlBzeWNoIFZpc2l0IFBzeWNob3RoZXJhcHkiXQogICAgdW5pb24gW0VuY291bnRlcjogIlRlbGVwaG9uZSBWaXNpdHMiXQoKZGVmaW5lICJJbml0aWFsIFBvcHVsYXRpb24gMiI6CiAgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBzdGFydCBvZiAiSW50YWtlIFBlcmlvZCIpID49IDYKICAgIGFuZCBBZ2VJblllYXJzQXQoZGF0ZSBmcm9tIAogICAgICBlbmQgb2YgIkludGFrZSBQZXJpb2QiCiAgICApIDw9IDEyCiAgICBhbmQgZXhpc3RzICJRdWFsaWZ5aW5nIEVuY291bnRlciIKICAgIGFuZCAiRmlyc3QgQURIRCBNZWRpY2F0aW9uIFByZXNjcmliZWQgRHVyaW5nIEludGFrZSBQZXJpb2QiIGlzIG5vdCBudWxsCiAgICBhbmQgIkhhcyBBREhEIEN1bXVsYXRpdmUgTWVkaWNhdGlvbiBEdXJhdGlvbiBHcmVhdGVyIFRoYW4gb3IgRXF1YWwgdG8gMjEwIERheXMiCiAgICBhbmQgbm90IGV4aXN0cyAiSW5wYXRpZW50IFN0YXkgd2l0aCBRdWFsaWZ5aW5nIERpYWdub3NpcyBEdXJpbmcgQ29udGludWF0aW9uIGFuZCBNYWludGVuYW5jZSBQaGFzZSIKCmRlZmluZSAiSGFzIEFESEQgQ3VtdWxhdGl2ZSBNZWRpY2F0aW9uIER1cmF0aW9uIEdyZWF0ZXIgVGhhbiBvciBFcXVhbCB0byAyMTAgRGF5cyI6CiAgIkFESEQgQ3VtdWxhdGl2ZSBNZWRpY2F0aW9uIER1cmF0aW9uIiA+PSAyMTAKCmRlZmluZSAiQURIRCBDdW11bGF0aXZlIE1lZGljYXRpb24gRHVyYXRpb24iOgogICggIkFESEQgTWVkaWNhdGlvbnMgVGFrZW4gb24gSVBTRCBvciBEdXJpbmcgQ29udGludWF0aW9uIGFuZCBNYWludGVuYW5jZSBQaGFzZSIgKS5jdW11bGF0aXZlRHVyYXRpb24gKCApCgpkZWZpbmUgIklucGF0aWVudCBTdGF5IHdpdGggUXVhbGlmeWluZyBEaWFnbm9zaXMgRHVyaW5nIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiOgogICJJbnBhdGllbnQgU3RheSB3aXRoIFF1YWxpZnlpbmcgRGlhZ25vc2lzIiBJbnBhdGllbnRTdGF5CiAgICB3aGVyZSBDUU1Db21tb24uIlRvRGF0ZUludGVydmFsIiAoIElucGF0aWVudFN0YXkucGVyaW9kICkgc3RhcnRzIDMwMCBkYXlzIG9yIGxlc3MgYWZ0ZXIgZGF5IG9mICJJUFNEIgoKZGVmaW5lICJBREhEIE1lZGljYXRpb25zIFRha2VuIG9uIElQU0Qgb3IgRHVyaW5nIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiOgogICggKCAoICggKCAoIFtNZWRpY2F0aW9uUmVxdWVzdDogIkF0b21veGV0aW5lIl0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBBdG9tb3hldGluZU1lZAogICAgICAgICAgcmV0dXJuIGFsbCB7CiAgICAgICAgICAgIHBlcmlvZDogQXRvbW94ZXRpbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApLAogICAgICAgICAgICBwZXJpb2RTdGFydDogc3RhcnQgb2YgQXRvbW94ZXRpbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICB9CiAgICAgICAgICBzb3J0IGJ5IHBlcmlvZFN0YXJ0CiAgICAgICkucGVyaW9kCiAgICApLnJvbGxvdXRJbnRlcnZhbHMgKCApCiAgKQogICAgdW5pb24gKCAoICggKCAoIFtNZWRpY2F0aW9uUmVxdWVzdDogIkNsb25pZGluZSJdICkuaXNNZWRpY2F0aW9uT3JkZXIgKCApICkgQ2xvbmlkaW5lTWVkCiAgICAgICAgICAgIHJldHVybiBhbGwgewogICAgICAgICAgICAgIHBlcmlvZDogQ2xvbmlkaW5lTWVkLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kICggKSwKICAgICAgICAgICAgICBwZXJpb2RTdGFydDogc3RhcnQgb2YgQ2xvbmlkaW5lTWVkLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kICggKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNvcnQgYnkgcGVyaW9kU3RhcnQKICAgICAgICApLnBlcmlvZAogICAgICApLnJvbGxvdXRJbnRlcnZhbHMgKCApCiAgICApCiAgICB1bmlvbiAoICggKCAoICggW01lZGljYXRpb25SZXF1ZXN0OiAiRGV4bWV0aHlscGhlbmlkYXRlIl0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBEZXhtZXRoeWxwaGVuaWRhdGVNZWQKICAgICAgICAgICAgcmV0dXJuIGFsbCB7CiAgICAgICAgICAgICAgcGVyaW9kOiBEZXhtZXRoeWxwaGVuaWRhdGVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApLAogICAgICAgICAgICAgIHBlcmlvZFN0YXJ0OiBzdGFydCBvZiBEZXhtZXRoeWxwaGVuaWRhdGVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc29ydCBieSBwZXJpb2RTdGFydAogICAgICAgICkucGVyaW9kCiAgICAgICkucm9sbG91dEludGVydmFscyAoICkKICAgICkKICAgIHVuaW9uICggKCAoICggKCBbTWVkaWNhdGlvblJlcXVlc3Q6ICJEZXh0cm9hbXBoZXRhbWluZSJdICkuaXNNZWRpY2F0aW9uT3JkZXIgKCApICkgRGV4dHJvYW1waGV0YW1pbmVNZWQKICAgICAgICAgICAgcmV0dXJuIGFsbCB7CiAgICAgICAgICAgICAgcGVyaW9kOiBEZXh0cm9hbXBoZXRhbWluZU1lZC5tZWRpY2F0aW9uUmVxdWVzdFBlcmlvZCAoICksCiAgICAgICAgICAgICAgcGVyaW9kU3RhcnQ6IHN0YXJ0IG9mIERleHRyb2FtcGhldGFtaW5lTWVkLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kICggKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNvcnQgYnkgcGVyaW9kU3RhcnQKICAgICAgICApLnBlcmlvZAogICAgICApLnJvbGxvdXRJbnRlcnZhbHMgKCApCiAgICApCiAgICB1bmlvbiAoICggKCAoICggW01lZGljYXRpb25SZXF1ZXN0OiAiTGlzZGV4YW1mZXRhbWluZSJdICkuaXNNZWRpY2F0aW9uT3JkZXIgKCApICkgTGlzZGV4YW1mZXRhbWluZU1lZAogICAgICAgICAgICByZXR1cm4gYWxsIHsKICAgICAgICAgICAgICBwZXJpb2Q6IExpc2RleGFtZmV0YW1pbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApLAogICAgICAgICAgICAgIHBlcmlvZFN0YXJ0OiBzdGFydCBvZiBMaXNkZXhhbWZldGFtaW5lTWVkLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kICggKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNvcnQgYnkgcGVyaW9kU3RhcnQKICAgICAgICApLnBlcmlvZAogICAgICApLnJvbGxvdXRJbnRlcnZhbHMgKCApCiAgICApCiAgICB1bmlvbiAoICggKCAoICggW01lZGljYXRpb25SZXF1ZXN0OiAiTWV0aHlscGhlbmlkYXRlIl0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBNZXRoeWxwaGVuaWRhdGVNZWQKICAgICAgICAgICAgcmV0dXJuIGFsbCB7CiAgICAgICAgICAgICAgcGVyaW9kOiBNZXRoeWxwaGVuaWRhdGVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApLAogICAgICAgICAgICAgIHBlcmlvZFN0YXJ0OiBzdGFydCBvZiBNZXRoeWxwaGVuaWRhdGVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc29ydCBieSBwZXJpb2RTdGFydAogICAgICAgICkucGVyaW9kCiAgICAgICkucm9sbG91dEludGVydmFscyAoICkKICAgICkKICAgIHVuaW9uICggKCAoICggKCBbTWVkaWNhdGlvblJlcXVlc3Q6ICJHdWFuZmFjaW5lIE1lZGljYXRpb25zIl0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBHdWFuZmFjaW5lTWVkCiAgICAgICAgICAgIHJldHVybiBhbGwgewogICAgICAgICAgICAgIHBlcmlvZDogR3VhbmZhY2luZU1lZC5tZWRpY2F0aW9uUmVxdWVzdFBlcmlvZCAoICksCiAgICAgICAgICAgICAgcGVyaW9kU3RhcnQ6IHN0YXJ0IG9mIEd1YW5mYWNpbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc29ydCBieSBwZXJpb2RTdGFydAogICAgICAgICkucGVyaW9kCiAgICAgICkucm9sbG91dEludGVydmFscyAoICkKICAgICkKICAgIHVuaW9uICggKCAoICggKCBbTWVkaWNhdGlvblJlcXVlc3Q6ICJtZXRoYW1waGV0YW1pbmUgaHlkcm9jaGxvcmlkZSA1IE1HIE9yYWwgVGFibGV0Il0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBNZXRoYW1waGV0YW1pbmVNZWQKICAgICAgICAgICAgcmV0dXJuIGFsbCB7CiAgICAgICAgICAgICAgcGVyaW9kOiBNZXRoYW1waGV0YW1pbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApLAogICAgICAgICAgICAgIHBlcmlvZFN0YXJ0OiBzdGFydCBvZiBNZXRoYW1waGV0YW1pbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc29ydCBieSBwZXJpb2RTdGFydAogICAgICAgICkucGVyaW9kCiAgICAgICkucm9sbG91dEludGVydmFscyAoICkKICAgICkKICAgIHVuaW9uICggKCAoICggKCBbTWVkaWNhdGlvblJlcXVlc3Q6ICJWaWxveGF6aW5lIl0gKS5pc01lZGljYXRpb25PcmRlciAoICkgKSBWaWxveGF6aW5lTWVkCiAgICAgICAgICAgIHJldHVybiBhbGwgewogICAgICAgICAgICAgIHBlcmlvZDogVmlsb3hhemluZU1lZC5tZWRpY2F0aW9uUmVxdWVzdFBlcmlvZCAoICksCiAgICAgICAgICAgICAgcGVyaW9kU3RhcnQ6IHN0YXJ0IG9mIFZpbG94YXppbmVNZWQubWVkaWNhdGlvblJlcXVlc3RQZXJpb2QgKCApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc29ydCBieSBwZXJpb2RTdGFydAogICAgICAgICkucGVyaW9kCiAgICAgICkucm9sbG91dEludGVydmFscyAoICkKICAgICkgKSBBREhETWVkaWNhdGlvbgogICAgbGV0IElQU0RBbmRDb250aW51YXRpb25NYWludGVuYW5jZVBoYXNlOiBJbnRlcnZhbFsiSVBTRCIsICJJUFNEIiArIDMwMCBkYXlzXQogICAgcmV0dXJuIGFsbCBBREhETWVkaWNhdGlvbgogICAgICBpbnRlcnNlY3QgSVBTREFuZENvbnRpbnVhdGlvbk1haW50ZW5hbmNlUGhhc2UKCmRlZmluZSAiRGVub21pbmF0b3IgMiI6CiAgIkluaXRpYWwgUG9wdWxhdGlvbiAyIgoKZGVmaW5lICJOdW1lcmF0b3IgMiI6CiAgZXhpc3RzICJFbmNvdW50ZXIgRHVyaW5nIEluaXRpYXRpb24gUGhhc2UiCiAgICBhbmQgKCAiVHdvIG9yIE1vcmUgRW5jb3VudGVycyAzMSB0byAzMDAgRGF5cyBpbnRvIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiCiAgICAgICAgb3IgKCBleGlzdHMgIkVuY291bnRlciAzMSB0byAzMDAgRGF5cyBpbnRvIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiIEVuY291bnRlcjEKICAgICAgICAgICAgd2l0aCAiVmlydHVhbCBFbmNvdW50ZXIgMzEgdG8gMzAwIERheXMgaW50byBDb250aW51YXRpb24gYW5kIE1haW50ZW5hbmNlIFBoYXNlIiBFbmNvdW50ZXIyCiAgICAgICAgICAgICAgc3VjaCB0aGF0IEVuY291bnRlcjEgaXMgbm90IG51bGwKICAgICAgICAgICAgICAgIGFuZCBFbmNvdW50ZXIyIGlzIG5vdCBudWxsCiAgICAgICAgICAgICAgICBhbmQgRW5jb3VudGVyMSAhfiBFbmNvdW50ZXIyCiAgICAgICAgKQogICAgKQoKZGVmaW5lICJUd28gb3IgTW9yZSBFbmNvdW50ZXJzIDMxIHRvIDMwMCBEYXlzIGludG8gQ29udGludWF0aW9uIGFuZCBNYWludGVuYW5jZSBQaGFzZSI6CiAgQ291bnQoIkVuY291bnRlciAzMSB0byAzMDAgRGF5cyBpbnRvIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiKSA+PSAyCgpkZWZpbmUgIkVuY291bnRlciAzMSB0byAzMDAgRGF5cyBpbnRvIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiOgogICggIlF1YWxpZnlpbmcgTnVtZXJhdG9yIEVuY291bnRlciIuaXNFbmNvdW50ZXJQZXJmb3JtZWQgKCApICkgVmFsaWROdW1lcmF0b3JFbmNvdW50ZXIKICAgIHdoZXJlIENRTUNvbW1vbi4iVG9EYXRlSW50ZXJ2YWwiICggVmFsaWROdW1lcmF0b3JFbmNvdW50ZXIucGVyaW9kICkgc3RhcnRzIGR1cmluZyBkYXkgb2YgSW50ZXJ2YWxbIklQU0QiICsgMzEgZGF5cywgIklQU0QiICsgMzAwIGRheXNdCiAgICByZXR1cm4gZGF0ZSBmcm9tIHN0YXJ0IG9mIFZhbGlkTnVtZXJhdG9yRW5jb3VudGVyLnBlcmlvZAoKZGVmaW5lICJWaXJ0dWFsIEVuY291bnRlciAzMSB0byAzMDAgRGF5cyBpbnRvIENvbnRpbnVhdGlvbiBhbmQgTWFpbnRlbmFuY2UgUGhhc2UiOgogICggKCBbRW5jb3VudGVyOiAiVmlydHVhbCBFbmNvdW50ZXIiXSApLmlzRW5jb3VudGVyUGVyZm9ybWVkICggKSApIFZpcnR1YWxFbmMKICAgIHdoZXJlIENRTUNvbW1vbi4iVG9EYXRlSW50ZXJ2YWwiICggVmlydHVhbEVuYy5wZXJpb2QgKSBzdGFydHMgZHVyaW5nIGRheSBvZiBJbnRlcnZhbFsiSVBTRCIgKyAzMSBkYXlzLCAiSVBTRCIgKyAzMDAgZGF5c10KICAgIHJldHVybiBkYXRlIGZyb20gc3RhcnQgb2YgVmlydHVhbEVuYy5wZXJpb2QKCmRlZmluZSAiU0RFIEV0aG5pY2l0eSI6CiAgU0RFLiJTREUgRXRobmljaXR5IgoKZGVmaW5lICJTREUgUGF5ZXIiOgogIFNERS4iU0RFIFBheWVyIgoKZGVmaW5lICJTREUgUmFjZSI6CiAgU0RFLiJTREUgUmFjZSIKCmRlZmluZSAiU0RFIFNleCI6CiAgU0RFLiJTREUgU2V4Ig==",
    "url" : "https://madie.cms.gov/Library-CMS136FHIRChildADHDMedFollowUp.cql"
  }]
}