<?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="381">
         <a:s>/*
 * Library: IMMZD18SMeningococcalQuadrivalentConjugateVaccines2DosesLogic (IMMZ.D18.S.Meningococcal.Quadrivalent conjugate vaccines 2-dose schedule)
 * Schedule Table: Quadrivalent conjugate vaccine (A,C,W135,Y-D), 2-dose schedule
 */
library IMMZD18SMeningococcalQuadrivalentConjugateVaccines2DosesLogic</a:s>
      </a:s>
   </annotation>
   <identifier id="IMMZD18SMeningococcalQuadrivalentConjugateVaccines2DosesLogic" 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:27" localIdentifier="WC" path="http://smart.who.int/immunizations/WHOCommon">
         <annotation xsi:type="a:Annotation">
            <a:s r="210">
               <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="212" locator="12:1-12:32" localIdentifier="Common" path="http://smart.who.int/immunizations/IMMZCommon">
         <annotation xsi:type="a:Annotation">
            <a:s r="212">
               <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="214" locator="13:1-13:36" localIdentifier="Concepts" path="http://smart.who.int/immunizations/IMMZConcepts">
         <annotation xsi:type="a:Annotation">
            <a:s r="214">
               <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="216" locator="15:1-15:39" localIdentifier="IE" path="http://smart.who.int/immunizations/IMMZEncounterElements">
         <annotation xsi:type="a:Annotation">
            <a:s r="216">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZEncounterElements</a:s>
               </a:s>
               <a:s> called IE</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="218" locator="16:1-16:63" localIdentifier="Encounter" path="http://smart.who.int/immunizations/IMMZD2DTMeningococcalEncounterElements">
         <annotation xsi:type="a:Annotation">
            <a:s r="218">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZD2DTMeningococcalEncounterElements</a:s>
               </a:s>
               <a:s> called Encounter</a:s>
            </a:s>
         </annotation>
      </def>
   </includes>
   <parameters>
      <def localId="220" locator="18:1-18:36" name="Today" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:s r="220">
               <a:s>parameter Today </a:s>
               <a:s r="224">
                  <a:s>Date</a:s>
               </a:s>
               <a:s> default </a:s>
               <a:s r="223">
                  <a:s>Today()</a:s>
               </a:s>
            </a:s>
         </annotation>
         <default localId="223" locator="18:30-18:36" xsi:type="Today"/>
         <parameterTypeSpecifier localId="224" locator="18:17-18:20" name="t:Date" xsi:type="NamedTypeSpecifier"/>
      </def>
   </parameters>
   <contexts>
      <def localId="229" locator="21:1-21:15" name="Patient"/>
   </contexts>
   <statements>
      <def localId="227" locator="21:1-21:15" name="Patient" context="Patient">
         <expression localId="228" xsi:type="SingletonFrom">
            <operand localId="226" locator="21:1-21:15" dataType="fhir:Patient" templateId="http://hl7.org/fhir/StructureDefinition/Patient" xsi:type="Retrieve"/>
         </expression>
      </def>
      <def localId="239" locator="70:1-71:31" name="Meningococcal dose 1 Expiration" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 1 Expiration"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; + 23 months"/>
            <a:s r="239">
               <a:s>/*
@dynamicValue: Meningococcal dose 1 Expiration
@pseudocode: &quot;Date of birth&quot; + 23 months
*/
define &quot;Meningococcal dose 1 Expiration&quot;:
  </a:s>
               <a:s r="240">
                  <a:s r="242">
                     <a:s r="241">
                        <a:s>Patient</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="242">
                        <a:s>birthDate</a:s>
                     </a:s>
                  </a:s>
                  <a:s> + </a:s>
                  <a:s r="243">
                     <a:s>23 months</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="240" locator="71:3-71:31" xsi:type="Add">
            <signature localId="245" name="t:Date" xsi:type="NamedTypeSpecifier"/>
            <signature localId="246" name="t:Quantity" xsi:type="NamedTypeSpecifier"/>
            <operand localId="244" name="ToDate" libraryName="FHIRHelpers" xsi:type="FunctionRef">
               <operand localId="242" locator="71:3-71:19" path="birthDate" xsi:type="Property">
                  <source localId="241" locator="71:3-71:9" name="Patient" xsi:type="ExpressionRef"/>
               </operand>
            </operand>
            <operand localId="243" locator="71:23-71:31" value="23" unit="months" xsi:type="Quantity"/>
         </expression>
      </def>
      <def localId="255" locator="78:1-79:68" name="First meningococcal dose from the primary series was administered" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="complete" value="First meningococcal dose from the primary series was administered"/>
            <a:t name="pseudocode" value="&quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = 1"/>
            <a:s r="255">
               <a:s>/*
@complete: First meningococcal dose from the primary series was administered
@pseudocode: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = 1
*/
define &quot;First meningococcal dose from the primary series was administered&quot;:
  </a:s>
               <a:s r="257">
                  <a:s r="256">
                     <a:s>Encounter</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="257">
                     <a:s>&quot;One meningococcal primary series dose was administered&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="257" locator="79:3-79:68" name="One meningococcal primary series dose was administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
      </def>
      <def localId="232" locator="31:1-34:77" name="Meningococcal dose 1" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Meningococcal dose 1"/>
            <a:t name="description" value="Provision of the meningococcal dose 1"/>
            <a:t name="trigger" value="Child's birth"/>
            <a:t name="pseudo"/>
            <a:t name="triggerDate" value="&quot;Date of birth&quot;"/>
            <a:s r="232">
               <a:s>/*
@output: Meningococcal dose 1
@description: Provision of the meningococcal dose 1
@trigger: Child's birth
@pseudo: 
@triggerDate: &quot;Date of birth&quot;
*/
define &quot;Meningococcal dose 1&quot;:
  </a:s>
               <a:s r="233">
                  <a:s r="234">
                     <a:s r="236">
                        <a:s r="235">
                           <a:s>Encounter</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="236">
                           <a:s>&quot;No meningococcal primary series dose was administered&quot;</a:s>
                        </a:s>
                     </a:s>
                     <a:s>
  and </a:s>
                     <a:s r="249">
                        <a:s r="247">
                           <a:s>&quot;Meningococcal dose 1 Expiration&quot;</a:s>
                        </a:s>
                        <a:s r="249"> after day of </a:s>
                        <a:s r="248">
                           <a:s>Today</a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  and </a:s>
                  <a:s r="252">
                     <a:s>not </a:s>
                     <a:s r="258">
                        <a:s>&quot;First meningococcal dose from the primary series was administered&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="233" locator="32:3-34:77" xsi:type="And">
            <operand localId="234" locator="32:3-33:58" xsi:type="And">
               <operand localId="236" locator="32:3-32:67" name="No meningococcal primary series dose was administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
               <operand localId="249" locator="33:7-33:58" precision="Day" xsi:type="After">
                  <signature localId="250" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="251" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="247" locator="33:7-33:39" name="Meningococcal dose 1 Expiration" xsi:type="ExpressionRef"/>
                  <operand localId="248" locator="33:54-33:58" name="Today" xsi:type="ParameterRef"/>
               </operand>
            </operand>
            <operand localId="252" locator="34:7-34:77" xsi:type="Not">
               <operand localId="258" locator="34:11-34:77" name="First meningococcal dose from the primary series was administered" xsi:type="ExpressionRef"/>
            </operand>
         </expression>
      </def>
      <def localId="277" locator="53:1-55:11" name="Meningococcal dose 1 Due Date" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 1 Due Date"/>
            <a:t name="pseudocode" value="&quot;Date of birth&quot; + 9 months"/>
            <a:s r="277">
               <a:s>/*
@dynamicValue: Meningococcal dose 1 Due Date
@pseudocode: &quot;Date of birth&quot; + 9 months
*/
define &quot;Meningococcal dose 1 Due Date&quot;:
  </a:s>
               <a:s r="278">
                  <a:s>if </a:s>
                  <a:s r="279">
                     <a:s>&quot;Meningococcal dose 1&quot;</a:s>
                  </a:s>
                  <a:s> then </a:s>
                  <a:s r="280">
                     <a:s r="282">
                        <a:s r="281">
                           <a:s>Patient</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="282">
                           <a:s>birthDate</a:s>
                        </a:s>
                     </a:s>
                     <a:s> + </a:s>
                     <a:s r="283">
                        <a:s>9 months</a:s>
                     </a:s>
                  </a:s>
                  <a:s r="287">
  else null</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="278" locator="54:3-55:11" xsi:type="If">
            <condition localId="279" locator="54:6-54:27" name="Meningococcal dose 1" xsi:type="ExpressionRef"/>
            <then localId="280" locator="54:34-54:61" xsi:type="Add">
               <signature localId="285" name="t:Date" xsi:type="NamedTypeSpecifier"/>
               <signature localId="286" name="t:Quantity" xsi:type="NamedTypeSpecifier"/>
               <operand localId="284" name="ToDate" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                  <operand localId="282" locator="54:34-54:50" path="birthDate" xsi:type="Property">
                     <source localId="281" locator="54:34-54:40" name="Patient" xsi:type="ExpressionRef"/>
                  </operand>
               </operand>
               <operand localId="283" locator="54:54-54:61" value="9" unit="months" xsi:type="Quantity"/>
            </then>
            <else localId="288" asType="t:Date" xsi:type="As">
               <operand localId="287" locator="55:8-55:11" xsi:type="Null"/>
            </else>
         </expression>
      </def>
      <def localId="261" locator="41:1-46:9" name="Meningococcal dose 1 Create" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Meningococcal dose 1 Create"/>
            <a:t name="create" value="A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age."/>
            <a:s r="261">
               <a:s>/*
@output: Meningococcal dose 1 Create
@create: A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age.
*/
define &quot;Meningococcal dose 1 Create&quot;:
  </a:s>
               <a:s r="262">
                  <a:s>if </a:s>
                  <a:s r="263">
                     <a:s>&quot;Meningococcal dose 1&quot;</a:s>
                  </a:s>
                  <a:s>
  then </a:s>
                  <a:s r="311">
                     <a:s r="302">
                        <a:s r="297">
                           <a:s r="274">
                              <a:s r="268">
                                 <a:s>'A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age.'</a:s>
                              </a:s>
                              <a:s> + </a:s>
                              <a:s r="270">
                                 <a:s>'
