WHO Clinical Care in Crisis Implementation Guide for Children
0.1.0 - ci-build

WHO Clinical Care in Crisis Implementation Guide for Children - Local Development build (v0.1.0). See the Directory of published versions

: HeadCircumferenceForAge - TTL Representation

Active as of 2023-10-04

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "HeadCircumferenceForAge"] ; # 
  fhir:text [
fhir:status [ fhir:v "generated" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h2>Related Artifacts</h2><table class=\"grid\"><tr><td>depends-on</td><td><a href=\"Library-anthrobase.html\">anthrobase</a></td></tr><tr><td>depends-on</td><td><code>http://fhir.org/guides/who/anc-cds/Library/FHIRHelpers</code></td></tr></table><h2>Parameters</h2><table class=\"grid\"><tr><td>zscore</td><td>in</td><td/><td/><td>decimal</td></tr><tr><td>Age</td><td>in</td><td/><td/><td>decimal</td></tr><tr><td>sex</td><td>in</td><td/><td/><td>decimal</td></tr><tr><td>generateHeadCircumferenceFromAge</td><td>out</td><td/><td/><td>decimal</td></tr><tr><td>generateZScoreHeadCircumferenceForAge</td><td>out</td><td/><td/><td>decimal</td></tr><tr><td>ZscoreHeadCircumferenceForAgetables_s</td><td>out</td><td/><td/><td>decimal</td></tr><tr><td>ZscoreHeadCircumferenceForAgetables_m</td><td>out</td><td/><td/><td>decimal</td></tr><tr><td>ZscoreHeadCircumferenceForAgetables_l</td><td>out</td><td/><td/><td>decimal</td></tr></table><h2>Data Requirements</h2><table class=\"grid\"><tr><td colspan=\"2\"><b>Type</b>: <a href=\"http://hl7.org/fhir/R4/patient.html\">Patient</a> (<a href=\"http://hl7.org/fhir/R4/patient.html\">Patient</a>)</td></tr></table><h2>Contents</h2><p><code>text/cql</code></p><pre><code class=\"language-sql\">\nlibrary HeadCircumferenceForAge version '1.0.4'\nusing FHIR version '4.0.1'\ninclude anthrobase version '1.0.4' called base\ninclude FHIRHelpers version '4.0.1' called FHIRHelpers\n\n// Antrho library for HeadCircumferenceForAge  Z-Score from the hcanthro files\ncodesystem &quot;administrative-gender&quot;: 'http://hl7.org/fhir/administrative-gender'\n//code &quot;Female&quot; : 'female' from &quot;administrative-gender&quot;  display 'Female'\n\n\ndefine HeadCircumferenceForAgeFemale:\n{\n	{y:0.0,l:1.0,s:0.03496,m:33.8787},\n	{y:1.0,l:1.0,s:0.03479,m:33.975},\n	{y:2.0,l:1.0,s:0.03461,m:34.0714},\n	{y:3.0,l:1.0,s:0.03444,m:34.1677},\n	{y:4.0,l:1.0,s:0.03426,m:34.264},\n	{y:5.0,l:1.0,s:0.03409,m:34.3603},\n	{y:6.0,l:1.0,s:0.03391,m:34.4566},\n	{y:7.0,l:1.0,s:0.03374,m:34.5529},\n	{y:8.0,l:1.0,s:0.03356,m:34.6493},\n	{y:9.0,l:1.0,s:0.03339,m:34.7456},\n	{y:10.0,l:1.0,s:0.03321,m:34.8419},\n	{y:11.0,l:1.0,s:0.03304,m:34.9382},\n	{y:12.0,l:1.0,s:0.03286,m:35.0345},\n	{y:13.0,l:1.0,s:0.03269,m:35.1309},\n	{y:14.0,l:1.0,s:0.03251,m:35.2272},\n	{y:15.0,l:1.0,s:0.03248,m:35.3211},\n	{y:16.0,l:1.0,s:0.03245,m:35.413},\n	{y:17.0,l:1.0,s:0.03242,m:35.5028},\n	{y:18.0,l:1.0,s:0.03239,m:35.5906},\n	{y:19.0,l:1.0,s:0.03236,m:35.6766},\n	{y:20.0,l:1.0,s:0.03233,m:35.7607},\n	{y:21.0,l:1.0,s:0.03231,m:35.843},\n	{y:22.0,l:1.0,s:0.03228,m:35.9237},\n	{y:23.0,l:1.0,s:0.03226,m:36.0028},\n	{y:24.0,l:1.0,s:0.03223,m:36.0803},\n	{y:25.0,l:1.0,s:0.03221,m:36.1563},\n	{y:26.0,l:1.0,s:0.03219,m:36.2309},\n	{y:27.0,l:1.0,s:0.03217,m:36.3042},\n	{y:28.0,l:1.0,s:0.03215,m:36.3761},\n	{y:29.0,l:1.0,s:0.03213,m:36.4468},\n	{y:30.0,l:1.0,s:0.03211,m:36.5163},\n	{y:31.0,l:1.0,s:0.03209,m:36.5846},\n	{y:32.0,l:1.0,s:0.03207,m:36.6519},\n	{y:33.0,l:1.0,s:0.03206,m:36.718},\n	{y:34.0,l:1.0,s:0.03204,m:36.7831},\n	{y:35.0,l:1.0,s:0.03202,m:36.8472},\n	{y:36.0,l:1.0,s:0.032,m:36.9104},\n	{y:37.0,l:1.0,s:0.03199,m:36.9726},\n	{y:38.0,l:1.0,s:0.03197,m:37.034},\n	{y:39.0,l:1.0,s:0.03196,m:37.0945},\n	{y:40.0,l:1.0,s:0.03194,m:37.1541},\n	{y:41.0,l:1.0,s:0.03193,m:37.213},\n	{y:42.0,l:1.0,s:0.03191,m:37.2711},\n	{y:43.0,l:1.0,s:0.0319,m:37.3284},\n	{y:44.0,l:1.0,s:0.03188,m:37.3851},\n	{y:45.0,l:1.0,s:0.03187,m:37.4411},\n	{y:46.0,l:1.0,s:0.03186,m:37.4964},\n	{y:47.0,l:1.0,s:0.03184,m:37.551},\n	{y:48.0,l:1.0,s:0.03183,m:37.605},\n	{y:49.0,l:1.0,s:0.03182,m:37.6584},\n	{y:50.0,l:1.0,s:0.0318,m:37.7112},\n	{y:51.0,l:1.0,s:0.03179,m:37.7635},\n	{y:52.0,l:1.0,s:0.03178,m:37.8152},\n	{y:53.0,l:1.0,s:0.03177,m:37.8663},\n	{y:54.0,l:1.0,s:0.03176,m:37.9169},\n	{y:55.0,l:1.0,s:0.03174,m:37.9671},\n	{y:56.0,l:1.0,s:0.03173,m:38.0167},\n	{y:57.0,l:1.0,s:0.03172,m:38.0658},\n	{y:58.0,l:1.0,s:0.03171,m:38.1145},\n	{y:59.0,l:1.0,s:0.0317,m:38.1628},\n	{y:60.0,l:1.0,s:0.03169,m:38.2106},\n	{y:63.0,l:1.0,s:0.03166,m:38.3516},\n	{y:70.0,l:1.0,s:0.03158,m:38.6673},\n	{y:77.0,l:1.0,s:0.03152,m:38.9661},\n	{y:84.0,l:1.0,s:0.03146,m:39.2501},\n	{y:91.0,l:1.0,s:0.0314,m:39.521},\n	{y:98.0,l:1.0,s:0.03135,m:39.7802},\n	{y:105.0,l:1.0,s:0.0313,m:40.0284},\n	{y:112.0,l:1.0,s:0.03125,m:40.2664},\n	{y:119.0,l:1.0,s:0.03121,m:40.4946},\n	{y:126.0,l:1.0,s:0.03117,m:40.7136},\n	{y:133.0,l:1.0,s:0.03112,m:40.9239},\n	{y:140.0,l:1.0,s:0.03108,m:41.1259},\n	{y:147.0,l:1.0,s:0.03105,m:41.32},\n	{y:154.0,l:1.0,s:0.03101,m:41.5066},\n	{y:161.0,l:1.0,s:0.03098,m:41.6861},\n	{y:168.0,l:1.0,s:0.03094,m:41.8589},\n	{y:175.0,l:1.0,s:0.03091,m:42.0253},\n	{y:182.0,l:1.0,s:0.03088,m:42.1855},\n	{y:197.0,l:1.0,s:0.03081,m:42.5093},\n	{y:227.0,l:1.0,s:0.03069,m:43.0857},\n	{y:257.0,l:1.0,s:0.03059,m:43.5808},\n	{y:287.0,l:1.0,s:0.03049,m:44.0092},\n	{y:317.0,l:1.0,s:0.0304,m:44.3836},\n	{y:347.0,l:1.0,s:0.03032,m:44.7138},\n	{y:377.0,l:1.0,s:0.03024,m:45.0077},\n	{y:407.0,l:1.0,s:0.03017,m:45.2715},\n	{y:437.0,l:1.0,s:0.0301,m:45.5105},\n	{y:467.0,l:1.0,s:0.03003,m:45.729},\n	{y:497.0,l:1.0,s:0.02997,m:45.9305},\n	{y:527.0,l:1.0,s:0.02991,m:46.1184},\n	{y:557.0,l:1.0,s:0.02986,m:46.2951},\n	{y:587.0,l:1.0,s:0.0298,m:46.463},\n	{y:617.0,l:1.0,s:0.02975,m:46.6236},\n	{y:647.0,l:1.0,s:0.0297,m:46.7782},\n	{y:677.0,l:1.0,s:0.02966,m:46.9276},\n	{y:707.0,l:1.0,s:0.02961,m:47.0722},\n	{y:737.0,l:1.0,s:0.02957,m:47.2121},\n	{y:767.0,l:1.0,s:0.02952,m:47.3473},\n	{y:797.0,l:1.0,s:0.02948,m:47.4777},\n	{y:827.0,l:1.0,s:0.02944,m:47.603},\n	{y:857.0,l:1.0,s:0.0294,m:47.7232},\n	{y:887.0,l:1.0,s:0.02936,m:47.8381},\n	{y:917.0,l:1.0,s:0.02933,m:47.9479},\n	{y:947.0,l:1.0,s:0.02929,m:48.0528},\n	{y:977.0,l:1.0,s:0.02925,m:48.153},\n	{y:1007.0,l:1.0,s:0.02922,m:48.2489},\n	{y:1037.0,l:1.0,s:0.02919,m:48.3407},\n	{y:1067.0,l:1.0,s:0.02915,m:48.4288},\n	{y:1097.0,l:1.0,s:0.02912,m:48.5134},\n	{y:1127.0,l:1.0,s:0.02909,m:48.5948},\n	{y:1157.0,l:1.0,s:0.02906,m:48.6732},\n	{y:1187.0,l:1.0,s:0.02903,m:48.7487},\n	{y:1217.0,l:1.0,s:0.029,m:48.8216},\n	{y:1247.0,l:1.0,s:0.02897,m:48.8919},\n	{y:1277.0,l:1.0,s:0.02894,m:48.9598},\n	{y:1307.0,l:1.0,s:0.02891,m:49.0255},\n	{y:1337.0,l:1.0,s:0.02889,m:49.089},\n	{y:1367.0,l:1.0,s:0.02886,m:49.1506},\n	{y:1397.0,l:1.0,s:0.02883,m:49.2103},\n	{y:1427.0,l:1.0,s:0.02881,m:49.2683},\n	{y:1457.0,l:1.0,s:0.02878,m:49.3247},\n	{y:1487.0,l:1.0,s:0.02876,m:49.3797},\n	{y:1517.0,l:1.0,s:0.02873,m:49.4333},\n	{y:1547.0,l:1.0,s:0.02871,m:49.4856},\n	{y:1577.0,l:1.0,s:0.02868,m:49.5367},\n	{y:1607.0,l:1.0,s:0.02866,m:49.5868},\n	{y:1637.0,l:1.0,s:0.02864,m:49.6357},\n	{y:1667.0,l:1.0,s:0.02861,m:49.6836},\n	{y:1697.0,l:1.0,s:0.02859,m:49.7305},\n	{y:1727.0,l:1.0,s:0.02857,m:49.7765},\n	{y:1757.0,l:1.0,s:0.02855,m:49.8216},\n	{y:1787.0,l:1.0,s:0.02853,m:49.866},\n	{y:1817.0,l:1.0,s:0.0285,m:49.9096},\n	{y:1847.0,l:1.0,s:0.02848,m:49.9525}\n}\n\ndefine HeadCircumferenceForAgeMale:\n{\n	{y:0.0,l:1.0,s:0.03686,m:34.4618},\n	{y:1.0,l:1.0,s:0.03656,m:34.562},\n	{y:2.0,l:1.0,s:0.03625,m:34.6622},\n	{y:3.0,l:1.0,s:0.03595,m:34.7625},\n	{y:4.0,l:1.0,s:0.03564,m:34.8627},\n	{y:5.0,l:1.0,s:0.03533,m:34.9629},\n	{y:6.0,l:1.0,s:0.03503,m:35.0631},\n	{y:7.0,l:1.0,s:0.03472,m:35.1634},\n	{y:8.0,l:1.0,s:0.03441,m:35.2636},\n	{y:9.0,l:1.0,s:0.03411,m:35.3638},\n	{y:10.0,l:1.0,s:0.0338,m:35.464},\n	{y:11.0,l:1.0,s:0.0335,m:35.5643},\n	{y:12.0,l:1.0,s:0.03319,m:35.6645},\n	{y:13.0,l:1.0,s:0.03288,m:35.7647},\n	{y:14.0,l:1.0,s:0.03258,m:35.8649},\n	{y:15.0,l:1.0,s:0.03248,m:35.9652},\n	{y:16.0,l:1.0,s:0.03239,m:36.0632},\n	{y:17.0,l:1.0,s:0.0323,m:36.159},\n	{y:18.0,l:1.0,s:0.03221,m:36.2526},\n	{y:19.0,l:1.0,s:0.03213,m:36.3441},\n	{y:20.0,l:1.0,s:0.03205,m:36.4338},\n	{y:21.0,l:1.0,s:0.03197,m:36.5216},\n	{y:22.0,l:1.0,s:0.03189,m:36.6078},\n	{y:23.0,l:1.0,s:0.03182,m:36.6922},\n	{y:24.0,l:1.0,s:0.03175,m:36.7751},\n	{y:25.0,l:1.0,s:0.03168,m:36.8566},\n	{y:26.0,l:1.0,s:0.03161,m:36.9366},\n	{y:27.0,l:1.0,s:0.03154,m:37.0152},\n	{y:28.0,l:1.0,s:0.03148,m:37.0926},\n	{y:29.0,l:1.0,s:0.03141,m:37.1687},\n	{y:30.0,l:1.0,s:0.03135,m:37.2435},\n	{y:31.0,l:1.0,s:0.03129,m:37.3172},\n	{y:32.0,l:1.0,s:0.03123,m:37.3898},\n	{y:33.0,l:1.0,s:0.03118,m:37.4612},\n	{y:34.0,l:1.0,s:0.03112,m:37.5316},\n	{y:35.0,l:1.0,s:0.03107,m:37.601},\n	{y:36.0,l:1.0,s:0.03101,m:37.6694},\n	{y:37.0,l:1.0,s:0.03096,m:37.7368},\n	{y:38.0,l:1.0,s:0.03091,m:37.8034},\n	{y:39.0,l:1.0,s:0.03086,m:37.869},\n	{y:40.0,l:1.0,s:0.03081,m:37.9338},\n	{y:41.0,l:1.0,s:0.03076,m:37.9978},\n	{y:42.0,l:1.0,s:0.03072,m:38.0609},\n	{y:43.0,l:1.0,s:0.03067,m:38.1233},\n	{y:44.0,l:1.0,s:0.03062,m:38.185},\n	{y:45.0,l:1.0,s:0.03058,m:38.2459},\n	{y:46.0,l:1.0,s:0.03054,m:38.3061},\n	{y:47.0,l:1.0,s:0.03049,m:38.3655},\n	{y:48.0,l:1.0,s:0.03045,m:38.4243},\n	{y:49.0,l:1.0,s:0.03041,m:38.4824},\n	{y:50.0,l:1.0,s:0.03037,m:38.5399},\n	{y:51.0,l:1.0,s:0.03033,m:38.5968},\n	{y:52.0,l:1.0,s:0.03029,m:38.653},\n	{y:53.0,l:1.0,s:0.03025,m:38.7087},\n	{y:54.0,l:1.0,s:0.03021,m:38.7638},\n	{y:55.0,l:1.0,s:0.03018,m:38.8183},\n	{y:56.0,l:1.0,s:0.03014,m:38.8724},\n	{y:57.0,l:1.0,s:0.0301,m:38.9258},\n	{y:58.0,l:1.0,s:0.03007,m:38.9788},\n	{y:59.0,l:1.0,s:0.03003,m:39.0313},\n	{y:60.0,l:1.0,s:0.03,m:39.0834},\n	{y:63.0,l:1.0,s:0.0299,m:39.2368},\n	{y:70.0,l:1.0,s:0.02969,m:39.5797},\n	{y:77.0,l:1.0,s:0.0295,m:39.9033},\n	{y:84.0,l:1.0,s:0.02933,m:40.2096},\n	{y:91.0,l:1.0,s:0.02918,m:40.5008},\n	{y:98.0,l:1.0,s:0.02905,m:40.7785},\n	{y:105.0,l:1.0,s:0.02893,m:41.0436},\n	{y:112.0,l:1.0,s:0.02882,m:41.297},\n	{y:119.0,l:1.0,s:0.02872,m:41.5394},\n	{y:126.0,l:1.0,s:0.02863,m:41.7715},\n	{y:133.0,l:1.0,s:0.02855,m:41.9939},\n	{y:140.0,l:1.0,s:0.02848,m:42.2071},\n	{y:147.0,l:1.0,s:0.02841,m:42.4115},\n	{y:154.0,l:1.0,s:0.02835,m:42.6076},\n	{y:161.0,l:1.0,s:0.0283,m:42.7957},\n	{y:168.0,l:1.0,s:0.02825,m:42.9762},\n	{y:175.0,l:1.0,s:0.02821,m:43.1495},\n	{y:182.0,l:1.0,s:0.02817,m:43.316},\n	{y:197.0,l:1.0,s:0.0281,m:43.6513},\n	{y:227.0,l:1.0,s:0.028,m:44.2432},\n	{y:257.0,l:1.0,s:0.02794,m:44.7472},\n	{y:287.0,l:1.0,s:0.02791,m:45.1809},\n	{y:317.0,l:1.0,s:0.02789,m:45.5571},\n	{y:347.0,l:1.0,s:0.02788,m:45.8857},\n	{y:377.0,l:1.0,s:0.02789,m:46.1754},\n	{y:407.0,l:1.0,s:0.0279,m:46.4335},\n	{y:437.0,l:1.0,s:0.02791,m:46.666},\n	{y:467.0,l:1.0,s:0.02793,m:46.8775},\n	{y:497.0,l:1.0,s:0.02795,m:47.0719},\n	{y:527.0,l:1.0,s:0.02798,m:47.2524},\n	{y:557.0,l:1.0,s:0.02801,m:47.4215},\n	{y:587.0,l:1.0,s:0.02804,m:47.5811},\n	{y:617.0,l:1.0,s:0.02807,m:47.7329},\n	{y:647.0,l:1.0,s:0.02811,m:47.8779},\n	{y:677.0,l:1.0,s:0.02814,m:48.017},\n	{y:707.0,l:1.0,s:0.02818,m:48.1505},\n	{y:737.0,l:1.0,s:0.02822,m:48.2789},\n	{y:767.0,l:1.0,s:0.02826,m:48.4023},\n	{y:797.0,l:1.0,s:0.0283,m:48.5207},\n	{y:827.0,l:1.0,s:0.02835,m:48.6344},\n	{y:857.0,l:1.0,s:0.02839,m:48.7434},\n	{y:887.0,l:1.0,s:0.02843,m:48.8478},\n	{y:917.0,l:1.0,s:0.02847,m:48.9478},\n	{y:947.0,l:1.0,s:0.02851,m:49.0435},\n	{y:977.0,l:1.0,s:0.02855,m:49.135},\n	{y:1007.0,l:1.0,s:0.02859,m:49.2226},\n	{y:1037.0,l:1.0,s:0.02863,m:49.3066},\n	{y:1067.0,l:1.0,s:0.02867,m:49.3871},\n	{y:1097.0,l:1.0,s:0.02871,m:49.4644},\n	{y:1127.0,l:1.0,s:0.02875,m:49.5387},\n	{y:1157.0,l:1.0,s:0.02878,m:49.6101},\n	{y:1187.0,l:1.0,s:0.02882,m:49.679},\n	{y:1217.0,l:1.0,s:0.02886,m:49.7454},\n	{y:1247.0,l:1.0,s:0.02889,m:49.8096},\n	{y:1277.0,l:1.0,s:0.02892,m:49.8717},\n	{y:1307.0,l:1.0,s:0.02896,m:49.9318},\n	{y:1337.0,l:1.0,s:0.02899,m:49.99},\n	{y:1367.0,l:1.0,s:0.02902,m:50.0463},\n	{y:1397.0,l:1.0,s:0.02905,m:50.1008},\n	{y:1427.0,l:1.0,s:0.02909,m:50.1536},\n	{y:1457.0,l:1.0,s:0.02912,m:50.2048},\n	{y:1487.0,l:1.0,s:0.02915,m:50.2545},\n	{y:1517.0,l:1.0,s:0.02918,m:50.3028},\n	{y:1547.0,l:1.0,s:0.0292,m:50.3497},\n	{y:1577.0,l:1.0,s:0.02923,m:50.3953},\n	{y:1607.0,l:1.0,s:0.02926,m:50.4398},\n	{y:1637.0,l:1.0,s:0.02929,m:50.4832},\n	{y:1667.0,l:1.0,s:0.02932,m:50.5255},\n	{y:1697.0,l:1.0,s:0.02934,m:50.567},\n	{y:1727.0,l:1.0,s:0.02937,m:50.6077},\n	{y:1757.0,l:1.0,s:0.0294,m:50.6476},\n	{y:1787.0,l:1.0,s:0.02942,m:50.6869},\n	{y:1817.0,l:1.0,s:0.02945,m:50.7257},\n	{y:1847.0,l:1.0,s:0.02947,m:50.7638}\n}\n\n\n\n\ndefine function ZscoreHeadCircumferenceForAgetables(sex String, age Decimal):\n	if sex = 'female' then  \n        First(HeadCircumferenceForAgeFemale c where c.y = base.AgeToMini(age) )\n	else \n        First(HeadCircumferenceForAgeMale c where  c.y = base.AgeToMini(age))\n            \ndefine function generateZScoreHeadCircumferenceForAge(sex System.String, age System.Decimal, weight  System.Decimal)  : \n	 generateZScoreHeadCircumferenceForAgedet(ZscoreHeadCircumferenceForAgetables(sex,age), weight )\n\ndefine function generateZScoreHeadCircumferenceForAgedet(row Tuple {y System.Decimal,l System.Decimal,s System.Decimal,m System.Decimal}, weight  System.Decimal):\n    if row is not null then \n        base.computeZScore(\n            weight,\n            row.m , \n            row.l ,\n            row.s \n        )\n    else null\n\n\ndefine function generateHeadCircumferenceFromAge(sex System.String, age System.Decimal, zscore  System.Decimal) : \n	 generateHeadCircumferenceFromAgedet(ZscoreHeadCircumferenceForAgetables(sex,age),zscore  )\n\ndefine function generateHeadCircumferenceFromAgedet(row Tuple {y System.Decimal,l System.Decimal,s System.Decimal,m System.Decimal},zscore  System.Decimal) : \n    if row is not null then \n        base.computeReverseZScore(\n            zscore,\n            row.m , \n            row.l ,\n            row.s \n        )\n    else null    \n\n    \n</code></pre></div>"
  ] ; # 
  fhir:url [ fhir:v "https://fhir.dk.swisstph-mis.ch/matchbox/fhir/Library/HeadCircumferenceForAge"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "0.1.0"] ; # 
  fhir:name [ fhir:v "HeadCircumferenceForAge"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:type [
    ( fhir:coding [
fhir:system [ fhir:v "http://hl7.org/fhir/ValueSet/library-type"^^xsd:anyURI ] ;
fhir:code [ fhir:v "logic-library" ]     ] )
  ] ; # 
  fhir:date [ fhir:v "2023-10-04T12:32:21+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "WHO"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "WHO" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://who.int" ]     ] )
  ] ) ; # 
  fhir:relatedArtifact ( [
fhir:type [ fhir:v "depends-on" ] ;
fhir:resource [
fhir:v "https://fhir.dk.swisstph-mis.ch/matchbox/fhir/Library/anthrobase"^^xsd:anyURI ;
fhir:link <https://fhir.dk.swisstph-mis.ch/matchbox/fhir/Library/anthrobase>     ]
  ] [
fhir:type [ fhir:v "depends-on" ] ;
fhir:resource [
fhir:v "http://fhir.org/guides/who/anc-cds/Library/FHIRHelpers"^^xsd:anyURI ;
fhir:link <http://fhir.org/guides/who/anc-cds/Library/FHIRHelpers>     ]
  ] ) ; # 
  fhir:parameter ( [
fhir:name [ fhir:v "zscore" ] ;
fhir:use [ fhir:v "in" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "Age" ] ;
fhir:use [ fhir:v "in" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "sex" ] ;
fhir:use [ fhir:v "in" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "generateHeadCircumferenceFromAge" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "generateZScoreHeadCircumferenceForAge" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "ZscoreHeadCircumferenceForAgetables_s" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "ZscoreHeadCircumferenceForAgetables_m" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:type [ fhir:v "decimal" ]
  ] [
fhir:name [ fhir:v "ZscoreHeadCircumferenceForAgetables_l" ] ;
fhir:use [ fhir:v "out" ] ;
fhir:type [ fhir:v "decimal" ]
  ] ) ; # 
  fhir:dataRequirement ( [
fhir:type [ fhir:v "Patient" ] ;
    ( fhir:profile [
fhir:v "http://hl7.org/fhir/StructureDefinition/Patient"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Patient>     ] )
  ] ) ; # 
  fhir:content ( [
fhir:id [ fhir:v "ig-loader-HeadCircumferenceForAge.cql" ] ;
fhir:contentType [ fhir:v "text/cql" ] ;
fhir:data [ fhir:v "CmxpYnJhcnkgSGVhZENpcmN1bWZlcmVuY2VGb3JBZ2UgdmVyc2lvbiAnMS4wLjQnCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCmluY2x1ZGUgYW50aHJvYmFzZSB2ZXJzaW9uICcxLjAuNCcgY2FsbGVkIGJhc2UKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScgY2FsbGVkIEZISVJIZWxwZXJzCgovLyBBbnRyaG8gbGlicmFyeSBmb3IgSGVhZENpcmN1bWZlcmVuY2VGb3JBZ2UgIFotU2NvcmUgZnJvbSB0aGUgaGNhbnRocm8gZmlsZXMKY29kZXN5c3RlbSAiYWRtaW5pc3RyYXRpdmUtZ2VuZGVyIjogJ2h0dHA6Ly9obDcub3JnL2ZoaXIvYWRtaW5pc3RyYXRpdmUtZ2VuZGVyJwovL2NvZGUgIkZlbWFsZSIgOiAnZmVtYWxlJyBmcm9tICJhZG1pbmlzdHJhdGl2ZS1nZW5kZXIiICBkaXNwbGF5ICdGZW1hbGUnCgoKZGVmaW5lIEhlYWRDaXJjdW1mZXJlbmNlRm9yQWdlRmVtYWxlOgp7Cgl7eTowLjAsbDoxLjAsczowLjAzNDk2LG06MzMuODc4N30sCgl7eToxLjAsbDoxLjAsczowLjAzNDc5LG06MzMuOTc1fSwKCXt5OjIuMCxsOjEuMCxzOjAuMDM0NjEsbTozNC4wNzE0fSwKCXt5OjMuMCxsOjEuMCxzOjAuMDM0NDQsbTozNC4xNjc3fSwKCXt5OjQuMCxsOjEuMCxzOjAuMDM0MjYsbTozNC4yNjR9LAoJe3k6NS4wLGw6MS4wLHM6MC4wMzQwOSxtOjM0LjM2MDN9LAoJe3k6Ni4wLGw6MS4wLHM6MC4wMzM5MSxtOjM0LjQ1NjZ9LAoJe3k6Ny4wLGw6MS4wLHM6MC4wMzM3NCxtOjM0LjU1Mjl9LAoJe3k6OC4wLGw6MS4wLHM6MC4wMzM1NixtOjM0LjY0OTN9LAoJe3k6OS4wLGw6MS4wLHM6MC4wMzMzOSxtOjM0Ljc0NTZ9LAoJe3k6MTAuMCxsOjEuMCxzOjAuMDMzMjEsbTozNC44NDE5fSwKCXt5OjExLjAsbDoxLjAsczowLjAzMzA0LG06MzQuOTM4Mn0sCgl7eToxMi4wLGw6MS4wLHM6MC4wMzI4NixtOjM1LjAzNDV9LAoJe3k6MTMuMCxsOjEuMCxzOjAuMDMyNjksbTozNS4xMzA5fSwKCXt5OjE0LjAsbDoxLjAsczowLjAzMjUxLG06MzUuMjI3Mn0sCgl7eToxNS4wLGw6MS4wLHM6MC4wMzI0OCxtOjM1LjMyMTF9LAoJe3k6MTYuMCxsOjEuMCxzOjAuMDMyNDUsbTozNS40MTN9LAoJe3k6MTcuMCxsOjEuMCxzOjAuMDMyNDIsbTozNS41MDI4fSwKCXt5OjE4LjAsbDoxLjAsczowLjAzMjM5LG06MzUuNTkwNn0sCgl7eToxOS4wLGw6MS4wLHM6MC4wMzIzNixtOjM1LjY3NjZ9LAoJe3k6MjAuMCxsOjEuMCxzOjAuMDMyMzMsbTozNS43NjA3fSwKCXt5OjIxLjAsbDoxLjAsczowLjAzMjMxLG06MzUuODQzfSwKCXt5OjIyLjAsbDoxLjAsczowLjAzMjI4LG06MzUuOTIzN30sCgl7eToyMy4wLGw6MS4wLHM6MC4wMzIyNixtOjM2LjAwMjh9LAoJe3k6MjQuMCxsOjEuMCxzOjAuMDMyMjMsbTozNi4wODAzfSwKCXt5OjI1LjAsbDoxLjAsczowLjAzMjIxLG06MzYuMTU2M30sCgl7eToyNi4wLGw6MS4wLHM6MC4wMzIxOSxtOjM2LjIzMDl9LAoJe3k6MjcuMCxsOjEuMCxzOjAuMDMyMTcsbTozNi4zMDQyfSwKCXt5OjI4LjAsbDoxLjAsczowLjAzMjE1LG06MzYuMzc2MX0sCgl7eToyOS4wLGw6MS4wLHM6MC4wMzIxMyxtOjM2LjQ0Njh9LAoJe3k6MzAuMCxsOjEuMCxzOjAuMDMyMTEsbTozNi41MTYzfSwKCXt5OjMxLjAsbDoxLjAsczowLjAzMjA5LG06MzYuNTg0Nn0sCgl7eTozMi4wLGw6MS4wLHM6MC4wMzIwNyxtOjM2LjY1MTl9LAoJe3k6MzMuMCxsOjEuMCxzOjAuMDMyMDYsbTozNi43MTh9LAoJe3k6MzQuMCxsOjEuMCxzOjAuMDMyMDQsbTozNi43ODMxfSwKCXt5OjM1LjAsbDoxLjAsczowLjAzMjAyLG06MzYuODQ3Mn0sCgl7eTozNi4wLGw6MS4wLHM6MC4wMzIsbTozNi45MTA0fSwKCXt5OjM3LjAsbDoxLjAsczowLjAzMTk5LG06MzYuOTcyNn0sCgl7eTozOC4wLGw6MS4wLHM6MC4wMzE5NyxtOjM3LjAzNH0sCgl7eTozOS4wLGw6MS4wLHM6MC4wMzE5NixtOjM3LjA5NDV9LAoJe3k6NDAuMCxsOjEuMCxzOjAuMDMxOTQsbTozNy4xNTQxfSwKCXt5OjQxLjAsbDoxLjAsczowLjAzMTkzLG06MzcuMjEzfSwKCXt5OjQyLjAsbDoxLjAsczowLjAzMTkxLG06MzcuMjcxMX0sCgl7eTo0My4wLGw6MS4wLHM6MC4wMzE5LG06MzcuMzI4NH0sCgl7eTo0NC4wLGw6MS4wLHM6MC4wMzE4OCxtOjM3LjM4NTF9LAoJe3k6NDUuMCxsOjEuMCxzOjAuMDMxODcsbTozNy40NDExfSwKCXt5OjQ2LjAsbDoxLjAsczowLjAzMTg2LG06MzcuNDk2NH0sCgl7eTo0Ny4wLGw6MS4wLHM6MC4wMzE4NCxtOjM3LjU1MX0sCgl7eTo0OC4wLGw6MS4wLHM6MC4wMzE4MyxtOjM3LjYwNX0sCgl7eTo0OS4wLGw6MS4wLHM6MC4wMzE4MixtOjM3LjY1ODR9LAoJe3k6NTAuMCxsOjEuMCxzOjAuMDMxOCxtOjM3LjcxMTJ9LAoJe3k6NTEuMCxsOjEuMCxzOjAuMDMxNzksbTozNy43NjM1fSwKCXt5OjUyLjAsbDoxLjAsczowLjAzMTc4LG06MzcuODE1Mn0sCgl7eTo1My4wLGw6MS4wLHM6MC4wMzE3NyxtOjM3Ljg2NjN9LAoJe3k6NTQuMCxsOjEuMCxzOjAuMDMxNzYsbTozNy45MTY5fSwKCXt5OjU1LjAsbDoxLjAsczowLjAzMTc0LG06MzcuOTY3MX0sCgl7eTo1Ni4wLGw6MS4wLHM6MC4wMzE3MyxtOjM4LjAxNjd9LAoJe3k6NTcuMCxsOjEuMCxzOjAuMDMxNzIsbTozOC4wNjU4fSwKCXt5OjU4LjAsbDoxLjAsczowLjAzMTcxLG06MzguMTE0NX0sCgl7eTo1OS4wLGw6MS4wLHM6MC4wMzE3LG06MzguMTYyOH0sCgl7eTo2MC4wLGw6MS4wLHM6MC4wMzE2OSxtOjM4LjIxMDZ9LAoJe3k6NjMuMCxsOjEuMCxzOjAuMDMxNjYsbTozOC4zNTE2fSwKCXt5OjcwLjAsbDoxLjAsczowLjAzMTU4LG06MzguNjY3M30sCgl7eTo3Ny4wLGw6MS4wLHM6MC4wMzE1MixtOjM4Ljk2NjF9LAoJe3k6ODQuMCxsOjEuMCxzOjAuMDMxNDYsbTozOS4yNTAxfSwKCXt5OjkxLjAsbDoxLjAsczowLjAzMTQsbTozOS41MjF9LAoJe3k6OTguMCxsOjEuMCxzOjAuMDMxMzUsbTozOS43ODAyfSwKCXt5OjEwNS4wLGw6MS4wLHM6MC4wMzEzLG06NDAuMDI4NH0sCgl7eToxMTIuMCxsOjEuMCxzOjAuMDMxMjUsbTo0MC4yNjY0fSwKCXt5OjExOS4wLGw6MS4wLHM6MC4wMzEyMSxtOjQwLjQ5NDZ9LAoJe3k6MTI2LjAsbDoxLjAsczowLjAzMTE3LG06NDAuNzEzNn0sCgl7eToxMzMuMCxsOjEuMCxzOjAuMDMxMTIsbTo0MC45MjM5fSwKCXt5OjE0MC4wLGw6MS4wLHM6MC4wMzEwOCxtOjQxLjEyNTl9LAoJe3k6MTQ3LjAsbDoxLjAsczowLjAzMTA1LG06NDEuMzJ9LAoJe3k6MTU0LjAsbDoxLjAsczowLjAzMTAxLG06NDEuNTA2Nn0sCgl7eToxNjEuMCxsOjEuMCxzOjAuMDMwOTgsbTo0MS42ODYxfSwKCXt5OjE2OC4wLGw6MS4wLHM6MC4wMzA5NCxtOjQxLjg1ODl9LAoJe3k6MTc1LjAsbDoxLjAsczowLjAzMDkxLG06NDIuMDI1M30sCgl7eToxODIuMCxsOjEuMCxzOjAuMDMwODgsbTo0Mi4xODU1fSwKCXt5OjE5Ny4wLGw6MS4wLHM6MC4wMzA4MSxtOjQyLjUwOTN9LAoJe3k6MjI3LjAsbDoxLjAsczowLjAzMDY5LG06NDMuMDg1N30sCgl7eToyNTcuMCxsOjEuMCxzOjAuMDMwNTksbTo0My41ODA4fSwKCXt5OjI4Ny4wLGw6MS4wLHM6MC4wMzA0OSxtOjQ0LjAwOTJ9LAoJe3k6MzE3LjAsbDoxLjAsczowLjAzMDQsbTo0NC4zODM2fSwKCXt5OjM0Ny4wLGw6MS4wLHM6MC4wMzAzMixtOjQ0LjcxMzh9LAoJe3k6Mzc3LjAsbDoxLjAsczowLjAzMDI0LG06NDUuMDA3N30sCgl7eTo0MDcuMCxsOjEuMCxzOjAuMDMwMTcsbTo0NS4yNzE1fSwKCXt5OjQzNy4wLGw6MS4wLHM6MC4wMzAxLG06NDUuNTEwNX0sCgl7eTo0NjcuMCxsOjEuMCxzOjAuMDMwMDMsbTo0NS43Mjl9LAoJe3k6NDk3LjAsbDoxLjAsczowLjAyOTk3LG06NDUuOTMwNX0sCgl7eTo1MjcuMCxsOjEuMCxzOjAuMDI5OTEsbTo0Ni4xMTg0fSwKCXt5OjU1Ny4wLGw6MS4wLHM6MC4wMjk4NixtOjQ2LjI5NTF9LAoJe3k6NTg3LjAsbDoxLjAsczowLjAyOTgsbTo0Ni40NjN9LAoJe3k6NjE3LjAsbDoxLjAsczowLjAyOTc1LG06NDYuNjIzNn0sCgl7eTo2NDcuMCxsOjEuMCxzOjAuMDI5NyxtOjQ2Ljc3ODJ9LAoJe3k6Njc3LjAsbDoxLjAsczowLjAyOTY2LG06NDYuOTI3Nn0sCgl7eTo3MDcuMCxsOjEuMCxzOjAuMDI5NjEsbTo0Ny4wNzIyfSwKCXt5OjczNy4wLGw6MS4wLHM6MC4wMjk1NyxtOjQ3LjIxMjF9LAoJe3k6NzY3LjAsbDoxLjAsczowLjAyOTUyLG06NDcuMzQ3M30sCgl7eTo3OTcuMCxsOjEuMCxzOjAuMDI5NDgsbTo0Ny40Nzc3fSwKCXt5OjgyNy4wLGw6MS4wLHM6MC4wMjk0NCxtOjQ3LjYwM30sCgl7eTo4NTcuMCxsOjEuMCxzOjAuMDI5NCxtOjQ3LjcyMzJ9LAoJe3k6ODg3LjAsbDoxLjAsczowLjAyOTM2LG06NDcuODM4MX0sCgl7eTo5MTcuMCxsOjEuMCxzOjAuMDI5MzMsbTo0Ny45NDc5fSwKCXt5Ojk0Ny4wLGw6MS4wLHM6MC4wMjkyOSxtOjQ4LjA1Mjh9LAoJe3k6OTc3LjAsbDoxLjAsczowLjAyOTI1LG06NDguMTUzfSwKCXt5OjEwMDcuMCxsOjEuMCxzOjAuMDI5MjIsbTo0OC4yNDg5fSwKCXt5OjEwMzcuMCxsOjEuMCxzOjAuMDI5MTksbTo0OC4zNDA3fSwKCXt5OjEwNjcuMCxsOjEuMCxzOjAuMDI5MTUsbTo0OC40Mjg4fSwKCXt5OjEwOTcuMCxsOjEuMCxzOjAuMDI5MTIsbTo0OC41MTM0fSwKCXt5OjExMjcuMCxsOjEuMCxzOjAuMDI5MDksbTo0OC41OTQ4fSwKCXt5OjExNTcuMCxsOjEuMCxzOjAuMDI5MDYsbTo0OC42NzMyfSwKCXt5OjExODcuMCxsOjEuMCxzOjAuMDI5MDMsbTo0OC43NDg3fSwKCXt5OjEyMTcuMCxsOjEuMCxzOjAuMDI5LG06NDguODIxNn0sCgl7eToxMjQ3LjAsbDoxLjAsczowLjAyODk3LG06NDguODkxOX0sCgl7eToxMjc3LjAsbDoxLjAsczowLjAyODk0LG06NDguOTU5OH0sCgl7eToxMzA3LjAsbDoxLjAsczowLjAyODkxLG06NDkuMDI1NX0sCgl7eToxMzM3LjAsbDoxLjAsczowLjAyODg5LG06NDkuMDg5fSwKCXt5OjEzNjcuMCxsOjEuMCxzOjAuMDI4ODYsbTo0OS4xNTA2fSwKCXt5OjEzOTcuMCxsOjEuMCxzOjAuMDI4ODMsbTo0OS4yMTAzfSwKCXt5OjE0MjcuMCxsOjEuMCxzOjAuMDI4ODEsbTo0OS4yNjgzfSwKCXt5OjE0NTcuMCxsOjEuMCxzOjAuMDI4NzgsbTo0OS4zMjQ3fSwKCXt5OjE0ODcuMCxsOjEuMCxzOjAuMDI4NzYsbTo0OS4zNzk3fSwKCXt5OjE1MTcuMCxsOjEuMCxzOjAuMDI4NzMsbTo0OS40MzMzfSwKCXt5OjE1NDcuMCxsOjEuMCxzOjAuMDI4NzEsbTo0OS40ODU2fSwKCXt5OjE1NzcuMCxsOjEuMCxzOjAuMDI4NjgsbTo0OS41MzY3fSwKCXt5OjE2MDcuMCxsOjEuMCxzOjAuMDI4NjYsbTo0OS41ODY4fSwKCXt5OjE2MzcuMCxsOjEuMCxzOjAuMDI4NjQsbTo0OS42MzU3fSwKCXt5OjE2NjcuMCxsOjEuMCxzOjAuMDI4NjEsbTo0OS42ODM2fSwKCXt5OjE2OTcuMCxsOjEuMCxzOjAuMDI4NTksbTo0OS43MzA1fSwKCXt5OjE3MjcuMCxsOjEuMCxzOjAuMDI4NTcsbTo0OS43NzY1fSwKCXt5OjE3NTcuMCxsOjEuMCxzOjAuMDI4NTUsbTo0OS44MjE2fSwKCXt5OjE3ODcuMCxsOjEuMCxzOjAuMDI4NTMsbTo0OS44NjZ9LAoJe3k6MTgxNy4wLGw6MS4wLHM6MC4wMjg1LG06NDkuOTA5Nn0sCgl7eToxODQ3LjAsbDoxLjAsczowLjAyODQ4LG06NDkuOTUyNX0KfQoKZGVmaW5lIEhlYWRDaXJjdW1mZXJlbmNlRm9yQWdlTWFsZToKewoJe3k6MC4wLGw6MS4wLHM6MC4wMzY4NixtOjM0LjQ2MTh9LAoJe3k6MS4wLGw6MS4wLHM6MC4wMzY1NixtOjM0LjU2Mn0sCgl7eToyLjAsbDoxLjAsczowLjAzNjI1LG06MzQuNjYyMn0sCgl7eTozLjAsbDoxLjAsczowLjAzNTk1LG06MzQuNzYyNX0sCgl7eTo0LjAsbDoxLjAsczowLjAzNTY0LG06MzQuODYyN30sCgl7eTo1LjAsbDoxLjAsczowLjAzNTMzLG06MzQuOTYyOX0sCgl7eTo2LjAsbDoxLjAsczowLjAzNTAzLG06MzUuMDYzMX0sCgl7eTo3LjAsbDoxLjAsczowLjAzNDcyLG06MzUuMTYzNH0sCgl7eTo4LjAsbDoxLjAsczowLjAzNDQxLG06MzUuMjYzNn0sCgl7eTo5LjAsbDoxLjAsczowLjAzNDExLG06MzUuMzYzOH0sCgl7eToxMC4wLGw6MS4wLHM6MC4wMzM4LG06MzUuNDY0fSwKCXt5OjExLjAsbDoxLjAsczowLjAzMzUsbTozNS41NjQzfSwKCXt5OjEyLjAsbDoxLjAsczowLjAzMzE5LG06MzUuNjY0NX0sCgl7eToxMy4wLGw6MS4wLHM6MC4wMzI4OCxtOjM1Ljc2NDd9LAoJe3k6MTQuMCxsOjEuMCxzOjAuMDMyNTgsbTozNS44NjQ5fSwKCXt5OjE1LjAsbDoxLjAsczowLjAzMjQ4LG06MzUuOTY1Mn0sCgl7eToxNi4wLGw6MS4wLHM6MC4wMzIzOSxtOjM2LjA2MzJ9LAoJe3k6MTcuMCxsOjEuMCxzOjAuMDMyMyxtOjM2LjE1OX0sCgl7eToxOC4wLGw6MS4wLHM6MC4wMzIyMSxtOjM2LjI1MjZ9LAoJe3k6MTkuMCxsOjEuMCxzOjAuMDMyMTMsbTozNi4zNDQxfSwKCXt5OjIwLjAsbDoxLjAsczowLjAzMjA1LG06MzYuNDMzOH0sCgl7eToyMS4wLGw6MS4wLHM6MC4wMzE5NyxtOjM2LjUyMTZ9LAoJe3k6MjIuMCxsOjEuMCxzOjAuMDMxODksbTozNi42MDc4fSwKCXt5OjIzLjAsbDoxLjAsczowLjAzMTgyLG06MzYuNjkyMn0sCgl7eToyNC4wLGw6MS4wLHM6MC4wMzE3NSxtOjM2Ljc3NTF9LAoJe3k6MjUuMCxsOjEuMCxzOjAuMDMxNjgsbTozNi44NTY2fSwKCXt5OjI2LjAsbDoxLjAsczowLjAzMTYxLG06MzYuOTM2Nn0sCgl7eToyNy4wLGw6MS4wLHM6MC4wMzE1NCxtOjM3LjAxNTJ9LAoJe3k6MjguMCxsOjEuMCxzOjAuMDMxNDgsbTozNy4wOTI2fSwKCXt5OjI5LjAsbDoxLjAsczowLjAzMTQxLG06MzcuMTY4N30sCgl7eTozMC4wLGw6MS4wLHM6MC4wMzEzNSxtOjM3LjI0MzV9LAoJe3k6MzEuMCxsOjEuMCxzOjAuMDMxMjksbTozNy4zMTcyfSwKCXt5OjMyLjAsbDoxLjAsczowLjAzMTIzLG06MzcuMzg5OH0sCgl7eTozMy4wLGw6MS4wLHM6MC4wMzExOCxtOjM3LjQ2MTJ9LAoJe3k6MzQuMCxsOjEuMCxzOjAuMDMxMTIsbTozNy41MzE2fSwKCXt5OjM1LjAsbDoxLjAsczowLjAzMTA3LG06MzcuNjAxfSwKCXt5OjM2LjAsbDoxLjAsczowLjAzMTAxLG06MzcuNjY5NH0sCgl7eTozNy4wLGw6MS4wLHM6MC4wMzA5NixtOjM3LjczNjh9LAoJe3k6MzguMCxsOjEuMCxzOjAuMDMwOTEsbTozNy44MDM0fSwKCXt5OjM5LjAsbDoxLjAsczowLjAzMDg2LG06MzcuODY5fSwKCXt5OjQwLjAsbDoxLjAsczowLjAzMDgxLG06MzcuOTMzOH0sCgl7eTo0MS4wLGw6MS4wLHM6MC4wMzA3NixtOjM3Ljk5Nzh9LAoJe3k6NDIuMCxsOjEuMCxzOjAuMDMwNzIsbTozOC4wNjA5fSwKCXt5OjQzLjAsbDoxLjAsczowLjAzMDY3LG06MzguMTIzM30sCgl7eTo0NC4wLGw6MS4wLHM6MC4wMzA2MixtOjM4LjE4NX0sCgl7eTo0NS4wLGw6MS4wLHM6MC4wMzA1OCxtOjM4LjI0NTl9LAoJe3k6NDYuMCxsOjEuMCxzOjAuMDMwNTQsbTozOC4zMDYxfSwKCXt5OjQ3LjAsbDoxLjAsczowLjAzMDQ5LG06MzguMzY1NX0sCgl7eTo0OC4wLGw6MS4wLHM6MC4wMzA0NSxtOjM4LjQyNDN9LAoJe3k6NDkuMCxsOjEuMCxzOjAuMDMwNDEsbTozOC40ODI0fSwKCXt5OjUwLjAsbDoxLjAsczowLjAzMDM3LG06MzguNTM5OX0sCgl7eTo1MS4wLGw6MS4wLHM6MC4wMzAzMyxtOjM4LjU5Njh9LAoJe3k6NTIuMCxsOjEuMCxzOjAuMDMwMjksbTozOC42NTN9LAoJe3k6NTMuMCxsOjEuMCxzOjAuMDMwMjUsbTozOC43MDg3fSwKCXt5OjU0LjAsbDoxLjAsczowLjAzMDIxLG06MzguNzYzOH0sCgl7eTo1NS4wLGw6MS4wLHM6MC4wMzAxOCxtOjM4LjgxODN9LAoJe3k6NTYuMCxsOjEuMCxzOjAuMDMwMTQsbTozOC44NzI0fSwKCXt5OjU3LjAsbDoxLjAsczowLjAzMDEsbTozOC45MjU4fSwKCXt5OjU4LjAsbDoxLjAsczowLjAzMDA3LG06MzguOTc4OH0sCgl7eTo1OS4wLGw6MS4wLHM6MC4wMzAwMyxtOjM5LjAzMTN9LAoJe3k6NjAuMCxsOjEuMCxzOjAuMDMsbTozOS4wODM0fSwKCXt5OjYzLjAsbDoxLjAsczowLjAyOTksbTozOS4yMzY4fSwKCXt5OjcwLjAsbDoxLjAsczowLjAyOTY5LG06MzkuNTc5N30sCgl7eTo3Ny4wLGw6MS4wLHM6MC4wMjk1LG06MzkuOTAzM30sCgl7eTo4NC4wLGw6MS4wLHM6MC4wMjkzMyxtOjQwLjIwOTZ9LAoJe3k6OTEuMCxsOjEuMCxzOjAuMDI5MTgsbTo0MC41MDA4fSwKCXt5Ojk4LjAsbDoxLjAsczowLjAyOTA1LG06NDAuNzc4NX0sCgl7eToxMDUuMCxsOjEuMCxzOjAuMDI4OTMsbTo0MS4wNDM2fSwKCXt5OjExMi4wLGw6MS4wLHM6MC4wMjg4MixtOjQxLjI5N30sCgl7eToxMTkuMCxsOjEuMCxzOjAuMDI4NzIsbTo0MS41Mzk0fSwKCXt5OjEyNi4wLGw6MS4wLHM6MC4wMjg2MyxtOjQxLjc3MTV9LAoJe3k6MTMzLjAsbDoxLjAsczowLjAyODU1LG06NDEuOTkzOX0sCgl7eToxNDAuMCxsOjEuMCxzOjAuMDI4NDgsbTo0Mi4yMDcxfSwKCXt5OjE0Ny4wLGw6MS4wLHM6MC4wMjg0MSxtOjQyLjQxMTV9LAoJe3k6MTU0LjAsbDoxLjAsczowLjAyODM1LG06NDIuNjA3Nn0sCgl7eToxNjEuMCxsOjEuMCxzOjAuMDI4MyxtOjQyLjc5NTd9LAoJe3k6MTY4LjAsbDoxLjAsczowLjAyODI1LG06NDIuOTc2Mn0sCgl7eToxNzUuMCxsOjEuMCxzOjAuMDI4MjEsbTo0My4xNDk1fSwKCXt5OjE4Mi4wLGw6MS4wLHM6MC4wMjgxNyxtOjQzLjMxNn0sCgl7eToxOTcuMCxsOjEuMCxzOjAuMDI4MSxtOjQzLjY1MTN9LAoJe3k6MjI3LjAsbDoxLjAsczowLjAyOCxtOjQ0LjI0MzJ9LAoJe3k6MjU3LjAsbDoxLjAsczowLjAyNzk0LG06NDQuNzQ3Mn0sCgl7eToyODcuMCxsOjEuMCxzOjAuMDI3OTEsbTo0NS4xODA5fSwKCXt5OjMxNy4wLGw6MS4wLHM6MC4wMjc4OSxtOjQ1LjU1NzF9LAoJe3k6MzQ3LjAsbDoxLjAsczowLjAyNzg4LG06NDUuODg1N30sCgl7eTozNzcuMCxsOjEuMCxzOjAuMDI3ODksbTo0Ni4xNzU0fSwKCXt5OjQwNy4wLGw6MS4wLHM6MC4wMjc5LG06NDYuNDMzNX0sCgl7eTo0MzcuMCxsOjEuMCxzOjAuMDI3OTEsbTo0Ni42NjZ9LAoJe3k6NDY3LjAsbDoxLjAsczowLjAyNzkzLG06NDYuODc3NX0sCgl7eTo0OTcuMCxsOjEuMCxzOjAuMDI3OTUsbTo0Ny4wNzE5fSwKCXt5OjUyNy4wLGw6MS4wLHM6MC4wMjc5OCxtOjQ3LjI1MjR9LAoJe3k6NTU3LjAsbDoxLjAsczowLjAyODAxLG06NDcuNDIxNX0sCgl7eTo1ODcuMCxsOjEuMCxzOjAuMDI4MDQsbTo0Ny41ODExfSwKCXt5OjYxNy4wLGw6MS4wLHM6MC4wMjgwNyxtOjQ3LjczMjl9LAoJe3k6NjQ3LjAsbDoxLjAsczowLjAyODExLG06NDcuODc3OX0sCgl7eTo2NzcuMCxsOjEuMCxzOjAuMDI4MTQsbTo0OC4wMTd9LAoJe3k6NzA3LjAsbDoxLjAsczowLjAyODE4LG06NDguMTUwNX0sCgl7eTo3MzcuMCxsOjEuMCxzOjAuMDI4MjIsbTo0OC4yNzg5fSwKCXt5Ojc2Ny4wLGw6MS4wLHM6MC4wMjgyNixtOjQ4LjQwMjN9LAoJe3k6Nzk3LjAsbDoxLjAsczowLjAyODMsbTo0OC41MjA3fSwKCXt5OjgyNy4wLGw6MS4wLHM6MC4wMjgzNSxtOjQ4LjYzNDR9LAoJe3k6ODU3LjAsbDoxLjAsczowLjAyODM5LG06NDguNzQzNH0sCgl7eTo4ODcuMCxsOjEuMCxzOjAuMDI4NDMsbTo0OC44NDc4fSwKCXt5OjkxNy4wLGw6MS4wLHM6MC4wMjg0NyxtOjQ4Ljk0Nzh9LAoJe3k6OTQ3LjAsbDoxLjAsczowLjAyODUxLG06NDkuMDQzNX0sCgl7eTo5NzcuMCxsOjEuMCxzOjAuMDI4NTUsbTo0OS4xMzV9LAoJe3k6MTAwNy4wLGw6MS4wLHM6MC4wMjg1OSxtOjQ5LjIyMjZ9LAoJe3k6MTAzNy4wLGw6MS4wLHM6MC4wMjg2MyxtOjQ5LjMwNjZ9LAoJe3k6MTA2Ny4wLGw6MS4wLHM6MC4wMjg2NyxtOjQ5LjM4NzF9LAoJe3k6MTA5Ny4wLGw6MS4wLHM6MC4wMjg3MSxtOjQ5LjQ2NDR9LAoJe3k6MTEyNy4wLGw6MS4wLHM6MC4wMjg3NSxtOjQ5LjUzODd9LAoJe3k6MTE1Ny4wLGw6MS4wLHM6MC4wMjg3OCxtOjQ5LjYxMDF9LAoJe3k6MTE4Ny4wLGw6MS4wLHM6MC4wMjg4MixtOjQ5LjY3OX0sCgl7eToxMjE3LjAsbDoxLjAsczowLjAyODg2LG06NDkuNzQ1NH0sCgl7eToxMjQ3LjAsbDoxLjAsczowLjAyODg5LG06NDkuODA5Nn0sCgl7eToxMjc3LjAsbDoxLjAsczowLjAyODkyLG06NDkuODcxN30sCgl7eToxMzA3LjAsbDoxLjAsczowLjAyODk2LG06NDkuOTMxOH0sCgl7eToxMzM3LjAsbDoxLjAsczowLjAyODk5LG06NDkuOTl9LAoJe3k6MTM2Ny4wLGw6MS4wLHM6MC4wMjkwMixtOjUwLjA0NjN9LAoJe3k6MTM5Ny4wLGw6MS4wLHM6MC4wMjkwNSxtOjUwLjEwMDh9LAoJe3k6MTQyNy4wLGw6MS4wLHM6MC4wMjkwOSxtOjUwLjE1MzZ9LAoJe3k6MTQ1Ny4wLGw6MS4wLHM6MC4wMjkxMixtOjUwLjIwNDh9LAoJe3k6MTQ4Ny4wLGw6MS4wLHM6MC4wMjkxNSxtOjUwLjI1NDV9LAoJe3k6MTUxNy4wLGw6MS4wLHM6MC4wMjkxOCxtOjUwLjMwMjh9LAoJe3k6MTU0Ny4wLGw6MS4wLHM6MC4wMjkyLG06NTAuMzQ5N30sCgl7eToxNTc3LjAsbDoxLjAsczowLjAyOTIzLG06NTAuMzk1M30sCgl7eToxNjA3LjAsbDoxLjAsczowLjAyOTI2LG06NTAuNDM5OH0sCgl7eToxNjM3LjAsbDoxLjAsczowLjAyOTI5LG06NTAuNDgzMn0sCgl7eToxNjY3LjAsbDoxLjAsczowLjAyOTMyLG06NTAuNTI1NX0sCgl7eToxNjk3LjAsbDoxLjAsczowLjAyOTM0LG06NTAuNTY3fSwKCXt5OjE3MjcuMCxsOjEuMCxzOjAuMDI5MzcsbTo1MC42MDc3fSwKCXt5OjE3NTcuMCxsOjEuMCxzOjAuMDI5NCxtOjUwLjY0NzZ9LAoJe3k6MTc4Ny4wLGw6MS4wLHM6MC4wMjk0MixtOjUwLjY4Njl9LAoJe3k6MTgxNy4wLGw6MS4wLHM6MC4wMjk0NSxtOjUwLjcyNTd9LAoJe3k6MTg0Ny4wLGw6MS4wLHM6MC4wMjk0NyxtOjUwLjc2Mzh9Cn0KCgoKCmRlZmluZSBmdW5jdGlvbiBac2NvcmVIZWFkQ2lyY3VtZmVyZW5jZUZvckFnZXRhYmxlcyhzZXggU3RyaW5nLCBhZ2UgRGVjaW1hbCk6CglpZiBzZXggPSAnZmVtYWxlJyB0aGVuICAKICAgICAgICBGaXJzdChIZWFkQ2lyY3VtZmVyZW5jZUZvckFnZUZlbWFsZSBjIHdoZXJlIGMueSA9IGJhc2UuQWdlVG9NaW5pKGFnZSkgKQoJZWxzZSAKICAgICAgICBGaXJzdChIZWFkQ2lyY3VtZmVyZW5jZUZvckFnZU1hbGUgYyB3aGVyZSAgYy55ID0gYmFzZS5BZ2VUb01pbmkoYWdlKSkKICAgICAgICAgICAgCmRlZmluZSBmdW5jdGlvbiBnZW5lcmF0ZVpTY29yZUhlYWRDaXJjdW1mZXJlbmNlRm9yQWdlKHNleCBTeXN0ZW0uU3RyaW5nLCBhZ2UgU3lzdGVtLkRlY2ltYWwsIHdlaWdodCAgU3lzdGVtLkRlY2ltYWwpICA6IAoJIGdlbmVyYXRlWlNjb3JlSGVhZENpcmN1bWZlcmVuY2VGb3JBZ2VkZXQoWnNjb3JlSGVhZENpcmN1bWZlcmVuY2VGb3JBZ2V0YWJsZXMoc2V4LGFnZSksIHdlaWdodCApCgpkZWZpbmUgZnVuY3Rpb24gZ2VuZXJhdGVaU2NvcmVIZWFkQ2lyY3VtZmVyZW5jZUZvckFnZWRldChyb3cgVHVwbGUge3kgU3lzdGVtLkRlY2ltYWwsbCBTeXN0ZW0uRGVjaW1hbCxzIFN5c3RlbS5EZWNpbWFsLG0gU3lzdGVtLkRlY2ltYWx9LCB3ZWlnaHQgIFN5c3RlbS5EZWNpbWFsKToKICAgIGlmIHJvdyBpcyBub3QgbnVsbCB0aGVuIAogICAgICAgIGJhc2UuY29tcHV0ZVpTY29yZSgKICAgICAgICAgICAgd2VpZ2h0LAogICAgICAgICAgICByb3cubSAsIAogICAgICAgICAgICByb3cubCAsCiAgICAgICAgICAgIHJvdy5zIAogICAgICAgICkKICAgIGVsc2UgbnVsbAoKCmRlZmluZSBmdW5jdGlvbiBnZW5lcmF0ZUhlYWRDaXJjdW1mZXJlbmNlRnJvbUFnZShzZXggU3lzdGVtLlN0cmluZywgYWdlIFN5c3RlbS5EZWNpbWFsLCB6c2NvcmUgIFN5c3RlbS5EZWNpbWFsKSA6IAoJIGdlbmVyYXRlSGVhZENpcmN1bWZlcmVuY2VGcm9tQWdlZGV0KFpzY29yZUhlYWRDaXJjdW1mZXJlbmNlRm9yQWdldGFibGVzKHNleCxhZ2UpLHpzY29yZSAgKQoKZGVmaW5lIGZ1bmN0aW9uIGdlbmVyYXRlSGVhZENpcmN1bWZlcmVuY2VGcm9tQWdlZGV0KHJvdyBUdXBsZSB7eSBTeXN0ZW0uRGVjaW1hbCxsIFN5c3RlbS5EZWNpbWFsLHMgU3lzdGVtLkRlY2ltYWwsbSBTeXN0ZW0uRGVjaW1hbH0senNjb3JlICBTeXN0ZW0uRGVjaW1hbCkgOiAKICAgIGlmIHJvdyBpcyBub3QgbnVsbCB0aGVuIAogICAgICAgIGJhc2UuY29tcHV0ZVJldmVyc2VaU2NvcmUoCiAgICAgICAgICAgIHpzY29yZSwKICAgICAgICAgICAgcm93Lm0gLCAKICAgICAgICAgICAgcm93LmwgLAogICAgICAgICAgICByb3cucyAKICAgICAgICApCiAgICBlbHNlIG51bGwgICAgCgogICAgCg=="^^xsd:base64Binary ]
  ] ) . #