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/ and changes regularly. See the Directory of published versions

: IMMZD2DTHibElements - XML Representation

Draft as of 2025-08-08

Raw xml | Download


<Library xmlns="http://hl7.org/fhir">
  <id value="IMMZD2DTHibElements"/>
  <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;">IMMZD2DTHibElements</td>
        </tr>
        

        
        
        <tr>
            <th scope="row"><b>Id: </b></th>
            <td style="padding-left: 4px;">IMMZD2DTHibElements</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-IMMZD2DTHibElements.html">IMMZD2DTHibElements</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/6.0.2/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;">2025-08-08 19:12: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 context-independent elements for Hib used throughout 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-WHOConcepts.html">WHOConcepts</a></li>
                  
                    <li><a href="Library-WHOCommon.html">WHOCommon</a></li>
                  
                    <li><a href="Library-WHOElements.html">WHOElements</a></li>
                  
                    <li><a href="Library-IMMZCommon.html">IMMZCommon</a></li>
                  
                    <li><a href="Library-IMMZConcepts.html">IMMZConcepts</a></li>
                  
                    <li><a href="Library-IMMZElements.html">IMMZElements</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>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Hib Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
              
                <tr><th>Hib Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
              
                <tr><th>Number of Hib Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Hib Booster Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
              
                <tr><th>Number of Hib Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Date of First Hib Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Date of Latest Hib Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>No Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>One Hib primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>One Hib primary series doses was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Two Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Three Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>No Hib booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>One Hib booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is less than 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is between 6 weeks and 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is at least 6 weeks and not more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is between 6 weeks and not more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age was less than 1 year when first Hib dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age was more than 1 year when first Hib dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered less than 8 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered more than 8 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered less than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>The latest Hib dose was administered more than 6 months ago</th><th>boolean</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: IMMZD2DTHibElements
  */
library IMMZD2DTHibElements

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

include WHOConcepts
include WHOCommon called WC
include WHOElements called WE

include IMMZCommon called Common
include IMMZConcepts called Concepts
include IMMZElements called Elements

context Patient

/*
@internal: Hib containing Doses Administered to Patient
*/
define &quot;Hib Doses Administered to Patient&quot;:
  Elements.&quot;Doses Administered to Patient&quot; I
  where
    I.vaccineCode in Concepts.&quot;Hib-containing vaccines&quot;

/*
@internal: Hib containing Doses Administered to Patient that are in the Primary series
*/
define &quot;Hib Primary Series Doses Administered to Patient&quot;:
  &quot;Hib Doses Administered to Patient&quot;.seriesPrimary()

/*
@internal: Number of Hib Primary Series doses
*/
define &quot;Number of Hib Primary Series Doses Administered&quot;:
  Count(&quot;Hib Primary Series Doses Administered to Patient&quot;)

/*
@internal: Hib containing Doses Administered to Patient that are in the Booster series
*/
define &quot;Hib Booster Series Doses Administered to Patient&quot;:
  &quot;Hib Doses Administered to Patient&quot;.seriesBooster()

/*
@internal: Number of Hib Booster Series doses
*/
define &quot;Number of Hib Booster Series Doses Administered&quot;:
  Count(&quot;Hib Booster Series Doses Administered to Patient&quot;)

/*
@internal: Date and time of first Hib dose
*/
define &quot;Date of First Hib Dose&quot;:
  date from start of &quot;Hib Doses Administered to Patient&quot;.earliest().occurrence.toInterval()

/*
@internal: Date and time of last Hib dose
*/
define &quot;Date of Latest Hib Dose&quot;:
  date from start of &quot;Hib Doses Administered to Patient&quot;.mostRecent().occurrence.toInterval()

/*
@input: No Hib primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;No Hib primary series doses were administered&quot;:
  &quot;Number of Hib Primary Series Doses Administered&quot; = 0

/*
@input: One Hib primary series dose was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot;= &quot;Primary series&quot;) = 1
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
*/
define &quot;One Hib primary series dose was administered&quot;:
  &quot;Number of Hib Primary Series Doses Administered&quot; = 1

/*
@input: One Hib primary series doses was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot;= &quot;Primary series&quot;) = 1
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;One Hib primary series doses was administered&quot;:
  &quot;One Hib primary series dose was administered&quot;

/*
@input: Two Hib primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot; ) = 2
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Two Hib primary series doses were administered&quot;:
  &quot;Number of Hib Primary Series Doses Administered&quot; = 2

/*
@input: Three Hib primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot;= &quot;Primary series&quot;) = 3
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
*/
define &quot;Three Hib primary series doses were administered&quot;:
  &quot;Number of Hib Primary Series Doses Administered&quot; = 3

