WHO Immunization Implementation Guide
0.2.0 - ci-build

WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-immunizations/tree/123/merge and changes regularly. See the Directory of published versions

: IMMZD18SDTPDelayedOrInterruptedSeriesLogic - XML Representation

Draft as of 2026-03-03

Raw xml | Download


<Library xmlns="http://hl7.org/fhir">
  <id value="IMMZD18SDTPDelayedOrInterruptedSeriesLogic"/>
  <meta>
    <profile
             value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"/>
    <profile
             value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"/>
    <profile
             value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"/>
    <profile
             value="http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"/>
  </meta>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
<div>
    <table class="grid dict">
        
        
        <tr>
            <th scope="row"><b>Title: </b></th>
            <td style="padding-left: 4px;">IMMZD18SDTPDelayedOrInterruptedSeriesLogic</td>
        </tr>
        

        
        
        <tr>
            <th scope="row"><b>Id: </b></th>
            <td style="padding-left: 4px;">IMMZD18SDTPDelayedOrInterruptedSeriesLogic</td>
        </tr>
        

        
        
        <tr>
            <th scope="row"><b>Version: </b></th>
            <td style="padding-left: 4px;">0.2.0</td>
        </tr>
        

        
        <tr>
            <th scope="row"><b>Url: </b></th>
            <td style="padding-left: 4px;"><a href="Library-IMMZD18SDTPDelayedOrInterruptedSeriesLogic.html">IMMZD18SDTPDelayedOrInterruptedSeriesLogic</a></td>
        </tr>
        

        

        

        
        <tr>
            <th scope="row"><b>Status: </b></th>
            <td style="padding-left: 4px;">draft</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/7.0.1/CodeSystem-library-type.html">http://terminology.hl7.org/CodeSystem/library-type</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;">2026-03-03 13:07:11+0000</td>
        </tr>
        

        
        <tr>
            <th scope="row"><b>Publisher: </b></th>
            <td style="padding-left: 4px;">WHO</td>
        </tr>
        

        
        <tr>
            <th scope="row"><b>Description: </b></th>
            <td style="padding-left: 4px;"><div><p>This library defines decision support logic for the IMMZ.D18.S.DTP.Delayed or interrupted schedule table in the Immunization CPG</p>
</div></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="Library-WHOCommon.html">WHOCommon</a></li>
                  
                    <li><a href="Library-IMMZCommon.html">IMMZCommon</a></li>
                  
                    <li><a href="Library-IMMZConcepts.html">IMMZConcepts</a></li>
                  
                    <li><a href="Library-IMMZEncounterElements.html">IMMZEncounterElements</a></li>
                  
                    <li><a href="Library-IMMZD2DTDTPEncounterElements.html">IMMZD2DTDTPEncounterElements</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>Today</th><th>date</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>DTP dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 1 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 1 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>First DTP dose from the primary series was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Second DTP dose from the primary series was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 2 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 2 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 2 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 2 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 2 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Third DTP dose from the primary series was administered. The primary DTP series has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 3 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 3 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 3 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 3 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>DTP dose 3 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>First tetanus and diphtheria booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Expiration</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start)</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Overdue</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Pertussis-containing vaccine booster dose 1 (delayed start) Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Test Validation</th><th>Resource</th><th>0</th><th>1</th><th>Out</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: IMMZD18SDTPDelayedOrInterruptedSeriesLogic (IMMZ.D18.S.DTP.Delayed or interrupted schedule)
 * Schedule Table: Diphtheria–tetanus–pertussis (DTP) vaccination schedule for the following groups: children ≥ 1 year of age with no previous immunization, adolescents and adults with no previous immunization (including pregnant women) and supplementary immunization activities in high-risk areas, for women of reproductive age
 */
library IMMZD18SDTPDelayedOrInterruptedSeriesLogic

using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1'

include WHOCommon called WC

include IMMZCommon called Common
include IMMZConcepts called Concepts

include IMMZEncounterElements called IE
include IMMZD2DTDTPEncounterElements called Encounter

parameter Today Date default Today()


context Patient


/*
@output: DTP dose 1 (delayed start)
@description: Provision of DTP dose 1 with a delayed start
@trigger: No DTP doses were administered and client's age is more than 1 year
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) = 0 AND Today's date − &quot;Date of birth&quot; &gt; 1 year
@triggerDate: Date of birth
*/
define &quot;DTP dose 1 (delayed start)&quot;:
  Encounter.&quot;No DTP primary series doses were administered&quot;
  and Encounter.&quot;Client's age is more than 1 year&quot;


/*
@output: DTP dose 1 (delayed start) Create
@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.

If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.

Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.
*/
define &quot;DTP dose 1 (delayed start) Create&quot;:
  if &quot;DTP dose 1 (delayed start)&quot;
  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.
If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.
Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '
Due Date: ' + ToString(&quot;DTP dose 1 (delayed start) Due Date&quot;)
  else ''


/*
@dynamicValue: DTP dose 1 (delayed start) Due Date
@pseudocode: As soon as possible
*/
define &quot;DTP dose 1 (delayed start) Due Date&quot;:
  if &quot;DTP dose 1 (delayed start)&quot; then Patient.birthDate + 1 year
  else null


/*
@dynamicValue: DTP dose 1 (delayed start) Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date.
*/
define &quot;DTP dose 1 (delayed start) Overdue&quot;:
  null


/*
@dynamicValue: DTP dose 1 (delayed start) Expiration
@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.
*/
define &quot;DTP dose 1 (delayed start) Expiration&quot;:
  null

  
/*
@complete: First DTP dose from the primary series was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1
*/
define &quot;First DTP dose from the primary series was administered&quot;:
  Encounter.&quot;One DTP primary series dose was administered&quot;



/*
@output: DTP dose 2 (delayed start)
@description: Provision of DTP dose 2 with a delayed start
@trigger: First DTP dose from the primary series was administered
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1
@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;
*/
define &quot;DTP dose 2 (delayed start)&quot;:
  &quot;First DTP dose from the primary series was administered&quot; and
  not &quot;Second DTP dose from the primary series was administered&quot;


/*
@output: DTP dose 2 (delayed start) Create
@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.

If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.

Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.
*/
define &quot;DTP dose 2 (delayed start) Create&quot;:
  if &quot;DTP dose 2 (delayed start)&quot;
  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.
If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.
Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '
Due Date: ' + ToString(&quot;DTP dose 2 (delayed start) Due Date&quot;)
  else ''


/*
@dynamicValue: DTP dose 2 (delayed start) Due Date
@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 4 weeks
*/
define &quot;DTP dose 2 (delayed start) Due Date&quot;:
  if &quot;DTP dose 2 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 4 weeks
  else null


/*
@dynamicValue: DTP dose 2 (delayed start) Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date.
*/
define &quot;DTP dose 2 (delayed start) Overdue&quot;:
  null


/*
@dynamicValue: DTP dose 2 (delayed start) Expiration
@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.
*/
define &quot;DTP dose 2 (delayed start) Expiration&quot;:
  null

  
/*
@complete: Second DTP dose from the primary series was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2
*/
define &quot;Second DTP dose from the primary series was administered&quot;:
  Encounter.&quot;Two DTP primary series doses were administered&quot;



/*
@output: DTP dose 3 (delayed start)
@description: Provision of DTP dose 3 with a delayed start
@trigger: Second DTP dose from the primary series was administered
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2
@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;
*/
define &quot;DTP dose 3 (delayed start)&quot;:
  &quot;Second DTP dose from the primary series was administered&quot; and
  not &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot;


/*
@output: DTP dose 3 (delayed start) Create
@create: For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.

If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.

Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.
*/
define &quot;DTP dose 3 (delayed start) Create&quot;:
  if &quot;DTP dose 3 (delayed start)&quot;
  then 'For children whose vaccination series has been interrupted, the series should be resumed without repeating previous doses. Children aged 1 year to under 7 years who have not previously been vaccinated should receive 3 doses of vaccine following a 0, 1, 6 month schedule.
If tetanus vaccination is started during adolescence or adulthood, a total of only 5 appropriately spaced doses are required to obtain lifelong protection.
Pregnant women and their newborn infants are protected from birth-associated tetanus if the mother received 5 doses if first vaccinated during adolescence/adulthood.' + '
Due Date: ' + ToString(&quot;DTP dose 3 (delayed start) Due Date&quot;)
  else ''


/*
@dynamicValue: DTP dose 3 (delayed start) Due Date
@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 6 months
*/
define &quot;DTP dose 3 (delayed start) Due Date&quot;:
  if &quot;DTP dose 3 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 6 months
  else null


/*
@dynamicValue: DTP dose 3 (delayed start) Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date.
*/
define &quot;DTP dose 3 (delayed start) Overdue&quot;:
  null


/*
@dynamicValue: DTP dose 3 (delayed start) Expiration
@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.
*/
define &quot;DTP dose 3 (delayed start) Expiration&quot;:
  null

  
/*
@complete: Third DTP dose from the primary series was administered. The primary DTP series has been completed
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 3
&quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;)
*/
define &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot;:
  Encounter.&quot;Three DTP primary series doses were administered&quot;



/*
@output: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)
@description: Provision of tetanus and diphtheria booster dose 1
@trigger: The primary DTP series has been completed
@pseudo: &quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;)
@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;:
  &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot; and
  Encounter.&quot;No tetanus and diphtheria booster doses were administered&quot;


/*
@output: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create
@create: Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create&quot;:
  if &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;
  then 'Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.' + '
Due Date: ' + ToString(&quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date&quot;)
  else ''


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date
@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) + 1 year
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date&quot;:
  if &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; then Encounter.&quot;Date of Latest DTP Dose&quot; + 1 year
  else null


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue&quot;:
  null


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration
@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration&quot;:
  null

  
/*
@complete: First tetanus and diphtheria booster dose was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1
*/
define &quot;First tetanus and diphtheria booster dose was administered&quot;:
  Encounter.&quot;One tetanus and diphtheria booster dose was administered&quot;



/*
@output: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)
@description: Provision of tetanus and diphtheria booster dose 2
@trigger: First tetanus and diphtheria booster dose was administered
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1
@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;)
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot;:
  &quot;First tetanus and diphtheria booster dose was administered&quot; and
  not &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot;


/*
@output: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create
@create: Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create&quot;:
  if &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot;
  then 'Two subsequent booster doses using tetanus toxoid with reduced diphteria toxoid (Td) or Td with acellular pertussis (TdaP) combination vaccines are needed with an interval of at least 1 year between doses.' + '
Due Date: ' + ToString(&quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date&quot;)
  else ''


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date
@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;) + 1 year
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date&quot;:
  if &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; then Encounter.&quot;Date of Latest Td Dose&quot; + 1 year
  else null


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue&quot;:
  null


/*
@dynamicValue: Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration
@pseudocode: To be determined by Member States. However, there is no recommended expiration date and individuals remain eligible to be vaccinated.
*/
define &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration&quot;:
  null

  
/*
@complete: Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 2
&quot;Immunization recommendation status&quot; = &quot;Complete&quot; (where &quot;Vaccine type&quot; = &quot;Tetanus and diphtheria-containing vaccines&quot;)
*/
define &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot;:
  Encounter.&quot;Two tetanus and diphtheria booster doses were administered&quot;



