WHO Immunization Implementation Guide
1.0.0 - release
WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-immunizations/tree/132/merge and changes regularly. See the Directory of published versions
| Draft as of 2026-03-31 |
{
"resourceType" : "Library",
"id" : "IMMZD2DTHibElements",
"meta" : {
"profile" : [
🔗 "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary"🔗 ,
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary"🔗 ,
"http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library"🔗 ,
"http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"
]
},
"text" : {
"status" : "extensions",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n <table class=\"grid dict\">\n \n \n <tr>\n <th scope=\"row\"><b>Title: </b></th>\n <td style=\"padding-left: 4px;\">IMMZD2DTHibElements</td>\n </tr>\n \n\n \n \n <tr>\n <th scope=\"row\"><b>Id: </b></th>\n <td style=\"padding-left: 4px;\">IMMZD2DTHibElements</td>\n </tr>\n \n\n \n \n <tr>\n <th scope=\"row\"><b>Version: </b></th>\n <td style=\"padding-left: 4px;\">1.0.0</td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Url: </b></th>\n <td style=\"padding-left: 4px;\"><a href=\"Library-IMMZD2DTHibElements.html\">IMMZD2DTHibElements</a></td>\n </tr>\n \n\n \n\n \n\n \n <tr>\n <th scope=\"row\"><b>Status: </b></th>\n <td style=\"padding-left: 4px;\">draft</td>\n </tr>\n \n\n \n\n \n <tr>\n <th scope=\"row\"><b>Type: </b></th>\n <td style=\"padding-left: 4px;\">\n \n \n \n <p style=\"margin-bottom: 5px;\">\n <b>system: </b> <span><a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n </p>\n \n \n <p style=\"margin-bottom: 5px;\">\n <b>code: </b> <span>logic-library</span>\n </p>\n \n \n \n \n \n </td>\n </tr>\n \n\n \n\n \n <tr>\n <th scope=\"row\"><b>Date: </b></th>\n <td style=\"padding-left: 4px;\">2026-03-31 13:54:17+0000</td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Publisher: </b></th>\n <td style=\"padding-left: 4px;\">WHO</td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Description: </b></th>\n <td style=\"padding-left: 4px;\"><div><p>This library defines context-independent elements for Hib used throughout the Immunization CPG</p>\n</div></td>\n </tr>\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n <tr>\n <th scope=\"row\"><b>Related Artifacts: </b></th>\n <td style=\"padding-left: 4px;\">\n \n \n \n <p><b>Dependencies</b></p>\n <ul>\n \n <li><a href=\"Library-WHOConcepts.html\">WHOConcepts</a></li>\n \n <li><a href=\"Library-WHOCommon.html\">WHOCommon</a></li>\n \n <li><a href=\"Library-WHOElements.html\">WHOElements</a></li>\n \n <li><a href=\"Library-IMMZCommon.html\">IMMZCommon</a></li>\n \n <li><a href=\"Library-IMMZConcepts.html\">IMMZConcepts</a></li>\n \n <li><a href=\"Library-IMMZElements.html\">IMMZElements</a></li>\n \n </ul>\n \n \n \n \n \n </td>\n </tr>\n \n\n \n <tr>\n <th scope=\"row\"><b>Parameters: </b></th>\n <td style=\"padding-left: 4px;\">\n <table class=\"grid-dict\">\n <tr><th><b>Name</b></th><th><b>Type</b></th><th><b>Min</b></th><th><b>Max</b></th><th><b>In/Out</b></th></tr>\n \n <tr><th>Patient</th><th>Patient</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Hib Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Hib Primary Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Hib Primary Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is less than 6 weeks</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>No Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is between 6 weeks and 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>One Hib primary series dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is at least 6 weeks and not more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Date of First Hib Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age was less than 1 year when first Hib dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Date of Latest Hib Dose</th><th>date</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered less than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered more than 4 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age was more than 1 year when first Hib dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Two Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is between 6 weeks and not more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Three Hib primary series doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Client's age is more than 5 years</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Hib Booster Series Doses Administered to Patient</th><th>Immunization</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Number of Hib Booster Series Doses Administered</th><th>integer</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>No Hib booster doses were administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered less than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered more than 6 months ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>One Hib booster dose was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>One Hib primary series doses was administered</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered less than 8 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>The latest Hib dose was administered more than 8 weeks ago</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n </table>\n </td>\n </tr>\n \n\n \n\n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n <tr><td><pre><code class=\"language-cql\">\n/*\n * Library: IMMZD2DTHibElements\n */\nlibrary IMMZD2DTHibElements\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude WHOConcepts\ninclude WHOCommon called WC\ninclude WHOElements called WE\n\ninclude IMMZCommon called Common\ninclude IMMZConcepts called Concepts\ninclude IMMZElements called Elements\n\n\ncontext Patient\n\n/*\n@internal: Hib containing Doses Administered to Patient\n*/\ndefine "Hib Doses Administered to Patient":\n Elements."Doses Administered to Patient" I\n where\n I.vaccineCode in Concepts."Hib-containing vaccines"\n\n/*\n@internal: Hib containing Doses Administered to Patient that are in the Primary series\n*/\ndefine "Hib Primary Series Doses Administered to Patient":\n "Hib Doses Administered to Patient".seriesPrimary()\n\n/*\n@internal: Number of Hib Primary Series doses\n*/\ndefine "Number of Hib Primary Series Doses Administered":\n Count("Hib Primary Series Doses Administered to Patient")\n\n/*\n@input: Client's age is less than 6 weeks\n@pseudocode: Today's date − "Date of birth" < 6 weeks\n@code: Client's age is less than 6 weeks-40\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age is less than 6 weeks":\n Elements."Current Patient Age In Weeks" < 6\n\n/*\n@input: No Hib primary series doses were administered\n@pseudocode: Count of vaccines administered (where "Vaccine type" = "Hib-containing vaccines" and "Type of dose" = "Primary series") = 0\n@code: No Hib primary series doses were administered-123\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "No Hib primary series doses were administered":\n "Number of Hib Primary Series Doses Administered" = 0\n\n/*\n@input: Client's age is between 6 weeks and 5 years\n@pseudocode: 6 weeks ≤ Today's date − "Date of birth" ≤ 5 years\n@code: Client's age is between 6 weeks and 5 years-50\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age is between 6 weeks and 5 years":\n 6 <= Elements."Current Patient Age In Weeks"\n and Elements."Current Patient Age In Years" <= 5\n\n/*\n@input: One Hib primary series dose was administered\n@pseudocode: Count of vaccines administered (where "Vaccine type" = "Hib-containing vaccines" and "Type of dose"= "Primary series") = 1\n@code: One Hib primary series dose was administered-122\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n*/\ndefine "One Hib primary series dose was administered":\n "Number of Hib Primary Series Doses Administered" = 1\n\n/*\n@input: Client's age is at least 6 weeks and not more than 5 years\n@pseudocode: 6 weeks ≤ Today's date − "Date of birth" ≤ 5 years\n@code: Client's age is at least 6 weeks and not more than 5 years-50\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age is at least 6 weeks and not more than 5 years":\n "Client's age is between 6 weeks and 5 years"\n\n/*\n@input: Client's age was less than 1 year when first Hib dose was administered\n@pseudocode: "Date and time of vaccination" (where "Vaccine type"= "Hib-containing vaccines" and "Dose number" = 1) − "Date of birth" < 1 year\n@code: Client's age was less than 1 year when first Hib dose was administered-129\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age was less than 1 year when first Hib dose was administered":\n AgeInYearsAt("Date of First Hib Dose") < 1\n\n/*\n@input: The latest Hib dose was administered less than 4 weeks ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") < 4 weeks\n@code: The latest Hib dose was administered less than 4 weeks ago-113\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n*/\ndefine "The latest Hib dose was administered less than 4 weeks ago":\n "Date of Latest Hib Dose" is not null\n and duration in weeks between "Date of Latest Hib Dose" and Now() < 4\n\n/*\n@input: The latest Hib dose was administered more than 4 weeks ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") ≥ 4 weeks\n@code: The latest Hib dose was administered more than 4 weeks ago-113\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n*/\ndefine "The latest Hib dose was administered more than 4 weeks ago":\n not("The latest Hib dose was administered less than 4 weeks ago")\n\n/*\n@input: Client's age was more than 1 year when first Hib dose was administered\n@pseudocode: "Date and time of vaccination" (where "Vaccine type"= "Hib-containing vaccines" and "Dose number" = 1) − "Date of birth" ≥ 1 year\n@code: Client's age was more than 1 year when first Hib dose was administered-129\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age was more than 1 year when first Hib dose was administered":\n AgeInYearsAt("Date of First Hib Dose") >= 1\n\n/*\n@input: Two Hib primary series doses were administered\n@pseudocode: Count of vaccines administered (where "Vaccine type" = "Hib-containing vaccines" and "Type of dose" = "Primary series" ) = 2\n@code: Two Hib primary series doses were administered-124\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Two Hib primary series doses were administered":\n "Number of Hib Primary Series Doses Administered" = 2\n\n/*\n@input: Client's age is between 6 weeks and not more than 5 years\n@pseudocode: 6 weeks ≤ Today's date − "Date of birth" ≤ 5 years\n@code: Client's age is between 6 weeks and not more than 5 years-50\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n*/\ndefine "Client's age is between 6 weeks and not more than 5 years":\n "Client's age is between 6 weeks and 5 years"\n\n/*\n@input: Three Hib primary series doses were administered\n@pseudocode: Count of vaccines administered (where "Vaccine type" = "Hib-containing vaccines" and "Type of dose"= "Primary series") = 3\n@code: Three Hib primary series doses were administered-122\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n*/\ndefine "Three Hib primary series doses were administered":\n "Number of Hib Primary Series Doses Administered" = 3\n\n/*\n@input: Client's age is more than 5 years\n@pseudocode: Today's date − "Date of birth" > 5 years\n@code: Client's age is more than 5 years-40\n@decision: IMMZ.D2.DT.Hib.3 doses: 3 primary doses without a booster dose (3p)\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "Client's age is more than 5 years":\n Elements."Current Patient Age In Years" > 5\n\n/*\n@input: No Hib booster doses were administered\n@pseudocode: Count of vaccines administered where "Vaccine type" = "Hib-containing vaccines" and "Type of dose"" = "Booster dose") = 0\n@code: No Hib booster doses were administered-121\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "No Hib booster doses were administered":\n "Number of Hib Booster Series Doses Administered" = 0\n\n/*\n@input: The latest Hib dose was administered less than 6 months ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") < 6 months\n@code: The latest Hib dose was administered less than 6 months ago-114\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "The latest Hib dose was administered less than 6 months ago":\n "Date of Latest Hib Dose" is not null\n and duration in months between "Date of Latest Hib Dose" and Now() < 6\n\n/*\n@input: The latest Hib dose was administered more than 6 months ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") ≥ 6 months\n@code: The latest Hib dose was administered more than 6 months ago-114\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "The latest Hib dose was administered more than 6 months ago":\n not("The latest Hib dose was administered less than 6 months ago")\n\n/*\n@input: One Hib booster dose was administered\n@pseudocode: Count of vaccines administered where "Vaccine type" = "Hib-containing vaccines" and "Type of dose" = "Booster dose") = 1\n@code: One Hib booster dose was administered-120\n@decision: IMMZ.D2.DT.Hib.3 doses with booster dose: 3 primary doses with a booster dose (3p+1)\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "One Hib booster dose was administered":\n "Number of Hib Booster Series Doses Administered" = 1\n\n/*\n@input: One Hib primary series doses was administered\n@pseudocode: Count of vaccines administered (where "Vaccine type" = "Hib-containing vaccines" and "Type of dose"= "Primary series") = 1\n@code: One Hib primary series doses was administered-122\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "One Hib primary series doses was administered":\n "One Hib primary series dose was administered"\n\n/*\n@input: The latest Hib dose was administered less than 8 weeks ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") < 8 weeks\n@code: The latest Hib dose was administered less than 8 weeks ago-113\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "The latest Hib dose was administered less than 8 weeks ago":\n "Date of Latest Hib Dose" is not null\n and duration in weeks between "Date of Latest Hib Dose" and Now() < 8\n\n/*\n@input: The latest Hib dose was administered more than 8 weeks ago\n@pseudocode: Today's date − latest "Date and time of vaccination" (where "Vaccine type" = "Hib-containing vaccines") ≥ 8 weeks\n@code: The latest Hib dose was administered more than 8 weeks ago-113\n@decision: IMMZ.D2.DT.Hib.2 doses with booster dose: 2 primary doses with a booster dose (2p+1)\n*/\ndefine "The latest Hib dose was administered more than 8 weeks ago":\n "The latest Hib dose was administered less than 8 weeks ago"\n\n/*\n@internal: Hib Booster Series Doses Administered to Patient\n*/\ndefine "Hib Booster Series Doses Administered to Patient":\n "Hib Doses Administered to Patient".seriesBooster()\n\n/*\n@internal: Number of Hib Booster Series Doses Administered\n*/\ndefine "Number of Hib Booster Series Doses Administered":\n Count("Hib Booster Series Doses Administered to Patient")\n\n/*\n@internal: Date of First Hib Dose\n*/\ndefine "Date of First Hib Dose":\n date from start of "Hib Doses Administered to Patient".earliest().occurrence.toInterval()\n\n/*\n@internal: Date of Latest Hib Dose\n*/\ndefine "Date of Latest Hib Dose":\n date from start of "Hib Doses Administered to Patient".mostRecent().occurrence.toInterval()\n</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n \n </table>\n</div>\n</div>"
},
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability",
"valueCode" : "computable"
}
],
"url" : "http://smart.who.int/immunizations/Library/IMMZD2DTHibElements",
"version" : "1.0.0",
"name" : "IMMZD2DTHibElements",
"title" : "IMMZD2DTHibElements",
"status" : "draft",
"experimental" : false,
"type" : {
"coding" : [
{
"system" : "http://terminology.hl7.org/CodeSystem/library-type",
"code" : "logic-library"
}
]
},
"date" : "2026-03-31T13:54:17+00:00",
"publisher" : "WHO",
"contact" : [
{
"name" : "WHO",
"telecom" : [
{
"system" : "url",
"value" : "http://who.int"
}
]
}
],
"description" : "This library defines context-independent elements for Hib used throughout the Immunization CPG",
"relatedArtifact" : [
{
"type" : "depends-on",
"display" : "Library WHOConcepts",
"resource" : "http://smart.who.int/immunizations/Library/WHOConcepts"
},
{
"type" : "depends-on",
"display" : "Library WC",
"resource" : "http://smart.who.int/immunizations/Library/WHOCommon"
},
{
"type" : "depends-on",
"display" : "Library WE",
"resource" : "http://smart.who.int/immunizations/Library/WHOElements"
},
{
"type" : "depends-on",
"display" : "Library Common",
"resource" : "http://smart.who.int/immunizations/Library/IMMZCommon"
},
{
"type" : "depends-on",
"display" : "Library Concepts",
"resource" : "http://smart.who.int/immunizations/Library/IMMZConcepts"
},
{
"type" : "depends-on",
"display" : "Library Elements",
"resource" : "http://smart.who.int/immunizations/Library/IMMZElements"
}
],
"parameter" : [
{
"name" : "Patient",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Patient"
},
{
"name" : "Hib Doses Administered to Patient",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Immunization"
},
{
"name" : "Hib Primary Series Doses Administered to Patient",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Immunization"
},
{
"name" : "Number of Hib Primary Series Doses Administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "integer"
},
{
"name" : "Client's age is less than 6 weeks",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "No Hib primary series doses were administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Client's age is between 6 weeks and 5 years",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "One Hib primary series dose was administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Client's age is at least 6 weeks and not more than 5 years",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Date of First Hib Dose",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "date"
},
{
"name" : "Client's age was less than 1 year when first Hib dose was administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Date of Latest Hib Dose",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "date"
},
{
"name" : "The latest Hib dose was administered less than 4 weeks ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "The latest Hib dose was administered more than 4 weeks ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Client's age was more than 1 year when first Hib dose was administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Two Hib primary series doses were administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Client's age is between 6 weeks and not more than 5 years",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Three Hib primary series doses were administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Client's age is more than 5 years",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Hib Booster Series Doses Administered to Patient",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Immunization"
},
{
"name" : "Number of Hib Booster Series Doses Administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "integer"
},
{
"name" : "No Hib booster doses were administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "The latest Hib dose was administered less than 6 months ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "The latest Hib dose was administered more than 6 months ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "One Hib booster dose was administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "One Hib primary series doses was administered",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "The latest Hib dose was administered less than 8 weeks ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "The latest Hib dose was administered more than 8 weeks ago",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
}
],
"content" : [
{
"contentType" : "text/cql",
"data" : "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVEhpYkVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVEhpYkVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbGVtZW50cyBjYWxsZWQgRWxlbWVudHMKCgpjb250ZXh0IFBhdGllbnQKCi8qCkBpbnRlcm5hbDogSGliIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogIEVsZW1lbnRzLiJEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgSQogIHdoZXJlCiAgICBJLnZhY2NpbmVDb2RlIGluIENvbmNlcHRzLiJIaWItY29udGFpbmluZyB2YWNjaW5lcyIKCi8qCkBpbnRlcm5hbDogSGliIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzCiovCmRlZmluZSAiSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICAiSGliIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5zZXJpZXNQcmltYXJ5KCkKCi8qCkBpbnRlcm5hbDogTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBkb3NlcwoqLwpkZWZpbmUgIk51bWJlciBvZiBIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIjoKICBDb3VudCgiSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IikKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA2IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiA8IDYgd2Vla3MKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gNiB3ZWVrcy00MApAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDYgd2Vla3MiOgogIEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIiA8IDYKCi8qCkBpbnB1dDogTm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDAKQGNvZGU6IE5vIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMjMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiTm8gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzCkBwc2V1ZG9jb2RlOiA2IHdlZWtzIOKJpCBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaQgNSB5ZWFycwpAY29kZTogQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgNSB5ZWFycy01MApAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCA1IHllYXJzIjoKICA2IDw9IEVsZW1lbnRzLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIFdlZWtzIgogIGFuZCBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPD0gNQoKLyoKQGlucHV0OiBPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDEKQGNvZGU6IE9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyMgpAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICJPbmUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIGlzIGF0IGxlYXN0IDYgd2Vla3MgYW5kIG5vdCBtb3JlIHRoYW4gNSB5ZWFycwpAcHNldWRvY29kZTogNiB3ZWVrcyDiiaQgVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omkIDUgeWVhcnMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBhdCBsZWFzdCA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMtNTAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGF0IGxlYXN0IDYgd2Vla3MgYW5kIG5vdCBtb3JlIHRoYW4gNSB5ZWFycyI6CiAgIkNsaWVudCdzIGFnZSBpcyBiZXR3ZWVuIDYgd2Vla3MgYW5kIDUgeWVhcnMiCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSB3YXMgbGVzcyB0aGFuIDEgeWVhciB3aGVuIGZpcnN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSI9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJEb3NlIG51bWJlciIgPSAxKSDiiJIgIkRhdGUgb2YgYmlydGgiIDwgMSB5ZWFyCkBjb2RlOiBDbGllbnQncyBhZ2Ugd2FzIGxlc3MgdGhhbiAxIHllYXIgd2hlbiBmaXJzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyOQpAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJDbGllbnQncyBhZ2Ugd2FzIGxlc3MgdGhhbiAxIHllYXIgd2hlbiBmaXJzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICBBZ2VJblllYXJzQXQoIkRhdGUgb2YgRmlyc3QgSGliIERvc2UiKSA8IDEKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIpIDwgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnby0xMTMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IEhpYiBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIHdlZWtzIGJldHdlZW4gIkRhdGUgb2YgTGF0ZXN0IEhpYiBEb3NlIiBhbmQgTm93KCkgPCA0CgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiKSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnby0xMTMKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnbyI6CiAgbm90KCJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIikKCi8qCkBpbnB1dDogQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIj0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIkRvc2UgbnVtYmVyIiA9IDEpIOKIkiAiRGF0ZSBvZiBiaXJ0aCIg4omlIDEgeWVhcgpAY29kZTogQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMjkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIHdhcyBtb3JlIHRoYW4gMSB5ZWFyIHdoZW4gZmlyc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgQWdlSW5ZZWFyc0F0KCJEYXRlIG9mIEZpcnN0IEhpYiBEb3NlIikgPj0gMQoKLyoKQGlucHV0OiBUd28gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiICkgPSAyCkBjb2RlOiBUd28gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyNApAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJUd28gSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIEhpYiBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMgoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMKQHBzZXVkb2NvZGU6IDYgd2Vla3Mg4omkIFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgb2YgYmlydGgiIOKJpCA1IHllYXJzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgYmV0d2VlbiA2IHdlZWtzIGFuZCBub3QgbW9yZSB0aGFuIDUgeWVhcnMtNTAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgbm90IG1vcmUgdGhhbiA1IHllYXJzIjoKICAiQ2xpZW50J3MgYWdlIGlzIGJldHdlZW4gNiB3ZWVrcyBhbmQgNSB5ZWFycyIKCi8qCkBpbnB1dDogVGhyZWUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSI9ICJQcmltYXJ5IHNlcmllcyIpID0gMwpAY29kZTogVGhyZWUgSGliIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyMgpAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjMgZG9zZXM6IDMgcHJpbWFyeSBkb3NlcyB3aXRob3V0IGEgYm9vc3RlciBkb3NlICgzcCkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKKi8KZGVmaW5lICJUaHJlZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgSGliIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAzCgovKgpAaW5wdXQ6IENsaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gNSB5ZWFycwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPiA1IHllYXJzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDUgeWVhcnMtNDAKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzOiAzIHByaW1hcnkgZG9zZXMgd2l0aG91dCBhIGJvb3N0ZXIgZG9zZSAoM3ApCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA1IHllYXJzIjoKICBFbGVtZW50cy4iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBZZWFycyIgPiA1CgovKgpAaW5wdXQ6IE5vIEhpYiBib29zdGVyIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgd2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiIgPSAiQm9vc3RlciBkb3NlIikgPSAwCkBjb2RlOiBObyBIaWIgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZC0xMjEKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJObyBIaWIgYm9vc3RlciBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDAKCi8qCkBpbnB1dDogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiKSA8IDYgbW9udGhzCkBjb2RlOiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnby0xMTQKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4zIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAzIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoM3ArMSkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULkhpYi4yIGRvc2VzIHdpdGggYm9vc3RlciBkb3NlOiAyIHByaW1hcnkgZG9zZXMgd2l0aCBhIGJvb3N0ZXIgZG9zZSAoMnArMSkKKi8KZGVmaW5lICJUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDYgbW9udGhzIGFnbyI6CiAgIkRhdGUgb2YgTGF0ZXN0IEhpYiBEb3NlIiBpcyBub3QgbnVsbAogICAgYW5kIGR1cmF0aW9uIGluIG1vbnRocyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgYW5kIE5vdygpIDwgNgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDYgbW9udGhzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJIaWItY29udGFpbmluZyB2YWNjaW5lcyIpIOKJpSA2IG1vbnRocwpAY29kZTogVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28tMTE0CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA2IG1vbnRocyBhZ28iOgogIG5vdCgiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA2IG1vbnRocyBhZ28iKQoKLyoKQGlucHV0OiBPbmUgSGliIGJvb3N0ZXIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgd2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiSGliLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJCb29zdGVyIGRvc2UiKSA9IDEKQGNvZGU6IE9uZSBIaWIgYm9vc3RlciBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTIwCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMyBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMyBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDNwKzEpCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiT25lIEhpYiBib29zdGVyIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiA9IDEKCi8qCkBpbnB1dDogT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSI9ICJQcmltYXJ5IHNlcmllcyIpID0gMQpAY29kZTogT25lIEhpYiBwcmltYXJ5IHNlcmllcyBkb3NlcyB3YXMgYWRtaW5pc3RlcmVkLTEyMgpAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjIgZG9zZXMgd2l0aCBib29zdGVyIGRvc2U6IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgIk9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2FzIGFkbWluaXN0ZXJlZCI6CiAgIk9uZSBIaWIgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIgoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDggd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIikgPCA4IHdlZWtzCkBjb2RlOiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDggd2Vla3MgYWdvLTExMwpAZGVjaXNpb246IElNTVouRDIuRFQuSGliLjIgZG9zZXMgd2l0aCBib29zdGVyIGRvc2U6IDIgcHJpbWFyeSBkb3NlcyB3aXRoIGEgYm9vc3RlciBkb3NlICgycCsxKQoqLwpkZWZpbmUgIlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28iOgogICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSIgYW5kIE5vdygpIDwgOAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IEhpYiBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDggd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIkhpYi1jb250YWluaW5nIHZhY2NpbmVzIikg4omlIDggd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gOCB3ZWVrcyBhZ28tMTEzCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5IaWIuMiBkb3NlcyB3aXRoIGJvb3N0ZXIgZG9zZTogMiBwcmltYXJ5IGRvc2VzIHdpdGggYSBib29zdGVyIGRvc2UgKDJwKzEpCiovCmRlZmluZSAiVGhlIGxhdGVzdCBIaWIgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA4IHdlZWtzIGFnbyI6CiAgIlRoZSBsYXRlc3QgSGliIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gOCB3ZWVrcyBhZ28iCgovKgpAaW50ZXJuYWw6IEhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudAoqLwpkZWZpbmUgIkhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCI6CiAgIkhpYiBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIuc2VyaWVzQm9vc3RlcigpCgovKgpAaW50ZXJuYWw6IE51bWJlciBvZiBIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkCiovCmRlZmluZSAiTnVtYmVyIG9mIEhpYiBCb29zdGVyIFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJIaWIgQm9vc3RlciBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGludGVybmFsOiBEYXRlIG9mIEZpcnN0IEhpYiBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBGaXJzdCBIaWIgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLmVhcmxpZXN0KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkKCi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgSGliIERvc2UKKi8KZGVmaW5lICJEYXRlIG9mIExhdGVzdCBIaWIgRG9zZSI6CiAgZGF0ZSBmcm9tIHN0YXJ0IG9mICJIaWIgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLm1vc3RSZWNlbnQoKS5vY2N1cnJlbmNlLnRvSW50ZXJ2YWwoKQo="
}
]
}