This page is part of the Quality Measure STU2 for FHIR R4 Implementation Guide (v1.1.0: STU 2 Ballot 1) based on FHIR R4. The current version which supercedes this version is 3.0.0. For a full list of available versions, see the Directory of published versions
<Library xmlns="http://hl7.org/fhir"> <id value="exm125-fhir"/> <meta> <versionId value="3"/> <lastUpdated value="2019-03-12T08:14:50.793+00:00"/> <profile value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/library-cqfm"/> </meta> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><table class="grid dict"><tr><th scope="row"><b>Id: </b></th><td style="padding-left: 25px; padding-right: 25px;">exm125-fhir</td></tr><tr><th scope="row"><b>Type: </b></th><td style="padding-right: 25px;"><span><br/><span><span style="padding-left: 25px;"><b>system: </b><span>http://terminology.hl7.org/CodeSystem/library-type</span><br/></span><span style="padding-left: 25px;"><b>code: </b><span>logic-library</span></span></span></span></td></tr><tr><th scope="row"><b>Version: </b></th><td style="padding-left: 25px; padding-right: 25px;">7.2.000</td></tr><tr><th scope="row"><b>Status: </b></th><td style="padding-left: 25px; padding-right: 25px;">active</td></tr> <!-- <th:block th:each="cont, iter : ${resource.contributor}"> --> <!-- <tr style="vertical-align: top;"> --> <!-- <th th:if="${iter.index == 0}" th:rowspan="${iter.size}" scope="row"><b>Contributor: </b></th> --> <!-- <td style="padding-left: 25px; padding-right: 25px;"> --> <!-- <b><span th:narrative="${cont.type.toCode()}"></span>: </b><span th:narrative="${cont.name}"></span> --> <!-- </td> --> <!-- </tr> --> <!-- </th:block> --><tr style="vertical-align: top;"><th rowspan="5" scope="row"><b>Related: </b></th><td style="padding-left: 25px; padding-right: 25px;"><p style="margin-bottom: 5px;"><b>type: </b><span>depends-on</span></p><p style="margin-bottom: 5px;"><b>Resource: </b><br/><span>Library/matglobalcommonfunctions-fhir</span></p></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><p style="margin-bottom: 5px;"><b>type: </b><span>depends-on</span></p><p style="margin-bottom: 5px;"><b>Resource: </b><br/><span>Library/adultoutpatientencounters-fhir</span></p></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><p style="margin-bottom: 5px;"><b>type: </b><span>depends-on</span></p><p style="margin-bottom: 5px;"><b>Resource: </b><br/><span>Library/hospice-fhir</span></p></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><p style="margin-bottom: 5px;"><b>type: </b><span>depends-on</span></p><p style="margin-bottom: 5px;"><b>Resource: </b><br/><span>Library/fhirhelpers</span></p></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><p style="margin-bottom: 5px;"><b>type: </b><span>depends-on</span></p><p style="margin-bottom: 5px;"><b>Resource: </b><br/><span>Library/supplementaldataelements-fhir</span></p></td></tr><tr style="vertical-align: top;"><th rowspan="27" scope="row"><b>Data Requirements: </b></th><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.292</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Location</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.292</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Location</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>id</span></span><span style="padding-left: 25px;"><b>valueset: </b><span/></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Encounter</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>ServiceRequest</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1108.15</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Procedure</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1108.15</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Coverage</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>type</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Procedure</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1020</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1070</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1071</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1069</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1071</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Condition</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1068</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>Procedure</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1005</span></span></p></div></td></tr><tr style="vertical-align: top;"><td style="padding-left: 25px; padding-right: 25px;"><div xmlns="http://www.w3.org/1999/xhtml"><p style="margin-bottom: 5px;"><b>type: </b><span>DiagnosticReport</span></p><p style="margin-bottom: 5px;"><b>code filter:</b><br/><span style="padding-left: 25px;"><b>path: </b><span>code</span></span><br/><span style="padding-left: 25px;"><b>valueset: </b><span>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.108.12.1018</span></span></p></div></td></tr> <!-- Filter down to human readable content --><tr style="vertical-align: top;"><th scope="row"><b>Content: </b></th><td style="padding-left: 25px; padding-right: 25px;"><b>type: </b><span>text/cql</span></td></tr><tr><td colspan="2" style="padding-left: 25px; padding-right: 25px;"><pre><code class="language-cql">library EXM125_FHIR version '7.2.000' /* This example is a work in progress and should not be considered a final specification or recommendation for guidance. This example will help guide and direct the process of finding conventions and usage patterns that meet the needs of the various stakeholders in the measure development community. */ using FHIR version '4.0.0' include MATGlobalCommonFunctions_FHIR version '2.0.000' called Global include AdultOutpatientEncounters_FHIR version '1.1.000' called AdultOutpatientEncounters include Hospice_FHIR version '1.0.000' called Hospice include FHIRHelpers version '4.0.0' called FHIRHelpers include SupplementalDataElements_FHIR version '1.0.0' called SDE valueset "ONC Administrative Sex": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1' valueset "Race": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.836' valueset "Ethnicity": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.837' valueset "Payer": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591' valueset "Bilateral Mastectomy": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1005' valueset "Female": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.560.100.2' valueset "Mammography": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.108.12.1018' valueset "Unilateral Mastectomy": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1020' valueset "History of bilateral mastectomy": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1068' valueset "Status Post Left Mastectomy": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1069' valueset "Status Post Right Mastectomy": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1070' valueset "Left": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.122.12.1036' valueset "Right": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.122.12.1035' valueset "Unilateral Mastectomy, Unspecified Laterality": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1071' parameter "Measurement Period" Interval<DateTime> context Patient define "SDE Ethnicity": SDE."SDE Ethnicity" define "SDE Payer": SDE."SDE Payer" define "SDE Race": SDE."SDE Race" define "SDE Sex": SDE."SDE Sex" define "Denominator": "Initial Population" define "Unilateral Mastectomy Procedure": [Procedure: "Unilateral Mastectomy"] UnilateralMastectomyProcedure where (UnilateralMastectomyProcedure.performed as Period) ends before day of end of "Measurement Period" and UnilateralMastectomyProcedure.status = 'completed' define "Right Mastectomy": ( ( [Condition: "Status Post Right Mastectomy"] C where exists ( C.clinicalStatus.coding ClinicalStatusCoding where ClinicalStatusCoding.code = 'active' ) ) union ( [Condition: "Unilateral Mastectomy, Unspecified Laterality"] UnilateralMastectomyDiagnosis where UnilateralMastectomyDiagnosis.bodySite in "Right" and exists ( UnilateralMastectomyDiagnosis.clinicalStatus.coding ClinicalStatusCoding where ClinicalStatusCoding.code = 'active' ) ) ) RightMastectomy where Global."Normalize Onset"(RightMastectomy.onset) starts before day of end of "Measurement Period" define "Left Mastectomy": ( ( [Condition: "Status Post Left Mastectomy"] C where exists ( C.clinicalStatus.coding ClinicalStatusCoding where ClinicalStatusCoding.code = 'active' ) ) union ( [Condition: "Unilateral Mastectomy, Unspecified Laterality"] UnilateralMastectomyDiagnosis where UnilateralMastectomyDiagnosis.bodySite in "Left" and exists ( UnilateralMastectomyDiagnosis.clinicalStatus.coding ClinicalStatusCoding where ClinicalStatusCoding.code = 'active' ) ) ) LeftMastectomy where Global."Normalize Onset"(LeftMastectomy.onset) starts before day of end of "Measurement Period" define "History Bilateral Mastectomy": [Condition: "History of bilateral mastectomy"] BilateralMastectomyHistory where Global."Normalize Onset"(BilateralMastectomyHistory.onset) starts before day of end of "Measurement Period" and exists ( BilateralMastectomyHistory.clinicalStatus.coding ClinicalStatusCoding where ClinicalStatusCoding.code = 'active' ) define "Bilateral Mastectomy Procedure": [Procedure: "Bilateral Mastectomy"] BilateralMastectomyPerformed where (BilateralMastectomyPerformed.performed as Period) ends before day of end of "Measurement Period" and BilateralMastectomyPerformed.status = 'completed' define "Numerator": exists ( [DiagnosticReport: "Mammography"] Mammogram where ( Mammogram.effective ends 27 months or less before day of end of "Measurement Period" ) and Mammogram.status in { 'final', 'amended', 'corrected', 'appended' } ) define "Denominator Exclusion": Hospice."Has Hospice"("Measurement Period") or ( Count("Unilateral Mastectomy Procedure") = 2 ) or ( exists "Right Mastectomy" and exists "Left Mastectomy" ) or exists "History Bilateral Mastectomy" or exists "Bilateral Mastectomy Procedure" define "Initial Population": Patient.gender = 'female' and Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of "Measurement Period") in Interval[51, 74] and exists AdultOutpatientEncounters."Qualifying Encounters"("Measurement Period") </code></pre> </td> </tr> </table> </div> </text> <url value="http://hl7.org/fhir/us/cqfmeasures/Library/exm125-fhir"/> <identifier> <use value="official"/> <system value="http://example.org/fhir/cqi/ecqm/Library/Identifier"/> <value value="EXM125"/> </identifier> <version value="1.1.0"/> <name value="EXM125_FHIR"/> <title value="Breast Cancer Screening"/> <status value="active"/> <experimental value="true"/> <type> <coding> <system value="http://terminology.hl7.org/CodeSystem/library-type"/> <code value="logic-library"/> </coding> </type> <date value="2019-09-03T00:00:00+00:00"/> <publisher value="Health Level 7 International - Clinical Quality Information Work Group"/> <contact> <telecom> <system value="url"/> <value value="http://www.hl7.org/Special/committees/cqi/index.cfm"/> </telecom> </contact> <description value="This library is used as an example in the FHIR Quality Measure Implementation Guide"/> <jurisdiction> <coding> <system value="urn:iso:std:iso:3166"/> <code value="US"/> <display value="United States of America"/> </coding> </jurisdiction> <approvalDate value="2019-08-03"/> <lastReviewDate value="2019-08-03"/> <relatedArtifact> <type value="depends-on"/> <resource value="Library/matglobalcommonfunctions-fhir"/> </relatedArtifact> <relatedArtifact> <type value="depends-on"/> <resource value="Library/adultoutpatientencounters-fhir"/> </relatedArtifact> <relatedArtifact> <type value="depends-on"/> <resource value="Library/hospice-fhir"/> </relatedArtifact> <relatedArtifact> <type value="depends-on"/> <resource value="Library/fhirhelpers"/> </relatedArtifact> <relatedArtifact> <type value="depends-on"/> <resource value="Library/supplementaldataelements-fhir"/> </relatedArtifact> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.292"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Location"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.117.1.7.1.292"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Location"/> <codeFilter> <path value="id"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Encounter"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="ServiceRequest"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1108.15"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Procedure"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1108.15"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Coverage"/> <codeFilter> <path value="type"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Procedure"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1020"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1070"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1071"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1069"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1071"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Condition"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1068"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="Procedure"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1005"/> </codeFilter> </dataRequirement> <dataRequirement> <type value="DiagnosticReport"/> <codeFilter> <path value="code"/> <valueSet value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.108.12.1018"/> </codeFilter> </dataRequirement> <content> <contentType value="application/elm+xml"/> <data value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxpZGVudGlmaWVyIGlkPSJFWE0xMjVfRkhJUiIgdmVyc2lvbj0iNy4yLjAwMCIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIvPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMCIvPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iR2xvYmFsIiBwYXRoPSJNQVRHbG9iYWxDb21tb25GdW5jdGlvbnNfRkhJUiIgdmVyc2lvbj0iMi4wLjAwMCIvPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iQWR1bHRPdXRwYXRpZW50RW5jb3VudGVycyIgcGF0aD0iQWR1bHRPdXRwYXRpZW50RW5jb3VudGVyc19GSElSIiB2ZXJzaW9uPSIxLjEuMDAwIi8+CiAgICAgIDxkZWYgbG9jYWxJZGVudGlmaWVyPSJIb3NwaWNlIiBwYXRoPSJIb3NwaWNlX0ZISVIiIHZlcnNpb249IjEuMC4wMDAiLz4KICAgICAgPGRlZiBsb2NhbElkZW50aWZpZXI9IkZISVJIZWxwZXJzIiBwYXRoPSJGSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjAiLz4KICAgICAgPGRlZiBsb2NhbElkZW50aWZpZXI9IlNERSIgcGF0aD0iU3VwcGxlbWVudGFsRGF0YUVsZW1lbnRzX0ZISVIiIHZlcnNpb249IjEuMC4wIi8+CiAgIDwvaW5jbHVkZXM+CiAgIDxwYXJhbWV0ZXJzPgogICAgICA8ZGVmIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIHhzaTp0eXBlPSJJbnRlcnZhbFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICA8cG9pbnRUeXBlIG5hbWU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgPC9wYXJhbWV0ZXJUeXBlU3BlY2lmaWVyPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8dmFsdWVTZXRzPgogICAgICA8ZGVmIG5hbWU9Ik9OQyBBZG1pbmlzdHJhdGl2ZSBTZXgiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEiIGFjY2Vzc0xldmVsPSJQdWJsaWMiLz4KICAgICAgPGRlZiBuYW1lPSJSYWNlIiBpZD0iaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTE0MjIyLjQuMTEuODM2IiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iRXRobmljaXR5IiBpZD0iaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTE0MjIyLjQuMTEuODM3IiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iUGF5ZXIiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTQyMjIuNC4xMS4zNTkxIiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iQmlsYXRlcmFsIE1hc3RlY3RvbXkiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xOTguMTIuMTAwNSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPgogICAgICA8ZGVmIG5hbWU9IkZlbWFsZSIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjU2MC4xMDAuMiIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPgogICAgICA8ZGVmIG5hbWU9Ik1hbW1vZ3JhcGh5IiBpZD0iaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTA4LjEyLjEwMTgiIGFjY2Vzc0xldmVsPSJQdWJsaWMiLz4KICAgICAgPGRlZiBuYW1lPSJVbmlsYXRlcmFsIE1hc3RlY3RvbXkiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xOTguMTIuMTAyMCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPgogICAgICA8ZGVmIG5hbWU9Ikhpc3Rvcnkgb2YgYmlsYXRlcmFsIG1hc3RlY3RvbXkiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xOTguMTIuMTA2OCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPgogICAgICA8ZGVmIG5hbWU9IlN0YXR1cyBQb3N0IExlZnQgTWFzdGVjdG9teSIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjE5OC4xMi4xMDY5IiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iU3RhdHVzIFBvc3QgUmlnaHQgTWFzdGVjdG9teSIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjE5OC4xMi4xMDcwIiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iTGVmdCIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjEyMi4xMi4xMDM2IiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgICAgIDxkZWYgbmFtZT0iUmlnaHQiIGlkPSJodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMjIuMTIuMTAzNSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPgogICAgICA8ZGVmIG5hbWU9IlVuaWxhdGVyYWwgTWFzdGVjdG9teSwgVW5zcGVjaWZpZWQgTGF0ZXJhbGl0eSIgaWQ9Imh0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjE5OC4xMi4xMDcxIiBhY2Nlc3NMZXZlbD0iUHVibGljIi8+CiAgIDwvdmFsdWVTZXRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJTREUgRXRobmljaXR5IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iU0RFIEV0aG5pY2l0eSIgbGlicmFyeU5hbWU9IlNERSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbmFtZT0iU0RFIFBheWVyIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iU0RFIFBheWVyIiBsaWJyYXJ5TmFtZT0iU0RFIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJTREUgUmFjZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxleHByZXNzaW9uIG5hbWU9IlNERSBSYWNlIiBsaWJyYXJ5TmFtZT0iU0RFIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJTREUgU2V4IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iU0RFIFNleCIgbGlicmFyeU5hbWU9IlNERSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbmFtZT0iSW5pdGlhbCBQb3B1bGF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBwYXRoPSJnZW5kZXIiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJmZW1hbGUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkluIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iQ2FsZW5kYXJBZ2VJblllYXJzQXQiIGxpYnJhcnlOYW1lPSJHbG9iYWwiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJUb0RhdGVUaW1lIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9EYXRlIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHBhdGg9ImJpcnRoRGF0ZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iU3RhcnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJNZWFzdXJlbWVudCBQZXJpb2QiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvd0Nsb3NlZD0idHJ1ZSIgaGlnaENsb3NlZD0idHJ1ZSIgeHNpOnR5cGU9IkludGVydmFsIj4KICAgICAgICAgICAgICAgICAgICAgPGxvdyB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjUxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICA8aGlnaCB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9Ijc0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iUXVhbGlmeWluZyBFbmNvdW50ZXJzIiBsaWJyYXJ5TmFtZT0iQWR1bHRPdXRwYXRpZW50RW5jb3VudGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iTWVhc3VyZW1lbnQgUGVyaW9kIiB4c2k6dHlwZT0iUGFyYW1ldGVyUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIG5hbWU9IkRlbm9taW5hdG9yIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iSW5pdGlhbCBQb3B1bGF0aW9uIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJVbmlsYXRlcmFsIE1hc3RlY3RvbXkgUHJvY2VkdXJlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iVW5pbGF0ZXJhbE1hc3RlY3RvbXlQcm9jZWR1cmUiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBkYXRhVHlwZT0iZmhpcjpQcm9jZWR1cmUiIGNvZGVQcm9wZXJ0eT0iY29kZSIgeHNpOnR5cGU9IlJldHJpZXZlIj4KICAgICAgICAgICAgICAgICAgPGNvZGVzIG5hbWU9IlVuaWxhdGVyYWwgTWFzdGVjdG9teSIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJCZWZvcmUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iRW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBzdHJpY3Q9ImZhbHNlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBwYXRoPSJwZXJmb3JtZWQiIHNjb3BlPSJVbmlsYXRlcmFsTWFzdGVjdG9teVByb2NlZHVyZSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbmFtZT0iZmhpcjpQZXJpb2QiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0ic3RhdHVzIiBzY29wZT0iVW5pbGF0ZXJhbE1hc3RlY3RvbXlQcm9jZWR1cmUiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJjb21wbGV0ZWQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJSaWdodCBNYXN0ZWN0b215IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iUmlnaHRNYXN0ZWN0b215Ij4KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlVuaW9uIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iQyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGRhdGFUeXBlPSJmaGlyOkNvbmRpdGlvbiIgY29kZVByb3BlcnR5PSJjb2RlIiB4c2k6dHlwZT0iUmV0cmlldmUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29kZXMgbmFtZT0iU3RhdHVzIFBvc3QgUmlnaHQgTWFzdGVjdG9teSIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iQ2xpbmljYWxTdGF0dXNDb2RpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBwYXRoPSJjb2RpbmciIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgcGF0aD0iY2xpbmljYWxTdGF0dXMiIHNjb3BlPSJDIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHdoZXJlIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHBhdGg9ImNvZGUiIHNjb3BlPSJDbGluaWNhbFN0YXR1c0NvZGluZyIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImFjdGl2ZSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8L3doZXJlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IlVuaWxhdGVyYWxNYXN0ZWN0b215RGlhZ25vc2lzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gZGF0YVR5cGU9ImZoaXI6Q29uZGl0aW9uIiBjb2RlUHJvcGVydHk9ImNvZGUiIHhzaTp0eXBlPSJSZXRyaWV2ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2RlcyBuYW1lPSJVbmlsYXRlcmFsIE1hc3RlY3RvbXksIFVuc3BlY2lmaWVkIExhdGVyYWxpdHkiIHhzaTp0eXBlPSJWYWx1ZVNldFJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICAgICA8d2hlcmUgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJBbnlJblZhbHVlU2V0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGVzIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IlgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBwYXRoPSJib2R5U2l0ZSIgc2NvcGU9IlVuaWxhdGVyYWxNYXN0ZWN0b215RGlhZ25vc2lzIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZXR1cm4gZGlzdGluY3Q9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlgiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcmV0dXJuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvZGVzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8dmFsdWVzZXQgbmFtZT0iUmlnaHQiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iQ2xpbmljYWxTdGF0dXNDb2RpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBwYXRoPSJjb2RpbmciIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgcGF0aD0iY2xpbmljYWxTdGF0dXMiIHNjb3BlPSJVbmlsYXRlcmFsTWFzdGVjdG9teURpYWdub3NpcyIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBwYXRoPSJjb2RlIiBzY29wZT0iQ2xpbmljYWxTdGF0dXNDb2RpbmciIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJhY3RpdmUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8L3doZXJlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBwcmVjaXNpb249IkRheSIgeHNpOnR5cGU9IkJlZm9yZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGFzVHlwZT0idDpEYXRlVGltZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlN0YXJ0Ij4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iTm9ybWFsaXplIE9uc2V0IiBsaWJyYXJ5TmFtZT0iR2xvYmFsIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBwYXRoPSJvbnNldCIgc2NvcGU9IlJpZ2h0TWFzdGVjdG9teSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFbmQiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJNZWFzdXJlbWVudCBQZXJpb2QiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIG5hbWU9IkxlZnQgTWFzdGVjdG9teSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IkxlZnRNYXN0ZWN0b215Ij4KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlVuaW9uIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iQyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGRhdGFUeXBlPSJmaGlyOkNvbmRpdGlvbiIgY29kZVByb3BlcnR5PSJjb2RlIiB4c2k6dHlwZT0iUmV0cmlldmUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29kZXMgbmFtZT0iU3RhdHVzIFBvc3QgTGVmdCBNYXN0ZWN0b215IiB4c2k6dHlwZT0iVmFsdWVTZXRSZWYiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgICAgPHdoZXJlIHhzaTp0eXBlPSJFeGlzdHMiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJDbGluaWNhbFN0YXR1c0NvZGluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIHBhdGg9ImNvZGluZyIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBwYXRoPSJjbGluaWNhbFN0YXR1cyIgc2NvcGU9IkMiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8d2hlcmUgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0iY29kZSIgc2NvcGU9IkNsaW5pY2FsU3RhdHVzQ29kaW5nIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iYWN0aXZlIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L3doZXJlPgogICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iVW5pbGF0ZXJhbE1hc3RlY3RvbXlEaWFnbm9zaXMiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBkYXRhVHlwZT0iZmhpcjpDb25kaXRpb24iIGNvZGVQcm9wZXJ0eT0iY29kZSIgeHNpOnR5cGU9IlJldHJpZXZlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGVzIG5hbWU9IlVuaWxhdGVyYWwgTWFzdGVjdG9teSwgVW5zcGVjaWZpZWQgTGF0ZXJhbGl0eSIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkFueUluVmFsdWVTZXQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29kZXMgeHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iWCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIHBhdGg9ImJvZHlTaXRlIiBzY29wZT0iVW5pbGF0ZXJhbE1hc3RlY3RvbXlEaWFnbm9zaXMiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJldHVybiBkaXN0aW5jdD0iZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iWCIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9yZXR1cm4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29kZXM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDx2YWx1ZXNldCBuYW1lPSJMZWZ0Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkV4aXN0cyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IkNsaW5pY2FsU3RhdHVzQ29kaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gcGF0aD0iY29kaW5nIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHBhdGg9ImNsaW5pY2FsU3RhdHVzIiBzY29wZT0iVW5pbGF0ZXJhbE1hc3RlY3RvbXlEaWFnbm9zaXMiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8d2hlcmUgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0iY29kZSIgc2NvcGU9IkNsaW5pY2FsU3RhdHVzQ29kaW5nIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iYWN0aXZlIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3doZXJlPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJCZWZvcmUiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBhc1R5cGU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik5vcm1hbGl6ZSBPbnNldCIgbGlicmFyeU5hbWU9Ikdsb2JhbCIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0ib25zZXQiIHNjb3BlPSJMZWZ0TWFzdGVjdG9teSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFbmQiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJNZWFzdXJlbWVudCBQZXJpb2QiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIG5hbWU9Ikhpc3RvcnkgQmlsYXRlcmFsIE1hc3RlY3RvbXkiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGFsaWFzPSJCaWxhdGVyYWxNYXN0ZWN0b215SGlzdG9yeSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGRhdGFUeXBlPSJmaGlyOkNvbmRpdGlvbiIgY29kZVByb3BlcnR5PSJjb2RlIiB4c2k6dHlwZT0iUmV0cmlldmUiPgogICAgICAgICAgICAgICAgICA8Y29kZXMgbmFtZT0iSGlzdG9yeSBvZiBiaWxhdGVyYWwgbWFzdGVjdG9teSIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJCZWZvcmUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBhc1R5cGU9InQ6RGF0ZVRpbWUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik5vcm1hbGl6ZSBPbnNldCIgbGlicmFyeU5hbWU9Ikdsb2JhbCIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0ib25zZXQiIHNjb3BlPSJCaWxhdGVyYWxNYXN0ZWN0b215SGlzdG9yeSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJNZWFzdXJlbWVudCBQZXJpb2QiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFeGlzdHMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJDbGluaWNhbFN0YXR1c0NvZGluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIHBhdGg9ImNvZGluZyIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBwYXRoPSJjbGluaWNhbFN0YXR1cyIgc2NvcGU9IkJpbGF0ZXJhbE1hc3RlY3RvbXlIaXN0b3J5IiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgICAgICAgPHdoZXJlIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHBhdGg9ImNvZGUiIHNjb3BlPSJDbGluaWNhbFN0YXR1c0NvZGluZyIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImFjdGl2ZSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbmFtZT0iQmlsYXRlcmFsIE1hc3RlY3RvbXkgUHJvY2VkdXJlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlF1ZXJ5Ij4KICAgICAgICAgICAgPHNvdXJjZSBhbGlhcz0iQmlsYXRlcmFsTWFzdGVjdG9teVBlcmZvcm1lZCI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGRhdGFUeXBlPSJmaGlyOlByb2NlZHVyZSIgY29kZVByb3BlcnR5PSJjb2RlIiB4c2k6dHlwZT0iUmV0cmlldmUiPgogICAgICAgICAgICAgICAgICA8Y29kZXMgbmFtZT0iQmlsYXRlcmFsIE1hc3RlY3RvbXkiIHhzaTp0eXBlPSJWYWx1ZVNldFJlZiIvPgogICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIHByZWNpc2lvbj0iRGF5IiB4c2k6dHlwZT0iQmVmb3JlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvSW50ZXJ2YWwiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgc3RyaWN0PSJmYWxzZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0icGVyZm9ybWVkIiBzY29wZT0iQmlsYXRlcmFsTWFzdGVjdG9teVBlcmZvcm1lZCIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbmFtZT0iZmhpcjpQZXJpb2QiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0ic3RhdHVzIiBzY29wZT0iQmlsYXRlcmFsTWFzdGVjdG9teVBlcmZvcm1lZCIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImNvbXBsZXRlZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3doZXJlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIG5hbWU9Ik51bWVyYXRvciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJFeGlzdHMiPgogICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJNYW1tb2dyYW0iPgogICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBkYXRhVHlwZT0iZmhpcjpEaWFnbm9zdGljUmVwb3J0IiBjb2RlUHJvcGVydHk9ImNvZGUiIHhzaTp0eXBlPSJSZXRyaWV2ZSI+CiAgICAgICAgICAgICAgICAgICAgIDxjb2RlcyBuYW1lPSJNYW1tb2dyYXBoeSIgeHNpOnR5cGU9IlZhbHVlU2V0UmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgIDx3aGVyZSB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJJbiI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFbmQiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJUb0ludGVydmFsIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGFzVHlwZT0iZmhpcjpQZXJpb2QiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHBhdGg9ImVmZmVjdGl2ZSIgc2NvcGU9Ik1hbW1vZ3JhbSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvd0Nsb3NlZD0idHJ1ZSIgaGlnaENsb3NlZD0iZmFsc2UiIHhzaTp0eXBlPSJJbnRlcnZhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsb3cgeHNpOnR5cGU9IlN1YnRyYWN0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkVuZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHZhbHVlPSIyNyIgdW5pdD0ibW9udGhzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9sb3c+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoaWdoIHhzaTp0eXBlPSJFbmQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJNZWFzdXJlbWVudCBQZXJpb2QiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9oaWdoPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkluIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgcGF0aD0ic3RhdHVzIiBzY29wZT0iTWFtbW9ncmFtIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iTGlzdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50IHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJmaW5hbCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnQgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImFtZW5kZWQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50IHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJjb3JyZWN0ZWQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxlbGVtZW50IHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJhcHBlbmRlZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBuYW1lPSJEZW5vbWluYXRvciBFeGNsdXNpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0iT3IiPgogICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iT3IiPgogICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iT3IiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iT3IiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJIYXMgSG9zcGljZSIgbGlicmFyeU5hbWU9Ikhvc3BpY2UiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ik1lYXN1cmVtZW50IFBlcmlvZCIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJDb3VudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbmFtZT0iVW5pbGF0ZXJhbCBNYXN0ZWN0b215IFByb2NlZHVyZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkV4aXN0cyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlJpZ2h0IE1hc3RlY3RvbXkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkV4aXN0cyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IkxlZnQgTWFzdGVjdG9teSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IkV4aXN0cyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9Ikhpc3RvcnkgQmlsYXRlcmFsIE1hc3RlY3RvbXkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iQmlsYXRlcmFsIE1hc3RlY3RvbXkgUHJvY2VkdXJlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="/> </content> <content> <contentType value="text/cql"/> <data value="bGlicmFyeSBFWE0xMjVfRkhJUiB2ZXJzaW9uICc3LjIuMDAwJwoKLyoKVGhpcyBleGFtcGxlIGlzIGEgd29yayBpbiBwcm9ncmVzcyBhbmQgc2hvdWxkIG5vdCBiZSBjb25zaWRlcmVkIGEgZmluYWwgc3BlY2lmaWNhdGlvbgpvciByZWNvbW1lbmRhdGlvbiBmb3IgZ3VpZGFuY2UuIFRoaXMgZXhhbXBsZSB3aWxsIGhlbHAgZ3VpZGUgYW5kIGRpcmVjdCB0aGUgcHJvY2VzcwpvZiBmaW5kaW5nIGNvbnZlbnRpb25zIGFuZCB1c2FnZSBwYXR0ZXJucyB0aGF0IG1lZXQgdGhlIG5lZWRzIG9mIHRoZSB2YXJpb3VzIHN0YWtlaG9sZGVycwppbiB0aGUgbWVhc3VyZSBkZXZlbG9wbWVudCBjb21tdW5pdHkuCiovCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4wJwoKaW5jbHVkZSBNQVRHbG9iYWxDb21tb25GdW5jdGlvbnNfRkhJUiB2ZXJzaW9uICcyLjAuMDAwJyBjYWxsZWQgR2xvYmFsCmluY2x1ZGUgQWR1bHRPdXRwYXRpZW50RW5jb3VudGVyc19GSElSIHZlcnNpb24gJzEuMS4wMDAnIGNhbGxlZCBBZHVsdE91dHBhdGllbnRFbmNvdW50ZXJzCmluY2x1ZGUgSG9zcGljZV9GSElSIHZlcnNpb24gJzEuMC4wMDAnIGNhbGxlZCBIb3NwaWNlCmluY2x1ZGUgRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjAnIGNhbGxlZCBGSElSSGVscGVycwppbmNsdWRlIFN1cHBsZW1lbnRhbERhdGFFbGVtZW50c19GSElSIHZlcnNpb24gJzEuMC4wJyBjYWxsZWQgU0RFCgp2YWx1ZXNldCAiT05DIEFkbWluaXN0cmF0aXZlIFNleCI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEnCnZhbHVlc2V0ICJSYWNlIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExNDIyMi40LjExLjgzNicKdmFsdWVzZXQgIkV0aG5pY2l0eSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTQyMjIuNC4xMS44MzcnCnZhbHVlc2V0ICJQYXllciI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTQyMjIuNC4xMS4zNTkxJwp2YWx1ZXNldCAiQmlsYXRlcmFsIE1hc3RlY3RvbXkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTk4LjEyLjEwMDUnCnZhbHVlc2V0ICJGZW1hbGUiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNTYwLjEwMC4yJwp2YWx1ZXNldCAiTWFtbW9ncmFwaHkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTA4LjEyLjEwMTgnCnZhbHVlc2V0ICJVbmlsYXRlcmFsIE1hc3RlY3RvbXkiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTk4LjEyLjEwMjAnCnZhbHVlc2V0ICJIaXN0b3J5IG9mIGJpbGF0ZXJhbCBtYXN0ZWN0b215IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjE5OC4xMi4xMDY4Jwp2YWx1ZXNldCAiU3RhdHVzIFBvc3QgTGVmdCBNYXN0ZWN0b215IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjE5OC4xMi4xMDY5Jwp2YWx1ZXNldCAiU3RhdHVzIFBvc3QgUmlnaHQgTWFzdGVjdG9teSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xOTguMTIuMTA3MCcKdmFsdWVzZXQgIkxlZnQiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTIyLjEyLjEwMzYnCnZhbHVlc2V0ICJSaWdodCI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMjIuMTIuMTAzNScKdmFsdWVzZXQgIlVuaWxhdGVyYWwgTWFzdGVjdG9teSwgVW5zcGVjaWZpZWQgTGF0ZXJhbGl0eSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xOTguMTIuMTA3MScKCnBhcmFtZXRlciAiTWVhc3VyZW1lbnQgUGVyaW9kIiBJbnRlcnZhbDxEYXRlVGltZT4KCmNvbnRleHQgUGF0aWVudAoKZGVmaW5lICJTREUgRXRobmljaXR5IjoKICBTREUuIlNERSBFdGhuaWNpdHkiCgpkZWZpbmUgIlNERSBQYXllciI6CiAgU0RFLiJTREUgUGF5ZXIiCgpkZWZpbmUgIlNERSBSYWNlIjoKICBTREUuIlNERSBSYWNlIgoKZGVmaW5lICJTREUgU2V4IjoKICBTREUuIlNERSBTZXgiCgpkZWZpbmUgIkRlbm9taW5hdG9yIjoKCQkiSW5pdGlhbCBQb3B1bGF0aW9uIgoKZGVmaW5lICJVbmlsYXRlcmFsIE1hc3RlY3RvbXkgUHJvY2VkdXJlIjoKCQlbUHJvY2VkdXJlOiAiVW5pbGF0ZXJhbCBNYXN0ZWN0b215Il0gVW5pbGF0ZXJhbE1hc3RlY3RvbXlQcm9jZWR1cmUKCQkJCXdoZXJlIChVbmlsYXRlcmFsTWFzdGVjdG9teVByb2NlZHVyZS5wZXJmb3JtZWQgYXMgUGVyaW9kKSBlbmRzIGJlZm9yZSBkYXkgb2YgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgkJCQkJCWFuZCBVbmlsYXRlcmFsTWFzdGVjdG9teVByb2NlZHVyZS5zdGF0dXMgPSAnY29tcGxldGVkJwoKZGVmaW5lICJSaWdodCBNYXN0ZWN0b215IjoKCQkoCgkJCQkoCiAgICAgICAgICBbQ29uZGl0aW9uOiAiU3RhdHVzIFBvc3QgUmlnaHQgTWFzdGVjdG9teSJdIEMKICAgICAgICAgICAgd2hlcmUgZXhpc3RzCiAgICAgICAgICAgICgKICAgICAgICAgICAgICBDLmNsaW5pY2FsU3RhdHVzLmNvZGluZyBDbGluaWNhbFN0YXR1c0NvZGluZwogICAgICAgICAgICAgICAgd2hlcmUgQ2xpbmljYWxTdGF0dXNDb2RpbmcuY29kZSA9ICdhY3RpdmUnCiAgICAgICAgICAgICkKICAgICAgICApCgkJCQl1bmlvbiAoCgkJCQkJW0NvbmRpdGlvbjogIlVuaWxhdGVyYWwgTWFzdGVjdG9teSwgVW5zcGVjaWZpZWQgTGF0ZXJhbGl0eSJdIFVuaWxhdGVyYWxNYXN0ZWN0b215RGlhZ25vc2lzCgkJCQkJCXdoZXJlIFVuaWxhdGVyYWxNYXN0ZWN0b215RGlhZ25vc2lzLmJvZHlTaXRlIGluICJSaWdodCIKCQkJCQkJCWFuZCBleGlzdHMKICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICBVbmlsYXRlcmFsTWFzdGVjdG9teURpYWdub3Npcy5jbGluaWNhbFN0YXR1cy5jb2RpbmcgQ2xpbmljYWxTdGF0dXNDb2RpbmcKICAgICAgICAgICAgICAgICAgd2hlcmUgQ2xpbmljYWxTdGF0dXNDb2RpbmcuY29kZSA9ICdhY3RpdmUnCiAgICAgICAgICAgICAgKQoJCQkJKQoJCSkgUmlnaHRNYXN0ZWN0b215CgkJCQl3aGVyZSBHbG9iYWwuIk5vcm1hbGl6ZSBPbnNldCIoUmlnaHRNYXN0ZWN0b215Lm9uc2V0KSBzdGFydHMgYmVmb3JlIGRheSBvZiBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKCmRlZmluZSAiTGVmdCBNYXN0ZWN0b215IjoKCQkoCgkJICAgICgKICAgICAgICAgIFtDb25kaXRpb246ICJTdGF0dXMgUG9zdCBMZWZ0IE1hc3RlY3RvbXkiXSBDCiAgICAgICAgICAgIHdoZXJlIGV4aXN0cwogICAgICAgICAgICAoCiAgICAgICAgICAgICAgQy5jbGluaWNhbFN0YXR1cy5jb2RpbmcgQ2xpbmljYWxTdGF0dXNDb2RpbmcKICAgICAgICAgICAgICAgIHdoZXJlIENsaW5pY2FsU3RhdHVzQ29kaW5nLmNvZGUgPSAnYWN0aXZlJwogICAgICAgICAgICApCiAgICAgICAgKQoJCQkJdW5pb24gKAoJCQkJCVtDb25kaXRpb246ICJVbmlsYXRlcmFsIE1hc3RlY3RvbXksIFVuc3BlY2lmaWVkIExhdGVyYWxpdHkiXSBVbmlsYXRlcmFsTWFzdGVjdG9teURpYWdub3NpcwoJCQkJCQl3aGVyZSBVbmlsYXRlcmFsTWFzdGVjdG9teURpYWdub3Npcy5ib2R5U2l0ZSBpbiAiTGVmdCIKCQkJCQkJCWFuZCBleGlzdHMKICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICBVbmlsYXRlcmFsTWFzdGVjdG9teURpYWdub3Npcy5jbGluaWNhbFN0YXR1cy5jb2RpbmcgQ2xpbmljYWxTdGF0dXNDb2RpbmcKICAgICAgICAgICAgICAgICAgd2hlcmUgQ2xpbmljYWxTdGF0dXNDb2RpbmcuY29kZSA9ICdhY3RpdmUnCiAgICAgICAgICAgICAgKQoJCQkJKQoJCSkgTGVmdE1hc3RlY3RvbXkKCQkJCXdoZXJlIEdsb2JhbC4iTm9ybWFsaXplIE9uc2V0IihMZWZ0TWFzdGVjdG9teS5vbnNldCkgc3RhcnRzIGJlZm9yZSBkYXkgb2YgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgpkZWZpbmUgIkhpc3RvcnkgQmlsYXRlcmFsIE1hc3RlY3RvbXkiOgoJCVtDb25kaXRpb246ICJIaXN0b3J5IG9mIGJpbGF0ZXJhbCBtYXN0ZWN0b215Il0gQmlsYXRlcmFsTWFzdGVjdG9teUhpc3RvcnkKCQkJCXdoZXJlIEdsb2JhbC4iTm9ybWFsaXplIE9uc2V0IihCaWxhdGVyYWxNYXN0ZWN0b215SGlzdG9yeS5vbnNldCkgc3RhcnRzIGJlZm9yZSBkYXkgb2YgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgkJCQkJCWFuZAogICAgICAgICAgICBleGlzdHMKICAgICAgICAgICAgKAogICAgICAgICAgICAgIEJpbGF0ZXJhbE1hc3RlY3RvbXlIaXN0b3J5LmNsaW5pY2FsU3RhdHVzLmNvZGluZyBDbGluaWNhbFN0YXR1c0NvZGluZwogICAgICAgICAgICAgICAgd2hlcmUgQ2xpbmljYWxTdGF0dXNDb2RpbmcuY29kZSA9ICdhY3RpdmUnCiAgICAgICAgICAgICkKCmRlZmluZSAiQmlsYXRlcmFsIE1hc3RlY3RvbXkgUHJvY2VkdXJlIjoKCQlbUHJvY2VkdXJlOiAiQmlsYXRlcmFsIE1hc3RlY3RvbXkiXSBCaWxhdGVyYWxNYXN0ZWN0b215UGVyZm9ybWVkCgkJCQl3aGVyZSAoQmlsYXRlcmFsTWFzdGVjdG9teVBlcmZvcm1lZC5wZXJmb3JtZWQgYXMgUGVyaW9kKSBlbmRzIGJlZm9yZSBkYXkgb2YgZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCgkJCQkJCWFuZCBCaWxhdGVyYWxNYXN0ZWN0b215UGVyZm9ybWVkLnN0YXR1cyA9ICdjb21wbGV0ZWQnCgpkZWZpbmUgIk51bWVyYXRvciI6CgkJZXhpc3RzICgKCQkJCVtEaWFnbm9zdGljUmVwb3J0OiAiTWFtbW9ncmFwaHkiXSBNYW1tb2dyYW0KCQkJCQkJd2hlcmUgKCBNYW1tb2dyYW0uZWZmZWN0aXZlIGVuZHMgMjcgbW9udGhzIG9yIGxlc3MgYmVmb3JlIGRheSBvZiBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIgKQoJCQkJCQkJCWFuZCBNYW1tb2dyYW0uc3RhdHVzIGluIHsgJ2ZpbmFsJywgJ2FtZW5kZWQnLCAnY29ycmVjdGVkJywgJ2FwcGVuZGVkJyB9CgkJKQoKZGVmaW5lICJEZW5vbWluYXRvciBFeGNsdXNpb24iOgoJCUhvc3BpY2UuIkhhcyBIb3NwaWNlIigiTWVhc3VyZW1lbnQgUGVyaW9kIikKCQkJCW9yICggQ291bnQoIlVuaWxhdGVyYWwgTWFzdGVjdG9teSBQcm9jZWR1cmUiKSA9IDIgKQoJCQkJb3IgKCBleGlzdHMgIlJpZ2h0IE1hc3RlY3RvbXkiIGFuZCBleGlzdHMgIkxlZnQgTWFzdGVjdG9teSIgKQoJCQkJb3IgZXhpc3RzICJIaXN0b3J5IEJpbGF0ZXJhbCBNYXN0ZWN0b215IgoJCQkJb3IgZXhpc3RzICJCaWxhdGVyYWwgTWFzdGVjdG9teSBQcm9jZWR1cmUiCgpkZWZpbmUgIkluaXRpYWwgUG9wdWxhdGlvbiI6CgkJUGF0aWVudC5nZW5kZXIgPSAnZmVtYWxlJwoJCQkJYW5kIEdsb2JhbC4iQ2FsZW5kYXJBZ2VJblllYXJzQXQiKEZISVJIZWxwZXJzLlRvRGF0ZShQYXRpZW50LmJpcnRoRGF0ZSksIHN0YXJ0IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiKSBpbiBJbnRlcnZhbFs1MSwgNzRdCgkJCQlhbmQgZXhpc3RzIEFkdWx0T3V0cGF0aWVudEVuY291bnRlcnMuIlF1YWxpZnlpbmcgRW5jb3VudGVycyIoIk1lYXN1cmVtZW50IFBlcmlvZCIpCg=="/> </content> </Library>