<?xml version="1.0" encoding="UTF-8"?>

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

        
        
        <tr>
            <th scope="row"><b>Id: </b></th>
            <td style="padding-left: 4px;">IMMZD2DTYellowfeverEncounterElements</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-IMMZD2DTYellowfeverEncounterElements.html">IMMZD2DTYellowfeverEncounterElements</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-07-23 20:56:04+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 encounter-based elements for Yellow fever 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-IMMZEncounterElements.html">IMMZEncounterElements</a></li>
                  
                    <li><a href="Library-IMMZD2DTYellowfeverElements.html">IMMZD2DTYellowfeverElements</a></li>
                  
                </ul>
                
                
                
                
                
            </td>
        </tr>
        

        
        <tr>
          <th scope="row"><b>Parameters: </b></th>
          <td style="padding-left: 4px;">
            <table class="grid-dict">
              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>
              
                <tr><th>Today</th><th>date</th><th>0</th><th>1</th><th>In</th></tr>
              
                <tr><th>EncounterId</th><th>string</th><th>0</th><th>1</th><th>In</th></tr>
              
                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Yellow fever Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
              
                <tr><th>Yellow fever Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>
              
                <tr><th>Number of Yellow fever Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>No yellow fever primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>One yellow fever primary series 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 9 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Client's age is more than or equal to 9 months</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Live vaccine was administered in the past 4 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>No live vaccine was administered in the past 4 weeks</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: IMMZD2DTYellowfeverEncounterElements
  */
library IMMZD2DTYellowfeverEncounterElements

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 IMMZEncounterElements called Encounter

include IMMZD2DTYellowfeverElements called YellowfeverElements

parameter Today Date default Today()
parameter EncounterId String

context Patient

/*
@internal: Yellow fever containing Doses Administered to Patient
*/
define &quot;Yellow fever Doses Administered to Patient&quot;:
  Encounter.&quot;Doses Administered to Patient&quot; I
  where
    I.vaccineCode in Concepts.&quot;Yellow fever vaccines&quot;

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

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

/*
@input: No yellow fever primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Yellow fever vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0
*/
define &quot;No yellow fever primary series doses were administered&quot;:
  &quot;Number of Yellow fever Primary Series Doses Administered&quot; = 0

/*
@input: One yellow fever primary series dose was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Yellow fever vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1
*/
define &quot;One yellow fever primary series dose was administered&quot;:
  &quot;Number of Yellow fever Primary Series Doses Administered&quot; = 1

/*
@input: Client's age is less than 9 months
@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 9 months
*/
define &quot;Client's age is less than 9 months&quot;:
  Encounter.&quot;Current Patient Age In Months&quot; &lt; 9

/*
@input: Client's age is more than or equal to 9 months
@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 9 months
*/
define &quot;Client's age is more than or equal to 9 months&quot;:
  Encounter.&quot;Current Patient Age In Months&quot; &gt;= 9

/*
@input: Live vaccine was administered in the past 4 weeks
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) &lt; 4 weeks
*/
define &quot;Live vaccine was administered in the past 4 weeks&quot;:
  Encounter.&quot;Live vaccine was administered in the last 4 weeks&quot;