/*
@input: No Hib booster doses were administered
@pseudocode: Count of vaccines administered where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot;&quot; = &quot;Booster dose&quot;) = 0
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;No Hib booster doses were administered&quot;:
  &quot;Number of Hib Booster Series Doses Administered&quot; = 0

/*
@input: One Hib booster dose was administered
@pseudocode: Count of vaccines administered where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Booster dose&quot;) = 1
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;One Hib booster dose was administered&quot;:
  &quot;Number of Hib Booster Series Doses Administered&quot; = 1

/*
@input: Client's age is less than 6 weeks
@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 6 weeks
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age is less than 6 weeks&quot;:
  Elements.&quot;Current Patient Age In Weeks&quot; &lt; 6

/*
@input: Client's age is between 6 weeks and 5 years
@pseudocode: 6 weeks ≤ Today's date − &quot;Date of birth&quot; ≤ 5 years
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age is between 6 weeks and 5 years&quot;:
  6 &lt;= Elements.&quot;Current Patient Age In Weeks&quot; 
  and Elements.&quot;Current Patient Age In Years&quot; &lt;= 5

/*
@input: Client's age is at least 6 weeks and not more than 5 years
@pseudocode: 6 weeks ≤ Today's date − &quot;Date of birth&quot; ≤ 5 years
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age is at least 6 weeks and not more than 5 years&quot;:
  &quot;Client's age is between 6 weeks and 5 years&quot;

/*
@input: Client's age is between 6 weeks and not more than 5 years
@pseudocode: 6 weeks ≤ Today's date − &quot;Date of birth&quot; ≤ 5 years
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
*/
define &quot;Client's age is between 6 weeks and not more than 5 years&quot;:
  &quot;Client's age is between 6 weeks and 5 years&quot;

/*
@input: Client's age is more than 5 years
@pseudocode: Today's date − &quot;Date of birth&quot; &gt; 5 years
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age is more than 5 years&quot;:
  Elements.&quot;Current Patient Age In Years&quot; &gt; 5

/*
@input: Client's age was less than 1 year when first Hib dose was administered
@pseudocode: &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot;= &quot;Hib-containing vaccines&quot; and &quot;Dose number&quot; = 1) − &quot;Date of birth&quot; &lt; 1 year
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age was less than 1 year when first Hib dose was administered&quot;:
  AgeInYearsAt(&quot;Date of First Hib Dose&quot;) &lt; 1

/*
@input: Client's age was more than 1 year when first Hib dose was administered
@pseudocode: &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot;= &quot;Hib-containing vaccines&quot; and &quot;Dose number&quot; = 1) − &quot;Date of birth&quot; ≥ 1 year
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;Client's age was more than 1 year when first Hib dose was administered&quot;:
  AgeInYearsAt(&quot;Date of First Hib Dose&quot;) &gt;= 1

/*
@input: The latest Hib dose was administered less than 4 weeks ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) &lt; 4 weeks
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
*/
define &quot;The latest Hib dose was administered less than 4 weeks ago&quot;:
  &quot;Date of Latest Hib Dose&quot; is not null
    and duration in weeks between &quot;Date of Latest Hib Dose&quot; and Now() &lt; 4

/*
@input: The latest Hib dose was administered more than 4 weeks ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) ≥ 4 weeks
@decision: 3 primary doses without a booster dose (3p)
@decision: 3 primary doses with a booster dose (3p+1)
*/
define &quot;The latest Hib dose was administered more than 4 weeks ago&quot;:
  not(&quot;The latest Hib dose was administered less than 4 weeks ago&quot;)

