Quality Measure Implementation Guide (STU3 Ballot)
2.1.0 - ballot

Quality Measure Implementation Guide (STU3 Ballot), published by Clinical Quality Information WG. This is not an authorized publication; it is the continuous build for version 2.1.0). This version is based on the current content of https://github.com/HL7/cqf-measures/ and changes regularly. See the Directory of published versions

: - JSON Representation

Raw json | Download


{
  "resourceType" : "Library",
  "id" : "Terminology",
  "text" : {
    "status" : "extensions",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n    <table class=\"grid dict\">\n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">Terminology</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Url: </b></th>\n            <td style=\"padding-left: 4px;\">http://ecqi.healthit.gov/ecqms/Library/Terminology</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">1.0.0</td>\n        </tr>\n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Name: </b></th>\n            <td style=\"padding-left: 4px;\">Terminology</td>\n        </tr>\n        \n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">draft</td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2021-11-29T17:56:32+00:00</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">Clinical Quality Information WG</td>\n        </tr>\n        \n        \n        \n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Jurisdiction: </b></th>\n            <td style=\"padding-left: 4px;\">US</td>\n        </tr>\n        \n        \n        \n        \n        \n        \n        \n        \n        <tr>\n          <th scope=\"row\"><b>Related Artifacts: </b></th>\n          <td style=\"padding-left: 4px;\">\n            \n            \n            \n            <p><b>Dependencies</b></p>\n            <ul>\n              \n                <li>http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</li>\n              \n                <li>http://ecqi.healthit.gov/ecqms/Library/FHIRHelpers|4.0.1</li>\n              \n                <li>http://snomed.info/sct|http://snomed.info/sct/731000124108/version/201709</li>\n              \n                <li>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.7.307|20160929</li>\n              \n            </ul>\n            \n            \n            \n            \n            \n          </td>\n        </tr>\n        \n        \n        <tr>\n          <th scope=\"row\"><b>Parameters: </b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n              \n                <tr><th>Measurement Period</th><th>Period</th><th>0</th><th>1</th><th>in</th></tr>\n              \n                <tr><th>Inpatient Encounter</th><th>Encounter</th><th>0</th><th>*</th><th>out</th></tr>\n              \n            </table>\n          </td>\n        </tr>\n        \n        \n        <tr>\n          <th scope=\"row\"><b>Data Requirements:</b></th>\n          <td style=\"padding-left: 4px;\">\n            <table class=\"grid-dict\">\n              <tr><th><b>Type</b></th><th><b>Profile</b></th><th><b>MS</b></th><th><b>Code Filter</b></th></tr>\n              \n                <tr>\n                  <th>Encounter</th>\n                  <th>http://hl7.org/fhir/StructureDefinition/Encounter</th>\n                  <th></th>\n                  <th>\n                    \n                      <b>code filter: </b>\n                      \n                      <br/>\n                      \n                      \n                      <span style=\"padding-left: 4px;\">\n                          <b>path: </b><span>type</span>\n                      </span>\n                      \n                      <br/>\n                      \n                      \n                      \n                      <span style=\"padding-left: 4px;\">\n                          <b>value set: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.7.307|20160929</span>\n                      </span>\n                      \n                      \n                    \n                      <b>code filter: </b>\n                      \n                      <br/>\n                      \n                      \n                      <span style=\"padding-left: 4px;\">\n                          <b>path: </b><span>status</span>\n                      </span>\n                      \n                      <br/>\n                      \n                      \n                      \n                      \n                          \n                          \n                          <p style=\"margin-bottom: 5px;\">\n                              <b>code: </b> <span>finished</span>\n                          </p>\n                          \n                          \n                      \n                    \n                  </th>\n                </tr>\n              \n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n              <tr><td><pre><code class=\"language-cql\">/*\nThis example is purely for illustration purposes to show how all the elements of a\nFHIR-based quality measure are represented. It is intentionally simplified to show\nspecific aspects of a measure, and is not intended as an example of a clinically\nmeaningful measure.\n*/\nlibrary Terminology version '1.0.0'\n\nusing FHIR version '4.0.1'\n\ninclude FHIRHelpers version '4.0.1' called FHIRHelpers\n\n// NOTE: Versioning is used in this example to illustrate completely how versioning is applied\n// References to specific versions of code systems and value sets should be used only when necessary\n\ncodesystem \"SNOMED CT:2017-09\": 'http://snomed.info/sct'\n  version 'http://snomed.info/sct/731000124108/version/201709'\n\nvalueset \"Encounter Inpatient SNOMEDCT Value Set\":\n   'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.7.307|20160929'\n\ncode \"Venous foot pump, device (physical object)\": '442023007' from \"SNOMED CT:2017-09\"\ncode \"Right foot\": '7769000' from \"SNOMED CT:2017-09\"\n\nparameter \"Measurement Period\" Interval&lt;DateTime&gt;\n\ndefine \"Inpatient Encounter\":\n  [\"Encounter\": type in \"Encounter Inpatient SNOMEDCT Value Set\"] E\n    where E.status = 'finished'\n\n// DeviceUseStatement has a known issue with the publication tooling\n// so it is removed to allow this IG to publish until that is fixed\n//define \"Venous Foot Pumps Applied\":\n//  [\"DeviceUseStatement\": code in \"Venous foot pump, device (physical object)\"] D\n//    where D.status = 'completed'\n//      and D.bodySite ~ ToConcept(\"Right foot\")\n</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+xml</th></tr>\n              <tr><td><pre><code>Encoded data (10536 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>"
  },
  "extension" : [
    {
      "url" : "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem",
      "valueReference" : {
        "reference" : "cqf-tooling"
      }
    }
  ],
  "url" : "http://ecqi.healthit.gov/ecqms/Library/Terminology",
  "version" : "1.0.0",
  "name" : "Terminology",
  "status" : "draft",
  "date" : "2021-11-29T17:56:32+00:00",
  "publisher" : "Clinical Quality Information WG",
  "contact" : [
    {
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://www.hl7.org/Special/committees/cqi/index.cfm"
        }
      ]
    }
  ],
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "urn:iso:std:iso:3166",
          "code" : "US"
        }
      ]
    }
  ],
  "relatedArtifact" : [
    {
      "type" : "depends-on",
      "display" : "FHIR model information",
      "resource" : "http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"
    },
    {
      "type" : "depends-on",
      "display" : "Library FHIRHelpers",
      "resource" : "http://ecqi.healthit.gov/ecqms/Library/FHIRHelpers|4.0.1"
    },
    {
      "type" : "depends-on",
      "display" : "Code system SNOMED CT:2017-09",
      "resource" : "http://snomed.info/sct|http://snomed.info/sct/731000124108/version/201709"
    },
    {
      "type" : "depends-on",
      "display" : "Value set Encounter Inpatient SNOMEDCT Value Set",
      "resource" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.7.307|20160929"
    }
  ],
  "parameter" : [
    {
      "name" : "Measurement Period",
      "use" : "in",
      "min" : 0,
      "max" : "1",
      "type" : "Period"
    },
    {
      "name" : "Inpatient Encounter",
      "use" : "out",
      "min" : 0,
      "max" : "*",
      "type" : "Encounter"
    }
  ],
  "dataRequirement" : [
    {
      "type" : "Encounter",
      "profile" : [
        "http://hl7.org/fhir/StructureDefinition/Encounter"
      ],
      "codeFilter" : [
        {
          "path" : "type",
          "valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.7.307|20160929"
        },
        {
          "path" : "status",
          "code" : [
            {
              "code" : "finished"
            }
          ]
        }
      ]
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "LyoKVGhpcyBleGFtcGxlIGlzIHB1cmVseSBmb3IgaWxsdXN0cmF0aW9uIHB1cnBvc2VzIHRvIHNob3cgaG93IGFsbCB0aGUgZWxlbWVudHMgb2YgYQpGSElSLWJhc2VkIHF1YWxpdHkgbWVhc3VyZSBhcmUgcmVwcmVzZW50ZWQuIEl0IGlzIGludGVudGlvbmFsbHkgc2ltcGxpZmllZCB0byBzaG93CnNwZWNpZmljIGFzcGVjdHMgb2YgYSBtZWFzdXJlLCBhbmQgaXMgbm90IGludGVuZGVkIGFzIGFuIGV4YW1wbGUgb2YgYSBjbGluaWNhbGx5Cm1lYW5pbmdmdWwgbWVhc3VyZS4KKi8KbGlicmFyeSBUZXJtaW5vbG9neSB2ZXJzaW9uICcxLjAuMCcKCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJyBjYWxsZWQgRkhJUkhlbHBlcnMKCi8vIE5PVEU6IFZlcnNpb25pbmcgaXMgdXNlZCBpbiB0aGlzIGV4YW1wbGUgdG8gaWxsdXN0cmF0ZSBjb21wbGV0ZWx5IGhvdyB2ZXJzaW9uaW5nIGlzIGFwcGxpZWQKLy8gUmVmZXJlbmNlcyB0byBzcGVjaWZpYyB2ZXJzaW9ucyBvZiBjb2RlIHN5c3RlbXMgYW5kIHZhbHVlIHNldHMgc2hvdWxkIGJlIHVzZWQgb25seSB3aGVuIG5lY2Vzc2FyeQoKY29kZXN5c3RlbSAiU05PTUVEIENUOjIwMTctMDkiOiAnaHR0cDovL3Nub21lZC5pbmZvL3NjdCcKICB2ZXJzaW9uICdodHRwOi8vc25vbWVkLmluZm8vc2N0LzczMTAwMDEyNDEwOC92ZXJzaW9uLzIwMTcwOScKCnZhbHVlc2V0ICJFbmNvdW50ZXIgSW5wYXRpZW50IFNOT01FRENUIFZhbHVlIFNldCI6CiAgICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy42NjYuNy4zMDd8MjAxNjA5MjknCgpjb2RlICJWZW5vdXMgZm9vdCBwdW1wLCBkZXZpY2UgKHBoeXNpY2FsIG9iamVjdCkiOiAnNDQyMDIzMDA3JyBmcm9tICJTTk9NRUQgQ1Q6MjAxNy0wOSIKY29kZSAiUmlnaHQgZm9vdCI6ICc3NzY5MDAwJyBmcm9tICJTTk9NRUQgQ1Q6MjAxNy0wOSIKCnBhcmFtZXRlciAiTWVhc3VyZW1lbnQgUGVyaW9kIiBJbnRlcnZhbDxEYXRlVGltZT4KCmRlZmluZSAiSW5wYXRpZW50IEVuY291bnRlciI6CiAgWyJFbmNvdW50ZXIiOiB0eXBlIGluICJFbmNvdW50ZXIgSW5wYXRpZW50IFNOT01FRENUIFZhbHVlIFNldCJdIEUKICAgIHdoZXJlIEUuc3RhdHVzID0gJ2ZpbmlzaGVkJwoKLy8gRGV2aWNlVXNlU3RhdGVtZW50IGhhcyBhIGtub3duIGlzc3VlIHdpdGggdGhlIHB1YmxpY2F0aW9uIHRvb2xpbmcKLy8gc28gaXQgaXMgcmVtb3ZlZCB0byBhbGxvdyB0aGlzIElHIHRvIHB1Ymxpc2ggdW50aWwgdGhhdCBpcyBmaXhlZAovL2RlZmluZSAiVmVub3VzIEZvb3QgUHVtcHMgQXBwbGllZCI6Ci8vICBbIkRldmljZVVzZVN0YXRlbWVudCI6IGNvZGUgaW4gIlZlbm91cyBmb290IHB1bXAsIGRldmljZSAocGh5c2ljYWwgb2JqZWN0KSJdIEQKLy8gICAgd2hlcmUgRC5zdGF0dXMgPSAnY29tcGxldGVkJwovLyAgICAgIGFuZCBELmJvZHlTaXRlIH4gVG9Db25jZXB0KCJSaWdodCBmb290IikK"
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JWZXJzaW9uPSIxLjMiIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMTkiPgogICAgICAgICA8YTpzPi8qClRoaXMgZXhhbXBsZSBpcyBwdXJlbHkgZm9yIGlsbHVzdHJhdGlvbiBwdXJwb3NlcyB0byBzaG93IGhvdyBhbGwgdGhlIGVsZW1lbnRzIG9mIGEKRkhJUi1iYXNlZCBxdWFsaXR5IG1lYXN1cmUgYXJlIHJlcHJlc2VudGVkLiBJdCBpcyBpbnRlbnRpb25hbGx5IHNpbXBsaWZpZWQgdG8gc2hvdwpzcGVjaWZpYyBhc3BlY3RzIG9mIGEgbWVhc3VyZSwgYW5kIGlzIG5vdCBpbnRlbmRlZCBhcyBhbiBleGFtcGxlIG9mIGEgY2xpbmljYWxseQptZWFuaW5nZnVsIG1lYXN1cmUuCiovbGlicmFyeSBUZXJtaW5vbG9neSB2ZXJzaW9uICcxLjAuMCc8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9IlRlcm1pbm9sb2d5IiBzeXN0ZW09Imh0dHA6Ly9lY3FpLmhlYWx0aGl0Lmdvdi9lY3FtcyIgdmVyc2lvbj0iMS4wLjAiLz4KICAgPHNjaGVtYUlkZW50aWZpZXIgaWQ9InVybjpobDctb3JnOmVsbSIgdmVyc2lvbj0icjEiLz4KICAgPHVzaW5ncz4KICAgICAgPGRlZiBsb2NhbElkZW50aWZpZXI9IlN5c3RlbSIgdXJpPSJ1cm46aGw3LW9yZzplbG0tdHlwZXM6cjEiLz4KICAgICAgPGRlZiBsb2NhbElkPSIxIiBsb2NhdG9yPSI5OjEtOToyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMSI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIiIGxvY2F0b3I9IjExOjEtMTE6NTQiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9lY3FpLmhlYWx0aGl0Lmdvdi9lY3Ftcy9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMScgY2FsbGVkIEZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIxMSIgbG9jYXRvcj0iMjU6MS0yNTo0OSIgbmFtZT0iTWVhc3VyZW1lbnQgUGVyaW9kIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTEiPgogICAgICAgICAgICAgICA8YTpzPnBhcmFtZXRlciAmcXVvdDtNZWFzdXJlbWVudCBQZXJpb2QmcXVvdDsgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMTAiPgogICAgICAgICAgICAgICAgICA8YTpzPkludGVydmFsJmx0OzwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkRhdGVUaW1lPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPj48L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjEwIiBsb2NhdG9yPSIyNTozMi0yNTo0OSIgeHNpOnR5cGU9IkludGVydmFsVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgIDxwb2ludFR5cGUgbG9jYWxJZD0iOSIgbG9jYXRvcj0iMjU6NDEtMjU6NDgiIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgPC9wYXJhbWV0ZXJUeXBlU3BlY2lmaWVyPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29kZVN5c3RlbXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMyIgbG9jYXRvcj0iMTY6MS0xNzo2MiIgbmFtZT0iU05PTUVEIENUOjIwMTctMDkiIGlkPSJodHRwOi8vc25vbWVkLmluZm8vc2N0IiB2ZXJzaW9uPSJodHRwOi8vc25vbWVkLmluZm8vc2N0LzczMTAwMDEyNDEwOC92ZXJzaW9uLzIwMTcwOSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjMiPgogICAgICAgICAgICAgICA8YTpzPi8vIE5PVEU6IFZlcnNpb25pbmcgaXMgdXNlZCBpbiB0aGlzIGV4YW1wbGUgdG8gaWxsdXN0cmF0ZSBjb21wbGV0ZWx5IGhvdyB2ZXJzaW9uaW5nIGlzIGFwcGxpZWQKLy8gUmVmZXJlbmNlcyB0byBzcGVjaWZpYyB2ZXJzaW9ucyBvZiBjb2RlIHN5c3RlbXMgYW5kIHZhbHVlIHNldHMgc2hvdWxkIGJlIHVzZWQgb25seSB3aGVuIG5lY2Vzc2FyeWNvZGVzeXN0ZW0gJnF1b3Q7U05PTUVEIENUOjIwMTctMDkmcXVvdDs6ICdodHRwOi8vc25vbWVkLmluZm8vc2N0JwogIHZlcnNpb24gJ2h0dHA6Ly9zbm9tZWQuaW5mby9zY3QvNzMxMDAwMTI0MTA4L3ZlcnNpb24vMjAxNzA5JzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9jb2RlU3lzdGVtcz4KICAgPHZhbHVlU2V0cz4KICAgICAgPGRlZiBsb2NhbElkPSI0IiBsb2NhdG9yPSIxOToxLTIwOjgwIiBuYW1lPSJFbmNvdW50ZXIgSW5wYXRpZW50IFNOT01FRENUIFZhbHVlIFNldCIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjY2Ni43LjMwN3wyMDE2MDkyOSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjQiPgogICAgICAgICAgICAgICA8YTpzPnZhbHVlc2V0ICZxdW90O0VuY291bnRlciBJbnBhdGllbnQgU05PTUVEQ1QgVmFsdWUgU2V0JnF1b3Q7OgogICAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNjY2LjcuMzA3fDIwMTYwOTI5JzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC92YWx1ZVNldHM+CiAgIDxjb2Rlcz4KICAgICAgPGRlZiBsb2NhbElkPSI2IiBsb2NhdG9yPSIyMjoxLTIyOjg3IiBuYW1lPSJWZW5vdXMgZm9vdCBwdW1wLCBkZXZpY2UgKHBoeXNpY2FsIG9iamVjdCkiIGlkPSI0NDIwMjMwMDciIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI2Ij4KICAgICAgICAgICAgICAgPGE6cz5jb2RlICZxdW90O1Zlbm91cyBmb290IHB1bXAsIGRldmljZSAocGh5c2ljYWwgb2JqZWN0KSZxdW90OzogJzQ0MjAyMzAwNycgZnJvbSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtTTk9NRUQgQ1Q6MjAxNy0wOSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGNvZGVTeXN0ZW0gbG9jYWxJZD0iNSIgbG9jYXRvcj0iMjI6NjktMjI6ODciIG5hbWU9IlNOT01FRCBDVDoyMDE3LTA5Ii8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjgiIGxvY2F0b3I9IjIzOjEtMjM6NTMiIG5hbWU9IlJpZ2h0IGZvb3QiIGlkPSI3NzY5MDAwIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iOCI+CiAgICAgICAgICAgICAgIDxhOnM+Y29kZSAmcXVvdDtSaWdodCBmb290JnF1b3Q7OiAnNzc2OTAwMCcgZnJvbSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtTTk9NRUQgQ1Q6MjAxNy0wOSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGNvZGVTeXN0ZW0gbG9jYWxJZD0iNyIgbG9jYXRvcj0iMjM6MzUtMjM6NTMiIG5hbWU9IlNOT01FRCBDVDoyMDE3LTA5Ii8+CiAgICAgIDwvZGVmPgogICA8L2NvZGVzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIxOSIgbG9jYXRvcj0iMjc6MS0yOTozMSIgbmFtZT0iSW5wYXRpZW50IEVuY291bnRlciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjE5Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7SW5wYXRpZW50IEVuY291bnRlciZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIxOCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+WyZxdW90O0VuY291bnRlciZxdW90OzogPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dHlwZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RW5jb3VudGVyIElucGF0aWVudCBTTk9NRURDVCBWYWx1ZSBTZXQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+XTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGF0dXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nZmluaXNoZWQnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxOCIgbG9jYXRvcj0iMjg6My0yOTozMSIgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIxMyIgbG9jYXRvcj0iMjg6My0yODo2NyIgYWxpYXM9IkUiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxMiIgbG9jYXRvcj0iMjg6My0yODo2NSIgZGF0YVR5cGU9ImZoaXI6RW5jb3VudGVyIiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vRW5jb3VudGVyIiBjb2RlUHJvcGVydHk9InR5cGUiIGNvZGVDb21wYXJhdG9yPSJpbiIgeHNpOnR5cGU9IlJldHJpZXZlIj4KICAgICAgICAgICAgICAgICAgPGNvZGVzIGxvY2F0b3I9IjI4OjI1LTI4OjY0IiBuYW1lPSJFbmNvdW50ZXIgSW5wYXRpZW50IFNOT01FRENUIFZhbHVlIFNldCIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIxNyIgbG9jYXRvcj0iMjk6NS0yOTozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTUiIGxvY2F0b3I9IjI5OjExLTI5OjE4IiBwYXRoPSJzdGF0dXMiIHNjb3BlPSJFIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIxNiIgbG9jYXRvcj0iMjk6MjItMjk6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJmaW5pc2hlZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="
    }
  ]
}