Due Date: '</a:s>
                              </a:s>
                           </a:s>
                           <a:s> + </a:s>
                           <a:s r="293">
                              <a:s>ToString(</a:s>
                              <a:s r="289">
                                 <a:s>&quot;Meningococcal dose 1 Due Date&quot;</a:s>
                              </a:s>
                              <a:s>)</a:s>
                           </a:s>
                        </a:s>
                        <a:s> + </a:s>
                        <a:s r="298">
                           <a:s>'
Expiration: '</a:s>
                        </a:s>
                     </a:s>
                     <a:s> + </a:s>
                     <a:s r="307">
                        <a:s>ToString(</a:s>
                        <a:s r="303">
                           <a:s>&quot;Meningococcal dose 1 Expiration&quot;</a:s>
                        </a:s>
                        <a:s>)</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  else </a:s>
                  <a:s r="312">
                     <a:s>''</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="262" locator="42:3-46:9" xsi:type="If">
            <condition localId="263" locator="42:6-42:27" name="Meningococcal dose 1" xsi:type="ExpressionRef"/>
            <then localId="311" locator="43:8-45:59" xsi:type="Concatenate">
               <operand localId="302" locator="43:8-44:73" xsi:type="Concatenate">
                  <operand localId="297" locator="43:8-44:55" xsi:type="Concatenate">
                     <operand localId="274" locator="43:8-43:159" xsi:type="Concatenate">
                        <operand localId="268" locator="43:8-43:143" valueType="t:String" value="A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age." xsi:type="Literal"/>
                        <operand localId="270" locator="43:147-43:159" valueType="t:String" value="&#xa;Due Date: " xsi:type="Literal"/>
                     </operand>
                     <operand localId="293" locator="44:15-44:55" xsi:type="ToString">
                        <signature localId="294" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="289" locator="44:24-44:54" name="Meningococcal dose 1 Due Date" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="298" locator="44:59-44:73" valueType="t:String" value="&#xa;Expiration: " xsi:type="Literal"/>
               </operand>
               <operand localId="307" locator="45:17-45:59" xsi:type="ToString">
                  <signature localId="308" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="303" locator="45:26-45:58" name="Meningococcal dose 1 Expiration" xsi:type="ExpressionRef"/>
               </operand>
            </then>
            <else localId="312" locator="46:8-46:9" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="316" locator="62:1-63:6" name="Meningococcal dose 1 Overdue" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 1 Overdue"/>
            <a:t name="pseudocode" value="To be determined by Member States; however, there is no recommended overdue date and individuals are always eligible to be vaccinated."/>
            <a:s r="316">
               <a:s r="317">/*
@dynamicValue: Meningococcal dose 1 Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date and individuals are always eligible to be vaccinated.
*/
define &quot;Meningococcal dose 1 Overdue&quot;:
  null</a:s>
            </a:s>
         </annotation>
         <expression localId="317" locator="63:3-63:6" xsi:type="Null"/>
      </def>
      <def localId="329" locator="136:1-137:70" name="Second meningococcal dose from the primary series was administered. The primary series has been completed" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="complete" value="Second meningococcal dose from the primary series was administered. The primary series has been completed"/>
            <a:t name="pseudocode" value="&quot;Completed the primary vaccination series&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = TRUE"/>
            <a:s r="329">
               <a:s>/*
@complete: Second meningococcal dose from the primary series was administered. The primary series has been completed
@pseudocode: &quot;Completed the primary vaccination series&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = TRUE
*/
define &quot;Second meningococcal dose from the primary series was administered. The primary series has been completed&quot;:
  </a:s>
               <a:s r="331">
                  <a:s r="330">
                     <a:s>Encounter</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="331">
                     <a:s>&quot;Two meningococcal primary series doses were administered&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="331" locator="137:3-137:70" name="Two meningococcal primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
      </def>
      <def localId="320" locator="90:1-93:117" name="Meningococcal dose 2" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Meningococcal dose 2"/>
            <a:t name="description" value="Provision of the meningococcal dose 2"/>
            <a:t name="trigger" value="First meningococcal dose from the primary series was administered"/>
            <a:t name="pseudo" value="&quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = 1"/>
            <a:t name="triggerDate" value="&quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;)"/>
            <a:s r="320">
               <a:s>/*
@output: Meningococcal dose 2
@description: Provision of the meningococcal dose 2
@trigger: First meningococcal dose from the primary series was administered
@pseudo: Count of vaccines administered (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = 1
@triggerDate: &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;)
*/
define &quot;Meningococcal dose 2&quot;:
  </a:s>
               <a:s r="321">
                  <a:s r="322">
                     <a:s r="323">
                        <a:s>&quot;First meningococcal dose from the primary series was administered&quot;</a:s>
                     </a:s>
                     <a:s>
  and </a:s>
                     <a:s r="325">
                        <a:s r="324">
                           <a:s>Encounter</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="325">
                           <a:s>&quot;Client's age was less than or equal to 23 months when the primary series was started&quot;</a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  and </a:s>
                  <a:s r="326">
                     <a:s>not </a:s>
                     <a:s r="332">
                        <a:s>&quot;Second meningococcal dose from the primary series was administered. The primary series has been completed&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="321" locator="91:3-93:117" xsi:type="And">
            <operand localId="322" locator="91:3-92:102" xsi:type="And">
               <operand localId="323" locator="91:3-91:69" name="First meningococcal dose from the primary series was administered" xsi:type="ExpressionRef"/>
               <operand localId="325" locator="92:7-92:102" name="Client's age was less than or equal to 23 months when the primary series was started" libraryName="Encounter" xsi:type="ExpressionRef"/>
            </operand>
            <operand localId="326" locator="93:7-93:117" xsi:type="Not">
               <operand localId="332" locator="93:11-93:117" name="Second meningococcal dose from the primary series was administered. The primary series has been completed" xsi:type="ExpressionRef"/>
            </operand>
         </expression>
      </def>
      <def localId="349" locator="111:1-113:11" name="Meningococcal dose 2 Due Date" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 2 Due Date"/>
            <a:t name="pseudocode" value="&quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) + 3 months"/>
            <a:s r="349">
               <a:s>/*
@dynamicValue: Meningococcal dose 2 Due Date
@pseudocode: &quot;Date and time of vaccination&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) + 3 months
*/
define &quot;Meningococcal dose 2 Due Date&quot;:
  </a:s>
               <a:s r="350">
                  <a:s>if </a:s>
                  <a:s r="351">
                     <a:s>&quot;Meningococcal dose 2&quot;</a:s>
                  </a:s>
                  <a:s> then </a:s>
                  <a:s r="352">
                     <a:s r="354">
                        <a:s r="353">
                           <a:s>Encounter</a:s>
                        </a:s>
                        <a:s>.</a:s>
                        <a:s r="354">
                           <a:s>&quot;Date of Latest Primary Meningococcal Dose&quot;</a:s>
                        </a:s>
                     </a:s>
                     <a:s> + </a:s>
                     <a:s r="355">
                        <a:s>3 months</a:s>
                     </a:s>
                  </a:s>
                  <a:s r="358">
  else null</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="350" locator="112:3-113:11" xsi:type="If">
            <condition localId="351" locator="112:6-112:27" name="Meningococcal dose 2" xsi:type="ExpressionRef"/>
            <then localId="352" locator="112:34-112:97" xsi:type="Add">
               <signature localId="356" name="t:Date" xsi:type="NamedTypeSpecifier"/>
               <signature localId="357" name="t:Quantity" xsi:type="NamedTypeSpecifier"/>
               <operand localId="354" locator="112:34-112:86" name="Date of Latest Primary Meningococcal Dose" libraryName="Encounter" xsi:type="ExpressionRef"/>
               <operand localId="355" locator="112:90-112:97" value="3" unit="months" xsi:type="Quantity"/>
            </then>
            <else localId="359" asType="t:Date" xsi:type="As">
               <operand localId="358" locator="113:8-113:11" xsi:type="Null"/>
            </else>
         </expression>
      </def>
      <def localId="335" locator="100:1-104:9" name="Meningococcal dose 2 Create" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Meningococcal dose 2 Create"/>
            <a:t name="create" value="A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age."/>
            <a:s r="335">
               <a:s>/*
@output: Meningococcal dose 2 Create
@create: A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age.
*/
define &quot;Meningococcal dose 2 Create&quot;:
  </a:s>
               <a:s r="336">
                  <a:s>if </a:s>
                  <a:s r="337">
                     <a:s>&quot;Meningococcal dose 2&quot;</a:s>
                  </a:s>
                  <a:s>
  then </a:s>
                  <a:s r="368">
                     <a:s r="346">
                        <a:s r="340">
                           <a:s>'A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age.'</a:s>
                        </a:s>
                        <a:s> + </a:s>
                        <a:s r="342">
                           <a:s>'
