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 - XML Representation

Active as of 2024-03-17

Raw xml | Download



<Library xmlns="http://hl7.org/fhir">
  <id value="OpioidCDSREC04And05"/>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
    <table class="grid dict">
        
        <tr>
            <th scope="row"><b>Id: </b></th>
            <td style="padding-left: 4px;">OpioidCDSREC04And05</td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Url: </b></th>
            <td style="padding-left: 4px;"><a href="Library-OpioidCDSREC04And05.html">Library - Recommendations #4 and #5 - Lowest Effective Dose</a></td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Version: </b></th>
            <td style="padding-left: 4px;">2022.1.0</td>
        </tr>
        
        
        
        <tr>
            <th scope="row"><b>Name: </b></th>
            <td style="padding-left: 4px;">OpioidCDSREC04And05</td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Title: </b></th>
            <td style="padding-left: 4px;">Library - Recommendations #4 and #5 - Lowest Effective Dose</td>
        </tr>
        
        
        
        <tr>
            <th scope="row"><b>Status: </b></th>
            <td style="padding-left: 4px;">active</td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Experimental: </b></th>
            <td style="padding-left: 4px;">true</td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Type: </b></th>
            <td style="padding-left: 4px;">
                
                    
                        
                        <p style="margin-bottom: 5px;">
                            <b>system: </b> <span><a href="http://terminology.hl7.org/5.3.0/CodeSystem-library-type.html">LibraryType</a></span>
                        </p>
                        
                        
                        <p style="margin-bottom: 5px;">
                            <b>code: </b> <span>logic-library</span>
                        </p>
                        
                        
                    
                
                
            </td>
        </tr>
        
        
        
        <tr>
            <th scope="row"><b>Date: </b></th>
            <td style="padding-left: 4px;">2024-03-17 23:03:50+0000</td>
        </tr>
        
        
        <tr>
            <th scope="row"><b>Publisher: </b></th>
            <td style="padding-left: 4px;">Centers for Disease Control and Prevention (CDC)</td>
        </tr>
        
        
        
        
        
        
        
        
        
        
        
        
        
        <tr>
          <th scope="row"><b>Related Artifacts: </b></th>
          <td style="padding-left: 4px;">
            
            
            
            <p><b>Dependencies</b></p>
            <ul>
              
                <li><a href="http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1">http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</a></li>
              
                <li><a href="Library-OpioidCDSCommon.html">Library - OpioidCDS Common</a></li>
              
                <li><a href="Library-OpioidCDSCommonConfig.html">Library - OpioidCDS Common Configuration</a></li>
              
                <li><a href="Library-OpioidCDSRoutines.html">Library - OpioidCDS Routines</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0">http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1">http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1</a></li>
              
                <li><a href="Library-OpioidCDSCommon.html">Library - OpioidCDS Common</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/OMTKLogic|3.0.0">http://fhir.org/guides/cdc/opioid-cds/Library/OMTKLogic|3.0.0</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/OMTKData|3.0.0">http://fhir.org/guides/cdc/opioid-cds/Library/OMTKData|3.0.0</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1">http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/ConversionFactors|3.0.0">http://fhir.org/guides/cdc/opioid-cds/Library/ConversionFactors|3.0.0</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/CDCMMEClinicalConversionFactors|3.0.0">http://fhir.org/guides/cdc/opioid-cds/Library/CDCMMEClinicalConversionFactors|3.0.0</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1">http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1</a></li>
              
                <li><a href="http://terminology.hl7.org/5.3.0/CodeSystem-usage-context-type.html">UsageContextType</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-mme-r4/3.0.0/CodeSystem-CDCMMEUsageContextCodes.html">CDC MME Usage Context Codes</a></li>
              
                <li><a href="ValueSet-opioid-analgesics-with-ambulatory-misuse-potential.html">Opioid analgesics with ambulatory misuse potential</a></li>
              
                <li><a href="http://fhir.org/guides/cdc/opioid-cds/ValueSet/medicationrequest-category-community">http://fhir.org/guides/cdc/opioid-cds/ValueSet/medicationrequest-category-community</a></li>
              
                <li><a href="ValueSet-condition-encounter-diagnosis-category.html">Encounter Diagnosis Condition Category</a></li>
              
                <li><a href="ValueSet-condition-problem-list-category.html">Problem List Condition Category</a></li>
              
                <li><a href="ValueSet-condition-us-core-health-concern-category.html">US Core Health Concern Condition Category</a></li>
              
                <li><a href="ValueSet-limited-life-expectancy-conditions.html">Limited life expectancy conditions</a></li>
              
                <li><a href="ValueSet-condition-clinical-status-active.html">Condition Clinical Status Active</a></li>
              
                <li><a href="ValueSet-therapies-indicating-end-of-life-care.html">Therapies indicating end of life care</a></li>
              
                <li><a href="ValueSet-conditions-likely-terminal-for-opioid-prescribing.html">Conditions likely terminal for opioid prescribing</a></li>
              
                <li><a href="ValueSet-hospice-procedure.html">Hospice Procedure</a></li>
              
            </ul>
            
            
            
            
            
          </td>
        </tr>
        
        
        <tr>
          <th scope="row"><b>Parameters: </b></th>
          <td style="padding-left: 4px;">
            <table class="grid-dict">
              <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>
              
                <tr><th>ContextPrescriptions</th><th>MedicationRequest</th><th>0</th><th>*</th><th>in</th></tr>
              
                <tr><th>ErrorLevel</th><th>string</th><th>0</th><th>1</th><th>in</th></tr>
              
                <tr><th>ConversionFactorSupplementName</th><th>string</th><th>0</th><th>1</th><th>in</th></tr>
              
                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions</th><th>MedicationRequest</th><th>0</th><th>*</th><th>out</th></tr>
              
                <tr><th>Total MME</th><th>Quantity</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Taper Now</th><th>boolean</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Consider Tapering</th><th>boolean</th><th>0</th><th>1</th><th>out</th></tr>
              
                <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>
              
                <tr><th>Inclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Exclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Is Recommendation Applicable?</th><th>boolean</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Get Indicator</th><th>string</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Get Summary</th><th>string</th><th>0</th><th>1</th><th>out</th></tr>
              
                <tr><th>Get Detail</th><th>string</th><th>0</th><th>1</th><th>out</th></tr>
              
            </table>
          </td>
        </tr>
        
        
        <tr>
          <th scope="row"><b>Data Requirements:</b></th>
          <td style="padding-left: 4px;">
            <table class="grid-dict">
              <tr><th><b>Type</b></th><th><b>Profile</b></th><th><b>MS</b></th><th><b>Code Filter</b></th></tr>
              
                <tr>
                  <th>Patient</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Patient</th>
                  <th/>
                  <th>
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Medication</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Medication</th>
                  <th>;</th>
                  <th>
                    
                      <b>code filter: </b>
                      
                      <br/>
                      
                      
                      <span style="padding-left: 4px;">
                          <b>path: </b><span>id</span>
                      </span>
                      
                      
                      
                      
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Condition</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Condition</th>
                  <th>;</th>
                  <th>
                    
                      <b>code filter: </b>
                      
                      <br/>
                      
                      
                      <span style="padding-left: 4px;">
                          <b>path: </b><span>category</span>
                      </span>
                      
                      <br/>
                      
                      
                      
                      <span style="padding-left: 4px;">
                          <b>value set: </b><span>http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-encounter-diagnosis-category</span>
                      </span>
                      
                      
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Condition</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Condition</th>
                  <th>;</th>
                  <th>
                    
                      <b>code filter: </b>
                      
                      <br/>
                      
                      
                      <span style="padding-left: 4px;">
                          <b>path: </b><span>category</span>
                      </span>
                      
                      <br/>
                      
                      
                      
                      <span style="padding-left: 4px;">
                          <b>value set: </b><span>http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-problem-list-category</span>
                      </span>
                      
                      
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Condition</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Condition</th>
                  <th>;</th>
                  <th>
                    
                      <b>code filter: </b>
                      
                      <br/>
                      
                      
                      <span style="padding-left: 4px;">
                          <b>path: </b><span>category</span>
                      </span>
                      
                      <br/>
                      
                      
                      
                      <span style="padding-left: 4px;">
                          <b>value set: </b><span>http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-us-core-health-concern-category</span>
                      </span>
                      
                      
                    
                  </th>
                </tr>
              
                <tr>
                  <th>ServiceRequest</th>
                  <th>http://hl7.org/fhir/StructureDefinition/ServiceRequest</th>
                  <th/>
                  <th>
                    
                  </th>
                </tr>
              
                <tr>
                  <th>ServiceRequest</th>
                  <th>http://hl7.org/fhir/StructureDefinition/ServiceRequest</th>
                  <th>;;;;</th>
                  <th>
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Procedure</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Procedure</th>
                  <th>;;;</th>
                  <th>
                    
                      <b>code filter: </b>
                      
                      <br/>
                      
                      
                      <span style="padding-left: 4px;">
                          <b>path: </b><span>code</span>
                      </span>
                      
                      <br/>
                      
                      
                      
                      <span style="padding-left: 4px;">
                          <b>value set: </b><span>http://fhir.org/guides/cdc/opioid-cds/ValueSet/hospice-procedure</span>
                      </span>
                      
                      
                    
                  </th>
                </tr>
              
                <tr>
                  <th>ServiceRequest</th>
                  <th>http://hl7.org/fhir/StructureDefinition/ServiceRequest</th>
                  <th>;;;</th>
                  <th>
                    
                  </th>
                </tr>
              
                <tr>
                  <th>Encounter</th>
                  <th>http://hl7.org/fhir/StructureDefinition/Encounter</th>
                  <th>;;;;</th>
                  <th>
                    
                  </th>
                </tr>
              
            </table>
          </td>
        </tr>
        
        
        
        <tr>
          <td colspan="2">
            <table>
              <tr><th><a id="cql-content"><b>Content: </b></a> text/cql</th></tr>
              <tr><td><pre><code class="language-cql">library OpioidCDSREC04And05 version '2022.1.0'

using FHIR version '4.0.1'

include OpioidCDSCommon version '2022.1.0' called Common
include OpioidCDSCommonConfig version '2022.1.0' called Config
include OpioidCDSRoutines version '2022.1.0' called Routines
/*include fhir.cdc.&amp;quot;opioid-mme-r4&amp;quot;.MMECalculator version '3.0.0' called MMECalculator
 */
include MMECalculator version '3.0.0' called MMECalculator

/*
**
**  Recommendation #4
**    When opioids are initiated for opioid-naïve patients with acute, subacute, or chronic pain, 
**    clinicians should prescribe the lowest effective dosage. If opioids are continued for 
**    subacute or chronic pain, clinicians should use caution when prescribing opioids at any dosage, 
**    should carefully evaluate individual benefits and risks when considering increasing dosage, and 
**    should avoid increasing dosage above levels likely to yield diminishing returns in benefits 
**    relative to risks to patients (recommendation category: A; evidence type: 3)
**  Recommendation #5
**    For patients already receiving opioid therapy, clinicians should carefully weigh benefits and 
**    risks and exercise care when changing opioid dosage. If benefits outweigh risks of continued 
**    opioid therapy, clinicians should work closely with patients to optimize nonopioid therapies 
**    while continuing opioid therapy. If benefits do not outweigh risks of continued opioid therapy, 
**    clinicians should optimize other therapies and work closely with patients to gradually taper to 
**    lower dosages or, if warranted based on the individual circumstances of the patient, appropriately 
**    taper and discontinue opioids. Unless there are indications of a life-threatening issue such as 
**    warning signs of impending overdose (e.g., confusion, sedation, or slurred speech), opioid therapy 
**    should not be discontinued abruptly, and clinicians should not rapidly reduce opioid dosages from 
**    higher dosages (recommendation category: B; evidence type: 4).
**
**  When
**    Provider is prescribing an opioid analgesic with ambulatory misuse potential in the outpatient setting
**    Opioid review is useful for this patient:
**      Patient is 18 or over
**      Patient does not have evidence of sickle cell disease
**      Patient does not have findings indicating limited life expectancy
**      Patient does not have orders for therapies indicating end of life care
**      Patient is not undergoing active cancer treatment:
**        Patient has had at least 2 office visits within the past 12 months with an oncology specialist present, or
**        Patient has had at least 2 office visits within the past 12 months with a CDC malignant cancer condition diagnosis
**      Patient does not have conditions likely terminal for opioid prescribing present
**    Patient Morphine Milligram Equivalent (MME) greater than or equal to 50
**  Then
**    Calibrate to Lowest Opioid Dose Needed for Expected Results and Exercise Care When Changing Opioid Dosages:
**      Document - Will prescribe a lower dose
**      Document - Will calibrate a gradual change in dosage
**      Snooze - Benefits outweigh risks, snooze 3 months
**      Snooze - Short term benefits outweigh risks, snooze 1 month
**      Snooze - N/A add comment, snooze 3 months
**
*/

// META: Plan Definition: http://fhir.org/guides/cdc/opioid-cds-r4/PlanDefinition/opioid-cds-04-05

parameter ContextPrescriptions List&amp;lt;MedicationRequest&amp;gt;

context Patient

define &amp;quot;Taper Now&amp;quot;: &amp;quot;Total MME&amp;quot;.value &amp;gt;= 90

define &amp;quot;Consider Tapering&amp;quot;: &amp;quot;Total MME&amp;quot;.value &amp;lt; 90

define &amp;quot;Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions&amp;quot;:
  ( Common.&amp;quot;Is Opioid Analgesic with Ambulatory Misuse Potential?&amp;quot;( ContextPrescriptions ) ) AmbulatoryOpioidPrescription
    where Routines.&amp;quot;Is Subacute or Chronic Pain Prescription?&amp;quot;( AmbulatoryOpioidPrescription )

define &amp;quot;Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential&amp;quot;:
  exists( &amp;quot;Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions&amp;quot; )

define &amp;quot;Total MME&amp;quot;:
  MMECalculator.TotalMME(
    (
      &amp;quot;Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions&amp;quot;
        union Common.&amp;quot;Active Ambulatory Opioid Rx&amp;quot;
    ) AmbulatoryOpioidPrescription
      where Routines.&amp;quot;Is Subacute or Chronic Pain Prescription?&amp;quot;( AmbulatoryOpioidPrescription )
  )

