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
| Draft as of 2026-09-19 |
{
"resourceType" : "Library",
"id" : "CMS69FHIRPCSBMIScreenAndFollowUp",
"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 CMS69FHIRPCSBMIScreenAndFollowUp 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 USQualityCoreCommon version '0.1.0-cibuild' called USQualityCoreCommon\ninclude SupplementalDataElements version '6.1.000' called SDE\ninclude Status version '2.1.000' called Status\ninclude Hospice version '7.1.000' called Hospice\ninclude PalliativeCare version '2.1.000' called PalliativeCare\n\n\ncodesystem "ActCode": 'http://terminology.hl7.org/CodeSystem/v3-ActCode'\ncodesystem "ICD10CM": 'http://hl7.org/fhir/sid/icd-10-cm'\ncodesystem "LOINC": 'http://loinc.org'\ncodesystem "ObservationCategoryCodes": 'http://terminology.hl7.org/CodeSystem/observation-category'\n\nvalueset "Encounter to Evaluate BMI": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1.1751'\nvalueset "Follow Up for Above Normal BMI": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1.1525'\nvalueset "Follow Up for Below Normal BMI": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1.1528'\nvalueset "Medical Reason": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1007'\nvalueset "Medications for Above Normal BMI": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1561'\nvalueset "Medications for Below Normal BMI": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1562'\nvalueset "Overweight or Obese": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1047.502'\nvalueset "Patient Declined": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1582'\nvalueset "Pregnancy or Other Related Diagnoses": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1.1623'\nvalueset "Referrals Where Weight Assessment May Occur": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1.1527'\nvalueset "Underweight": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1563'\n\ncode "Body mass index (BMI) [Ratio]": '39156-5' from "LOINC" display 'Body mass index (BMI) [Ratio]'\ncode "virtual": 'VR' from "ActCode" display 'virtual'\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 "Initial Population":\n exists "Qualifying Encounter During Day Of Measurement Period" QualifyingEncounter\n where "AgeInYearsAt"(date from start of QualifyingEncounter.period) >= 18\n\ndefine "Denominator":\n "Initial Population"\n\ndefine "Denominator Exclusions":\n Hospice."Has Hospice Services"\n or PalliativeCare."Has Palliative Care in the Measurement Period"\n or "Is Pregnant During Measurement Period"\n\ndefine "Numerator":\n exists "High BMI And Follow Up Provided"\n or exists "Low BMI And Follow Up Provided"\n or "Has Normal BMI"\n\ndefine "Denominator Exceptions":\n exists "Medical Reason For Not Documenting A Follow Up Plan For Low Or High BMI"\n or exists "Medical Reason Or Patient Reason For Not Performing BMI Exam"\n\ndefine "BMI During Measurement Period":\n ( ( [USCore.BMIProfile] ).isObservationBMI ( ) ) BMI\n where BMI.value > 0 'kg/m2'\n and BMI.effective.toInterval ( ) during day of "Measurement Period"\n\ndefine "Documented Low BMI During Measurement Period":\n "BMI During Measurement Period" BMI\n where BMI.value < 18.5 'kg/m2'\n\ndefine "Documented High BMI During Measurement Period":\n "BMI During Measurement Period" BMI\n where BMI.value >= 25 'kg/m2'\n\ndefine "Has Normal BMI":\n exists ( "BMI During Measurement Period" BMI\n where BMI.value >= 18.5 'kg/m2'\n and BMI.value < 25 'kg/m2'\n )\n and not ( exists "Documented High BMI During Measurement Period"\n or exists "Documented Low BMI During Measurement Period"\n )\n\ndefine "High BMI And Follow Up Provided":\n "Documented High BMI During Measurement Period" HighBMI\n with ( "High BMI Interventions Ordered"\n union "High BMI Interventions Performed" ) HighBMIInterventions\n such that Coalesce(HighBMIInterventions.performed.toInterval(), HighBMIInterventions.authoredOn.toInterval()) starts during day of "Measurement Period"\n\ndefine "High BMI Interventions Ordered":\n ( ( [ServiceRequest: "Follow Up for Above Normal BMI"]\n union [ServiceRequest: "Referrals Where Weight Assessment May Occur"]\n union [MedicationRequest: "Medications for Above Normal BMI"] ) HighInterventionsOrdered\n where HighInterventionsOrdered.reasonCode in "Overweight or Obese"\n or ( // [E-13] base FHIR.Condition retrieve (defect-tracking/engine-issues.md E-13)\n // Original:\n // exists ( [ConditionProblemsHealthConcerns: "Overweight or Obese"]\n // union [ConditionEncounterDiagnosis: "Overweight or Obese"] ) OverweightObese\n exists ( [FHIR.Condition: "Overweight or Obese"] ) OverweightObese\n where OverweightObese.prevalenceInterval ( ) starts before or on day of HighInterventionsOrdered.authoredOn\n )\n )\n\ndefine "High BMI Interventions Performed":\n ( [Procedure: "Follow Up for Above Normal BMI"] HighInterventionsPerformed\n where HighInterventionsPerformed.reasonCode in "Overweight or Obese"\n or ( exists [ConditionProblemsHealthConcerns: "Overweight or Obese"] OverweightObese\n where OverweightObese.prevalenceInterval ( ) starts before or on day of start of HighInterventionsPerformed.performed.toInterval ( )\n and not ( OverweightObese.prevalenceInterval ( ) ends before day of start of HighInterventionsPerformed.performed.toInterval ( ) )\n )\n )\n\ndefine "Medical Reason Or Patient Reason For Not Performing BMI Exam":\n [ObservationCancelled: "Body mass index (BMI) [Ratio]"] NoBMI\n with "Qualifying Encounter During Day Of Measurement Period" QualifyingEncounter\n such that NoBMI.effective.toInterval ( ) ends same day as start of QualifyingEncounter.period\n where ( NoBMI.notDoneReason ( ) in "Patient Declined"\n or NoBMI.notDoneReason ( ) in "Medical Reason"\n )\n\ndefine "Low BMI Interventions Ordered":\n ( ( [ServiceRequest: "Follow Up for Below Normal BMI"]\n union [ServiceRequest: "Referrals Where Weight Assessment May Occur"]\n union [MedicationRequest: "Medications for Below Normal BMI"] ) LowInterventionsOrdered\n where LowInterventionsOrdered.reasonCode in "Underweight"\n or ( // [E-13] base FHIR.Condition retrieve (defect-tracking/engine-issues.md E-13)\n // Original:\n // exists ( [ConditionProblemsHealthConcerns: "Underweight"]\n // union [ConditionEncounterDiagnosis: "Underweight"] ) UnderweightDiagnosis\n exists ( [FHIR.Condition: "Underweight"] ) UnderweightDiagnosis\n where UnderweightDiagnosis.prevalenceInterval ( ) starts before or on day of LowInterventionsOrdered.authoredOn\n and LowInterventionsOrdered.authoredOn during day of "Measurement Period"\n )\n )\n\ndefine "Low BMI Interventions Performed":\n ( [Procedure: "Follow Up for Below Normal BMI"] LowInterventionsPerformed\n where LowInterventionsPerformed.reasonCode in "Underweight"\n and LowInterventionsPerformed.status = 'completed'\n or ( exists [ConditionProblemsHealthConcerns: "Underweight"] UnderweightDiagnosis\n where ( UnderweightDiagnosis.isHealthConcern ( ) )\n and UnderweightDiagnosis.prevalenceInterval ( ) starts before or on day of start of LowInterventionsPerformed.performed.toInterval ( )\n and LowInterventionsPerformed.performed.toInterval ( ) during day of "Measurement Period"\n and not ( UnderweightDiagnosis.prevalenceInterval ( ) ends before day of start of LowInterventionsPerformed.performed.toInterval ( ) )\n )\n )\n\ndefine "Low BMI And Follow Up Provided":\n ( "Documented Low BMI During Measurement Period" LowBMI\n with ( "Low BMI Interventions Ordered"\n union "Low BMI Interventions Performed" ) LowBMIInterventions\n such that Coalesce(LowBMIInterventions.performed.toInterval(), LowBMIInterventions.authoredOn.toInterval()) starts during day of "Measurement Period"\n )\n\ndefine "Medical Reason For Not Documenting A Follow Up Plan For Low Or High BMI":\n ( ( [ServiceNotRequested: "Referrals Where Weight Assessment May Occur"]\n union [ServiceNotRequested: "Follow Up for Above Normal BMI"]\n union [ServiceNotRequested: "Follow Up for Below Normal BMI"] ) NoBMIFollowUp\n with "Qualifying Encounter During Day Of Measurement Period" QualifyingEncounter\n such that NoBMIFollowUp.authoredOn same day as start of QualifyingEncounter.period\n where NoBMIFollowUp.status ~ 'completed'\n and NoBMIFollowUp.reasonRefused ( ) in "Medical Reason"\n )\n union ( ( [MedicationNotRequested: "Medications for Above Normal BMI"]\n union [MedicationNotRequested: "Medications for Below Normal BMI"] ) NoBMIFollowUp\n with "Qualifying Encounter During Day Of Measurement Period" QualifyingEncounter\n such that NoBMIFollowUp.authoredOn same day as start of QualifyingEncounter.period\n where NoBMIFollowUp.status ~ 'completed'\n and NoBMIFollowUp.reasonCode in "Medical Reason"\n )\n\ndefine "Is Pregnant During Measurement Period":\n exists ( // [E-13] base FHIR.Condition retrieve (defect-tracking/engine-issues.md E-13)\n // Original:\n // [ConditionProblemsHealthConcerns: "Pregnancy or Other Related Diagnoses"]\n // union [ConditionEncounterDiagnosis: "Pregnancy or Other Related Diagnoses"]\n [FHIR.Condition: "Pregnancy or Other Related Diagnoses"] PregnancyDiagnosis\n where PregnancyDiagnosis.prevalenceInterval ( ) overlaps day of "Measurement Period"\n )\n or exists ( [USCore.ObservationPregnancyStatusProfile] PregnantObservation\n where PregnantObservation.effective.toInterval ( ) overlaps day of "Measurement Period"\n and PregnantObservation.status in { 'final', 'amended', 'corrected' }\n and ( PregnantObservation.value in "Pregnancy or Other Related Diagnoses" )\n )\n\ndefine "Qualifying Encounter During Day Of Measurement Period":\n [Encounter: "Encounter to Evaluate BMI"] BMIEncounter\n where BMIEncounter.period during day of "Measurement Period"\n and BMIEncounter.class !~ "virtual"\n and BMIEncounter.status = 'finished'\n\ndefine "SDE Ethnicity":\n SDE."SDE Ethnicity"\n\ndefine "SDE Payer":\n SDE."SDE Payer"\n\ndefine "SDE Race":\n SDE."SDE Race"\n\ndefine "SDE Sex":\n SDE."SDE Sex"</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/CMS69FHIRPCSBMIScreenAndFollowUp",
"version" : "1.1.000",
"name" : "CMS69FHIRPCSBMIScreenAndFollowUp",
"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" : "LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBDTVM2OUZISVJQQ1NCTUlTY3JlZW5BbmRGb2xsb3dVcCB2ZXJzaW9uICcxLjEuMDAwJwoKdXNpbmcgVVNRdWFsaXR5Q29yZSB2ZXJzaW9uICcwLjEuMC1jaWJ1aWxkJwp1c2luZyBVU0NvcmUgdmVyc2lvbiAnNi4xLjAtZGVyaXZlZCcKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgaGw3LmZoaXIudXYuY3FsLkZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJyBjYWxsZWQgRkhJUkhlbHBlcnMKaW5jbHVkZSBobDcuZmhpci51di5jcWwuRkhJUkNvbW1vbiB2ZXJzaW9uICcyLjAuMCcgY2FsbGVkIEZISVJDb21tb24KaW5jbHVkZSBobDcuZmhpci51cy5jcWwuVVNDb3JlQ29tbW9uIHZlcnNpb24gJzIuMC4wLWJhbGxvdCcgY2FsbGVkIFVTQ29yZUNvbW1vbgppbmNsdWRlIGhsNy5maGlyLnVzLmNxbC5VU0NvcmVFbGVtZW50cyB2ZXJzaW9uICcyLjAuMC1iYWxsb3QnIGNhbGxlZCBVU0NvcmVFbGVtZW50cwoKaW5jbHVkZSBVU1F1YWxpdHlDb3JlQ29tbW9uIHZlcnNpb24gJzAuMS4wLWNpYnVpbGQnIGNhbGxlZCBVU1F1YWxpdHlDb3JlQ29tbW9uCmluY2x1ZGUgU3VwcGxlbWVudGFsRGF0YUVsZW1lbnRzIHZlcnNpb24gJzYuMS4wMDAnIGNhbGxlZCBTREUKaW5jbHVkZSBTdGF0dXMgdmVyc2lvbiAnMi4xLjAwMCcgY2FsbGVkIFN0YXR1cwppbmNsdWRlIEhvc3BpY2UgdmVyc2lvbiAnNy4xLjAwMCcgY2FsbGVkIEhvc3BpY2UKaW5jbHVkZSBQYWxsaWF0aXZlQ2FyZSB2ZXJzaW9uICcyLjEuMDAwJyBjYWxsZWQgUGFsbGlhdGl2ZUNhcmUKCgpjb2Rlc3lzdGVtICJBY3RDb2RlIjogJ2h0dHA6Ly90ZXJtaW5vbG9neS5obDcub3JnL0NvZGVTeXN0ZW0vdjMtQWN0Q29kZScKY29kZXN5c3RlbSAiSUNEMTBDTSI6ICdodHRwOi8vaGw3Lm9yZy9maGlyL3NpZC9pY2QtMTAtY20nCmNvZGVzeXN0ZW0gIkxPSU5DIjogJ2h0dHA6Ly9sb2luYy5vcmcnCmNvZGVzeXN0ZW0gIk9ic2VydmF0aW9uQ2F0ZWdvcnlDb2RlcyI6ICdodHRwOi8vdGVybWlub2xvZ3kuaGw3Lm9yZy9Db2RlU3lzdGVtL29ic2VydmF0aW9uLWNhdGVnb3J5JwoKdmFsdWVzZXQgIkVuY291bnRlciB0byBFdmFsdWF0ZSBCTUkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNjAwLjEuMTc1MScKdmFsdWVzZXQgIkZvbGxvdyBVcCBmb3IgQWJvdmUgTm9ybWFsIEJNSSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy42MDAuMS4xNTI1Jwp2YWx1ZXNldCAiRm9sbG93IFVwIGZvciBCZWxvdyBOb3JtYWwgQk1JIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjYwMC4xLjE1MjgnCnZhbHVlc2V0ICJNZWRpY2FsIFJlYXNvbiI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy41MjYuMy4xMDA3Jwp2YWx1ZXNldCAiTWVkaWNhdGlvbnMgZm9yIEFib3ZlIE5vcm1hbCBCTUkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNTI2LjMuMTU2MScKdmFsdWVzZXQgIk1lZGljYXRpb25zIGZvciBCZWxvdyBOb3JtYWwgQk1JIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjUyNi4zLjE1NjInCnZhbHVlc2V0ICJPdmVyd2VpZ2h0IG9yIE9iZXNlIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzc2Mi4xLjQuMTA0Ny41MDInCnZhbHVlc2V0ICJQYXRpZW50IERlY2xpbmVkIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjUyNi4zLjE1ODInCnZhbHVlc2V0ICJQcmVnbmFuY3kgb3IgT3RoZXIgUmVsYXRlZCBEaWFnbm9zZXMiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNjAwLjEuMTYyMycKdmFsdWVzZXQgIlJlZmVycmFscyBXaGVyZSBXZWlnaHQgQXNzZXNzbWVudCBNYXkgT2NjdXIiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNjAwLjEuMTUyNycKdmFsdWVzZXQgIlVuZGVyd2VpZ2h0IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjUyNi4zLjE1NjMnCgpjb2RlICJCb2R5IG1hc3MgaW5kZXggKEJNSSkgW1JhdGlvXSI6ICczOTE1Ni01JyBmcm9tICJMT0lOQyIgZGlzcGxheSAnQm9keSBtYXNzIGluZGV4IChCTUkpIFtSYXRpb10nCmNvZGUgInZpcnR1YWwiOiAnVlInIGZyb20gIkFjdENvZGUiIGRpc3BsYXkgJ3ZpcnR1YWwnCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZVRpbWU+CiAgZGVmYXVsdCBJbnRlcnZhbFtAMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaLCBAMjAyNy0wMS0wMVQwMDowMDowMC4wMDBaKQoKY29udGV4dCBQYXRpZW50CgpkZWZpbmUgIkluaXRpYWwgUG9wdWxhdGlvbiI6CiAgZXhpc3RzICJRdWFsaWZ5aW5nIEVuY291bnRlciBEdXJpbmcgRGF5IE9mIE1lYXN1cmVtZW50IFBlcmlvZCIgUXVhbGlmeWluZ0VuY291bnRlcgogICAgd2hlcmUgIkFnZUluWWVhcnNBdCIoZGF0ZSBmcm9tIHN0YXJ0IG9mIFF1YWxpZnlpbmdFbmNvdW50ZXIucGVyaW9kKSA+PSAxOAoKZGVmaW5lICJEZW5vbWluYXRvciI6CiAgIkluaXRpYWwgUG9wdWxhdGlvbiIKCmRlZmluZSAiRGVub21pbmF0b3IgRXhjbHVzaW9ucyI6CiAgSG9zcGljZS4iSGFzIEhvc3BpY2UgU2VydmljZXMiCiAgICBvciBQYWxsaWF0aXZlQ2FyZS4iSGFzIFBhbGxpYXRpdmUgQ2FyZSBpbiB0aGUgTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgb3IgIklzIFByZWduYW50IER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiCgpkZWZpbmUgIk51bWVyYXRvciI6CiAgZXhpc3RzICJIaWdoIEJNSSBBbmQgRm9sbG93IFVwIFByb3ZpZGVkIgogICAgb3IgZXhpc3RzICJMb3cgQk1JIEFuZCBGb2xsb3cgVXAgUHJvdmlkZWQiCiAgICBvciAiSGFzIE5vcm1hbCBCTUkiCgpkZWZpbmUgIkRlbm9taW5hdG9yIEV4Y2VwdGlvbnMiOgogIGV4aXN0cyAiTWVkaWNhbCBSZWFzb24gRm9yIE5vdCBEb2N1bWVudGluZyBBIEZvbGxvdyBVcCBQbGFuIEZvciBMb3cgT3IgSGlnaCBCTUkiCiAgICBvciBleGlzdHMgIk1lZGljYWwgUmVhc29uIE9yIFBhdGllbnQgUmVhc29uIEZvciBOb3QgUGVyZm9ybWluZyBCTUkgRXhhbSIKCmRlZmluZSAiQk1JIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiOgogICggKCBbVVNDb3JlLkJNSVByb2ZpbGVdICkuaXNPYnNlcnZhdGlvbkJNSSAoICkgKSBCTUkKICAgIHdoZXJlIEJNSS52YWx1ZSA+IDAgJ2tnL20yJwogICAgICBhbmQgQk1JLmVmZmVjdGl2ZS50b0ludGVydmFsICggKSBkdXJpbmcgZGF5IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgpkZWZpbmUgIkRvY3VtZW50ZWQgTG93IEJNSSBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIjoKICAiQk1JIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiIEJNSQogICAgd2hlcmUgQk1JLnZhbHVlIDwgMTguNSAna2cvbTInCgpkZWZpbmUgIkRvY3VtZW50ZWQgSGlnaCBCTUkgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCI6CiAgIkJNSSBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIiBCTUkKICAgIHdoZXJlIEJNSS52YWx1ZSA+PSAyNSAna2cvbTInCgpkZWZpbmUgIkhhcyBOb3JtYWwgQk1JIjoKICBleGlzdHMgKCAiQk1JIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiIEJNSQogICAgICB3aGVyZSBCTUkudmFsdWUgPj0gMTguNSAna2cvbTInCiAgICAgICAgYW5kIEJNSS52YWx1ZSA8IDI1ICdrZy9tMicKICApCiAgICBhbmQgbm90ICggZXhpc3RzICJEb2N1bWVudGVkIEhpZ2ggQk1JIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiCiAgICAgICAgb3IgZXhpc3RzICJEb2N1bWVudGVkIExvdyBCTUkgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCIKICAgICkKCmRlZmluZSAiSGlnaCBCTUkgQW5kIEZvbGxvdyBVcCBQcm92aWRlZCI6CiAgIkRvY3VtZW50ZWQgSGlnaCBCTUkgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCIgSGlnaEJNSQogICAgd2l0aCAoICJIaWdoIEJNSSBJbnRlcnZlbnRpb25zIE9yZGVyZWQiCiAgICAgIHVuaW9uICJIaWdoIEJNSSBJbnRlcnZlbnRpb25zIFBlcmZvcm1lZCIgKSBIaWdoQk1JSW50ZXJ2ZW50aW9ucwogICAgICBzdWNoIHRoYXQgQ29hbGVzY2UoSGlnaEJNSUludGVydmVudGlvbnMucGVyZm9ybWVkLnRvSW50ZXJ2YWwoKSwgSGlnaEJNSUludGVydmVudGlvbnMuYXV0aG9yZWRPbi50b0ludGVydmFsKCkpIHN0YXJ0cyBkdXJpbmcgZGF5IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgpkZWZpbmUgIkhpZ2ggQk1JIEludGVydmVudGlvbnMgT3JkZXJlZCI6CiAgKCAoIFtTZXJ2aWNlUmVxdWVzdDogIkZvbGxvdyBVcCBmb3IgQWJvdmUgTm9ybWFsIEJNSSJdCiAgICAgIHVuaW9uIFtTZXJ2aWNlUmVxdWVzdDogIlJlZmVycmFscyBXaGVyZSBXZWlnaHQgQXNzZXNzbWVudCBNYXkgT2NjdXIiXQogICAgICB1bmlvbiBbTWVkaWNhdGlvblJlcXVlc3Q6ICJNZWRpY2F0aW9ucyBmb3IgQWJvdmUgTm9ybWFsIEJNSSJdICkgSGlnaEludGVydmVudGlvbnNPcmRlcmVkCiAgICAgIHdoZXJlIEhpZ2hJbnRlcnZlbnRpb25zT3JkZXJlZC5yZWFzb25Db2RlIGluICJPdmVyd2VpZ2h0IG9yIE9iZXNlIgogICAgICAgIG9yICggLy8gW0UtMTNdIGJhc2UgRkhJUi5Db25kaXRpb24gcmV0cmlldmUgKGRlZmVjdC10cmFja2luZy9lbmdpbmUtaXNzdWVzLm1kIEUtMTMpCiAgICAgICAgICAgIC8vIE9yaWdpbmFsOgogICAgICAgICAgICAvLyAgIGV4aXN0cyAoIFtDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zOiAiT3ZlcndlaWdodCBvciBPYmVzZSJdCiAgICAgICAgICAgIC8vICAgICAgIHVuaW9uIFtDb25kaXRpb25FbmNvdW50ZXJEaWFnbm9zaXM6ICJPdmVyd2VpZ2h0IG9yIE9iZXNlIl0gKSBPdmVyd2VpZ2h0T2Jlc2UKICAgICAgICAgICAgZXhpc3RzICggW0ZISVIuQ29uZGl0aW9uOiAiT3ZlcndlaWdodCBvciBPYmVzZSJdICkgT3ZlcndlaWdodE9iZXNlCiAgICAgICAgICAgIHdoZXJlIE92ZXJ3ZWlnaHRPYmVzZS5wcmV2YWxlbmNlSW50ZXJ2YWwgKCApIHN0YXJ0cyBiZWZvcmUgb3Igb24gZGF5IG9mIEhpZ2hJbnRlcnZlbnRpb25zT3JkZXJlZC5hdXRob3JlZE9uCiAgICAgICAgKQogICkKCmRlZmluZSAiSGlnaCBCTUkgSW50ZXJ2ZW50aW9ucyBQZXJmb3JtZWQiOgogICggW1Byb2NlZHVyZTogIkZvbGxvdyBVcCBmb3IgQWJvdmUgTm9ybWFsIEJNSSJdIEhpZ2hJbnRlcnZlbnRpb25zUGVyZm9ybWVkCiAgICAgIHdoZXJlIEhpZ2hJbnRlcnZlbnRpb25zUGVyZm9ybWVkLnJlYXNvbkNvZGUgaW4gIk92ZXJ3ZWlnaHQgb3IgT2Jlc2UiCiAgICAgICAgb3IgKCBleGlzdHMgW0NvbmRpdGlvblByb2JsZW1zSGVhbHRoQ29uY2VybnM6ICJPdmVyd2VpZ2h0IG9yIE9iZXNlIl0gT3ZlcndlaWdodE9iZXNlCiAgICAgICAgICAgIHdoZXJlIE92ZXJ3ZWlnaHRPYmVzZS5wcmV2YWxlbmNlSW50ZXJ2YWwgKCApIHN0YXJ0cyBiZWZvcmUgb3Igb24gZGF5IG9mIHN0YXJ0IG9mIEhpZ2hJbnRlcnZlbnRpb25zUGVyZm9ybWVkLnBlcmZvcm1lZC50b0ludGVydmFsICggKQogICAgICAgICAgICAgIGFuZCBub3QgKCBPdmVyd2VpZ2h0T2Jlc2UucHJldmFsZW5jZUludGVydmFsICggKSBlbmRzIGJlZm9yZSBkYXkgb2Ygc3RhcnQgb2YgSGlnaEludGVydmVudGlvbnNQZXJmb3JtZWQucGVyZm9ybWVkLnRvSW50ZXJ2YWwgKCApICkKICAgICAgICApCiAgKQoKZGVmaW5lICJNZWRpY2FsIFJlYXNvbiBPciBQYXRpZW50IFJlYXNvbiBGb3IgTm90IFBlcmZvcm1pbmcgQk1JIEV4YW0iOgogIFtPYnNlcnZhdGlvbkNhbmNlbGxlZDogIkJvZHkgbWFzcyBpbmRleCAoQk1JKSBbUmF0aW9dIl0gTm9CTUkKICAgIHdpdGggIlF1YWxpZnlpbmcgRW5jb3VudGVyIER1cmluZyBEYXkgT2YgTWVhc3VyZW1lbnQgUGVyaW9kIiBRdWFsaWZ5aW5nRW5jb3VudGVyCiAgICAgIHN1Y2ggdGhhdCBOb0JNSS5lZmZlY3RpdmUudG9JbnRlcnZhbCAoICkgZW5kcyBzYW1lIGRheSBhcyBzdGFydCBvZiBRdWFsaWZ5aW5nRW5jb3VudGVyLnBlcmlvZAogICAgd2hlcmUgKCBOb0JNSS5ub3REb25lUmVhc29uICggKSBpbiAiUGF0aWVudCBEZWNsaW5lZCIKICAgICAgICBvciBOb0JNSS5ub3REb25lUmVhc29uICggKSBpbiAiTWVkaWNhbCBSZWFzb24iCiAgICApCgpkZWZpbmUgIkxvdyBCTUkgSW50ZXJ2ZW50aW9ucyBPcmRlcmVkIjoKICAoICggW1NlcnZpY2VSZXF1ZXN0OiAiRm9sbG93IFVwIGZvciBCZWxvdyBOb3JtYWwgQk1JIl0KICAgICAgdW5pb24gW1NlcnZpY2VSZXF1ZXN0OiAiUmVmZXJyYWxzIFdoZXJlIFdlaWdodCBBc3Nlc3NtZW50IE1heSBPY2N1ciJdCiAgICAgIHVuaW9uIFtNZWRpY2F0aW9uUmVxdWVzdDogIk1lZGljYXRpb25zIGZvciBCZWxvdyBOb3JtYWwgQk1JIl0gKSBMb3dJbnRlcnZlbnRpb25zT3JkZXJlZAogICAgICB3aGVyZSBMb3dJbnRlcnZlbnRpb25zT3JkZXJlZC5yZWFzb25Db2RlIGluICJVbmRlcndlaWdodCIKICAgICAgICBvciAoIC8vIFtFLTEzXSBiYXNlIEZISVIuQ29uZGl0aW9uIHJldHJpZXZlIChkZWZlY3QtdHJhY2tpbmcvZW5naW5lLWlzc3Vlcy5tZCBFLTEzKQogICAgICAgICAgICAvLyBPcmlnaW5hbDoKICAgICAgICAgICAgLy8gICBleGlzdHMgKCBbQ29uZGl0aW9uUHJvYmxlbXNIZWFsdGhDb25jZXJuczogIlVuZGVyd2VpZ2h0Il0KICAgICAgICAgICAgLy8gICAgICAgdW5pb24gW0NvbmRpdGlvbkVuY291bnRlckRpYWdub3NpczogIlVuZGVyd2VpZ2h0Il0gKSBVbmRlcndlaWdodERpYWdub3NpcwogICAgICAgICAgICBleGlzdHMgKCBbRkhJUi5Db25kaXRpb246ICJVbmRlcndlaWdodCJdICkgVW5kZXJ3ZWlnaHREaWFnbm9zaXMKICAgICAgICAgICAgd2hlcmUgVW5kZXJ3ZWlnaHREaWFnbm9zaXMucHJldmFsZW5jZUludGVydmFsICggKSBzdGFydHMgYmVmb3JlIG9yIG9uIGRheSBvZiBMb3dJbnRlcnZlbnRpb25zT3JkZXJlZC5hdXRob3JlZE9uCiAgICAgICAgICAgICAgYW5kIExvd0ludGVydmVudGlvbnNPcmRlcmVkLmF1dGhvcmVkT24gZHVyaW5nIGRheSBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgICAgICkKICApCgpkZWZpbmUgIkxvdyBCTUkgSW50ZXJ2ZW50aW9ucyBQZXJmb3JtZWQiOgogICggW1Byb2NlZHVyZTogIkZvbGxvdyBVcCBmb3IgQmVsb3cgTm9ybWFsIEJNSSJdIExvd0ludGVydmVudGlvbnNQZXJmb3JtZWQKICAgICAgd2hlcmUgTG93SW50ZXJ2ZW50aW9uc1BlcmZvcm1lZC5yZWFzb25Db2RlIGluICJVbmRlcndlaWdodCIKICAgICAgICBhbmQgTG93SW50ZXJ2ZW50aW9uc1BlcmZvcm1lZC5zdGF0dXMgPSAnY29tcGxldGVkJwogICAgICAgIG9yICggZXhpc3RzIFtDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zOiAiVW5kZXJ3ZWlnaHQiXSBVbmRlcndlaWdodERpYWdub3NpcwogICAgICAgICAgICB3aGVyZSAoIFVuZGVyd2VpZ2h0RGlhZ25vc2lzLmlzSGVhbHRoQ29uY2VybiAoICkgKQogICAgICAgICAgICAgIGFuZCBVbmRlcndlaWdodERpYWdub3Npcy5wcmV2YWxlbmNlSW50ZXJ2YWwgKCApIHN0YXJ0cyBiZWZvcmUgb3Igb24gZGF5IG9mIHN0YXJ0IG9mIExvd0ludGVydmVudGlvbnNQZXJmb3JtZWQucGVyZm9ybWVkLnRvSW50ZXJ2YWwgKCApCiAgICAgICAgICAgICAgYW5kIExvd0ludGVydmVudGlvbnNQZXJmb3JtZWQucGVyZm9ybWVkLnRvSW50ZXJ2YWwgKCApIGR1cmluZyBkYXkgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKICAgICAgICAgICAgICBhbmQgbm90ICggVW5kZXJ3ZWlnaHREaWFnbm9zaXMucHJldmFsZW5jZUludGVydmFsICggKSBlbmRzIGJlZm9yZSBkYXkgb2Ygc3RhcnQgb2YgTG93SW50ZXJ2ZW50aW9uc1BlcmZvcm1lZC5wZXJmb3JtZWQudG9JbnRlcnZhbCAoICkgKQogICAgICAgICkKICApCgpkZWZpbmUgIkxvdyBCTUkgQW5kIEZvbGxvdyBVcCBQcm92aWRlZCI6CiAgKCAiRG9jdW1lbnRlZCBMb3cgQk1JIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiIExvd0JNSQogICAgICB3aXRoICggIkxvdyBCTUkgSW50ZXJ2ZW50aW9ucyBPcmRlcmVkIgogICAgICAgIHVuaW9uICJMb3cgQk1JIEludGVydmVudGlvbnMgUGVyZm9ybWVkIiApIExvd0JNSUludGVydmVudGlvbnMKICAgICAgICBzdWNoIHRoYXQgQ29hbGVzY2UoTG93Qk1JSW50ZXJ2ZW50aW9ucy5wZXJmb3JtZWQudG9JbnRlcnZhbCgpLCBMb3dCTUlJbnRlcnZlbnRpb25zLmF1dGhvcmVkT24udG9JbnRlcnZhbCgpKSBzdGFydHMgZHVyaW5nIGRheSBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgogICkKCmRlZmluZSAiTWVkaWNhbCBSZWFzb24gRm9yIE5vdCBEb2N1bWVudGluZyBBIEZvbGxvdyBVcCBQbGFuIEZvciBMb3cgT3IgSGlnaCBCTUkiOgogICggKCBbU2VydmljZU5vdFJlcXVlc3RlZDogIlJlZmVycmFscyBXaGVyZSBXZWlnaHQgQXNzZXNzbWVudCBNYXkgT2NjdXIiXQogICAgICB1bmlvbiBbU2VydmljZU5vdFJlcXVlc3RlZDogIkZvbGxvdyBVcCBmb3IgQWJvdmUgTm9ybWFsIEJNSSJdCiAgICAgIHVuaW9uIFtTZXJ2aWNlTm90UmVxdWVzdGVkOiAiRm9sbG93IFVwIGZvciBCZWxvdyBOb3JtYWwgQk1JIl0gKSBOb0JNSUZvbGxvd1VwCiAgICAgIHdpdGggIlF1YWxpZnlpbmcgRW5jb3VudGVyIER1cmluZyBEYXkgT2YgTWVhc3VyZW1lbnQgUGVyaW9kIiBRdWFsaWZ5aW5nRW5jb3VudGVyCiAgICAgICAgc3VjaCB0aGF0IE5vQk1JRm9sbG93VXAuYXV0aG9yZWRPbiBzYW1lIGRheSBhcyBzdGFydCBvZiBRdWFsaWZ5aW5nRW5jb3VudGVyLnBlcmlvZAogICAgICB3aGVyZSBOb0JNSUZvbGxvd1VwLnN0YXR1cyB+ICdjb21wbGV0ZWQnCiAgICAgICAgYW5kIE5vQk1JRm9sbG93VXAucmVhc29uUmVmdXNlZCAoICkgaW4gIk1lZGljYWwgUmVhc29uIgogICkKICAgIHVuaW9uICggKCBbTWVkaWNhdGlvbk5vdFJlcXVlc3RlZDogIk1lZGljYXRpb25zIGZvciBBYm92ZSBOb3JtYWwgQk1JIl0KICAgICAgICB1bmlvbiBbTWVkaWNhdGlvbk5vdFJlcXVlc3RlZDogIk1lZGljYXRpb25zIGZvciBCZWxvdyBOb3JtYWwgQk1JIl0gKSBOb0JNSUZvbGxvd1VwCiAgICAgICAgd2l0aCAiUXVhbGlmeWluZyBFbmNvdW50ZXIgRHVyaW5nIERheSBPZiBNZWFzdXJlbWVudCBQZXJpb2QiIFF1YWxpZnlpbmdFbmNvdW50ZXIKICAgICAgICAgIHN1Y2ggdGhhdCBOb0JNSUZvbGxvd1VwLmF1dGhvcmVkT24gc2FtZSBkYXkgYXMgc3RhcnQgb2YgUXVhbGlmeWluZ0VuY291bnRlci5wZXJpb2QKICAgICAgICB3aGVyZSBOb0JNSUZvbGxvd1VwLnN0YXR1cyB+ICdjb21wbGV0ZWQnCiAgICAgICAgICBhbmQgTm9CTUlGb2xsb3dVcC5yZWFzb25Db2RlIGluICJNZWRpY2FsIFJlYXNvbiIKICAgICkKCmRlZmluZSAiSXMgUHJlZ25hbnQgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCI6CiAgZXhpc3RzICggLy8gW0UtMTNdIGJhc2UgRkhJUi5Db25kaXRpb24gcmV0cmlldmUgKGRlZmVjdC10cmFja2luZy9lbmdpbmUtaXNzdWVzLm1kIEUtMTMpCiAgICAgIC8vIE9yaWdpbmFsOgogICAgICAvLyAgIFtDb25kaXRpb25Qcm9ibGVtc0hlYWx0aENvbmNlcm5zOiAiUHJlZ25hbmN5IG9yIE90aGVyIFJlbGF0ZWQgRGlhZ25vc2VzIl0KICAgICAgLy8gICAgIHVuaW9uIFtDb25kaXRpb25FbmNvdW50ZXJEaWFnbm9zaXM6ICJQcmVnbmFuY3kgb3IgT3RoZXIgUmVsYXRlZCBEaWFnbm9zZXMiXQogICAgICBbRkhJUi5Db25kaXRpb246ICJQcmVnbmFuY3kgb3IgT3RoZXIgUmVsYXRlZCBEaWFnbm9zZXMiXSBQcmVnbmFuY3lEaWFnbm9zaXMKICAgICAgd2hlcmUgUHJlZ25hbmN5RGlhZ25vc2lzLnByZXZhbGVuY2VJbnRlcnZhbCAoICkgb3ZlcmxhcHMgZGF5IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCiAgKQogICAgb3IgZXhpc3RzICggW1VTQ29yZS5PYnNlcnZhdGlvblByZWduYW5jeVN0YXR1c1Byb2ZpbGVdIFByZWduYW50T2JzZXJ2YXRpb24KICAgICAgICB3aGVyZSBQcmVnbmFudE9ic2VydmF0aW9uLmVmZmVjdGl2ZS50b0ludGVydmFsICggKSBvdmVybGFwcyBkYXkgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKICAgICAgICAgIGFuZCBQcmVnbmFudE9ic2VydmF0aW9uLnN0YXR1cyBpbiB7ICdmaW5hbCcsICdhbWVuZGVkJywgJ2NvcnJlY3RlZCcgfQogICAgICAgICAgYW5kICggUHJlZ25hbnRPYnNlcnZhdGlvbi52YWx1ZSBpbiAiUHJlZ25hbmN5IG9yIE90aGVyIFJlbGF0ZWQgRGlhZ25vc2VzIiApCiAgICApCgpkZWZpbmUgIlF1YWxpZnlpbmcgRW5jb3VudGVyIER1cmluZyBEYXkgT2YgTWVhc3VyZW1lbnQgUGVyaW9kIjoKICBbRW5jb3VudGVyOiAiRW5jb3VudGVyIHRvIEV2YWx1YXRlIEJNSSJdIEJNSUVuY291bnRlcgogICAgd2hlcmUgQk1JRW5jb3VudGVyLnBlcmlvZCBkdXJpbmcgZGF5IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCiAgICAgIGFuZCBCTUlFbmNvdW50ZXIuY2xhc3MgIX4gInZpcnR1YWwiCiAgICAgIGFuZCBCTUlFbmNvdW50ZXIuc3RhdHVzID0gJ2ZpbmlzaGVkJwoKZGVmaW5lICJTREUgRXRobmljaXR5IjoKICBTREUuIlNERSBFdGhuaWNpdHkiCgpkZWZpbmUgIlNERSBQYXllciI6CiAgU0RFLiJTREUgUGF5ZXIiCgpkZWZpbmUgIlNERSBSYWNlIjoKICBTREUuIlNERSBSYWNlIgoKZGVmaW5lICJTREUgU2V4IjoKICBTREUuIlNERSBTZXgi",
"url" : "https://madie.cms.gov/Library-CMS69FHIRPCSBMIScreenAndFollowUp.cql"
}
]
}