<?xml version="1.0" encoding="UTF-8"?>
<library xmlns="urn:hl7-org:elm:r1" xmlns:t="urn:hl7-org:elm-types:r1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:fhir="http://hl7.org/fhir" xmlns:qdm43="urn:healthit-gov:qdm:v4_3" xmlns:qdm53="urn:healthit-gov:qdm:v5_3" xmlns:a="urn:hl7-org:cql-annotations:r1" localId="0">
   <annotation translatorOptions="EnableAnnotations,EnableLocators,DisableListDemotion,DisableListPromotion" signatureLevel="Overloads" xsi:type="a:CqlToElmInfo"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation xsi:type="a:Annotation">
      <a:s r="326">
         <a:s>/*
  * Library: IMMZD2DTHPVElements
  */
library IMMZD2DTHPVElements</a:s>
      </a:s>
   </annotation>
   <identifier id="IMMZD2DTHPVElements" system="http://smart.who.int/immunizations"/>
   <schemaIdentifier id="urn:hl7-org:elm" version="r1"/>
   <usings>
      <def localId="1" localIdentifier="System" uri="urn:hl7-org:elm-types:r1" version="1.0.0"/>
      <def localId="206" locator="7:1-7:26" localIdentifier="FHIR" uri="http://hl7.org/fhir" version="4.0.1">
         <annotation xsi:type="a:Annotation">
            <a:s r="206">
               <a:s>using </a:s>
               <a:s>
                  <a:s>FHIR</a:s>
               </a:s>
               <a:s> version '4.0.1'</a:s>
            </a:s>
         </annotation>
      </def>
   </usings>
   <includes>
      <def localId="208" locator="8:1-8:35" localIdentifier="FHIRHelpers" path="http://hl7.org/fhir/FHIRHelpers" version="4.0.1">
         <annotation xsi:type="a:Annotation">
            <a:s r="208">
               <a:s>include </a:s>
               <a:s>
                  <a:s>FHIRHelpers</a:s>
               </a:s>
               <a:s> version '4.0.1'</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="210" locator="10:1-10:19" localIdentifier="WHOConcepts" path="http://smart.who.int/immunizations/WHOConcepts">
         <annotation xsi:type="a:Annotation">
            <a:s r="210">
               <a:s>include </a:s>
               <a:s>
                  <a:s>WHOConcepts</a:s>
               </a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="212" locator="11:1-11:27" localIdentifier="WC" path="http://smart.who.int/immunizations/WHOCommon">
         <annotation xsi:type="a:Annotation">
            <a:s r="212">
               <a:s>include </a:s>
               <a:s>
                  <a:s>WHOCommon</a:s>
               </a:s>
               <a:s> called WC</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="214" locator="12:1-12:29" localIdentifier="WE" path="http://smart.who.int/immunizations/WHOElements">
         <annotation xsi:type="a:Annotation">
            <a:s r="214">
               <a:s>include </a:s>
               <a:s>
                  <a:s>WHOElements</a:s>
               </a:s>
               <a:s> called WE</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="216" locator="14:1-14:32" localIdentifier="Common" path="http://smart.who.int/immunizations/IMMZCommon">
         <annotation xsi:type="a:Annotation">
            <a:s r="216">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZCommon</a:s>
               </a:s>
               <a:s> called Common</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="218" locator="15:1-15:36" localIdentifier="Concepts" path="http://smart.who.int/immunizations/IMMZConcepts">
         <annotation xsi:type="a:Annotation">
            <a:s r="218">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZConcepts</a:s>
               </a:s>
               <a:s> called Concepts</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="220" locator="16:1-16:36" localIdentifier="Elements" path="http://smart.who.int/immunizations/IMMZElements">
         <annotation xsi:type="a:Annotation">
            <a:s r="220">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZElements</a:s>
               </a:s>
               <a:s> called Elements</a:s>
            </a:s>
         </annotation>
      </def>
   </includes>
   <contexts>
      <def localId="225" locator="19:1-19:15" name="Patient"/>
   </contexts>
   <statements>
      <def localId="223" locator="19:1-19:15" name="Patient" context="Patient">
         <expression localId="224" xsi:type="SingletonFrom">
            <operand localId="222" locator="19:1-19:15" dataType="fhir:Patient" templateId="http://hl7.org/fhir/StructureDefinition/Patient" xsi:type="Retrieve"/>
         </expression>
      </def>
      <def localId="228" locator="24:1-27:44" name="HPV Doses Administered to Patient" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="internal" value="HPV containing Doses Administered to Patient"/>
            <a:s r="228">
               <a:s>/*
@internal: HPV containing Doses Administered to Patient
*/
define &quot;HPV Doses Administered to Patient&quot;:
  </a:s>
               <a:s r="240">
                  <a:s>
                     <a:s r="229">
                        <a:s r="231">
                           <a:s>
                              <a:s>Elements.&quot;Doses Administered to Patient&quot;</a:s>
                           </a:s>
                        </a:s>
                        <a:s> I</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  </a:s>
                  <a:s r="237">
                     <a:s>where
    </a:s>
                     <a:s r="237">
                        <a:s r="234">
                           <a:s r="233">
                              <a:s>I</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="234">
                              <a:s>vaccineCode</a:s>
                           </a:s>
                        </a:s>
                        <a:s> in </a:s>
                        <a:s r="236">
                           <a:s r="235">
                              <a:s>Concepts</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="236">
                              <a:s>&quot;HPV vaccines&quot;</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="240" locator="25:3-27:44" xsi:type="Query">
            <source localId="229" locator="25:3-25:44" alias="I">
               <expression localId="231" locator="25:3-25:42" name="Doses Administered to Patient" libraryName="Elements" xsi:type="ExpressionRef"/>
            </source>
            <where localId="237" locator="26:3-27:44" xsi:type="InValueSet">
               <signature localId="239" name="t:Concept" xsi:type="NamedTypeSpecifier"/>
               <code localId="238" name="ToConcept" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                  <operand localId="234" locator="27:5-27:17" path="vaccineCode" scope="I" xsi:type="Property"/>
               </code>
               <valueset localId="236" locator="27:22-27:44" name="HPV vaccines" libraryName="Concepts" preserve="true"/>
            </where>
         </expression>
      </def>
      <def localId="243" locator="32:1-33:53" name="HPV Primary Series Doses Administered to Patient" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="internal" value="HPV containing Doses Administered to Patient that are in the Primary series"/>
            <a:s r="243">
               <a:s>/*
@internal: HPV containing Doses Administered to Patient that are in the Primary series
*/
define &quot;HPV Primary Series Doses Administered to Patient&quot;:
  </a:s>
               <a:s r="245">
                  <a:s r="244">
                     <a:s>&quot;HPV Doses Administered to Patient&quot;</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="245">
                     <a:s>seriesPrimary()</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="245" locator="33:3-33:53" name="seriesPrimary" libraryName="Common" xsi:type="FunctionRef">
            <operand localId="244" locator="33:3-33:37" name="HPV Doses Administered to Patient" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="248" locator="38:1-39:59" name="Number of HPV Primary Series Doses Administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="internal" value="Number of HPV Primary Series doses"/>
            <a:s r="248">
               <a:s>/*
@internal: Number of HPV Primary Series doses
*/
define &quot;Number of HPV Primary Series Doses Administered&quot;:
  </a:s>
               <a:s r="252">
                  <a:s>Count(</a:s>
                  <a:s r="249">
                     <a:s>&quot;HPV Primary Series Doses Administered to Patient&quot;</a:s>
                  </a:s>
                  <a:s>)</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="252" locator="39:3-39:59" xsi:type="Count">
            <source localId="249" locator="39:9-39:58" name="HPV Primary Series Doses Administered to Patient" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="255" locator="48:1-49:45" name="Client's age is less than 9 years" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's age is less than 9 years"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; &lt; 9 years"/>
            <a:t name="code" value="Client's age is less than 9 years-40"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="255">
               <a:s>/*
@input: Client's age is less than 9 years
@pseudocode: Today's date − &quot;Date of birth&quot; &lt; 9 years
@code: Client's age is less than 9 years-40
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client's age is less than 9 years&quot;:
  </a:s>
               <a:s r="256">
                  <a:s r="258">
                     <a:s r="257">
                        <a:s>Elements</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="258">
                        <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s r="259"> &lt; 9</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="256" locator="49:3-49:45" xsi:type="Less">
            <signature localId="260" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="261" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="258" locator="49:3-49:41" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
            <operand localId="259" locator="49:45" valueType="t:Integer" value="9" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="264" locator="58:1-59:55" name="No HPV primary series doses were administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="No HPV primary series doses were administered"/>
            <a:t name="pseudocode" value="&quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0"/>
            <a:t name="code" value="No HPV primary series doses were administered-112"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="264">
               <a:s>/*
@input: No HPV primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 0
@code: No HPV primary series doses were administered-112
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;No HPV primary series doses were administered&quot;:
  </a:s>
               <a:s r="265">
                  <a:s r="266">
                     <a:s>&quot;Number of HPV Primary Series Doses Administered&quot;</a:s>
                  </a:s>
                  <a:s r="267"> = 0</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="265" locator="59:3-59:55" xsi:type="Equal">
            <signature localId="268" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="269" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="266" locator="59:3-59:51" name="Number of HPV Primary Series Doses Administered" xsi:type="ExpressionRef"/>
            <operand localId="267" locator="59:55" valueType="t:Integer" value="0" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="272" locator="67:1-69:51" name="Client's age is between 9 and 14 years" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's age is between 9 and 14 years"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; ≤ 14 years"/>
            <a:t name="code" value="Client's age is between 9 and 14 years-51"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:s r="272">
               <a:s>/*
@input: Client's age is between 9 and 14 years
@pseudocode: 9 years ≤ Today's date − &quot;Date of birth&quot; ≤ 14 years
@code: Client's age is between 9 and 14 years-51
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
*/
define &quot;Client's age is between 9 and 14 years&quot;:
  </a:s>
               <a:s r="273">
                  <a:s r="274">
                     <a:s r="275">9 &lt;= </a:s>
                     <a:s r="277">
                        <a:s r="276">
                           <a:s>Elements</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="277">
                           <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  and </a:s>
                  <a:s r="280">
                     <a:s r="282">
                        <a:s r="281">
                           <a:s>Elements</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="282">
                           <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                        </a:s>
                     </a:s>
                     <a:s r="283"> &lt;= 14</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="273" locator="68:3-69:51" xsi:type="And">
            <operand localId="274" locator="68:3-68:46" xsi:type="LessOrEqual">
               <signature localId="278" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <signature localId="279" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <operand localId="275" locator="68:3" valueType="t:Integer" value="9" xsi:type="Literal"/>
               <operand localId="277" locator="68:8-68:46" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
            </operand>
            <operand localId="280" locator="69:7-69:51" xsi:type="LessOrEqual">
               <signature localId="284" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <signature localId="285" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <operand localId="282" locator="69:7-69:45" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
               <operand localId="283" locator="69:50-69:51" valueType="t:Integer" value="14" xsi:type="Literal"/>
            </operand>
         </expression>
      </def>
      <def localId="288" locator="77:1-78:27" name="Client's biological sex is female" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's biological sex is female"/>
            <a:t name="pseudocode" value="&quot;Sex&quot; = &quot;Female&quot;"/>
            <a:t name="code" value="Client's biological sex is female-16"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:s r="288">
               <a:s>/*
@input: Client's biological sex is female
@pseudocode: &quot;Sex&quot; = &quot;Female&quot;
@code: Client's biological sex is female-16
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
*/
define &quot;Client's biological sex is female&quot;:
  </a:s>
               <a:s r="289">
                  <a:s r="291">
                     <a:s r="290">
                        <a:s>Patient</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="291">
                        <a:s>gender</a:s>
                     </a:s>
                  </a:s>
                  <a:s> = </a:s>
                  <a:s r="292">
                     <a:s>'female'</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="289" locator="78:3-78:27" xsi:type="Equal">
            <signature localId="296" name="t:String" xsi:type="NamedTypeSpecifier"/>
            <signature localId="297" name="t:String" xsi:type="NamedTypeSpecifier"/>
            <operand localId="294" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
               <signature localId="295" name="fhir:AdministrativeGender" xsi:type="NamedTypeSpecifier"/>
               <operand localId="291" locator="78:3-78:16" path="gender" xsi:type="Property">
                  <source localId="290" locator="78:3-78:9" name="Patient" xsi:type="ExpressionRef"/>
               </operand>
            </operand>
            <operand localId="292" locator="78:20-78:27" valueType="t:String" value="female" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="300" locator="86:1-87:47" name="Client's age more than or equal to 15 years" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's age more than or equal to 15 years"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; ≥ 15 years"/>
            <a:t name="code" value="Client's age more than or equal to 15 years-41"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:s r="300">
               <a:s>/*
@input: Client's age more than or equal to 15 years
@pseudocode: Today's date − &quot;Date of birth&quot; ≥ 15 years
@code: Client's age more than or equal to 15 years-41
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
*/
define &quot;Client's age more than or equal to 15 years&quot;:
  </a:s>
               <a:s r="301">
                  <a:s r="303">
                     <a:s r="302">
                        <a:s>Elements</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="303">
                        <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s r="304"> >= 15</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="301" locator="87:3-87:47" xsi:type="GreaterOrEqual">
            <signature localId="305" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="306" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="303" locator="87:3-87:41" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
            <operand localId="304" locator="87:46-87:47" valueType="t:Integer" value="15" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="309" locator="95:1-96:41" name="Client's biological sex is not female" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's biological sex is not female"/>
            <a:t name="pseudocode" value="&quot;Sex&quot; ≠ &quot;Female&quot;"/>
            <a:t name="code" value="Client's biological sex is not female-16"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:s r="309">
               <a:s>/*
@input: Client's biological sex is not female
@pseudocode: &quot;Sex&quot; ≠ &quot;Female&quot;
@code: Client's biological sex is not female-16
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
*/
define &quot;Client's biological sex is not female&quot;:
  </a:s>
               <a:s r="310">
                  <a:s>not </a:s>
                  <a:s r="311">
                     <a:s>&quot;Client's biological sex is female&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="310" locator="96:3-96:41" xsi:type="Not">
            <operand localId="311" locator="96:7-96:41" name="Client's biological sex is female" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="314" locator="105:1-106:55" name="One HPV primary series dose was administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="One HPV primary series dose was administered"/>
            <a:t name="pseudocode" value="&quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1"/>
            <a:t name="code" value="One HPV primary series dose was administered-112"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="314">
               <a:s>/*
@input: One HPV primary series dose was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 1
@code: One HPV primary series dose was administered-112
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;One HPV primary series dose was administered&quot;:
  </a:s>
               <a:s r="315">
                  <a:s r="316">
                     <a:s>&quot;Number of HPV Primary Series Doses Administered&quot;</a:s>
                  </a:s>
                  <a:s r="317"> = 1</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="315" locator="106:3-106:55" xsi:type="Equal">
            <signature localId="318" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="319" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="316" locator="106:3-106:51" name="Number of HPV Primary Series Doses Administered" xsi:type="ExpressionRef"/>
            <operand localId="317" locator="106:55" valueType="t:Integer" value="1" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="326" locator="211:1-212:93" name="Date of Latest HPV Dose" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="internal" value="Date of Latest HPV Dose"/>
            <a:s r="326">
               <a:s>/*
@internal: Date of Latest HPV Dose
*/
define &quot;Date of Latest HPV Dose&quot;:
  </a:s>
               <a:s r="327">
                  <a:s>date from </a:s>
                  <a:s r="328">
                     <a:s>start of </a:s>
                     <a:s r="334">
                        <a:s r="333">
                           <a:s r="330">
                              <a:s r="329">
                                 <a:s>&quot;HPV Doses Administered to Patient&quot;</a:s>
                              </a:s>
                              <a:s>.</a:s>
                              <a:s r="330">
                                 <a:s>mostRecent()</a:s>
                              </a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="333">
                              <a:s>occurrence</a:s>
                           </a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="334">
                           <a:s>toInterval()</a:s>
                        </a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="327" locator="212:3-212:93" xsi:type="DateFrom">
            <operand localId="328" locator="212:13-212:93" xsi:type="Start">
               <operand localId="334" locator="212:22-212:93" name="toInterval" libraryName="WC" xsi:type="FunctionRef">
                  <operand localId="333" locator="212:22-212:80" path="occurrence" xsi:type="Property">
                     <source localId="330" locator="212:22-212:69" name="mostRecent" libraryName="WC" xsi:type="FunctionRef">
                        <signature localId="331" xsi:type="ListTypeSpecifier">
                           <elementType localId="332" name="fhir:Immunization" xsi:type="NamedTypeSpecifier"/>
                        </signature>
                        <operand localId="329" locator="212:22-212:56" name="HPV Doses Administered to Patient" xsi:type="ExpressionRef"/>
                     </source>
                  </operand>
               </operand>
            </operand>
         </expression>
      </def>
      <def localId="322" locator="115:1-117:74" name="The latest HPV dose was administered less than 6 months ago" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="The latest HPV dose was administered less than 6 months ago"/>
            <a:t name="pseudocode" value="&quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot;) &lt; 6 months"/>
            <a:t name="code" value="The latest HPV dose was administered less than 6 months ago-103"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="322">
               <a:s>/*
@input: The latest HPV 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;HPV vaccines&quot;) &lt; 6 months
@code: The latest HPV dose was administered less than 6 months ago-103
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;The latest HPV dose was administered less than 6 months ago&quot;:
  </a:s>
               <a:s r="323">
                  <a:s r="337">
                     <a:s r="335">
                        <a:s>&quot;Date of Latest HPV Dose&quot;</a:s>
                     </a:s>
                     <a:s> is not null</a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="338">
                     <a:s r="339">
                        <a:s>duration in months between </a:s>
                        <a:s r="340">
                           <a:s>&quot;Date of Latest HPV Dose&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="343">
                           <a:s>Now()</a:s>
                        </a:s>
                     </a:s>
                     <a:s r="349"> &lt; 6</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="323" locator="116:3-117:74" xsi:type="And">
            <operand localId="337" locator="116:3-116:39" xsi:type="Not">
               <operand localId="336" locator="116:3-116:39" xsi:type="IsNull">
                  <operand localId="335" locator="116:3-116:27" name="Date of Latest HPV Dose" xsi:type="ExpressionRef"/>
               </operand>
            </operand>
            <operand localId="338" locator="117:9-117:74" xsi:type="Less">
               <signature localId="350" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <signature localId="351" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <operand localId="339" locator="117:9-117:70" precision="Month" xsi:type="DurationBetween">
                  <signature localId="347" name="t:DateTime" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="348" name="t:DateTime" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="345" xsi:type="ToDateTime">
                     <signature localId="346" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="340" locator="117:36-117:60" name="Date of Latest HPV Dose" xsi:type="ExpressionRef"/>
                  </operand>
                  <operand localId="343" locator="117:66-117:70" xsi:type="Now"/>
               </operand>
               <operand localId="349" locator="117:74" valueType="t:Integer" value="6" xsi:type="Literal"/>
            </operand>
         </expression>
      </def>
      <def localId="354" locator="126:1-127:67" name="The latest HPV dose was administered more than 6 months ago" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="The latest HPV dose was administered more than 6 months ago"/>
            <a:t name="pseudocode" value="&quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot;) ≥ 6 months"/>
            <a:t name="code" value="The latest HPV dose was administered more than 6 months ago-103"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="354">
               <a:s>/*
@input: The latest HPV 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;HPV vaccines&quot;) ≥ 6 months
@code: The latest HPV dose was administered more than 6 months ago-103
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;The latest HPV dose was administered more than 6 months ago&quot;:
  </a:s>
               <a:s r="355">
                  <a:s>not </a:s>
                  <a:s r="356">
                     <a:s>&quot;The latest HPV dose was administered less than 6 months ago&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="355" locator="127:3-127:67" xsi:type="Not">
            <operand localId="356" locator="127:7-127:67" name="The latest HPV dose was administered less than 6 months ago" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="359" locator="136:1-137:55" name="Two HPV primary series doses were administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Two HPV primary series doses were administered"/>
            <a:t name="pseudocode" value="&quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2"/>
            <a:t name="code" value="Two HPV primary series doses were administered-112"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="359">
               <a:s>/*
@input: Two HPV primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 2
@code: Two HPV primary series doses were administered-112
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Two HPV primary series doses were administered&quot;:
  </a:s>
               <a:s r="360">
                  <a:s r="361">
                     <a:s>&quot;Number of HPV Primary Series Doses Administered&quot;</a:s>
                  </a:s>
                  <a:s r="362"> = 2</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="360" locator="137:3-137:55" xsi:type="Equal">
            <signature localId="363" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="364" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="361" locator="137:3-137:51" name="Number of HPV Primary Series Doses Administered" xsi:type="ExpressionRef"/>
            <operand localId="362" locator="137:55" valueType="t:Integer" value="2" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="367" locator="146:1-147:44" name="Client's HIV status is positive" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's HIV status is positive"/>
            <a:t name="pseudocode" value="&quot;HIV status&quot; = &quot;HIV-positive&quot;"/>
            <a:t name="code" value="Client's HIV status is positive-29"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="367">
               <a:s>/*
@input: Client's HIV status is positive
@pseudocode: &quot;HIV status&quot; = &quot;HIV-positive&quot;
@code: Client's HIV status is positive-29
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client's HIV status is positive&quot;:
  </a:s>
               <a:s r="369">
                  <a:s r="368">
                     <a:s>Elements</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="369">
                     <a:s>&quot;Client's HIV status is positive&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="369" locator="147:3-147:44" name="Client's HIV status is positive" libraryName="Elements" xsi:type="ExpressionRef"/>
      </def>
      <def localId="372" locator="156:1-157:40" name="Client is immunocompromised" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client is immunocompromised"/>
            <a:t name="pseudocode" value="&quot;Immunocompromised&quot; = TRUE"/>
            <a:t name="code" value="Client is immunocompromised-26"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="372">
               <a:s>/*
@input: Client is immunocompromised
@pseudocode: &quot;Immunocompromised&quot; = TRUE
@code: Client is immunocompromised-26
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client is immunocompromised&quot;:
  </a:s>
               <a:s r="374">
                  <a:s r="373">
                     <a:s>Elements</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="374">
                     <a:s>&quot;Client is immunocompromised&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="374" locator="157:3-157:40" name="Client is immunocompromised" libraryName="Elements" xsi:type="ExpressionRef"/>
      </def>
      <def localId="377" locator="166:1-167:44" name="Client is not immunocompromised" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client is not immunocompromised"/>
            <a:t name="pseudocode" value="&quot;Immunocompromised&quot; ≠ TRUE"/>
            <a:t name="code" value="Client is not immunocompromised-26"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="377">
               <a:s>/*
@input: Client is not immunocompromised
@pseudocode: &quot;Immunocompromised&quot; ≠ TRUE
@code: Client is not immunocompromised-26
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client is not immunocompromised&quot;:
  </a:s>
               <a:s r="379">
                  <a:s r="378">
                     <a:s>Elements</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="379">
                     <a:s>&quot;Client is not immunocompromised&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="379" locator="167:3-167:44" name="Client is not immunocompromised" libraryName="Elements" xsi:type="ExpressionRef"/>
      </def>
      <def localId="382" locator="176:1-177:55" name="Client's HIV status is negative or unknown" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's HIV status is negative or unknown"/>
            <a:t name="pseudocode" value="&quot;HIV status&quot; ≠ &quot;HIV-positive&quot;"/>
            <a:t name="code" value="Client's HIV status is negative or unknown-29"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="382">
               <a:s>/*
@input: Client's HIV status is negative or unknown
@pseudocode: &quot;HIV status&quot; ≠ &quot;HIV-positive&quot;
@code: Client's HIV status is negative or unknown-29
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client's HIV status is negative or unknown&quot;:
  </a:s>
               <a:s r="384">
                  <a:s r="383">
                     <a:s>Elements</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="384">
                     <a:s>&quot;Client's HIV status is negative or unknown&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="384" locator="177:3-177:55" name="Client's HIV status is negative or unknown" libraryName="Elements" xsi:type="ExpressionRef"/>
      </def>
      <def localId="387" locator="186:1-187:55" name="Three HPV primary series doses were administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Three HPV primary series doses were administered"/>
            <a:t name="pseudocode" value="&quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 3"/>
            <a:t name="code" value="Three HPV primary series doses were administered-112"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.2 doses: 2-dose schedule"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="387">
               <a:s>/*
@input: Three HPV primary series doses were administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;HPV vaccines&quot; and &quot;Type of dose&quot; = &quot;Primary series&quot;) = 3
@code: Three HPV primary series doses were administered-112
@decision: IMMZ.D2.DT.HPV.2 doses: 2-dose schedule
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Three HPV primary series doses were administered&quot;:
  </a:s>
               <a:s r="388">
                  <a:s r="389">
                     <a:s>&quot;Number of HPV Primary Series Doses Administered&quot;</a:s>
                  </a:s>
                  <a:s r="390"> = 3</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="388" locator="187:3-187:55" xsi:type="Equal">
            <signature localId="391" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="392" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="389" locator="187:3-187:51" name="Number of HPV Primary Series Doses Administered" xsi:type="ExpressionRef"/>
            <operand localId="390" locator="187:55" valueType="t:Integer" value="3" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="395" locator="195:1-197:51" name="Client's age is between 9 and 20 years" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's age is between 9 and 20 years"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; ≤ 20 years"/>
            <a:t name="code" value="Client's age is between 9 and 20 years-51"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="395">
               <a:s>/*
@input: Client's age is between 9 and 20 years
@pseudocode: 9 years ≤ Today's date − &quot;Date of birth&quot; ≤ 20 years
@code: Client's age is between 9 and 20 years-51
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client's age is between 9 and 20 years&quot;:
  </a:s>
               <a:s r="396">
                  <a:s r="397">
                     <a:s r="398">9 &lt;= </a:s>
                     <a:s r="400">
                        <a:s r="399">
                           <a:s>Elements</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="400">
                           <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  and </a:s>
                  <a:s r="403">
                     <a:s r="405">
                        <a:s r="404">
                           <a:s>Elements</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="405">
                           <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                        </a:s>
                     </a:s>
                     <a:s r="406"> &lt;= 20</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="396" locator="196:3-197:51" xsi:type="And">
            <operand localId="397" locator="196:3-196:46" xsi:type="LessOrEqual">
               <signature localId="401" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <signature localId="402" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <operand localId="398" locator="196:3" valueType="t:Integer" value="9" xsi:type="Literal"/>
               <operand localId="400" locator="196:8-196:46" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
            </operand>
            <operand localId="403" locator="197:7-197:51" xsi:type="LessOrEqual">
               <signature localId="407" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <signature localId="408" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
               <operand localId="405" locator="197:7-197:45" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
               <operand localId="406" locator="197:50-197:51" valueType="t:Integer" value="20" xsi:type="Literal"/>
            </operand>
         </expression>
      </def>
      <def localId="411" locator="205:1-206:46" name="Client's age is more than 20 years" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="input" value="Client's age is more than 20 years"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; > 20 years"/>
            <a:t name="code" value="Client's age is more than 20 years-41"/>
            <a:t name="decision" value="IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule"/>
            <a:s r="411">
               <a:s>/*
@input: Client's age is more than 20 years
@pseudocode: Today's date − &quot;Date of birth&quot; > 20 years
@code: Client's age is more than 20 years-41
@decision: IMMZ.D2.DT.HPV.Single dose: Alternative single-dose schedule
*/
define &quot;Client's age is more than 20 years&quot;:
  </a:s>
               <a:s r="412">
                  <a:s r="414">
                     <a:s r="413">
                        <a:s>Elements</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="414">
                        <a:s>&quot;Current Patient Age In Years&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s r="415"> > 20</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="412" locator="206:3-206:46" xsi:type="Greater">
            <signature localId="416" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <signature localId="417" name="t:Integer" xsi:type="NamedTypeSpecifier"/>
            <operand localId="414" locator="206:3-206:41" name="Current Patient Age In Years" libraryName="Elements" xsi:type="ExpressionRef"/>
            <operand localId="415" locator="206:45-206:46" valueType="t:Integer" value="20" xsi:type="Literal"/>
         </expression>
      </def>
   </statements>
</library>
