WHO Immunization Implementation Guide
1.0.0 - release

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

: IMMZD18SMumpsLogic - XML Representation

Draft as of 2026-03-31

Raw xml | Download


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

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

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

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

        

        

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

        

        
        <tr>
            <th scope="row"><b>Type: </b></th>
            <td style="padding-left: 4px;">
                
                    
                        
                        <p style="margin-bottom: 5px;">
                            <b>system: </b> <span><a href="http://terminology.hl7.org/7.1.0/CodeSystem-library-type.html">http://terminology.hl7.org/CodeSystem/library-type</a></span>
                        </p>
                        
                        
                        <p style="margin-bottom: 5px;">
                            <b>code: </b> <span>logic-library</span>
                        </p>
                        
                        
                    
                
                
            </td>
        </tr>
        

        

        
        <tr>
            <th scope="row"><b>Date: </b></th>
            <td style="padding-left: 4px;">2026-03-31 13:54:17+0000</td>
        </tr>
        

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

        
        <tr>
            <th scope="row"><b>Description: </b></th>
            <td style="padding-left: 4px;"><div><p>This library defines decision support logic for the IMMZ.D18.S.Mumps schedule table in the Immunization CPG</p>
</div></td>
        </tr>
        

        

        

        

        

        

        

        

        

        

        

        
        <tr>
            <th scope="row"><b>Related Artifacts: </b></th>
            <td style="padding-left: 4px;">
                
                
                
                <p><b>Dependencies</b></p>
                <ul>
                  
                    <li><a href="Library-WHOCommon.html">WHOCommon</a></li>
                  
                    <li><a href="Library-IMMZCommon.html">IMMZCommon</a></li>
                  
                    <li><a href="Library-IMMZConcepts.html">IMMZConcepts</a></li>
                  
                    <li><a href="Library-IMMZEncounterElements.html">IMMZEncounterElements</a></li>
                  
                    <li><a href="Library-IMMZD2DTMumpsEncounterElements.html">IMMZD2DTMumpsEncounterElements</a></li>
                  
                </ul>
                
                
                
                
                
            </td>
        </tr>
        

        
        <tr>
          <th scope="row"><b>Parameters: </b></th>
          <td style="padding-left: 4px;">
            <table class="grid-dict">
              <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>
              
                <tr><th>Today</th><th>date</th><th>0</th><th>1</th><th>In</th></tr>
              
                <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>First mumps dose from the primary series was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 1</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 1 Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 1 Overdue</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 1 Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 1 Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Second mumps dose from the primary series was administered. The primary series has been completed</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 2</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 2 Due Date</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 2 Overdue</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 2 Create</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Mumps dose 2 Expiration</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
                <tr><th>Test Validation</th><th>Resource</th><th>0</th><th>1</th><th>Out</th></tr>
              
            </table>
          </td>
        </tr>
        

        

        
        
        <tr>
          <td colspan="2">
            <table>
              <tr><th><a id="cql-content"><b>Content: </b></a> text/cql</th></tr>
              <tr><td><pre><code class="language-cql">/*
 * Library: IMMZD18SMumpsLogic (IMMZ.D18.S.Mumps schedule)
 * Schedule Table: 2-dose schedule
 */
library IMMZD18SMumpsLogic

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

include WHOCommon called WC

include IMMZCommon called Common
include IMMZConcepts called Concepts

include IMMZEncounterElements called IE
include IMMZD2DTMumpsEncounterElements called Encounter

parameter Today Date default Today()


context Patient


/*
@output: Mumps dose 1
@description: Provision of the mumps dose 1
@trigger: Child's birth
@pseudo: 
@triggerDate: &quot;Date of birth&quot;
*/
define &quot;Mumps dose 1&quot;:
  Encounter.&quot;No mumps primary series doses were administered&quot;
  and not &quot;First mumps dose from the primary series was administered&quot;


/*
@output: Mumps dose 1 Create
@create: The first dose of the mumps-containing vaccine (monovalent or MMR [measles, mumps and rubella]) should be given at 12–18 months of age.
*/
define &quot;Mumps dose 1 Create&quot;:
  if &quot;Mumps dose 1&quot;
  then 'The first dose of the mumps-containing vaccine (monovalent or MMR [measles, mumps and rubella]) should be given at 12–18 months of age.' + '
Due Date: ' + ToString(&quot;Mumps dose 1 Due Date&quot;) + '
Overdue: ' + ToString(&quot;Mumps dose 1 Overdue&quot;)
  else ''