/*
@input: The latest Hib dose was administered less than 8 weeks ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) &lt; 8 weeks
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;The latest Hib dose was administered less than 8 weeks ago&quot;:
  &quot;Date of Latest Hib Dose&quot; is not null
    and duration in weeks between &quot;Date of Latest Hib Dose&quot; and Now() &lt; 8

/*
@input: The latest Hib dose was administered more than 8 weeks ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) ≥ 8 weeks
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;The latest Hib dose was administered more than 8 weeks ago&quot;:
  &quot;The latest Hib dose was administered less than 8 weeks ago&quot;

/*
@input: The latest Hib dose was administered less than 6 months ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) &lt; 6 months
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;The latest Hib dose was administered less than 6 months ago&quot;:
  &quot;Date of Latest Hib Dose&quot; is not null
    and duration in months between &quot;Date of Latest Hib Dose&quot; and Now() &lt; 6

/*
@input: The latest Hib dose was administered more than 6 months ago
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Hib-containing vaccines&quot;) ≥ 6 months
@decision: 3 primary doses with a booster dose (3p+1)
@decision: 2 primary doses with a booster dose (2p+1)
*/
define &quot;The latest Hib dose was administered more than 6 months ago&quot;:
  not(&quot;The latest Hib dose was administered less than 6 months ago&quot;)</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 (81644 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/IMMZD2DTHibElements"/>
  <version value="0.2.0"/>
  <name value="IMMZD2DTHibElements"/>
  <title value="IMMZD2DTHibElements"/>
  <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="2025-08-08T19:12: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 context-independent elements for Hib used throughout the Immunization CPG"/>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library WHOConcepts"/>
    <resource value="http://smart.who.int/immunizations/Library/WHOConcepts"/>
  </relatedArtifact>
  <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 WE"/>
    <resource value="http://smart.who.int/immunizations/Library/WHOElements"/>
  </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 Elements"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZElements"/>
  </relatedArtifact>
  <parameter>
    <name value="Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Patient"/>
  </parameter>
  <parameter>
    <name value="Hib Doses Administered to Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="Immunization"/>
  </parameter>
  <parameter>
    <name value="Hib Primary Series Doses Administered to Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="Immunization"/>
  </parameter>
  <parameter>
    <name value="Number of Hib Primary Series Doses Administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="integer"/>
  </parameter>
  <parameter>
    <name value="Hib Booster Series Doses Administered to Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="Immunization"/>
  </parameter>
  <parameter>
    <name value="Number of Hib Booster Series Doses Administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="integer"/>
  </parameter>
  <parameter>
    <name value="Date of First Hib Dose"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Date of Latest Hib Dose"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="No Hib primary series doses were administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="One Hib primary series dose was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="One Hib primary series doses was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Two Hib primary series doses were administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Three Hib primary series doses were administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="No Hib booster doses were administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="One Hib booster dose was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is less than 6 weeks"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is between 6 weeks and 5 years"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is at least 6 weeks and not more than 5 years"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is between 6 weeks and not more than 5 years"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is more than 5 years"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Client's age was less than 1 year when first Hib dose was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="Client's age was more than 1 year when first Hib dose was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="The latest Hib dose was administered less than 4 weeks ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="The latest Hib dose was administered more than 4 weeks ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="The latest Hib dose was administered less than 8 weeks ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="The latest Hib dose was administered more than 8 weeks ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="The latest Hib dose was administered less than 6 months ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name
          value="The latest Hib dose was administered more than 6 months ago"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <content>
    <contentType value="text/cql"/>
    <data
          value="Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVEhpYkVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVEhpYkVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbGVtZW50cyBjYWxsZWQgRWxlbWVudHMKCmNvbnRleHQgUGF0aWVudAoKLyoKQGludGVybmFsOiBIaWIgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgRWxlbWVudHMuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIgoKLyoKQGludGVybmFsOiBIaWIgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICJIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc1ByaW1hcnkoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBIaWIgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgQm9vc3RlciBzZXJpZXMKKi8KZGVmaW5lICJIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc0Jvb3N0ZXIoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgSGliIEJvb3N0ZXIgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIEhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBEYXRlIGFuZCB0aW1lIG9mIGZpcnN0IEhpYiBkb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBGaXJzdCBIaWIgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLmVhcmxpZXN0KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogRGF0ZSBhbmQgdGltZSBvZiBsYXN0IEhpYiBkb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiOgogIGRhdGUgZnJvbSBzdGFydCBvZiAiSGliIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnB1dDogTm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDAKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiTm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCiovCmRlZmluZSAiT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAxCgovKgpAaW5wdXQ6IE9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdhcyBhZG1pbmlzdGVyZWQiOgogICJPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIKCi8qCkBpbnB1dDogVHdvIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIiApID0gMgpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJUd28gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMgoKLyoKQGlucHV0OiBUaHJlZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIj0gIlByaW1hcnkgc2VyaWVzIikgPSAzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQoqLwpkZWZpbmUgIlRocmVlIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDMKCi8qCkBpbnB1dDogTm8gSGliIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCB3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiIiA9ICJCb29zdGVyIGRvc2UiKSA9IDAKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJObyBIaWIgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogT25lIEhpYiBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkIHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiQm9vc3RlciBkb3NlIikgPSAxCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiT25lIEhpYiBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDYgd2Vla3MKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgPCA2CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpCA1IHllYXJzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMiOgogIDYgPD0gRWxlbWVudHMuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gV2Vla3MiIAogIGFuZCBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPD0gNQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYXQgbGVhc3QgNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzCkBwc2V1ZG9jb2RlOiA2IHdlZWtzIOKJpCBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaQgNSB5ZWFycwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgYXQgbGVhc3QgNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzIjoKICAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgNSB5ZWFycyIKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzCkBwc2V1ZG9jb2RlOiA2IHdlZWtzIOKJpCBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaQgNSB5ZWFycwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMiOgogICJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzIgoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDUgeWVhcnMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiID4gNSB5ZWFycwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDUgeWVhcnMiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiA+IDUKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIHdhcyBsZXNzIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIj0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIkRvc2UgbnVtYmVyIiA9IDEpIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxIHllYXIKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIHdhcyBsZXNzIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgQWdlSW5ZZWFyc0F0KCJEYXRlIG9mIEZpcnN0IEhpYiBEb3NlIikgPCAxCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSB3YXMgbW9yZSB0aGFuIDEgeWVhciB3aGVuIGZpcnN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSI9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJEb3NlIG51bWJlciIgPSAxKSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSAxIHllYXIKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgQWdlSW5ZZWFyc0F0KCJEYXRlIG9mIEZpcnN0IEhpYiBEb3NlIikgPj0gMQoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIikgPCA0IHdlZWtzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgYW5kIE5vdygpIDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIikg4omlIDQgd2Vla3MKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA4IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIpIDwgOCB3ZWVrcwpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgYW5kIE5vdygpIDwgOAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDggd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIikg4omlIDggd2Vla3MKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDggd2Vla3MgYWdvIjoKICAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA4IHdlZWtzIGFnbyIKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiKSA8IDYgbW9udGhzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiBtb250aHMgYmV0d2VlbiAiRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIGFuZCBOb3coKSA8IDYKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiKSDiiaUgNiBtb250aHMKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyIp"/>
  </content>
  <content>
    <contentType value="application/elm+xml"/>
    <data
          value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNDg1Ij4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRIaWJFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFRIaWJFbGVtZW50czwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQyRFRIaWJFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA4IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTAiIGxvY2F0b3I9IjEwOjEtMTA6MTkiIGxvY2FsSWRlbnRpZmllcj0iV0hPQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxMiIgbG9jYXRvcj0iMTE6MS0xMToyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTIiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxMjoxLTEyOjI5IiBsb2NhbElkZW50aWZpZXI9IldFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0VsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE0Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0VsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0U8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE2IiBsb2NhdG9yPSIxNDoxLTE0OjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE2Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE4IiBsb2NhdG9yPSIxNToxLTE1OjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxOCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjAiIGxvY2F0b3I9IjE2OjEtMTY6MzYiIGxvY2FsSWRlbnRpZmllcj0iRWxlbWVudHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjIwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIEVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI1IiBsb2NhdG9yPSIxODoxLTE4OjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMyIgbG9jYXRvcj0iMTg6MS0xODoxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIyNCIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMjIiIGxvY2F0b3I9IjE4OjEtMTg6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjgiIGxvY2F0b3I9IjIzOjEtMjY6NTUiIG5hbWU9IkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iSGliIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogSGliIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O0hpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDAiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50cy4mcXVvdDtEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IEk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dmFjY2luZUNvZGU8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDAiIGxvY2F0b3I9IjI0OjMtMjY6NTUiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjI5IiBsb2NhdG9yPSIyNDozLTI0OjQ0IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMSIgbG9jYXRvcj0iMjQ6My0yNDo0MiIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbGVtZW50cyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgIDx3aGVyZSBsb2NhbElkPSIyMzciIGxvY2F0b3I9IjI1OjMtMjY6NTUiIHhzaTp0eXBlPSJJblZhbHVlU2V0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyMzkiIG5hbWU9InQ6Q29uY2VwdCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8Y29kZSBsb2NhbElkPSIyMzgiIG5hbWU9IlRvQ29uY2VwdCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzQiIGxvY2F0b3I9IjI2OjUtMjY6MTciIHBhdGg9InZhY2NpbmVDb2RlIiBzY29wZT0iSSIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+CiAgICAgICAgICAgICAgIDwvY29kZT4KICAgICAgICAgICAgICAgPHZhbHVlc2V0IGxvY2FsSWQ9IjIzNiIgbG9jYXRvcj0iMjY6MjItMjY6NTUiIG5hbWU9IkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBsaWJyYXJ5TmFtZT0iQ29uY2VwdHMiIHByZXNlcnZlPSJ0cnVlIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQzIiBsb2NhdG9yPSIzMToxLTMyOjUzIiBuYW1lPSJIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IkhpYiBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI0MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBIaWIgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICZxdW90O0hpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SGliIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPnNlcmllc1ByaW1hcnkoKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iMzI6My0zMjo1MyIgbmFtZT0ic2VyaWVzUHJpbWFyeSIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjQ0IiBsb2NhdG9yPSIzMjozLTMyOjM3IiBuYW1lPSJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQ4IiBsb2NhdG9yPSIzNzoxLTM4OjU5IiBuYW1lPSJOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBkb3NlcyIvPgogICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAmcXVvdDtOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTIiPgogICAgICAgICAgICAgICAgICA8YTpzPkNvdW50KDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPik8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI1MiIgbG9jYXRvcj0iMzg6My0zODo1OSIgeHNpOnR5cGU9IkNvdW50Ij4KICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNDkiIGxvY2F0b3I9IjM4OjktMzg6NTgiIG5hbWU9IkhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTUiIGxvY2F0b3I9IjQzOjEtNDQ6NTMiIG5hbWU9IkhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iSGliIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIEJvb3N0ZXIgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjU1Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IEhpYiBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBCb29zdGVyIHNlcmllcwoqLwpkZWZpbmUgJnF1b3Q7SGliIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1NyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1NyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzQm9vc3RlcigpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjU3IiBsb2NhdG9yPSI0NDozLTQ0OjUzIiBuYW1lPSJzZXJpZXNCb29zdGVyIiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTYiIGxvY2F0b3I9IjQ0OjMtNDQ6MzciIG5hbWU9IkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNjAiIGxvY2F0b3I9IjQ5OjEtNTA6NTkiIG5hbWU9Ik51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgSGliIEJvb3N0ZXIgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjYwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2NCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY0IiBsb2NhdG9yPSI1MDozLTUwOjU5IiB4c2k6dHlwZT0iQ291bnQiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI2MSIgbG9jYXRvcj0iNTA6OS01MDo1OCIgbmFtZT0iSGliIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NyIgbG9jYXRvcj0iNTU6MS01Njo5MSIgbmFtZT0iRGF0ZSBvZiBGaXJzdCBIaWIgRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBhbmQgdGltZSBvZiBmaXJzdCBIaWIgZG9zZSIvPgogICAgICAgICAgICA8YTpzIHI9IjI2NyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGludGVybmFsOiBEYXRlIGFuZCB0aW1lIG9mIGZpcnN0IEhpYiBkb3NlCiovCmRlZmluZSAmcXVvdDtEYXRlIG9mIEZpcnN0IEhpYiBEb3NlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2OCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+ZGF0ZSBmcm9tIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c3RhcnQgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjcwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3MSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZWFybGllc3QoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+b2NjdXJyZW5jZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+dG9JbnRlcnZhbCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNjgiIGxvY2F0b3I9IjU2OjMtNTY6OTEiIHhzaTp0eXBlPSJEYXRlRnJvbSI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI2OSIgbG9jYXRvcj0iNTY6MTMtNTY6OTEiIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NSIgbG9jYXRvcj0iNTY6MjItNTY6OTEiIG5hbWU9InRvSW50ZXJ2YWwiIGxpYnJhcnlOYW1lPSJXQyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc0IiBsb2NhdG9yPSI1NjoyMi01Njo3OCIgcGF0aD0ib2NjdXJyZW5jZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4KICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhbElkPSIyNzEiIGxvY2F0b3I9IjU2OjIyLTU2OjY3IiBuYW1lPSJlYXJsaWVzdCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3MiIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjI3MyIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3MCIgbG9jYXRvcj0iNTY6MjItNTY6NTYiIG5hbWU9IkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjc4IiBsb2NhdG9yPSI2MToxLTYyOjkzIiBuYW1lPSJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBhbmQgdGltZSBvZiBsYXN0IEhpYiBkb3NlIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjc4Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IERhdGUgYW5kIHRpbWUgb2YgbGFzdCBIaWIgZG9zZQoqLwpkZWZpbmUgJnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSGliIERvc2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjc5Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5kYXRlIGZyb20gPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5zdGFydCBvZiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0hpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5tb3N0UmVjZW50KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPm9jY3VycmVuY2U8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnRvSW50ZXJ2YWwoKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjc5IiBsb2NhdG9yPSI2MjozLTYyOjkzIiB4c2k6dHlwZT0iRGF0ZUZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODAiIGxvY2F0b3I9IjYyOjEzLTYyOjkzIiB4c2k6dHlwZT0iU3RhcnQiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODYiIGxvY2F0b3I9IjYyOjIyLTYyOjkzIiBuYW1lPSJ0b0ludGVydmFsIiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NSIgbG9jYXRvcj0iNjI6MjItNjI6ODAiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjgyIiBsb2NhdG9yPSI2MjoyMi02Mjo2OSIgbmFtZT0ibW9zdFJlY2VudCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4MyIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjI4NCIgbmFtZT0iZmhpcjpJbW11bml6YXRpb24iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zaWduYXR1cmU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4MSIgbG9jYXRvcj0iNjI6MjItNjI6NTYiIG5hbWU9IkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg5IiBsb2NhdG9yPSI3MToxLTcyOjU1IiBuYW1lPSJObyBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyODkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7Tm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5MCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTIiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5MCIgbG9jYXRvcj0iNzI6My03Mjo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyOTMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5NCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5MSIgbG9jYXRvcj0iNzI6My03Mjo1MSIgbmFtZT0iTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5MiIgbG9jYXRvcj0iNzI6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyOTciIGxvY2F0b3I9IjgwOjEtODE6NTUiIG5hbWU9Ik9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7PSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIyOTciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90Oz0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICZxdW90O09uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI5OCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDAiPiA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI5OCIgbG9jYXRvcj0iODE6My04MTo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMDEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMwMiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5OSIgbG9jYXRvcj0iODE6My04MTo1MSIgbmFtZT0iTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwMCIgbG9jYXRvcj0iODE6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMDUiIGxvY2F0b3I9Ijg4OjEtODk6NDgiIG5hbWU9Ik9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDs9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDEiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMwNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90Oz0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7T25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwNiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7T25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMwNiIgbG9jYXRvcj0iODk6My04OTo0OCIgbmFtZT0iT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMwOSIgbG9jYXRvcj0iOTg6MS05OTo1NSIgbmFtZT0iVHdvIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVHdvIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDsgKSA9IDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzA5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFR3byBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7ICkgPSAyCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7VHdvIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEyIj4gPSAyPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTAiIGxvY2F0b3I9Ijk5OjMtOTk6NTUiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzEzIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMTQiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTEiIGxvY2F0b3I9Ijk5OjMtOTk6NTEiIG5hbWU9Ik51bWJlciBvZiBIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTIiIGxvY2F0b3I9Ijk5OjU1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzE3IiBsb2NhdG9yPSIxMDc6MS0xMDg6NTUiIG5hbWU9IlRocmVlIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhyZWUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDs9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKSIvPgogICAgICAgICAgICA8YTpzIHI9IjMxNyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaHJlZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90Oz0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICZxdW90O1RocmVlIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMTgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxOSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIwIj4gPSAzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMTgiIGxvY2F0b3I9IjEwODozLTEwODo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjEiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyMiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxOSIgbG9jYXRvcj0iMTA4OjMtMTA4OjUxIiBuYW1lPSJOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIwIiBsb2NhdG9yPSIxMDg6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzMjUiIGxvY2F0b3I9IjExNjoxLTExNzo1NSIgbmFtZT0iTm8gSGliIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIEhpYiBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzMjUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gSGliIGJvb3N0ZXIgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCB3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7JnF1b3Q7ID0gJnF1b3Q7Qm9vc3RlciBkb3NlJnF1b3Q7KSA9IDAKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O05vIEhpYiBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMyNiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgSGliIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMyNiIgbG9jYXRvcj0iMTE3OjMtMTE3OjU1IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyOSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzMwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI3IiBsb2NhdG9yPSIxMTc6My0xMTc6NTEiIG5hbWU9Ik51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjgiIGxvY2F0b3I9IjExNzo1NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIwIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMzMyIgbG9jYXRvcj0iMTI1OjEtMTI2OjU1IiBuYW1lPSJPbmUgSGliIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgSGliIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzMzMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogT25lIEhpYiBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkIHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtCb29zdGVyIGRvc2UmcXVvdDspID0gMQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7T25lIEhpYiBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzMzQiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIEhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM2Ij4gPSAxPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMzQiIGxvY2F0b3I9IjEyNjozLTEyNjo1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMzciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzNSIgbG9jYXRvcj0iMTI2OjMtMTI2OjUxIiBuYW1lPSJOdW1iZXIgb2YgSGliIEJvb3N0ZXIgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM2IiBsb2NhdG9yPSIxMjY6NTUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNDEiIGxvY2F0b3I9IjEzNToxLTEzNjo0NSIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDYgd2Vla3MiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQxIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgNiB3ZWVrcwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNDIiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDUiPiAmbHQ7IDY8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM0MiIgbG9jYXRvcj0iMTM2OjMtMTM2OjQ1IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzQ2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDQiIGxvY2F0b3I9IjEzNjozLTEzNjo0MSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDUiIGxvY2F0b3I9IjEzNjo0NSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI2IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM1MCIgbG9jYXRvcj0iMTQ1OjEtMTQ3OjUwIiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omkIDUgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzUwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgNSB5ZWFycwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzUxIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTIiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1MyI+NiAmbHQ7PSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNTUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBXZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiAKICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzU4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNjAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM1OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjM2MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYxIj4gJmx0Oz0gNTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM1MSIgbG9jYXRvcj0iMTQ2OjMtMTQ3OjUwIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzUyIiBsb2NhdG9yPSIxNDY6My0xNDY6NDYiIHhzaTp0eXBlPSJMZXNzT3JFcXVhbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzU2IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNTciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNTMiIGxvY2F0b3I9IjE0NjozIiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjYiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM1NSIgbG9jYXRvcj0iMTQ2OjgtMTQ2OjQ2IiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzU4IiBsb2NhdG9yPSIxNDc6Ny0xNDc6NTAiIHhzaTp0eXBlPSJMZXNzT3JFcXVhbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzYyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNjMiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjAiIGxvY2F0b3I9IjE0Nzo3LTE0Nzo0NSIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgbGlicmFyeU5hbWU9IkVsZW1lbnRzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNjEiIGxvY2F0b3I9IjE0Nzo1MCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI1IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzY2IiBsb2NhdG9yPSIxNTY6MS0xNTc6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBhdCBsZWFzdCA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBhdCBsZWFzdCA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgNSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzNjYiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGF0IGxlYXN0IDYgd2Vla3MgYW5kIG5vdCBtb3JlIHRoYW4gNSB5ZWFycwpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpCA1IHllYXJzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGF0IGxlYXN0IDYgd2Vla3MgYW5kIG5vdCBtb3JlIHRoYW4gNSB5ZWFycyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzNjciPgogICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM2NyIgbG9jYXRvcj0iMTU3OjMtMTU3OjQ3IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNzAiIGxvY2F0b3I9IjE2NToxLTE2Njo0NyIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaQgNSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzcwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIG5vdCBtb3JlIHRoYW4gNSB5ZWFycwpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpCA1IHllYXJzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3MSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgNSB5ZWFycyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzcxIiBsb2NhdG9yPSIxNjY6My0xNjY6NDciIG5hbWU9IkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM3NCIgbG9jYXRvcj0iMTc1OjEtMTc2OjQ1IiBuYW1lPSJDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDUgeWVhcnMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gNSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ID4gNSB5ZWFycyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzNzQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA1IHllYXJzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgPiA1IHllYXJzCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA1IHllYXJzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM3NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzc3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNzciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gWWVhcnMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM3OCI+ID4gNTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzc1IiBsb2NhdG9yPSIxNzY6My0xNzY6NDUiIHhzaTp0eXBlPSJHcmVhdGVyIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNzkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM4MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3NyIgbG9jYXRvcj0iMTc2OjMtMTc2OjQxIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIFllYXJzIiBsaWJyYXJ5TmFtZT0iRWxlbWVudHMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM3OCIgbG9jYXRvcj0iMTc2OjQ1IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjUiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzgzIiBsb2NhdG9yPSIxODU6MS0xODY6NDQiIG5hbWU9IkNsaWVudCdzIGFnZSB3YXMgbGVzcyB0aGFuIDEgeWVhciB3aGVuIGZpcnN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSB3YXMgbGVzcyB0aGFuIDEgeWVhciB3aGVuIGZpcnN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7PSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzODMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIHdhcyBsZXNzIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7PSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyAmbHQ7IDEgeWVhcgpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSB3YXMgbGVzcyB0aGFuIDEgeWVhciB3aGVuIGZpcnN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMzg0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkFnZUluWWVhcnNBdCg8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzODUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgRmlyc3QgSGliIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzOTMiPiAmbHQ7IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4NCIgbG9jYXRvcj0iMTg2OjMtMTg2OjQ0IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzk0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzOTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTAiIGxvY2F0b3I9IjE4NjozLTE4Njo0MCIgcHJlY2lzaW9uPSJZZWFyIiB4c2k6dHlwZT0iQ2FsY3VsYXRlQWdlQXQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM5MSIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzkyIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzg5IiBwYXRoPSJiaXJ0aERhdGUudmFsdWUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzg4IiBuYW1lPSJQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjM4NSIgbG9jYXRvcj0iMTg2OjE2LTE4NjozOSIgbmFtZT0iRGF0ZSBvZiBGaXJzdCBIaWIgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzOTMiIGxvY2F0b3I9IjE4Njo0NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM5OCIgbG9jYXRvcj0iMTk1OjEtMTk2OjQ1IiBuYW1lPSJDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiAxIHllYXIgd2hlbiBmaXJzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJDbGllbnQncyBhZ2Ugd2FzIG1vcmUgdGhhbiAxIHllYXIgd2hlbiBmaXJzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90Oz0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O0Rvc2UgbnVtYmVyJnF1b3Q7ID0gMSkg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDEgeWVhciIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSIzOTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7PSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7RG9zZSBudW1iZXImcXVvdDsgPSAxKSDiiJIgJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMSB5ZWFyCkBkZWNpc2lvbjogMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKQpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgzcCsxKQpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7Q2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIzOTkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwNSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+QWdlSW5ZZWFyc0F0KDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBGaXJzdCBIaWIgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQwOCI+ID49IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM5OSIgbG9jYXRvcj0iMTk2OjMtMTk2OjQ1IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwOSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDEwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA1IiBsb2NhdG9yPSIxOTY6My0xOTY6NDAiIHByZWNpc2lvbj0iWWVhciIgeHNpOnR5cGU9IkNhbGN1bGF0ZUFnZUF0Ij4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0MDYiIG5hbWU9InQ6RGF0ZSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQwNyIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQwNCIgcGF0aD0iYmlydGhEYXRlLnZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjQwMyIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MDAiIGxvY2F0b3I9IjE5NjoxNi0xOTY6MzkiIG5hbWU9IkRhdGUgb2YgRmlyc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDA4IiBsb2NhdG9yPSIxOTY6NDUiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MTMiIGxvY2F0b3I9IjIwNDoxLTIwNjo3MyIgbmFtZT0iVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtIaWItY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0MTMiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgNCB3ZWVrcwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDE0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MTciPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxNSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSGliIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQxOCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQyMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSGliIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MjkiPiAmbHQ7IDQ8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0MTQiIGxvY2F0b3I9IjIwNTozLTIwNjo3MyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQxNyIgbG9jYXRvcj0iMjA1OjMtMjA1OjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDE2IiBsb2NhdG9yPSIyMDU6My0yMDU6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTUiIGxvY2F0b3I9IjIwNTozLTIwNToyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0MTgiIGxvY2F0b3I9IjIwNjo5LTIwNjo3MyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQzMCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDMxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDE5IiBsb2NhdG9yPSIyMDY6OS0yMDY6NjkiIHByZWNpc2lvbj0iV2VlayIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDI3IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDI4IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyNSIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQyNiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQyMCIgbG9jYXRvcj0iMjA2OjM1LTIwNjo1OSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDIzIiBsb2NhdG9yPSIyMDY6NjUtMjA2OjY5IiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDI5IiBsb2NhdG9yPSIyMDY6NzMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQzNCIgbG9jYXRvcj0iMjE0OjEtMjE1OjY3IiBuYW1lPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGhvdXQgYSBib29zdGVyIGRvc2UgKDNwKSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDM0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNCB3ZWVrcwpAZGVjaXNpb246IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDM1Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5ub3Q8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPig8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQzNSIgbG9jYXRvcj0iMjE1OjMtMjE1OjY3IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDM2IiBsb2NhdG9yPSIyMTU6Ni0yMTU6NjciIG5hbWU9IlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNDM5IiBsb2NhdG9yPSIyMjI6MS0yMjQ6NzMiIG5hbWU9IlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgOCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDM5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDggd2Vla3MKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNDQwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSGliIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0NCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5kdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ0NiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGF0ZSBvZiBMYXRlc3QgSGliIERvc2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPk5vdygpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NTUiPiAmbHQ7IDg8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI0NDAiIGxvY2F0b3I9IjIyMzozLTIyNDo3MyIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0MyIgbG9jYXRvcj0iMjIzOjMtMjIzOjM5IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQyIiBsb2NhdG9yPSIyMjM6My0yMjM6MzkiIHhzaTp0eXBlPSJJc051bGwiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDEiIGxvY2F0b3I9IjIyMzozLTIyMzoyNyIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NDQiIGxvY2F0b3I9IjIyNDo5LTIyNDo3MyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ1NiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDU3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ1IiBsb2NhdG9yPSIyMjQ6OS0yMjQ6NjkiIHByZWNpc2lvbj0iV2VlayIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDUzIiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDU0IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ1MSIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ1MiIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ0NiIgbG9jYXRvcj0iMjI0OjM1LTIyNDo1OSIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDQ5IiBsb2NhdG9yPSIyMjQ6NjUtMjI0OjY5IiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDU1IiBsb2NhdG9yPSIyMjQ6NzMiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ2MCIgbG9jYXRvcj0iMjMxOjEtMjMyOjYyIiBuYW1lPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDggd2Vla3MgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDggd2Vla3MgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgOCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpIi8+CiAgICAgICAgICAgIDxhOnMgcj0iNDYwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgOCB3ZWVrcwpAZGVjaXNpb246IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA4IHdlZWtzIGFnbyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI0NjEiPgogICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ2MSIgbG9jYXRvcj0iMjMyOjMtMjMyOjYyIiBuYW1lPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDggd2Vla3MgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0NjQiIGxvY2F0b3I9IjI0MDoxLTI0Mjo3NCIgbmFtZT0iVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDYgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IjIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKSIvPgogICAgICAgICAgICA8YTpzIHI9IjQ2NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspICZsdDsgNiBtb250aHMKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ2NSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDY4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IEhpYiBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NjkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gbW9udGhzIGJldHdlZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDcxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ3NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Tm93KCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ4MCI+ICZsdDsgNjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQ2NSIgbG9jYXRvcj0iMjQxOjMtMjQyOjc0IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDY4IiBsb2NhdG9yPSIyNDE6My0yNDE6MzkiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NjciIGxvY2F0b3I9IjI0MTozLTI0MTozOSIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2NiIgbG9jYXRvcj0iMjQxOjMtMjQxOjI3IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2OSIgbG9jYXRvcj0iMjQyOjktMjQyOjc0IiB4c2k6dHlwZT0iTGVzcyI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDgxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSI0ODIiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NzAiIGxvY2F0b3I9IjI0Mjo5LTI0Mjo3MCIgcHJlY2lzaW9uPSJNb250aCIgeHNpOnR5cGU9IkR1cmF0aW9uQmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDc4IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iNDc5IiBuYW1lPSJ0OkRhdGVUaW1lIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3NiIgeHNpOnR5cGU9IlRvRGF0ZVRpbWUiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjQ3NyIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ3MSIgbG9jYXRvcj0iMjQyOjM2LTI0Mjo2MCIgbmFtZT0iRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDc0IiBsb2NhdG9yPSIyNDI6NjYtMjQyOjcwIiB4c2k6dHlwZT0iTm93Ii8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDgwIiBsb2NhdG9yPSIyNDI6NzQiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iNiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQ4NSIgbG9jYXRvcj0iMjUwOjEtMjUxOjY4IiBuYW1lPSJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7SGliLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIOKJpSA2IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSIyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkiLz4KICAgICAgICAgICAgPGE6cyByPSI0ODUiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O0hpYi1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNiBtb250aHMKQGRlY2lzaW9uOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNiBtb250aHMgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQ4NiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90PC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4oPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDg3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4pPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iNDg2IiBsb2NhdG9yPSIyNTE6My0yNTE6NjgiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0ODciIGxvY2F0b3I9IjI1MTo2LTI1MTo2OCIgbmFtZT0iVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="/>
  </content>
</Library>