WHO Immunization Implementation Guide
0.2.0 - ci-build

WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.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/123/merge and changes regularly. See the Directory of published versions

: IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic - JSON Representation

Draft as of 2026-03-03

Raw json | Download

{
  "resourceType" : "Library",
  "id" : "IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic",
  "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;\">IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">0.2.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-IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic.html\">IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic</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.0.1/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-03 13:07:11+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 decision support logic for the IMMZ.D2.DT.Meningococcal.MenA conjugate vaccine 1 dose decision table in 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-IMMZD2DTMeningococcalEncounterElements.html\">IMMZD2DTMeningococcalEncounterElements</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>Today</th><th>date</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>Client is not due for meningococcal vaccination</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client is not due for meningococcal vaccination Guidance</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client is due for meningococcal vaccination</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Client is due for meningococcal vaccination Guidance</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Meningococcal immunization schedule is complete</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Meningococcal immunization schedule is complete Guidance</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Guidance</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Has Guidance</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n              \n                <tr><th>Test Validation</th><th>Resource</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 * Library: IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic (IMMZ.D2.DT.Meningococcal.MenA conjugate vaccine 1 dose)\n * Rule: Determine if the client is due for a meningococcal vaccination according to the national immunization schedule\n * Decision Table: MenA conjugate vaccine, 1-dose schedule\n * Trigger: IMMZ.D2 Determine required vaccination(s) if any\n */\nlibrary IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic\n\nusing FHIR version '4.0.1'\ninclude FHIRHelpers version '4.0.1'\n\ninclude IMMZD2DTMeningococcalEncounterElements called Encounter\n\nparameter Today Date default Today()\n\ncontext Patient\n\n\n/*\n@dynamicValue: Guidance\n*/\ndefine &quot;Guidance&quot;:\n  case \n    when &quot;Client is not due for meningococcal vaccination&quot; then &quot;Client is not due for meningococcal vaccination Guidance&quot;\n    when &quot;Client is due for meningococcal vaccination&quot; then &quot;Client is due for meningococcal vaccination Guidance&quot;\n    when &quot;Meningococcal immunization schedule is complete&quot; then &quot;Meningococcal immunization schedule is complete Guidance&quot; \n    else ''\n  end\n  \ndefine &quot;Has Guidance&quot;:\n  &quot;Guidance&quot; is not null and &quot;Guidance&quot; != ''\n\n/*\n@output: Client is not due for meningococcal vaccination\n@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Not due&quot;\n*/\ndefine &quot;Client is not due for meningococcal vaccination&quot;:\n  Encounter.&quot;Client's age is less than 9 months&quot;\n\n/*\n@output: Client is not due for meningococcal vaccination Guidance\n@guidance: Should not vaccinate client with meningococcal dose as client's age is under 9 months. \nCheck for any other vaccines due and inform the caregiver of when to come back for the first dose.\n*/\ndefine &quot;Client is not due for meningococcal vaccination Guidance&quot;:\n  'Should not vaccinate client with meningococcal dose as client\\'s age is under 9 months. \nCheck for any other vaccines due and inform the caregiver of when to come back for the first dose.'\n\n/*\n@output: Client is due for meningococcal vaccination\n@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot;\n*/\ndefine &quot;Client is due for meningococcal vaccination&quot;:\n  Encounter.&quot;No meningococcal primary series dose was administered&quot;\n    and Encounter.&quot;Client's age is more than 9 months&quot;\n\n/*\n@output: Client is due for meningococcal vaccination Guidance\n@guidance: Should vaccinate client with meningococcal dose as no meningococcal dose was administered and client is within appropriate age range. \nCheck for contraindications.\n*/\ndefine &quot;Client is due for meningococcal vaccination Guidance&quot;:\n  'Should vaccinate client with meningococcal dose as no meningococcal dose was administered and client is within appropriate age range. \nCheck for contraindications.'\n\n/*\n@output: Meningococcal immunization schedule is complete\n@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Complete&quot;\n&quot;Completed the primary vaccination series&quot; (where &quot;Vaccine type&quot; = &quot;Meningococcal vaccines&quot;) = TRUE\n*/\ndefine &quot;Meningococcal immunization schedule is complete&quot;:\n  Encounter.&quot;One meningococcal primary series dose was administered&quot;\n\n/*\n@output: Meningococcal immunization schedule is complete Guidance\n@guidance: Meningococcal immunization schedule is complete. One meningococcal primary series dose was administered. \nCheck for any other vaccines due.\n*/\ndefine &quot;Meningococcal immunization schedule is complete Guidance&quot;:\n  'Meningococcal immunization schedule is complete. One meningococcal primary series dose was administered. \nCheck for any other vaccines due.'\n\n\n/*\n@test: Test expected results based on example patients\n*/\ndefine &quot;Test Validation&quot;:\n  case\n    when Patient.id = 'Meningococcal08.1' then &quot;Client is not due for meningococcal vaccination&quot; and &quot;Guidance&quot; = 'Should not vaccinate client with meningococcal dose as client\\'s age is under 9 months. \nCheck for any other vaccines due and inform the caregiver of when to come back for the first dose.'\n    when Patient.id = 'Meningococcal09.2' then &quot;Client is due for meningococcal vaccination&quot; and &quot;Guidance&quot; = 'Should vaccinate client with meningococcal dose as no meningococcal dose was administered and client is within appropriate age range. \nCheck for contraindications.'\n    when Patient.id = 'Meningococcal10.1' then &quot;Meningococcal immunization schedule is complete&quot; and &quot;Guidance&quot; = 'Meningococcal immunization schedule is complete. One meningococcal primary series dose was administered. \nCheck for any other vaccines due.'\n    else 'No test case set'\n  end\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 (41744 characters)</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\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/IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic",
  "version" : "0.2.0",
  "name" : "IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic",
  "title" : "IMMZD2DTMeningococcalMenAConjugateVaccine1DoseLogic",
  "status" : "draft",
  "experimental" : false,
  "type" : {
    "coding" : [
      {
        "system" : "http://terminology.hl7.org/CodeSystem/library-type",
        "code" : "logic-library"
      }
    ]
  },
  "date" : "2026-03-03T13:07:11+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "description" : "This library defines decision support logic for the IMMZ.D2.DT.Meningococcal.MenA conjugate vaccine 1 dose decision table in the Immunization CPG",
  "relatedArtifact" : [
    {
      "type" : "depends-on",
      "display" : "Library Encounter",
      "resource" : "http://smart.who.int/immunizations/Library/IMMZD2DTMeningococcalEncounterElements"
    }
  ],
  "parameter" : [
    {
      "name" : "Today",
      "use" : "in",
      "min" : 0,
      "max" : "1",
      "type" : "date"
    },
    {
      "name" : "Patient",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Patient"
    },
    {
      "name" : "Client is not due for meningococcal vaccination",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client is not due for meningococcal vaccination Guidance",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Client is due for meningococcal vaccination",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Client is due for meningococcal vaccination Guidance",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Meningococcal immunization schedule is complete",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Meningococcal immunization schedule is complete Guidance",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Guidance",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "string"
    },
    {
      "name" : "Has Guidance",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "boolean"
    },
    {
      "name" : "Test Validation",
      "use" : "out",
      "min" : 0,
      "max" : "1",
      "type" : "Resource"
    }
  ],
  "content" : [
    {
      "contentType" : "text/cql",
      "data" : "LyoKICogTGlicmFyeTogSU1NWkQyRFRNZW5pbmdvY29jY2FsTWVuQUNvbmp1Z2F0ZVZhY2NpbmUxRG9zZUxvZ2ljIChJTU1aLkQyLkRULk1lbmluZ29jb2NjYWwuTWVuQSBjb25qdWdhdGUgdmFjY2luZSAxIGRvc2UpCiAqIFJ1bGU6IERldGVybWluZSBpZiB0aGUgY2xpZW50IGlzIGR1ZSBmb3IgYSBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIGFjY29yZGluZyB0byB0aGUgbmF0aW9uYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlCiAqIERlY2lzaW9uIFRhYmxlOiBNZW5BIGNvbmp1Z2F0ZSB2YWNjaW5lLCAxLWRvc2Ugc2NoZWR1bGUKICogVHJpZ2dlcjogSU1NWi5EMiBEZXRlcm1pbmUgcmVxdWlyZWQgdmFjY2luYXRpb24ocykgaWYgYW55CiAqLwpsaWJyYXJ5IElNTVpEMkRUTWVuaW5nb2NvY2NhbE1lbkFDb25qdWdhdGVWYWNjaW5lMURvc2VMb2dpYwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgSU1NWkQyRFRNZW5pbmdvY29jY2FsRW5jb3VudGVyRWxlbWVudHMgY2FsbGVkIEVuY291bnRlcgoKcGFyYW1ldGVyIFRvZGF5IERhdGUgZGVmYXVsdCBUb2RheSgpCgpjb250ZXh0IFBhdGllbnQKCgovKgpAZHluYW1pY1ZhbHVlOiBHdWlkYW5jZQoqLwpkZWZpbmUgIkd1aWRhbmNlIjoKICBjYXNlIAogICAgd2hlbiAiQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24iIHRoZW4gIkNsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlIgogICAgd2hlbiAiQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiIgdGhlbiAiQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiBHdWlkYW5jZSIKICAgIHdoZW4gIk1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlIiB0aGVuICJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZSIgCiAgICBlbHNlICcnCiAgZW5kCiAgCmRlZmluZSAiSGFzIEd1aWRhbmNlIjoKICAiR3VpZGFuY2UiIGlzIG5vdCBudWxsIGFuZCAiR3VpZGFuY2UiICE9ICcnCgovKgpAb3V0cHV0OiBDbGllbnQgaXMgbm90IGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbgpAcHNldWRvY29kZTogIkltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMiID0gIk5vdCBkdWUiCiovCmRlZmluZSAiQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24iOgogIEVuY291bnRlci4iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyIKCi8qCkBvdXRwdXQ6IENsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlCkBndWlkYW5jZTogU2hvdWxkIG5vdCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIGNsaWVudCdzIGFnZSBpcyB1bmRlciA5IG1vbnRocy4gCkNoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlIGFuZCBpbmZvcm0gdGhlIGNhcmVnaXZlciBvZiB3aGVuIHRvIGNvbWUgYmFjayBmb3IgdGhlIGZpcnN0IGRvc2UuCiovCmRlZmluZSAiQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UiOgogICdTaG91bGQgbm90IHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgY2xpZW50XCdzIGFnZSBpcyB1bmRlciA5IG1vbnRocy4gCkNoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlIGFuZCBpbmZvcm0gdGhlIGNhcmVnaXZlciBvZiB3aGVuIHRvIGNvbWUgYmFjayBmb3IgdGhlIGZpcnN0IGRvc2UuJwoKLyoKQG91dHB1dDogQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbgpAcHNldWRvY29kZTogIkltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMiID0gIkR1ZSIKKi8KZGVmaW5lICJDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIjoKICBFbmNvdW50ZXIuIk5vIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIgogICAgYW5kIEVuY291bnRlci4iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA5IG1vbnRocyIKCi8qCkBvdXRwdXQ6IENsaWVudCBpcyBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UKQGd1aWRhbmNlOiBTaG91bGQgdmFjY2luYXRlIGNsaWVudCB3aXRoIG1lbmluZ29jb2NjYWwgZG9zZSBhcyBubyBtZW5pbmdvY29jY2FsIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50IGlzIHdpdGhpbiBhcHByb3ByaWF0ZSBhZ2UgcmFuZ2UuIApDaGVjayBmb3IgY29udHJhaW5kaWNhdGlvbnMuCiovCmRlZmluZSAiQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiBHdWlkYW5jZSI6CiAgJ1Nob3VsZCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIG5vIG1lbmluZ29jb2NjYWwgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGFuZCBjbGllbnQgaXMgd2l0aGluIGFwcHJvcHJpYXRlIGFnZSByYW5nZS4gCkNoZWNrIGZvciBjb250cmFpbmRpY2F0aW9ucy4nCgovKgpAb3V0cHV0OiBNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZQpAcHNldWRvY29kZTogIkltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMiID0gIkNvbXBsZXRlIgoiQ29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIk1lbmluZ29jb2NjYWwgdmFjY2luZXMiKSA9IFRSVUUKKi8KZGVmaW5lICJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSI6CiAgRW5jb3VudGVyLiJPbmUgbWVuaW5nb2NvY2NhbCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiCgovKgpAb3V0cHV0OiBNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZQpAZ3VpZGFuY2U6IE1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlLiBPbmUgbWVuaW5nb2NvY2NhbCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIApDaGVjayBmb3IgYW55IG90aGVyIHZhY2NpbmVzIGR1ZS4KKi8KZGVmaW5lICJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZSI6CiAgJ01lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlLiBPbmUgbWVuaW5nb2NvY2NhbCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuIApDaGVjayBmb3IgYW55IG90aGVyIHZhY2NpbmVzIGR1ZS4nCgoKLyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAiVGVzdCBWYWxpZGF0aW9uIjoKICBjYXNlCiAgICB3aGVuIFBhdGllbnQuaWQgPSAnTWVuaW5nb2NvY2NhbDA4LjEnIHRoZW4gIkNsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIiBhbmQgIkd1aWRhbmNlIiA9ICdTaG91bGQgbm90IHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgY2xpZW50XCdzIGFnZSBpcyB1bmRlciA5IG1vbnRocy4gCkNoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlIGFuZCBpbmZvcm0gdGhlIGNhcmVnaXZlciBvZiB3aGVuIHRvIGNvbWUgYmFjayBmb3IgdGhlIGZpcnN0IGRvc2UuJwogICAgd2hlbiBQYXRpZW50LmlkID0gJ01lbmluZ29jb2NjYWwwOS4yJyB0aGVuICJDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIiBhbmQgIkd1aWRhbmNlIiA9ICdTaG91bGQgdmFjY2luYXRlIGNsaWVudCB3aXRoIG1lbmluZ29jb2NjYWwgZG9zZSBhcyBubyBtZW5pbmdvY29jY2FsIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50IGlzIHdpdGhpbiBhcHByb3ByaWF0ZSBhZ2UgcmFuZ2UuIApDaGVjayBmb3IgY29udHJhaW5kaWNhdGlvbnMuJwogICAgd2hlbiBQYXRpZW50LmlkID0gJ01lbmluZ29jb2NjYWwxMC4xJyB0aGVuICJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSIgYW5kICJHdWlkYW5jZSIgPSAnTWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUuIE9uZSBtZW5pbmdvY29jY2FsIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC4gCkNoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlLicKICAgIGVsc2UgJ05vIHRlc3QgY2FzZSBzZXQnCiAgZW5kCg=="
    },
    {
      "contentType" : "application/elm+xml",
      "data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMjg2Ij4KICAgICAgICAgPGE6cz4vKgogKiBMaWJyYXJ5OiBJTU1aRDJEVE1lbmluZ29jb2NjYWxNZW5BQ29uanVnYXRlVmFjY2luZTFEb3NlTG9naWMgKElNTVouRDIuRFQuTWVuaW5nb2NvY2NhbC5NZW5BIGNvbmp1Z2F0ZSB2YWNjaW5lIDEgZG9zZSkKICogUnVsZTogRGV0ZXJtaW5lIGlmIHRoZSBjbGllbnQgaXMgZHVlIGZvciBhIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gYWNjb3JkaW5nIHRvIHRoZSBuYXRpb25hbCBpbW11bml6YXRpb24gc2NoZWR1bGUKICogRGVjaXNpb24gVGFibGU6IE1lbkEgY29uanVnYXRlIHZhY2NpbmUsIDEtZG9zZSBzY2hlZHVsZQogKiBUcmlnZ2VyOiBJTU1aLkQyIERldGVybWluZSByZXF1aXJlZCB2YWNjaW5hdGlvbihzKSBpZiBhbnkKICovCmxpYnJhcnkgSU1NWkQyRFRNZW5pbmdvY29jY2FsTWVuQUNvbmp1Z2F0ZVZhY2NpbmUxRG9zZUxvZ2ljPC9hOnM+CiAgICAgIDwvYTpzPgogICA8L2Fubm90YXRpb24+CiAgIDxpZGVudGlmaWVyIGlkPSJJTU1aRDJEVE1lbmluZ29jb2NjYWxNZW5BQ29uanVnYXRlVmFjY2luZTFEb3NlTG9naWMiIHN5c3RlbT0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucyIvPgogICA8c2NoZW1hSWRlbnRpZmllciBpZD0idXJuOmhsNy1vcmc6ZWxtIiB2ZXJzaW9uPSJyMSIvPgogICA8dXNpbmdzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjEiIGxvY2FsSWRlbnRpZmllcj0iU3lzdGVtIiB1cmk9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIgdmVyc2lvbj0iMS4wLjAiLz4KICAgICAgPGRlZiBsb2NhbElkPSIyMDYiIGxvY2F0b3I9Ijk6MS05OjI2IiBsb2NhbElkZW50aWZpZXI9IkZISVIiIHVyaT0iaHR0cDovL2hsNy5vcmcvZmhpciIgdmVyc2lvbj0iNC4wLjEiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMDYiPgogICAgICAgICAgICAgICA8YTpzPnVzaW5nIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzQuMC4xJzwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC91c2luZ3M+CiAgIDxpbmNsdWRlcz4KICAgICAgPGRlZiBsb2NhbElkPSIyMDgiIGxvY2F0b3I9IjEwOjEtMTA6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA4Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEwIiBsb2NhdG9yPSIxMjoxLTEyOjYzIiBsb2NhbElkZW50aWZpZXI9IkVuY291bnRlciIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aRDJEVE1lbmluZ29jb2NjYWxFbmNvdW50ZXJFbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aRDJEVE1lbmluZ29jb2NjYWxFbmNvdW50ZXJFbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIEVuY291bnRlcjwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPHBhcmFtZXRlcnM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEyIiBsb2NhdG9yPSIxNDoxLTE0OjM2IiBuYW1lPSJUb2RheSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxMiI+CiAgICAgICAgICAgICAgIDxhOnM+cGFyYW1ldGVyIFRvZGF5IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIxNiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+RGF0ZTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gZGVmYXVsdCA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMTUiPgogICAgICAgICAgICAgICAgICA8YTpzPlRvZGF5KCk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxkZWZhdWx0IGxvY2FsSWQ9IjIxNSIgbG9jYXRvcj0iMTQ6MzAtMTQ6MzYiIHhzaTp0eXBlPSJUb2RheSIvPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSIyMTYiIGxvY2F0b3I9IjE0OjE3LTE0OjIwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMSIgbG9jYXRvcj0iMTY6MS0xNjoxNSIgbmFtZT0iUGF0aWVudCIvPgogICA8L2NvbnRleHRzPgogICA8c3RhdGVtZW50cz4KICAgICAgPGRlZiBsb2NhbElkPSIyMTkiIGxvY2F0b3I9IjE2OjEtMTY6MTUiIG5hbWU9IlBhdGllbnQiIGNvbnRleHQ9IlBhdGllbnQiPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMjAiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjE4IiBsb2NhdG9yPSIxNjoxLTE2OjE1IiBkYXRhVHlwZT0iZmhpcjpQYXRpZW50IiB0ZW1wbGF0ZUlkPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIgeHNpOnR5cGU9IlJldHJpZXZlIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI5IiBsb2NhdG9yPSIzNzoxLTM4OjQ4IiBuYW1lPSJDbGllbnQgaXMgbm90IGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9IkNsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0ltbXVuaXphdGlvbiByZWNvbW1lbmRhdGlvbiBzdGF0dXMmcXVvdDsgPSAmcXVvdDtOb3QgZHVlJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjI5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBDbGllbnQgaXMgbm90IGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbgpAcHNldWRvY29kZTogJnF1b3Q7SW1tdW5pemF0aW9uIHJlY29tbWVuZGF0aW9uIHN0YXR1cyZxdW90OyA9ICZxdW90O05vdCBkdWUmcXVvdDsKKi8KZGVmaW5lICZxdW90O0NsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjMwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzMSIgbG9jYXRvcj0iMzg6My0zODo0OCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiA5IG1vbnRocyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjM1IiBsb2NhdG9yPSI0NToxLTQ2OjE5MSIgbmFtZT0iQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJDbGllbnQgaXMgbm90IGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiBHdWlkYW5jZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9Imd1aWRhbmNlIiB2YWx1ZT0iU2hvdWxkIG5vdCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIGNsaWVudCdzIGFnZSBpcyB1bmRlciA5IG1vbnRocy4gJiN4YTtDaGVjayBmb3IgYW55IG90aGVyIHZhY2NpbmVzIGR1ZSBhbmQgaW5mb3JtIHRoZSBjYXJlZ2l2ZXIgb2Ygd2hlbiB0byBjb21lIGJhY2sgZm9yIHRoZSBmaXJzdCBkb3NlLiIvPgogICAgICAgICAgICA8YTpzIHI9IjIzNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UKQGd1aWRhbmNlOiBTaG91bGQgbm90IHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgY2xpZW50J3MgYWdlIGlzIHVuZGVyIDkgbW9udGhzLiAKQ2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUgYW5kIGluZm9ybSB0aGUgY2FyZWdpdmVyIG9mIHdoZW4gdG8gY29tZSBiYWNrIGZvciB0aGUgZmlyc3QgZG9zZS4KKi8KZGVmaW5lICZxdW90O0NsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIzNiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+J1Nob3VsZCBub3QgdmFjY2luYXRlIGNsaWVudCB3aXRoIG1lbmluZ29jb2NjYWwgZG9zZSBhcyBjbGllbnRcJ3MgYWdlIGlzIHVuZGVyIDkgbW9udGhzLiAKQ2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUgYW5kIGluZm9ybSB0aGUgY2FyZWdpdmVyIG9mIHdoZW4gdG8gY29tZSBiYWNrIGZvciB0aGUgZmlyc3QgZG9zZS4nPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyMzYiIGxvY2F0b3I9IjQ2OjMtNDY6MTkxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iU2hvdWxkIG5vdCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIGNsaWVudCdzIGFnZSBpcyB1bmRlciA5IG1vbnRocy4gJiN4YTtDaGVjayBmb3IgYW55IG90aGVyIHZhY2NpbmVzIGR1ZSBhbmQgaW5mb3JtIHRoZSBjYXJlZ2l2ZXIgb2Ygd2hlbiB0byBjb21lIGJhY2sgZm9yIHRoZSBmaXJzdCBkb3NlLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjQyIiBsb2NhdG9yPSI1MzoxLTU1OjU0IiBuYW1lPSJDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzJnF1b3Q7ID0gJnF1b3Q7RHVlJnF1b3Q7Ii8+CiAgICAgICAgICAgIDxhOnMgcj0iMjQyIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAb3V0cHV0OiBDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uCkBwc2V1ZG9jb2RlOiAmcXVvdDtJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzJnF1b3Q7ID0gJnF1b3Q7RHVlJnF1b3Q7CiovCmRlZmluZSAmcXVvdDtDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI0MyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtObyBtZW5pbmdvY29jY2FsIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDbGllbnQncyBhZ2UgaXMgbW9yZSB0aGFuIDkgbW9udGhzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI0MyIgbG9jYXRvcj0iNTQ6My01NTo1NCIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iNTQ6My01NDo2NyIgbmFtZT0iTm8gbWVuaW5nb2NvY2NhbCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NyIgbG9jYXRvcj0iNTU6OS01NTo1NCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiA5IG1vbnRocyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTEiIGxvY2F0b3I9IjYyOjEtNjM6MTY3IiBuYW1lPSJDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0ib3V0cHV0IiB2YWx1ZT0iQ2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiBHdWlkYW5jZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9Imd1aWRhbmNlIiB2YWx1ZT0iU2hvdWxkIHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgbm8gbWVuaW5nb2NvY2NhbCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgYW5kIGNsaWVudCBpcyB3aXRoaW4gYXBwcm9wcmlhdGUgYWdlIHJhbmdlLiAmI3hhO0NoZWNrIGZvciBjb250cmFpbmRpY2F0aW9ucy4iLz4KICAgICAgICAgICAgPGE6cyByPSIyNTEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IENsaWVudCBpcyBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UKQGd1aWRhbmNlOiBTaG91bGQgdmFjY2luYXRlIGNsaWVudCB3aXRoIG1lbmluZ29jb2NjYWwgZG9zZSBhcyBubyBtZW5pbmdvY29jY2FsIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50IGlzIHdpdGhpbiBhcHByb3ByaWF0ZSBhZ2UgcmFuZ2UuIApDaGVjayBmb3IgY29udHJhaW5kaWNhdGlvbnMuCiovCmRlZmluZSAmcXVvdDtDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1MiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+J1Nob3VsZCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIG5vIG1lbmluZ29jb2NjYWwgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIGFuZCBjbGllbnQgaXMgd2l0aGluIGFwcHJvcHJpYXRlIGFnZSByYW5nZS4gCkNoZWNrIGZvciBjb250cmFpbmRpY2F0aW9ucy4nPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNTIiIGxvY2F0b3I9IjYzOjMtNjM6MTY3IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iU2hvdWxkIHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgbm8gbWVuaW5nb2NvY2NhbCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgYW5kIGNsaWVudCBpcyB3aXRoaW4gYXBwcm9wcmlhdGUgYWdlIHJhbmdlLiAmI3hhO0NoZWNrIGZvciBjb250cmFpbmRpY2F0aW9ucy4iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI1OCIgbG9jYXRvcj0iNzE6MS03Mjo2OCIgbmFtZT0iTWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJvdXRwdXQiIHZhbHVlPSJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzJnF1b3Q7ID0gJnF1b3Q7Q29tcGxldGUmcXVvdDsiLz4KICAgICAgICAgICAgPGE6cyByPSIyNTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBvdXRwdXQ6IE1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlCkBwc2V1ZG9jb2RlOiAmcXVvdDtJbW11bml6YXRpb24gcmVjb21tZW5kYXRpb24gc3RhdHVzJnF1b3Q7ID0gJnF1b3Q7Q29tcGxldGUmcXVvdDsKJnF1b3Q7Q29tcGxldGVkIHRoZSBwcmltYXJ5IHZhY2NpbmF0aW9uIHNlcmllcyZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7TWVuaW5nb2NvY2NhbCB2YWNjaW5lcyZxdW90OykgPSBUUlVFCiovCmRlZmluZSAmcXVvdDtNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNjAiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O09uZSBtZW5pbmdvY29jY2FsIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2MCIgbG9jYXRvcj0iNzI6My03Mjo2OCIgbmFtZT0iT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNjQiIGxvY2F0b3I9Ijc5OjEtODA6MTQzIiBuYW1lPSJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9Im91dHB1dCIgdmFsdWU9Ik1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlIEd1aWRhbmNlIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZ3VpZGFuY2UiIHZhbHVlPSJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS4gT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiAmI3hhO0NoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlLiIvPgogICAgICAgICAgICA8YTpzIHI9IjI2NCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQG91dHB1dDogTWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUgR3VpZGFuY2UKQGd1aWRhbmNlOiBNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS4gT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiAKQ2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUuCiovCmRlZmluZSAmcXVvdDtNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNjUiPgogICAgICAgICAgICAgICAgICA8YTpzPidNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS4gT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiAKQ2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUuJzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjY1IiBsb2NhdG9yPSI4MDozLTgwOjE0MyIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9Ik1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlLiBPbmUgbWVuaW5nb2NvY2NhbCBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQuICYjeGE7Q2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMjQiIGxvY2F0b3I9IjIyOjEtMjg6NSIgbmFtZT0iR3VpZGFuY2UiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkeW5hbWljVmFsdWUiIHZhbHVlPSJHdWlkYW5jZSIvPgogICAgICAgICAgICA8YTpzIHI9IjIyNCI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGR5bmFtaWNWYWx1ZTogR3VpZGFuY2UKKi8KZGVmaW5lICZxdW90O0d1aWRhbmNlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyNSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Y2FzZSAKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjIyNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMzIiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIzOCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjM5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0OCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNTQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0NsaWVudCBpcyBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24gR3VpZGFuY2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz53aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2MSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7TWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IHRoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSBHdWlkYW5jZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+IAogICAgZWxzZSA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNjgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPicnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogIGVuZDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjI1IiBsb2NhdG9yPSIyMzozLTI4OjUiIHhzaTp0eXBlPSJDYXNlIj4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjIyNiIgbG9jYXRvcj0iMjQ6NS0yNDoxMjIiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSIyMzIiIGxvY2F0b3I9IjI0OjEwLTI0OjU4IiBuYW1lPSJDbGllbnQgaXMgbm90IGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMjM4IiBsb2NhdG9yPSIyNDo2NS0yNDoxMjIiIG5hbWU9IkNsaWVudCBpcyBub3QgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iMjM5IiBsb2NhdG9yPSIyNTo1LTI1OjExNCI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjI0OCIgbG9jYXRvcj0iMjU6MTAtMjU6NTQiIG5hbWU9IkNsaWVudCBpcyBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjI1NCIgbG9jYXRvcj0iMjU6NjEtMjU6MTE0IiBuYW1lPSJDbGllbnQgaXMgZHVlIGZvciBtZW5pbmdvY29jY2FsIHZhY2NpbmF0aW9uIEd1aWRhbmNlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iMjU1IiBsb2NhdG9yPSIyNjo1LTI2OjEyMiI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjI2MSIgbG9jYXRvcj0iMjY6MTAtMjY6NTgiIG5hbWU9Ik1lbmluZ29jb2NjYWwgaW1tdW5pemF0aW9uIHNjaGVkdWxlIGlzIGNvbXBsZXRlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIyNjciIGxvY2F0b3I9IjI2OjY1LTI2OjEyMiIgbmFtZT0iTWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUgR3VpZGFuY2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjI2OCIgbG9jYXRvcj0iMjc6MTAtMjc6MTEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjcyIiBsb2NhdG9yPSIzMDoxLTMxOjQ1IiBuYW1lPSJIYXMgR3VpZGFuY2UiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyNzIiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtIYXMgR3VpZGFuY2UmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjczIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3NCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7R3VpZGFuY2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGlzIG5vdCBudWxsPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjgzIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0d1aWRhbmNlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiAhPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzkiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPicnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI3MyIgbG9jYXRvcj0iMzE6My0zMTo0NSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iMzE6My0zMToyNCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NSIgbG9jYXRvcj0iMzE6My0zMToyNCIgeHNpOnR5cGU9IklzTnVsbCI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NCIgbG9jYXRvcj0iMzE6My0zMToxMiIgbmFtZT0iR3VpZGFuY2UiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyODMiIGxvY2F0b3I9IjMxOjMwLTMxOjQ1IiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc3IiBsb2NhdG9yPSIzMTozMC0zMTo0NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyODEiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjgyIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNzgiIGxvY2F0b3I9IjMxOjMwLTMxOjM5IiBuYW1lPSJHdWlkYW5jZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjc5IiBsb2NhdG9yPSIzMTo0NC0zMTo0NSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjg2IiBsb2NhdG9yPSI4NzoxLTk2OjUiIG5hbWU9IlRlc3QgVmFsaWRhdGlvbiIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9InRlc3QiIHZhbHVlPSJUZXN0IGV4cGVjdGVkIHJlc3VsdHMgYmFzZWQgb24gZXhhbXBsZSBwYXRpZW50cyIvPgogICAgICAgICAgICA8YTpzIHI9IjI4NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQHRlc3Q6IFRlc3QgZXhwZWN0ZWQgcmVzdWx0cyBiYXNlZCBvbiBleGFtcGxlIHBhdGllbnRzCiovCmRlZmluZSAmcXVvdDtUZXN0IFZhbGlkYXRpb24mcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz5jYXNlCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjkyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nTWVuaW5nb2NvY2NhbDA4LjEnPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+IGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7R3VpZGFuY2UmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nU2hvdWxkIG5vdCB2YWNjaW5hdGUgY2xpZW50IHdpdGggbWVuaW5nb2NvY2NhbCBkb3NlIGFzIGNsaWVudFwncyBhZ2UgaXMgdW5kZXIgOSBtb250aHMuIApDaGVjayBmb3IgYW55IG90aGVyIHZhY2NpbmVzIGR1ZSBhbmQgaW5mb3JtIHRoZSBjYXJlZ2l2ZXIgb2Ygd2hlbiB0byBjb21lIGJhY2sgZm9yIHRoZSBmaXJzdCBkb3NlLic8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDYiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMwOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+UGF0aWVudDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5pZDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ID0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4nTWVuaW5nb2NvY2NhbDA5LjInPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2xpZW50IGlzIGR1ZSBmb3IgbWVuaW5nb2NvY2NhbCB2YWNjaW5hdGlvbiZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMxOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtHdWlkYW5jZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidTaG91bGQgdmFjY2luYXRlIGNsaWVudCB3aXRoIG1lbmluZ29jb2NjYWwgZG9zZSBhcyBubyBtZW5pbmdvY29jY2FsIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCBhbmQgY2xpZW50IGlzIHdpdGhpbiBhcHByb3ByaWF0ZSBhZ2UgcmFuZ2UuIApDaGVjayBmb3IgY29udHJhaW5kaWNhdGlvbnMuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyNCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5QYXRpZW50PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPmlkPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidNZW5pbmdvY29jY2FsMTAuMSc8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiB0aGVuIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtHdWlkYW5jZSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPSA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPidNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS4gT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiAKQ2hlY2sgZm9yIGFueSBvdGhlciB2YWNjaW5lcyBkdWUuJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGVsc2UgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQyIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nTm8gdGVzdCBjYXNlIHNldCc8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgZW5kPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyODciIGxvY2F0b3I9Ijg4OjMtOTY6NSIgeHNpOnR5cGU9IkNhc2UiPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iMjg4IiBsb2NhdG9yPSI4OTo1LTg5OjMwMyI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjI4OSIgbG9jYXRvcj0iODk6MTAtODk6NDEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjk2IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5NyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjk0IiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI5NSIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjkxIiBsb2NhdG9yPSI4OToxMC04OToxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjkwIiBsb2NhdG9yPSI4OToxMC04OToxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5MiIgbG9jYXRvcj0iODk6MjMtODk6NDEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJNZW5pbmdvY29jY2FsMDguMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIzNDQiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI5OCIgbG9jYXRvcj0iODk6NDgtODk6MzAzIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjk5IiBsb2NhdG9yPSI4OTo0OC04OTo5NiIgbmFtZT0iQ2xpZW50IGlzIG5vdCBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwMCIgbG9jYXRvcj0iODk6MTAyLTg5OjMwMyIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMDQiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzA1IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDEiIGxvY2F0b3I9Ijg5OjEwMi04OToxMTEiIG5hbWU9Ikd1aWRhbmNlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDIiIGxvY2F0b3I9Ijg5OjExNS04OTozMDMiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJTaG91bGQgbm90IHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgY2xpZW50J3MgYWdlIGlzIHVuZGVyIDkgbW9udGhzLiAmI3hhO0NoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlIGFuZCBpbmZvcm0gdGhlIGNhcmVnaXZlciBvZiB3aGVuIHRvIGNvbWUgYmFjayBmb3IgdGhlIGZpcnN0IGRvc2UuIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhbElkPSIzNDUiIHhzaTp0eXBlPSJDaG9pY2VUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSIzNDYiIG5hbWU9InQ6Qm9vbGVhbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjM0NyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPC9hc1R5cGVTcGVjaWZpZXI+CiAgICAgICAgICAgICAgIDwvdGhlbj4KICAgICAgICAgICAgPC9jYXNlSXRlbT4KICAgICAgICAgICAgPGNhc2VJdGVtIGxvY2FsSWQ9IjMwNiIgbG9jYXRvcj0iOTE6NS05MToyNzUiPgogICAgICAgICAgICAgICA8d2hlbiBsb2NhbElkPSIzMDciIGxvY2F0b3I9IjkxOjEwLTkxOjQxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMxNCIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMTUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxMiIgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMTMiIG5hbWU9ImZoaXI6c3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMwOSIgbG9jYXRvcj0iOTE6MTAtOTE6MTkiIHBhdGg9ImlkIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjMwOCIgbG9jYXRvcj0iOTE6MTAtOTE6MTYiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTAiIGxvY2F0b3I9IjkxOjIzLTkxOjQxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iTWVuaW5nb2NvY2NhbDA5LjIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDwvd2hlbj4KICAgICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iMzQ4IiB4c2k6dHlwZT0iQXMiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMTYiIGxvY2F0b3I9IjkxOjQ4LTkxOjI3NSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxNyIgbG9jYXRvcj0iOTE6NDgtOTE6OTIiIG5hbWU9IkNsaWVudCBpcyBkdWUgZm9yIG1lbmluZ29jb2NjYWwgdmFjY2luYXRpb24iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxOCIgbG9jYXRvcj0iOTE6OTgtOTE6Mjc1IiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMyMiIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMjMiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxOSIgbG9jYXRvcj0iOTE6OTgtOTE6MTA3IiBuYW1lPSJHdWlkYW5jZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIwIiBsb2NhdG9yPSI5MToxMTEtOTE6Mjc1IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iU2hvdWxkIHZhY2NpbmF0ZSBjbGllbnQgd2l0aCBtZW5pbmdvY29jY2FsIGRvc2UgYXMgbm8gbWVuaW5nb2NvY2NhbCBkb3NlIHdhcyBhZG1pbmlzdGVyZWQgYW5kIGNsaWVudCBpcyB3aXRoaW4gYXBwcm9wcmlhdGUgYWdlIHJhbmdlLiAmI3hhO0NoZWNrIGZvciBjb250cmFpbmRpY2F0aW9ucy4iIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8YXNUeXBlU3BlY2lmaWVyIGxvY2FsSWQ9IjM0OSIgeHNpOnR5cGU9IkNob2ljZVR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICA8Y2hvaWNlIGxvY2FsSWQ9IjM1MCIgbmFtZT0idDpCb29sZWFuIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iMzUxIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8L2FzVHlwZVNwZWNpZmllcj4KICAgICAgICAgICAgICAgPC90aGVuPgogICAgICAgICAgICA8L2Nhc2VJdGVtPgogICAgICAgICAgICA8Y2FzZUl0ZW0gbG9jYWxJZD0iMzI0IiBsb2NhdG9yPSI5Mzo1LTkzOjI1NSI+CiAgICAgICAgICAgICAgIDx3aGVuIGxvY2FsSWQ9IjMyNSIgbG9jYXRvcj0iOTM6MTAtOTM6NDEiIHhzaTp0eXBlPSJFcXVhbCI+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzMyIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzMyIgbmFtZT0idDpTdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMwIiBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzMSIgbmFtZT0iZmhpcjpzdHJpbmciIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI3IiBsb2NhdG9yPSI5MzoxMC05MzoxOSIgcGF0aD0iaWQiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzI2IiBsb2NhdG9yPSI5MzoxMC05MzoxNiIgbmFtZT0iUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOCIgbG9jYXRvcj0iOTM6MjMtOTM6NDEiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJNZW5pbmdvY29jY2FsMTAuMSIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgPC93aGVuPgogICAgICAgICAgICAgICA8dGhlbiBsb2NhbElkPSIzNTIiIHhzaTp0eXBlPSJBcyI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzNCIgbG9jYXRvcj0iOTM6NDgtOTM6MjU1IiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzM1IiBsb2NhdG9yPSI5Mzo0OC05Mzo5NiIgbmFtZT0iTWVuaW5nb2NvY2NhbCBpbW11bml6YXRpb24gc2NoZWR1bGUgaXMgY29tcGxldGUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzNiIgbG9jYXRvcj0iOTM6MTAyLTkzOjI1NSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzNDAiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzQxIiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzciIGxvY2F0b3I9IjkzOjEwMi05MzoxMTEiIG5hbWU9Ikd1aWRhbmNlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMzgiIGxvY2F0b3I9IjkzOjExNS05MzoyNTUiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJNZW5pbmdvY29jY2FsIGltbXVuaXphdGlvbiBzY2hlZHVsZSBpcyBjb21wbGV0ZS4gT25lIG1lbmluZ29jb2NjYWwgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLiAmI3hhO0NoZWNrIGZvciBhbnkgb3RoZXIgdmFjY2luZXMgZHVlLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMzUzIiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iMzU0IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSIzNTUiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICAgICA8L3RoZW4+CiAgICAgICAgICAgIDwvY2FzZUl0ZW0+CiAgICAgICAgICAgIDxlbHNlIGxvY2FsSWQ9IjM1NiIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQyIiBsb2NhdG9yPSI5NToxMC05NToyNyIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9Ik5vIHRlc3QgY2FzZSBzZXQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYWxJZD0iMzU3IiB4c2k6dHlwZT0iQ2hvaWNlVHlwZVNwZWNpZmllciI+CiAgICAgICAgICAgICAgICAgIDxjaG9pY2UgbG9jYWxJZD0iMzU4IiBuYW1lPSJ0OkJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPGNob2ljZSBsb2NhbElkPSIzNTkiIG5hbWU9InQ6U3RyaW5nIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDwvYXNUeXBlU3BlY2lmaWVyPgogICAgICAgICAgICA8L2Vsc2U+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgIDwvc3RhdGVtZW50cz4KPC9saWJyYXJ5Pgo="
    }
  ]
}