/*
@dynamicValue: Mumps dose 1 Due Date
@pseudocode: &quot;Date of birth&quot; + 12 months
*/
define &quot;Mumps dose 1 Due Date&quot;:
  if &quot;Mumps dose 1&quot; then Patient.birthDate + 12 months
  else null


/*
@dynamicValue: Mumps dose 1 Overdue
@pseudocode: &quot;Date of birth&quot; + 18 months
*/
define &quot;Mumps dose 1 Overdue&quot;:
  if &quot;Mumps dose 1&quot; then Patient.birthDate + 18 months
  else null


/*
@dynamicValue: Mumps dose 1 Expiration
@pseudocode: To be determined by Member States; however, there is no recommended expiration date and individuals are always eligible to be vaccinated.
*/
define &quot;Mumps dose 1 Expiration&quot;:
  null

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



/*
@output: Mumps dose 2
@description: Provision of the mumps dose 2
@trigger: First mumps dose from the primary series was administered
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Mumps-containing vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1
@triggerDate: &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Mumps-containing vaccines&quot;)
*/
define &quot;Mumps dose 2&quot;:
  &quot;First mumps dose from the primary series was administered&quot;
  and not &quot;Second mumps dose from the primary series was administered. The primary series has been completed&quot;


/*
@output: Mumps dose 2 Create
@create: The age of administration of the second dose may range from the second year of life to age at school entry (about 6 years of age). The minimum interval between the first and the second doses is 1 month.
*/
define &quot;Mumps dose 2 Create&quot;:
  if &quot;Mumps dose 2&quot;
  then 'The age of administration of the second dose may range from the second year of life to age at school entry (about 6 years of age). The minimum interval between the first and the second doses is 1 month.' + '
Due Date: ' + ToString(&quot;Mumps dose 2 Due Date&quot;) + '
Overdue: ' + ToString(&quot;Mumps dose 2 Overdue&quot;)
  else ''


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


/*
@dynamicValue: Mumps dose 2 Overdue
@pseudocode: &quot;Date of birth&quot; + 6 years
*/
define &quot;Mumps dose 2 Overdue&quot;:
  if &quot;Mumps dose 2&quot; then Patient.birthDate + 6 years
  else null


/*
@dynamicValue: Mumps dose 2 Expiration
@pseudocode: To be determined by Member States; however, there is no recommended expiration date and individuals are always eligible to be vaccinated.
*/
define &quot;Mumps dose 2 Expiration&quot;:
  null

  
/*
@complete: Second mumps dose from the primary series was administered. The primary series has been completed
@pseudocode: &quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;Mumps-containing vaccines&quot;)&quot;
*/
define &quot;Second mumps dose from the primary series was administered. The primary series has been completed&quot;:
  Encounter.&quot;Two mumps primary series doses were administered&quot;



/*
@test: Test expected results based on example patients
*/
define &quot;Test Validation&quot;:
  case
    when Patient.id = 'Mumps08.1' then &quot;Mumps dose 1&quot;
    when Patient.id = 'Mumps09.3' then &quot;Mumps dose 1&quot;
    when Patient.id = 'Mumps10.3' then &quot;Mumps dose 1&quot;
    when Patient.id = 'Mumps11.2' then &quot;Mumps dose 2&quot;
    when Patient.id = 'Mumps12.3' then &quot;Mumps dose 2&quot;
    when Patient.id = 'Mumps13.3' then &quot;Mumps dose 2&quot;
    when Patient.id = 'Mumps14.1' then &quot;Second mumps dose from the primary series was administered. The primary series has been completed&quot;
    else 'No test case set'
  end