Due Date: '</a:s>
                        </a:s>
                     </a:s>
                     <a:s> + </a:s>
                     <a:s r="364">
                        <a:s>ToString(</a:s>
                        <a:s r="360">
                           <a:s>&quot;Meningococcal dose 2 Due Date&quot;</a:s>
                        </a:s>
                        <a:s>)</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
  else </a:s>
                  <a:s r="369">
                     <a:s>''</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="336" locator="101:3-104:9" xsi:type="If">
            <condition localId="337" locator="101:6-101:27" name="Meningococcal dose 2" xsi:type="ExpressionRef"/>
            <then localId="368" locator="102:8-103:55" xsi:type="Concatenate">
               <operand localId="346" locator="102:8-102:159" xsi:type="Concatenate">
                  <operand localId="340" locator="102:8-102:143" valueType="t:String" value="A,C,W135,Y-D is also licensed for children aged 9–23 months and given as a 2-dose series 3 months apart, beginning at 9 months of age." xsi:type="Literal"/>
                  <operand localId="342" locator="102:147-102:159" valueType="t:String" value="&#xa;Due Date: " xsi:type="Literal"/>
               </operand>
               <operand localId="364" locator="103:15-103:55" xsi:type="ToString">
                  <signature localId="365" name="t:Date" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="360" locator="103:24-103:54" name="Meningococcal dose 2 Due Date" xsi:type="ExpressionRef"/>
               </operand>
            </then>
            <else localId="369" locator="104:8-104:9" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="373" locator="120:1-121:6" name="Meningococcal dose 2 Overdue" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 2 Overdue"/>
            <a:t name="pseudocode" value="To be determined by Member States; however, there is no recommended overdue date and individuals are always eligible to be vaccinated."/>
            <a:s r="373">
               <a:s r="374">/*
@dynamicValue: Meningococcal dose 2 Overdue
@pseudocode: To be determined by Member States; however, there is no recommended overdue date and individuals are always eligible to be vaccinated.
*/
define &quot;Meningococcal dose 2 Overdue&quot;:
  null</a:s>
            </a:s>
         </annotation>
         <expression localId="374" locator="121:3-121:6" xsi:type="Null"/>
      </def>
      <def localId="377" locator="128:1-129:6" name="Meningococcal dose 2 Expiration" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Meningococcal dose 2 Expiration"/>
            <a:t name="pseudocode" value="To be determined by Member States; however, there is no recommended expiration date and individuals are always eligible to be vaccinated."/>
            <a:s r="377">
               <a:s r="378">/*
@dynamicValue: Meningococcal 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;Meningococcal dose 2 Expiration&quot;:
  null</a:s>
            </a:s>
         </annotation>
         <expression localId="378" locator="129:3-129:6" xsi:type="Null"/>
      </def>
      <def localId="381" locator="144:1-153:5" name="Test Validation" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="test" value="Test expected results based on example patients"/>
            <a:s r="381">
               <a:s>/*
@test: Test expected results based on example patients
*/
define &quot;Test Validation&quot;:
  </a:s>
               <a:s r="382">
                  <a:s>case
    </a:s>
                  <a:s r="383">
                     <a:s>when </a:s>
                     <a:s r="384">
                        <a:s r="386">
                           <a:s r="385">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="386">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="387">
                           <a:s>'Meningococcal55.1'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="393">
                        <a:s>&quot;Meningococcal dose 1&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="394">
                     <a:s>when </a:s>
                     <a:s r="395">
                        <a:s r="397">
                           <a:s r="396">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="397">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="398">
                           <a:s>'Meningococcal56.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="404">
                        <a:s>&quot;Meningococcal dose 1&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="405">
                     <a:s>when </a:s>
                     <a:s r="406">
                        <a:s r="408">
                           <a:s r="407">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="408">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="409">
                           <a:s>'Meningococcal57.3'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="415">
                        <a:s>&quot;Meningococcal dose 2&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="416">
                     <a:s>when </a:s>
                     <a:s r="417">
                        <a:s r="419">
                           <a:s r="418">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="419">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="420">
                           <a:s>'Meningococcal58.3'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="426">
                        <a:s>&quot;Meningococcal dose 2&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="427">
                     <a:s>when </a:s>
                     <a:s r="428">
                        <a:s r="430">
                           <a:s r="429">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="430">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="431">
                           <a:s>'Meningococcal59.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="437">
                        <a:s r="438">
                           <a:s>&quot;First meningococcal dose from the primary series was administered&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="439">
                           <a:s>not </a:s>
                           <a:s r="440">
                              <a:s>&quot;Meningococcal dose 2&quot;</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="441">
                     <a:s>when </a:s>
                     <a:s r="442">
                        <a:s r="444">
                           <a:s r="443">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="444">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="445">
                           <a:s>'Meningococcal60.1'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="451">
                        <a:s>&quot;Second meningococcal dose from the primary series was administered. The primary series has been completed&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    else </a:s>
                  <a:s r="452">
                     <a:s>'No test case set'</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="382" locator="145:3-153:5" xsi:type="Case">
            <caseItem localId="383" locator="146:5-146:69">
               <when localId="384" locator="146:10-146:41" xsi:type="Equal">
                  <signature localId="391" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="392" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="389" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="390" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="386" locator="146:10-146:19" path="id" xsi:type="Property">
                        <source localId="385" locator="146:10-146:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="387" locator="146:23-146:41" valueType="t:String" value="Meningococcal55.1" xsi:type="Literal"/>
               </when>
               <then localId="454" xsi:type="As">
                  <operand localId="393" locator="146:48-146:69" name="Meningococcal dose 1" xsi:type="ExpressionRef"/>
                  <asTypeSpecifier localId="455" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="456" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="457" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="394" locator="147:5-147:69">
               <when localId="395" locator="147:10-147:41" xsi:type="Equal">
                  <signature localId="402" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="403" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="400" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="401" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="397" locator="147:10-147:19" path="id" xsi:type="Property">
                        <source localId="396" locator="147:10-147:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="398" locator="147:23-147:41" valueType="t:String" value="Meningococcal56.2" xsi:type="Literal"/>
               </when>
               <then localId="458" xsi:type="As">
                  <operand localId="404" locator="147:48-147:69" name="Meningococcal dose 1" xsi:type="ExpressionRef"/>
                  <asTypeSpecifier localId="459" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="460" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="461" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="405" locator="148:5-148:69">
               <when localId="406" locator="148:10-148:41" xsi:type="Equal">
                  <signature localId="413" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="414" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="411" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="412" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="408" locator="148:10-148:19" path="id" xsi:type="Property">
                        <source localId="407" locator="148:10-148:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="409" locator="148:23-148:41" valueType="t:String" value="Meningococcal57.3" xsi:type="Literal"/>
               </when>
               <then localId="462" xsi:type="As">
                  <operand localId="415" locator="148:48-148:69" name="Meningococcal dose 2" xsi:type="ExpressionRef"/>
                  <asTypeSpecifier localId="463" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="464" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="465" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="416" locator="149:5-149:69">
               <when localId="417" locator="149:10-149:41" xsi:type="Equal">
                  <signature localId="424" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="425" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="422" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="423" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="419" locator="149:10-149:19" path="id" xsi:type="Property">
                        <source localId="418" locator="149:10-149:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="420" locator="149:23-149:41" valueType="t:String" value="Meningococcal58.3" xsi:type="Literal"/>
               </when>
               <then localId="466" xsi:type="As">
                  <operand localId="426" locator="149:48-149:69" name="Meningococcal dose 2" xsi:type="ExpressionRef"/>
                  <asTypeSpecifier localId="467" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="468" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="469" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="427" locator="150:5-150:145">
               <when localId="428" locator="150:10-150:41" xsi:type="Equal">
                  <signature localId="435" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="436" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="433" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="434" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="430" locator="150:10-150:19" path="id" xsi:type="Property">
                        <source localId="429" locator="150:10-150:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="431" locator="150:23-150:41" valueType="t:String" value="Meningococcal59.2" xsi:type="Literal"/>
               </when>
               <then localId="470" xsi:type="As">
                  <operand localId="437" locator="150:48-150:145" xsi:type="And">
                     <operand localId="438" locator="150:48-150:114" name="First meningococcal dose from the primary series was administered" xsi:type="ExpressionRef"/>
                     <operand localId="439" locator="150:120-150:145" xsi:type="Not">
                        <operand localId="440" locator="150:124-150:145" name="Meningococcal dose 2" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="471" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="472" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="473" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="441" locator="151:5-151:154">
               <when localId="442" locator="151:10-151:41" xsi:type="Equal">
                  <signature localId="449" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="450" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="447" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="448" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="444" locator="151:10-151:19" path="id" xsi:type="Property">
                        <source localId="443" locator="151:10-151:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="445" locator="151:23-151:41" valueType="t:String" value="Meningococcal60.1" xsi:type="Literal"/>
               </when>
               <then localId="474" xsi:type="As">
                  <operand localId="451" locator="151:48-151:154" name="Second meningococcal dose from the primary series was administered. The primary series has been completed" xsi:type="ExpressionRef"/>
                  <asTypeSpecifier localId="475" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="476" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="477" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <else localId="478" xsi:type="As">
               <operand localId="452" locator="152:10-152:27" valueType="t:String" value="No test case set" xsi:type="Literal"/>
               <asTypeSpecifier localId="479" xsi:type="ChoiceTypeSpecifier">
                  <choice localId="480" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                  <choice localId="481" name="t:String" xsi:type="NamedTypeSpecifier"/>
               </asTypeSpecifier>
            </else>
         </expression>
      </def>
   </statements>
</library>