define &amp;quot;Inclusion Criteria&amp;quot;:
  &amp;quot;Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential&amp;quot;
    and Routines.&amp;quot;Is Opioid Review Useful?&amp;quot;
    and &amp;quot;Total MME&amp;quot; &amp;gt;= 50 '{MME}/d'

define &amp;quot;Exclusion Criteria&amp;quot;:
  Common.&amp;quot;End of Life Assessment&amp;quot;

define &amp;quot;Is Recommendation Applicable?&amp;quot;:
  &amp;quot;Inclusion Criteria&amp;quot;
    and not &amp;quot;Exclusion Criteria&amp;quot;

define &amp;quot;Get Indicator&amp;quot;:
  if &amp;quot;Is Recommendation Applicable?&amp;quot;
    then 'warning'
  else null

define &amp;quot;Get Summary&amp;quot;:
  if &amp;quot;Is Recommendation Applicable?&amp;quot;
    then
      'Calibrate to Lowest Opioid Dose Needed for Expected Results and Exercise Care When Changing Opioid Dosages'
  else null

define &amp;quot;Get Detail&amp;quot;:
  if &amp;quot;Is Recommendation Applicable?&amp;quot;
    then
    'When opioid therapy is considered appropriate, calibrate opioid dosages to lowest dose needed to achieve expected effects. For patients already receiving opioid therapy, clinicians should carefully weigh benefits and risks and exercise care when changing opioid dosage.

[For guidance in determining the lowest effective opioid dosage, see Recommendation 4 of the 2022 CDC Clinical Practice Guideline](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=lowest%20effective%20dosage.-,For%20patients%20not%20already%20taking%20opioids%2C%20the%20lowest%20effective%20dose%20can,intended%20to%20be%20guideposts%20to%20help%20inform%20clinician%2Dpatient%20decision%2Dmaking.,-Supporting%20Rationale)

[For patients who have received opioid therapy for longer durations of time, if tapering, consider working closely with the patient to gradually taper dosages (no more than 10% per month)](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=When%20patients%20have%20been%20taking%20opioids%20for%20longer%20durations%20(e.g.%2C%20for%20%E2%89%A51%20year)%2C%20tapers%20of%2010%25%20per%20month%20or%20slower%20are%20likely%20to%20be%20better%20tolerated%20than%20more%20rapid%20tapers.)

For a tapering calculator, go to [https://agencymeddirectors.wa.gov/Calculator/TaperDoseCalculator.html](https://www.agencymeddirectors.wa.gov/Calculator/TaperDoseCalculator.html)

[For more guidance regarding tapering, please see Recommendation 5 of the 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=When%20benefits%20(including,6%20and%207).)

**MME Calculator Cautions**
1) All doses are in mg/day except for fentanyl, which is mcg/hr. 
2) Equianalgesic dose conversions are only estimates and cannot account for individual variability in genetics and pharmacokinetics. 
3) Do not use the calculated dose in MMEs to determine the doses to use when converting one opioid to another; when converting opioids, the new opioid is typically dosed at a substantially lower dose than the calculated MME dose to avoid overdose because of incomplete cross-tolerance and individual variability in opioid pharmacokinetics. Consult the FDA approved product labeling for specific guidance on medications. 
4) Use particular caution with methadone dose conversions because methadone has a long and variable half-life, and peak respiratory depressant effect occurs later and lasts longer than peak analgesic effect. 
5) Use particular caution with transdermal fentanyl because it is dosed in mcg/hr instead of mg/day, and its absorption is affected by heat and other factors. 
6) Buprenorphine products approved for the treatment of pain are not included in the table because of their partial µ-receptor agonist activity and resultant ceiling effects compared with full µ-receptor agonists. 
7) These conversion factors should not be applied to dosage decisions related to the management of opioid use disorder.
† Tapentadol is a µ-receptor agonist and norepinephrine reuptake inhibitor. MMEs are based on degree of µ-receptor agonist activity; however, it is unknown whether tapentadol is associated with overdose in the same dose-dependent manner as observed with medications that are solely µ-receptor agonists.
§ Tramadol is a µ-receptor agonist and norepinephrine and serotonin reuptake inhibitor. MMEs are based on degree of µ-receptor agonist activity; however, it is unknown whether tramadol is associated with overdose in the same dose-dependent manner as observed with medications that are solely µ-receptor agonists.'
  else null
</code></pre></td></tr>
            </table>
          </td>
        </tr>
        
        
        
        
        
        <tr>
          <td colspan="2">
            <table>
              <tr><th><b>Content: </b> application/elm+xml</th></tr>
              <tr><td><pre><code>Encoded data (43792 characters)</code></pre></td></tr>
            </table>
          </td>
        </tr>
        
        
        
        
        <tr>
          <td colspan="2">
            <table>
              <tr><th><b>Content: </b> application/elm+json</th></tr>
              <tr><td><pre><code>Encoded data (64520 characters)</code></pre></td></tr>
            </table>
          </td>
        </tr>
        
        
    </table>
