WHO Antenatal Care Guideline Implementation Guide
0.3.0 - CI Build
WHO Antenatal Care Guideline Implementation Guide, published by World Health Organization (WHO). This guide is not an authorized publication; it is the continuous build for version 0.3.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/costateixeira/smart-anc/ and changes regularly. See the Directory of published versions
Active as of 2024-09-10 |
{
"resourceType" : "Library",
"id" : "ANCDT01",
"text" : {
"status" : "extensions",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n <table class=\"grid dict\">\n \n <tr>\n <th scope=\"row\"><b>Id: </b></th>\n <td style=\"padding-left: 4px;\">ANCDT01</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Url: </b></th>\n <td style=\"padding-left: 4px;\"><a href=\"Library-ANCDT01.html\">ANC.DT.01 Danger signs</a></td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Version: </b></th>\n <td style=\"padding-left: 4px;\">0.3.0</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Identifier: </b></th>\n <td style=\"padding-left: 4px;\">\n \n \n <p style=\"margin-bottom: 5px;\">\n <b>value: </b> <span>ANC.DT.01</span>\n </p>\n \n </td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Name: </b></th>\n <td style=\"padding-left: 4px;\">ANCDT01</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Title: </b></th>\n <td style=\"padding-left: 4px;\">ANC.DT.01 Danger signs</td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Status: </b></th>\n <td style=\"padding-left: 4px;\">active</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Experimental: </b></th>\n <td style=\"padding-left: 4px;\">false</td>\n </tr>\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://hl7.org/fhir/R4/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 <tr>\n <th scope=\"row\"><b>Date: </b></th>\n <td style=\"padding-left: 4px;\">2024-09-10 04:55:21+0000</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Publisher: </b></th>\n <td style=\"padding-left: 4px;\">World Health Organization (WHO)</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Description: </b></th>\n <td style=\"padding-left: 4px;\">Before each contact, during the Quick Check, the health worker should check whether the woman has any of the danger signs listed here – if yes, she should be referred to the hospital urgently; if no, the normal contact should be continued as normal</td>\n </tr>\n \n \n \n \n \n <tr>\n <th scope=\"row\"><b>Jurisdiction: </b></th>\n <td style=\"padding-left: 4px;\">001</td>\n </tr>\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=\"http://fhir.org/guides/cqf/common/4.0.1/4.0.1/Library-FHIR-ModelInfo.html\">http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1</a></li>\n \n <li><code>http://fhir.org/guides/who/anc-cds/Library/FHIRHelpers|4.0.1</code></li>\n \n <li><a href=\"Library-ANCConfig.html\">ANC Configuration</a></li>\n \n <li><a href=\"Library-ANCConcepts.html\">ANC Concepts</a></li>\n \n <li><a href=\"Library-ANCDataElements.html\">ANC Data Elements</a></li>\n \n <li><a href=\"Library-ANCContactDataElements.html\">ANC Contact Data Elements</a></li>\n \n <li><a href=\"Library-WHOCommon.html\">WHO Common</a></li>\n \n <li><a href=\"ValueSet-anc-b5-de48.html\">Danger signs</a></li>\n \n <li><a href=\"ValueSet-anc-b5-de49.html\">Danger Signs - No danger signs Choices</a></li>\n \n <li><a href=\"ValueSet-anc-b5-de51.html\">Danger Signs - Central cyanosis Choices</a></li>\n \n <li><a href=\"ValueSet-anc-b5-de50.html\">Danger signs Choices</a></li>\n \n </ul>\n \n \n \n \n \n </td>\n </tr>\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>encounter</th><th>string</th><th>0</th><th>1</th><th>In</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>Danger signs</th><th>CodeableConcept</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Should Proceed with ANC contact</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Should Proceed with ANC contact OR Referral for Central cyanosis</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Should Proceed with ANC contact OR Referral</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n </table>\n </td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Data Requirements:</b></th>\n <td style=\"padding-left: 4px;\">\n <table class=\"grid-dict\">\n <tr><th><b>Type</b></th><th><b>Profile</b></th><th><b>MS</b></th><th><b>Code Filter</b></th></tr>\n \n <tr>\n <th>Patient</th>\n <th>http://hl7.org/fhir/StructureDefinition/Patient</th>\n <th/>\n <th>\n \n </th>\n </tr>\n \n <tr>\n <th>Observation</th>\n <th>http://hl7.org/fhir/StructureDefinition/Observation</th>\n <th>;;;;;</th>\n <th>\n \n <b>code filter: </b>\n \n <br/>\n \n \n <span style=\"padding-left: 4px;\">\n <b>path: </b><span>code</span>\n </span>\n \n <br/>\n \n \n \n <span style=\"padding-left: 4px;\">\n <b>value set: </b><span>http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de48</span>\n </span>\n \n \n \n </th>\n </tr>\n \n </table>\n </td>\n </tr>\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\">library ANCDT01\r\n\r\nusing FHIR version '4.0.1'\r\n\r\ninclude FHIRHelpers version '4.0.1'\r\n\r\ninclude ANCConfig called Config\r\ninclude ANCConcepts called Cx\r\ninclude ANCDataElements called PatientData\r\ninclude ANCContactDataElements called ContactData\r\n\r\ncontext Patient\r\n\r\ndefine &quot;Danger signs&quot;:\r\n ContactData.&quot;Danger signs&quot;\r\n\r\n/*\r\n&quot;Danger signs&quot; = &quot;No danger signs&quot;\r\n*/\r\ndefine &quot;Should Proceed with ANC contact&quot;:\r\n ContactData.&quot;Danger signs&quot; in Cx.&quot;Danger Signs - No danger signs Choices&quot;\r\n\r\n/*\r\n&quot;Danger signs&quot; = &quot;Central cyanosis&quot;\r\n*/\r\ndefine &quot;Should Proceed with ANC contact OR Referral for Central cyanosis&quot;:\r\n ContactData.&quot;Danger signs&quot; in Cx.&quot;Danger Signs - Central cyanosis Choices&quot;\r\n\r\n/*\r\n(((((((((((&quot;Danger signs&quot; = &quot;Bleeding vaginally&quot;)\r\n OR (&quot;Danger signs&quot; = &quot;Convulsing&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Fever&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Severe headache&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Visual disturbance&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Imminent delivery&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Labour&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Looks very ill&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Severe vomiting&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Severe pain&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Severe abdominal pain&quot;))\r\n OR (&quot;Danger signs&quot; = &quot;Unconscious&quot;)\r\n*/\r\ndefine &quot;Should Proceed with ANC contact OR Referral&quot;:\r\n ContactData.&quot;Danger signs&quot; in Cx.&quot;Danger signs Choices&quot;\r\n</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n \n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><b>Content: </b> application/elm+xml</th></tr>\n <tr><td><pre><code>Encoded data (14700 characters)</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><b>Content: </b> application/elm+json</th></tr>\n <tr><td><pre><code>Encoded data (22940 characters)</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n </table>\n</div>"
},
"extension" : [
{
"url" : "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem",
"valueReference" : {
🔗 "reference" : "Device/cqf-tooling"
}
}
],
"url" : "http://fhir.org/guides/who/anc-cds/Library/ANCDT01",
"identifier" : [
{
"use" : "official",
"value" : "ANC.DT.01"
}
],
"version" : "0.3.0",
"name" : "ANCDT01",
"title" : "ANC.DT.01 Danger signs",
"status" : "active",
"experimental" : false,
"type" : {
"coding" : [
{
"system" : "http://terminology.hl7.org/CodeSystem/library-type",
"code" : "logic-library"
}
]
},
"date" : "2024-09-10T04:55:21+00:00",
"publisher" : "World Health Organization (WHO)",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "https://www.who.int"
}
]
}
],
"description" : "Before each contact, during the Quick Check, the health worker should check whether the woman has any of the danger signs listed here – if yes, she should be referred to the hospital urgently; if no, the normal contact should be continued as normal",
"jurisdiction" : [
{
"coding" : [
{
"system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code" : "001"
}
]
}
],
"relatedArtifact" : [
{
"type" : "depends-on",
"display" : "FHIR model information",
"resource" : "http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1"
},
{
"type" : "depends-on",
"display" : "Library FHIRHelpers",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/FHIRHelpers|4.0.1"
},
{
"type" : "depends-on",
"display" : "Library Config",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/ANCConfig"
},
{
"type" : "depends-on",
"display" : "Library Cx",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/ANCConcepts"
},
{
"type" : "depends-on",
"display" : "Library PatientData",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/ANCDataElements"
},
{
"type" : "depends-on",
"display" : "Library ContactData",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/ANCContactDataElements"
},
{
"type" : "depends-on",
"display" : "Library WC",
"resource" : "http://fhir.org/guides/who/anc-cds/Library/WHOCommon"
},
{
"type" : "depends-on",
"display" : "Value set Danger signs",
"resource" : "http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de48"
},
{
"type" : "depends-on",
"display" : "Value set Danger Signs - No danger signs Choices",
"resource" : "http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de49"
},
{
"type" : "depends-on",
"display" : "Value set Danger Signs - Central cyanosis Choices",
"resource" : "http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de51"
},
{
"type" : "depends-on",
"display" : "Value set Danger signs Choices",
"resource" : "http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de50"
}
],
"parameter" : [
{
"name" : "encounter",
"use" : "in",
"min" : 0,
"max" : "1",
"type" : "string"
},
{
"name" : "Patient",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Patient"
},
{
"name" : "Danger signs",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "CodeableConcept"
},
{
"name" : "Should Proceed with ANC contact",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Should Proceed with ANC contact OR Referral for Central cyanosis",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Should Proceed with ANC contact OR Referral",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
}
],
"dataRequirement" : [
{
"type" : "Patient",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Patient"
]
},
{
"type" : "Observation",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Observation"
],
"mustSupport" : [
"code",
"status",
"encounter",
"encounter.reference",
"value"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://fhir.org/guides/who/anc-cds/ValueSet/anc-b5-de48"
}
]
}
],
"content" : [
{
"contentType" : "text/cql",
"data" : "bGlicmFyeSBBTkNEVDAxDQoNCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnDQoNCmluY2x1ZGUgRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnDQoNCmluY2x1ZGUgQU5DQ29uZmlnIGNhbGxlZCBDb25maWcNCmluY2x1ZGUgQU5DQ29uY2VwdHMgY2FsbGVkIEN4DQppbmNsdWRlIEFOQ0RhdGFFbGVtZW50cyBjYWxsZWQgUGF0aWVudERhdGENCmluY2x1ZGUgQU5DQ29udGFjdERhdGFFbGVtZW50cyBjYWxsZWQgQ29udGFjdERhdGENCg0KY29udGV4dCBQYXRpZW50DQoNCmRlZmluZSAiRGFuZ2VyIHNpZ25zIjoNCiAgQ29udGFjdERhdGEuIkRhbmdlciBzaWducyINCg0KLyoNCiJEYW5nZXIgc2lnbnMiID0gIk5vIGRhbmdlciBzaWducyINCiovDQpkZWZpbmUgIlNob3VsZCBQcm9jZWVkIHdpdGggQU5DIGNvbnRhY3QiOg0KICBDb250YWN0RGF0YS4iRGFuZ2VyIHNpZ25zIiBpbiBDeC4iRGFuZ2VyIFNpZ25zIC0gTm8gZGFuZ2VyIHNpZ25zIENob2ljZXMiDQoNCi8qDQoiRGFuZ2VyIHNpZ25zIiA9ICJDZW50cmFsIGN5YW5vc2lzIg0KKi8NCmRlZmluZSAiU2hvdWxkIFByb2NlZWQgd2l0aCBBTkMgY29udGFjdCBPUiBSZWZlcnJhbCBmb3IgQ2VudHJhbCBjeWFub3NpcyI6DQogIENvbnRhY3REYXRhLiJEYW5nZXIgc2lnbnMiIGluIEN4LiJEYW5nZXIgU2lnbnMgLSBDZW50cmFsIGN5YW5vc2lzIENob2ljZXMiDQoNCi8qDQooKCgoKCgoKCgoKCJEYW5nZXIgc2lnbnMiID0gIkJsZWVkaW5nIHZhZ2luYWxseSIpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJDb252dWxzaW5nIikpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJGZXZlciIpKQ0KICBPUiAoIkRhbmdlciBzaWducyIgPSAiU2V2ZXJlIGhlYWRhY2hlIikpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJWaXN1YWwgZGlzdHVyYmFuY2UiKSkNCiAgT1IgKCJEYW5nZXIgc2lnbnMiID0gIkltbWluZW50IGRlbGl2ZXJ5IikpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJMYWJvdXIiKSkNCiAgT1IgKCJEYW5nZXIgc2lnbnMiID0gIkxvb2tzIHZlcnkgaWxsIikpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJTZXZlcmUgdm9taXRpbmciKSkNCiAgT1IgKCJEYW5nZXIgc2lnbnMiID0gIlNldmVyZSBwYWluIikpDQogIE9SICgiRGFuZ2VyIHNpZ25zIiA9ICJTZXZlcmUgYWJkb21pbmFsIHBhaW4iKSkNCiAgT1IgKCJEYW5nZXIgc2lnbnMiID0gIlVuY29uc2Npb3VzIikNCiovDQpkZWZpbmUgIlNob3VsZCBQcm9jZWVkIHdpdGggQU5DIGNvbnRhY3QgT1IgUmVmZXJyYWwiOg0KICBDb250YWN0RGF0YS4iRGFuZ2VyIHNpZ25zIiBpbiBDeC4iRGFuZ2VyIHNpZ25zIENob2ljZXMiDQo="
},
{
"contentType" : "application/elm+xml",
"data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxsaWJyYXJ5IHhtbG5zPSJ1cm46aGw3LW9yZzplbG06cjEiIHhtbG5zOnQ9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6Zmhpcj0iaHR0cDovL2hsNy5vcmcvZmhpciIgeG1sbnM6cWRtNDM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY0XzMiIHhtbG5zOnFkbTUzPSJ1cm46aGVhbHRoaXQtZ292OnFkbTp2NV8zIiB4bWxuczphPSJ1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjEiPg0KICAgPGFubm90YXRpb24gdHJhbnNsYXRvclZlcnNpb249IjIuNi4wIiB0cmFuc2xhdG9yT3B0aW9ucz0iRW5hYmxlQW5ub3RhdGlvbnMsRW5hYmxlTG9jYXRvcnMsRGlzYWJsZUxpc3REZW1vdGlvbixEaXNhYmxlTGlzdFByb21vdGlvbiIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1JbmZvIi8+DQogICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgIDxhOnMgcj0iMjciPg0KICAgICAgICAgPGE6cz5saWJyYXJ5IEFOQ0RUMDE8L2E6cz4NCiAgICAgIDwvYTpzPg0KICAgPC9hbm5vdGF0aW9uPg0KICAgPGlkZW50aWZpZXIgaWQ9IkFOQ0RUMDEiIHN5c3RlbT0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcyIvPg0KICAgPHNjaGVtYUlkZW50aWZpZXIgaWQ9InVybjpobDctb3JnOmVsbSIgdmVyc2lvbj0icjEiLz4NCiAgIDx1c2luZ3M+DQogICAgICA8ZGVmIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIvPg0KICAgICAgPGRlZiBsb2NhbElkPSIxIiBsb2NhdG9yPSIzOjEtMzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSIxIj4NCiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz5GSElSPC9hOnM+DQogICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICA8L2RlZj4NCiAgIDwvdXNpbmdzPg0KICAgPGluY2x1ZGVzPg0KICAgICAgPGRlZiBsb2NhbElkPSIyIiBsb2NhdG9yPSI1OjEtNTozNSIgbG9jYWxJZGVudGlmaWVyPSJGSElSSGVscGVycyIgcGF0aD0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcy9GSElSSGVscGVycyIgdmVyc2lvbj0iNC4wLjEiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjIiPg0KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUkhlbHBlcnM8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSIzIiBsb2NhdG9yPSI3OjEtNzozMSIgbG9jYWxJZGVudGlmaWVyPSJDb25maWciIHBhdGg9Imh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL2FuYy1jZHMvQU5DQ29uZmlnIj4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSIzIj4NCiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPkFOQ0NvbmZpZzwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29uZmlnPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSI0IiBsb2NhdG9yPSI4OjEtODoyOSIgbG9jYWxJZGVudGlmaWVyPSJDeCIgcGF0aD0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcy9BTkNDb25jZXB0cyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iNCI+DQogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz5BTkNDb25jZXB0czwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ3g8L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjUiIGxvY2F0b3I9Ijk6MS05OjQyIiBsb2NhbElkZW50aWZpZXI9IlBhdGllbnREYXRhIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9hbmMtY2RzL0FOQ0RhdGFFbGVtZW50cyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iNSI+DQogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz5BTkNEYXRhRWxlbWVudHM8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFBhdGllbnREYXRhPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSI2IiBsb2NhdG9yPSIxMDoxLTEwOjQ5IiBsb2NhbElkZW50aWZpZXI9IkNvbnRhY3REYXRhIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL3doby9hbmMtY2RzL0FOQ0NvbnRhY3REYXRhRWxlbWVudHMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjYiPg0KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnM+QU5DQ29udGFjdERhdGFFbGVtZW50czwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29udGFjdERhdGE8L2E6cz4NCiAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgPC9hbm5vdGF0aW9uPg0KICAgICAgPC9kZWY+DQogICA8L2luY2x1ZGVzPg0KICAgPHN0YXRlbWVudHM+DQogICAgICA8ZGVmIGxvY2F0b3I9IjEyOjEtMTI6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPg0KICAgICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iMTI6MS0xMjoxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjkiIGxvY2F0b3I9IjE0OjEtMTU6MjgiIG5hbWU9IkRhbmdlciBzaWducyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iOSI+DQogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDs6CiAgPC9hOnM+DQogICAgICAgICAgICAgICA8YTpzIHI9IjgiPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSI3Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29udGFjdERhdGE8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjgiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDs8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgIDwvYW5ub3RhdGlvbj4NCiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjgiIGxvY2F0b3I9IjE1OjMtMTU6MjgiIG5hbWU9IkRhbmdlciBzaWducyIgbGlicmFyeU5hbWU9IkNvbnRhY3REYXRhIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2FsSWQ9IjE1IiBsb2NhdG9yPSIyMDoxLTIxOjc1IiBuYW1lPSJTaG91bGQgUHJvY2VlZCB3aXRoIEFOQyBjb250YWN0IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4NCiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPg0KICAgICAgICAgICAgPGE6cyByPSIxNSI+DQogICAgICAgICAgICAgICA8YTpzPi8qCiZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O05vIGRhbmdlciBzaWducyZxdW90OwoqLwpkZWZpbmUgJnF1b3Q7U2hvdWxkIFByb2NlZWQgd2l0aCBBTkMgY29udGFjdCZxdW90OzoKICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnMgcj0iMTQiPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSIxMSI+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29udGFjdERhdGE8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjExIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGFuZ2VyIHNpZ25zJnF1b3Q7PC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz4gaW4gPC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjEzIj4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5DeDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYW5nZXIgU2lnbnMgLSBObyBkYW5nZXIgc2lnbnMgQ2hvaWNlcyZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIxNCIgbG9jYXRvcj0iMjE6My0yMTo3NSIgeHNpOnR5cGU9IkFueUluVmFsdWVTZXQiPg0KICAgICAgICAgICAgPGNvZGVzIHhzaTp0eXBlPSJRdWVyeSI+DQogICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJYIj4NCiAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjExIiBsb2NhdG9yPSIyMTozLTIxOjI4IiBuYW1lPSJEYW5nZXIgc2lnbnMiIGxpYnJhcnlOYW1lPSJDb250YWN0RGF0YSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgPHJldHVybiBkaXN0aW5jdD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJYIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4NCiAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgIDwvcmV0dXJuPg0KICAgICAgICAgICAgPC9jb2Rlcz4NCiAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIxMyIgbG9jYXRvcj0iMjE6MzMtMjE6NzUiIG5hbWU9IkRhbmdlciBTaWducyAtIE5vIGRhbmdlciBzaWducyBDaG9pY2VzIiBsaWJyYXJ5TmFtZT0iQ3giLz4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhbElkPSIyMSIgbG9jYXRvcj0iMjY6MS0yNzo3NiIgbmFtZT0iU2hvdWxkIFByb2NlZWQgd2l0aCBBTkMgY29udGFjdCBPUiBSZWZlcnJhbCBmb3IgQ2VudHJhbCBjeWFub3NpcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4NCiAgICAgICAgICAgIDxhOnMgcj0iMjEiPg0KICAgICAgICAgICAgICAgPGE6cz4vKgomcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDsgPSAmcXVvdDtDZW50cmFsIGN5YW5vc2lzJnF1b3Q7CiovCmRlZmluZSAmcXVvdDtTaG91bGQgUHJvY2VlZCB3aXRoIEFOQyBjb250YWN0IE9SIFJlZmVycmFsIGZvciBDZW50cmFsIGN5YW5vc2lzJnF1b3Q7OgogIDwvYTpzPg0KICAgICAgICAgICAgICAgPGE6cyByPSIyMCI+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjE3Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db250YWN0RGF0YTwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTciPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDs8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzPiBpbiA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTkiPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxOCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkN4PC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxOSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhbmdlciBTaWducyAtIENlbnRyYWwgY3lhbm9zaXMgQ2hvaWNlcyZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMCIgbG9jYXRvcj0iMjc6My0yNzo3NiIgeHNpOnR5cGU9IkFueUluVmFsdWVTZXQiPg0KICAgICAgICAgICAgPGNvZGVzIHhzaTp0eXBlPSJRdWVyeSI+DQogICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJYIj4NCiAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjE3IiBsb2NhdG9yPSIyNzozLTI3OjI4IiBuYW1lPSJEYW5nZXIgc2lnbnMiIGxpYnJhcnlOYW1lPSJDb250YWN0RGF0YSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgPHJldHVybiBkaXN0aW5jdD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJYIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4NCiAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgIDwvcmV0dXJuPg0KICAgICAgICAgICAgPC9jb2Rlcz4NCiAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIxOSIgbG9jYXRvcj0iMjc6MzMtMjc6NzYiIG5hbWU9IkRhbmdlciBTaWducyAtIENlbnRyYWwgY3lhbm9zaXMgQ2hvaWNlcyIgbGlicmFyeU5hbWU9IkN4Ii8+DQogICAgICAgICA8L2V4cHJlc3Npb24+DQogICAgICA8L2RlZj4NCiAgICAgIDxkZWYgbG9jYWxJZD0iMjciIGxvY2F0b3I9IjQzOjEtNDQ6NTciIG5hbWU9IlNob3VsZCBQcm9jZWVkIHdpdGggQU5DIGNvbnRhY3QgT1IgUmVmZXJyYWwiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+DQogICAgICAgICAgICA8YTpzIHI9IjI3Ij4NCiAgICAgICAgICAgICAgIDxhOnM+LyoKKCgoKCgoKCgoKCgmcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDsgPSAmcXVvdDtCbGVlZGluZyB2YWdpbmFsbHkmcXVvdDspCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O0NvbnZ1bHNpbmcmcXVvdDspKQogIE9SICgmcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDsgPSAmcXVvdDtGZXZlciZxdW90OykpCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O1NldmVyZSBoZWFkYWNoZSZxdW90OykpCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O1Zpc3VhbCBkaXN0dXJiYW5jZSZxdW90OykpCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O0ltbWluZW50IGRlbGl2ZXJ5JnF1b3Q7KSkKICBPUiAoJnF1b3Q7RGFuZ2VyIHNpZ25zJnF1b3Q7ID0gJnF1b3Q7TGFib3VyJnF1b3Q7KSkKICBPUiAoJnF1b3Q7RGFuZ2VyIHNpZ25zJnF1b3Q7ID0gJnF1b3Q7TG9va3MgdmVyeSBpbGwmcXVvdDspKQogIE9SICgmcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDsgPSAmcXVvdDtTZXZlcmUgdm9taXRpbmcmcXVvdDspKQogIE9SICgmcXVvdDtEYW5nZXIgc2lnbnMmcXVvdDsgPSAmcXVvdDtTZXZlcmUgcGFpbiZxdW90OykpCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O1NldmVyZSBhYmRvbWluYWwgcGFpbiZxdW90OykpCiAgT1IgKCZxdW90O0RhbmdlciBzaWducyZxdW90OyA9ICZxdW90O1VuY29uc2Npb3VzJnF1b3Q7KQoqLwpkZWZpbmUgJnF1b3Q7U2hvdWxkIFByb2NlZWQgd2l0aCBBTkMgY29udGFjdCBPUiBSZWZlcnJhbCZxdW90OzoKICA8L2E6cz4NCiAgICAgICAgICAgICAgIDxhOnMgcj0iMjYiPg0KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMyI+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29udGFjdERhdGE8L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RGFuZ2VyIHNpZ25zJnF1b3Q7PC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgICAgICAgPGE6cz4gaW4gPC9hOnM+DQogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5DeDwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4NCiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtEYW5nZXIgc2lnbnMgQ2hvaWNlcyZxdW90OzwvYTpzPg0KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICAgICAgICAgICA8L2E6cz4NCiAgICAgICAgICAgICAgIDwvYTpzPg0KICAgICAgICAgICAgPC9hOnM+DQogICAgICAgICA8L2Fubm90YXRpb24+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNiIgbG9jYXRvcj0iNDQ6My00NDo1NyIgeHNpOnR5cGU9IkFueUluVmFsdWVTZXQiPg0KICAgICAgICAgICAgPGNvZGVzIHhzaTp0eXBlPSJRdWVyeSI+DQogICAgICAgICAgICAgICA8c291cmNlIGFsaWFzPSJYIj4NCiAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzIiBsb2NhdG9yPSI0NDozLTQ0OjI4IiBuYW1lPSJEYW5nZXIgc2lnbnMiIGxpYnJhcnlOYW1lPSJDb250YWN0RGF0YSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgPHJldHVybiBkaXN0aW5jdD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJYIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4NCiAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgIDwvcmV0dXJuPg0KICAgICAgICAgICAgPC9jb2Rlcz4NCiAgICAgICAgICAgIDx2YWx1ZXNldCBsb2NhbElkPSIyNSIgbG9jYXRvcj0iNDQ6MzMtNDQ6NTciIG5hbWU9IkRhbmdlciBzaWducyBDaG9pY2VzIiBsaWJyYXJ5TmFtZT0iQ3giLz4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgIDwvZGVmPg0KICAgPC9zdGF0ZW1lbnRzPg0KPC9saWJyYXJ5Pg0K"
},
{
"contentType" : "application/elm+json",
"data" : "ew0KICAgImxpYnJhcnkiIDogew0KICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAidHJhbnNsYXRvclZlcnNpb24iIDogIjIuNi4wIiwNCiAgICAgICAgICJ0cmFuc2xhdG9yT3B0aW9ucyIgOiAiRW5hYmxlQW5ub3RhdGlvbnMsRW5hYmxlTG9jYXRvcnMsRGlzYWJsZUxpc3REZW1vdGlvbixEaXNhYmxlTGlzdFByb21vdGlvbiIsDQogICAgICAgICAidHlwZSIgOiAiQ3FsVG9FbG1JbmZvIg0KICAgICAgfSwgew0KICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLA0KICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgInIiIDogIjI3IiwNCiAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImxpYnJhcnkgQU5DRFQwMSIgXQ0KICAgICAgICAgICAgfSBdDQogICAgICAgICB9DQogICAgICB9IF0sDQogICAgICAiaWRlbnRpZmllciIgOiB7DQogICAgICAgICAiaWQiIDogIkFOQ0RUMDEiLA0KICAgICAgICAgInN5c3RlbSIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcyINCiAgICAgIH0sDQogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7DQogICAgICAgICAiaWQiIDogInVybjpobDctb3JnOmVsbSIsDQogICAgICAgICAidmVyc2lvbiIgOiAicjEiDQogICAgICB9LA0KICAgICAgInVzaW5ncyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiU3lzdGVtIiwNCiAgICAgICAgICAgICJ1cmkiIDogInVybjpobDctb3JnOmVsbS10eXBlczpyMSINCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxIiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzOjEtMzoyNiIsDQogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSIiwNCiAgICAgICAgICAgICJ1cmkiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIiLA0KICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwNCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLA0KICAgICAgICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgICAgICAgInIiIDogIjEiLA0KICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwidXNpbmcgIiBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJGSElSIiBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInNC4wLjEnIiBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gXQ0KICAgICAgICAgfSBdDQogICAgICB9LA0KICAgICAgImluY2x1ZGVzIiA6IHsNCiAgICAgICAgICJkZWYiIDogWyB7DQogICAgICAgICAgICAibG9jYWxJZCIgOiAiMiIsDQogICAgICAgICAgICAibG9jYXRvciIgOiAiNToxLTU6MzUiLA0KICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL2FuYy1jZHMvRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwNCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLA0KICAgICAgICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgICAgICAgInIiIDogIjIiLA0KICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkZISVJIZWxwZXJzIiBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInNC4wLjEnIiBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gXQ0KICAgICAgICAgfSwgew0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjMiLA0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjc6MS03OjMxIiwNCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkNvbmZpZyIsDQogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcy9BTkNDb25maWciLA0KICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsDQogICAgICAgICAgICAgICAicyIgOiB7DQogICAgICAgICAgICAgICAgICAiciIgOiAiMyIsDQogICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQU5DQ29uZmlnIiBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgY2FsbGVkICIsIkNvbmZpZyIgXQ0KICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9IF0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICI0IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4OjEtODoyOSIsDQogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJDeCIsDQogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcy9BTkNDb25jZXB0cyIsDQogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwNCiAgICAgICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICAgICAgICJyIiA6ICI0IiwNCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJBTkNDb25jZXB0cyIgXQ0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIGNhbGxlZCAiLCJDeCIgXQ0KICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9IF0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICI1IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5OjEtOTo0MiIsDQogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJQYXRpZW50RGF0YSIsDQogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy93aG8vYW5jLWNkcy9BTkNEYXRhRWxlbWVudHMiLA0KICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsDQogICAgICAgICAgICAgICAicyIgOiB7DQogICAgICAgICAgICAgICAgICAiciIgOiAiNSIsDQogICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQU5DRGF0YUVsZW1lbnRzIiBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgY2FsbGVkICIsIlBhdGllbnREYXRhIiBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gXQ0KICAgICAgICAgfSwgew0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjYiLA0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwOjEtMTA6NDkiLA0KICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiQ29udGFjdERhdGEiLA0KICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvd2hvL2FuYy1jZHMvQU5DQ29udGFjdERhdGFFbGVtZW50cyIsDQogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwNCiAgICAgICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICAgICAgICJyIiA6ICI2IiwNCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImluY2x1ZGUgIiBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJBTkNDb250YWN0RGF0YUVsZW1lbnRzIiBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgY2FsbGVkICIsIkNvbnRhY3REYXRhIiBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gXQ0KICAgICAgICAgfSBdDQogICAgICB9LA0KICAgICAgInN0YXRlbWVudHMiIDogew0KICAgICAgICAgImRlZiIgOiBbIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMjoxLTEyOjE1IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJTaW5nbGV0b25Gcm9tIiwNCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMjoxLTEyOjE1IiwNCiAgICAgICAgICAgICAgICAgICJkYXRhVHlwZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9UGF0aWVudCIsDQogICAgICAgICAgICAgICAgICAidGVtcGxhdGVJZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlJldHJpZXZlIg0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgfSwgew0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjkiLA0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjE0OjEtMTU6MjgiLA0KICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBzaWducyIsDQogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsDQogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwNCiAgICAgICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICAgICAgICJyIiA6ICI5IiwNCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIkRhbmdlciBzaWduc1wiIiwiOlxuICAiIF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI4IiwNCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29udGFjdERhdGEiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiRGFuZ2VyIHNpZ25zXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI4IiwNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxNTozLTE1OjI4IiwNCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJEYW5nZXIgc2lnbnMiLA0KICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJDb250YWN0RGF0YSIsDQogICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiINCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxNSIsDQogICAgICAgICAgICAibG9jYXRvciIgOiAiMjA6MS0yMTo3NSIsDQogICAgICAgICAgICAibmFtZSIgOiAiU2hvdWxkIFByb2NlZWQgd2l0aCBBTkMgY29udGFjdCIsDQogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsDQogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwNCiAgICAgICAgICAgICAgICJzIiA6IHsNCiAgICAgICAgICAgICAgICAgICJyIiA6ICIxNSIsDQogICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIvKlxuXCJEYW5nZXIgc2lnbnNcIiA9IFwiTm8gZGFuZ2VyIHNpZ25zXCJcbiovXG4iLCJkZWZpbmUgIiwiXCJTaG91bGQgUHJvY2VlZCB3aXRoIEFOQyBjb250YWN0XCIiLCI6XG4gICIgXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE0IiwNCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjExIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjEwIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbnRhY3REYXRhIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJEYW5nZXIgc2lnbnNcIiIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgaW4gIiBdDQogICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ3giIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxMyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkRhbmdlciBTaWducyAtIE5vIGRhbmdlciBzaWducyBDaG9pY2VzXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjE0IiwNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyMTozLTIxOjc1IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbnlJblZhbHVlU2V0IiwNCiAgICAgICAgICAgICAgICJjb2RlcyIgOiB7DQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiWCIsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjIxOjMtMjE6MjgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBzaWducyIsDQogICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbnRhY3REYXRhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgInJldHVybiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAiZGlzdGluY3QiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9Db25jZXB0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFsaWFzUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgInZhbHVlc2V0IiA6IHsNCiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMyIsDQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjE6MzMtMjE6NzUiLA0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBTaWducyAtIE5vIGRhbmdlciBzaWducyBDaG9pY2VzIiwNCiAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ3giDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYWxJZCIgOiAiMjEiLA0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjI2OjEtMjc6NzYiLA0KICAgICAgICAgICAgIm5hbWUiIDogIlNob3VsZCBQcm9jZWVkIHdpdGggQU5DIGNvbnRhY3QgT1IgUmVmZXJyYWwgZm9yIENlbnRyYWwgY3lhbm9zaXMiLA0KICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLA0KICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLA0KICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsDQogICAgICAgICAgICAgICAicyIgOiB7DQogICAgICAgICAgICAgICAgICAiciIgOiAiMjEiLA0KICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLypcblwiRGFuZ2VyIHNpZ25zXCIgPSBcIkNlbnRyYWwgY3lhbm9zaXNcIlxuKi9cbiIsImRlZmluZSAiLCJcIlNob3VsZCBQcm9jZWVkIHdpdGggQU5DIGNvbnRhY3QgT1IgUmVmZXJyYWwgZm9yIENlbnRyYWwgY3lhbm9zaXNcIiIsIjpcbiAgIiBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjAiLA0KICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29udGFjdERhdGEiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkRhbmdlciBzaWduc1wiIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiBpbiAiIF0NCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxOSIsDQogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxOCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJDeCIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE5IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiRGFuZ2VyIFNpZ25zIC0gQ2VudHJhbCBjeWFub3NpcyBDaG9pY2VzXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIwIiwNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIyNzozLTI3Ojc2IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbnlJblZhbHVlU2V0IiwNCiAgICAgICAgICAgICAgICJjb2RlcyIgOiB7DQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiWCIsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTciLA0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjI3OjMtMjc6MjgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBzaWducyIsDQogICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbnRhY3REYXRhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgInJldHVybiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAiZGlzdGluY3QiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9Db25jZXB0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFsaWFzUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgInZhbHVlc2V0IiA6IHsNCiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxOSIsDQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMjc6MzMtMjc6NzYiLA0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBTaWducyAtIENlbnRyYWwgY3lhbm9zaXMgQ2hvaWNlcyIsDQogICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkN4Ig0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgfSwgew0KICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3IiwNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI0MzoxLTQ0OjU3IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJTaG91bGQgUHJvY2VlZCB3aXRoIEFOQyBjb250YWN0IE9SIFJlZmVycmFsIiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgew0KICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLA0KICAgICAgICAgICAgICAgInMiIDogew0KICAgICAgICAgICAgICAgICAgInIiIDogIjI3IiwNCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8qXG4oKCgoKCgoKCgoKFwiRGFuZ2VyIHNpZ25zXCIgPSBcIkJsZWVkaW5nIHZhZ2luYWxseVwiKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiQ29udnVsc2luZ1wiKSlcbiAgT1IgKFwiRGFuZ2VyIHNpZ25zXCIgPSBcIkZldmVyXCIpKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiU2V2ZXJlIGhlYWRhY2hlXCIpKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiVmlzdWFsIGRpc3R1cmJhbmNlXCIpKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiSW1taW5lbnQgZGVsaXZlcnlcIikpXG4gIE9SIChcIkRhbmdlciBzaWduc1wiID0gXCJMYWJvdXJcIikpXG4gIE9SIChcIkRhbmdlciBzaWduc1wiID0gXCJMb29rcyB2ZXJ5IGlsbFwiKSlcbiAgT1IgKFwiRGFuZ2VyIHNpZ25zXCIgPSBcIlNldmVyZSB2b21pdGluZ1wiKSlcbiAgT1IgKFwiRGFuZ2VyIHNpZ25zXCIgPSBcIlNldmVyZSBwYWluXCIpKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiU2V2ZXJlIGFiZG9taW5hbCBwYWluXCIpKVxuICBPUiAoXCJEYW5nZXIgc2lnbnNcIiA9IFwiVW5jb25zY2lvdXNcIilcbiovXG4iLCJkZWZpbmUgIiwiXCJTaG91bGQgUHJvY2VlZCB3aXRoIEFOQyBjb250YWN0IE9SIFJlZmVycmFsXCIiLCI6XG4gICIgXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI2IiwNCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIyIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbnRhY3REYXRhIiBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJEYW5nZXIgc2lnbnNcIiIgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgaW4gIiBdDQogICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ3giIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkRhbmdlciBzaWducyBDaG9pY2VzXCIiIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI2IiwNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI0NDozLTQ0OjU3IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbnlJblZhbHVlU2V0IiwNCiAgICAgICAgICAgICAgICJjb2RlcyIgOiB7DQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiWCIsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjQ0OjMtNDQ6MjgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBzaWducyIsDQogICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkNvbnRhY3REYXRhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgInJldHVybiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAiZGlzdGluY3QiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9Db25jZXB0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFsaWFzUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgInZhbHVlc2V0IiA6IHsNCiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNSIsDQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNDQ6MzMtNDQ6NTciLA0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkRhbmdlciBzaWducyBDaG9pY2VzIiwNCiAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ3giDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICB9IF0NCiAgICAgIH0NCiAgIH0NCn0="
}
]
}