/*
@input: No live vaccine was administered in the past 4 weeks
@pseudocode: Today's date − latest &quot;Date and time of vaccination&quot; (where &quot;Live vaccine&quot; = TRUE) ≥ 4 weeks
*/
define &quot;No live vaccine was administered in the past 4 weeks&quot;:
  Encounter.&quot;No live vaccine was administered in the last 4 weeks&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 (28184 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/IMMZD2DTYellowfeverEncounterElements"/>
  <version value="0.2.0"/>
  <name value="IMMZD2DTYellowfeverEncounterElements"/>
  <title value="IMMZD2DTYellowfeverEncounterElements"/>
  <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-07-23T20:56:04+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 encounter-based elements for Yellow fever 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 Encounter"/>
    <resource value="http://smart.who.int/immunizations/Library/IMMZEncounterElements"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library YellowfeverElements"/>
    <resource value="http://smart.who.int/immunizations/Library/IMMZD2DTYellowfeverElements"/>
  </relatedArtifact>
  <parameter>
    <name value="Today"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="EncounterId"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Patient"/>
  </parameter>
  <parameter>
    <name value="Yellow fever Doses Administered to Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="Immunization"/>
  </parameter>
  <parameter>
    <name value="Yellow fever Primary Series Doses Administered to Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <type value="Immunization"/>
  </parameter>
  <parameter>
    <name value="Number of Yellow fever Primary Series Doses Administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="integer"/>
  </parameter>
  <parameter>
    <name value="No yellow fever primary series doses were administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="One yellow fever primary series 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 9 months"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Client's age is more than or equal to 9 months"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Live vaccine was administered in the past 4 weeks"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="No live vaccine was administered in the past 4 weeks"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <content>
    <contentType value="text/cql"/>
    <data value="Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFllbGxvd2ZldmVyRW5jb3VudGVyRWxlbWVudHMKICAqLwpsaWJyYXJ5IElNTVpEMkRUWWVsbG93ZmV2ZXJFbmNvdW50ZXJFbGVtZW50cwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29uY2VwdHMKaW5jbHVkZSBXSE9Db21tb24gY2FsbGVkIFdDCmluY2x1ZGUgV0hPRWxlbWVudHMgY2FsbGVkIFdFCgppbmNsdWRlIElNTVpDb21tb24gY2FsbGVkIENvbW1vbgppbmNsdWRlIElNTVpDb25jZXB0cyBjYWxsZWQgQ29uY2VwdHMKCmluY2x1ZGUgSU1NWkVuY291bnRlckVsZW1lbnRzIGNhbGxlZCBFbmNvdW50ZXIKCmluY2x1ZGUgSU1NWkQyRFRZZWxsb3dmZXZlckVsZW1lbnRzIGNhbGxlZCBZZWxsb3dmZXZlckVsZW1lbnRzCgpwYXJhbWV0ZXIgVG9kYXkgRGF0ZSBkZWZhdWx0IFRvZGF5KCkKcGFyYW1ldGVyIEVuY291bnRlcklkIFN0cmluZwoKY29udGV4dCBQYXRpZW50CgovKgpAaW50ZXJuYWw6IFllbGxvdyBmZXZlciBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiWWVsbG93IGZldmVyIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICBFbmNvdW50ZXIuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIlllbGxvdyBmZXZlciB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogWWVsbG93IGZldmVyIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzCiovCmRlZmluZSAiWWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiWWVsbG93IGZldmVyIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIFllbGxvdyBmZXZlciBQcmltYXJ5IFNlcmllcyBkb3NlcwoqLwpkZWZpbmUgIk51bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiWWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogTm8geWVsbG93IGZldmVyIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlllbGxvdyBmZXZlciB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAwCiovCmRlZmluZSAiTm8geWVsbG93IGZldmVyIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFllbGxvdyBmZXZlciBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBPbmUgeWVsbG93IGZldmVyIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJZZWxsb3cgZmV2ZXIgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMQoqLwpkZWZpbmUgIk9uZSB5ZWxsb3cgZmV2ZXIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFllbGxvdyBmZXZlciBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDkgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDkgbW9udGhzCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyI6CiAgRW5jb3VudGVyLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPCA5CgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpSA5IG1vbnRocwoqLwpkZWZpbmUgIkNsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gOSBtb250aHMiOgogIEVuY291bnRlci4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiID49IDkKCi8qCkBpbnB1dDogTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiTGl2ZSB2YWNjaW5lIiA9IFRSVUUpIDwgNCB3ZWVrcwoqLwpkZWZpbmUgIkxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MiOgogIEVuY291bnRlci4iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIKCi8qCkBpbnB1dDogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiTGl2ZSB2YWNjaW5lIiA9IFRSVUUpIOKJpSA0IHdlZWtzCiovCmRlZmluZSAiTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyI6CiAgRW5jb3VudGVyLiJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIgoK"/>
  </content>
  <content>
    <contentType value="application/elm+xml"/>
    <data value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIFtyZWZlcmVuY2VdIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMjg0Ij4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRZZWxsb3dmZXZlckVuY291bnRlckVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVFllbGxvd2ZldmVyRW5jb3VudGVyRWxlbWVudHM8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9IklNTVpEMkRUWWVsbG93ZmV2ZXJFbmNvdW50ZXJFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIi8+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA2IiBsb2NhdG9yPSI3OjEtNzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA2Ij4KICAgICAgICAgICAgICAgPGE6cz51c2luZyA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvdXNpbmdzPgogICA8aW5jbHVkZXM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjA3IiBsb2NhdG9yPSI4OjEtODozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2hsNy5vcmcvZmhpci9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDciPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMDgiIGxvY2F0b3I9IjEwOjEtMTA6MTkiIGxvY2FsSWRlbnRpZmllcj0iV0hPQ29uY2VwdHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwOSIgbG9jYXRvcj0iMTE6MS0xMToyNyIgbG9jYWxJZGVudGlmaWVyPSJXQyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9Db21tb24iPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDkiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+V0hPQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0M8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEwIiBsb2NhdG9yPSIxMjoxLTEyOjI5IiBsb2NhbElkZW50aWZpZXI9IldFIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0VsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0VsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgV0U8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjExIiBsb2NhdG9yPSIxNDoxLTE0OjMyIiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjExIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb21tb248L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEyIiBsb2NhdG9yPSIxNToxLTE1OjM2IiBsb2NhbElkZW50aWZpZXI9IkNvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpDb25jZXB0cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBDb25jZXB0czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTMiIGxvY2F0b3I9IjE3OjEtMTc6NDYiIGxvY2FsSWRlbnRpZmllcj0iRW5jb3VudGVyIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL0lNTVpFbmNvdW50ZXJFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMyI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRW5jb3VudGVyRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBFbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjE0IiBsb2NhdG9yPSIxOToxLTE5OjYyIiBsb2NhbElkZW50aWZpZXI9IlllbGxvd2ZldmVyRWxlbWVudHMiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkQyRFRZZWxsb3dmZXZlckVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjE0Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpEMkRUWWVsbG93ZmV2ZXJFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFllbGxvd2ZldmVyRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgIDwvaW5jbHVkZXM+CiAgIDxwYXJhbWV0ZXJzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNSIgbG9jYXRvcj0iMjE6MS0yMTozNiIgbmFtZT0iVG9kYXkiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTUiPgogICAgICAgICAgICAgICA8YTpzPnBhcmFtZXRlciBUb2RheSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMTkiPgogICAgICAgICAgICAgICAgICA8YTpzPkRhdGU8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGRlZmF1bHQgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjE4Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheSgpPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZGVmYXVsdCBsb2NhbElkPSIyMTgiIGxvY2F0b3I9IjIxOjMwLTIxOjM2IiB4c2k6dHlwZT0iVG9kYXkiLz4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMjE5IiBsb2NhdG9yPSIyMToxNy0yMToyMCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMCIgbG9jYXRvcj0iMjI6MS0yMjoyOCIgbmFtZT0iRW5jb3VudGVySWQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMjAiPgogICAgICAgICAgICAgICA8YTpzPnBhcmFtZXRlciBFbmNvdW50ZXJJZCA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMjEiPgogICAgICAgICAgICAgICAgICA8YTpzPlN0cmluZzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPHBhcmFtZXRlclR5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMjIxIiBsb2NhdG9yPSIyMjoyMy0yMjoyOCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyNSIgbG9jYXRvcj0iMjQ6MS0yNDoxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMjMiIGxvY2F0b3I9IjI0OjEtMjQ6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMjQiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjIyIiBsb2NhdG9yPSIyNDoxLTI0OjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI3IiBsb2NhdG9yPSIyOToxLTMyOjUzIiBuYW1lPSJZZWxsb3cgZmV2ZXIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnRlcm5hbCIgdmFsdWU9IlllbGxvdyBmZXZlciBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjI3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFllbGxvdyBmZXZlciBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAmcXVvdDtZZWxsb3cgZmV2ZXIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjM4Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMjgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyLiZxdW90O0Rvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gSTwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVyZQogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+STwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz52YWNjaW5lQ29kZTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGluIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db25jZXB0czwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtZZWxsb3cgZmV2ZXIgdmFjY2luZXMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMzgiIGxvY2F0b3I9IjMwOjMtMzI6NTMiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjI4IiBsb2NhdG9yPSIzMDozLTMwOjQ1IiBhbGlhcz0iSSI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMCIgbG9jYXRvcj0iMzA6My0zMDo0MyIgbmFtZT0iRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMjM1IiBsb2NhdG9yPSIzMTozLTMyOjUzIiB4c2k6dHlwZT0iSW5WYWx1ZVNldCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjM3IiBuYW1lPSJ0OkNvbmNlcHQiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPGNvZGUgbG9jYWxJZD0iMjM2IiBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjMyIiBsb2NhdG9yPSIzMjo1LTMyOjE3IiBwYXRoPSJ2YWNjaW5lQ29kZSIgc2NvcGU9IkkiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPgogICAgICAgICAgICAgICA8L2NvZGU+CiAgICAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIyMzQiIGxvY2F0b3I9IjMyOjIyLTMyOjUzIiBuYW1lPSJZZWxsb3cgZmV2ZXIgdmFjY2luZXMiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgcHJlc2VydmU9InRydWUiLz4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNDAiIGxvY2F0b3I9IjM3OjEtMzg6NjIiIG5hbWU9IlllbGxvdyBmZXZlciBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iWWVsbG93IGZldmVyIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFllbGxvdyBmZXZlciBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgJnF1b3Q7WWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0MiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtZZWxsb3cgZmV2ZXIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzUHJpbWFyeSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQyIiBsb2NhdG9yPSIzODozLTM4OjYyIiBuYW1lPSJzZXJpZXNQcmltYXJ5IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNDEiIGxvY2F0b3I9IjM4OjMtMzg6NDYiIG5hbWU9IlllbGxvdyBmZXZlciBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNDQiIGxvY2F0b3I9IjQzOjEtNDQ6NjgiIG5hbWU9Ik51bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgWWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQ0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjQ4IiBsb2NhdG9yPSI0NDozLTQ0OjY4IiB4c2k6dHlwZT0iQ291bnQiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iNDQ6OS00NDo2NyIgbmFtZT0iWWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI1MCIgbG9jYXRvcj0iNTA6MS01MTo2NCIgbmFtZT0iTm8geWVsbG93IGZldmVyIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyB5ZWxsb3cgZmV2ZXIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7WWVsbG93IGZldmVyIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjUwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIHllbGxvdyBmZXZlciBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtZZWxsb3cgZmV2ZXIgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAKKi8KZGVmaW5lICZxdW90O05vIHllbGxvdyBmZXZlciBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTEiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TnVtYmVyIG9mIFllbGxvdyBmZXZlciBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUzIj4gPSAwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNTEiIGxvY2F0b3I9IjUxOjMtNTE6NjQiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjU0IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNTUiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTIiIGxvY2F0b3I9IjUxOjMtNTE6NjAiIG5hbWU9Ik51bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTMiIGxvY2F0b3I9IjUxOjY0IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjU3IiBsb2NhdG9yPSI1NzoxLTU4OjY0IiBuYW1lPSJPbmUgeWVsbG93IGZldmVyIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iT25lIHllbGxvdyBmZXZlciBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7WWVsbG93IGZldmVyIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAxIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjU3Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE9uZSB5ZWxsb3cgZmV2ZXIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1llbGxvdyBmZXZlciB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQoqLwpkZWZpbmUgJnF1b3Q7T25lIHllbGxvdyBmZXZlciBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjU4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O051bWJlciBvZiBZZWxsb3cgZmV2ZXIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2MCI+ID0gMTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjU4IiBsb2NhdG9yPSI1ODozLTU4OjY0IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI2MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjYyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjU5IiBsb2NhdG9yPSI1ODozLTU4OjYwIiBuYW1lPSJOdW1iZXIgb2YgWWVsbG93IGZldmVyIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjYwIiBsb2NhdG9yPSI1ODo2NCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NCIgbG9jYXRvcj0iNjQ6MS02NTo0NyIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgOSBtb250aHMiLz4KICAgICAgICAgICAgPGE6cyByPSIyNjQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgOSBtb250aHMKKi8KZGVmaW5lICZxdW90O0NsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gOSBtb250aHMmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjY1Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjciPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0N1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjgiPiAmbHQ7IDk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2NSIgbG9jYXRvcj0iNjU6My02NTo0NyIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI2OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjcwIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY3IiBsb2NhdG9yPSI2NTozLTY1OjQzIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY4IiBsb2NhdG9yPSI2NTo0NyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI3MiIgbG9jYXRvcj0iNzE6MS03Mjo0OCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA5IG1vbnRocyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byA5IG1vbnRocyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7IOKJpSA5IG1vbnRocyIvPgogICAgICAgICAgICA8YTpzIHI9IjI3MiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDkgbW9udGhzCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDkgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI3MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc2Ij4gPj0gOTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjczIiBsb2NhdG9yPSI3MjozLTcyOjQ4IiB4c2k6dHlwZT0iR3JlYXRlck9yRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3NyIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjc4IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc1IiBsb2NhdG9yPSI3MjozLTcyOjQzIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc2IiBsb2NhdG9yPSI3Mjo0OCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI4MCIgbG9jYXRvcj0iNzg6MS03OTo2MyIgbmFtZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtMaXZlIHZhY2NpbmUmcXVvdDsgPSBUUlVFKSAmbHQ7IDQgd2Vla3MiLz4KICAgICAgICAgICAgPGE6cyByPSIyODAiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkgJmx0OyA0IHdlZWtzCiovCmRlZmluZSAmcXVvdDtMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4MiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4MiIgbG9jYXRvcj0iNzk6My03OTo2MyIgbmFtZT0iTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg0IiBsb2NhdG9yPSI4NToxLTg2OjY2IiBuYW1lPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O0xpdmUgdmFjY2luZSZxdW90OyA9IFRSVUUpIOKJpSA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjg0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O0xpdmUgdmFjY2luZSZxdW90OyA9IFRSVUUpIOKJpSA0IHdlZWtzCiovCmRlZmluZSAmcXVvdDtObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Tm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4NiIgbG9jYXRvcj0iODY6My04Njo2NiIgbmFtZT0iTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="/>
  </content>
</Library>