</div>
  </text>
  <extension
             url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem">
    <valueReference>🔗 
      <reference value="Device/cqf-tooling"/>
    </valueReference>
  </extension>
  <extension
             url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem">
    <valueReference>🔗 
      <reference value="Device/cqf-tooling"/>
    </valueReference>
  </extension>
  <url
       value="http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSREC04And05"/>
  <version value="2022.1.0"/>
  <name value="OpioidCDSREC04And05"/>
  <title value="Library - Recommendations #4 and #5 - Lowest Effective Dose"/>
  <status value="active"/>
  <experimental value="true"/>
  <type>
    <coding>
      <system value="http://terminology.hl7.org/CodeSystem/library-type"/>
      <code value="logic-library"/>
    </coding>
  </type>
  <date value="2024-03-17T23:03:50+00:00"/>
  <publisher value="Centers for Disease Control and Prevention (CDC)"/>
  <contact>
    <telecom>
      <system value="url"/>
      <value value="https://www.cdc.gov"/>
    </telecom>
  </contact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="FHIR model information"/>
    <resource
              value="http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Common"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Config"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommonConfig|2022.1.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Routines"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines|2022.1.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library MMECalculator"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library FHIRHelpers"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Common"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library OMTKLogic"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OMTKLogic|3.0.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library OMTKData"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/OMTKData|3.0.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library FHIRHelpers"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library ConversionFactors"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/ConversionFactors|3.0.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library CDCMMEClinicalConversionFactors"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/CDCMMEClinicalConversionFactors|3.0.0"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library FHIRHelpers"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Code system Usage Context Type"/>
    <resource
              value="http://terminology.hl7.org/CodeSystem/usage-context-type"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Code system CDC MME Usage Context Codes"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-mme-r4/CodeSystem/CDCMMEUsageContextCodes"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display
             value="Value set Opioid analgesics with ambulatory misuse potential"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/opioid-analgesics-with-ambulatory-misuse-potential"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Community"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/medicationrequest-category-community"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Encounter Diagnosis Condition Category"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-encounter-diagnosis-category"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Problem List Condition Category"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-problem-list-category"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set US Core Health Concern Condition Category"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-us-core-health-concern-category"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Limited life expectancy conditions"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/limited-life-expectancy-conditions"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Active Condition"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-clinical-status-active"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Therapies indicating end of life care"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/therapies-indicating-end-of-life-care"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display
             value="Value set Conditions likely terminal for opioid prescribing"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/conditions-likely-terminal-for-opioid-prescribing"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Value set Hospice Procedure Codes"/>
    <resource
              value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/hospice-procedure"/>
  </relatedArtifact>
  <parameter>
    <name value="ContextPrescriptions"/>
    <use value="in"/>
    <min value="0"/>
    <max value="*"/>
    <type value="MedicationRequest"/>
  </parameter>
  <parameter>
    <name value="ErrorLevel"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="ConversionFactorSupplementName"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Patient"/>
  </parameter>
  <parameter>
    <name
          value="Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="MedicationRequest"/>
  </parameter>
  <parameter>
    <name value="Total MME"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Quantity"/>
  </parameter>
  <parameter>
    <name value="Taper Now"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Consider Tapering"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Inclusion Criteria"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Exclusion Criteria"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Is Recommendation Applicable?"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Get Indicator"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Get Summary"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Get Detail"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <dataRequirement>
    <type value="Patient"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
  </dataRequirement>
  <dataRequirement>
    <type value="Medication"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Medication"/>
    <mustSupport value="id"/>
    <codeFilter>
      <path value="id"/>
    </codeFilter>
  </dataRequirement>
  <dataRequirement>
    <type value="Condition"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Condition"/>
    <mustSupport value="category"/>
    <codeFilter>
      <path value="category"/>
      <valueSet
                value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-encounter-diagnosis-category"/>
    </codeFilter>
  </dataRequirement>
  <dataRequirement>
    <type value="Condition"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Condition"/>
    <mustSupport value="category"/>
    <codeFilter>
      <path value="category"/>
      <valueSet
                value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-problem-list-category"/>
    </codeFilter>
  </dataRequirement>
  <dataRequirement>
    <type value="Condition"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Condition"/>
    <mustSupport value="category"/>
    <codeFilter>
      <path value="category"/>
      <valueSet
                value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/condition-us-core-health-concern-category"/>
    </codeFilter>
  </dataRequirement>
  <dataRequirement>
    <type value="ServiceRequest"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/ServiceRequest"/>
  </dataRequirement>
  <dataRequirement>
    <type value="ServiceRequest"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/ServiceRequest"/>
    <mustSupport value="status"/>
    <mustSupport value="intent"/>
    <mustSupport value="authoredOn"/>
    <mustSupport value="code"/>
  </dataRequirement>
  <dataRequirement>
    <type value="Procedure"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Procedure"/>
    <mustSupport value="code"/>
    <mustSupport value="status"/>
    <mustSupport value="status.value"/>
    <codeFilter>
      <path value="code"/>
      <valueSet
                value="http://fhir.org/guides/cdc/opioid-cds/ValueSet/hospice-procedure"/>
    </codeFilter>
  </dataRequirement>
  <dataRequirement>
    <type value="ServiceRequest"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/ServiceRequest"/>
    <mustSupport value="code"/>
    <mustSupport value="status"/>
    <mustSupport value="status.value"/>
  </dataRequirement>
  <dataRequirement>
    <type value="Encounter"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/Encounter"/>
    <mustSupport value="period"/>
    <mustSupport value="period.start"/>
    <mustSupport value="status"/>
    <mustSupport value="status.value"/>
  </dataRequirement>
  <content>
    <contentType value="text/cql"/>
    <data
          value="bGlicmFyeSBPcGlvaWRDRFNSRUMwNEFuZDA1IHZlcnNpb24gJzIwMjIuMS4wJwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uQ29uZmlnIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29uZmlnCmluY2x1ZGUgT3Bpb2lkQ0RTUm91dGluZXMgdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBSb3V0aW5lcwovKmluY2x1ZGUgZmhpci5jZGMuIm9waW9pZC1tbWUtcjQiLk1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCiAqLwppbmNsdWRlIE1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCgovKgoqKgoqKiAgUmVjb21tZW5kYXRpb24gIzQKKiogICAgV2hlbiBvcGlvaWRzIGFyZSBpbml0aWF0ZWQgZm9yIG9waW9pZC1uYcOvdmUgcGF0aWVudHMgd2l0aCBhY3V0ZSwgc3ViYWN1dGUsIG9yIGNocm9uaWMgcGFpbiwgCioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIHByZXNjcmliZSB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBkb3NhZ2UuIElmIG9waW9pZHMgYXJlIGNvbnRpbnVlZCBmb3IgCioqICAgIHN1YmFjdXRlIG9yIGNocm9uaWMgcGFpbiwgY2xpbmljaWFucyBzaG91bGQgdXNlIGNhdXRpb24gd2hlbiBwcmVzY3JpYmluZyBvcGlvaWRzIGF0IGFueSBkb3NhZ2UsIAoqKiAgICBzaG91bGQgY2FyZWZ1bGx5IGV2YWx1YXRlIGluZGl2aWR1YWwgYmVuZWZpdHMgYW5kIHJpc2tzIHdoZW4gY29uc2lkZXJpbmcgaW5jcmVhc2luZyBkb3NhZ2UsIGFuZCAKKiogICAgc2hvdWxkIGF2b2lkIGluY3JlYXNpbmcgZG9zYWdlIGFib3ZlIGxldmVscyBsaWtlbHkgdG8geWllbGQgZGltaW5pc2hpbmcgcmV0dXJucyBpbiBiZW5lZml0cyAKKiogICAgcmVsYXRpdmUgdG8gcmlza3MgdG8gcGF0aWVudHMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBBOyBldmlkZW5jZSB0eXBlOiAzKQoqKiAgUmVjb21tZW5kYXRpb24gIzUKKiogICAgRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIAoqKiAgICByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuIElmIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCAKKiogICAgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIG9wdGltaXplIG5vbm9waW9pZCB0aGVyYXBpZXMgCioqICAgIHdoaWxlIGNvbnRpbnVpbmcgb3Bpb2lkIHRoZXJhcHkuIElmIGJlbmVmaXRzIGRvIG5vdCBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgb3Bpb2lkIHRoZXJhcHksIAoqKiAgICBjbGluaWNpYW5zIHNob3VsZCBvcHRpbWl6ZSBvdGhlciB0aGVyYXBpZXMgYW5kIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIGdyYWR1YWxseSB0YXBlciB0byAKKiogICAgbG93ZXIgZG9zYWdlcyBvciwgaWYgd2FycmFudGVkIGJhc2VkIG9uIHRoZSBpbmRpdmlkdWFsIGNpcmN1bXN0YW5jZXMgb2YgdGhlIHBhdGllbnQsIGFwcHJvcHJpYXRlbHkgCioqICAgIHRhcGVyIGFuZCBkaXNjb250aW51ZSBvcGlvaWRzLiBVbmxlc3MgdGhlcmUgYXJlIGluZGljYXRpb25zIG9mIGEgbGlmZS10aHJlYXRlbmluZyBpc3N1ZSBzdWNoIGFzIAoqKiAgICB3YXJuaW5nIHNpZ25zIG9mIGltcGVuZGluZyBvdmVyZG9zZSAoZS5nLiwgY29uZnVzaW9uLCBzZWRhdGlvbiwgb3Igc2x1cnJlZCBzcGVlY2gpLCBvcGlvaWQgdGhlcmFweSAKKiogICAgc2hvdWxkIG5vdCBiZSBkaXNjb250aW51ZWQgYWJydXB0bHksIGFuZCBjbGluaWNpYW5zIHNob3VsZCBub3QgcmFwaWRseSByZWR1Y2Ugb3Bpb2lkIGRvc2FnZXMgZnJvbSAKKiogICAgaGlnaGVyIGRvc2FnZXMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBCOyBldmlkZW5jZSB0eXBlOiA0KS4KKioKKiogIFdoZW4KKiogICAgUHJvdmlkZXIgaXMgcHJlc2NyaWJpbmcgYW4gb3Bpb2lkIGFuYWxnZXNpYyB3aXRoIGFtYnVsYXRvcnkgbWlzdXNlIHBvdGVudGlhbCBpbiB0aGUgb3V0cGF0aWVudCBzZXR0aW5nCioqICAgIE9waW9pZCByZXZpZXcgaXMgdXNlZnVsIGZvciB0aGlzIHBhdGllbnQ6CioqICAgICAgUGF0aWVudCBpcyAxOCBvciBvdmVyCioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGV2aWRlbmNlIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2UKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZmluZGluZ3MgaW5kaWNhdGluZyBsaW1pdGVkIGxpZmUgZXhwZWN0YW5jeQoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBvcmRlcnMgZm9yIHRoZXJhcGllcyBpbmRpY2F0aW5nIGVuZCBvZiBsaWZlIGNhcmUKKiogICAgICBQYXRpZW50IGlzIG5vdCB1bmRlcmdvaW5nIGFjdGl2ZSBjYW5jZXIgdHJlYXRtZW50OgoqKiAgICAgICAgUGF0aWVudCBoYXMgaGFkIGF0IGxlYXN0IDIgb2ZmaWNlIHZpc2l0cyB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdpdGggYW4gb25jb2xvZ3kgc3BlY2lhbGlzdCBwcmVzZW50LCBvcgoqKiAgICAgICAgUGF0aWVudCBoYXMgaGFkIGF0IGxlYXN0IDIgb2ZmaWNlIHZpc2l0cyB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdpdGggYSBDREMgbWFsaWduYW50IGNhbmNlciBjb25kaXRpb24gZGlhZ25vc2lzCioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGNvbmRpdGlvbnMgbGlrZWx5IHRlcm1pbmFsIGZvciBvcGlvaWQgcHJlc2NyaWJpbmcgcHJlc2VudAoqKiAgICBQYXRpZW50IE1vcnBoaW5lIE1pbGxpZ3JhbSBFcXVpdmFsZW50IChNTUUpIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA1MAoqKiAgVGhlbgoqKiAgICBDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzOgoqKiAgICAgIERvY3VtZW50IC0gV2lsbCBwcmVzY3JpYmUgYSBsb3dlciBkb3NlCioqICAgICAgRG9jdW1lbnQgLSBXaWxsIGNhbGlicmF0ZSBhIGdyYWR1YWwgY2hhbmdlIGluIGRvc2FnZQoqKiAgICAgIFNub296ZSAtIEJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMyBtb250aHMKKiogICAgICBTbm9vemUgLSBTaG9ydCB0ZXJtIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMSBtb250aAoqKiAgICAgIFNub296ZSAtIE4vQSBhZGQgY29tbWVudCwgc25vb3plIDMgbW9udGhzCioqCiovCgovLyBNRVRBOiBQbGFuIERlZmluaXRpb246IGh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMtcjQvUGxhbkRlZmluaXRpb24vb3Bpb2lkLWNkcy0wNC0wNQoKcGFyYW1ldGVyIENvbnRleHRQcmVzY3JpcHRpb25zIExpc3Q8TWVkaWNhdGlvblJlcXVlc3Q+Cgpjb250ZXh0IFBhdGllbnQKCmRlZmluZSAiVGFwZXIgTm93IjogIlRvdGFsIE1NRSIudmFsdWUgPj0gOTAKCmRlZmluZSAiQ29uc2lkZXIgVGFwZXJpbmciOiAiVG90YWwgTU1FIi52YWx1ZSA8IDkwCgpkZWZpbmUgIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiOgogICggQ29tbW9uLiJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIoIENvbnRleHRQcmVzY3JpcHRpb25zICkgKSBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uCiAgICB3aGVyZSBSb3V0aW5lcy4iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iKCBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uICkKCmRlZmluZSAiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiOgogIGV4aXN0cyggIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiICkKCmRlZmluZSAiVG90YWwgTU1FIjoKICBNTUVDYWxjdWxhdG9yLlRvdGFsTU1FKAogICAgKAogICAgICAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIKICAgICAgICB1bmlvbiBDb21tb24uIkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeCIKICAgICkgQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbgogICAgICB3aGVyZSBSb3V0aW5lcy4iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iKCBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uICkKICApCgpkZWZpbmUgIkluY2x1c2lvbiBDcml0ZXJpYSI6CiAgIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIgogICAgYW5kIFJvdXRpbmVzLiJJcyBPcGlvaWQgUmV2aWV3IFVzZWZ1bD8iCiAgICBhbmQgIlRvdGFsIE1NRSIgPj0gNTAgJ3tNTUV9L2QnCgpkZWZpbmUgIkV4Y2x1c2lvbiBDcml0ZXJpYSI6CiAgQ29tbW9uLiJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50IgoKZGVmaW5lICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyI6CiAgIkluY2x1c2lvbiBDcml0ZXJpYSIKICAgIGFuZCBub3QgIkV4Y2x1c2lvbiBDcml0ZXJpYSIKCmRlZmluZSAiR2V0IEluZGljYXRvciI6CiAgaWYgIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IgogICAgdGhlbiAnd2FybmluZycKICBlbHNlIG51bGwKCmRlZmluZSAiR2V0IFN1bW1hcnkiOgogIGlmICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIKICAgIHRoZW4KICAgICAgJ0NhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXMnCiAgZWxzZSBudWxsCgpkZWZpbmUgIkdldCBEZXRhaWwiOgogIGlmICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIKICAgIHRoZW4KICAgICdXaGVuIG9waW9pZCB0aGVyYXB5IGlzIGNvbnNpZGVyZWQgYXBwcm9wcmlhdGUsIGNhbGlicmF0ZSBvcGlvaWQgZG9zYWdlcyB0byBsb3dlc3QgZG9zZSBuZWVkZWQgdG8gYWNoaWV2ZSBleHBlY3RlZCBlZmZlY3RzLiBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLgoKW0ZvciBndWlkYW5jZSBpbiBkZXRlcm1pbmluZyB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBvcGlvaWQgZG9zYWdlLCBzZWUgUmVjb21tZW5kYXRpb24gNCBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1sb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NhZ2UuLSxGb3IlMjBwYXRpZW50cyUyMG5vdCUyMGFscmVhZHklMjB0YWtpbmclMjBvcGlvaWRzJTJDJTIwdGhlJTIwbG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zZSUyMGNhbixpbnRlbmRlZCUyMHRvJTIwYmUlMjBndWlkZXBvc3RzJTIwdG8lMjBoZWxwJTIwaW5mb3JtJTIwY2xpbmljaWFuJTJEcGF0aWVudCUyMGRlY2lzaW9uJTJEbWFraW5nLiwtU3VwcG9ydGluZyUyMFJhdGlvbmFsZSkKCltGb3IgcGF0aWVudHMgd2hvIGhhdmUgcmVjZWl2ZWQgb3Bpb2lkIHRoZXJhcHkgZm9yIGxvbmdlciBkdXJhdGlvbnMgb2YgdGltZSwgaWYgdGFwZXJpbmcsIGNvbnNpZGVyIHdvcmtpbmcgY2xvc2VseSB3aXRoIHRoZSBwYXRpZW50IHRvIGdyYWR1YWxseSB0YXBlciBkb3NhZ2VzIChubyBtb3JlIHRoYW4gMTAlIHBlciBtb250aCldKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBwYXRpZW50cyUyMGhhdmUlMjBiZWVuJTIwdGFraW5nJTIwb3Bpb2lkcyUyMGZvciUyMGxvbmdlciUyMGR1cmF0aW9ucyUyMChlLmcuJTJDJTIwZm9yJTIwJUUyJTg5JUE1MSUyMHllYXIpJTJDJTIwdGFwZXJzJTIwb2YlMjAxMCUyNSUyMHBlciUyMG1vbnRoJTIwb3IlMjBzbG93ZXIlMjBhcmUlMjBsaWtlbHklMjB0byUyMGJlJTIwYmV0dGVyJTIwdG9sZXJhdGVkJTIwdGhhbiUyMG1vcmUlMjByYXBpZCUyMHRhcGVycy4pCgpGb3IgYSB0YXBlcmluZyBjYWxjdWxhdG9yLCBnbyB0byBbaHR0cHM6Ly9hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sXShodHRwczovL3d3dy5hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sKQoKW0ZvciBtb3JlIGd1aWRhbmNlIHJlZ2FyZGluZyB0YXBlcmluZywgcGxlYXNlIHNlZcKgUmVjb21tZW5kYXRpb24gNSBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lIGZvciBQcmVzY3JpYmluZyBPcGlvaWRzIGZvciBQYWluXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwYmVuZWZpdHMlMjAoaW5jbHVkaW5nLDYlMjBhbmQlMjA3KS4pCgoqKk1NRSBDYWxjdWxhdG9yIENhdXRpb25zKioKMSkgQWxsIGRvc2VzIGFyZSBpbiBtZy9kYXkgZXhjZXB0IGZvciBmZW50YW55bCwgd2hpY2ggaXMgbWNnL2hyLiAKMikgRXF1aWFuYWxnZXNpYyBkb3NlIGNvbnZlcnNpb25zIGFyZSBvbmx5IGVzdGltYXRlcyBhbmQgY2Fubm90IGFjY291bnQgZm9yIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gZ2VuZXRpY3MgYW5kIHBoYXJtYWNva2luZXRpY3MuIAozKSBEbyBub3QgdXNlIHRoZSBjYWxjdWxhdGVkIGRvc2UgaW4gTU1FcyB0byBkZXRlcm1pbmUgdGhlIGRvc2VzIHRvIHVzZSB3aGVuIGNvbnZlcnRpbmcgb25lIG9waW9pZCB0byBhbm90aGVyOyB3aGVuIGNvbnZlcnRpbmcgb3Bpb2lkcywgdGhlIG5ldyBvcGlvaWQgaXMgdHlwaWNhbGx5IGRvc2VkIGF0IGEgc3Vic3RhbnRpYWxseSBsb3dlciBkb3NlIHRoYW4gdGhlIGNhbGN1bGF0ZWQgTU1FIGRvc2UgdG8gYXZvaWQgb3ZlcmRvc2UgYmVjYXVzZSBvZiBpbmNvbXBsZXRlIGNyb3NzLXRvbGVyYW5jZSBhbmQgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBvcGlvaWQgcGhhcm1hY29raW5ldGljcy4gQ29uc3VsdCB0aGUgRkRBIGFwcHJvdmVkIHByb2R1Y3QgbGFiZWxpbmcgZm9yIHNwZWNpZmljIGd1aWRhbmNlIG9uIG1lZGljYXRpb25zLiAKNCkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIG1ldGhhZG9uZSBkb3NlIGNvbnZlcnNpb25zIGJlY2F1c2UgbWV0aGFkb25lIGhhcyBhIGxvbmcgYW5kIHZhcmlhYmxlIGhhbGYtbGlmZSwgYW5kIHBlYWsgcmVzcGlyYXRvcnkgZGVwcmVzc2FudCBlZmZlY3Qgb2NjdXJzIGxhdGVyIGFuZCBsYXN0cyBsb25nZXIgdGhhbiBwZWFrIGFuYWxnZXNpYyBlZmZlY3QuIAo1KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggdHJhbnNkZXJtYWwgZmVudGFueWwgYmVjYXVzZSBpdCBpcyBkb3NlZCBpbiBtY2cvaHIgaW5zdGVhZCBvZiBtZy9kYXksIGFuZCBpdHMgYWJzb3JwdGlvbiBpcyBhZmZlY3RlZCBieSBoZWF0IGFuZCBvdGhlciBmYWN0b3JzLiAKNikgQnVwcmVub3JwaGluZSBwcm9kdWN0cyBhcHByb3ZlZCBmb3IgdGhlIHRyZWF0bWVudCBvZiBwYWluIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHRhYmxlIGJlY2F1c2Ugb2YgdGhlaXIgcGFydGlhbCDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5IGFuZCByZXN1bHRhbnQgY2VpbGluZyBlZmZlY3RzIGNvbXBhcmVkIHdpdGggZnVsbCDCtS1yZWNlcHRvciBhZ29uaXN0cy4gCjcpIFRoZXNlIGNvbnZlcnNpb24gZmFjdG9ycyBzaG91bGQgbm90IGJlIGFwcGxpZWQgdG8gZG9zYWdlIGRlY2lzaW9ucyByZWxhdGVkIHRvIHRoZSBtYW5hZ2VtZW50IG9mIG9waW9pZCB1c2UgZGlzb3JkZXIuCuKAoCBUYXBlbnRhZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRhcGVudGFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4KwqcgVHJhbWFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSBhbmQgc2Vyb3RvbmluIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0cmFtYWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLicKICBlbHNlIG51bGwK"/>
  </content>
  <content>
    <contentType value="application/elm+xml"/>
    <data
          value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JWZXJzaW9uPSIyLjEuMCIgdHJhbnNsYXRvck9wdGlvbnM9IkVuYWJsZUFubm90YXRpb25zLEVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iIHhzaTp0eXBlPSJhOkNxbFRvRWxtSW5mbyIvPgogICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgPGE6cyByPSI3NCI+CiAgICAgICAgIDxhOnM+bGlicmFyeSBPcGlvaWRDRFNSRUMwNEFuZDA1IHZlcnNpb24gJzIwMjIuMS4wJzwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iT3Bpb2lkQ0RTUkVDMDRBbmQwNSIgc3lzdGVtPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzIiB2ZXJzaW9uPSIyMDIyLjEuMCIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2F0b3I9IjM6MS0zOjI2IiBsb2NhbElkZW50aWZpZXI9IkZISVIiIHVyaT0iaHR0cDovL2hsNy5vcmcvZmhpciIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIxIj4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMiIgbG9jYXRvcj0iNToxLTU6NTYiIGxvY2FsSWRlbnRpZmllcj0iQ29tbW9uIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbiIgdmVyc2lvbj0iMjAyMi4xLjAiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPk9waW9pZENEU0NvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMyIgbG9jYXRvcj0iNjoxLTY6NjIiIGxvY2FsSWRlbnRpZmllcj0iQ29uZmlnIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbkNvbmZpZyIgdmVyc2lvbj0iMjAyMi4xLjAiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIzIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPk9waW9pZENEU0NvbW1vbkNvbmZpZzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBDb25maWc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNCIgbG9jYXRvcj0iNzoxLTc6NjAiIGxvY2FsSWRlbnRpZmllcj0iUm91dGluZXMiIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvT3Bpb2lkQ0RTUm91dGluZXMiIHZlcnNpb249IjIwMjIuMS4wIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5PcGlvaWRDRFNSb3V0aW5lczwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBSb3V0aW5lczwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1IiBsb2NhdG9yPSIxMDoxLTEwOjU4IiBsb2NhbElkZW50aWZpZXI9Ik1NRUNhbGN1bGF0b3IiIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvTU1FQ2FsY3VsYXRvciIgdmVyc2lvbj0iMy4wLjAiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKmluY2x1ZGUgZmhpci5jZGMuJnF1b3Q7b3Bpb2lkLW1tZS1yNCZxdW90Oy5NTUVDYWxjdWxhdG9yIHZlcnNpb24gJzMuMC4wJyBjYWxsZWQgTU1FQ2FsY3VsYXRvcgogKi8KaW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5NTUVDYWxjdWxhdG9yPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICczLjAuMCcgY2FsbGVkIE1NRUNhbGN1bGF0b3I8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvaW5jbHVkZXM+CiAgIDxwYXJhbWV0ZXJzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjgiIGxvY2F0b3I9IjU3OjEtNTc6NTQiIG5hbWU9IkNvbnRleHRQcmVzY3JpcHRpb25zIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iOCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKKioKKiogIFJlY29tbWVuZGF0aW9uICM0CioqICAgIFdoZW4gb3Bpb2lkcyBhcmUgaW5pdGlhdGVkIGZvciBvcGlvaWQtbmHDr3ZlIHBhdGllbnRzIHdpdGggYWN1dGUsIHN1YmFjdXRlLCBvciBjaHJvbmljIHBhaW4sIAoqKiAgICBjbGluaWNpYW5zIHNob3VsZCBwcmVzY3JpYmUgdGhlIGxvd2VzdCBlZmZlY3RpdmUgZG9zYWdlLiBJZiBvcGlvaWRzIGFyZSBjb250aW51ZWQgZm9yIAoqKiAgICBzdWJhY3V0ZSBvciBjaHJvbmljIHBhaW4sIGNsaW5pY2lhbnMgc2hvdWxkIHVzZSBjYXV0aW9uIHdoZW4gcHJlc2NyaWJpbmcgb3Bpb2lkcyBhdCBhbnkgZG9zYWdlLCAKKiogICAgc2hvdWxkIGNhcmVmdWxseSBldmFsdWF0ZSBpbmRpdmlkdWFsIGJlbmVmaXRzIGFuZCByaXNrcyB3aGVuIGNvbnNpZGVyaW5nIGluY3JlYXNpbmcgZG9zYWdlLCBhbmQgCioqICAgIHNob3VsZCBhdm9pZCBpbmNyZWFzaW5nIGRvc2FnZSBhYm92ZSBsZXZlbHMgbGlrZWx5IHRvIHlpZWxkIGRpbWluaXNoaW5nIHJldHVybnMgaW4gYmVuZWZpdHMgCioqICAgIHJlbGF0aXZlIHRvIHJpc2tzIHRvIHBhdGllbnRzIChyZWNvbW1lbmRhdGlvbiBjYXRlZ29yeTogQTsgZXZpZGVuY2UgdHlwZTogMykKKiogIFJlY29tbWVuZGF0aW9uICM1CioqICAgIEZvciBwYXRpZW50cyBhbHJlYWR5IHJlY2VpdmluZyBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgY2FyZWZ1bGx5IHdlaWdoIGJlbmVmaXRzIGFuZCAKKiogICAgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLiBJZiBiZW5lZml0cyBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgCioqICAgIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCB3b3JrIGNsb3NlbHkgd2l0aCBwYXRpZW50cyB0byBvcHRpbWl6ZSBub25vcGlvaWQgdGhlcmFwaWVzIAoqKiAgICB3aGlsZSBjb250aW51aW5nIG9waW9pZCB0aGVyYXB5LiBJZiBiZW5lZml0cyBkbyBub3Qgb3V0d2VpZ2ggcmlza3Mgb2YgY29udGludWVkIG9waW9pZCB0aGVyYXB5LCAKKiogICAgY2xpbmljaWFucyBzaG91bGQgb3B0aW1pemUgb3RoZXIgdGhlcmFwaWVzIGFuZCB3b3JrIGNsb3NlbHkgd2l0aCBwYXRpZW50cyB0byBncmFkdWFsbHkgdGFwZXIgdG8gCioqICAgIGxvd2VyIGRvc2FnZXMgb3IsIGlmIHdhcnJhbnRlZCBiYXNlZCBvbiB0aGUgaW5kaXZpZHVhbCBjaXJjdW1zdGFuY2VzIG9mIHRoZSBwYXRpZW50LCBhcHByb3ByaWF0ZWx5IAoqKiAgICB0YXBlciBhbmQgZGlzY29udGludWUgb3Bpb2lkcy4gVW5sZXNzIHRoZXJlIGFyZSBpbmRpY2F0aW9ucyBvZiBhIGxpZmUtdGhyZWF0ZW5pbmcgaXNzdWUgc3VjaCBhcyAKKiogICAgd2FybmluZyBzaWducyBvZiBpbXBlbmRpbmcgb3ZlcmRvc2UgKGUuZy4sIGNvbmZ1c2lvbiwgc2VkYXRpb24sIG9yIHNsdXJyZWQgc3BlZWNoKSwgb3Bpb2lkIHRoZXJhcHkgCioqICAgIHNob3VsZCBub3QgYmUgZGlzY29udGludWVkIGFicnVwdGx5LCBhbmQgY2xpbmljaWFucyBzaG91bGQgbm90IHJhcGlkbHkgcmVkdWNlIG9waW9pZCBkb3NhZ2VzIGZyb20gCioqICAgIGhpZ2hlciBkb3NhZ2VzIChyZWNvbW1lbmRhdGlvbiBjYXRlZ29yeTogQjsgZXZpZGVuY2UgdHlwZTogNCkuCioqCioqICBXaGVuCioqICAgIFByb3ZpZGVyIGlzIHByZXNjcmliaW5nIGFuIG9waW9pZCBhbmFsZ2VzaWMgd2l0aCBhbWJ1bGF0b3J5IG1pc3VzZSBwb3RlbnRpYWwgaW4gdGhlIG91dHBhdGllbnQgc2V0dGluZwoqKiAgICBPcGlvaWQgcmV2aWV3IGlzIHVzZWZ1bCBmb3IgdGhpcyBwYXRpZW50OgoqKiAgICAgIFBhdGllbnQgaXMgMTggb3Igb3ZlcgoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBldmlkZW5jZSBvZiBzaWNrbGUgY2VsbCBkaXNlYXNlCioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGZpbmRpbmdzIGluZGljYXRpbmcgbGltaXRlZCBsaWZlIGV4cGVjdGFuY3kKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgb3JkZXJzIGZvciB0aGVyYXBpZXMgaW5kaWNhdGluZyBlbmQgb2YgbGlmZSBjYXJlCioqICAgICAgUGF0aWVudCBpcyBub3QgdW5kZXJnb2luZyBhY3RpdmUgY2FuY2VyIHRyZWF0bWVudDoKKiogICAgICAgIFBhdGllbnQgaGFzIGhhZCBhdCBsZWFzdCAyIG9mZmljZSB2aXNpdHMgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aXRoIGFuIG9uY29sb2d5IHNwZWNpYWxpc3QgcHJlc2VudCwgb3IKKiogICAgICAgIFBhdGllbnQgaGFzIGhhZCBhdCBsZWFzdCAyIG9mZmljZSB2aXNpdHMgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aXRoIGEgQ0RDIG1hbGlnbmFudCBjYW5jZXIgY29uZGl0aW9uIGRpYWdub3NpcwoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBjb25kaXRpb25zIGxpa2VseSB0ZXJtaW5hbCBmb3Igb3Bpb2lkIHByZXNjcmliaW5nIHByZXNlbnQKKiogICAgUGF0aWVudCBNb3JwaGluZSBNaWxsaWdyYW0gRXF1aXZhbGVudCAoTU1FKSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gNTAKKiogIFRoZW4KKiogICAgQ2FsaWJyYXRlIHRvIExvd2VzdCBPcGlvaWQgRG9zZSBOZWVkZWQgZm9yIEV4cGVjdGVkIFJlc3VsdHMgYW5kIEV4ZXJjaXNlIENhcmUgV2hlbiBDaGFuZ2luZyBPcGlvaWQgRG9zYWdlczoKKiogICAgICBEb2N1bWVudCAtIFdpbGwgcHJlc2NyaWJlIGEgbG93ZXIgZG9zZQoqKiAgICAgIERvY3VtZW50IC0gV2lsbCBjYWxpYnJhdGUgYSBncmFkdWFsIGNoYW5nZSBpbiBkb3NhZ2UKKiogICAgICBTbm9vemUgLSBCZW5lZml0cyBvdXR3ZWlnaCByaXNrcywgc25vb3plIDMgbW9udGhzCioqICAgICAgU25vb3plIC0gU2hvcnQgdGVybSBiZW5lZml0cyBvdXR3ZWlnaCByaXNrcywgc25vb3plIDEgbW9udGgKKiogICAgICBTbm9vemUgLSBOL0EgYWRkIGNvbW1lbnQsIHNub296ZSAzIG1vbnRocwoqKgoqLwoKLy8gTUVUQTogUGxhbiBEZWZpbml0aW9uOiBodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzLXI0L1BsYW5EZWZpbml0aW9uL29waW9pZC1jZHMtMDQtMDVwYXJhbWV0ZXIgQ29udGV4dFByZXNjcmlwdGlvbnMgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+TGlzdCZsdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5NZWRpY2F0aW9uUmVxdWVzdDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4+PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSI3IiBsb2NhdG9yPSI1NzozMi01Nzo1NCIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjYiIGxvY2F0b3I9IjU3OjM3LTU3OjUzIiBuYW1lPSJmaGlyOk1lZGljYXRpb25SZXF1ZXN0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgIDwvcGFyYW1ldGVyVHlwZVNwZWNpZmllcj4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2F0b3I9IjU5OjEtNTk6MTUiIG5hbWU9IlBhdGllbnQiLz4KICAgPC9jb250ZXh0cz4KICAgPHN0YXRlbWVudHM+CiAgICAgIDxkZWYgbG9jYXRvcj0iNTk6MS01OToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNTk6MS01OToxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjE4IiBsb2NhdG9yPSI2NToxLTY3Ojk0IiBuYW1lPSJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTgiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjE3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db21tb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbnRleHRQcmVzY3JpcHRpb25zPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiApPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Sb3V0aW5lczwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/JnF1b3Q7KCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+QW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTciIGxvY2F0b3I9IjY2OjMtNjc6OTQiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMTMiIGxvY2F0b3I9IjY2OjMtNjY6MTIxIiBhbGlhcz0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjEyIiBsb2NhdG9yPSI2NjozLTY2OjkyIiBuYW1lPSJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTEiIGxvY2F0b3I9IjY2OjY5LTY2Ojg4IiBuYW1lPSJDb250ZXh0UHJlc2NyaXB0aW9ucyIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMTYiIGxvY2F0b3I9IjY3OjUtNjc6OTQiIG5hbWU9IklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjE1IiBsb2NhdG9yPSI2Nzo2NS02Nzo5MiIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjkiIGxvY2F0b3I9IjcyOjEtNzk6MyIgbmFtZT0iVG90YWwgTU1FIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjkiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtUb3RhbCBNTUUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPk1NRUNhbGN1bGF0b3I8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub3RhbE1NRSgKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPigKICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgIHVuaW9uIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7QWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICApPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Um91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4IiBsb2NhdG9yPSI3MzozLTc5OjMiIG5hbWU9IlRvdGFsTU1FIiBsaWJyYXJ5TmFtZT0iTU1FQ2FsY3VsYXRvciIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjciIGxvY2F0b3I9Ijc0OjUtNzg6OTYiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjMiIGxvY2F0b3I9Ijc0OjUtNzc6MzQiIGFsaWFzPSJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjIiIGxvY2F0b3I9Ijc0OjUtNzc6NSIgeHNpOnR5cGU9IlVuaW9uIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTkiIGxvY2F0b3I9Ijc1OjctNzU6ODQiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIxIiBsb2NhdG9yPSI3NjoxNS03Njo1MCIgbmFtZT0iQWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMjYiIGxvY2F0b3I9Ijc4OjctNzg6OTYiIG5hbWU9IklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI1IiBsb2NhdG9yPSI3ODo2Ny03ODo5NCIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNCIgbG9jYXRvcj0iNjE6MS02MTo0MyIgbmFtZT0iVGFwZXIgTm93IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMzQiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtUYXBlciBOb3cmcXVvdDs6IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhbHVlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMiI+ID49IDkwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMyIgbG9jYXRvcj0iNjE6MjEtNjE6NDMiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxIiBsb2NhdG9yPSI2MToyMS02MTozNyIgcGF0aD0idmFsdWUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzAiIGxvY2F0b3I9IjYxOjIxLTYxOjMxIiBuYW1lPSJUb3RhbCBNTUUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlRvRGVjaW1hbCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyIiBsb2NhdG9yPSI2MTo0Mi02MTo0MyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5MCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM5IiBsb2NhdG9yPSI2MzoxLTYzOjUwIiBuYW1lPSJDb25zaWRlciBUYXBlcmluZyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjM5Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7Q29uc2lkZXIgVGFwZXJpbmcmcXVvdDs6IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhbHVlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNyI+ICZsdDsgOTA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4IiBsb2NhdG9yPSI2MzoyOS02Mzo1MCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNiIgbG9jYXRvcj0iNjM6MjktNjM6NDUiIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjM1IiBsb2NhdG9yPSI2MzoyOS02MzozOSIgbmFtZT0iVG90YWwgTU1FIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJUb0RlY2ltYWwiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNyIgbG9jYXRvcj0iNjM6NDktNjM6NTAiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOTAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MiIgbG9jYXRvcj0iNjk6MS03MDo5MCIgbmFtZT0iUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI0MiI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O1BhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxIj4KICAgICAgICAgICAgICAgICAgPGE6cz5leGlzdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxIiBsb2NhdG9yPSI3MDozLTcwOjkwIiB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDAiIGxvY2F0b3I9IjcwOjktNzA6OTAiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTEiIGxvY2F0b3I9IjgxOjEtODQ6MzUiIG5hbWU9IkluY2x1c2lvbiBDcml0ZXJpYSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjUxIj4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7SW5jbHVzaW9uIENyaXRlcmlhJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjUwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Um91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBPcGlvaWQgUmV2aWV3IFVzZWZ1bD8mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPj0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjUwICd7TU1FfS9kJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MCIgbG9jYXRvcj0iODI6My04NDozNSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2IiBsb2NhdG9yPSI4MjozLTgzOjQzIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDMiIGxvY2F0b3I9IjgyOjMtODI6ODEiIG5hbWU9IlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NSIgbG9jYXRvcj0iODM6OS04Mzo0MyIgbmFtZT0iSXMgT3Bpb2lkIFJldmlldyBVc2VmdWw/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkiIGxvY2F0b3I9Ijg0OjktODQ6MzUiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3IiBsb2NhdG9yPSI4NDo5LTg0OjE5IiBuYW1lPSJUb3RhbCBNTUUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ4IiBsb2NhdG9yPSI4NDoyNC04NDozNSIgdmFsdWU9IjUwIiB1bml0PSJ7TU1FfS9kIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjU0IiBsb2NhdG9yPSI4NjoxLTg3OjMzIiBuYW1lPSJFeGNsdXNpb24gQ3JpdGVyaWEiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI1NCI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O0V4Y2x1c2lvbiBDcml0ZXJpYSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbW1vbjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0VuZCBvZiBMaWZlIEFzc2Vzc21lbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MyIgbG9jYXRvcj0iODc6My04NzozMyIgbmFtZT0iRW5kIG9mIExpZmUgQXNzZXNzbWVudCIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTkiIGxvY2F0b3I9Ijg5OjEtOTE6MzIiIG5hbWU9IklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNTkiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0luY2x1c2lvbiBDcml0ZXJpYSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtFeGNsdXNpb24gQ3JpdGVyaWEmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTgiIGxvY2F0b3I9IjkwOjMtOTE6MzIiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NSIgbG9jYXRvcj0iOTA6My05MDoyMiIgbmFtZT0iSW5jbHVzaW9uIENyaXRlcmlhIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NyIgbG9jYXRvcj0iOTE6OS05MTozMiIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU2IiBsb2NhdG9yPSI5MToxMy05MTozMiIgbmFtZT0iRXhjbHVzaW9uIENyaXRlcmlhIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjQiIGxvY2F0b3I9IjkzOjEtOTY6MTEiIG5hbWU9IkdldCBJbmRpY2F0b3IiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI2NCI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O0dldCBJbmRpY2F0b3ImcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjMiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPid3YXJuaW5nJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MiI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2MyIgbG9jYXRvcj0iOTQ6My05NjoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI2MCIgbG9jYXRvcj0iOTQ6Ni05NDozNiIgbmFtZT0iSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjYxIiBsb2NhdG9yPSI5NToxMC05NToxOCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9Indhcm5pbmciIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDxlbHNlIGFzVHlwZT0idDpTdHJpbmciIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYyIiBsb2NhdG9yPSI5Njo4LTk2OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNjkiIGxvY2F0b3I9Ijk4OjEtMTAyOjExIiBuYW1lPSJHZXQgU3VtbWFyeSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjY5Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7R2V0IFN1bW1hcnkmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjgiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIHRoZW4KICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPidDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NyI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2OCIgbG9jYXRvcj0iOTk6My0xMDI6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iNjUiIGxvY2F0b3I9Ijk5OjYtOTk6MzYiIG5hbWU9IklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI2NiIgbG9jYXRvcj0iMTAxOjctMTAxOjExNCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkNhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDxlbHNlIGFzVHlwZT0idDpTdHJpbmciIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY3IiBsb2NhdG9yPSIxMDI6OC0xMDI6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI3NCIgbG9jYXRvcj0iMTA0OjEtMTI3OjExIiBuYW1lPSJHZXQgRGV0YWlsIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNzQiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtHZXQgRGV0YWlsJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjczIj4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICB0aGVuCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1doZW4gb3Bpb2lkIHRoZXJhcHkgaXMgY29uc2lkZXJlZCBhcHByb3ByaWF0ZSwgY2FsaWJyYXRlIG9waW9pZCBkb3NhZ2VzIHRvIGxvd2VzdCBkb3NlIG5lZWRlZCB0byBhY2hpZXZlIGV4cGVjdGVkIGVmZmVjdHMuIEZvciBwYXRpZW50cyBhbHJlYWR5IHJlY2VpdmluZyBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgY2FyZWZ1bGx5IHdlaWdoIGJlbmVmaXRzIGFuZCByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuCgpbRm9yIGd1aWRhbmNlIGluIGRldGVybWluaW5nIHRoZSBsb3dlc3QgZWZmZWN0aXZlIG9waW9pZCBkb3NhZ2UsIHNlZSBSZWNvbW1lbmRhdGlvbiA0IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmVdKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PWxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2FnZS4tLEZvciUyMHBhdGllbnRzJTIwbm90JTIwYWxyZWFkeSUyMHRha2luZyUyMG9waW9pZHMlMkMlMjB0aGUlMjBsb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NlJTIwY2FuLGludGVuZGVkJTIwdG8lMjBiZSUyMGd1aWRlcG9zdHMlMjB0byUyMGhlbHAlMjBpbmZvcm0lMjBjbGluaWNpYW4lMkRwYXRpZW50JTIwZGVjaXNpb24lMkRtYWtpbmcuLC1TdXBwb3J0aW5nJTIwUmF0aW9uYWxlKQoKW0ZvciBwYXRpZW50cyB3aG8gaGF2ZSByZWNlaXZlZCBvcGlvaWQgdGhlcmFweSBmb3IgbG9uZ2VyIGR1cmF0aW9ucyBvZiB0aW1lLCBpZiB0YXBlcmluZywgY29uc2lkZXIgd29ya2luZyBjbG9zZWx5IHdpdGggdGhlIHBhdGllbnQgdG8gZ3JhZHVhbGx5IHRhcGVyIGRvc2FnZXMgKG5vIG1vcmUgdGhhbiAxMCUgcGVyIG1vbnRoKV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMHBhdGllbnRzJTIwaGF2ZSUyMGJlZW4lMjB0YWtpbmclMjBvcGlvaWRzJTIwZm9yJTIwbG9uZ2VyJTIwZHVyYXRpb25zJTIwKGUuZy4lMkMlMjBmb3IlMjAlRTIlODklQTUxJTIweWVhciklMkMlMjB0YXBlcnMlMjBvZiUyMDEwJTI1JTIwcGVyJTIwbW9udGglMjBvciUyMHNsb3dlciUyMGFyZSUyMGxpa2VseSUyMHRvJTIwYmUlMjBiZXR0ZXIlMjB0b2xlcmF0ZWQlMjB0aGFuJTIwbW9yZSUyMHJhcGlkJTIwdGFwZXJzLikKCkZvciBhIHRhcGVyaW5nIGNhbGN1bGF0b3IsIGdvIHRvIFtodHRwczovL2FnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWxdKGh0dHBzOi8vd3d3LmFnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWwpCgpbRm9yIG1vcmUgZ3VpZGFuY2UgcmVnYXJkaW5nIHRhcGVyaW5nLCBwbGVhc2Ugc2VlwqBSZWNvbW1lbmRhdGlvbiA1IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmUgZm9yIFByZXNjcmliaW5nIE9waW9pZHMgZm9yIFBhaW5dKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBiZW5lZml0cyUyMChpbmNsdWRpbmcsNiUyMGFuZCUyMDcpLikKCioqTU1FIENhbGN1bGF0b3IgQ2F1dGlvbnMqKgoxKSBBbGwgZG9zZXMgYXJlIGluIG1nL2RheSBleGNlcHQgZm9yIGZlbnRhbnlsLCB3aGljaCBpcyBtY2cvaHIuIAoyKSBFcXVpYW5hbGdlc2ljIGRvc2UgY29udmVyc2lvbnMgYXJlIG9ubHkgZXN0aW1hdGVzIGFuZCBjYW5ub3QgYWNjb3VudCBmb3IgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBnZW5ldGljcyBhbmQgcGhhcm1hY29raW5ldGljcy4gCjMpIERvIG5vdCB1c2UgdGhlIGNhbGN1bGF0ZWQgZG9zZSBpbiBNTUVzIHRvIGRldGVybWluZSB0aGUgZG9zZXMgdG8gdXNlIHdoZW4gY29udmVydGluZyBvbmUgb3Bpb2lkIHRvIGFub3RoZXI7IHdoZW4gY29udmVydGluZyBvcGlvaWRzLCB0aGUgbmV3IG9waW9pZCBpcyB0eXBpY2FsbHkgZG9zZWQgYXQgYSBzdWJzdGFudGlhbGx5IGxvd2VyIGRvc2UgdGhhbiB0aGUgY2FsY3VsYXRlZCBNTUUgZG9zZSB0byBhdm9pZCBvdmVyZG9zZSBiZWNhdXNlIG9mIGluY29tcGxldGUgY3Jvc3MtdG9sZXJhbmNlIGFuZCBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIG9waW9pZCBwaGFybWFjb2tpbmV0aWNzLiBDb25zdWx0IHRoZSBGREEgYXBwcm92ZWQgcHJvZHVjdCBsYWJlbGluZyBmb3Igc3BlY2lmaWMgZ3VpZGFuY2Ugb24gbWVkaWNhdGlvbnMuIAo0KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggbWV0aGFkb25lIGRvc2UgY29udmVyc2lvbnMgYmVjYXVzZSBtZXRoYWRvbmUgaGFzIGEgbG9uZyBhbmQgdmFyaWFibGUgaGFsZi1saWZlLCBhbmQgcGVhayByZXNwaXJhdG9yeSBkZXByZXNzYW50IGVmZmVjdCBvY2N1cnMgbGF0ZXIgYW5kIGxhc3RzIGxvbmdlciB0aGFuIHBlYWsgYW5hbGdlc2ljIGVmZmVjdC4gCjUpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCB0cmFuc2Rlcm1hbCBmZW50YW55bCBiZWNhdXNlIGl0IGlzIGRvc2VkIGluIG1jZy9ociBpbnN0ZWFkIG9mIG1nL2RheSwgYW5kIGl0cyBhYnNvcnB0aW9uIGlzIGFmZmVjdGVkIGJ5IGhlYXQgYW5kIG90aGVyIGZhY3RvcnMuIAo2KSBCdXByZW5vcnBoaW5lIHByb2R1Y3RzIGFwcHJvdmVkIGZvciB0aGUgdHJlYXRtZW50IG9mIHBhaW4gYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgdGFibGUgYmVjYXVzZSBvZiB0aGVpciBwYXJ0aWFsIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHkgYW5kIHJlc3VsdGFudCBjZWlsaW5nIGVmZmVjdHMgY29tcGFyZWQgd2l0aCBmdWxsIMK1LXJlY2VwdG9yIGFnb25pc3RzLiAKNykgVGhlc2UgY29udmVyc2lvbiBmYWN0b3JzIHNob3VsZCBub3QgYmUgYXBwbGllZCB0byBkb3NhZ2UgZGVjaXNpb25zIHJlbGF0ZWQgdG8gdGhlIG1hbmFnZW1lbnQgb2Ygb3Bpb2lkIHVzZSBkaXNvcmRlci4K4oCgIFRhcGVudGFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdGFwZW50YWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLgrCpyBUcmFtYWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIGFuZCBzZXJvdG9uaW4gcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRyYW1hZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MiI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI3MyIgbG9jYXRvcj0iMTA1OjMtMTI3OjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjcwIiBsb2NhdG9yPSIxMDU6Ni0xMDU6MzYiIG5hbWU9IklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI3MSIgbG9jYXRvcj0iMTA3OjUtMTA3OjM2MDgiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJXaGVuIG9waW9pZCB0aGVyYXB5IGlzIGNvbnNpZGVyZWQgYXBwcm9wcmlhdGUsIGNhbGlicmF0ZSBvcGlvaWQgZG9zYWdlcyB0byBsb3dlc3QgZG9zZSBuZWVkZWQgdG8gYWNoaWV2ZSBleHBlY3RlZCBlZmZlY3RzLiBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLiYjeGE7JiN4YTtbRm9yIGd1aWRhbmNlIGluIGRldGVybWluaW5nIHRoZSBsb3dlc3QgZWZmZWN0aXZlIG9waW9pZCBkb3NhZ2UsIHNlZSBSZWNvbW1lbmRhdGlvbiA0IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmVdKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PWxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2FnZS4tLEZvciUyMHBhdGllbnRzJTIwbm90JTIwYWxyZWFkeSUyMHRha2luZyUyMG9waW9pZHMlMkMlMjB0aGUlMjBsb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NlJTIwY2FuLGludGVuZGVkJTIwdG8lMjBiZSUyMGd1aWRlcG9zdHMlMjB0byUyMGhlbHAlMjBpbmZvcm0lMjBjbGluaWNpYW4lMkRwYXRpZW50JTIwZGVjaXNpb24lMkRtYWtpbmcuLC1TdXBwb3J0aW5nJTIwUmF0aW9uYWxlKSYjeGE7JiN4YTtbRm9yIHBhdGllbnRzIHdobyBoYXZlIHJlY2VpdmVkIG9waW9pZCB0aGVyYXB5IGZvciBsb25nZXIgZHVyYXRpb25zIG9mIHRpbWUsIGlmIHRhcGVyaW5nLCBjb25zaWRlciB3b3JraW5nIGNsb3NlbHkgd2l0aCB0aGUgcGF0aWVudCB0byBncmFkdWFsbHkgdGFwZXIgZG9zYWdlcyAobm8gbW9yZSB0aGFuIDEwJSBwZXIgbW9udGgpXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwcGF0aWVudHMlMjBoYXZlJTIwYmVlbiUyMHRha2luZyUyMG9waW9pZHMlMjBmb3IlMjBsb25nZXIlMjBkdXJhdGlvbnMlMjAoZS5nLiUyQyUyMGZvciUyMCVFMiU4OSVBNTElMjB5ZWFyKSUyQyUyMHRhcGVycyUyMG9mJTIwMTAlMjUlMjBwZXIlMjBtb250aCUyMG9yJTIwc2xvd2VyJTIwYXJlJTIwbGlrZWx5JTIwdG8lMjBiZSUyMGJldHRlciUyMHRvbGVyYXRlZCUyMHRoYW4lMjBtb3JlJTIwcmFwaWQlMjB0YXBlcnMuKSYjeGE7JiN4YTtGb3IgYSB0YXBlcmluZyBjYWxjdWxhdG9yLCBnbyB0byBbaHR0cHM6Ly9hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sXShodHRwczovL3d3dy5hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sKSYjeGE7JiN4YTtbRm9yIG1vcmUgZ3VpZGFuY2UgcmVnYXJkaW5nIHRhcGVyaW5nLCBwbGVhc2Ugc2VlwqBSZWNvbW1lbmRhdGlvbiA1IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmUgZm9yIFByZXNjcmliaW5nIE9waW9pZHMgZm9yIFBhaW5dKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBiZW5lZml0cyUyMChpbmNsdWRpbmcsNiUyMGFuZCUyMDcpLikmI3hhOyYjeGE7KipNTUUgQ2FsY3VsYXRvciBDYXV0aW9ucyoqJiN4YTsxKSBBbGwgZG9zZXMgYXJlIGluIG1nL2RheSBleGNlcHQgZm9yIGZlbnRhbnlsLCB3aGljaCBpcyBtY2cvaHIuICYjeGE7MikgRXF1aWFuYWxnZXNpYyBkb3NlIGNvbnZlcnNpb25zIGFyZSBvbmx5IGVzdGltYXRlcyBhbmQgY2Fubm90IGFjY291bnQgZm9yIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gZ2VuZXRpY3MgYW5kIHBoYXJtYWNva2luZXRpY3MuICYjeGE7MykgRG8gbm90IHVzZSB0aGUgY2FsY3VsYXRlZCBkb3NlIGluIE1NRXMgdG8gZGV0ZXJtaW5lIHRoZSBkb3NlcyB0byB1c2Ugd2hlbiBjb252ZXJ0aW5nIG9uZSBvcGlvaWQgdG8gYW5vdGhlcjsgd2hlbiBjb252ZXJ0aW5nIG9waW9pZHMsIHRoZSBuZXcgb3Bpb2lkIGlzIHR5cGljYWxseSBkb3NlZCBhdCBhIHN1YnN0YW50aWFsbHkgbG93ZXIgZG9zZSB0aGFuIHRoZSBjYWxjdWxhdGVkIE1NRSBkb3NlIHRvIGF2b2lkIG92ZXJkb3NlIGJlY2F1c2Ugb2YgaW5jb21wbGV0ZSBjcm9zcy10b2xlcmFuY2UgYW5kIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gb3Bpb2lkIHBoYXJtYWNva2luZXRpY3MuIENvbnN1bHQgdGhlIEZEQSBhcHByb3ZlZCBwcm9kdWN0IGxhYmVsaW5nIGZvciBzcGVjaWZpYyBndWlkYW5jZSBvbiBtZWRpY2F0aW9ucy4gJiN4YTs0KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggbWV0aGFkb25lIGRvc2UgY29udmVyc2lvbnMgYmVjYXVzZSBtZXRoYWRvbmUgaGFzIGEgbG9uZyBhbmQgdmFyaWFibGUgaGFsZi1saWZlLCBhbmQgcGVhayByZXNwaXJhdG9yeSBkZXByZXNzYW50IGVmZmVjdCBvY2N1cnMgbGF0ZXIgYW5kIGxhc3RzIGxvbmdlciB0aGFuIHBlYWsgYW5hbGdlc2ljIGVmZmVjdC4gJiN4YTs1KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggdHJhbnNkZXJtYWwgZmVudGFueWwgYmVjYXVzZSBpdCBpcyBkb3NlZCBpbiBtY2cvaHIgaW5zdGVhZCBvZiBtZy9kYXksIGFuZCBpdHMgYWJzb3JwdGlvbiBpcyBhZmZlY3RlZCBieSBoZWF0IGFuZCBvdGhlciBmYWN0b3JzLiAmI3hhOzYpIEJ1cHJlbm9ycGhpbmUgcHJvZHVjdHMgYXBwcm92ZWQgZm9yIHRoZSB0cmVhdG1lbnQgb2YgcGFpbiBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSB0YWJsZSBiZWNhdXNlIG9mIHRoZWlyIHBhcnRpYWwgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eSBhbmQgcmVzdWx0YW50IGNlaWxpbmcgZWZmZWN0cyBjb21wYXJlZCB3aXRoIGZ1bGwgwrUtcmVjZXB0b3IgYWdvbmlzdHMuICYjeGE7NykgVGhlc2UgY29udmVyc2lvbiBmYWN0b3JzIHNob3VsZCBub3QgYmUgYXBwbGllZCB0byBkb3NhZ2UgZGVjaXNpb25zIHJlbGF0ZWQgdG8gdGhlIG1hbmFnZW1lbnQgb2Ygb3Bpb2lkIHVzZSBkaXNvcmRlci4mI3hhO+KAoCBUYXBlbnRhZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRhcGVudGFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4mI3hhO8KnIFRyYW1hZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgYW5kIHNlcm90b25pbiByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdHJhbWFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDxlbHNlIGFzVHlwZT0idDpTdHJpbmciIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyIiBsb2NhdG9yPSIxMjc6OC0xMjc6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgPC9zdGF0ZW1lbnRzPgo8L2xpYnJhcnk+Cg=="/>
  </content>
  <content>
    <contentType value="application/elm+json"/>
    <data
          value="ewogICAibGlicmFyeSIgOiB7CiAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAidHJhbnNsYXRvclZlcnNpb24iIDogIjIuMS4wIiwKICAgICAgICAgInRyYW5zbGF0b3JPcHRpb25zIiA6ICJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiwKICAgICAgICAgInR5cGUiIDogIkNxbFRvRWxtSW5mbyIKICAgICAgfSwgewogICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgInIiIDogIjc0IiwKICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJsaWJyYXJ5IE9waW9pZENEU1JFQzA0QW5kMDUgdmVyc2lvbiAnMjAyMi4xLjAnIiBdCiAgICAgICAgICAgIH0gXQogICAgICAgICB9CiAgICAgIH0gXSwKICAgICAgImlkZW50aWZpZXIiIDogewogICAgICAgICAiaWQiIDogIk9waW9pZENEU1JFQzA0QW5kMDUiLAogICAgICAgICAic3lzdGVtIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzIiwKICAgICAgICAgInZlcnNpb24iIDogIjIwMjIuMS4wIgogICAgICB9LAogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7CiAgICAgICAgICJpZCIgOiAidXJuOmhsNy1vcmc6ZWxtIiwKICAgICAgICAgInZlcnNpb24iIDogInIxIgogICAgICB9LAogICAgICAidXNpbmdzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiU3lzdGVtIiwKICAgICAgICAgICAgInVyaSIgOiAidXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIgogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjM6MS0zOjI2IiwKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiRkhJUiIsCiAgICAgICAgICAgICJ1cmkiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIiLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiNC4wLjEiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIxIiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJ1c2luZyAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkZISVIiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIic0LjAuMSciIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAiaW5jbHVkZXMiIDogewogICAgICAgICAiZGVmIiA6IFsgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMiIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OjEtNTo1NiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbiIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICIyMDIyLjEuMCIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjIiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImluY2x1ZGUgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJPcGlvaWRDRFNDb21tb24iIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIicyMDIyLjEuMCciLCIgY2FsbGVkICIsIkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMyIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OjEtNjo2MiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkNvbmZpZyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU0NvbW1vbkNvbmZpZyIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICIyMDIyLjEuMCIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjMiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImluY2x1ZGUgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJPcGlvaWRDRFNDb21tb25Db25maWciIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIicyMDIyLjEuMCciLCIgY2FsbGVkICIsIkNvbmZpZyIgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3OjEtNzo2MCIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIlJvdXRpbmVzIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvT3Bpb2lkQ0RTUm91dGluZXMiLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiMjAyMi4xLjAiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiT3Bpb2lkQ0RTUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIicyMDIyLjEuMCciLCIgY2FsbGVkICIsIlJvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI1IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwOjEtMTA6NTgiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJNTUVDYWxjdWxhdG9yIiwKICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMvTU1FQ2FsY3VsYXRvciIsCiAgICAgICAgICAgICJ2ZXJzaW9uIiA6ICIzLjAuMCIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjUiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8qaW5jbHVkZSBmaGlyLmNkYy5cIm9waW9pZC1tbWUtcjRcIi5NTUVDYWxjdWxhdG9yIHZlcnNpb24gJzMuMC4wJyBjYWxsZWQgTU1FQ2FsY3VsYXRvclxuICovXG4iLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiTU1FQ2FsY3VsYXRvciIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIHZlcnNpb24gIiwiJzMuMC4wJyIsIiBjYWxsZWQgIiwiTU1FQ2FsY3VsYXRvciIgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0KICAgICAgICAgfSBdCiAgICAgIH0sCiAgICAgICJwYXJhbWV0ZXJzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjgiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNTc6MS01Nzo1NCIsCiAgICAgICAgICAgICJuYW1lIiA6ICJDb250ZXh0UHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiOCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLypcbioqXG4qKiAgUmVjb21tZW5kYXRpb24gIzRcbioqICAgIFdoZW4gb3Bpb2lkcyBhcmUgaW5pdGlhdGVkIGZvciBvcGlvaWQtbmHDr3ZlIHBhdGllbnRzIHdpdGggYWN1dGUsIHN1YmFjdXRlLCBvciBjaHJvbmljIHBhaW4sIFxuKiogICAgY2xpbmljaWFucyBzaG91bGQgcHJlc2NyaWJlIHRoZSBsb3dlc3QgZWZmZWN0aXZlIGRvc2FnZS4gSWYgb3Bpb2lkcyBhcmUgY29udGludWVkIGZvciBcbioqICAgIHN1YmFjdXRlIG9yIGNocm9uaWMgcGFpbiwgY2xpbmljaWFucyBzaG91bGQgdXNlIGNhdXRpb24gd2hlbiBwcmVzY3JpYmluZyBvcGlvaWRzIGF0IGFueSBkb3NhZ2UsIFxuKiogICAgc2hvdWxkIGNhcmVmdWxseSBldmFsdWF0ZSBpbmRpdmlkdWFsIGJlbmVmaXRzIGFuZCByaXNrcyB3aGVuIGNvbnNpZGVyaW5nIGluY3JlYXNpbmcgZG9zYWdlLCBhbmQgXG4qKiAgICBzaG91bGQgYXZvaWQgaW5jcmVhc2luZyBkb3NhZ2UgYWJvdmUgbGV2ZWxzIGxpa2VseSB0byB5aWVsZCBkaW1pbmlzaGluZyByZXR1cm5zIGluIGJlbmVmaXRzIFxuKiogICAgcmVsYXRpdmUgdG8gcmlza3MgdG8gcGF0aWVudHMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBBOyBldmlkZW5jZSB0eXBlOiAzKVxuKiogIFJlY29tbWVuZGF0aW9uICM1XG4qKiAgICBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgXG4qKiAgICByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuIElmIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCBcbioqICAgIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCB3b3JrIGNsb3NlbHkgd2l0aCBwYXRpZW50cyB0byBvcHRpbWl6ZSBub25vcGlvaWQgdGhlcmFwaWVzIFxuKiogICAgd2hpbGUgY29udGludWluZyBvcGlvaWQgdGhlcmFweS4gSWYgYmVuZWZpdHMgZG8gbm90IG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCBvcGlvaWQgdGhlcmFweSwgXG4qKiAgICBjbGluaWNpYW5zIHNob3VsZCBvcHRpbWl6ZSBvdGhlciB0aGVyYXBpZXMgYW5kIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIGdyYWR1YWxseSB0YXBlciB0byBcbioqICAgIGxvd2VyIGRvc2FnZXMgb3IsIGlmIHdhcnJhbnRlZCBiYXNlZCBvbiB0aGUgaW5kaXZpZHVhbCBjaXJjdW1zdGFuY2VzIG9mIHRoZSBwYXRpZW50LCBhcHByb3ByaWF0ZWx5IFxuKiogICAgdGFwZXIgYW5kIGRpc2NvbnRpbnVlIG9waW9pZHMuIFVubGVzcyB0aGVyZSBhcmUgaW5kaWNhdGlvbnMgb2YgYSBsaWZlLXRocmVhdGVuaW5nIGlzc3VlIHN1Y2ggYXMgXG4qKiAgICB3YXJuaW5nIHNpZ25zIG9mIGltcGVuZGluZyBvdmVyZG9zZSAoZS5nLiwgY29uZnVzaW9uLCBzZWRhdGlvbiwgb3Igc2x1cnJlZCBzcGVlY2gpLCBvcGlvaWQgdGhlcmFweSBcbioqICAgIHNob3VsZCBub3QgYmUgZGlzY29udGludWVkIGFicnVwdGx5LCBhbmQgY2xpbmljaWFucyBzaG91bGQgbm90IHJhcGlkbHkgcmVkdWNlIG9waW9pZCBkb3NhZ2VzIGZyb20gXG4qKiAgICBoaWdoZXIgZG9zYWdlcyAocmVjb21tZW5kYXRpb24gY2F0ZWdvcnk6IEI7IGV2aWRlbmNlIHR5cGU6IDQpLlxuKipcbioqICBXaGVuXG4qKiAgICBQcm92aWRlciBpcyBwcmVzY3JpYmluZyBhbiBvcGlvaWQgYW5hbGdlc2ljIHdpdGggYW1idWxhdG9yeSBtaXN1c2UgcG90ZW50aWFsIGluIHRoZSBvdXRwYXRpZW50IHNldHRpbmdcbioqICAgIE9waW9pZCByZXZpZXcgaXMgdXNlZnVsIGZvciB0aGlzIHBhdGllbnQ6XG4qKiAgICAgIFBhdGllbnQgaXMgMTggb3Igb3ZlclxuKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZXZpZGVuY2Ugb2Ygc2lja2xlIGNlbGwgZGlzZWFzZVxuKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZmluZGluZ3MgaW5kaWNhdGluZyBsaW1pdGVkIGxpZmUgZXhwZWN0YW5jeVxuKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgb3JkZXJzIGZvciB0aGVyYXBpZXMgaW5kaWNhdGluZyBlbmQgb2YgbGlmZSBjYXJlXG4qKiAgICAgIFBhdGllbnQgaXMgbm90IHVuZGVyZ29pbmcgYWN0aXZlIGNhbmNlciB0cmVhdG1lbnQ6XG4qKiAgICAgICAgUGF0aWVudCBoYXMgaGFkIGF0IGxlYXN0IDIgb2ZmaWNlIHZpc2l0cyB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdpdGggYW4gb25jb2xvZ3kgc3BlY2lhbGlzdCBwcmVzZW50LCBvclxuKiogICAgICAgIFBhdGllbnQgaGFzIGhhZCBhdCBsZWFzdCAyIG9mZmljZSB2aXNpdHMgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aXRoIGEgQ0RDIG1hbGlnbmFudCBjYW5jZXIgY29uZGl0aW9uIGRpYWdub3Npc1xuKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgY29uZGl0aW9ucyBsaWtlbHkgdGVybWluYWwgZm9yIG9waW9pZCBwcmVzY3JpYmluZyBwcmVzZW50XG4qKiAgICBQYXRpZW50IE1vcnBoaW5lIE1pbGxpZ3JhbSBFcXVpdmFsZW50IChNTUUpIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA1MFxuKiogIFRoZW5cbioqICAgIENhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXM6XG4qKiAgICAgIERvY3VtZW50IC0gV2lsbCBwcmVzY3JpYmUgYSBsb3dlciBkb3NlXG4qKiAgICAgIERvY3VtZW50IC0gV2lsbCBjYWxpYnJhdGUgYSBncmFkdWFsIGNoYW5nZSBpbiBkb3NhZ2VcbioqICAgICAgU25vb3plIC0gQmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAzIG1vbnRoc1xuKiogICAgICBTbm9vemUgLSBTaG9ydCB0ZXJtIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMSBtb250aFxuKiogICAgICBTbm9vemUgLSBOL0EgYWRkIGNvbW1lbnQsIHNub296ZSAzIG1vbnRoc1xuKipcbiovXG5cbi8vIE1FVEE6IFBsYW4gRGVmaW5pdGlvbjogaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy1yNC9QbGFuRGVmaW5pdGlvbi9vcGlvaWQtY2RzLTA0LTA1IiwicGFyYW1ldGVyICIsIkNvbnRleHRQcmVzY3JpcHRpb25zIiwiICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI3IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJMaXN0PCIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJNZWRpY2F0aW9uUmVxdWVzdCIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiPiIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAicGFyYW1ldGVyVHlwZVNwZWNpZmllciIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI3IiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjU3OjMyLTU3OjU0IiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkxpc3RUeXBlU3BlY2lmaWVyIiwKICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNTc6MzctNTc6NTMiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9TWVkaWNhdGlvblJlcXVlc3QiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIgogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSBdCiAgICAgIH0sCiAgICAgICJjb250ZXh0cyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OToxLTU5OjE1IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAic3RhdGVtZW50cyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OToxLTU5OjE1IiwKICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgInR5cGUiIDogIlNpbmdsZXRvbkZyb20iLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1OToxLTU5OjE1IiwKICAgICAgICAgICAgICAgICAgImRhdGFUeXBlIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1QYXRpZW50IiwKICAgICAgICAgICAgICAgICAgInRlbXBsYXRlSWQiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlJldHJpZXZlIgogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMTgiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjU6MS02Nzo5NCIsCiAgICAgICAgICAgICJuYW1lIiA6ICJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjE4IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNyIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjEzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjEwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJDb21tb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiSXMgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbD9cIiIsIiggIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjExIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJDb250ZXh0UHJlc2NyaXB0aW9ucyIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTYiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIndoZXJlICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlJvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/XCIiLCIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTciLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6My02Nzo5NCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsCiAgICAgICAgICAgICAgICJzb3VyY2UiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMyIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NjozLTY2OjEyMSIsCiAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIsCiAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjEyIiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY2OjMtNjY6OTIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbD8iLAogICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTEiLAogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6NjktNjY6ODgiLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQ29udGV4dFByZXNjcmlwdGlvbnMiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUGFyYW1ldGVyUmVmIgogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLAogICAgICAgICAgICAgICAid2hlcmUiIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NS02Nzo5NCIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyIsCiAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiUm91dGluZXMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjE1IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY3OjY1LTY3OjkyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQWxpYXNSZWYiCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjkiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNzI6MS03OTozIiwKICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIyOSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiVG90YWwgTU1FXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyOCIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiTU1FQ2FsY3VsYXRvciIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyOCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiVG90YWxNTUUiLCIoXG4gICAgIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIoXG4gICAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnNcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgICAgIHVuaW9uICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJBY3RpdmUgQW1idWxhdG9yeSBPcGlvaWQgUnhcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgIiwiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgICAgIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJ3aGVyZSAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJSb3V0aW5lcyIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uP1wiIiwiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjgiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzM6My03OTozIiwKICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsTU1FIiwKICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJNTUVDYWxjdWxhdG9yIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNyIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NDo1LTc4Ojk2IiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlF1ZXJ5IiwKICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIzIiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc0OjUtNzc6MzQiLAogICAgICAgICAgICAgICAgICAgICAiYWxpYXMiIDogIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iLAogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NDo1LTc3OjUiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVW5pb24iLAogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjE5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjctNzU6ODQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NjoxNS03Njo1MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJBY3RpdmUgQW1idWxhdG9yeSBPcGlvaWQgUngiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbW1vbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLAogICAgICAgICAgICAgICAgICAid2hlcmUiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjYiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzg6Ny03ODo5NiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiUm91dGluZXMiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLAogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc4OjY3LTc4Ojk0IiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb24iLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQWxpYXNSZWYiCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjM0IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjEtNjE6NDMiLAogICAgICAgICAgICAibmFtZSIgOiAiVGFwZXIgTm93IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjM0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJUYXBlciBOb3dcIiIsIjogIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjMzIiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiVG90YWwgTU1FXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgInZhbHVlIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzIiLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIj49IiwiICIsIjkwIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjMzIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjIxLTYxOjQzIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkdyZWF0ZXJPckVxdWFsIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzMSIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MToyMS02MTozNyIsCiAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJ2YWx1ZSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsCiAgICAgICAgICAgICAgICAgICJzb3VyY2UiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzAiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MjEtNjE6MzEiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG90YWwgTU1FIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVG9EZWNpbWFsIiwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzIiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6NDItNjE6NDMiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjkwIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMzkiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MS02Mzo1MCIsCiAgICAgICAgICAgICJuYW1lIiA6ICJDb25zaWRlciBUYXBlcmluZyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIzOSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiQ29uc2lkZXIgVGFwZXJpbmdcIiIsIjogIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjM4IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiVG90YWwgTU1FXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgInZhbHVlIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzciLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIjwiLCIgIiwiOTAiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzgiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MjktNjM6NTAiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiTGVzcyIsCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MjktNjM6NDUiLAogICAgICAgICAgICAgICAgICAicGF0aCIgOiAidmFsdWUiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiLAogICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjM1IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjI5LTYzOjM5IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlRvRGVjaW1hbCIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjM3IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYzOjQ5LTYzOjUwIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICI5MCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjQyIiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjY5OjEtNzA6OTAiLAogICAgICAgICAgICAibmFtZSIgOiAiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiNDIiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0MSIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiZXhpc3RzIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQwIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0MSIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MDozLTcwOjkwIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkV4aXN0cyIsCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQwIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjcwOjktNzA6OTAiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNTEiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiODE6MS04NDozNSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJbmNsdXNpb24gQ3JpdGVyaWEiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiNTEiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIkluY2x1c2lvbiBDcml0ZXJpYVwiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiNTAiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQ2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbFwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICBhbmQgIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQ1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiSXMgT3Bpb2lkIFJldmlldyBVc2VmdWw/XCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgYW5kICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0OSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiVG90YWwgTU1FXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiAiLCI+PSIsIiAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIjUwICIsIid7TU1FfS9kJyIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjUwIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgyOjMtODQ6MzUiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0NiIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4MjozLTgzOjQzIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNDMiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04Mjo4MSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0NSIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4Mzo5LTgzOjQzIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIE9waW9pZCBSZXZpZXcgVXNlZnVsPyIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiUm91dGluZXMiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQ5IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg0OjktODQ6MzUiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiR3JlYXRlck9yRXF1YWwiLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQ3IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg0OjktODQ6MTkiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG90YWwgTU1FIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQ4IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg0OjI0LTg0OjM1IiwKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IDUwLAogICAgICAgICAgICAgICAgICAgICAidW5pdCIgOiAie01NRX0vZCIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWFudGl0eSIKICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjU0IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjg2OjEtODc6MzMiLAogICAgICAgICAgICAibmFtZSIgOiAiRXhjbHVzaW9uIENyaXRlcmlhIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjU0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJFeGNsdXNpb24gQ3JpdGVyaWFcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjUzIiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1MiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjUzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkVuZCBvZiBMaWZlIEFzc2Vzc21lbnRcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNTMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6My04NzozMyIsCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50IiwKICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb21tb24iLAogICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI1OSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4OToxLTkxOjMyIiwKICAgICAgICAgICAgIm5hbWUiIDogIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjU5IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlP1wiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiNTgiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjU1IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkluY2x1c2lvbiBDcml0ZXJpYVwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICBhbmQgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjU3IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJub3QgIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjU2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkV4Y2x1c2lvbiBDcml0ZXJpYVwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNTgiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTA6My05MTozMiIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjU1IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkwOjMtOTA6MjIiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSW5jbHVzaW9uIENyaXRlcmlhIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjU3IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkxOjktOTE6MzIiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNTYiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTE6MTMtOTE6MzIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiRXhjbHVzaW9uIENyaXRlcmlhIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNjQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiOTM6MS05NjoxMSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJHZXQgSW5kaWNhdG9yIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjY0IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJHZXQgSW5kaWNhdG9yXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2MyIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiaWYgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjYwIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/XCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgIHRoZW4gIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjYxIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICInd2FybmluZyciIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjYyIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICBlbHNlICIsIm51bGwiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTQ6My05NjoxMSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJZiIsCiAgICAgICAgICAgICAgICJjb25kaXRpb24iIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjAiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTQ6Ni05NDozNiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI2MSIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5NToxMC05NToxOCIsCiAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJ3YXJuaW5nIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJlbHNlIiA6IHsKICAgICAgICAgICAgICAgICAgImFzVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQXMiLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI2MiIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5Njo4LTk2OjExIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk51bGwiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjY5IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjk4OjEtMTAyOjExIiwKICAgICAgICAgICAgIm5hbWUiIDogIkdldCBTdW1tYXJ5IiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjY5IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJHZXQgU3VtbWFyeVwiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiNjgiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgImlmICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlP1wiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICB0aGVuXG4gICAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNjYiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIidDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzJyIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNjciLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gIGVsc2UgIiwibnVsbCIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI2OCIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5OTozLTEwMjoxMSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJZiIsCiAgICAgICAgICAgICAgICJjb25kaXRpb24iIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjUiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTk6Ni05OTozNiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI2NiIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDE6Ny0xMDE6MTE0IiwKICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidmFsdWUiIDogIkNhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgImVsc2UiIDogewogICAgICAgICAgICAgICAgICAiYXNUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBcyIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjY3IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwMjo4LTEwMjoxMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOdWxsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI3NCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDQ6MS0xMjc6MTEiLAogICAgICAgICAgICAibmFtZSIgOiAiR2V0IERldGFpbCIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI3NCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiR2V0IERldGFpbFwiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiNzMiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgImlmICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI3MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlP1wiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICB0aGVuXG4gICAgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjcxIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICInV2hlbiBvcGlvaWQgdGhlcmFweSBpcyBjb25zaWRlcmVkIGFwcHJvcHJpYXRlLCBjYWxpYnJhdGUgb3Bpb2lkIGRvc2FnZXMgdG8gbG93ZXN0IGRvc2UgbmVlZGVkIHRvIGFjaGlldmUgZXhwZWN0ZWQgZWZmZWN0cy4gRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIHJpc2tzIGFuZCBleGVyY2lzZSBjYXJlIHdoZW4gY2hhbmdpbmcgb3Bpb2lkIGRvc2FnZS5cblxuW0ZvciBndWlkYW5jZSBpbiBkZXRlcm1pbmluZyB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBvcGlvaWQgZG9zYWdlLCBzZWUgUmVjb21tZW5kYXRpb24gNCBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1sb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NhZ2UuLSxGb3IlMjBwYXRpZW50cyUyMG5vdCUyMGFscmVhZHklMjB0YWtpbmclMjBvcGlvaWRzJTJDJTIwdGhlJTIwbG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zZSUyMGNhbixpbnRlbmRlZCUyMHRvJTIwYmUlMjBndWlkZXBvc3RzJTIwdG8lMjBoZWxwJTIwaW5mb3JtJTIwY2xpbmljaWFuJTJEcGF0aWVudCUyMGRlY2lzaW9uJTJEbWFraW5nLiwtU3VwcG9ydGluZyUyMFJhdGlvbmFsZSlcblxuW0ZvciBwYXRpZW50cyB3aG8gaGF2ZSByZWNlaXZlZCBvcGlvaWQgdGhlcmFweSBmb3IgbG9uZ2VyIGR1cmF0aW9ucyBvZiB0aW1lLCBpZiB0YXBlcmluZywgY29uc2lkZXIgd29ya2luZyBjbG9zZWx5IHdpdGggdGhlIHBhdGllbnQgdG8gZ3JhZHVhbGx5IHRhcGVyIGRvc2FnZXMgKG5vIG1vcmUgdGhhbiAxMCUgcGVyIG1vbnRoKV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMHBhdGllbnRzJTIwaGF2ZSUyMGJlZW4lMjB0YWtpbmclMjBvcGlvaWRzJTIwZm9yJTIwbG9uZ2VyJTIwZHVyYXRpb25zJTIwKGUuZy4lMkMlMjBmb3IlMjAlRTIlODklQTUxJTIweWVhciklMkMlMjB0YXBlcnMlMjBvZiUyMDEwJTI1JTIwcGVyJTIwbW9udGglMjBvciUyMHNsb3dlciUyMGFyZSUyMGxpa2VseSUyMHRvJTIwYmUlMjBiZXR0ZXIlMjB0b2xlcmF0ZWQlMjB0aGFuJTIwbW9yZSUyMHJhcGlkJTIwdGFwZXJzLilcblxuRm9yIGEgdGFwZXJpbmcgY2FsY3VsYXRvciwgZ28gdG8gW2h0dHBzOi8vYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbF0oaHR0cHM6Ly93d3cuYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbClcblxuW0ZvciBtb3JlIGd1aWRhbmNlIHJlZ2FyZGluZyB0YXBlcmluZywgcGxlYXNlIHNlZcKgUmVjb21tZW5kYXRpb24gNSBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lIGZvciBQcmVzY3JpYmluZyBPcGlvaWRzIGZvciBQYWluXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwYmVuZWZpdHMlMjAoaW5jbHVkaW5nLDYlMjBhbmQlMjA3KS4pXG5cbioqTU1FIENhbGN1bGF0b3IgQ2F1dGlvbnMqKlxuMSkgQWxsIGRvc2VzIGFyZSBpbiBtZy9kYXkgZXhjZXB0IGZvciBmZW50YW55bCwgd2hpY2ggaXMgbWNnL2hyLiBcbjIpIEVxdWlhbmFsZ2VzaWMgZG9zZSBjb252ZXJzaW9ucyBhcmUgb25seSBlc3RpbWF0ZXMgYW5kIGNhbm5vdCBhY2NvdW50IGZvciBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIGdlbmV0aWNzIGFuZCBwaGFybWFjb2tpbmV0aWNzLiBcbjMpIERvIG5vdCB1c2UgdGhlIGNhbGN1bGF0ZWQgZG9zZSBpbiBNTUVzIHRvIGRldGVybWluZSB0aGUgZG9zZXMgdG8gdXNlIHdoZW4gY29udmVydGluZyBvbmUgb3Bpb2lkIHRvIGFub3RoZXI7IHdoZW4gY29udmVydGluZyBvcGlvaWRzLCB0aGUgbmV3IG9waW9pZCBpcyB0eXBpY2FsbHkgZG9zZWQgYXQgYSBzdWJzdGFudGlhbGx5IGxvd2VyIGRvc2UgdGhhbiB0aGUgY2FsY3VsYXRlZCBNTUUgZG9zZSB0byBhdm9pZCBvdmVyZG9zZSBiZWNhdXNlIG9mIGluY29tcGxldGUgY3Jvc3MtdG9sZXJhbmNlIGFuZCBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIG9waW9pZCBwaGFybWFjb2tpbmV0aWNzLiBDb25zdWx0IHRoZSBGREEgYXBwcm92ZWQgcHJvZHVjdCBsYWJlbGluZyBmb3Igc3BlY2lmaWMgZ3VpZGFuY2Ugb24gbWVkaWNhdGlvbnMuIFxuNCkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIG1ldGhhZG9uZSBkb3NlIGNvbnZlcnNpb25zIGJlY2F1c2UgbWV0aGFkb25lIGhhcyBhIGxvbmcgYW5kIHZhcmlhYmxlIGhhbGYtbGlmZSwgYW5kIHBlYWsgcmVzcGlyYXRvcnkgZGVwcmVzc2FudCBlZmZlY3Qgb2NjdXJzIGxhdGVyIGFuZCBsYXN0cyBsb25nZXIgdGhhbiBwZWFrIGFuYWxnZXNpYyBlZmZlY3QuIFxuNSkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIHRyYW5zZGVybWFsIGZlbnRhbnlsIGJlY2F1c2UgaXQgaXMgZG9zZWQgaW4gbWNnL2hyIGluc3RlYWQgb2YgbWcvZGF5LCBhbmQgaXRzIGFic29ycHRpb24gaXMgYWZmZWN0ZWQgYnkgaGVhdCBhbmQgb3RoZXIgZmFjdG9ycy4gXG42KSBCdXByZW5vcnBoaW5lIHByb2R1Y3RzIGFwcHJvdmVkIGZvciB0aGUgdHJlYXRtZW50IG9mIHBhaW4gYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgdGFibGUgYmVjYXVzZSBvZiB0aGVpciBwYXJ0aWFsIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHkgYW5kIHJlc3VsdGFudCBjZWlsaW5nIGVmZmVjdHMgY29tcGFyZWQgd2l0aCBmdWxsIMK1LXJlY2VwdG9yIGFnb25pc3RzLiBcbjcpIFRoZXNlIGNvbnZlcnNpb24gZmFjdG9ycyBzaG91bGQgbm90IGJlIGFwcGxpZWQgdG8gZG9zYWdlIGRlY2lzaW9ucyByZWxhdGVkIHRvIHRoZSBtYW5hZ2VtZW50IG9mIG9waW9pZCB1c2UgZGlzb3JkZXIuXG7igKAgVGFwZW50YWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0YXBlbnRhZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuXG7CpyBUcmFtYWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIGFuZCBzZXJvdG9uaW4gcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRyYW1hZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuJyIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNzIiLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gIGVsc2UgIiwibnVsbCIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI3MyIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDU6My0xMjc6MTEiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiSWYiLAogICAgICAgICAgICAgICAiY29uZGl0aW9uIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjcwIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNTo2LTEwNTozNiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAidGhlbiIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI3MSIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDc6NS0xMDc6MzYwOCIsCiAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJXaGVuIG9waW9pZCB0aGVyYXB5IGlzIGNvbnNpZGVyZWQgYXBwcm9wcmlhdGUsIGNhbGlicmF0ZSBvcGlvaWQgZG9zYWdlcyB0byBsb3dlc3QgZG9zZSBuZWVkZWQgdG8gYWNoaWV2ZSBleHBlY3RlZCBlZmZlY3RzLiBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLlxuXG5bRm9yIGd1aWRhbmNlIGluIGRldGVybWluaW5nIHRoZSBsb3dlc3QgZWZmZWN0aXZlIG9waW9pZCBkb3NhZ2UsIHNlZSBSZWNvbW1lbmRhdGlvbiA0IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmVdKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PWxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2FnZS4tLEZvciUyMHBhdGllbnRzJTIwbm90JTIwYWxyZWFkeSUyMHRha2luZyUyMG9waW9pZHMlMkMlMjB0aGUlMjBsb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NlJTIwY2FuLGludGVuZGVkJTIwdG8lMjBiZSUyMGd1aWRlcG9zdHMlMjB0byUyMGhlbHAlMjBpbmZvcm0lMjBjbGluaWNpYW4lMkRwYXRpZW50JTIwZGVjaXNpb24lMkRtYWtpbmcuLC1TdXBwb3J0aW5nJTIwUmF0aW9uYWxlKVxuXG5bRm9yIHBhdGllbnRzIHdobyBoYXZlIHJlY2VpdmVkIG9waW9pZCB0aGVyYXB5IGZvciBsb25nZXIgZHVyYXRpb25zIG9mIHRpbWUsIGlmIHRhcGVyaW5nLCBjb25zaWRlciB3b3JraW5nIGNsb3NlbHkgd2l0aCB0aGUgcGF0aWVudCB0byBncmFkdWFsbHkgdGFwZXIgZG9zYWdlcyAobm8gbW9yZSB0aGFuIDEwJSBwZXIgbW9udGgpXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwcGF0aWVudHMlMjBoYXZlJTIwYmVlbiUyMHRha2luZyUyMG9waW9pZHMlMjBmb3IlMjBsb25nZXIlMjBkdXJhdGlvbnMlMjAoZS5nLiUyQyUyMGZvciUyMCVFMiU4OSVBNTElMjB5ZWFyKSUyQyUyMHRhcGVycyUyMG9mJTIwMTAlMjUlMjBwZXIlMjBtb250aCUyMG9yJTIwc2xvd2VyJTIwYXJlJTIwbGlrZWx5JTIwdG8lMjBiZSUyMGJldHRlciUyMHRvbGVyYXRlZCUyMHRoYW4lMjBtb3JlJTIwcmFwaWQlMjB0YXBlcnMuKVxuXG5Gb3IgYSB0YXBlcmluZyBjYWxjdWxhdG9yLCBnbyB0byBbaHR0cHM6Ly9hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sXShodHRwczovL3d3dy5hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sKVxuXG5bRm9yIG1vcmUgZ3VpZGFuY2UgcmVnYXJkaW5nIHRhcGVyaW5nLCBwbGVhc2Ugc2VlwqBSZWNvbW1lbmRhdGlvbiA1IG9mIHRoZSAyMDIyIENEQyBDbGluaWNhbCBQcmFjdGljZSBHdWlkZWxpbmUgZm9yIFByZXNjcmliaW5nIE9waW9pZHMgZm9yIFBhaW5dKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBiZW5lZml0cyUyMChpbmNsdWRpbmcsNiUyMGFuZCUyMDcpLilcblxuKipNTUUgQ2FsY3VsYXRvciBDYXV0aW9ucyoqXG4xKSBBbGwgZG9zZXMgYXJlIGluIG1nL2RheSBleGNlcHQgZm9yIGZlbnRhbnlsLCB3aGljaCBpcyBtY2cvaHIuIFxuMikgRXF1aWFuYWxnZXNpYyBkb3NlIGNvbnZlcnNpb25zIGFyZSBvbmx5IGVzdGltYXRlcyBhbmQgY2Fubm90IGFjY291bnQgZm9yIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gZ2VuZXRpY3MgYW5kIHBoYXJtYWNva2luZXRpY3MuIFxuMykgRG8gbm90IHVzZSB0aGUgY2FsY3VsYXRlZCBkb3NlIGluIE1NRXMgdG8gZGV0ZXJtaW5lIHRoZSBkb3NlcyB0byB1c2Ugd2hlbiBjb252ZXJ0aW5nIG9uZSBvcGlvaWQgdG8gYW5vdGhlcjsgd2hlbiBjb252ZXJ0aW5nIG9waW9pZHMsIHRoZSBuZXcgb3Bpb2lkIGlzIHR5cGljYWxseSBkb3NlZCBhdCBhIHN1YnN0YW50aWFsbHkgbG93ZXIgZG9zZSB0aGFuIHRoZSBjYWxjdWxhdGVkIE1NRSBkb3NlIHRvIGF2b2lkIG92ZXJkb3NlIGJlY2F1c2Ugb2YgaW5jb21wbGV0ZSBjcm9zcy10b2xlcmFuY2UgYW5kIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gb3Bpb2lkIHBoYXJtYWNva2luZXRpY3MuIENvbnN1bHQgdGhlIEZEQSBhcHByb3ZlZCBwcm9kdWN0IGxhYmVsaW5nIGZvciBzcGVjaWZpYyBndWlkYW5jZSBvbiBtZWRpY2F0aW9ucy4gXG40KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggbWV0aGFkb25lIGRvc2UgY29udmVyc2lvbnMgYmVjYXVzZSBtZXRoYWRvbmUgaGFzIGEgbG9uZyBhbmQgdmFyaWFibGUgaGFsZi1saWZlLCBhbmQgcGVhayByZXNwaXJhdG9yeSBkZXByZXNzYW50IGVmZmVjdCBvY2N1cnMgbGF0ZXIgYW5kIGxhc3RzIGxvbmdlciB0aGFuIHBlYWsgYW5hbGdlc2ljIGVmZmVjdC4gXG41KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggdHJhbnNkZXJtYWwgZmVudGFueWwgYmVjYXVzZSBpdCBpcyBkb3NlZCBpbiBtY2cvaHIgaW5zdGVhZCBvZiBtZy9kYXksIGFuZCBpdHMgYWJzb3JwdGlvbiBpcyBhZmZlY3RlZCBieSBoZWF0IGFuZCBvdGhlciBmYWN0b3JzLiBcbjYpIEJ1cHJlbm9ycGhpbmUgcHJvZHVjdHMgYXBwcm92ZWQgZm9yIHRoZSB0cmVhdG1lbnQgb2YgcGFpbiBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSB0YWJsZSBiZWNhdXNlIG9mIHRoZWlyIHBhcnRpYWwgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eSBhbmQgcmVzdWx0YW50IGNlaWxpbmcgZWZmZWN0cyBjb21wYXJlZCB3aXRoIGZ1bGwgwrUtcmVjZXB0b3IgYWdvbmlzdHMuIFxuNykgVGhlc2UgY29udmVyc2lvbiBmYWN0b3JzIHNob3VsZCBub3QgYmUgYXBwbGllZCB0byBkb3NhZ2UgZGVjaXNpb25zIHJlbGF0ZWQgdG8gdGhlIG1hbmFnZW1lbnQgb2Ygb3Bpb2lkIHVzZSBkaXNvcmRlci5cbuKAoCBUYXBlbnRhZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRhcGVudGFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy5cbsKnIFRyYW1hZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgYW5kIHNlcm90b25pbiByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdHJhbWFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4iLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgImVsc2UiIDogewogICAgICAgICAgICAgICAgICAiYXNUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBcyIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjcyIiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEyNzo4LTEyNzoxMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOdWxsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9IF0KICAgICAgfQogICB9Cn0="/>
  </content>
</Library>