/*
@output: Pertussis-containing vaccine booster dose 1 (delayed start)
@description: Provision of the pertussis-containing booster dose 1
@trigger: The primary DTP series has been completed and client's age is between 1 year and 6 years
@pseudo: &quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;) AND 1 year ≤ Today's date − &quot;Date of birth&quot; ≤ 6 years
@triggerDate: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;DTP-containing vaccines&quot;)
*/
define &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;:
  &quot;Third DTP dose from the primary series was administered. The primary DTP series has been completed&quot; and
  Encounter.&quot;Client's age is between 1 year and 6 years&quot; and
  &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot; after day of Today and
  not &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot;


/*
@output: Pertussis-containing vaccine booster dose 1 (delayed start) Create
@create: A booster dose is recommended for children aged 1–6 years, preferably during the second year of life (≥ 6 months after last primary dose).
*/
define &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Create&quot;:
  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
  then 'A booster dose is recommended for children aged 1–6 years, preferably during the second year of life (≥ 6 months after last primary dose).' + '
Due Date: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Due Date&quot;) + '
Overdue: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Overdue&quot;) + '
Expiration: ' + ToString(&quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot;)
  else ''


/*
@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Due Date
@pseudocode: Latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot;) + 6 months
*/
define &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Due Date&quot;:
  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; then Encounter.&quot;Date of Latest Pertussis Dose&quot; + 6 months
  else null


/*
@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Overdue
@pseudocode: &quot;Date of birth&quot; + 7 years
*/
define &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Overdue&quot;:
  if &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; then Patient.birthDate + 7 years
  else null


/*
@dynamicValue: Pertussis-containing vaccine booster dose 1 (delayed start) Expiration
@pseudocode: &quot;Date of birth&quot; + 7 years
*/
define &quot;Pertussis-containing vaccine booster dose 1 (delayed start) Expiration&quot;:
  Patient.birthDate + 7 years

  
/*
@complete: Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1
&quot;Immunization recommendation status&quot; = &quot;Complete&quot; (where &quot;Vaccine type&quot; = &quot;Pertussis-containing vaccines&quot;)
*/
define &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot;:
  Encounter.&quot;One pertussis booster dose was administered&quot;



/*
@test: Test expected results based on example patients
*/
define &quot;Test Validation&quot;:
  case
    when Patient.id = 'DTP33.2' then &quot;DTP dose 1 (delayed start)&quot;
    when Patient.id = 'DTP34.2' then &quot;DTP dose 2 (delayed start)&quot;
    when Patient.id = 'DTP35.2' then &quot;DTP dose 2 (delayed start)&quot;
    when Patient.id = 'DTP36.2' then &quot;DTP dose 3 (delayed start)&quot;
    when Patient.id = 'DTP37.2' then &quot;DTP dose 3 (delayed start)&quot;
    when Patient.id = 'DTP38.3' then &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP39.3' then &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP40.3' then &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP41.3' then &quot;Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP42.2' then &quot;Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed&quot; and &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP43.4' then &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP44.4' then &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP45.3' then not &quot;Pertussis-containing vaccine booster dose 1 (delayed start)&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;
    when Patient.id = 'DTP46.2' then &quot;Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed&quot; and &quot;Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)&quot;
    else 'No test case set'
  end
</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 (178176 characters)</code></pre></td></tr>
            </table>
          </td>
        </tr>
        
        
    </table>