</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/IMMZD18SMumpsLogic"/>
  <version value="1.0.0"/>
  <name value="IMMZD18SMumpsLogic"/>
  <title value="IMMZD18SMumpsLogic"/>
  <status value="draft"/>
  <experimental value="false"/>
  <type>
    <coding>
      <system value="http://terminology.hl7.org/CodeSystem/library-type"/>
      <code value="logic-library"/>
    </coding>
  </type>
  <date value="2026-03-31T13:54:17+00:00"/>
  <publisher value="WHO"/>
  <contact>
    <name value="WHO"/>
    <telecom>
      <system value="url"/>
      <value value="http://who.int"/>
    </telecom>
  </contact>
  <description
               value="This library defines decision support logic for the IMMZ.D18.S.Mumps schedule table in the Immunization CPG"/>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library WC"/>
    <resource value="http://smart.who.int/immunizations/Library/WHOCommon"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Common"/>
    <resource value="http://smart.who.int/immunizations/Library/IMMZCommon"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Concepts"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZConcepts"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library IE"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZEncounterElements"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <display value="Library Encounter"/>
    <resource
              value="http://smart.who.int/immunizations/Library/IMMZD2DTMumpsEncounterElements"/>
  </relatedArtifact>
  <parameter>
    <name value="Today"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Patient"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Patient"/>
  </parameter>
  <parameter>
    <name value="First mumps dose from the primary series was administered"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 1"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 1 Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 1 Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 1 Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 1 Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name
          value="Second mumps dose from the primary series was administered. The primary series has been completed"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 2"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 2 Due Date"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 2 Overdue"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 2 Create"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="Mumps dose 2 Expiration"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="Test Validation"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <type value="Resource"/>
  </parameter>
  <content>
    <contentType value="text/cql"/>
    <data
          value="LyoKICogTGlicmFyeTogSU1NWkQxOFNNdW1wc0xvZ2ljIChJTU1aLkQxOC5TLk11bXBzIHNjaGVkdWxlKQogKiBTY2hlZHVsZSBUYWJsZTogMi1kb3NlIHNjaGVkdWxlCiAqLwpsaWJyYXJ5IElNTVpEMThTTXVtcHNMb2dpYwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgV0hPQ29tbW9uIGNhbGxlZCBXQwoKaW5jbHVkZSBJTU1aQ29tbW9uIGNhbGxlZCBDb21tb24KaW5jbHVkZSBJTU1aQ29uY2VwdHMgY2FsbGVkIENvbmNlcHRzCgppbmNsdWRlIElNTVpFbmNvdW50ZXJFbGVtZW50cyBjYWxsZWQgSUUKaW5jbHVkZSBJTU1aRDJEVE11bXBzRW5jb3VudGVyRWxlbWVudHMgY2FsbGVkIEVuY291bnRlcgoKcGFyYW1ldGVyIFRvZGF5IERhdGUgZGVmYXVsdCBUb2RheSgpCgoKY29udGV4dCBQYXRpZW50CgoKLyoKQG91dHB1dDogTXVtcHMgZG9zZSAxCkBkZXNjcmlwdGlvbjogUHJvdmlzaW9uIG9mIHRoZSBtdW1wcyBkb3NlIDEKQHRyaWdnZXI6IENoaWxkJ3MgYmlydGgKQHBzZXVkbzogCkB0cmlnZ2VyRGF0ZTogIkRhdGUgb2YgYmlydGgiCiovCmRlZmluZSAiTXVtcHMgZG9zZSAxIjoKICBFbmNvdW50ZXIuIk5vIG11bXBzIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIgogIGFuZCBub3QgIkZpcnN0IG11bXBzIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIKCgovKgpAb3V0cHV0OiBNdW1wcyBkb3NlIDEgQ3JlYXRlCkBjcmVhdGU6IFRoZSBmaXJzdCBkb3NlIG9mIHRoZSBtdW1wcy1jb250YWluaW5nIHZhY2NpbmUgKG1vbm92YWxlbnQgb3IgTU1SIFttZWFzbGVzLCBtdW1wcyBhbmQgcnViZWxsYV0pIHNob3VsZCBiZSBnaXZlbiBhdCAxMuKAkzE4IG1vbnRocyBvZiBhZ2UuCiovCmRlZmluZSAiTXVtcHMgZG9zZSAxIENyZWF0ZSI6CiAgaWYgIk11bXBzIGRvc2UgMSIKICB0aGVuICdUaGUgZmlyc3QgZG9zZSBvZiB0aGUgbXVtcHMtY29udGFpbmluZyB2YWNjaW5lIChtb25vdmFsZW50IG9yIE1NUiBbbWVhc2xlcywgbXVtcHMgYW5kIHJ1YmVsbGFdKSBzaG91bGQgYmUgZ2l2ZW4gYXQgMTLigJMxOCBtb250aHMgb2YgYWdlLicgKyAnCkR1ZSBEYXRlOiAnICsgVG9TdHJpbmcoIk11bXBzIGRvc2UgMSBEdWUgRGF0ZSIpICsgJwpPdmVyZHVlOiAnICsgVG9TdHJpbmcoIk11bXBzIGRvc2UgMSBPdmVyZHVlIikKICBlbHNlICcnCgoKLyoKQGR5bmFtaWNWYWx1ZTogTXVtcHMgZG9zZSAxIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiAiRGF0ZSBvZiBiaXJ0aCIgKyAxMiBtb250aHMKKi8KZGVmaW5lICJNdW1wcyBkb3NlIDEgRHVlIERhdGUiOgogIGlmICJNdW1wcyBkb3NlIDEiIHRoZW4gUGF0aWVudC5iaXJ0aERhdGUgKyAxMiBtb250aHMKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBNdW1wcyBkb3NlIDEgT3ZlcmR1ZQpAcHNldWRvY29kZTogIkRhdGUgb2YgYmlydGgiICsgMTggbW9udGhzCiovCmRlZmluZSAiTXVtcHMgZG9zZSAxIE92ZXJkdWUiOgogIGlmICJNdW1wcyBkb3NlIDEiIHRoZW4gUGF0aWVudC5iaXJ0aERhdGUgKyAxOCBtb250aHMKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBNdW1wcyBkb3NlIDEgRXhwaXJhdGlvbgpAcHNldWRvY29kZTogVG8gYmUgZGV0ZXJtaW5lZCBieSBNZW1iZXIgU3RhdGVzOyBob3dldmVyLCB0aGVyZSBpcyBubyByZWNvbW1lbmRlZCBleHBpcmF0aW9uIGRhdGUgYW5kIGluZGl2aWR1YWxzIGFyZSBhbHdheXMgZWxpZ2libGUgdG8gYmUgdmFjY2luYXRlZC4KKi8KZGVmaW5lICJNdW1wcyBkb3NlIDEgRXhwaXJhdGlvbiI6CiAgbnVsbAoKICAKLyoKQGNvbXBsZXRlOiBGaXJzdCBtdW1wcyBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiTXVtcHMtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAxCiovCmRlZmluZSAiRmlyc3QgbXVtcHMgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkIjoKICBFbmNvdW50ZXIuIk9uZSBtdW1wcyBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiCgoKCi8qCkBvdXRwdXQ6IE11bXBzIGRvc2UgMgpAZGVzY3JpcHRpb246IFByb3Zpc2lvbiBvZiB0aGUgbXVtcHMgZG9zZSAyCkB0cmlnZ2VyOiBGaXJzdCBtdW1wcyBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkbzogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJNdW1wcy1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQHRyaWdnZXJEYXRlOiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk11bXBzLWNvbnRhaW5pbmcgdmFjY2luZXMiKQoqLwpkZWZpbmUgIk11bXBzIGRvc2UgMiI6CiAgIkZpcnN0IG11bXBzIGRvc2UgZnJvbSB0aGUgcHJpbWFyeSBzZXJpZXMgd2FzIGFkbWluaXN0ZXJlZCIKICBhbmQgbm90ICJTZWNvbmQgbXVtcHMgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIgoKCi8qCkBvdXRwdXQ6IE11bXBzIGRvc2UgMiBDcmVhdGUKQGNyZWF0ZTogVGhlIGFnZSBvZiBhZG1pbmlzdHJhdGlvbiBvZiB0aGUgc2Vjb25kIGRvc2UgbWF5IHJhbmdlIGZyb20gdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgdG8gYWdlIGF0IHNjaG9vbCBlbnRyeSAoYWJvdXQgNiB5ZWFycyBvZiBhZ2UpLiBUaGUgbWluaW11bSBpbnRlcnZhbCBiZXR3ZWVuIHRoZSBmaXJzdCBhbmQgdGhlIHNlY29uZCBkb3NlcyBpcyAxIG1vbnRoLgoqLwpkZWZpbmUgIk11bXBzIGRvc2UgMiBDcmVhdGUiOgogIGlmICJNdW1wcyBkb3NlIDIiCiAgdGhlbiAnVGhlIGFnZSBvZiBhZG1pbmlzdHJhdGlvbiBvZiB0aGUgc2Vjb25kIGRvc2UgbWF5IHJhbmdlIGZyb20gdGhlIHNlY29uZCB5ZWFyIG9mIGxpZmUgdG8gYWdlIGF0IHNjaG9vbCBlbnRyeSAoYWJvdXQgNiB5ZWFycyBvZiBhZ2UpLiBUaGUgbWluaW11bSBpbnRlcnZhbCBiZXR3ZWVuIHRoZSBmaXJzdCBhbmQgdGhlIHNlY29uZCBkb3NlcyBpcyAxIG1vbnRoLicgKyAnCkR1ZSBEYXRlOiAnICsgVG9TdHJpbmcoIk11bXBzIGRvc2UgMiBEdWUgRGF0ZSIpICsgJwpPdmVyZHVlOiAnICsgVG9TdHJpbmcoIk11bXBzIGRvc2UgMiBPdmVyZHVlIikKICBlbHNlICcnCgoKLyoKQGR5bmFtaWNWYWx1ZTogTXVtcHMgZG9zZSAyIER1ZSBEYXRlCkBwc2V1ZG9jb2RlOiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk11bXBzLWNvbnRhaW5pbmcgdmFjY2luZXMiKSArIDEgbW9udGgKKi8KZGVmaW5lICJNdW1wcyBkb3NlIDIgRHVlIERhdGUiOgogIGlmICJNdW1wcyBkb3NlIDIiIHRoZW4gRW5jb3VudGVyLiJEYXRlIG9mIExhdGVzdCBNdW1wcyBEb3NlIiArIDEgbW9udGgKICBlbHNlIG51bGwKCgovKgpAZHluYW1pY1ZhbHVlOiBNdW1wcyBkb3NlIDIgT3ZlcmR1ZQpAcHNldWRvY29kZTogIkRhdGUgb2YgYmlydGgiICsgNiB5ZWFycwoqLwpkZWZpbmUgIk11bXBzIGRvc2UgMiBPdmVyZHVlIjoKICBpZiAiTXVtcHMgZG9zZSAyIiB0aGVuIFBhdGllbnQuYmlydGhEYXRlICsgNiB5ZWFycwogIGVsc2UgbnVsbAoKCi8qCkBkeW5hbWljVmFsdWU6IE11bXBzIGRvc2UgMiBFeHBpcmF0aW9uCkBwc2V1ZG9jb2RlOiBUbyBiZSBkZXRlcm1pbmVkIGJ5IE1lbWJlciBTdGF0ZXM7IGhvd2V2ZXIsIHRoZXJlIGlzIG5vIHJlY29tbWVuZGVkIGV4cGlyYXRpb24gZGF0ZSBhbmQgaW5kaXZpZHVhbHMgYXJlIGFsd2F5cyBlbGlnaWJsZSB0byBiZSB2YWNjaW5hdGVkLgoqLwpkZWZpbmUgIk11bXBzIGRvc2UgMiBFeHBpcmF0aW9uIjoKICBudWxsCgogIAovKgpAY29tcGxldGU6IFNlY29uZCBtdW1wcyBkb3NlIGZyb20gdGhlIHByaW1hcnkgc2VyaWVzIHdhcyBhZG1pbmlzdGVyZWQuIFRoZSBwcmltYXJ5IHNlcmllcyBoYXMgYmVlbiBjb21wbGV0ZWQKQHBzZXVkb2NvZGU6ICJDb21wbGV0ZWQgdGhlIHByaW1hcnkgdmFjY2luYXRpb24gc2VyaWVzIiA9IFRSVUUgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk11bXBzLWNvbnRhaW5pbmcgdmFjY2luZXMiKSIKKi8KZGVmaW5lICJTZWNvbmQgbXVtcHMgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIjoKICBFbmNvdW50ZXIuIlR3byBtdW1wcyBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIKCgoKLyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAiVGVzdCBWYWxpZGF0aW9uIjoKICBjYXNlCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMwOC4xJyB0aGVuICJNdW1wcyBkb3NlIDEiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMwOS4zJyB0aGVuICJNdW1wcyBkb3NlIDEiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMxMC4zJyB0aGVuICJNdW1wcyBkb3NlIDEiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMxMS4yJyB0aGVuICJNdW1wcyBkb3NlIDIiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMxMi4zJyB0aGVuICJNdW1wcyBkb3NlIDIiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMxMy4zJyB0aGVuICJNdW1wcyBkb3NlIDIiCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTXVtcHMxNC4xJyB0aGVuICJTZWNvbmQgbXVtcHMgZG9zZSBmcm9tIHRoZSBwcmltYXJ5IHNlcmllcyB3YXMgYWRtaW5pc3RlcmVkLiBUaGUgcHJpbWFyeSBzZXJpZXMgaGFzIGJlZW4gY29tcGxldGVkIgogICAgZWxzZSAnTm8gdGVzdCBjYXNlIHNldCcKICBlbmQK"/>
  </content>
</Library>