2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide
2022.1.0 - CI Build

2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide, published by Centers for Disease Control and Prevention (CDC). This guide is not an authorized publication; it is the continuous build for version 2022.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/opioid-cds-r4/ and changes regularly. See the Directory of published versions

: OpioidCDSREC04And05Library - TTL Representation

Active as of 2025-08-19

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "OpioidCDSREC04And05"] ; # 
  fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir: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;\">OpioidCDSREC04And05</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Url: </b></th>\n            <td style=\"padding-left: 4px;\"><a href=\"Library-OpioidCDSREC04And05.html\">Library - Recommendations #4 and #5 - Lowest Effective Dose</a></td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">2022.1.0</td>\n        </tr>\n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Name: </b></th>\n            <td style=\"padding-left: 4px;\">OpioidCDSREC04And05</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">Library - Recommendations #4 and #5 - Lowest Effective Dose</td>\n        </tr>\n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">active</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Experimental: </b></th>\n            <td style=\"padding-left: 4px;\">true</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Type: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                    \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>system: </b> <span><a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n        \n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2025-08-19 19:14:41+0000</td>\n        </tr>\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">Centers for Disease Control and Prevention (CDC)</td>\n        </tr>\n        \n        \n        \n        \n        \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><a href=\"http://fhir.org/guides/cqf/common/4.0.1/4.0.1/Library-FHIR-ModelInfo.html\">http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</a></li>\n              \n                <li><a href=\"Library-OpioidCDSCommon.html\">Library - OpioidCDS Commonversion: null2022.1.0)</a></li>\n              \n                <li><a href=\"Library-OpioidCDSCommonConfig.html\">Library - OpioidCDS Common Configurationversion: null2022.1.0)</a></li>\n              \n                <li><a href=\"Library-OpioidCDSRoutines.html\">Library - OpioidCDS Routinesversion: null2022.1.0)</a></li>\n              \n                <li><a href=\"Library-MMECalculator.html\">Morphine Milligram Equivalent (MME) Calculator for FHIR R4version: null3.0.0)</a></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>ContextPrescriptions</th><th>MedicationRequest</th><th>0</th><th>*</th><th>In</th></tr>\n              \n                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions</th><th>MedicationRequest</th><th>0</th><th>*</th><th>Out</th></tr>\n              \n                <tr><th>Total MME</th><th>Quantity</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Taper Now</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Consider Tapering</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Inclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Exclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Is Recommendation Applicable?</th><th>boolean</th><th>0</th><th>1</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>Patient</th>\n                  <th>http://hl7.org/fhir/StructureDefinition/Patient</th>\n                  <th/>\n                  <th>\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 style=\"max-width: 1084px;\"><code class=\"language-cql\">library OpioidCDSREC04And05 version '2022.1.0'\n\nusing FHIR version '4.0.1'\n\ninclude OpioidCDSCommon version '2022.1.0' called Common\ninclude OpioidCDSCommonConfig version '2022.1.0' called Config\ninclude OpioidCDSRoutines version '2022.1.0' called Routines\n/*include fhir.cdc.\"opioid-mme-r4\".MMECalculator version '3.0.0' called MMECalculator\n */\ninclude MMECalculator version '3.0.0' called MMECalculator\n\n/*\n**\n**  Recommendation #4\n**    When opioids are initiated for opioid-naïve patients with acute, subacute, or chronic pain, \n**    clinicians should prescribe the lowest effective dosage. If opioids are continued for \n**    subacute or chronic pain, clinicians should use caution when prescribing opioids at any dosage, \n**    should carefully evaluate individual benefits and risks when considering increasing dosage, and \n**    should avoid increasing dosage above levels likely to yield diminishing returns in benefits \n**    relative to risks to patients (recommendation category: A; evidence type: 3)\n**  Recommendation #5\n**    For patients already receiving opioid therapy, clinicians should carefully weigh benefits and \n**    risks and exercise care when changing opioid dosage. If benefits outweigh risks of continued \n**    opioid therapy, clinicians should work closely with patients to optimize nonopioid therapies \n**    while continuing opioid therapy. If benefits do not outweigh risks of continued opioid therapy, \n**    clinicians should optimize other therapies and work closely with patients to gradually taper to \n**    lower dosages or, if warranted based on the individual circumstances of the patient, appropriately \n**    taper and discontinue opioids. Unless there are indications of a life-threatening issue such as \n**    warning signs of impending overdose (e.g., confusion, sedation, or slurred speech), opioid therapy \n**    should not be discontinued abruptly, and clinicians should not rapidly reduce opioid dosages from \n**    higher dosages (recommendation category: B; evidence type: 4).\n**\n**  When\n**    Provider is prescribing an opioid analgesic with ambulatory misuse potential in the outpatient setting\n**    CDC 2022 guideline general inclusion criteria met for this patient:\n**      Patient is 18 or over\n**      Patient does not have evidence of sickle cell disease\n**      Patient does not have findings indicating limited life expectancy\n**      Patient does not have orders for therapies indicating end of life care\n**      Patient is not undergoing active cancer treatment:\n**        Patient has had at least 2 office visits within the past 12 months with an oncology specialist present, or\n**        Patient has had at least 2 office visits within the past 12 months with a CDC malignant cancer condition diagnosis\n**      Patient does not have conditions likely terminal for opioid prescribing present\n**    Patient Morphine Milligram Equivalent (MME) greater than or equal to 50\n**  Then\n**    Calibrate to Lowest Opioid Dose Needed for Expected Results and Exercise Care When Changing Opioid Dosages:\n**      Document - Will prescribe a lower dose\n**      Document - Will calibrate a gradual change in dosage\n**      Snooze - Benefits outweigh risks, snooze 3 months\n**      Snooze - Short term benefits outweigh risks, snooze 1 month\n**      Snooze - N/A add comment, snooze 3 months\n**\n*/\n\n// META: Plan Definition: http://fhir.org/guides/cdc/opioid-cds-r4/PlanDefinition/opioid-cds-04-05\n\nparameter ContextPrescriptions List&lt;MedicationRequest&gt;\n\ncontext Patient\n\ndefine \"Taper Now\": \"Total MME\".value &gt;= 90\n\ndefine \"Consider Tapering\": \"Total MME\".value &lt; 90\n\ndefine \"Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions\":\n  ( Common.\"Is Opioid Analgesic with Ambulatory Misuse Potential?\"( ContextPrescriptions ) ) AmbulatoryOpioidPrescription\n    where Routines.\"Is Subacute or Chronic Pain Prescription?\"( AmbulatoryOpioidPrescription )\n\ndefine \"Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential\":\n  exists( \"Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions\" )\n\ndefine \"Total MME\":\n  MMECalculator.TotalMME(\n    (\n      \"Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions\"\n        union Common.\"Active Ambulatory Opioid Rx\"\n    ) AmbulatoryOpioidPrescription\n      where Routines.\"Is Subacute or Chronic Pain Prescription?\"( AmbulatoryOpioidPrescription )\n  )\n\ndefine \"Inclusion Criteria\":\n  \"Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential\"\n    and Routines.\"CDC 2022 Guideline General Inclusion Criteria\"\n    and \"Total MME\" &gt;= 50 '{MME}/d'\n\ndefine \"Exclusion Criteria\":\n  Common.\"End of Life Assessment\"\n\ndefine \"Is Recommendation Applicable?\":\n  \"Inclusion Criteria\"\n    and not \"Exclusion Criteria\"\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 style=\"max-width: 1084px;\"><code>Encoded data (30516 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+json</th></tr>\n              <tr><td><pre style=\"max-width: 1084px;\"><code>Encoded data (49484 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>"^^rdf:XMLLiteral
  ] ; # 
  fhir:contained ( [
a fhir:Parameters ;
fhir:id [ fhir:v "options" ] ;
    ( fhir:parameter [
fhir:name [ fhir:v "translatorVersion" ] ;
fhir:value [
a fhir:string ;
fhir:v "3.25.0"       ]     ] [
fhir:name [ fhir:v "option" ] ;
fhir:value [
a fhir:string ;
fhir:v "EnableAnnotations"       ]     ] [
fhir:name [ fhir:v "option" ] ;
fhir:value [
a fhir:string ;
fhir:v "EnableLocators"       ]     ] [
fhir:name [ fhir:v "option" ] ;
fhir:value [
a fhir:string ;
fhir:v "DisableListDemotion"       ]     ] [
fhir:name [ fhir:v "option" ] ;
fhir:value [
a fhir:string ;
fhir:v "DisableListPromotion"       ]     ] [
fhir:name [ fhir:v "format" ] ;
fhir:value [
a fhir:string ;
fhir:v "JSON"       ]     ] [
fhir:name [ fhir:v "format" ] ;
fhir:value [
a fhir:string ;
fhir:v "XML"       ]     ] [
fhir:name [ fhir:v "analyzeDataRequirements" ] ;
fhir:value [
a fhir:boolean ;
fhir:v false       ]     ] [
fhir:name [ fhir:v "collapseDataRequirements" ] ;
fhir:value [
a fhir:boolean ;
fhir:v true       ]     ] [
fhir:name [ fhir:v "compatibilityLevel" ] ;
fhir:value [
a fhir:string ;
fhir:v "1.5"       ]     ] [
fhir:name [ fhir:v "enableCqlOnly" ] ;
fhir:value [
a fhir:boolean ;
fhir:v false       ]     ] [
fhir:name [ fhir:v "errorLevel" ] ;
fhir:value [
a fhir:string ;
fhir:v "Info"       ]     ] [
fhir:name [ fhir:v "signatureLevel" ] ;
fhir:value [
a fhir:string ;
fhir:v "Overloads"       ]     ] [
fhir:name [ fhir:v "validateUnits" ] ;
fhir:value [
a fhir:boolean ;
fhir:v true       ]     ] [
fhir:name [ fhir:v "verifyOnly" ] ;
fhir:value [
a fhir:boolean ;
fhir:v false       ]     ] )
  ] ) ; # 
  fhir:extension ( [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/cqf-cqlOptions"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "#options" ]     ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-softwaresystem"^^xsd:anyURI ] ;
fhir:value [
a fhir:Reference ;
fhir:reference [ fhir:v "Device/cqf-tooling" ]     ]
  ] ) ; # 
  fhir:url [ fhir:v "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSREC04And05"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "2022.1.0"] ; # 
  fhir:name [ fhir:v "OpioidCDSREC04And05"] ; # 
  fhir:title [ fhir:v "Library - Recommendations #4 and #5 - Lowest Effective Dose"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:experimental [ fhir:v true] ; # 
  fhir:type [
    ( fhir:coding [
fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ] ;
fhir:code [ fhir:v "logic-library" ]     ] )
  ] ; # 
  fhir:date [ fhir:v "2025-08-19T19:14:41+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "Centers for Disease Control and Prevention (CDC)"] ; # 
  fhir:contact ( [
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "https://www.cdc.gov" ]     ] )
  ] ) ; # 
  fhir:relatedArtifact ( [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "FHIR model information" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Common" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Config" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommonConfig|2022.1.0"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommonConfig|2022.1.0>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library Routines" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines|2022.1.0"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines|2022.1.0>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:display [ fhir:v "Library MMECalculator" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0>     ]
  ] ) ; # 
  fhir:parameter ( [
fhir:name [ fhir:v "ContextPrescriptions" ] ;
fhir:use [ fhir:v "in" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "*" ] ;
fhir:type [ fhir:v "MedicationRequest" ]
  ] [
fhir:name [ fhir:v "Patient" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Patient" ]
  ] [
fhir:name [ fhir:v "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "*" ] ;
fhir:type [ fhir:v "MedicationRequest" ]
  ] [
fhir:name [ fhir:v "Total MME" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "Quantity" ]
  ] [
fhir:name [ fhir:v "Taper Now" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Consider Tapering" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Inclusion Criteria" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Exclusion Criteria" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] [
fhir:name [ fhir:v "Is Recommendation Applicable?" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:min [ fhir:v 0 ] ;
fhir:max [ fhir:v "1" ] ;
fhir:type [ fhir:v "boolean" ]
  ] ) ; # 
  fhir:dataRequirement ( [
fhir:type [ fhir:v "Patient" ] ;
    ( fhir:profile [
fhir:v "http://hl7.org/fhir/StructureDefinition/Patient"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Patient>     ] )
  ] ) ; # 
  fhir:content ( [
fhir:contentType [ fhir:v "text/cql" ] ;
fhir:data [ fhir:v "bGlicmFyeSBPcGlvaWRDRFNSRUMwNEFuZDA1IHZlcnNpb24gJzIwMjIuMS4wJwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uQ29uZmlnIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29uZmlnCmluY2x1ZGUgT3Bpb2lkQ0RTUm91dGluZXMgdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBSb3V0aW5lcwovKmluY2x1ZGUgZmhpci5jZGMuIm9waW9pZC1tbWUtcjQiLk1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCiAqLwppbmNsdWRlIE1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCgovKgoqKgoqKiAgUmVjb21tZW5kYXRpb24gIzQKKiogICAgV2hlbiBvcGlvaWRzIGFyZSBpbml0aWF0ZWQgZm9yIG9waW9pZC1uYcOvdmUgcGF0aWVudHMgd2l0aCBhY3V0ZSwgc3ViYWN1dGUsIG9yIGNocm9uaWMgcGFpbiwgCioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIHByZXNjcmliZSB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBkb3NhZ2UuIElmIG9waW9pZHMgYXJlIGNvbnRpbnVlZCBmb3IgCioqICAgIHN1YmFjdXRlIG9yIGNocm9uaWMgcGFpbiwgY2xpbmljaWFucyBzaG91bGQgdXNlIGNhdXRpb24gd2hlbiBwcmVzY3JpYmluZyBvcGlvaWRzIGF0IGFueSBkb3NhZ2UsIAoqKiAgICBzaG91bGQgY2FyZWZ1bGx5IGV2YWx1YXRlIGluZGl2aWR1YWwgYmVuZWZpdHMgYW5kIHJpc2tzIHdoZW4gY29uc2lkZXJpbmcgaW5jcmVhc2luZyBkb3NhZ2UsIGFuZCAKKiogICAgc2hvdWxkIGF2b2lkIGluY3JlYXNpbmcgZG9zYWdlIGFib3ZlIGxldmVscyBsaWtlbHkgdG8geWllbGQgZGltaW5pc2hpbmcgcmV0dXJucyBpbiBiZW5lZml0cyAKKiogICAgcmVsYXRpdmUgdG8gcmlza3MgdG8gcGF0aWVudHMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBBOyBldmlkZW5jZSB0eXBlOiAzKQoqKiAgUmVjb21tZW5kYXRpb24gIzUKKiogICAgRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIAoqKiAgICByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuIElmIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCAKKiogICAgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIG9wdGltaXplIG5vbm9waW9pZCB0aGVyYXBpZXMgCioqICAgIHdoaWxlIGNvbnRpbnVpbmcgb3Bpb2lkIHRoZXJhcHkuIElmIGJlbmVmaXRzIGRvIG5vdCBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgb3Bpb2lkIHRoZXJhcHksIAoqKiAgICBjbGluaWNpYW5zIHNob3VsZCBvcHRpbWl6ZSBvdGhlciB0aGVyYXBpZXMgYW5kIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIGdyYWR1YWxseSB0YXBlciB0byAKKiogICAgbG93ZXIgZG9zYWdlcyBvciwgaWYgd2FycmFudGVkIGJhc2VkIG9uIHRoZSBpbmRpdmlkdWFsIGNpcmN1bXN0YW5jZXMgb2YgdGhlIHBhdGllbnQsIGFwcHJvcHJpYXRlbHkgCioqICAgIHRhcGVyIGFuZCBkaXNjb250aW51ZSBvcGlvaWRzLiBVbmxlc3MgdGhlcmUgYXJlIGluZGljYXRpb25zIG9mIGEgbGlmZS10aHJlYXRlbmluZyBpc3N1ZSBzdWNoIGFzIAoqKiAgICB3YXJuaW5nIHNpZ25zIG9mIGltcGVuZGluZyBvdmVyZG9zZSAoZS5nLiwgY29uZnVzaW9uLCBzZWRhdGlvbiwgb3Igc2x1cnJlZCBzcGVlY2gpLCBvcGlvaWQgdGhlcmFweSAKKiogICAgc2hvdWxkIG5vdCBiZSBkaXNjb250aW51ZWQgYWJydXB0bHksIGFuZCBjbGluaWNpYW5zIHNob3VsZCBub3QgcmFwaWRseSByZWR1Y2Ugb3Bpb2lkIGRvc2FnZXMgZnJvbSAKKiogICAgaGlnaGVyIGRvc2FnZXMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBCOyBldmlkZW5jZSB0eXBlOiA0KS4KKioKKiogIFdoZW4KKiogICAgUHJvdmlkZXIgaXMgcHJlc2NyaWJpbmcgYW4gb3Bpb2lkIGFuYWxnZXNpYyB3aXRoIGFtYnVsYXRvcnkgbWlzdXNlIHBvdGVudGlhbCBpbiB0aGUgb3V0cGF0aWVudCBzZXR0aW5nCioqICAgIENEQyAyMDIyIGd1aWRlbGluZSBnZW5lcmFsIGluY2x1c2lvbiBjcml0ZXJpYSBtZXQgZm9yIHRoaXMgcGF0aWVudDoKKiogICAgICBQYXRpZW50IGlzIDE4IG9yIG92ZXIKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZXZpZGVuY2Ugb2Ygc2lja2xlIGNlbGwgZGlzZWFzZQoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBmaW5kaW5ncyBpbmRpY2F0aW5nIGxpbWl0ZWQgbGlmZSBleHBlY3RhbmN5CioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIG9yZGVycyBmb3IgdGhlcmFwaWVzIGluZGljYXRpbmcgZW5kIG9mIGxpZmUgY2FyZQoqKiAgICAgIFBhdGllbnQgaXMgbm90IHVuZGVyZ29pbmcgYWN0aXZlIGNhbmNlciB0cmVhdG1lbnQ6CioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhbiBvbmNvbG9neSBzcGVjaWFsaXN0IHByZXNlbnQsIG9yCioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhIENEQyBtYWxpZ25hbnQgY2FuY2VyIGNvbmRpdGlvbiBkaWFnbm9zaXMKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgY29uZGl0aW9ucyBsaWtlbHkgdGVybWluYWwgZm9yIG9waW9pZCBwcmVzY3JpYmluZyBwcmVzZW50CioqICAgIFBhdGllbnQgTW9ycGhpbmUgTWlsbGlncmFtIEVxdWl2YWxlbnQgKE1NRSkgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDUwCioqICBUaGVuCioqICAgIENhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXM6CioqICAgICAgRG9jdW1lbnQgLSBXaWxsIHByZXNjcmliZSBhIGxvd2VyIGRvc2UKKiogICAgICBEb2N1bWVudCAtIFdpbGwgY2FsaWJyYXRlIGEgZ3JhZHVhbCBjaGFuZ2UgaW4gZG9zYWdlCioqICAgICAgU25vb3plIC0gQmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAzIG1vbnRocwoqKiAgICAgIFNub296ZSAtIFNob3J0IHRlcm0gYmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAxIG1vbnRoCioqICAgICAgU25vb3plIC0gTi9BIGFkZCBjb21tZW50LCBzbm9vemUgMyBtb250aHMKKioKKi8KCi8vIE1FVEE6IFBsYW4gRGVmaW5pdGlvbjogaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy1yNC9QbGFuRGVmaW5pdGlvbi9vcGlvaWQtY2RzLTA0LTA1CgpwYXJhbWV0ZXIgQ29udGV4dFByZXNjcmlwdGlvbnMgTGlzdDxNZWRpY2F0aW9uUmVxdWVzdD4KCmNvbnRleHQgUGF0aWVudAoKZGVmaW5lICJUYXBlciBOb3ciOiAiVG90YWwgTU1FIi52YWx1ZSA+PSA5MAoKZGVmaW5lICJDb25zaWRlciBUYXBlcmluZyI6ICJUb3RhbCBNTUUiLnZhbHVlIDwgOTAKCmRlZmluZSAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyI6CiAgKCBDb21tb24uIklzIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWw/IiggQ29udGV4dFByZXNjcmlwdGlvbnMgKSApIEFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24KICAgIHdoZXJlIFJvdXRpbmVzLiJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyIoIEFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24gKQoKZGVmaW5lICJQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCI6CiAgZXhpc3RzKCAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIgKQoKZGVmaW5lICJUb3RhbCBNTUUiOgogIE1NRUNhbGN1bGF0b3IuVG90YWxNTUUoCiAgICAoCiAgICAgICJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIgogICAgICAgIHVuaW9uIENvbW1vbi4iQWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4IgogICAgKSBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uCiAgICAgIHdoZXJlIFJvdXRpbmVzLiJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyIoIEFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24gKQogICkKCmRlZmluZSAiSW5jbHVzaW9uIENyaXRlcmlhIjoKICAiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiCiAgICBhbmQgUm91dGluZXMuIkNEQyAyMDIyIEd1aWRlbGluZSBHZW5lcmFsIEluY2x1c2lvbiBDcml0ZXJpYSIKICAgIGFuZCAiVG90YWwgTU1FIiA+PSA1MCAne01NRX0vZCcKCmRlZmluZSAiRXhjbHVzaW9uIENyaXRlcmlhIjoKICBDb21tb24uIkVuZCBvZiBMaWZlIEFzc2Vzc21lbnQiCgpkZWZpbmUgIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IjoKICAiSW5jbHVzaW9uIENyaXRlcmlhIgogICAgYW5kIG5vdCAiRXhjbHVzaW9uIENyaXRlcmlhIgo="^^xsd:base64Binary ]
  ] [
fhir:contentType [ fhir:v "application/elm+xml" ] ;
fhir:data [ fhir:v "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JWZXJzaW9uPSIzLjI1LjAiIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMzAwIj4KICAgICAgICAgPGE6cz5saWJyYXJ5IE9waW9pZENEU1JFQzA0QW5kMDUgdmVyc2lvbiAnMjAyMi4xLjAnPC9hOnM+CiAgICAgIDwvYTpzPgogICA8L2Fubm90YXRpb24+CiAgIDxpZGVudGlmaWVyIGlkPSJPcGlvaWRDRFNSRUMwNEFuZDA1IiBzeXN0ZW09Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMiIHZlcnNpb249IjIwMjIuMS4wIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSIzOjEtMzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI1OjEtNTo1NiIgbG9jYWxJZGVudGlmaWVyPSJDb21tb24iIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvT3Bpb2lkQ0RTQ29tbW9uIiB2ZXJzaW9uPSIyMDIyLjEuMCI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5PcGlvaWRDRFNDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMCIgbG9jYXRvcj0iNjoxLTY6NjIiIGxvY2FsSWRlbnRpZmllcj0iQ29uZmlnIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbkNvbmZpZyIgdmVyc2lvbj0iMjAyMi4xLjAiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+T3Bpb2lkQ0RTQ29tbW9uQ29uZmlnPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICcyMDIyLjEuMCcgY2FsbGVkIENvbmZpZzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTIiIGxvY2F0b3I9Ijc6MS03OjYwIiBsb2NhbElkZW50aWZpZXI9IlJvdXRpbmVzIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU1JvdXRpbmVzIiB2ZXJzaW9uPSIyMDIyLjEuMCI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5PcGlvaWRDRFNSb3V0aW5lczwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBSb3V0aW5lczwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTQiIGxvY2F0b3I9IjEwOjEtMTA6NTgiIGxvY2FsSWRlbnRpZmllcj0iTU1FQ2FsY3VsYXRvciIgcGF0aD0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9NTUVDYWxjdWxhdG9yIiB2ZXJzaW9uPSIzLjAuMCI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyppbmNsdWRlIGZoaXIuY2RjLiZxdW90O29waW9pZC1tbWUtcjQmcXVvdDsuTU1FQ2FsY3VsYXRvciB2ZXJzaW9uICczLjAuMCcgY2FsbGVkIE1NRUNhbGN1bGF0b3IKICovCmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+TU1FQ2FsY3VsYXRvcjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIyMTYiIGxvY2F0b3I9IjU3OjEtNTc6NTQiIG5hbWU9IkNvbnRleHRQcmVzY3JpcHRpb25zIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgoqKgoqKiAgUmVjb21tZW5kYXRpb24gIzQKKiogICAgV2hlbiBvcGlvaWRzIGFyZSBpbml0aWF0ZWQgZm9yIG9waW9pZC1uYcOvdmUgcGF0aWVudHMgd2l0aCBhY3V0ZSwgc3ViYWN1dGUsIG9yIGNocm9uaWMgcGFpbiwgCioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIHByZXNjcmliZSB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBkb3NhZ2UuIElmIG9waW9pZHMgYXJlIGNvbnRpbnVlZCBmb3IgCioqICAgIHN1YmFjdXRlIG9yIGNocm9uaWMgcGFpbiwgY2xpbmljaWFucyBzaG91bGQgdXNlIGNhdXRpb24gd2hlbiBwcmVzY3JpYmluZyBvcGlvaWRzIGF0IGFueSBkb3NhZ2UsIAoqKiAgICBzaG91bGQgY2FyZWZ1bGx5IGV2YWx1YXRlIGluZGl2aWR1YWwgYmVuZWZpdHMgYW5kIHJpc2tzIHdoZW4gY29uc2lkZXJpbmcgaW5jcmVhc2luZyBkb3NhZ2UsIGFuZCAKKiogICAgc2hvdWxkIGF2b2lkIGluY3JlYXNpbmcgZG9zYWdlIGFib3ZlIGxldmVscyBsaWtlbHkgdG8geWllbGQgZGltaW5pc2hpbmcgcmV0dXJucyBpbiBiZW5lZml0cyAKKiogICAgcmVsYXRpdmUgdG8gcmlza3MgdG8gcGF0aWVudHMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBBOyBldmlkZW5jZSB0eXBlOiAzKQoqKiAgUmVjb21tZW5kYXRpb24gIzUKKiogICAgRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIAoqKiAgICByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuIElmIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCAKKiogICAgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIG9wdGltaXplIG5vbm9waW9pZCB0aGVyYXBpZXMgCioqICAgIHdoaWxlIGNvbnRpbnVpbmcgb3Bpb2lkIHRoZXJhcHkuIElmIGJlbmVmaXRzIGRvIG5vdCBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgb3Bpb2lkIHRoZXJhcHksIAoqKiAgICBjbGluaWNpYW5zIHNob3VsZCBvcHRpbWl6ZSBvdGhlciB0aGVyYXBpZXMgYW5kIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIGdyYWR1YWxseSB0YXBlciB0byAKKiogICAgbG93ZXIgZG9zYWdlcyBvciwgaWYgd2FycmFudGVkIGJhc2VkIG9uIHRoZSBpbmRpdmlkdWFsIGNpcmN1bXN0YW5jZXMgb2YgdGhlIHBhdGllbnQsIGFwcHJvcHJpYXRlbHkgCioqICAgIHRhcGVyIGFuZCBkaXNjb250aW51ZSBvcGlvaWRzLiBVbmxlc3MgdGhlcmUgYXJlIGluZGljYXRpb25zIG9mIGEgbGlmZS10aHJlYXRlbmluZyBpc3N1ZSBzdWNoIGFzIAoqKiAgICB3YXJuaW5nIHNpZ25zIG9mIGltcGVuZGluZyBvdmVyZG9zZSAoZS5nLiwgY29uZnVzaW9uLCBzZWRhdGlvbiwgb3Igc2x1cnJlZCBzcGVlY2gpLCBvcGlvaWQgdGhlcmFweSAKKiogICAgc2hvdWxkIG5vdCBiZSBkaXNjb250aW51ZWQgYWJydXB0bHksIGFuZCBjbGluaWNpYW5zIHNob3VsZCBub3QgcmFwaWRseSByZWR1Y2Ugb3Bpb2lkIGRvc2FnZXMgZnJvbSAKKiogICAgaGlnaGVyIGRvc2FnZXMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBCOyBldmlkZW5jZSB0eXBlOiA0KS4KKioKKiogIFdoZW4KKiogICAgUHJvdmlkZXIgaXMgcHJlc2NyaWJpbmcgYW4gb3Bpb2lkIGFuYWxnZXNpYyB3aXRoIGFtYnVsYXRvcnkgbWlzdXNlIHBvdGVudGlhbCBpbiB0aGUgb3V0cGF0aWVudCBzZXR0aW5nCioqICAgIENEQyAyMDIyIGd1aWRlbGluZSBnZW5lcmFsIGluY2x1c2lvbiBjcml0ZXJpYSBtZXQgZm9yIHRoaXMgcGF0aWVudDoKKiogICAgICBQYXRpZW50IGlzIDE4IG9yIG92ZXIKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZXZpZGVuY2Ugb2Ygc2lja2xlIGNlbGwgZGlzZWFzZQoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBmaW5kaW5ncyBpbmRpY2F0aW5nIGxpbWl0ZWQgbGlmZSBleHBlY3RhbmN5CioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIG9yZGVycyBmb3IgdGhlcmFwaWVzIGluZGljYXRpbmcgZW5kIG9mIGxpZmUgY2FyZQoqKiAgICAgIFBhdGllbnQgaXMgbm90IHVuZGVyZ29pbmcgYWN0aXZlIGNhbmNlciB0cmVhdG1lbnQ6CioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhbiBvbmNvbG9neSBzcGVjaWFsaXN0IHByZXNlbnQsIG9yCioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhIENEQyBtYWxpZ25hbnQgY2FuY2VyIGNvbmRpdGlvbiBkaWFnbm9zaXMKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgY29uZGl0aW9ucyBsaWtlbHkgdGVybWluYWwgZm9yIG9waW9pZCBwcmVzY3JpYmluZyBwcmVzZW50CioqICAgIFBhdGllbnQgTW9ycGhpbmUgTWlsbGlncmFtIEVxdWl2YWxlbnQgKE1NRSkgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDUwCioqICBUaGVuCioqICAgIENhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXM6CioqICAgICAgRG9jdW1lbnQgLSBXaWxsIHByZXNjcmliZSBhIGxvd2VyIGRvc2UKKiogICAgICBEb2N1bWVudCAtIFdpbGwgY2FsaWJyYXRlIGEgZ3JhZHVhbCBjaGFuZ2UgaW4gZG9zYWdlCioqICAgICAgU25vb3plIC0gQmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAzIG1vbnRocwoqKiAgICAgIFNub296ZSAtIFNob3J0IHRlcm0gYmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAxIG1vbnRoCioqICAgICAgU25vb3plIC0gTi9BIGFkZCBjb21tZW50LCBzbm9vemUgMyBtb250aHMKKioKKi8KCi8vIE1FVEE6IFBsYW4gRGVmaW5pdGlvbjogaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy1yNC9QbGFuRGVmaW5pdGlvbi9vcGlvaWQtY2RzLTA0LTA1CgpwYXJhbWV0ZXIgQ29udGV4dFByZXNjcmlwdGlvbnMgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjE3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5MaXN0Jmx0OzwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+TWVkaWNhdGlvblJlcXVlc3Q8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+PjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMjE3IiBsb2NhdG9yPSI1NzozMi01Nzo1NCIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iNTc6MzctNTc6NTMiIG5hbWU9ImZoaXI6TWVkaWNhdGlvblJlcXVlc3QiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgPC9wYXJhbWV0ZXJUeXBlU3BlY2lmaWVyPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIzIiBsb2NhdG9yPSI1OToxLTU5OjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMSIgbG9jYXRvcj0iNTk6MS01OToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyMiIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjU5OjEtNTk6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzUiIGxvY2F0b3I9IjY1OjEtNjc6OTQiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMzUiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db250ZXh0UHJlc2NyaXB0aW9uczwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Um91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8mcXVvdDsoIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+QW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQ0IiBsb2NhdG9yPSI2NjozLTY3Ojk0IiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjIzNiIgbG9jYXRvcj0iNjY6My02NjoxMjEiIGFsaWFzPSJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjM5IiBsb2NhdG9yPSI2NjozLTY2OjkyIiBuYW1lPSJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjM4IiBsb2NhdG9yPSI2Njo2OS02Njo4OCIgbmFtZT0iQ29udGV4dFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4KICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjI0MyIgbG9jYXRvcj0iNjc6NS02Nzo5NCIgbmFtZT0iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iIGxpYnJhcnlOYW1lPSJSb3V0aW5lcyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjQyIiBsb2NhdG9yPSI2Nzo2NS02Nzo5MiIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjMwIiBsb2NhdG9yPSI3MjoxLTc5OjMiIG5hbWU9IlRvdGFsIE1NRSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIzMCI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O1RvdGFsIE1NRSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+TU1FQ2FsY3VsYXRvcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub3RhbE1NRSgKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPigKICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0Nocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgdW5pb24gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtBY3RpdmUgQW1idWxhdG9yeSBPcGlvaWQgUngmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Sb3V0aW5lczwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5BbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiApPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPgogICk8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNTQiIGxvY2F0b3I9IjczOjMtNzk6MyIgbmFtZT0iVG90YWxNTUUiIGxpYnJhcnlOYW1lPSJNTUVDYWxjdWxhdG9yIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTMiIGxvY2F0b3I9Ijc0OjUtNzg6OTYiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjMyIiBsb2NhdG9yPSI3NDo1LTc3OjM0IiBhbGlhcz0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0OCIgbG9jYXRvcj0iNzQ6NS03Nzo1IiB4c2k6dHlwZT0iVW5pb24iPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDUiIGxvY2F0b3I9Ijc1OjctNzU6ODQiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NyIgbG9jYXRvcj0iNzY6MTUtNzY6NTAiIG5hbWU9IkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeCIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjI1MiIgbG9jYXRvcj0iNzg6Ny03ODo5NiIgbmFtZT0iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iIGxpYnJhcnlOYW1lPSJSb3V0aW5lcyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjUxIiBsb2NhdG9yPSI3ODo2Ny03ODo5NCIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjYiIGxvY2F0b3I9IjYxOjEtNjE6NDMiIG5hbWU9IlRhcGVyIE5vdyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyNiI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O1RhcGVyIE5vdyZxdW90OzogPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjI3Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VG90YWwgTU1FJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhbHVlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTciPiA+PSA5MDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjI3IiBsb2NhdG9yPSI2MToyMS02MTo0MyIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNjEiIG5hbWU9InQ6RGVjaW1hbCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI2MiIgbmFtZT0idDpEZWNpbWFsIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI1NiIgbG9jYXRvcj0iNjE6MjEtNjE6MzciIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI1NSIgbG9jYXRvcj0iNjE6MjEtNjE6MzEiIG5hbWU9IlRvdGFsIE1NRSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTkiIHhzaTp0eXBlPSJUb0RlY2ltYWwiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI2MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI1NyIgbG9jYXRvcj0iNjE6NDItNjE6NDMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOTAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNjUiIGxvY2F0b3I9IjYzOjEtNjM6NTAiIG5hbWU9IkNvbnNpZGVyIFRhcGVyaW5nIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjY1Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7Q29uc2lkZXIgVGFwZXJpbmcmcXVvdDs6IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz52YWx1ZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY5Ij4gJmx0OyA5MDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY2IiBsb2NhdG9yPSI2MzoyOS02Mzo1MCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3MyIgbmFtZT0idDpEZWNpbWFsIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjc0IiBuYW1lPSJ0OkRlY2ltYWwiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY4IiBsb2NhdG9yPSI2MzoyOS02Mzo0NSIgcGF0aD0idmFsdWUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjY3IiBsb2NhdG9yPSI2MzoyOS02MzozOSIgbmFtZT0iVG90YWwgTU1FIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3MSIgeHNpOnR5cGU9IlRvRGVjaW1hbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjcyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY5IiBsb2NhdG9yPSI2Mzo0OS02Mzo1MCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5MCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI3NyIgbG9jYXRvcj0iNjk6MS03MDo5MCIgbmFtZT0iUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyNzciPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNzgiPgogICAgICAgICAgICAgICAgICA8YTpzPmV4aXN0czwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0Nocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICk8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNzgiIGxvY2F0b3I9IjcwOjMtNzA6OTAiIHhzaTp0eXBlPSJFeGlzdHMiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzkiIGxvY2F0b3I9IjcwOjktNzA6OTAiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjgyIiBsb2NhdG9yPSI4MToxLTg0OjM1IiBuYW1lPSJJbmNsdXNpb24gQ3JpdGVyaWEiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyODIiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtJbmNsdXNpb24gQ3JpdGVyaWEmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlJvdXRpbmVzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NEQyAyMDIyIEd1aWRlbGluZSBHZW5lcmFsIEluY2x1c2lvbiBDcml0ZXJpYSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUb3RhbCBNTUUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID49IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+NTAgJ3tNTUV9L2QnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4MyIgbG9jYXRvcj0iODI6My04NDozNSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NCIgbG9jYXRvcj0iODI6My04Mzo2NCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NSIgbG9jYXRvcj0iODI6My04Mjo4MSIgbmFtZT0iUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NyIgbG9jYXRvcj0iODM6OS04Mzo2NCIgbmFtZT0iQ0RDIDIwMjIgR3VpZGVsaW5lIEdlbmVyYWwgSW5jbHVzaW9uIENyaXRlcmlhIiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjg4IiBsb2NhdG9yPSI4NDo5LTg0OjM1IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5MSIgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5MiIgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODkiIGxvY2F0b3I9Ijg0OjktODQ6MTkiIG5hbWU9IlRvdGFsIE1NRSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjkwIiBsb2NhdG9yPSI4NDoyNC04NDozNSIgdmFsdWU9IjUwIiB1bml0PSJ7TU1FfS9kIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI5NSIgbG9jYXRvcj0iODY6MS04NzozMyIgbmFtZT0iRXhjbHVzaW9uIENyaXRlcmlhIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjk1Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7RXhjbHVzaW9uIENyaXRlcmlhJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5NyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db21tb248L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RW5kIG9mIExpZmUgQXNzZXNzbWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5NyIgbG9jYXRvcj0iODc6My04NzozMyIgbmFtZT0iRW5kIG9mIExpZmUgQXNzZXNzbWVudCIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzAwIiBsb2NhdG9yPSI4OToxLTkxOjMyIiBuYW1lPSJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjMwMCI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O0lzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwMSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJbmNsdXNpb24gQ3JpdGVyaWEmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtFeGNsdXNpb24gQ3JpdGVyaWEmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzAxIiBsb2NhdG9yPSI5MDozLTkxOjMyIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzAyIiBsb2NhdG9yPSI5MDozLTkwOjIyIiBuYW1lPSJJbmNsdXNpb24gQ3JpdGVyaWEiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwMyIgbG9jYXRvcj0iOTE6OS05MTozMiIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwNCIgbG9jYXRvcj0iOTE6MTMtOTE6MzIiIG5hbWU9IkV4Y2x1c2lvbiBDcml0ZXJpYSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"^^xsd:base64Binary ]
  ] [
fhir:contentType [ fhir:v "application/elm+json" ] ;
fhir:data [ fhir:v "ewogICAibGlicmFyeSIgOiB7CiAgICAgICJsb2NhbElkIiA6ICIwIiwKICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICJ0cmFuc2xhdG9yVmVyc2lvbiIgOiAiMy4yNS4wIiwKICAgICAgICAgInRyYW5zbGF0b3JPcHRpb25zIiA6ICJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiwKICAgICAgICAgInNpZ25hdHVyZUxldmVsIiA6ICJPdmVybG9hZHMiLAogICAgICAgICAidHlwZSIgOiAiQ3FsVG9FbG1JbmZvIgogICAgICB9LCB7CiAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgInMiIDogewogICAgICAgICAgICAiciIgOiAiMzAwIiwKICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJsaWJyYXJ5IE9waW9pZENEU1JFQzA0QW5kMDUgdmVyc2lvbiAnMjAyMi4xLjAnIiBdCiAgICAgICAgICAgIH0gXQogICAgICAgICB9CiAgICAgIH0gXSwKICAgICAgImlkZW50aWZpZXIiIDogewogICAgICAgICAiaWQiIDogIk9waW9pZENEU1JFQzA0QW5kMDUiLAogICAgICAgICAic3lzdGVtIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzIiwKICAgICAgICAgInZlcnNpb24iIDogIjIwMjIuMS4wIgogICAgICB9LAogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7CiAgICAgICAgICJpZCIgOiAidXJuOmhsNy1vcmc6ZWxtIiwKICAgICAgICAgInZlcnNpb24iIDogInIxIgogICAgICB9LAogICAgICAidXNpbmdzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjEiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJTeXN0ZW0iLAogICAgICAgICAgICAidXJpIiA6ICJ1cm46aGw3LW9yZzplbG0tdHlwZXM6cjEiCiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIwNiIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzOjEtMzoyNiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkZISVIiLAogICAgICAgICAgICAidXJpIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjA2IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJ1c2luZyAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkZISVIiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICc0LjAuMSciIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiaW5jbHVkZXMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjA4IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU6MS01OjU2IiwKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvT3Bpb2lkQ0RTQ29tbW9uIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjIwMjIuMS4wIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjA4IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiT3Bpb2lkQ0RTQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInMjAyMi4xLjAnIiwiIGNhbGxlZCAiLCJDb21tb24iIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIxMCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OjEtNjo2MiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkNvbmZpZyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbkNvbmZpZyIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICIyMDIyLjEuMCIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjIxMCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk9waW9pZENEU0NvbW1vbkNvbmZpZyIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIHZlcnNpb24gIiwiJzIwMjIuMS4wJyIsIiBjYWxsZWQgIiwiQ29uZmlnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMTIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNzoxLTc6NjAiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJSb3V0aW5lcyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU1JvdXRpbmVzIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjIwMjIuMS4wIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjEyIiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiT3Bpb2lkQ0RTUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIicyMDIyLjEuMCciLCIgY2FsbGVkICIsIlJvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMTQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiMTA6MS0xMDo1OCIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIk1NRUNhbGN1bGF0b3IiLAogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9NTUVDYWxjdWxhdG9yIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjMuMC4wIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjE0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIvKmluY2x1ZGUgZmhpci5jZGMuXCJvcGlvaWQtbW1lLXI0XCIuTU1FQ2FsY3VsYXRvciB2ZXJzaW9uICczLjAuMCcgY2FsbGVkIE1NRUNhbGN1bGF0b3JcbiAqL1xuIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk1NRUNhbGN1bGF0b3IiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIiczLjAuMCciLCIgY2FsbGVkICIsIk1NRUNhbGN1bGF0b3IiIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAicGFyYW1ldGVycyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMTYiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNTc6MS01Nzo1NCIsCiAgICAgICAgICAgICJuYW1lIiA6ICJDb250ZXh0UHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjE2IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIvKlxuKipcbioqICBSZWNvbW1lbmRhdGlvbiAjNFxuKiogICAgV2hlbiBvcGlvaWRzIGFyZSBpbml0aWF0ZWQgZm9yIG9waW9pZC1uYcOvdmUgcGF0aWVudHMgd2l0aCBhY3V0ZSwgc3ViYWN1dGUsIG9yIGNocm9uaWMgcGFpbiwgXG4qKiAgICBjbGluaWNpYW5zIHNob3VsZCBwcmVzY3JpYmUgdGhlIGxvd2VzdCBlZmZlY3RpdmUgZG9zYWdlLiBJZiBvcGlvaWRzIGFyZSBjb250aW51ZWQgZm9yIFxuKiogICAgc3ViYWN1dGUgb3IgY2hyb25pYyBwYWluLCBjbGluaWNpYW5zIHNob3VsZCB1c2UgY2F1dGlvbiB3aGVuIHByZXNjcmliaW5nIG9waW9pZHMgYXQgYW55IGRvc2FnZSwgXG4qKiAgICBzaG91bGQgY2FyZWZ1bGx5IGV2YWx1YXRlIGluZGl2aWR1YWwgYmVuZWZpdHMgYW5kIHJpc2tzIHdoZW4gY29uc2lkZXJpbmcgaW5jcmVhc2luZyBkb3NhZ2UsIGFuZCBcbioqICAgIHNob3VsZCBhdm9pZCBpbmNyZWFzaW5nIGRvc2FnZSBhYm92ZSBsZXZlbHMgbGlrZWx5IHRvIHlpZWxkIGRpbWluaXNoaW5nIHJldHVybnMgaW4gYmVuZWZpdHMgXG4qKiAgICByZWxhdGl2ZSB0byByaXNrcyB0byBwYXRpZW50cyAocmVjb21tZW5kYXRpb24gY2F0ZWdvcnk6IEE7IGV2aWRlbmNlIHR5cGU6IDMpXG4qKiAgUmVjb21tZW5kYXRpb24gIzVcbioqICAgIEZvciBwYXRpZW50cyBhbHJlYWR5IHJlY2VpdmluZyBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgY2FyZWZ1bGx5IHdlaWdoIGJlbmVmaXRzIGFuZCBcbioqICAgIHJpc2tzIGFuZCBleGVyY2lzZSBjYXJlIHdoZW4gY2hhbmdpbmcgb3Bpb2lkIGRvc2FnZS4gSWYgYmVuZWZpdHMgb3V0d2VpZ2ggcmlza3Mgb2YgY29udGludWVkIFxuKiogICAgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIG9wdGltaXplIG5vbm9waW9pZCB0aGVyYXBpZXMgXG4qKiAgICB3aGlsZSBjb250aW51aW5nIG9waW9pZCB0aGVyYXB5LiBJZiBiZW5lZml0cyBkbyBub3Qgb3V0d2VpZ2ggcmlza3Mgb2YgY29udGludWVkIG9waW9pZCB0aGVyYXB5LCBcbioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIG9wdGltaXplIG90aGVyIHRoZXJhcGllcyBhbmQgd29yayBjbG9zZWx5IHdpdGggcGF0aWVudHMgdG8gZ3JhZHVhbGx5IHRhcGVyIHRvIFxuKiogICAgbG93ZXIgZG9zYWdlcyBvciwgaWYgd2FycmFudGVkIGJhc2VkIG9uIHRoZSBpbmRpdmlkdWFsIGNpcmN1bXN0YW5jZXMgb2YgdGhlIHBhdGllbnQsIGFwcHJvcHJpYXRlbHkgXG4qKiAgICB0YXBlciBhbmQgZGlzY29udGludWUgb3Bpb2lkcy4gVW5sZXNzIHRoZXJlIGFyZSBpbmRpY2F0aW9ucyBvZiBhIGxpZmUtdGhyZWF0ZW5pbmcgaXNzdWUgc3VjaCBhcyBcbioqICAgIHdhcm5pbmcgc2lnbnMgb2YgaW1wZW5kaW5nIG92ZXJkb3NlIChlLmcuLCBjb25mdXNpb24sIHNlZGF0aW9uLCBvciBzbHVycmVkIHNwZWVjaCksIG9waW9pZCB0aGVyYXB5IFxuKiogICAgc2hvdWxkIG5vdCBiZSBkaXNjb250aW51ZWQgYWJydXB0bHksIGFuZCBjbGluaWNpYW5zIHNob3VsZCBub3QgcmFwaWRseSByZWR1Y2Ugb3Bpb2lkIGRvc2FnZXMgZnJvbSBcbioqICAgIGhpZ2hlciBkb3NhZ2VzIChyZWNvbW1lbmRhdGlvbiBjYXRlZ29yeTogQjsgZXZpZGVuY2UgdHlwZTogNCkuXG4qKlxuKiogIFdoZW5cbioqICAgIFByb3ZpZGVyIGlzIHByZXNjcmliaW5nIGFuIG9waW9pZCBhbmFsZ2VzaWMgd2l0aCBhbWJ1bGF0b3J5IG1pc3VzZSBwb3RlbnRpYWwgaW4gdGhlIG91dHBhdGllbnQgc2V0dGluZ1xuKiogICAgQ0RDIDIwMjIgZ3VpZGVsaW5lIGdlbmVyYWwgaW5jbHVzaW9uIGNyaXRlcmlhIG1ldCBmb3IgdGhpcyBwYXRpZW50OlxuKiogICAgICBQYXRpZW50IGlzIDE4IG9yIG92ZXJcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGV2aWRlbmNlIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2VcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGZpbmRpbmdzIGluZGljYXRpbmcgbGltaXRlZCBsaWZlIGV4cGVjdGFuY3lcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIG9yZGVycyBmb3IgdGhlcmFwaWVzIGluZGljYXRpbmcgZW5kIG9mIGxpZmUgY2FyZVxuKiogICAgICBQYXRpZW50IGlzIG5vdCB1bmRlcmdvaW5nIGFjdGl2ZSBjYW5jZXIgdHJlYXRtZW50OlxuKiogICAgICAgIFBhdGllbnQgaGFzIGhhZCBhdCBsZWFzdCAyIG9mZmljZSB2aXNpdHMgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aXRoIGFuIG9uY29sb2d5IHNwZWNpYWxpc3QgcHJlc2VudCwgb3JcbioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhIENEQyBtYWxpZ25hbnQgY2FuY2VyIGNvbmRpdGlvbiBkaWFnbm9zaXNcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGNvbmRpdGlvbnMgbGlrZWx5IHRlcm1pbmFsIGZvciBvcGlvaWQgcHJlc2NyaWJpbmcgcHJlc2VudFxuKiogICAgUGF0aWVudCBNb3JwaGluZSBNaWxsaWdyYW0gRXF1aXZhbGVudCAoTU1FKSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gNTBcbioqICBUaGVuXG4qKiAgICBDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzOlxuKiogICAgICBEb2N1bWVudCAtIFdpbGwgcHJlc2NyaWJlIGEgbG93ZXIgZG9zZVxuKiogICAgICBEb2N1bWVudCAtIFdpbGwgY2FsaWJyYXRlIGEgZ3JhZHVhbCBjaGFuZ2UgaW4gZG9zYWdlXG4qKiAgICAgIFNub296ZSAtIEJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMyBtb250aHNcbioqICAgICAgU25vb3plIC0gU2hvcnQgdGVybSBiZW5lZml0cyBvdXR3ZWlnaCByaXNrcywgc25vb3plIDEgbW9udGhcbioqICAgICAgU25vb3plIC0gTi9BIGFkZCBjb21tZW50LCBzbm9vemUgMyBtb250aHNcbioqXG4qL1xuXG4vLyBNRVRBOiBQbGFuIERlZmluaXRpb246IGh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMtcjQvUGxhbkRlZmluaXRpb24vb3Bpb2lkLWNkcy0wNC0wNVxuXG4iLCJwYXJhbWV0ZXIgIiwiQ29udGV4dFByZXNjcmlwdGlvbnMiLCIgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIxNyIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiTGlzdDwiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjE4IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJNZWRpY2F0aW9uUmVxdWVzdCIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiPiIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAicGFyYW1ldGVyVHlwZVNwZWNpZmllciIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMTciLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNTc6MzItNTc6NTQiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiTGlzdFR5cGVTcGVjaWZpZXIiLAogICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjE4IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjU3OjM3LTU3OjUzIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIntodHRwOi8vaGw3Lm9yZy9maGlyfU1lZGljYXRpb25SZXF1ZXN0IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiY29udGV4dHMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjIzIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU5OjEtNTk6MTUiLAogICAgICAgICAgICAibmFtZSIgOiAiUGF0aWVudCIKICAgICAgICAgfSBdCiAgICAgIH0sCiAgICAgICJzdGF0ZW1lbnRzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIyMSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OToxLTU5OjE1IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIyMiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTaW5nbGV0b25Gcm9tIiwKICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIyMCIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OToxLTU5OjE1IiwKICAgICAgICAgICAgICAgICAgImRhdGFUeXBlIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1QYXRpZW50IiwKICAgICAgICAgICAgICAgICAgInRlbXBsYXRlSWQiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlJldHJpZXZlIiwKICAgICAgICAgICAgICAgICAgImluY2x1ZGUiIDogWyBdLAogICAgICAgICAgICAgICAgICAiY29kZUZpbHRlciIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJkYXRlRmlsdGVyIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm90aGVyRmlsdGVyIiA6IFsgXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjM1IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjY1OjEtNjc6OTQiLAogICAgICAgICAgICAibmFtZSIgOiAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIyMzUiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnNcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI0NCIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjM5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMzkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzNyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsP1wiIiwiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjM4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJDb250ZXh0UHJlc2NyaXB0aW9ucyIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJ3aGVyZSAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNDEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlJvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI0MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uP1wiIiwiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNDQiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6My02Nzo5NCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsCiAgICAgICAgICAgICAgICJzb3VyY2UiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMzYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6My02NjoxMjEiLAogICAgICAgICAgICAgICAgICAiYWxpYXMiIDogIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iLAogICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMzkiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6My02Njo5MiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjM4IiwKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY2OjY5LTY2Ojg4IiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkNvbnRleHRQcmVzY3JpcHRpb25zIiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlBhcmFtZXRlclJlZiIKICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAibGV0IiA6IFsgXSwKICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sCiAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNDMiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NS02Nzo5NCIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyIsCiAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiUm91dGluZXMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNDIiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NjUtNjc6OTIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc1JlZiIKICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMzAiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNzI6MS03OTozIiwKICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIyMzAiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIlRvdGFsIE1NRVwiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjU0IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMzEiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk1NRUNhbGN1bGF0b3IiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjU0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJUb3RhbE1NRSIsIihcbiAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjMyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNDgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIihcbiAgICAgICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNDgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI0NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgICAgICB1bmlvbiAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQ3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNDYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNDciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiQWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4XCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICAgICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNTIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIndoZXJlICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNTIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI1MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/XCIiLCIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjU0IiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjczOjMtNzk6MyIsCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJUb3RhbE1NRSIsCiAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiTU1FQ2FsY3VsYXRvciIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI1MyIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NDo1LTc4Ojk2IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlF1ZXJ5IiwKICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIzMiIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NDo1LTc3OjM0IiwKICAgICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIiwKICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjQ4IiwKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc0OjUtNzc6NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJVbmlvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI0NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NTo3LTc1Ojg0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjQ3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc2OjE1LTc2OjUwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgImxldCIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlcmUiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjUyIiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjctNzg6OTYiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIlJvdXRpbmVzIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjUxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjY3LTc4Ojk0IiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQWxpYXNSZWYiCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIyNiIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MToxLTYxOjQzIiwKICAgICAgICAgICAgIm5hbWUiIDogIlRhcGVyIE5vdyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIyMjYiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIlRhcGVyIE5vd1wiIiwiOiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjI3IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNTYiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI1NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJUb3RhbCBNTUVcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNTYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgInZhbHVlIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjU3IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiAiLCI+PSIsIiAiLCI5MCIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMjciLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MjEtNjE6NDMiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiR3JlYXRlck9yRXF1YWwiLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjYxIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9RGVjaW1hbCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI2MiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfURlY2ltYWwiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIgogICAgICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjU2IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjIxLTYxOjM3IiwKICAgICAgICAgICAgICAgICAgInBhdGgiIDogInZhbHVlIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwKICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNTUiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MjEtNjE6MzEiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG90YWwgTU1FIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjU5IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvRGVjaW1hbCIsCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNjAiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNTciLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6NDItNjE6NDMiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjkwIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjY1IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjEtNjM6NTAiLAogICAgICAgICAgICAibmFtZSIgOiAiQ29uc2lkZXIgVGFwZXJpbmciLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjY1IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJDb25zaWRlciBUYXBlcmluZ1wiIiwiOiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjY2IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNjgiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI2NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJUb3RhbCBNTUVcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNjgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgInZhbHVlIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjY5IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiAiLCI8IiwiICIsIjkwIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI2NiIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MzoyOS02Mzo1MCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMZXNzIiwKICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3MyIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfURlY2ltYWwiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIgogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNzQiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EZWNpbWFsIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI2OCIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MzoyOS02Mzo0NSIsCiAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJ2YWx1ZSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsCiAgICAgICAgICAgICAgICAgICJzb3VyY2UiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjY3IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjI5LTYzOjM5IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3MSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb0RlY2ltYWwiLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjcyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjY5IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjQ5LTYzOjUwIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICI5MCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3NyIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OToxLTcwOjkwIiwKICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjI3NyIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWxcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI3OCIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiZXhpc3RzIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI3OSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjc5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnNcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3OCIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MDozLTcwOjkwIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkV4aXN0cyIsCiAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNzkiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzA6OS03MDo5MCIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiODE6MS04NDozNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJbmNsdXNpb24gQ3JpdGVyaWEiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMjgyIiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJJbmNsdXNpb24gQ3JpdGVyaWFcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI4MyIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjg0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyODUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWxcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgYW5kICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyODciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI4NiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjg3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkNEQyAyMDIyIEd1aWRlbGluZSBHZW5lcmFsIEluY2x1c2lvbiBDcml0ZXJpYVwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgIGFuZCAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjg4IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyODkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiVG90YWwgTU1FXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiAiLCI+PSIsIiAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjkwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICI1MCAiLCIne01NRX0vZCciIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04NDozNSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODQiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04Mzo2NCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODUiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04Mjo4MSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODciLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODM6OS04Mzo2NCIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJDREMgMjAyMiBHdWlkZWxpbmUgR2VuZXJhbCBJbmNsdXNpb24gQ3JpdGVyaWEiLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIlJvdXRpbmVzIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyODgiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODQ6OS04NDozNSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJHcmVhdGVyT3JFcXVhbCIsCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyOTEiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1RdWFudGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI5MiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVF1YW50aXR5IiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI4OSIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NDo5LTg0OjE5IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyOTAiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODQ6MjQtODQ6MzUiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogNTAsCiAgICAgICAgICAgICAgICAgICAgICJ1bml0IiA6ICJ7TU1FfS9kIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlF1YW50aXR5IgogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjk1IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjg2OjEtODc6MzMiLAogICAgICAgICAgICAibmFtZSIgOiAiRXhjbHVzaW9uIENyaXRlcmlhIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjI5NSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiRXhjbHVzaW9uIENyaXRlcmlhXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyOTciLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI5NiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI5NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50XCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI5NyIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NzozLTg3OjMzIiwKICAgICAgICAgICAgICAgIm5hbWUiIDogIkVuZCBvZiBMaWZlIEFzc2Vzc21lbnQiLAogICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjMwMCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4OToxLTkxOjMyIiwKICAgICAgICAgICAgIm5hbWUiIDogIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjMwMCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT9cIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjMwMSIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzAyIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkluY2x1c2lvbiBDcml0ZXJpYVwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICBhbmQgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjMwMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAibm90ICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMDQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiRXhjbHVzaW9uIENyaXRlcmlhXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzMDEiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTA6My05MTozMiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzMDIiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTA6My05MDoyMiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJbmNsdXNpb24gQ3JpdGVyaWEiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzAzIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkxOjktOTE6MzIiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjMwNCIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MToxMy05MTozMiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJFeGNsdXNpb24gQ3JpdGVyaWEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9IF0KICAgICAgfQogICB9Cn0="^^xsd:base64Binary ]
  ] ) . #