</div>
</div>
  </text>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability">
    <valueCode value="computable"/>
  </extension>
  <url
       value="http://smart.who.int/immunizations/Library/IMMZD18SDTPDelayedOrInterruptedSeriesLogic"/>
  <version value="0.2.0"/>
  <name value="IMMZD18SDTPDelayedOrInterruptedSeriesLogic"/>
  <title value="IMMZD18SDTPDelayedOrInterruptedSeriesLogic"/>
  <status value="draft"/>
  <experimental value="false"/>
  <type>
    <coding>
      <system value="http://terminology.hl7.org/CodeSystem/library-type"/>
      <code value="logic-library"/>
    </coding>
  </type>
  <date value="2026-03-03T13:07:11+00:00"/>
  <publisher value="WHO"/>
  <contact>
    <name value="WHO"/>
    <telecom>
      <system value="url"/>
      <value value="http://who.int"/>
    </telecom>
  </contact>
  <description
               value="This library defines decision support logic for the IMMZ.D18.S.DTP.Delayed or interrupted schedule table in the Immunization CPG"/>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library WC"/>
    <resource value="http://smart.who.int/immunizations/Library/WHOCommon"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Common"/>
    <resource value="http://smart.who.int/immunizations/Library/IMMZCommon"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Concepts"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZConcepts"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library IE"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZEncounterElements"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Encounter"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZD2DTDTPEncounterElements"/>
  </relatedArtifact>
  <parameter>
    <name value="Today"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Patient"/>
  </parameter>
  <parameter>
    <name value="DTP dose 1 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="DTP dose 1 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="DTP dose 1 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="DTP dose 1 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="DTP dose 1 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="First DTP dose from the primary series was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Second DTP dose from the primary series was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="DTP dose 2 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="DTP dose 2 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="DTP dose 2 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="DTP dose 2 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="DTP dose 2 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Third DTP dose from the primary series was administered. The primary DTP series has been completed"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="DTP dose 3 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="DTP dose 3 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="DTP dose 3 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="DTP dose 3 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="DTP dose 3 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 1 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="First tetanus and diphtheria booster dose was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Second tetanus and diphtheria booster dose was administered. Tetanus and diphtheria immunization schedule has been completed"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Tetanus and diphtheria-containing vaccine booster dose 2 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing vaccine booster dose 1 (delayed start) Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing booster dose was administered. Pertussis immunization schedule has been completed"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing vaccine booster dose 1 (delayed start)"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing vaccine booster dose 1 (delayed start) Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing vaccine booster dose 1 (delayed start) Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name
          value="Pertussis-containing vaccine booster dose 1 (delayed start) Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Test Validation"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <content>
    <contentType value="text/cql"/>
    <data
          value="LyoKICogTGlicmFyeTogSU1NWkQxOFNEVFBEZWxheWVkT3JJbnRlcnJ1cHRlZFNlcmllc0xvZ2ljIChJTU1aLkQxOC5TLkRUUC5EZWxheWVkIG9yIGludGVycnVwdGVkIHNjaGVkdWxlKQogKiBTY2hlZHVsZSBUYWJsZTogRGlwaHRoZXJpYeKAk3RldGFudXPigJNwZXJ0dXNzaXMgKERUUCkgdmFjY2luYXRpb24gc2NoZWR1bGUgZm9yIHRoZSBmb2xsb3dpbmcgZ3JvdXBzOiBjaGlsZHJlbiDiiaUgMSB5ZWFyIG9mIGFnZSB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiwgYWRvbGVzY2VudHMgYW5kIGFkdWx0cyB3aXRoIG5vIHByZXZpb3VzIGltbXVuaXphdGlvbiAoaW5jbHVkaW5nIHByZWduYW50IHdvbWVuKSBhbmQgc3VwcGxlbWVudGFyeSBpbW11bml6YXRpb24gYWN0aXZpdGllcyBpbiBoaWdoLXJpc2sgYXJlYXMsIGZvciB3b21lbiBvZiByZXByb2R1Y3RpdmUgYWdlCiAqLwpsaWJyYXJ5IElNTVpEMThTRFRQRGVsYXllZE9ySW50ZXJydXB0ZWRTZXJpZXNMb2dpYwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29tbW9uIGNhbGxlZCBXQwoKaW5jbHVkZSBJTU1aQ29tbW9uIGNhbGxlZCBDb21tb24KaW5jbHVkZSBJTU1aQ29uY2VwdHMgY2FsbGVkIENvbmNlcHRzCgppbmNsdWRlIElNTVpFbmNvdW50ZXJFbGVtZW50cyBjYWxsZWQgSUUKaW5jbHVkZSBJTU1aRDJEVERUUEVuY291bnRlckVsZW1lbnRzIGNhbGxlZCBFbmNvdW50ZXIKCnBhcmFtZXRlciBUb2RheSBEYXRlIGRlZmF1bHQgVG9kYXkoKQoKCmNvbnRleHQgUGF0aWVudAoKCi8qCkBvdXRwdXQ6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIERUUCBkb3NlIDEgd2l0aCBhIGRlbGF5ZWQgc3RhcnQKQHRyaWdnZXI6IE5vIERUUCBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpID0gMCBBTkQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPiAxIHllYXIKQHRyaWdnZXJEYXRlOiBEYXRlIG9mIGJpcnRoCiovCmRlZmluZSAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiOgogIEVuY291bnRlci4iTm8gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIgogIGFuZCBFbmNvdW50ZXIuIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gMSB5ZWFyIgoKCi8qCkBvdXRwdXQ6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiOgogIGlmICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICB0aGVuICdGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKQogIGVsc2UgJycKCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogQXMgc29vbiBhcyBwb3NzaWJsZQoqLwpkZWZpbmUgIkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHRoZW4gUGF0aWVudC5iaXJ0aERhdGUgKyAxIHllYXIKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4KKi8KZGVmaW5lICJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgIkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iOgogIG51bGwKCiAgCi8qCkBjb21wbGV0ZTogRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAxCiovCmRlZmluZSAiRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCI6CiAgRW5jb3VudGVyLiJPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCgoKLyoKQG91dHB1dDogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgRFRQIGRvc2UgMiB3aXRoIGEgZGVsYXllZCBzdGFydApAdHJpZ2dlcjogRmlyc3QgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQHRyaWdnZXJEYXRlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIKKi8KZGVmaW5lICJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSI6CiAgIkZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiIGFuZAogIG5vdCAiU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiCgoKLyoKQG91dHB1dDogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLgoqLwpkZWZpbmUgIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSI6CiAgaWYgIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIgogIHRoZW4gJ0ZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgpJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4nICsgJwpEdWUgRGF0ZTogJyArIFRvU3RyaW5nKCJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIpCiAgZWxzZSAnJwoKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpICsgNCB3ZWVrcwoqLwpkZWZpbmUgIkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgKyA0IHdlZWtzCiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSI6CiAgbnVsbAoKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBudWxsCgogIAovKgpAY29tcGxldGU6IFNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKKi8KZGVmaW5lICJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCI6CiAgRW5jb3VudGVyLiJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIgoKCgovKgpAb3V0cHV0OiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiBEVFAgZG9zZSAzIHdpdGggYSBkZWxheWVkIHN0YXJ0CkB0cmlnZ2VyOiBTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDIKQHRyaWdnZXJEYXRlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIKKi8KZGVmaW5lICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSI6CiAgIlNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiBhbmQKICBub3QgIlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIgoKCi8qCkBvdXRwdXQ6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiOgogIGlmICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIKICB0aGVuICdGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKQogIGVsc2UgJycKCgovKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKSArIDYgbW9udGhzCiovCmRlZmluZSAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiOgogIGlmICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBFbmNvdW50ZXIuIkRhdGUgb2YgTGF0ZXN0IERUUCBEb3NlIiArIDYgbW9udGhzCiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSI6CiAgbnVsbAoKCi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBudWxsCgogIAovKgpAY29tcGxldGU6IFRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDMKIkNvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMiID0gVFJVRSAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiRFRQLWNvbnRhaW5pbmcgdmFjY2luZXMiKQoqLwpkZWZpbmUgIlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIjoKICBFbmNvdW50ZXIuIlRocmVlIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDEKQHRyaWdnZXI6IFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG86ICJDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzIiA9IFRSVUUgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikKQHRyaWdnZXJEYXRlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIKKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiOgogICJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgYW5kCiAgRW5jb3VudGVyLiJObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiCgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICB0aGVuICdUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIikKICBlbHNlICcnCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpICsgMSB5ZWFyCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIjoKICBpZiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB0aGVuIEVuY291bnRlci4iRGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UiICsgMSB5ZWFyCiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiI6CiAgbnVsbAoKICAKLyoKQGNvbXBsZXRlOiBGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMQoqLwpkZWZpbmUgIkZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogIEVuY291bnRlci4iT25lIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiCgoKCi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSAyCkB0cmlnZ2VyOiBGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG86IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzIikKKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiOgogICJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBhbmQKICBub3QgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiCgoKLyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuCiovCmRlZmluZSAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIKICB0aGVuICdUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIikKICBlbHNlICcnCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiKSArIDEgeWVhcgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSI6CiAgaWYgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgdGhlbiBFbmNvdW50ZXIuIkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiICsgMSB5ZWFyCiAgZWxzZSBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIjoKICBudWxsCgoKLyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiI6CiAgbnVsbAoKICAKLyoKQGNvbXBsZXRlOiBTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIkJvb3N0ZXIgZG9zZSIpID0gMgoiSW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9uIHN0YXR1cyIgPSAiQ29tcGxldGUiICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMiKQoqLwpkZWZpbmUgIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiOgogIEVuY291bnRlci4iVHdvIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCgoKLyoKQG91dHB1dDogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGhlIHBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSAxCkB0cmlnZ2VyOiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCBhbmQgY2xpZW50J3MgYWdlIGlzIGJldHdlZW4gMSB5ZWFyIGFuZCA2IHllYXJzCkBwc2V1ZG86ICJDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzIiA9IFRSVUUgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkRUUC1jb250YWluaW5nIHZhY2NpbmVzIikgQU5EIDEgeWVhciDiiaQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omkIDYgeWVhcnMKQHRyaWdnZXJEYXRlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJEVFAtY29udGFpbmluZyB2YWNjaW5lcyIpCiovCmRlZmluZSAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiOgogICJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgYW5kCiAgRW5jb3VudGVyLiJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMiIGFuZAogICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBhZnRlciBkYXkgb2YgVG9kYXkgYW5kCiAgbm90ICJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiCgoKLyoKQG91dHB1dDogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEEgYm9vc3RlciBkb3NlIGlzIHJlY29tbWVuZGVkIGZvciBjaGlsZHJlbiBhZ2VkIDHigJM2IHllYXJzLCBwcmVmZXJhYmx5IGR1cmluZyB0aGUgc2Vjb25kIHllYXIgb2YgbGlmZSAo4omlIDYgbW9udGhzIGFmdGVyIGxhc3QgcHJpbWFyeSBkb3NlKS4KKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiOgogIGlmICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICB0aGVuICdBIGJvb3N0ZXIgZG9zZSBpcyByZWNvbW1lbmRlZCBmb3IgY2hpbGRyZW4gYWdlZCAx4oCTNiB5ZWFycywgcHJlZmVyYWJseSBkdXJpbmcgdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgKOKJpSA2IG1vbnRocyBhZnRlciBsYXN0IHByaW1hcnkgZG9zZSkuJyArICcKRHVlIERhdGU6ICcgKyBUb1N0cmluZygiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiKSArICcKT3ZlcmR1ZTogJyArIFRvU3RyaW5nKCJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIikgKyAnCkV4cGlyYXRpb246ICcgKyBUb1N0cmluZygiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIpCiAgZWxzZSAnJwoKCi8qCkBkeW5hbWljVmFsdWU6IFBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyIpICsgNiBtb250aHMKKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSI6CiAgaWYgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB0aGVuIEVuY291bnRlci4iRGF0ZSBvZiBMYXRlc3QgUGVydHVzc2lzIERvc2UiICsgNiBtb250aHMKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiAiRGF0ZSBvZiBiaXJ0aCIgKyA3IHllYXJzCiovCmRlZmluZSAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSI6CiAgaWYgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB0aGVuIFBhdGllbnQuYmlydGhEYXRlICsgNyB5ZWFycwogIGVsc2UgbnVsbAoKCi8qCkBkeW5hbWljVmFsdWU6IFBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6ICJEYXRlIG9mIGJpcnRoIiArIDcgeWVhcnMKKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIjoKICBQYXRpZW50LmJpcnRoRGF0ZSArIDcgeWVhcnMKCiAgCi8qCkBjb21wbGV0ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFBlcnR1c3NpcyBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCiJJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzIiA9ICJDb21wbGV0ZSIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmVzIikKKi8KZGVmaW5lICJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiOgogIEVuY291bnRlci4iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCgoKLyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAiVGVzdCBWYWxpZGF0aW9uIjoKICBjYXNlCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzMuMicgdGhlbiAiRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzQuMicgdGhlbiAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzUuMicgdGhlbiAiRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzYuMicgdGhlbiAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzcuMicgdGhlbiAiRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQMzguMycgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDM5LjMnIHRoZW4gIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgYW5kICJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICAgIHdoZW4gUGF0aWVudC5pZCA9ICdEVFA0MC4zJyB0aGVuICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIGFuZCAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQNDEuMycgdGhlbiAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDQyLjInIHRoZW4gIlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIGFuZCAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnRFRQNDMuNCcgdGhlbiAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIGFuZCAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDQ0LjQnIHRoZW4gIlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBhbmQgIlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIKICAgIHdoZW4gUGF0aWVudC5pZCA9ICdEVFA0NS4zJyB0aGVuIG5vdCAiUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIGFuZCAiVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIgogICAgd2hlbiBQYXRpZW50LmlkID0gJ0RUUDQ2LjInIHRoZW4gIlBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIgYW5kICJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiCiAgICBlbHNlICdObyB0ZXN0IGNhc2Ugc2V0JwogIGVuZAo="/>
  </content>
  <content>
    <contentType value="application/elm+xml"/>
    <data
          value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNjM5Ij4KICAgICAgICAgPGE6cz4vKgogKiBMaWJyYXJ5OiBJTU1aRDE4U0RUUERlbGF5ZWRPckludGVycnVwdGVkU2VyaWVzTG9naWMgKElNTVouRDE4LlMuRFRQLkRlbGF5ZWQgb3IgaW50ZXJydXB0ZWQgc2NoZWR1bGUpCiAqIFNjaGVkdWxlIFRhYmxlOiBEaXBodGhlcmlh4oCTdGV0YW51c+KAk3BlcnR1c3NpcyAoRFRQKSB2YWNjaW5hdGlvbiBzY2hlZHVsZSBmb3IgdGhlIGZvbGxvd2luZyBncm91cHM6IGNoaWxkcmVuIOKJpSAxIHllYXIgb2YgYWdlIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uLCBhZG9sZXNjZW50cyBhbmQgYWR1bHRzIHdpdGggbm8gcHJldmlvdXMgaW1tdW5pemF0aW9uIChpbmNsdWRpbmcgcHJlZ25hbnQgd29tZW4pIGFuZCBzdXBwbGVtZW50YXJ5IGltbXVuaXphdGlvbiBhY3Rpdml0aWVzIGluIGhpZ2gtcmlzayBhcmVhcywgZm9yIHdvbWVuIG9mIHJlcHJvZHVjdGl2ZSBhZ2UKICovCmxpYnJhcnkgSU1NWkQxOFNEVFBEZWxheWVkT3JJbnRlcnJ1cHRlZFNlcmllc0xvZ2ljPC9hOnM+CiAgICAgIDwvYTpzPgogICA8L2Fubm90YXRpb24+CiAgIDxpZGVudGlmaWVyIGlkPSJJTU1aRDE4U0RUUERlbGF5ZWRPckludGVycnVwdGVkU2VyaWVzTG9naWMiIHN5c3RlbT0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucyIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIgdmVyc2lvbj0iMS4wLjAiLz4KICAgICAgPGRlZiBsb2NhbElkPSIyMDYiIGxvY2F0b3I9Ijc6MS03OjI2IiBsb2NhbElkZW50aWZpZXI9IkZISVIiIHVyaT0iaHR0cDovL2hsNy5vcmcvZmhpciIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDYiPgogICAgICAgICAgICAgICA8YTpzPnVzaW5nIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC91c2luZ3M+CiAgIDxpbmNsdWRlcz4KICAgICAgPGRlZiBsb2NhbElkPSIyMDgiIGxvY2F0b3I9Ijg6MS04OjM1IiBsb2NhbElkZW50aWZpZXI9IkZISVJIZWxwZXJzIiBwYXRoPSJodHRwOi8vaGw3Lm9yZy9maGlyL0ZISVJIZWxwZXJzIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSSGVscGVyczwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMCIgbG9jYXRvcj0iMTA6MS0xMDoyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEyIiBsb2NhdG9yPSIxMjoxLTEyOjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxMzoxLTEzOjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTYiIGxvY2F0b3I9IjE1OjEtMTU6MzkiIGxvY2FsSWRlbnRpZmllcj0iSUUiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkVuY291bnRlckVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpFbmNvdW50ZXJFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIElFPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iMTY6MS0xNjo1MyIgbG9jYWxJZGVudGlmaWVyPSJFbmNvdW50ZXIiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkQyRFREVFBFbmNvdW50ZXJFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRDJEVERUUEVuY291bnRlckVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgRW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjE4OjEtMTg6MzYiIG5hbWU9IlRvZGF5IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjIwIj4KICAgICAgICAgICAgICAgPGE6cz5wYXJhbWV0ZXIgVG9kYXkgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjI0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5EYXRlPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBkZWZhdWx0IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyMyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+VG9kYXkoKTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGRlZmF1bHQgbG9jYWxJZD0iMjIzIiBsb2NhdG9yPSIxODozMC0xODozNiIgeHNpOnR5cGU9IlRvZGF5Ii8+CiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjIyNCIgbG9jYXRvcj0iMTg6MTctMTg6MjAiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI5IiBsb2NhdG9yPSIyMToxLTIxOjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyNyIgbG9jYXRvcj0iMjE6MS0yMToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyOCIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjYiIGxvY2F0b3I9IjIxOjEtMjE6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzIiIGxvY2F0b3I9IjMxOjEtMzM6NTAiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiBEVFAgZG9zZSAxIHdpdGggYSBkZWxheWVkIHN0YXJ0Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9Ik5vIERUUCBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG8iIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgPSAwIEFORCBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgPiAxIHllYXIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IkRhdGUgb2YgYmlydGgiLz4KICAgICAgICAgICAgPGE6cyByPSIyMzIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIERUUCBkb3NlIDEgd2l0aCBhIGRlbGF5ZWQgc3RhcnQKQHRyaWdnZXI6IE5vIERUUCBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiAxIHllYXIKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgPSAwIEFORCBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgPiAxIHllYXIKQHRyaWdnZXJEYXRlOiBEYXRlIG9mIGJpcnRoCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMzMiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Tm8gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDEgeWVhciZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMzMiIGxvY2F0b3I9IjMyOjMtMzM6NTAiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzUiIGxvY2F0b3I9IjMyOjMtMzI6NTkiIG5hbWU9Ik5vIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjM3IiBsb2NhdG9yPSIzMzo3LTMzOjUwIiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDEgeWVhciIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTQiIGxvY2F0b3I9IjU3OjEtNTk6MTEiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iQXMgc29vbiBhcyBwb3NzaWJsZSIvPgogICAgICAgICAgICA8YTpzIHI9IjI1NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IEFzIHNvb24gYXMgcG9zc2libGUKKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1NSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmJpcnRoRGF0ZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4xIHllYXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNTUiIGxvY2F0b3I9IjU4OjMtNTk6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMjU2IiBsb2NhdG9yPSI1ODo2LTU4OjMzIiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMjU3IiBsb2NhdG9yPSI1ODo0MC01ODo2NSIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjYyIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNjMiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjYxIiBuYW1lPSJUb0RhdGUiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI1ODo0MC01ODo1NiIgcGF0aD0iYmlydGhEYXRlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI1OCIgbG9jYXRvcj0iNTg6NDAtNTg6NDYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjAiIGxvY2F0b3I9IjU4OjYwLTU4OjY1IiB2YWx1ZT0iMSIgdW5pdD0ieWVhciIgeHNpOnR5cGU9IlF1YW50aXR5Ii8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iMjY1IiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY0IiBsb2NhdG9yPSI1OTo4LTU5OjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQwIiBsb2NhdG9yPSI0NDoxLTUwOjkiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNyZWF0ZSIgdmFsdWU9IkZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLiYjeGE7JiN4YTtJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLiYjeGE7JiN4YTtQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4iLz4KICAgICAgICAgICAgPGE6cyByPSIyNDAiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDEiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCkR1ZSBEYXRlOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvU3RyaW5nKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgZWxzZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPicnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQxIiBsb2NhdG9yPSI0NTozLTUwOjkiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iMjQyIiBsb2NhdG9yPSI0NTo2LTQ1OjMzIiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMjc0IiBsb2NhdG9yPSI0Njo4LTQ5OjYxIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTEiIGxvY2F0b3I9IjQ2OjgtNDg6MTgyIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDUiIGxvY2F0b3I9IjQ2OjgtNDY6NjAxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTtJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLiYjeGE7UHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDciIGxvY2F0b3I9IjQ4OjE3MC00ODoxODIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0R1ZSBEYXRlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjcwIiBsb2NhdG9yPSI0OToxNS00OTo2MSIgeHNpOnR5cGU9IlRvU3RyaW5nIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNzEiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNjYiIGxvY2F0b3I9IjQ5OjI0LTQ5OjYwIiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjI3NSIgbG9jYXRvcj0iNTA6OC01MDo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI3OSIgbG9jYXRvcj0iNjY6MS02Nzo2IiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4iLz4KICAgICAgICAgICAgPGE6cyByPSIyNzkiPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4MCI+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlJnF1b3Q7OgogIG51bGw8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjgwIiBsb2NhdG9yPSI2NzozLTY3OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI4MyIgbG9jYXRvcj0iNzQ6MS03NTo2IiBuYW1lPSJEVFAgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgPGE6cyByPSIyODQiPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24mcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyODQiIGxvY2F0b3I9Ijc1OjMtNzU6NiIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg3IiBsb2NhdG9yPSI4MjoxLTgzOjU4IiBuYW1lPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IEZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEKKi8KZGVmaW5lICZxdW90O0ZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtPbmUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4OSIgbG9jYXRvcj0iODM6My04Mzo1OCIgbmFtZT0iT25lIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI5OCIgbG9jYXRvcj0iMTQ1OjEtMTQ2OjYwIiBuYW1lPSJTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6cyByPSIyOTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBjb21wbGV0ZTogU2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIKKi8KZGVmaW5lICZxdW90O1NlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwMCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VHdvIERUUCBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMwMCIgbG9jYXRvcj0iMTQ2OjMtMTQ2OjYwIiBuYW1lPSJUd28gRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyOTIiIGxvY2F0b3I9Ijk0OjEtOTY6NjQiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiBEVFAgZG9zZSAyIHdpdGggYSBkZWxheWVkIHN0YXJ0Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IkZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG8iIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXJEYXRlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsiLz4KICAgICAgICAgICAgPGE6cyByPSIyOTIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIERUUCBkb3NlIDIgd2l0aCBhIGRlbGF5ZWQgc3RhcnQKQHRyaWdnZXI6IEZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjkzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0ZpcnN0IERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZAogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwMSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7U2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjkzIiBsb2NhdG9yPSI5NTozLTk2OjY0IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjk0IiBsb2NhdG9yPSI5NTozLTk1OjU5IiBuYW1lPSJGaXJzdCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyOTUiIGxvY2F0b3I9Ijk2OjMtOTY6NjQiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDEiIGxvY2F0b3I9Ijk2OjctOTY6NjQiIG5hbWU9IlNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzE4IiBsb2NhdG9yPSIxMjA6MS0xMjI6MTEiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTpzIHI9IjMxOCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA0IHdlZWtzCiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTkiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IERUUCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjQgd2Vla3M8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyNyI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTkiIGxvY2F0b3I9IjEyMTozLTEyMjoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIzMjAiIGxvY2F0b3I9IjEyMTo2LTEyMTozMyIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjMyMSIgbG9jYXRvcj0iMTIxOjQwLTEyMTo4NCIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzI1IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjYiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIzIiBsb2NhdG9yPSIxMjE6NDAtMTIxOjc0IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI0IiBsb2NhdG9yPSIxMjE6NzgtMTIxOjg0IiB2YWx1ZT0iNCIgdW5pdD0id2Vla3MiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjMyOCIgYXNUeXBlPSJ0OkRhdGUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNyIgbG9jYXRvcj0iMTIyOjgtMTIyOjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzA0IiBsb2NhdG9yPSIxMDc6MS0xMTM6OSIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTsmI3hhO0lmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uJiN4YTsmI3hhO1ByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLiIvPgogICAgICAgICAgICA8YTpzIHI9IjMwNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLgoKSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwNSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzE1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KSWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4KUHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMDUiIGxvY2F0b3I9IjEwODozLTExMzo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjMwNiIgbG9jYXRvcj0iMTA4OjYtMTA4OjMzIiBuYW1lPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMzM3IiBsb2NhdG9yPSIxMDk6OC0xMTI6NjEiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxNSIgbG9jYXRvcj0iMTA5OjgtMTExOjE4MiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA5IiBsb2NhdG9yPSIxMDk6OC0xMDk6NjAxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuJiN4YTtJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLiYjeGE7UHJlZ25hbnQgd29tZW4gYW5kIHRoZWlyIG5ld2Jvcm4gaW5mYW50cyBhcmUgcHJvdGVjdGVkIGZyb20gYmlydGgtYXNzb2NpYXRlZCB0ZXRhbnVzIGlmIHRoZSBtb3RoZXIgcmVjZWl2ZWQgNSBkb3NlcyBpZiBmaXJzdCB2YWNjaW5hdGVkIGR1cmluZyBhZG9sZXNjZW5jZS9hZHVsdGhvb2QuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTEiIGxvY2F0b3I9IjExMToxNzAtMTExOjE4MiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzMiIGxvY2F0b3I9IjExMjoxNS0xMTI6NjEiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzM0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI5IiBsb2NhdG9yPSIxMTI6MjQtMTEyOjYwIiBuYW1lPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjMzOCIgbG9jYXRvcj0iMTEzOjgtMTEzOjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzQyIiBsb2NhdG9yPSIxMjk6MS0xMzA6NiIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQyIj4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDMiPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM0MyIgbG9jYXRvcj0iMTMwOjMtMTMwOjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0NiIgbG9jYXRvcj0iMTM3OjEtMTM4OjYiIG5hbWU9IkRUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSIzNDYiPgogICAgICAgICAgICAgICA8YTpzIHI9IjM0NyI+LyoKQGR5bmFtaWNWYWx1ZTogRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgJnF1b3Q7RFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM0NyIgbG9jYXRvcj0iMTM4OjMtMTM4OjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM1NiIgbG9jYXRvcj0iMjA5OjEtMjEwOjYyIiBuYW1lPSJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iVGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMiLz4KICAgICAgICAgICAgPGE6cyByPSIzNTYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBjb21wbGV0ZTogVGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMKJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyA9IFRSVUUgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KQoqLwpkZWZpbmUgJnF1b3Q7VGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzU4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaHJlZSBEVFAgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNTgiIGxvY2F0b3I9IjIxMDozLTIxMDo2MiIgbmFtZT0iVGhyZWUgRFRQIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNTAiIGxvY2F0b3I9IjE1NzoxLTE1OToxMDYiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZXNjcmlwdGlvbiIgdmFsdWU9IlByb3Zpc2lvbiBvZiBEVFAgZG9zZSAzIHdpdGggYSBkZWxheWVkIHN0YXJ0Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IlNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMzUwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiBEVFAgZG9zZSAzIHdpdGggYSBkZWxheWVkIHN0YXJ0CkB0cmlnZ2VyOiBTZWNvbmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7CiovCmRlZmluZSAmcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNTEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7U2Vjb25kIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZAogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhpcmQgRFRQIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZC4gVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzUxIiBsb2NhdG9yPSIxNTg6My0xNTk6MTA2IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzUyIiBsb2NhdG9yPSIxNTg6My0xNTg6NjAiIG5hbWU9IlNlY29uZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTMiIGxvY2F0b3I9IjE1OTozLTE1OToxMDYiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTkiIGxvY2F0b3I9IjE1OTo3LTE1OToxMDYiIG5hbWU9IlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzc2IiBsb2NhdG9yPSIxODM6MS0xODU6MTEiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgNiBtb250aHMiLz4KICAgICAgICAgICAgPGE6cyByPSIzNzYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgNiBtb250aHMKKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3NyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzgwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgRFRQIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4MiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+NiBtb250aHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4NSI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzNzciIGxvY2F0b3I9IjE4NDozLTE4NToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIzNzgiIGxvY2F0b3I9IjE4NDo2LTE4NDozMyIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjM3OSIgbG9jYXRvcj0iMTg0OjQwLTE4NDo4NSIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzgzIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzODQiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzgxIiBsb2NhdG9yPSIxODQ6NDAtMTg0Ojc0IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzgyIiBsb2NhdG9yPSIxODQ6NzgtMTg0Ojg1IiB2YWx1ZT0iNiIgdW5pdD0ibW9udGhzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIzODYiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzODUiIGxvY2F0b3I9IjE4NTo4LTE4NToxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM2MiIgbG9jYXRvcj0iMTcwOjEtMTc2OjkiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNyZWF0ZSIgdmFsdWU9IkZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLiYjeGE7JiN4YTtJZiB0ZXRhbnVzIHZhY2NpbmF0aW9uIGlzIHN0YXJ0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlIG9yIGFkdWx0aG9vZCwgYSB0b3RhbCBvZiBvbmx5IDUgYXBwcm9wcmlhdGVseSBzcGFjZWQgZG9zZXMgYXJlIHJlcXVpcmVkIHRvIG9idGFpbiBsaWZlbG9uZyBwcm90ZWN0aW9uLiYjeGE7JiN4YTtQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4iLz4KICAgICAgICAgICAgPGE6cyByPSIzNjIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBGb3IgY2hpbGRyZW4gd2hvc2UgdmFjY2luYXRpb24gc2VyaWVzIGhhcyBiZWVuIGludGVycnVwdGVkLCB0aGUgc2VyaWVzIHNob3VsZCBiZSByZXN1bWVkIHdpdGhvdXQgcmVwZWF0aW5nIHByZXZpb3VzIGRvc2VzLiBDaGlsZHJlbiBhZ2VkIDEgeWVhciB0byB1bmRlciA3IHllYXJzIHdobyBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gdmFjY2luYXRlZCBzaG91bGQgcmVjZWl2ZSAzIGRvc2VzIG9mIHZhY2NpbmUgZm9sbG93aW5nIGEgMCwgMSwgNiBtb250aCBzY2hlZHVsZS4KCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uCgpQcmVnbmFudCB3b21lbiBhbmQgdGhlaXIgbmV3Ym9ybiBpbmZhbnRzIGFyZSBwcm90ZWN0ZWQgZnJvbSBiaXJ0aC1hc3NvY2lhdGVkIHRldGFudXMgaWYgdGhlIG1vdGhlciByZWNlaXZlZCA1IGRvc2VzIGlmIGZpcnN0IHZhY2NpbmF0ZWQgZHVyaW5nIGFkb2xlc2NlbmNlL2FkdWx0aG9vZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNjMiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRm9yIGNoaWxkcmVuIHdob3NlIHZhY2NpbmF0aW9uIHNlcmllcyBoYXMgYmVlbiBpbnRlcnJ1cHRlZCwgdGhlIHNlcmllcyBzaG91bGQgYmUgcmVzdW1lZCB3aXRob3V0IHJlcGVhdGluZyBwcmV2aW91cyBkb3Nlcy4gQ2hpbGRyZW4gYWdlZCAxIHllYXIgdG8gdW5kZXIgNyB5ZWFycyB3aG8gaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHZhY2NpbmF0ZWQgc2hvdWxkIHJlY2VpdmUgMyBkb3NlcyBvZiB2YWNjaW5lIGZvbGxvd2luZyBhIDAsIDEsIDYgbW9udGggc2NoZWR1bGUuCklmIHRldGFudXMgdmFjY2luYXRpb24gaXMgc3RhcnRlZCBkdXJpbmcgYWRvbGVzY2VuY2Ugb3IgYWR1bHRob29kLCBhIHRvdGFsIG9mIG9ubHkgNSBhcHByb3ByaWF0ZWx5IHNwYWNlZCBkb3NlcyBhcmUgcmVxdWlyZWQgdG8gb2J0YWluIGxpZmVsb25nIHByb3RlY3Rpb24uClByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzY5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCkR1ZSBEYXRlOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvU3RyaW5nKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM4NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgZWxzZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPicnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzYzIiBsb2NhdG9yPSIxNzE6My0xNzY6OSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSIzNjQiIGxvY2F0b3I9IjE3MTo2LTE3MTozMyIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjM5NSIgbG9jYXRvcj0iMTcyOjgtMTc1OjYxIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNzMiIGxvY2F0b3I9IjE3Mjo4LTE3NDoxODIiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM2NyIgbG9jYXRvcj0iMTcyOjgtMTcyOjYwMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkZvciBjaGlsZHJlbiB3aG9zZSB2YWNjaW5hdGlvbiBzZXJpZXMgaGFzIGJlZW4gaW50ZXJydXB0ZWQsIHRoZSBzZXJpZXMgc2hvdWxkIGJlIHJlc3VtZWQgd2l0aG91dCByZXBlYXRpbmcgcHJldmlvdXMgZG9zZXMuIENoaWxkcmVuIGFnZWQgMSB5ZWFyIHRvIHVuZGVyIDcgeWVhcnMgd2hvIGhhdmUgbm90IHByZXZpb3VzbHkgYmVlbiB2YWNjaW5hdGVkIHNob3VsZCByZWNlaXZlIDMgZG9zZXMgb2YgdmFjY2luZSBmb2xsb3dpbmcgYSAwLCAxLCA2IG1vbnRoIHNjaGVkdWxlLiYjeGE7SWYgdGV0YW51cyB2YWNjaW5hdGlvbiBpcyBzdGFydGVkIGR1cmluZyBhZG9sZXNjZW5jZSBvciBhZHVsdGhvb2QsIGEgdG90YWwgb2Ygb25seSA1IGFwcHJvcHJpYXRlbHkgc3BhY2VkIGRvc2VzIGFyZSByZXF1aXJlZCB0byBvYnRhaW4gbGlmZWxvbmcgcHJvdGVjdGlvbi4mI3hhO1ByZWduYW50IHdvbWVuIGFuZCB0aGVpciBuZXdib3JuIGluZmFudHMgYXJlIHByb3RlY3RlZCBmcm9tIGJpcnRoLWFzc29jaWF0ZWQgdGV0YW51cyBpZiB0aGUgbW90aGVyIHJlY2VpdmVkIDUgZG9zZXMgaWYgZmlyc3QgdmFjY2luYXRlZCBkdXJpbmcgYWRvbGVzY2VuY2UvYWR1bHRob29kLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzY5IiBsb2NhdG9yPSIxNzQ6MTcwLTE3NDoxODIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO0R1ZSBEYXRlOiAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzkxIiBsb2NhdG9yPSIxNzU6MTUtMTc1OjYxIiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5MiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4NyIgbG9jYXRvcj0iMTc1OjI0LTE3NTo2MCIgbmFtZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSIzOTYiIGxvY2F0b3I9IjE3Njo4LTE3Njo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQwMCIgbG9jYXRvcj0iMTkyOjEtMTkzOjYiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQwMCI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDAxIj4vKgpAZHluYW1pY1ZhbHVlOiBEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MDEiIGxvY2F0b3I9IjE5MzozLTE5Mzo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MDQiIGxvY2F0b3I9IjIwMDoxLTIwMTo2IiBuYW1lPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iRFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXMuIEhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgcmVtYWluIGVsaWdpYmxlIHRvIGJlIHZhY2NpbmF0ZWQuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDA0Ij4KICAgICAgICAgICAgICAgPGE6cyByPSI0MDUiPi8qCkBkeW5hbWljVmFsdWU6IERUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24mcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MDUiIGxvY2F0b3I9IjIwMTozLTIwMTo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MDgiIGxvY2F0b3I9IjIyMToxLTIyMzo3MSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVzY3JpcHRpb24iIHZhbHVlPSJQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXIiIHZhbHVlPSJUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkbyIgdmFsdWU9IiZxdW90O0NvbXBsZXRlZCB0aGUgcHJpbWFyeSB2YWNjaW5hdGlvbiBzZXJpZXMmcXVvdDsgPSBUUlVFICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJ0cmlnZ2VyRGF0ZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iNDA4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkKQGRlc2NyaXB0aW9uOiBQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMQpAdHJpZ2dlcjogVGhlIHByaW1hcnkgRFRQIHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQKQHBzZXVkbzogJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyA9IFRSVUUgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KQpAdHJpZ2dlckRhdGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQwOSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kCiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtObyB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDA5IiBsb2NhdG9yPSIyMjI6My0yMjM6NzEiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTAiIGxvY2F0b3I9IjIyMjozLTIyMjoxMDIiIG5hbWU9IlRoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTIiIGxvY2F0b3I9IjIyMzozLTIyMzo3MSIgbmFtZT0iTm8gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQyOSIgbG9jYXRvcj0iMjQxOjEtMjQzOjExIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICsgMSB5ZWFyIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDI5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtEVFAtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyAxIHllYXIKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0MzAiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4xIHllYXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQzOCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MzAiIGxvY2F0b3I9IjI0MjozLTI0MzoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI0MzEiIGxvY2F0b3I9IjI0Mjo2LTI0Mjo3OSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI0MzIiIGxvY2F0b3I9IjI0Mjo4Ni0yNDI6MTI5IiB4c2k6dHlwZT0iQWRkIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MzYiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQzNyIgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzQiIGxvY2F0b3I9IjI0Mjo4Ni0yNDI6MTIwIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBEVFAgRG9zZSIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM1IiBsb2NhdG9yPSIyNDI6MTI0LTI0MjoxMjkiIHZhbHVlPSIxIiB1bml0PSJ5ZWFyIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI0MzkiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MzgiIGxvY2F0b3I9IjI0Mzo4LTI0MzoxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQxNSIgbG9jYXRvcj0iMjMwOjEtMjM0OjkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQxNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZQpAY3JlYXRlOiBUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxNiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDE3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyNiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDIyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCkR1ZSBEYXRlOiAnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlRvU3RyaW5nKDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVsc2UgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxNiIgbG9jYXRvcj0iMjMxOjMtMjM0OjkiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iNDE3IiBsb2NhdG9yPSIyMzE6Ni0yMzE6NzkiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNDQ4IiBsb2NhdG9yPSIyMzI6OC0yMzM6MTA3IiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MjYiIGxvY2F0b3I9IjIzMjo4LTIzMjoyMzAiIHhzaTp0eXBlPSJDb25jYXRlbmF0ZSI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyMCIgbG9jYXRvcj0iMjMyOjgtMjMyOjIxNCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IlR3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyMiIgbG9jYXRvcj0iMjMyOjIxOC0yMzI6MjMwIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iJiN4YTtEdWUgRGF0ZTogIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0NCIgbG9jYXRvcj0iMjMzOjE1LTIzMzoxMDciIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDQ1IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQwIiBsb2NhdG9yPSIyMzM6MjQtMjMzOjEwNiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNDQ5IiBsb2NhdG9yPSIyMzQ6OC0yMzQ6OSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NTMiIGxvY2F0b3I9IjI1MDoxLTI1MTo2IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQ1MyI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDU0Ij4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBvdmVyZHVlIGRhdGUuCiovCmRlZmluZSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSZxdW90OzoKICBudWxsPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ1NCIgbG9jYXRvcj0iMjUxOjMtMjUxOjYiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ1NyIgbG9jYXRvcj0iMjU4OjEtMjU5OjYiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLiIvPgogICAgICAgICAgICA8YTpzIHI9IjQ1NyI+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDU4Ij4vKgpAZHluYW1pY1ZhbHVlOiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzLiBIb3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIHJlbWFpbiBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24mcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NTgiIGxvY2F0b3I9IjI1OTozLTI1OTo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NjEiIGxvY2F0b3I9IjI2NjoxLTI2Nzo3MCIgbmFtZT0iRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iRmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDYxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IEZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMQoqLwpkZWZpbmUgJnF1b3Q7Rmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NjMiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O09uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDYzIiBsb2NhdG9yPSIyNjc6My0yNjc6NzAiIG5hbWU9Ik9uZSB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NzIiIGxvY2F0b3I9IjMyNDoxLTMyNTo3MiIgbmFtZT0iU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvbXBsZXRlIiB2YWx1ZT0iU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDcyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IFNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMgomcXVvdDtJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzJnF1b3Q7ID0gJnF1b3Q7Q29tcGxldGUmcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykKKi8KZGVmaW5lICZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDc0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NzMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDc0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUd28gdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDc0IiBsb2NhdG9yPSIzMjU6My0zMjU6NzIiIG5hbWU9IlR3byB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ2NiIgbG9jYXRvcj0iMjc4OjEtMjgwOjEzMiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVzY3JpcHRpb24iIHZhbHVlPSJQcm92aXNpb24gb2YgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2UgMiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXIiIHZhbHVlPSJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXJEYXRlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ2NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIDIKQHRyaWdnZXI6IEZpcnN0IHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxCkB0cmlnZ2VyRGF0ZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ2OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Rmlyc3QgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kCiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtTZWNvbmQgdGV0YW51cyBhbmQgZGlwaHRoZXJpYSBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gVGV0YW51cyBhbmQgZGlwaHRoZXJpYSBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ2NyIgbG9jYXRvcj0iMjc5OjMtMjgwOjEzMiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2OCIgbG9jYXRvcj0iMjc5OjMtMjc5OjYyIiBuYW1lPSJGaXJzdCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjkiIGxvY2F0b3I9IjI4MDozLTI4MDoxMzIiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzUiIGxvY2F0b3I9IjI4MDo3LTI4MDoxMzIiIG5hbWU9IlNlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0OTIiIGxvY2F0b3I9IjI5ODoxLTMwMDoxMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIER1ZSBEYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyAxIHllYXIiLz4KICAgICAgICAgICAgPGE6cyByPSI0OTIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBkeW5hbWljVmFsdWU6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZQpAcHNldWRvY29kZTogTGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyAxIHllYXIKKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0OTMiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ5NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDk3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBUZCBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OTgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjEgeWVhcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTAxIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ5MyIgbG9jYXRvcj0iMjk5OjMtMzAwOjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjQ5NCIgbG9jYXRvcj0iMjk5OjYtMjk5Ojc5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjQ5NSIgbG9jYXRvcj0iMjk5Ojg2LTI5OToxMjgiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ5OSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTAwIiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5NyIgbG9jYXRvcj0iMjk5Ojg2LTI5OToxMTkiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFRkIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ5OCIgbG9jYXRvcj0iMjk5OjEyMy0yOTk6MTI4IiB2YWx1ZT0iMSIgdW5pdD0ieWVhciIgeHNpOnR5cGU9IlF1YW50aXR5Ii8+CiAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iNTAyIiBhc1R5cGU9InQ6RGF0ZSIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTAxIiBsb2NhdG9yPSIzMDA6OC0zMDA6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NzgiIGxvY2F0b3I9IjI4NzoxLTI5MTo5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNyZWF0ZSIgdmFsdWU9IlR3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4iLz4KICAgICAgICAgICAgPGE6cyByPSI0NzgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IFRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBDcmVhdGUKQGNyZWF0ZTogVHdvIHN1YnNlcXVlbnQgYm9vc3RlciBkb3NlcyB1c2luZyB0ZXRhbnVzIHRveG9pZCB3aXRoIHJlZHVjZWQgZGlwaHRlcmlhIHRveG9pZCAoVGQpIG9yIFRkIHdpdGggYWNlbGx1bGFyIHBlcnR1c3NpcyAoVGRhUCkgY29tYmluYXRpb24gdmFjY2luZXMgYXJlIG5lZWRlZCB3aXRoIGFuIGludGVydmFsIG9mIGF0IGxlYXN0IDEgeWVhciBiZXR3ZWVuIGRvc2VzLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NzkiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTExIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0ODkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J1R3byBzdWJzZXF1ZW50IGJvb3N0ZXIgZG9zZXMgdXNpbmcgdGV0YW51cyB0b3hvaWQgd2l0aCByZWR1Y2VkIGRpcGh0ZXJpYSB0b3hvaWQgKFRkKSBvciBUZCB3aXRoIGFjZWxsdWxhciBwZXJ0dXNzaXMgKFRkYVApIGNvbWJpbmF0aW9uIHZhY2NpbmVzIGFyZSBuZWVkZWQgd2l0aCBhbiBpbnRlcnZhbCBvZiBhdCBsZWFzdCAxIHllYXIgYmV0d2VlbiBkb3Nlcy4nPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JwpEdWUgRGF0ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MDMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICBlbHNlIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUxMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Jyc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NzkiIGxvY2F0b3I9IjI4ODozLTI5MTo5IiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjQ4MCIgbG9jYXRvcj0iMjg4OjYtMjg4Ojc5IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjUxMSIgbG9jYXRvcj0iMjg5OjgtMjkwOjEwNyIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDg5IiBsb2NhdG9yPSIyODk6OC0yODk6MjMwIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODMiIGxvY2F0b3I9IjI4OTo4LTI4OToyMTQiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJUd28gc3Vic2VxdWVudCBib29zdGVyIGRvc2VzIHVzaW5nIHRldGFudXMgdG94b2lkIHdpdGggcmVkdWNlZCBkaXBodGVyaWEgdG94b2lkIChUZCkgb3IgVGQgd2l0aCBhY2VsbHVsYXIgcGVydHVzc2lzIChUZGFQKSBjb21iaW5hdGlvbiB2YWNjaW5lcyBhcmUgbmVlZGVkIHdpdGggYW4gaW50ZXJ2YWwgb2YgYXQgbGVhc3QgMSB5ZWFyIGJldHdlZW4gZG9zZXMuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODUiIGxvY2F0b3I9IjI4OToyMTgtMjg5OjIzMCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MDciIGxvY2F0b3I9IjI5MDoxNS0yOTA6MTA3IiB4c2k6dHlwZT0iVG9TdHJpbmciPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUwOCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUwMyIgbG9jYXRvcj0iMjkwOjI0LTI5MDoxMDYiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjUxMiIgbG9jYXRvcj0iMjkxOjgtMjkxOjkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTE2IiBsb2NhdG9yPSIzMDc6MS0zMDg6NiIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSJUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIG92ZXJkdWUgZGF0ZS4iLz4KICAgICAgICAgICAgPGE6cyByPSI1MTYiPgogICAgICAgICAgICAgICA8YTpzIHI9IjUxNyI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUKQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlczsgaG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgb3ZlcmR1ZSBkYXRlLgoqLwpkZWZpbmUgJnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgbnVsbDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MTciIGxvY2F0b3I9IjMwODozLTMwODo2IiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1MjAiIGxvY2F0b3I9IjMxNToxLTMxNjo2IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMiAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImR5bmFtaWNWYWx1ZSIgdmFsdWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IlRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4iLz4KICAgICAgICAgICAgPGE6cyByPSI1MjAiPgogICAgICAgICAgICAgICA8YTpzIHI9IjUyMSI+LyoKQGR5bmFtaWNWYWx1ZTogVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24KQHBzZXVkb2NvZGU6IFRvIGJlIGRldGVybWluZWQgYnkgTWVtYmVyIFN0YXRlcy4gSG93ZXZlciwgdGhlcmUgaXMgbm8gcmVjb21tZW5kZWQgZXhwaXJhdGlvbiBkYXRlIGFuZCBpbmRpdmlkdWFscyByZW1haW4gZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uJnF1b3Q7OgogIG51bGw8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTIxIiBsb2NhdG9yPSIzMTY6My0zMTY6NiIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTMzIiBsb2NhdG9yPSIzNzg6MS0zNzk6MjkiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgKyA3IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTMzIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAZHluYW1pY1ZhbHVlOiBQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICsgNyB5ZWFycwoqLwpkZWZpbmUgJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MzQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUzNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmJpcnRoRGF0ZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTM3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz43IHllYXJzPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNTM0IiBsb2NhdG9yPSIzNzk6My0zNzk6MjkiIHhzaTp0eXBlPSJBZGQiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjUzOSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTQwIiBuYW1lPSJ0OlF1YW50aXR5IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzOCIgbmFtZT0iVG9EYXRlIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzNiIgbG9jYXRvcj0iMzc5OjMtMzc5OjE5IiBwYXRoPSJiaXJ0aERhdGUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNTM1IiBsb2NhdG9yPSIzNzk6My0zNzk6OSIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUzNyIgbG9jYXRvcj0iMzc5OjIzLTM3OToyOSIgdmFsdWU9IjciIHVuaXQ9InllYXJzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NDkiIGxvY2F0b3I9IjM4NzoxLTM4ODo1NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFBlcnR1c3NpcyBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29tcGxldGUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O0Jvb3N0ZXIgZG9zZSZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTQ5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAY29tcGxldGU6IFBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDEKJnF1b3Q7SW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9uIHN0YXR1cyZxdW90OyA9ICZxdW90O0NvbXBsZXRlJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykKKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1NTEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NTEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O09uZSBwZXJ0dXNzaXMgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1NTEiIGxvY2F0b3I9IjM4ODozLTM4ODo1NyIgbmFtZT0iT25lIHBlcnR1c3NpcyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTI0IiBsb2NhdG9yPSIzMzY6MS0zNDA6MTEwIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVzY3JpcHRpb24iIHZhbHVlPSJQcm92aXNpb24gb2YgdGhlIHBlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0idHJpZ2dlciIgdmFsdWU9IlRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIGFuZCBjbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG8iIHZhbHVlPSImcXVvdDtDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzJnF1b3Q7ID0gVFJVRSAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIEFORCAxIHllYXIg4omkIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgNiB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InRyaWdnZXJEYXRlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNTI0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KQpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiB0aGUgcGVydHVzc2lzLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIDEKQHRyaWdnZXI6IFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIGFuZCBjbGllbnQncyBhZ2UgaXMgYmV0d2VlbiAxIHllYXIgYW5kIDYgeWVhcnMKQHBzZXVkbzogJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyA9IFRSVUUgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0RUUC1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSBBTkQgMSB5ZWFyIOKJpCBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omkIDYgeWVhcnMKQHRyaWdnZXJEYXRlOiBMYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7RFRQLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspCiovCmRlZmluZSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1MjUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MjgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoaXJkIERUUCBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IERUUCBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjUyOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MzAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDMiPiBhZnRlciBkYXkgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTQyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiBhbmQKICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NDYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPm5vdCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NTIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBQZXJ0dXNzaXMgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MjUiIGxvY2F0b3I9IjMzNzozLTM0MDoxMTAiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1MjYiIGxvY2F0b3I9IjMzNzozLTMzOTo5MyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjUyNyIgbG9jYXRvcj0iMzM3OjMtMzM4OjU2IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTI4IiBsb2NhdG9yPSIzMzc6My0zMzc6MTAyIiBuYW1lPSJUaGlyZCBEVFAgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBEVFAgc2VyaWVzIGhhcyBiZWVuIGNvbXBsZXRlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTMwIiBsb2NhdG9yPSIzMzg6My0zMzg6NTYiIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDEgeWVhciBhbmQgNiB5ZWFycyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NDMiIGxvY2F0b3I9IjMzOTozLTMzOTo5MyIgcHJlY2lzaW9uPSJEYXkiIHhzaTp0eXBlPSJBZnRlciI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTQ0IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1NDUiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NDEiIGxvY2F0b3I9IjMzOTozLTMzOTo3NCIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRXhwaXJhdGlvbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQyIiBsb2NhdG9yPSIzMzk6ODktMzM5OjkzIiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTQ2IiBsb2NhdG9yPSIzNDA6My0zNDA6MTEwIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTUyIiBsb2NhdG9yPSIzNDA6Ny0zNDA6MTEwIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1NzMiIGxvY2F0b3I9IjM2MDoxLTM2MjoxMSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA2IG1vbnRocyIvPgogICAgICAgICAgICA8YTpzIHI9IjU3MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUKQHBzZXVkb2NvZGU6IExhdGVzdCAmcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgKyA2IG1vbnRocwoqLwpkZWZpbmUgJnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgRHVlIERhdGUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNTc0Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBQZXJ0dXNzaXMgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTc5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz42IG1vbnRoczwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTgyIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU3NCIgbG9jYXRvcj0iMzYxOjMtMzYyOjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjU3NSIgbG9jYXRvcj0iMzYxOjYtMzYxOjY2IiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNTc2IiBsb2NhdG9yPSIzNjE6NzMtMzYxOjEyNCIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTgwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI1ODEiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTc4IiBsb2NhdG9yPSIzNjE6NzMtMzYxOjExMyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgUGVydHVzc2lzIERvc2UiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3OSIgbG9jYXRvcj0iMzYxOjExNy0zNjE6MTI0IiB2YWx1ZT0iNiIgdW5pdD0ibW9udGhzIiB4c2k6dHlwZT0iUXVhbnRpdHkiLz4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI1ODMiIGFzVHlwZT0idDpEYXRlIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1ODIiIGxvY2F0b3I9IjM2Mjo4LTM2MjoxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjYwMCIgbG9jYXRvcj0iMzY5OjEtMzcxOjExIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZHluYW1pY1ZhbHVlIiB2YWx1ZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICsgNyB5ZWFycyIvPgogICAgICAgICAgICA8YTpzIHI9IjYwMCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgT3ZlcmR1ZQpAcHNldWRvY29kZTogJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyArIDcgeWVhcnMKKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjAxIj4KICAgICAgICAgICAgICAgICAgPGE6cz5pZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwMyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjA1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYwNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+YmlydGhEYXRlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MDYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjcgeWVhcnM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYxMCI+CiAgZWxzZSBudWxsPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2MDEiIGxvY2F0b3I9IjM3MDozLTM3MToxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI2MDIiIGxvY2F0b3I9IjM3MDo2LTM3MDo2NiIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjYwMyIgbG9jYXRvcj0iMzcwOjczLTM3MDo5OSIgeHNpOnR5cGU9IkFkZCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjA4IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MDkiIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjA3IiBuYW1lPSJUb0RhdGUiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjA1IiBsb2NhdG9yPSIzNzA6NzMtMzcwOjg5IiBwYXRoPSJiaXJ0aERhdGUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNjA0IiBsb2NhdG9yPSIzNzA6NzMtMzcwOjc5IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjA2IiBsb2NhdG9yPSIzNzA6OTMtMzcwOjk5IiB2YWx1ZT0iNyIgdW5pdD0ieWVhcnMiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjYxMSIgYXNUeXBlPSJ0OkRhdGUiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYxMCIgbG9jYXRvcj0iMzcxOjgtMzcxOjExIiB4c2k6dHlwZT0iTnVsbCIvPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTU1IiBsb2NhdG9yPSIzNDc6MS0zNTM6OSIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY3JlYXRlIiB2YWx1ZT0iQSBib29zdGVyIGRvc2UgaXMgcmVjb21tZW5kZWQgZm9yIGNoaWxkcmVuIGFnZWQgMeKAkzYgeWVhcnMsIHByZWZlcmFibHkgZHVyaW5nIHRoZSBzZWNvbmQgeWVhciBvZiBsaWZlICjiiaUgNiBtb250aHMgYWZ0ZXIgbGFzdCBwcmltYXJ5IGRvc2UpLiIvPgogICAgICAgICAgICA8YTpzIHI9IjU1NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkgQ3JlYXRlCkBjcmVhdGU6IEEgYm9vc3RlciBkb3NlIGlzIHJlY29tbWVuZGVkIGZvciBjaGlsZHJlbiBhZ2VkIDHigJM2IHllYXJzLCBwcmVmZXJhYmx5IGR1cmluZyB0aGUgc2Vjb25kIHllYXIgb2YgbGlmZSAo4omlIDYgbW9udGhzIGFmdGVyIGxhc3QgcHJpbWFyeSBkb3NlKS4KKi8KZGVmaW5lICZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIENyZWF0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI1NTYiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU1NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYyNSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjIwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1OTciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU5MiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTcwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidBIGJvb3N0ZXIgZG9zZSBpcyByZWNvbW1lbmRlZCBmb3IgY2hpbGRyZW4gYWdlZCAx4oCTNiB5ZWFycywgcHJlZmVyYWJseSBkdXJpbmcgdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgKOKJpSA2IG1vbnRocyBhZnRlciBsYXN0IHByaW1hcnkgZG9zZSkuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKRHVlIERhdGU6ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjU4OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTg0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKyA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI1OTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicKT3ZlcmR1ZTogJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjE2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub1N0cmluZyg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIE92ZXJkdWUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICsgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nCkV4cGlyYXRpb246ICc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiArIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjYzMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+VG9TdHJpbmcoPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBFeHBpcmF0aW9uJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVsc2UgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjM1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nJzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjU1NiIgbG9jYXRvcj0iMzQ4OjMtMzUzOjkiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iNTU3IiBsb2NhdG9yPSIzNDg6Ni0zNDg6NjYiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI2MzQiIGxvY2F0b3I9IjM0OTo4LTM1Mjo5OCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjI1IiBsb2NhdG9yPSIzNDk6OC0zNTE6MTEwIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjAiIGxvY2F0b3I9IjM0OTo4LTM1MTo5MiIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTk3IiBsb2NhdG9yPSIzNDk6OC0zNTA6MTA5IiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1OTIiIGxvY2F0b3I9IjM0OTo4LTM1MDo5NCIgeHNpOnR5cGU9IkNvbmNhdGVuYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTcwIiBsb2NhdG9yPSIzNDk6OC0zNDk6MTYzIiB4c2k6dHlwZT0iQ29uY2F0ZW5hdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NjQiIGxvY2F0b3I9IjM0OTo4LTM0OToxNDciIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJBIGJvb3N0ZXIgZG9zZSBpcyByZWNvbW1lbmRlZCBmb3IgY2hpbGRyZW4gYWdlZCAx4oCTNiB5ZWFycywgcHJlZmVyYWJseSBkdXJpbmcgdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgKOKJpSA2IG1vbnRocyBhZnRlciBsYXN0IHByaW1hcnkgZG9zZSkuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1NjYiIGxvY2F0b3I9IjM0OToxNTEtMzQ5OjE2MyIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RHVlIERhdGU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI1ODgiIGxvY2F0b3I9IjM1MDoxNS0zNTA6OTQiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNTg5IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTg0IiBsb2NhdG9yPSIzNTA6MjQtMzUwOjkzIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBEdWUgRGF0ZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU5MyIgbG9jYXRvcj0iMzUwOjk4LTM1MDoxMDkiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSImI3hhO092ZXJkdWU6ICIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MTYiIGxvY2F0b3I9IjM1MToxNC0zNTE6OTIiIHhzaTp0eXBlPSJUb1N0cmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjE3IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjEyIiBsb2NhdG9yPSIzNTE6MjMtMzUxOjkxIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSBPdmVyZHVlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjIxIiBsb2NhdG9yPSIzNTE6OTYtMzUxOjExMCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiYjeGE7RXhwaXJhdGlvbjogIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjYzMCIgbG9jYXRvcj0iMzUyOjE3LTM1Mjo5OCIgeHNpOnR5cGU9IlRvU3RyaW5nIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2MzEiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2MjYiIGxvY2F0b3I9IjM1MjoyNi0zNTI6OTciIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIEV4cGlyYXRpb24iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8ZWxzZSBsb2NhbElkPSI2MzUiIGxvY2F0b3I9IjM1Mzo4LTM1Mzo5IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjYzOSIgbG9jYXRvcj0iMzk1OjEtNDEyOjUiIG5hbWU9IlRlc3QgVmFsaWRhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9InRlc3QiIHZhbHVlPSJUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cyIvPgogICAgICAgICAgICA8YTpzIHI9IjYzOSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAmcXVvdDtUZXN0IFZhbGlkYXRpb24mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNjQwIj4KICAgICAgICAgICAgICAgICAgPGE6cz5jYXNlCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NDQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY0MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQMzMuMic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjUyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1MyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjU1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NTQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY1NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0RUUDM0LjInPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY2NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjY1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NjciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFAzNS4yJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjczIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY3NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjc3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjc4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQMzYuMic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY4NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RFRQIGRvc2UgMyAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjg1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY4NiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjg4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2ODciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY4OCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY4OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0RUUDM3LjInPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY5NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjY5OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI2OTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFAzOC4zJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzA2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzExIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFAzOS4zJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyMiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFA0MC4zJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzMyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjczNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjczNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjczOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3MzkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFA0MS4zJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NDYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc0NyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc0OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NDkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc1MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzUwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidEVFA0Mi4yJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzU4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1NlY29uZCB0ZXRhbnVzIGFuZCBkaXBodGhlcmlhIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiBUZXRhbnVzIGFuZCBkaXBodGhlcmlhIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NjEiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzYyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc2MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzY0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzY1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQNDMuNCc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzcyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3MyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NzQiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3NzciPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc3NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzc3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzc4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQNDQuNCc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc4NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzg1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc4NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3ODciPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzg4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI3OTAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc4OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzkwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzkxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nRFRQNDUuMyc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9Ijc5NyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNzk5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI4MDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iODAxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjgwMiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iODA0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI4MDMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPlBhdGllbnQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjgwNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+aWQ8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiA9IDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjgwNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0RUUDQ2LjInPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI4MTEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjgxMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7UGVydHVzc2lzLWNvbnRhaW5pbmcgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFBlcnR1c3NpcyBpbW11bml6YXRpb24gc2NoZWR1bGUgaGFzIGJlZW4gY29tcGxldGVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iODEzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGVsc2UgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iODE0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nTm8gdGVzdCBjYXNlIHNldCc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgZW5kPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI2NDAiIGxvY2F0b3I9IjM5NjozLTQxMjo1IiB4c2k6dHlwZT0iQ2FzZSI+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2NDEiIGxvY2F0b3I9IjM5Nzo1LTM5Nzo2NSI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjY0MiIgbG9jYXRvcj0iMzk3OjEwLTM5NzozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NDkiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjUwIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDciIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjQ4IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NDQiIGxvY2F0b3I9IjM5NzoxMC0zOTc6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY0MyIgbG9jYXRvcj0iMzk3OjEwLTM5NzoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY0NSIgbG9jYXRvcj0iMzk3OjIzLTM5NzozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDMzLjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODE2IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NTEiIGxvY2F0b3I9IjM5NzozOC0zOTc6NjUiIG5hbWU9IkRUUCBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjgxNyIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjgxOCIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODE5IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNjUyIiBsb2NhdG9yPSIzOTg6NS0zOTg6NjUiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI2NTMiIGxvY2F0b3I9IjM5ODoxMC0zOTg6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjYwIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY2MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU4IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY1OSIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjU1IiBsb2NhdG9yPSIzOTg6MTAtMzk4OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI2NTQiIGxvY2F0b3I9IjM5ODoxMC0zOTg6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NTYiIGxvY2F0b3I9IjM5ODoyMy0zOTg6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFAzNC4yIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjgyMCIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjYyIiBsb2NhdG9yPSIzOTg6MzgtMzk4OjY1IiBuYW1lPSJEVFAgZG9zZSAyIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4MjEiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4MjIiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjgyMyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjY2MyIgbG9jYXRvcj0iMzk5OjUtMzk5OjY1Ij4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNjY0IiBsb2NhdG9yPSIzOTk6MTAtMzk5OjMxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY3MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NzIiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY2OSIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2NzAiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY2NiIgbG9jYXRvcj0iMzk5OjEwLTM5OToxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNjY1IiBsb2NhdG9yPSIzOTk6MTAtMzk5OjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjY3IiBsb2NhdG9yPSIzOTk6MjMtMzk5OjMxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRFRQMzUuMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI4MjQiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY3MyIgbG9jYXRvcj0iMzk5OjM4LTM5OTo2NSIgbmFtZT0iRFRQIGRvc2UgMiAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iODI1IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODI2IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4MjciIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI2NzQiIGxvY2F0b3I9IjQwMDo1LTQwMDo2NSI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjY3NSIgbG9jYXRvcj0iNDAwOjEwLTQwMDozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI2ODIiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjgzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2ODAiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjgxIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2NzciIGxvY2F0b3I9IjQwMDoxMC00MDA6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY3NiIgbG9jYXRvcj0iNDAwOjEwLTQwMDoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjY3OCIgbG9jYXRvcj0iNDAwOjIzLTQwMDozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDM2LjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODI4IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2ODQiIGxvY2F0b3I9IjQwMDozOC00MDA6NjUiIG5hbWU9IkRUUCBkb3NlIDMgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjgyOSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjgzMCIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODMxIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNjg1IiBsb2NhdG9yPSI0MDE6NS00MDE6NjUiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI2ODYiIGxvY2F0b3I9IjQwMToxMC00MDE6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNjkzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY5NCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjkxIiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjY5MiIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjg4IiBsb2NhdG9yPSI0MDE6MTAtNDAxOjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI2ODciIGxvY2F0b3I9IjQwMToxMC00MDE6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2ODkiIGxvY2F0b3I9IjQwMToyMy00MDE6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFAzNy4yIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjgzMiIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjk1IiBsb2NhdG9yPSI0MDE6MzgtNDAxOjY1IiBuYW1lPSJEVFAgZG9zZSAzIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4MzMiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4MzQiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjgzNSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjY5NiIgbG9jYXRvcj0iNDAyOjUtNDAyOjE3NyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjY5NyIgbG9jYXRvcj0iNDAyOjEwLTQwMjozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MDQiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzA1IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDIiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzAzIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI2OTkiIGxvY2F0b3I9IjQwMjoxMC00MDI6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjY5OCIgbG9jYXRvcj0iNDAyOjEwLTQwMjoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcwMCIgbG9jYXRvcj0iNDAyOjIzLTQwMjozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDM4LjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODM2IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDYiIGxvY2F0b3I9IjQwMjozOC00MDI6MTc3IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzA3IiBsb2NhdG9yPSI0MDI6MzgtNDAyOjExMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MDgiIGxvY2F0b3I9IjQwMjoxMTctNDAyOjE3NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4MzciIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4MzgiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjgzOSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjcwOSIgbG9jYXRvcj0iNDAzOjUtNDAzOjE3NyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjcxMCIgbG9jYXRvcj0iNDAzOjEwLTQwMzozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MTciIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzE4IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MTUiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzE2IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MTIiIGxvY2F0b3I9IjQwMzoxMC00MDM6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjcxMSIgbG9jYXRvcj0iNDAzOjEwLTQwMzoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcxMyIgbG9jYXRvcj0iNDAzOjIzLTQwMzozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDM5LjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODQwIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MTkiIGxvY2F0b3I9IjQwMzozOC00MDM6MTc3IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzIwIiBsb2NhdG9yPSI0MDM6MzgtNDAzOjExMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjEiIGxvY2F0b3I9IjQwMzoxMTctNDAzOjE3NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4NDEiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NDIiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg0MyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjcyMiIgbG9jYXRvcj0iNDA0OjUtNDA0OjE3NyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjcyMyIgbG9jYXRvcj0iNDA0OjEwLTQwNDozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3MzAiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzMxIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjgiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzI5IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MjUiIGxvY2F0b3I9IjQwNDoxMC00MDQ6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjcyNCIgbG9jYXRvcj0iNDA0OjEwLTQwNDoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjcyNiIgbG9jYXRvcj0iNDA0OjIzLTQwNDozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDQwLjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODQ0IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzIiIGxvY2F0b3I9IjQwNDozOC00MDQ6MTc3IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzMzIiBsb2NhdG9yPSI0MDQ6MzgtNDA0OjExMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzQiIGxvY2F0b3I9IjQwNDoxMTctNDA0OjE3NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4NDUiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NDYiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg0NyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjczNSIgbG9jYXRvcj0iNDA1OjUtNDA1OjE3NyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjczNiIgbG9jYXRvcj0iNDA1OjEwLTQwNTozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3NDMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzQ0IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NDEiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzQyIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3MzgiIGxvY2F0b3I9IjQwNToxMC00MDU6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjczNyIgbG9jYXRvcj0iNDA1OjEwLTQwNToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjczOSIgbG9jYXRvcj0iNDA1OjIzLTQwNTozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDQxLjMiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODQ4IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NDUiIGxvY2F0b3I9IjQwNTozOC00MDU6MTc3IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzQ2IiBsb2NhdG9yPSI0MDU6MzgtNDA1OjExMSIgbmFtZT0iVGV0YW51cyBhbmQgZGlwaHRoZXJpYS1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDIgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NDciIGxvY2F0b3I9IjQwNToxMTctNDA1OjE3NyIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4NDkiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NTAiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg1MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9Ijc0OCIgbG9jYXRvcj0iNDA2OjUtNDA2OjIyOSI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9Ijc0OSIgbG9jYXRvcj0iNDA2OjEwLTQwNjozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3NTYiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzU3IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NTQiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzU1IiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NTEiIGxvY2F0b3I9IjQwNjoxMC00MDY6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9Ijc1MCIgbG9jYXRvcj0iNDA2OjEwLTQwNjoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc1MiIgbG9jYXRvcj0iNDA2OjIzLTQwNjozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDQyLjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODUyIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NTgiIGxvY2F0b3I9IjQwNjozOC00MDY6MjI5IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzU5IiBsb2NhdG9yPSI0MDY6MzgtNDA2OjE2MyIgbmFtZT0iU2Vjb25kIHRldGFudXMgYW5kIGRpcGh0aGVyaWEgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIFRldGFudXMgYW5kIGRpcGh0aGVyaWEgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGhhcyBiZWVuIGNvbXBsZXRlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzYwIiBsb2NhdG9yPSI0MDY6MTY5LTQwNjoyMjkiIG5hbWU9IlBlcnR1c3Npcy1jb250YWluaW5nIHZhY2NpbmUgYm9vc3RlciBkb3NlIDEgKGRlbGF5ZWQgc3RhcnQpIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iODUzIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODU0IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NTUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxjYXNlSXRlbSBsb2NhbElkPSI3NjEiIGxvY2F0b3I9IjQwNzo1LTQwNzoxNzciPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSI3NjIiIGxvY2F0b3I9IjQwNzoxMC00MDc6MzEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzY5IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9Ijc3MCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzY3IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9Ijc2OCIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzY0IiBsb2NhdG9yPSI0MDc6MTAtNDA3OjE5IiBwYXRoPSJpZCIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSI3NjMiIGxvY2F0b3I9IjQwNzoxMC00MDc6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NjUiIGxvY2F0b3I9IjQwNzoyMy00MDc6MzEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJEVFA0My40IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8L3doZW4+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9Ijg1NiIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzcxIiBsb2NhdG9yPSI0MDc6MzgtNDA3OjE3NyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc3MiIgbG9jYXRvcj0iNDA3OjM4LTQwNzo5OCIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc3MyIgbG9jYXRvcj0iNDA3OjEwNC00MDc6MTc3IiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4NTciIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NTgiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg1OSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9Ijc3NCIgbG9jYXRvcj0iNDA4OjUtNDA4OjE3NyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9Ijc3NSIgbG9jYXRvcj0iNDA4OjEwLTQwODozMSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3ODIiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzgzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3ODAiIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNzgxIiBuYW1lPSJmaGlyOnN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3NzciIGxvY2F0b3I9IjQwODoxMC00MDg6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9Ijc3NiIgbG9jYXRvcj0iNDA4OjEwLTQwODoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc3OCIgbG9jYXRvcj0iNDA4OjIzLTQwODozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IkRUUDQ0LjQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iODYwIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3ODQiIGxvY2F0b3I9IjQwODozOC00MDg6MTc3IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzg1IiBsb2NhdG9yPSI0MDg6MzgtNDA4Ojk4IiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzg2IiBsb2NhdG9yPSI0MDg6MTA0LTQwODoxNzciIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijg2MSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg2MiIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODYzIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iNzg3IiBsb2NhdG9yPSI0MDk6NS00MDk6MTgxIj4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iNzg4IiBsb2NhdG9yPSI0MDk6MTAtNDA5OjMxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9Ijc5NSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3OTYiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc5MyIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI3OTQiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc5MCIgbG9jYXRvcj0iNDA5OjEwLTQwOToxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iNzg5IiBsb2NhdG9yPSI0MDk6MTAtNDA5OjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzkxIiBsb2NhdG9yPSI0MDk6MjMtNDA5OjMxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRFRQNDUuMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI4NjQiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9Ijc5NyIgbG9jYXRvcj0iNDA5OjM4LTQwOToxODEiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI3OTgiIGxvY2F0b3I9IjQwOTozOC00MDk6MTAyIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzk5IiBsb2NhdG9yPSI0MDk6NDItNDA5OjEwMiIgbmFtZT0iUGVydHVzc2lzLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iODAwIiBsb2NhdG9yPSI0MDk6MTA4LTQwOToxODEiIG5hbWU9IlRldGFudXMgYW5kIGRpcGh0aGVyaWEtY29udGFpbmluZyB2YWNjaW5lIGJvb3N0ZXIgZG9zZSAxIChkZWxheWVkIHN0YXJ0KSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijg2NSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg2NiIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODY3IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iODAxIiBsb2NhdG9yPSI0MTA6NS00MTA6MjIwIj4KICAgICAgICAgICAgICAgPHdoZW4gbG9jYWxJZD0iODAyIiBsb2NhdG9yPSI0MTA6MTAtNDEwOjMxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjgwOSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI4MTAiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgwNyIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI4MDgiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgwNCIgbG9jYXRvcj0iNDEwOjEwLTQxMDoxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iODAzIiBsb2NhdG9yPSI0MTA6MTAtNDEwOjE2IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iODA1IiBsb2NhdG9yPSI0MTA6MjMtNDEwOjMxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iRFRQNDYuMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSI4NjgiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgxMSIgbG9jYXRvcj0iNDEwOjM4LTQxMDoyMjAiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI4MTIiIGxvY2F0b3I9IjQxMDozOC00MTA6MTQxIiBuYW1lPSJQZXJ0dXNzaXMtY29udGFpbmluZyBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gUGVydHVzc2lzIGltbXVuaXphdGlvbiBzY2hlZHVsZSBoYXMgYmVlbiBjb21wbGV0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjgxMyIgbG9jYXRvcj0iNDEwOjE0Ny00MTA6MjIwIiBuYW1lPSJUZXRhbnVzIGFuZCBkaXBodGhlcmlhLWNvbnRhaW5pbmcgdmFjY2luZSBib29zdGVyIGRvc2UgMSAoZGVsYXllZCBzdGFydCkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSI4NjkiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSI4NzAiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg3MSIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGVsc2UgbG9jYWxJZD0iODcyIiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI4MTQiIGxvY2F0b3I9IjQxMToxMC00MTE6MjciIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJObyB0ZXN0IGNhc2Ugc2V0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9Ijg3MyIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9Ijg3NCIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iODc1IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"/>
  </content>
</Library>