2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide
2022.1.0 - CI Build
2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide, published by Centers for Disease Control and Prevention (CDC). This guide is not an authorized publication; it is the continuous build for version 2022.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/opioid-cds-r4/ and changes regularly. See the Directory of published versions
Active as of 2024-08-29 |
{
"resourceType" : "Library",
"id" : "OpioidCDSREC04And05",
"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;\">OpioidCDSREC04And05</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Url: </b></th>\n <td style=\"padding-left: 4px;\"><a href=\"Library-OpioidCDSREC04And05.html\">Library - Recommendations #4 and #5 - Lowest Effective Dose</a></td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Version: </b></th>\n <td style=\"padding-left: 4px;\">2022.1.0</td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Name: </b></th>\n <td style=\"padding-left: 4px;\">OpioidCDSREC04And05</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Title: </b></th>\n <td style=\"padding-left: 4px;\">Library - Recommendations #4 and #5 - Lowest Effective Dose</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;\">true</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-08-29 04:48:05+0000</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Publisher: </b></th>\n <td style=\"padding-left: 4px;\">Centers for Disease Control and Prevention (CDC)</td>\n </tr>\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-OpioidCDSCommon.html\">Library - OpioidCDS Commonversion: {0}2022.1.0)</a></li>\n \n <li><a href=\"Library-OpioidCDSCommonConfig.html\">Library - OpioidCDS Common Configurationversion: {0}2022.1.0)</a></li>\n \n <li><a href=\"Library-OpioidCDSRoutines.html\">Library - OpioidCDS Routinesversion: {0}2022.1.0)</a></li>\n \n <li><a href=\"Library-MMECalculator.html\">Morphine Milligram Equivalent (MME) Calculator for FHIR R4version: {0}3.0.0)</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>ContextPrescriptions</th><th>MedicationRequest</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>Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions</th><th>MedicationRequest</th><th>0</th><th>*</th><th>Out</th></tr>\n \n <tr><th>Total MME</th><th>Quantity</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Taper Now</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Consider Tapering</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Inclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Exclusion Criteria</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Is Recommendation Applicable?</th><th>boolean</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Get Indicator</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Get Summary</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n \n <tr><th>Get Detail</th><th>string</th><th>0</th><th>1</th><th>Out</th></tr>\n \n </table>\n </td>\n </tr>\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 style=\"max-width: 1084px;\"><code class=\"language-cql\">library OpioidCDSREC04And05 version '2022.1.0'\n\nusing FHIR version '4.0.1'\n\ninclude OpioidCDSCommon version '2022.1.0' called Common\ninclude OpioidCDSCommonConfig version '2022.1.0' called Config\ninclude OpioidCDSRoutines version '2022.1.0' called Routines\n/*include fhir.cdc."opioid-mme-r4".MMECalculator version '3.0.0' called MMECalculator\n */\ninclude MMECalculator version '3.0.0' called MMECalculator\n\n/*\n**\n** Recommendation #4\n** When opioids are initiated for opioid-naïve patients with acute, subacute, or chronic pain, \n** clinicians should prescribe the lowest effective dosage. If opioids are continued for \n** subacute or chronic pain, clinicians should use caution when prescribing opioids at any dosage, \n** should carefully evaluate individual benefits and risks when considering increasing dosage, and \n** should avoid increasing dosage above levels likely to yield diminishing returns in benefits \n** relative to risks to patients (recommendation category: A; evidence type: 3)\n** Recommendation #5\n** For patients already receiving opioid therapy, clinicians should carefully weigh benefits and \n** risks and exercise care when changing opioid dosage. If benefits outweigh risks of continued \n** opioid therapy, clinicians should work closely with patients to optimize nonopioid therapies \n** while continuing opioid therapy. If benefits do not outweigh risks of continued opioid therapy, \n** clinicians should optimize other therapies and work closely with patients to gradually taper to \n** lower dosages or, if warranted based on the individual circumstances of the patient, appropriately \n** taper and discontinue opioids. Unless there are indications of a life-threatening issue such as \n** warning signs of impending overdose (e.g., confusion, sedation, or slurred speech), opioid therapy \n** should not be discontinued abruptly, and clinicians should not rapidly reduce opioid dosages from \n** higher dosages (recommendation category: B; evidence type: 4).\n**\n** When\n** Provider is prescribing an opioid analgesic with ambulatory misuse potential in the outpatient setting\n** Opioid review is useful for this patient:\n** Patient is 18 or over\n** Patient does not have evidence of sickle cell disease\n** Patient does not have findings indicating limited life expectancy\n** Patient does not have orders for therapies indicating end of life care\n** Patient is not undergoing active cancer treatment:\n** Patient has had at least 2 office visits within the past 12 months with an oncology specialist present, or\n** Patient has had at least 2 office visits within the past 12 months with a CDC malignant cancer condition diagnosis\n** Patient does not have conditions likely terminal for opioid prescribing present\n** Patient Morphine Milligram Equivalent (MME) greater than or equal to 50\n** Then\n** Calibrate to Lowest Opioid Dose Needed for Expected Results and Exercise Care When Changing Opioid Dosages:\n** Document - Will prescribe a lower dose\n** Document - Will calibrate a gradual change in dosage\n** Snooze - Benefits outweigh risks, snooze 3 months\n** Snooze - Short term benefits outweigh risks, snooze 1 month\n** Snooze - N/A add comment, snooze 3 months\n**\n*/\n\n// META: Plan Definition: http://fhir.org/guides/cdc/opioid-cds-r4/PlanDefinition/opioid-cds-04-05\n\nparameter ContextPrescriptions List<MedicationRequest>\n\ncontext Patient\n\ndefine "Taper Now": "Total MME".value >= 90\n\ndefine "Consider Tapering": "Total MME".value < 90\n\ndefine "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions":\n ( Common."Is Opioid Analgesic with Ambulatory Misuse Potential?"( ContextPrescriptions ) ) AmbulatoryOpioidPrescription\n where Routines."Is Subacute or Chronic Pain Prescription?"( AmbulatoryOpioidPrescription )\n\ndefine "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential":\n exists( "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" )\n\ndefine "Total MME":\n MMECalculator.TotalMME(\n (\n "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions"\n union Common."Active Ambulatory Opioid Rx"\n ) AmbulatoryOpioidPrescription\n where Routines."Is Subacute or Chronic Pain Prescription?"( AmbulatoryOpioidPrescription )\n )\n\ndefine "Inclusion Criteria":\n "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential"\n and Routines."Is Opioid Review Useful?"\n and "Total MME" >= 50 '{MME}/d'\n\ndefine "Exclusion Criteria":\n Common."End of Life Assessment"\n\ndefine "Is Recommendation Applicable?":\n "Inclusion Criteria"\n and not "Exclusion Criteria"\n\ndefine "Get Indicator":\n if "Is Recommendation Applicable?"\n then 'warning'\n else null\n\ndefine "Get Summary":\n if "Is Recommendation Applicable?"\n then\n 'Calibrate to Lowest Opioid Dose Needed for Expected Results and Exercise Care When Changing Opioid Dosages'\n else null\n\ndefine "Get Detail":\n if "Is Recommendation Applicable?"\n then\n 'When opioid therapy is considered appropriate, calibrate opioid dosages to lowest dose needed to achieve expected effects. For patients already receiving opioid therapy, clinicians should carefully weigh benefits and risks and exercise care when changing opioid dosage.\n\n[For guidance in determining the lowest effective opioid dosage, see Recommendation 4 of the 2022 CDC Clinical Practice Guideline](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=lowest%20effective%20dosage.-,For%20patients%20not%20already%20taking%20opioids%2C%20the%20lowest%20effective%20dose%20can,intended%20to%20be%20guideposts%20to%20help%20inform%20clinician%2Dpatient%20decision%2Dmaking.,-Supporting%20Rationale)\n\n[For patients who have received opioid therapy for longer durations of time, if tapering, consider working closely with the patient to gradually taper dosages (no more than 10% per month)](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=When%20patients%20have%20been%20taking%20opioids%20for%20longer%20durations%20(e.g.%2C%20for%20%E2%89%A51%20year)%2C%20tapers%20of%2010%25%20per%20month%20or%20slower%20are%20likely%20to%20be%20better%20tolerated%20than%20more%20rapid%20tapers.)\n\nFor a tapering calculator, go to [https://agencymeddirectors.wa.gov/Calculator/TaperDoseCalculator.html](https://www.agencymeddirectors.wa.gov/Calculator/TaperDoseCalculator.html)\n\n[For more guidance regarding tapering, please see\u00a0Recommendation 5 of the 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=When%20benefits%20(including,6%20and%207).)\n\n**MME Calculator Cautions**\n1) All doses are in mg/day except for fentanyl, which is mcg/hr. \n2) Equianalgesic dose conversions are only estimates and cannot account for individual variability in genetics and pharmacokinetics. \n3) Do not use the calculated dose in MMEs to determine the doses to use when converting one opioid to another; when converting opioids, the new opioid is typically dosed at a substantially lower dose than the calculated MME dose to avoid overdose because of incomplete cross-tolerance and individual variability in opioid pharmacokinetics. Consult the FDA approved product labeling for specific guidance on medications. \n4) Use particular caution with methadone dose conversions because methadone has a long and variable half-life, and peak respiratory depressant effect occurs later and lasts longer than peak analgesic effect. \n5) Use particular caution with transdermal fentanyl because it is dosed in mcg/hr instead of mg/day, and its absorption is affected by heat and other factors. \n6) Buprenorphine products approved for the treatment of pain are not included in the table because of their partial µ-receptor agonist activity and resultant ceiling effects compared with full µ-receptor agonists. \n7) These conversion factors should not be applied to dosage decisions related to the management of opioid use disorder.\n† Tapentadol is a µ-receptor agonist and norepinephrine reuptake inhibitor. MMEs are based on degree of µ-receptor agonist activity; however, it is unknown whether tapentadol is associated with overdose in the same dose-dependent manner as observed with medications that are solely µ-receptor agonists.\n§ Tramadol is a µ-receptor agonist and norepinephrine and serotonin reuptake inhibitor. MMEs are based on degree of µ-receptor agonist activity; however, it is unknown whether tramadol is associated with overdose in the same dose-dependent manner as observed with medications that are solely µ-receptor agonists.'\n else null\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 style=\"max-width: 1084px;\"><code>Encoded data (44580 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 style=\"max-width: 1084px;\"><code>Encoded data (66212 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://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem",
"valueReference" : {
🔗 "reference" : "Device/cqf-tooling"
}
}
],
"url" : "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSREC04And05",
"version" : "2022.1.0",
"name" : "OpioidCDSREC04And05",
"title" : "Library - Recommendations #4 and #5 - Lowest Effective Dose",
"status" : "active",
"experimental" : true,
"type" : {
"coding" : [
{
"system" : "http://terminology.hl7.org/CodeSystem/library-type",
"code" : "logic-library"
}
]
},
"date" : "2024-08-29T04:48:05+00:00",
"publisher" : "Centers for Disease Control and Prevention (CDC)",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "https://www.cdc.gov"
}
]
}
],
"relatedArtifact" : [
{
"type" : "depends-on",
"display" : "Library Common",
"resource" : "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0"
},
{
"type" : "depends-on",
"display" : "Library Config",
"resource" : "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommonConfig|2022.1.0"
},
{
"type" : "depends-on",
"display" : "Library Routines",
"resource" : "http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines|2022.1.0"
},
{
"type" : "depends-on",
"display" : "Library MMECalculator",
"resource" : "http://fhir.org/guides/cdc/opioid-cds/Library/MMECalculator|3.0.0"
}
],
"parameter" : [
{
"name" : "ContextPrescriptions",
"use" : "in",
"min" : 0,
"max" : "1",
"type" : "MedicationRequest"
},
{
"name" : "Patient",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Patient"
},
{
"name" : "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "MedicationRequest"
},
{
"name" : "Total MME",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Quantity"
},
{
"name" : "Taper Now",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Consider Tapering",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Inclusion Criteria",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Exclusion Criteria",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Is Recommendation Applicable?",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "boolean"
},
{
"name" : "Get Indicator",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "string"
},
{
"name" : "Get Summary",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "string"
},
{
"name" : "Get Detail",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "string"
}
],
"content" : [
{
"contentType" : "text/cql",
"data" : "bGlicmFyeSBPcGlvaWRDRFNSRUMwNEFuZDA1IHZlcnNpb24gJzIwMjIuMS4wJwoKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgT3Bpb2lkQ0RTQ29tbW9uQ29uZmlnIHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29uZmlnCmluY2x1ZGUgT3Bpb2lkQ0RTUm91dGluZXMgdmVyc2lvbiAnMjAyMi4xLjAnIGNhbGxlZCBSb3V0aW5lcwovKmluY2x1ZGUgZmhpci5jZGMuIm9waW9pZC1tbWUtcjQiLk1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCiAqLwppbmNsdWRlIE1NRUNhbGN1bGF0b3IgdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yCgovKgoqKgoqKiAgUmVjb21tZW5kYXRpb24gIzQKKiogICAgV2hlbiBvcGlvaWRzIGFyZSBpbml0aWF0ZWQgZm9yIG9waW9pZC1uYcOvdmUgcGF0aWVudHMgd2l0aCBhY3V0ZSwgc3ViYWN1dGUsIG9yIGNocm9uaWMgcGFpbiwgCioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIHByZXNjcmliZSB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBkb3NhZ2UuIElmIG9waW9pZHMgYXJlIGNvbnRpbnVlZCBmb3IgCioqICAgIHN1YmFjdXRlIG9yIGNocm9uaWMgcGFpbiwgY2xpbmljaWFucyBzaG91bGQgdXNlIGNhdXRpb24gd2hlbiBwcmVzY3JpYmluZyBvcGlvaWRzIGF0IGFueSBkb3NhZ2UsIAoqKiAgICBzaG91bGQgY2FyZWZ1bGx5IGV2YWx1YXRlIGluZGl2aWR1YWwgYmVuZWZpdHMgYW5kIHJpc2tzIHdoZW4gY29uc2lkZXJpbmcgaW5jcmVhc2luZyBkb3NhZ2UsIGFuZCAKKiogICAgc2hvdWxkIGF2b2lkIGluY3JlYXNpbmcgZG9zYWdlIGFib3ZlIGxldmVscyBsaWtlbHkgdG8geWllbGQgZGltaW5pc2hpbmcgcmV0dXJucyBpbiBiZW5lZml0cyAKKiogICAgcmVsYXRpdmUgdG8gcmlza3MgdG8gcGF0aWVudHMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBBOyBldmlkZW5jZSB0eXBlOiAzKQoqKiAgUmVjb21tZW5kYXRpb24gIzUKKiogICAgRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIAoqKiAgICByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuIElmIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCAKKiogICAgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIG9wdGltaXplIG5vbm9waW9pZCB0aGVyYXBpZXMgCioqICAgIHdoaWxlIGNvbnRpbnVpbmcgb3Bpb2lkIHRoZXJhcHkuIElmIGJlbmVmaXRzIGRvIG5vdCBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgb3Bpb2lkIHRoZXJhcHksIAoqKiAgICBjbGluaWNpYW5zIHNob3VsZCBvcHRpbWl6ZSBvdGhlciB0aGVyYXBpZXMgYW5kIHdvcmsgY2xvc2VseSB3aXRoIHBhdGllbnRzIHRvIGdyYWR1YWxseSB0YXBlciB0byAKKiogICAgbG93ZXIgZG9zYWdlcyBvciwgaWYgd2FycmFudGVkIGJhc2VkIG9uIHRoZSBpbmRpdmlkdWFsIGNpcmN1bXN0YW5jZXMgb2YgdGhlIHBhdGllbnQsIGFwcHJvcHJpYXRlbHkgCioqICAgIHRhcGVyIGFuZCBkaXNjb250aW51ZSBvcGlvaWRzLiBVbmxlc3MgdGhlcmUgYXJlIGluZGljYXRpb25zIG9mIGEgbGlmZS10aHJlYXRlbmluZyBpc3N1ZSBzdWNoIGFzIAoqKiAgICB3YXJuaW5nIHNpZ25zIG9mIGltcGVuZGluZyBvdmVyZG9zZSAoZS5nLiwgY29uZnVzaW9uLCBzZWRhdGlvbiwgb3Igc2x1cnJlZCBzcGVlY2gpLCBvcGlvaWQgdGhlcmFweSAKKiogICAgc2hvdWxkIG5vdCBiZSBkaXNjb250aW51ZWQgYWJydXB0bHksIGFuZCBjbGluaWNpYW5zIHNob3VsZCBub3QgcmFwaWRseSByZWR1Y2Ugb3Bpb2lkIGRvc2FnZXMgZnJvbSAKKiogICAgaGlnaGVyIGRvc2FnZXMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBCOyBldmlkZW5jZSB0eXBlOiA0KS4KKioKKiogIFdoZW4KKiogICAgUHJvdmlkZXIgaXMgcHJlc2NyaWJpbmcgYW4gb3Bpb2lkIGFuYWxnZXNpYyB3aXRoIGFtYnVsYXRvcnkgbWlzdXNlIHBvdGVudGlhbCBpbiB0aGUgb3V0cGF0aWVudCBzZXR0aW5nCioqICAgIE9waW9pZCByZXZpZXcgaXMgdXNlZnVsIGZvciB0aGlzIHBhdGllbnQ6CioqICAgICAgUGF0aWVudCBpcyAxOCBvciBvdmVyCioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGV2aWRlbmNlIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2UKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZmluZGluZ3MgaW5kaWNhdGluZyBsaW1pdGVkIGxpZmUgZXhwZWN0YW5jeQoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBvcmRlcnMgZm9yIHRoZXJhcGllcyBpbmRpY2F0aW5nIGVuZCBvZiBsaWZlIGNhcmUKKiogICAgICBQYXRpZW50IGlzIG5vdCB1bmRlcmdvaW5nIGFjdGl2ZSBjYW5jZXIgdHJlYXRtZW50OgoqKiAgICAgICAgUGF0aWVudCBoYXMgaGFkIGF0IGxlYXN0IDIgb2ZmaWNlIHZpc2l0cyB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdpdGggYW4gb25jb2xvZ3kgc3BlY2lhbGlzdCBwcmVzZW50LCBvcgoqKiAgICAgICAgUGF0aWVudCBoYXMgaGFkIGF0IGxlYXN0IDIgb2ZmaWNlIHZpc2l0cyB3aXRoaW4gdGhlIHBhc3QgMTIgbW9udGhzIHdpdGggYSBDREMgbWFsaWduYW50IGNhbmNlciBjb25kaXRpb24gZGlhZ25vc2lzCioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGNvbmRpdGlvbnMgbGlrZWx5IHRlcm1pbmFsIGZvciBvcGlvaWQgcHJlc2NyaWJpbmcgcHJlc2VudAoqKiAgICBQYXRpZW50IE1vcnBoaW5lIE1pbGxpZ3JhbSBFcXVpdmFsZW50IChNTUUpIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA1MAoqKiAgVGhlbgoqKiAgICBDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzOgoqKiAgICAgIERvY3VtZW50IC0gV2lsbCBwcmVzY3JpYmUgYSBsb3dlciBkb3NlCioqICAgICAgRG9jdW1lbnQgLSBXaWxsIGNhbGlicmF0ZSBhIGdyYWR1YWwgY2hhbmdlIGluIGRvc2FnZQoqKiAgICAgIFNub296ZSAtIEJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMyBtb250aHMKKiogICAgICBTbm9vemUgLSBTaG9ydCB0ZXJtIGJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMSBtb250aAoqKiAgICAgIFNub296ZSAtIE4vQSBhZGQgY29tbWVudCwgc25vb3plIDMgbW9udGhzCioqCiovCgovLyBNRVRBOiBQbGFuIERlZmluaXRpb246IGh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMtcjQvUGxhbkRlZmluaXRpb24vb3Bpb2lkLWNkcy0wNC0wNQoKcGFyYW1ldGVyIENvbnRleHRQcmVzY3JpcHRpb25zIExpc3Q8TWVkaWNhdGlvblJlcXVlc3Q+Cgpjb250ZXh0IFBhdGllbnQKCmRlZmluZSAiVGFwZXIgTm93IjogIlRvdGFsIE1NRSIudmFsdWUgPj0gOTAKCmRlZmluZSAiQ29uc2lkZXIgVGFwZXJpbmciOiAiVG90YWwgTU1FIi52YWx1ZSA8IDkwCgpkZWZpbmUgIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiOgogICggQ29tbW9uLiJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIoIENvbnRleHRQcmVzY3JpcHRpb25zICkgKSBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uCiAgICB3aGVyZSBSb3V0aW5lcy4iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iKCBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uICkKCmRlZmluZSAiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiOgogIGV4aXN0cyggIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiICkKCmRlZmluZSAiVG90YWwgTU1FIjoKICBNTUVDYWxjdWxhdG9yLlRvdGFsTU1FKAogICAgKAogICAgICAiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyIKICAgICAgICB1bmlvbiBDb21tb24uIkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeCIKICAgICkgQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbgogICAgICB3aGVyZSBSb3V0aW5lcy4iSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj8iKCBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uICkKICApCgpkZWZpbmUgIkluY2x1c2lvbiBDcml0ZXJpYSI6CiAgIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIgogICAgYW5kIFJvdXRpbmVzLiJJcyBPcGlvaWQgUmV2aWV3IFVzZWZ1bD8iCiAgICBhbmQgIlRvdGFsIE1NRSIgPj0gNTAgJ3tNTUV9L2QnCgpkZWZpbmUgIkV4Y2x1c2lvbiBDcml0ZXJpYSI6CiAgQ29tbW9uLiJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50IgoKZGVmaW5lICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyI6CiAgIkluY2x1c2lvbiBDcml0ZXJpYSIKICAgIGFuZCBub3QgIkV4Y2x1c2lvbiBDcml0ZXJpYSIKCmRlZmluZSAiR2V0IEluZGljYXRvciI6CiAgaWYgIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/IgogICAgdGhlbiAnd2FybmluZycKICBlbHNlIG51bGwKCmRlZmluZSAiR2V0IFN1bW1hcnkiOgogIGlmICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIKICAgIHRoZW4KICAgICAgJ0NhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXMnCiAgZWxzZSBudWxsCgpkZWZpbmUgIkdldCBEZXRhaWwiOgogIGlmICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIKICAgIHRoZW4KICAgICdXaGVuIG9waW9pZCB0aGVyYXB5IGlzIGNvbnNpZGVyZWQgYXBwcm9wcmlhdGUsIGNhbGlicmF0ZSBvcGlvaWQgZG9zYWdlcyB0byBsb3dlc3QgZG9zZSBuZWVkZWQgdG8gYWNoaWV2ZSBleHBlY3RlZCBlZmZlY3RzLiBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLgoKW0ZvciBndWlkYW5jZSBpbiBkZXRlcm1pbmluZyB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBvcGlvaWQgZG9zYWdlLCBzZWUgUmVjb21tZW5kYXRpb24gNCBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1sb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NhZ2UuLSxGb3IlMjBwYXRpZW50cyUyMG5vdCUyMGFscmVhZHklMjB0YWtpbmclMjBvcGlvaWRzJTJDJTIwdGhlJTIwbG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zZSUyMGNhbixpbnRlbmRlZCUyMHRvJTIwYmUlMjBndWlkZXBvc3RzJTIwdG8lMjBoZWxwJTIwaW5mb3JtJTIwY2xpbmljaWFuJTJEcGF0aWVudCUyMGRlY2lzaW9uJTJEbWFraW5nLiwtU3VwcG9ydGluZyUyMFJhdGlvbmFsZSkKCltGb3IgcGF0aWVudHMgd2hvIGhhdmUgcmVjZWl2ZWQgb3Bpb2lkIHRoZXJhcHkgZm9yIGxvbmdlciBkdXJhdGlvbnMgb2YgdGltZSwgaWYgdGFwZXJpbmcsIGNvbnNpZGVyIHdvcmtpbmcgY2xvc2VseSB3aXRoIHRoZSBwYXRpZW50IHRvIGdyYWR1YWxseSB0YXBlciBkb3NhZ2VzIChubyBtb3JlIHRoYW4gMTAlIHBlciBtb250aCldKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBwYXRpZW50cyUyMGhhdmUlMjBiZWVuJTIwdGFraW5nJTIwb3Bpb2lkcyUyMGZvciUyMGxvbmdlciUyMGR1cmF0aW9ucyUyMChlLmcuJTJDJTIwZm9yJTIwJUUyJTg5JUE1MSUyMHllYXIpJTJDJTIwdGFwZXJzJTIwb2YlMjAxMCUyNSUyMHBlciUyMG1vbnRoJTIwb3IlMjBzbG93ZXIlMjBhcmUlMjBsaWtlbHklMjB0byUyMGJlJTIwYmV0dGVyJTIwdG9sZXJhdGVkJTIwdGhhbiUyMG1vcmUlMjByYXBpZCUyMHRhcGVycy4pCgpGb3IgYSB0YXBlcmluZyBjYWxjdWxhdG9yLCBnbyB0byBbaHR0cHM6Ly9hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sXShodHRwczovL3d3dy5hZ2VuY3ltZWRkaXJlY3RvcnMud2EuZ292L0NhbGN1bGF0b3IvVGFwZXJEb3NlQ2FsY3VsYXRvci5odG1sKQoKW0ZvciBtb3JlIGd1aWRhbmNlIHJlZ2FyZGluZyB0YXBlcmluZywgcGxlYXNlIHNlZcKgUmVjb21tZW5kYXRpb24gNSBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lIGZvciBQcmVzY3JpYmluZyBPcGlvaWRzIGZvciBQYWluXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwYmVuZWZpdHMlMjAoaW5jbHVkaW5nLDYlMjBhbmQlMjA3KS4pCgoqKk1NRSBDYWxjdWxhdG9yIENhdXRpb25zKioKMSkgQWxsIGRvc2VzIGFyZSBpbiBtZy9kYXkgZXhjZXB0IGZvciBmZW50YW55bCwgd2hpY2ggaXMgbWNnL2hyLiAKMikgRXF1aWFuYWxnZXNpYyBkb3NlIGNvbnZlcnNpb25zIGFyZSBvbmx5IGVzdGltYXRlcyBhbmQgY2Fubm90IGFjY291bnQgZm9yIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gZ2VuZXRpY3MgYW5kIHBoYXJtYWNva2luZXRpY3MuIAozKSBEbyBub3QgdXNlIHRoZSBjYWxjdWxhdGVkIGRvc2UgaW4gTU1FcyB0byBkZXRlcm1pbmUgdGhlIGRvc2VzIHRvIHVzZSB3aGVuIGNvbnZlcnRpbmcgb25lIG9waW9pZCB0byBhbm90aGVyOyB3aGVuIGNvbnZlcnRpbmcgb3Bpb2lkcywgdGhlIG5ldyBvcGlvaWQgaXMgdHlwaWNhbGx5IGRvc2VkIGF0IGEgc3Vic3RhbnRpYWxseSBsb3dlciBkb3NlIHRoYW4gdGhlIGNhbGN1bGF0ZWQgTU1FIGRvc2UgdG8gYXZvaWQgb3ZlcmRvc2UgYmVjYXVzZSBvZiBpbmNvbXBsZXRlIGNyb3NzLXRvbGVyYW5jZSBhbmQgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBvcGlvaWQgcGhhcm1hY29raW5ldGljcy4gQ29uc3VsdCB0aGUgRkRBIGFwcHJvdmVkIHByb2R1Y3QgbGFiZWxpbmcgZm9yIHNwZWNpZmljIGd1aWRhbmNlIG9uIG1lZGljYXRpb25zLiAKNCkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIG1ldGhhZG9uZSBkb3NlIGNvbnZlcnNpb25zIGJlY2F1c2UgbWV0aGFkb25lIGhhcyBhIGxvbmcgYW5kIHZhcmlhYmxlIGhhbGYtbGlmZSwgYW5kIHBlYWsgcmVzcGlyYXRvcnkgZGVwcmVzc2FudCBlZmZlY3Qgb2NjdXJzIGxhdGVyIGFuZCBsYXN0cyBsb25nZXIgdGhhbiBwZWFrIGFuYWxnZXNpYyBlZmZlY3QuIAo1KSBVc2UgcGFydGljdWxhciBjYXV0aW9uIHdpdGggdHJhbnNkZXJtYWwgZmVudGFueWwgYmVjYXVzZSBpdCBpcyBkb3NlZCBpbiBtY2cvaHIgaW5zdGVhZCBvZiBtZy9kYXksIGFuZCBpdHMgYWJzb3JwdGlvbiBpcyBhZmZlY3RlZCBieSBoZWF0IGFuZCBvdGhlciBmYWN0b3JzLiAKNikgQnVwcmVub3JwaGluZSBwcm9kdWN0cyBhcHByb3ZlZCBmb3IgdGhlIHRyZWF0bWVudCBvZiBwYWluIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHRhYmxlIGJlY2F1c2Ugb2YgdGhlaXIgcGFydGlhbCDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5IGFuZCByZXN1bHRhbnQgY2VpbGluZyBlZmZlY3RzIGNvbXBhcmVkIHdpdGggZnVsbCDCtS1yZWNlcHRvciBhZ29uaXN0cy4gCjcpIFRoZXNlIGNvbnZlcnNpb24gZmFjdG9ycyBzaG91bGQgbm90IGJlIGFwcGxpZWQgdG8gZG9zYWdlIGRlY2lzaW9ucyByZWxhdGVkIHRvIHRoZSBtYW5hZ2VtZW50IG9mIG9waW9pZCB1c2UgZGlzb3JkZXIuCuKAoCBUYXBlbnRhZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRhcGVudGFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4KwqcgVHJhbWFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSBhbmQgc2Vyb3RvbmluIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0cmFtYWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLicKICBlbHNlIG51bGwK"
},
{
"contentType" : "application/elm+xml",
"data" : "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iNzQiPgogICAgICAgICA8YTpzPmxpYnJhcnkgT3Bpb2lkQ0RTUkVDMDRBbmQwNSB2ZXJzaW9uICcyMDIyLjEuMCc8L2E6cz4KICAgICAgPC9hOnM+CiAgIDwvYW5ub3RhdGlvbj4KICAgPGlkZW50aWZpZXIgaWQ9Ik9waW9pZENEU1JFQzA0QW5kMDUiIHN5c3RlbT0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcyIgdmVyc2lvbj0iMjAyMi4xLjAiLz4KICAgPHNjaGVtYUlkZW50aWZpZXIgaWQ9InVybjpobDctb3JnOmVsbSIgdmVyc2lvbj0icjEiLz4KICAgPHVzaW5ncz4KICAgICAgPGRlZiBsb2NhbElkZW50aWZpZXI9IlN5c3RlbSIgdXJpPSJ1cm46aGw3LW9yZzplbG0tdHlwZXM6cjEiLz4KICAgICAgPGRlZiBsb2NhbElkPSIxIiBsb2NhdG9yPSIzOjEtMzoyNiIgbG9jYWxJZGVudGlmaWVyPSJGSElSIiB1cmk9Imh0dHA6Ly9obDcub3JnL2ZoaXIiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMSI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIiIGxvY2F0b3I9IjU6MS01OjU2IiBsb2NhbElkZW50aWZpZXI9IkNvbW1vbiIgcGF0aD0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9PcGlvaWRDRFNDb21tb24iIHZlcnNpb249IjIwMjIuMS4wIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5PcGlvaWRDRFNDb21tb248L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMiIGxvY2F0b3I9IjY6MS02OjYyIiBsb2NhbElkZW50aWZpZXI9IkNvbmZpZyIgcGF0aD0iaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9PcGlvaWRDRFNDb21tb25Db25maWciIHZlcnNpb249IjIwMjIuMS4wIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMyI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5PcGlvaWRDRFNDb21tb25Db25maWc8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgQ29uZmlnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjQiIGxvY2F0b3I9Ijc6MS03OjYwIiBsb2NhbElkZW50aWZpZXI9IlJvdXRpbmVzIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU1JvdXRpbmVzIiB2ZXJzaW9uPSIyMDIyLjEuMCI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjQiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+T3Bpb2lkQ0RTUm91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IHZlcnNpb24gJzIwMjIuMS4wJyBjYWxsZWQgUm91dGluZXM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNSIgbG9jYXRvcj0iMTA6MS0xMDo1OCIgbG9jYWxJZGVudGlmaWVyPSJNTUVDYWxjdWxhdG9yIiBwYXRoPSJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL01NRUNhbGN1bGF0b3IiIHZlcnNpb249IjMuMC4wIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNSI+CiAgICAgICAgICAgICAgIDxhOnM+LyppbmNsdWRlIGZoaXIuY2RjLiZxdW90O29waW9pZC1tbWUtcjQmcXVvdDsuTU1FQ2FsY3VsYXRvciB2ZXJzaW9uICczLjAuMCcgY2FsbGVkIE1NRUNhbGN1bGF0b3IKICovCmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+TU1FQ2FsY3VsYXRvcjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnMy4wLjAnIGNhbGxlZCBNTUVDYWxjdWxhdG9yPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L2luY2x1ZGVzPgogICA8cGFyYW1ldGVycz4KICAgICAgPGRlZiBsb2NhbElkPSI4IiBsb2NhdG9yPSI1NzoxLTU3OjU0IiBuYW1lPSJDb250ZXh0UHJlc2NyaXB0aW9ucyIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjgiPgogICAgICAgICAgICAgICA8YTpzPi8qCioqCioqICBSZWNvbW1lbmRhdGlvbiAjNAoqKiAgICBXaGVuIG9waW9pZHMgYXJlIGluaXRpYXRlZCBmb3Igb3Bpb2lkLW5hw692ZSBwYXRpZW50cyB3aXRoIGFjdXRlLCBzdWJhY3V0ZSwgb3IgY2hyb25pYyBwYWluLCAKKiogICAgY2xpbmljaWFucyBzaG91bGQgcHJlc2NyaWJlIHRoZSBsb3dlc3QgZWZmZWN0aXZlIGRvc2FnZS4gSWYgb3Bpb2lkcyBhcmUgY29udGludWVkIGZvciAKKiogICAgc3ViYWN1dGUgb3IgY2hyb25pYyBwYWluLCBjbGluaWNpYW5zIHNob3VsZCB1c2UgY2F1dGlvbiB3aGVuIHByZXNjcmliaW5nIG9waW9pZHMgYXQgYW55IGRvc2FnZSwgCioqICAgIHNob3VsZCBjYXJlZnVsbHkgZXZhbHVhdGUgaW5kaXZpZHVhbCBiZW5lZml0cyBhbmQgcmlza3Mgd2hlbiBjb25zaWRlcmluZyBpbmNyZWFzaW5nIGRvc2FnZSwgYW5kIAoqKiAgICBzaG91bGQgYXZvaWQgaW5jcmVhc2luZyBkb3NhZ2UgYWJvdmUgbGV2ZWxzIGxpa2VseSB0byB5aWVsZCBkaW1pbmlzaGluZyByZXR1cm5zIGluIGJlbmVmaXRzIAoqKiAgICByZWxhdGl2ZSB0byByaXNrcyB0byBwYXRpZW50cyAocmVjb21tZW5kYXRpb24gY2F0ZWdvcnk6IEE7IGV2aWRlbmNlIHR5cGU6IDMpCioqICBSZWNvbW1lbmRhdGlvbiAjNQoqKiAgICBGb3IgcGF0aWVudHMgYWxyZWFkeSByZWNlaXZpbmcgb3Bpb2lkIHRoZXJhcHksIGNsaW5pY2lhbnMgc2hvdWxkIGNhcmVmdWxseSB3ZWlnaCBiZW5lZml0cyBhbmQgCioqICAgIHJpc2tzIGFuZCBleGVyY2lzZSBjYXJlIHdoZW4gY2hhbmdpbmcgb3Bpb2lkIGRvc2FnZS4gSWYgYmVuZWZpdHMgb3V0d2VpZ2ggcmlza3Mgb2YgY29udGludWVkIAoqKiAgICBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgd29yayBjbG9zZWx5IHdpdGggcGF0aWVudHMgdG8gb3B0aW1pemUgbm9ub3Bpb2lkIHRoZXJhcGllcyAKKiogICAgd2hpbGUgY29udGludWluZyBvcGlvaWQgdGhlcmFweS4gSWYgYmVuZWZpdHMgZG8gbm90IG91dHdlaWdoIHJpc2tzIG9mIGNvbnRpbnVlZCBvcGlvaWQgdGhlcmFweSwgCioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIG9wdGltaXplIG90aGVyIHRoZXJhcGllcyBhbmQgd29yayBjbG9zZWx5IHdpdGggcGF0aWVudHMgdG8gZ3JhZHVhbGx5IHRhcGVyIHRvIAoqKiAgICBsb3dlciBkb3NhZ2VzIG9yLCBpZiB3YXJyYW50ZWQgYmFzZWQgb24gdGhlIGluZGl2aWR1YWwgY2lyY3Vtc3RhbmNlcyBvZiB0aGUgcGF0aWVudCwgYXBwcm9wcmlhdGVseSAKKiogICAgdGFwZXIgYW5kIGRpc2NvbnRpbnVlIG9waW9pZHMuIFVubGVzcyB0aGVyZSBhcmUgaW5kaWNhdGlvbnMgb2YgYSBsaWZlLXRocmVhdGVuaW5nIGlzc3VlIHN1Y2ggYXMgCioqICAgIHdhcm5pbmcgc2lnbnMgb2YgaW1wZW5kaW5nIG92ZXJkb3NlIChlLmcuLCBjb25mdXNpb24sIHNlZGF0aW9uLCBvciBzbHVycmVkIHNwZWVjaCksIG9waW9pZCB0aGVyYXB5IAoqKiAgICBzaG91bGQgbm90IGJlIGRpc2NvbnRpbnVlZCBhYnJ1cHRseSwgYW5kIGNsaW5pY2lhbnMgc2hvdWxkIG5vdCByYXBpZGx5IHJlZHVjZSBvcGlvaWQgZG9zYWdlcyBmcm9tIAoqKiAgICBoaWdoZXIgZG9zYWdlcyAocmVjb21tZW5kYXRpb24gY2F0ZWdvcnk6IEI7IGV2aWRlbmNlIHR5cGU6IDQpLgoqKgoqKiAgV2hlbgoqKiAgICBQcm92aWRlciBpcyBwcmVzY3JpYmluZyBhbiBvcGlvaWQgYW5hbGdlc2ljIHdpdGggYW1idWxhdG9yeSBtaXN1c2UgcG90ZW50aWFsIGluIHRoZSBvdXRwYXRpZW50IHNldHRpbmcKKiogICAgT3Bpb2lkIHJldmlldyBpcyB1c2VmdWwgZm9yIHRoaXMgcGF0aWVudDoKKiogICAgICBQYXRpZW50IGlzIDE4IG9yIG92ZXIKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgZXZpZGVuY2Ugb2Ygc2lja2xlIGNlbGwgZGlzZWFzZQoqKiAgICAgIFBhdGllbnQgZG9lcyBub3QgaGF2ZSBmaW5kaW5ncyBpbmRpY2F0aW5nIGxpbWl0ZWQgbGlmZSBleHBlY3RhbmN5CioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIG9yZGVycyBmb3IgdGhlcmFwaWVzIGluZGljYXRpbmcgZW5kIG9mIGxpZmUgY2FyZQoqKiAgICAgIFBhdGllbnQgaXMgbm90IHVuZGVyZ29pbmcgYWN0aXZlIGNhbmNlciB0cmVhdG1lbnQ6CioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhbiBvbmNvbG9neSBzcGVjaWFsaXN0IHByZXNlbnQsIG9yCioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhIENEQyBtYWxpZ25hbnQgY2FuY2VyIGNvbmRpdGlvbiBkaWFnbm9zaXMKKiogICAgICBQYXRpZW50IGRvZXMgbm90IGhhdmUgY29uZGl0aW9ucyBsaWtlbHkgdGVybWluYWwgZm9yIG9waW9pZCBwcmVzY3JpYmluZyBwcmVzZW50CioqICAgIFBhdGllbnQgTW9ycGhpbmUgTWlsbGlncmFtIEVxdWl2YWxlbnQgKE1NRSkgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDUwCioqICBUaGVuCioqICAgIENhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXM6CioqICAgICAgRG9jdW1lbnQgLSBXaWxsIHByZXNjcmliZSBhIGxvd2VyIGRvc2UKKiogICAgICBEb2N1bWVudCAtIFdpbGwgY2FsaWJyYXRlIGEgZ3JhZHVhbCBjaGFuZ2UgaW4gZG9zYWdlCioqICAgICAgU25vb3plIC0gQmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAzIG1vbnRocwoqKiAgICAgIFNub296ZSAtIFNob3J0IHRlcm0gYmVuZWZpdHMgb3V0d2VpZ2ggcmlza3MsIHNub296ZSAxIG1vbnRoCioqICAgICAgU25vb3plIC0gTi9BIGFkZCBjb21tZW50LCBzbm9vemUgMyBtb250aHMKKioKKi8KCi8vIE1FVEE6IFBsYW4gRGVmaW5pdGlvbjogaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy1yNC9QbGFuRGVmaW5pdGlvbi9vcGlvaWQtY2RzLTA0LTA1CgpwYXJhbWV0ZXIgQ29udGV4dFByZXNjcmlwdGlvbnMgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+TGlzdCZsdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5NZWRpY2F0aW9uUmVxdWVzdDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4+PC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSI3IiBsb2NhdG9yPSI1NzozMi01Nzo1NCIgeHNpOnR5cGU9Ikxpc3RUeXBlU3BlY2lmaWVyIj4KICAgICAgICAgICAgPGVsZW1lbnRUeXBlIGxvY2FsSWQ9IjYiIGxvY2F0b3I9IjU3OjM3LTU3OjUzIiBuYW1lPSJmaGlyOk1lZGljYXRpb25SZXF1ZXN0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgIDwvcGFyYW1ldGVyVHlwZVNwZWNpZmllcj4KICAgICAgPC9kZWY+CiAgIDwvcGFyYW1ldGVycz4KICAgPGNvbnRleHRzPgogICAgICA8ZGVmIGxvY2F0b3I9IjU5OjEtNTk6MTUiIG5hbWU9IlBhdGllbnQiLz4KICAgPC9jb250ZXh0cz4KICAgPHN0YXRlbWVudHM+CiAgICAgIDxkZWYgbG9jYXRvcj0iNTk6MS01OToxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNTk6MS01OToxNSIgZGF0YVR5cGU9ImZoaXI6UGF0aWVudCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjE4IiBsb2NhdG9yPSI2NToxLTY3Ojk0IiBuYW1lPSJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMTgiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjE3Ij4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Db21tb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjEyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbnRleHRQcmVzY3JpcHRpb25zPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiApPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+d2hlcmUgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Sb3V0aW5lczwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMTYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/JnF1b3Q7KCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIxNSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+QW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMTciIGxvY2F0b3I9IjY2OjMtNjc6OTQiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMTMiIGxvY2F0b3I9IjY2OjMtNjY6MTIxIiBhbGlhcz0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjEyIiBsb2NhdG9yPSI2NjozLTY2OjkyIiBuYW1lPSJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIgbGlicmFyeU5hbWU9IkNvbW1vbiIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTEiIGxvY2F0b3I9IjY2OjY5LTY2Ojg4IiBuYW1lPSJDb250ZXh0UHJlc2NyaXB0aW9ucyIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMTYiIGxvY2F0b3I9IjY3OjUtNjc6OTQiIG5hbWU9IklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjE1IiBsb2NhdG9yPSI2Nzo2NS02Nzo5MiIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjkiIGxvY2F0b3I9IjcyOjEtNzk6MyIgbmFtZT0iVG90YWwgTU1FIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjkiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtUb3RhbCBNTUUmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjgiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPk1NRUNhbGN1bGF0b3I8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub3RhbE1NRSgKICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPigKICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjE5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgIHVuaW9uIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyMSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7QWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgICApPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Um91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBTdWJhY3V0ZSBvciBDaHJvbmljIFBhaW4gUHJlc2NyaXB0aW9uPyZxdW90OyggPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkFtYnVsYXRvcnlPcGlvaWRQcmVzY3JpcHRpb248L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ICk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+CiAgKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4IiBsb2NhdG9yPSI3MzozLTc5OjMiIG5hbWU9IlRvdGFsTU1FIiBsaWJyYXJ5TmFtZT0iTU1FQ2FsY3VsYXRvciIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjciIGxvY2F0b3I9Ijc0OjUtNzg6OTYiIHhzaTp0eXBlPSJRdWVyeSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMjMiIGxvY2F0b3I9Ijc0OjUtNzc6MzQiIGFsaWFzPSJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjIiIGxvY2F0b3I9Ijc0OjUtNzc6NSIgeHNpOnR5cGU9IlVuaW9uIj4KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMTkiIGxvY2F0b3I9Ijc1OjctNzU6ODQiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjIxIiBsb2NhdG9yPSI3NjoxNS03Njo1MCIgbmFtZT0iQWN0aXZlIEFtYnVsYXRvcnkgT3Bpb2lkIFJ4IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICA8d2hlcmUgbG9jYWxJZD0iMjYiIGxvY2F0b3I9Ijc4OjctNzg6OTYiIG5hbWU9IklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI1IiBsb2NhdG9yPSI3ODo2Ny03ODo5NCIgbmFtZT0iQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+CiAgICAgICAgICAgICAgIDwvd2hlcmU+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNCIgbG9jYXRvcj0iNjE6MS02MTo0MyIgbmFtZT0iVGFwZXIgTm93IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMzQiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtUYXBlciBOb3cmcXVvdDs6IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzEiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhbHVlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMiI+ID49IDkwPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIzMyIgbG9jYXRvcj0iNjE6MjEtNjE6NDMiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbmFtZT0idDpEZWNpbWFsIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbmFtZT0idDpEZWNpbWFsIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMxIiBsb2NhdG9yPSI2MToyMS02MTozNyIgcGF0aD0idmFsdWUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzAiIGxvY2F0b3I9IjYxOjIxLTYxOjMxIiBuYW1lPSJUb3RhbCBNTUUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IlRvRGVjaW1hbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyIiBsb2NhdG9yPSI2MTo0Mi02MTo0MyIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSI5MCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM5IiBsb2NhdG9yPSI2MzoxLTYzOjUwIiBuYW1lPSJDb25zaWRlciBUYXBlcmluZyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjM5Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7Q29uc2lkZXIgVGFwZXJpbmcmcXVvdDs6IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhbHVlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNyI+ICZsdDsgOTA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM4IiBsb2NhdG9yPSI2MzoyOS02Mzo1MCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIG5hbWU9InQ6RGVjaW1hbCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIG5hbWU9InQ6RGVjaW1hbCIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNiIgbG9jYXRvcj0iNjM6MjktNjM6NDUiIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPgogICAgICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjM1IiBsb2NhdG9yPSI2MzoyOS02MzozOSIgbmFtZT0iVG90YWwgTU1FIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJUb0RlY2ltYWwiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNyIgbG9jYXRvcj0iNjM6NDktNjM6NTAiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iOTAiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI0MiIgbG9jYXRvcj0iNjk6MS03MDo5MCIgbmFtZT0iUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI0MiI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O1BhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjQxIj4KICAgICAgICAgICAgICAgICAgPGE6cz5leGlzdHM8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+KCA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9ucyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gKTwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjQxIiBsb2NhdG9yPSI3MDozLTcwOjkwIiB4c2k6dHlwZT0iRXhpc3RzIj4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDAiIGxvY2F0b3I9IjcwOjktNzA6OTAiIG5hbWU9IkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTEiIGxvY2F0b3I9IjgxOjEtODQ6MzUiIG5hbWU9IkluY2x1c2lvbiBDcml0ZXJpYSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjUxIj4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7SW5jbHVzaW9uIENyaXRlcmlhJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjUwIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDMiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1BhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSI0NCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+Um91dGluZXM8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjQ1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBPcGlvaWQgUmV2aWV3IFVzZWZ1bD8mcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI0OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1RvdGFsIE1NRSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4gPj0gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNDgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPjUwICd7TU1FfS9kJzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1MCIgbG9jYXRvcj0iODI6My04NDozNSIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjQ2IiBsb2NhdG9yPSI4MjozLTgzOjQzIiB4c2k6dHlwZT0iQW5kIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDMiIGxvY2F0b3I9IjgyOjMtODI6ODEiIG5hbWU9IlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSI0NSIgbG9jYXRvcj0iODM6OS04Mzo0MyIgbmFtZT0iSXMgT3Bpb2lkIFJldmlldyBVc2VmdWw/IiBsaWJyYXJ5TmFtZT0iUm91dGluZXMiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDkiIGxvY2F0b3I9Ijg0OjktODQ6MzUiIHhzaTp0eXBlPSJHcmVhdGVyT3JFcXVhbCI+CiAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbmFtZT0idDpRdWFudGl0eSIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIG5hbWU9InQ6UXVhbnRpdHkiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDciIGxvY2F0b3I9Ijg0OjktODQ6MTkiIG5hbWU9IlRvdGFsIE1NRSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNDgiIGxvY2F0b3I9Ijg0OjI0LTg0OjM1IiB2YWx1ZT0iNTAiIHVuaXQ9IntNTUV9L2QiIHhzaTp0eXBlPSJRdWFudGl0eSIvPgogICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iNTQiIGxvY2F0b3I9Ijg2OjEtODc6MzMiIG5hbWU9IkV4Y2x1c2lvbiBDcml0ZXJpYSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjU0Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7RXhjbHVzaW9uIENyaXRlcmlhJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjUzIj4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+Q29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7RW5kIG9mIExpZmUgQXNzZXNzbWVudCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjUzIiBsb2NhdG9yPSI4NzozLTg3OjMzIiBuYW1lPSJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI1OSIgbG9jYXRvcj0iODk6MS05MTozMiIgbmFtZT0iSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI1OSI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O0lzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjU4Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI1NSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7SW5jbHVzaW9uIENyaXRlcmlhJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgYW5kIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjU3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz5ub3QgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0V4Y2x1c2lvbiBDcml0ZXJpYSZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSI1OCIgbG9jYXRvcj0iOTA6My05MTozMiIgeHNpOnR5cGU9IkFuZCI+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU1IiBsb2NhdG9yPSI5MDozLTkwOjIyIiBuYW1lPSJJbmNsdXNpb24gQ3JpdGVyaWEiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjU3IiBsb2NhdG9yPSI5MTo5LTkxOjMyIiB4c2k6dHlwZT0iTm90Ij4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNTYiIGxvY2F0b3I9IjkxOjEzLTkxOjMyIiBuYW1lPSJFeGNsdXNpb24gQ3JpdGVyaWEiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2NCIgbG9jYXRvcj0iOTM6MS05NjoxMSIgbmFtZT0iR2V0IEluZGljYXRvciIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjY0Ij4KICAgICAgICAgICAgICAgPGE6cz5kZWZpbmUgJnF1b3Q7R2V0IEluZGljYXRvciZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2MyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgdGhlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2MSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J3dhcm5pbmcnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjYyIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjYzIiBsb2NhdG9yPSI5NDozLTk2OjExIiB4c2k6dHlwZT0iSWYiPgogICAgICAgICAgICA8Y29uZGl0aW9uIGxvY2FsSWQ9IjYwIiBsb2NhdG9yPSI5NDo2LTk0OjM2IiBuYW1lPSJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPHRoZW4gbG9jYWxJZD0iNjEiIGxvY2F0b3I9Ijk1OjEwLTk1OjE4IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0id2FybmluZyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPGVsc2UgYXNUeXBlPSJ0OlN0cmluZyIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjIiIGxvY2F0b3I9Ijk2OjgtOTY6MTEiIHhzaTp0eXBlPSJOdWxsIi8+CiAgICAgICAgICAgIDwvZWxzZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSI2OSIgbG9jYXRvcj0iOTg6MS0xMDI6MTEiIG5hbWU9IkdldCBTdW1tYXJ5IiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iNjkiPgogICAgICAgICAgICAgICA8YTpzPmRlZmluZSAmcXVvdDtHZXQgU3VtbWFyeSZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSI2OCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+aWYgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iNjUiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0lzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGU/JnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgdGhlbgogICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSI2NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+J0NhbGlicmF0ZSB0byBMb3dlc3QgT3Bpb2lkIERvc2UgTmVlZGVkIGZvciBFeHBlY3RlZCBSZXN1bHRzIGFuZCBFeGVyY2lzZSBDYXJlIFdoZW4gQ2hhbmdpbmcgT3Bpb2lkIERvc2FnZXMnPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjY3Ij4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjY4IiBsb2NhdG9yPSI5OTozLTEwMjoxMSIgeHNpOnR5cGU9IklmIj4KICAgICAgICAgICAgPGNvbmRpdGlvbiBsb2NhbElkPSI2NSIgbG9jYXRvcj0iOTk6Ni05OTozNiIgbmFtZT0iSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjY2IiBsb2NhdG9yPSIxMDE6Ny0xMDE6MTE0IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iQ2FsaWJyYXRlIHRvIExvd2VzdCBPcGlvaWQgRG9zZSBOZWVkZWQgZm9yIEV4cGVjdGVkIFJlc3VsdHMgYW5kIEV4ZXJjaXNlIENhcmUgV2hlbiBDaGFuZ2luZyBPcGlvaWQgRG9zYWdlcyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPGVsc2UgYXNUeXBlPSJ0OlN0cmluZyIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNjciIGxvY2F0b3I9IjEwMjo4LTEwMjoxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9Ijc0IiBsb2NhdG9yPSIxMDQ6MS0xMjc6MTEiIG5hbWU9IkdldCBEZXRhaWwiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSI3NCI+CiAgICAgICAgICAgICAgIDxhOnM+ZGVmaW5lICZxdW90O0dldCBEZXRhaWwmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iNzMiPgogICAgICAgICAgICAgICAgICA8YTpzPmlmIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIHRoZW4KICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcxIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4nV2hlbiBvcGlvaWQgdGhlcmFweSBpcyBjb25zaWRlcmVkIGFwcHJvcHJpYXRlLCBjYWxpYnJhdGUgb3Bpb2lkIGRvc2FnZXMgdG8gbG93ZXN0IGRvc2UgbmVlZGVkIHRvIGFjaGlldmUgZXhwZWN0ZWQgZWZmZWN0cy4gRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIHJpc2tzIGFuZCBleGVyY2lzZSBjYXJlIHdoZW4gY2hhbmdpbmcgb3Bpb2lkIGRvc2FnZS4KCltGb3IgZ3VpZGFuY2UgaW4gZGV0ZXJtaW5pbmcgdGhlIGxvd2VzdCBlZmZlY3RpdmUgb3Bpb2lkIGRvc2FnZSwgc2VlIFJlY29tbWVuZGF0aW9uIDQgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9bG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zYWdlLi0sRm9yJTIwcGF0aWVudHMlMjBub3QlMjBhbHJlYWR5JTIwdGFraW5nJTIwb3Bpb2lkcyUyQyUyMHRoZSUyMGxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2UlMjBjYW4saW50ZW5kZWQlMjB0byUyMGJlJTIwZ3VpZGVwb3N0cyUyMHRvJTIwaGVscCUyMGluZm9ybSUyMGNsaW5pY2lhbiUyRHBhdGllbnQlMjBkZWNpc2lvbiUyRG1ha2luZy4sLVN1cHBvcnRpbmclMjBSYXRpb25hbGUpCgpbRm9yIHBhdGllbnRzIHdobyBoYXZlIHJlY2VpdmVkIG9waW9pZCB0aGVyYXB5IGZvciBsb25nZXIgZHVyYXRpb25zIG9mIHRpbWUsIGlmIHRhcGVyaW5nLCBjb25zaWRlciB3b3JraW5nIGNsb3NlbHkgd2l0aCB0aGUgcGF0aWVudCB0byBncmFkdWFsbHkgdGFwZXIgZG9zYWdlcyAobm8gbW9yZSB0aGFuIDEwJSBwZXIgbW9udGgpXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwcGF0aWVudHMlMjBoYXZlJTIwYmVlbiUyMHRha2luZyUyMG9waW9pZHMlMjBmb3IlMjBsb25nZXIlMjBkdXJhdGlvbnMlMjAoZS5nLiUyQyUyMGZvciUyMCVFMiU4OSVBNTElMjB5ZWFyKSUyQyUyMHRhcGVycyUyMG9mJTIwMTAlMjUlMjBwZXIlMjBtb250aCUyMG9yJTIwc2xvd2VyJTIwYXJlJTIwbGlrZWx5JTIwdG8lMjBiZSUyMGJldHRlciUyMHRvbGVyYXRlZCUyMHRoYW4lMjBtb3JlJTIwcmFwaWQlMjB0YXBlcnMuKQoKRm9yIGEgdGFwZXJpbmcgY2FsY3VsYXRvciwgZ28gdG8gW2h0dHBzOi8vYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbF0oaHR0cHM6Ly93d3cuYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbCkKCltGb3IgbW9yZSBndWlkYW5jZSByZWdhcmRpbmcgdGFwZXJpbmcsIHBsZWFzZSBzZWXCoFJlY29tbWVuZGF0aW9uIDUgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZSBmb3IgUHJlc2NyaWJpbmcgT3Bpb2lkcyBmb3IgUGFpbl0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMGJlbmVmaXRzJTIwKGluY2x1ZGluZyw2JTIwYW5kJTIwNykuKQoKKipNTUUgQ2FsY3VsYXRvciBDYXV0aW9ucyoqCjEpIEFsbCBkb3NlcyBhcmUgaW4gbWcvZGF5IGV4Y2VwdCBmb3IgZmVudGFueWwsIHdoaWNoIGlzIG1jZy9oci4gCjIpIEVxdWlhbmFsZ2VzaWMgZG9zZSBjb252ZXJzaW9ucyBhcmUgb25seSBlc3RpbWF0ZXMgYW5kIGNhbm5vdCBhY2NvdW50IGZvciBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIGdlbmV0aWNzIGFuZCBwaGFybWFjb2tpbmV0aWNzLiAKMykgRG8gbm90IHVzZSB0aGUgY2FsY3VsYXRlZCBkb3NlIGluIE1NRXMgdG8gZGV0ZXJtaW5lIHRoZSBkb3NlcyB0byB1c2Ugd2hlbiBjb252ZXJ0aW5nIG9uZSBvcGlvaWQgdG8gYW5vdGhlcjsgd2hlbiBjb252ZXJ0aW5nIG9waW9pZHMsIHRoZSBuZXcgb3Bpb2lkIGlzIHR5cGljYWxseSBkb3NlZCBhdCBhIHN1YnN0YW50aWFsbHkgbG93ZXIgZG9zZSB0aGFuIHRoZSBjYWxjdWxhdGVkIE1NRSBkb3NlIHRvIGF2b2lkIG92ZXJkb3NlIGJlY2F1c2Ugb2YgaW5jb21wbGV0ZSBjcm9zcy10b2xlcmFuY2UgYW5kIGluZGl2aWR1YWwgdmFyaWFiaWxpdHkgaW4gb3Bpb2lkIHBoYXJtYWNva2luZXRpY3MuIENvbnN1bHQgdGhlIEZEQSBhcHByb3ZlZCBwcm9kdWN0IGxhYmVsaW5nIGZvciBzcGVjaWZpYyBndWlkYW5jZSBvbiBtZWRpY2F0aW9ucy4gCjQpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCBtZXRoYWRvbmUgZG9zZSBjb252ZXJzaW9ucyBiZWNhdXNlIG1ldGhhZG9uZSBoYXMgYSBsb25nIGFuZCB2YXJpYWJsZSBoYWxmLWxpZmUsIGFuZCBwZWFrIHJlc3BpcmF0b3J5IGRlcHJlc3NhbnQgZWZmZWN0IG9jY3VycyBsYXRlciBhbmQgbGFzdHMgbG9uZ2VyIHRoYW4gcGVhayBhbmFsZ2VzaWMgZWZmZWN0LiAKNSkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIHRyYW5zZGVybWFsIGZlbnRhbnlsIGJlY2F1c2UgaXQgaXMgZG9zZWQgaW4gbWNnL2hyIGluc3RlYWQgb2YgbWcvZGF5LCBhbmQgaXRzIGFic29ycHRpb24gaXMgYWZmZWN0ZWQgYnkgaGVhdCBhbmQgb3RoZXIgZmFjdG9ycy4gCjYpIEJ1cHJlbm9ycGhpbmUgcHJvZHVjdHMgYXBwcm92ZWQgZm9yIHRoZSB0cmVhdG1lbnQgb2YgcGFpbiBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSB0YWJsZSBiZWNhdXNlIG9mIHRoZWlyIHBhcnRpYWwgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eSBhbmQgcmVzdWx0YW50IGNlaWxpbmcgZWZmZWN0cyBjb21wYXJlZCB3aXRoIGZ1bGwgwrUtcmVjZXB0b3IgYWdvbmlzdHMuIAo3KSBUaGVzZSBjb252ZXJzaW9uIGZhY3RvcnMgc2hvdWxkIG5vdCBiZSBhcHBsaWVkIHRvIGRvc2FnZSBkZWNpc2lvbnMgcmVsYXRlZCB0byB0aGUgbWFuYWdlbWVudCBvZiBvcGlvaWQgdXNlIGRpc29yZGVyLgrigKAgVGFwZW50YWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0YXBlbnRhZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuCsKnIFRyYW1hZG9sIGlzIGEgwrUtcmVjZXB0b3IgYWdvbmlzdCBhbmQgbm9yZXBpbmVwaHJpbmUgYW5kIHNlcm90b25pbiByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdHJhbWFkb2wgaXMgYXNzb2NpYXRlZCB3aXRoIG92ZXJkb3NlIGluIHRoZSBzYW1lIGRvc2UtZGVwZW5kZW50IG1hbm5lciBhcyBvYnNlcnZlZCB3aXRoIG1lZGljYXRpb25zIHRoYXQgYXJlIHNvbGVseSDCtS1yZWNlcHRvciBhZ29uaXN0cy4nPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjcyIj4KICBlbHNlIG51bGw8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjczIiBsb2NhdG9yPSIxMDU6My0xMjc6MTEiIHhzaTp0eXBlPSJJZiI+CiAgICAgICAgICAgIDxjb25kaXRpb24gbG9jYWxJZD0iNzAiIGxvY2F0b3I9IjEwNTo2LTEwNTozNiIgbmFtZT0iSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDx0aGVuIGxvY2FsSWQ9IjcxIiBsb2NhdG9yPSIxMDc6NS0xMDc6MzYwOCIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9IldoZW4gb3Bpb2lkIHRoZXJhcHkgaXMgY29uc2lkZXJlZCBhcHByb3ByaWF0ZSwgY2FsaWJyYXRlIG9waW9pZCBkb3NhZ2VzIHRvIGxvd2VzdCBkb3NlIG5lZWRlZCB0byBhY2hpZXZlIGV4cGVjdGVkIGVmZmVjdHMuIEZvciBwYXRpZW50cyBhbHJlYWR5IHJlY2VpdmluZyBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgY2FyZWZ1bGx5IHdlaWdoIGJlbmVmaXRzIGFuZCByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuJiN4YTsmI3hhO1tGb3IgZ3VpZGFuY2UgaW4gZGV0ZXJtaW5pbmcgdGhlIGxvd2VzdCBlZmZlY3RpdmUgb3Bpb2lkIGRvc2FnZSwgc2VlIFJlY29tbWVuZGF0aW9uIDQgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9bG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zYWdlLi0sRm9yJTIwcGF0aWVudHMlMjBub3QlMjBhbHJlYWR5JTIwdGFraW5nJTIwb3Bpb2lkcyUyQyUyMHRoZSUyMGxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2UlMjBjYW4saW50ZW5kZWQlMjB0byUyMGJlJTIwZ3VpZGVwb3N0cyUyMHRvJTIwaGVscCUyMGluZm9ybSUyMGNsaW5pY2lhbiUyRHBhdGllbnQlMjBkZWNpc2lvbiUyRG1ha2luZy4sLVN1cHBvcnRpbmclMjBSYXRpb25hbGUpJiN4YTsmI3hhO1tGb3IgcGF0aWVudHMgd2hvIGhhdmUgcmVjZWl2ZWQgb3Bpb2lkIHRoZXJhcHkgZm9yIGxvbmdlciBkdXJhdGlvbnMgb2YgdGltZSwgaWYgdGFwZXJpbmcsIGNvbnNpZGVyIHdvcmtpbmcgY2xvc2VseSB3aXRoIHRoZSBwYXRpZW50IHRvIGdyYWR1YWxseSB0YXBlciBkb3NhZ2VzIChubyBtb3JlIHRoYW4gMTAlIHBlciBtb250aCldKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBwYXRpZW50cyUyMGhhdmUlMjBiZWVuJTIwdGFraW5nJTIwb3Bpb2lkcyUyMGZvciUyMGxvbmdlciUyMGR1cmF0aW9ucyUyMChlLmcuJTJDJTIwZm9yJTIwJUUyJTg5JUE1MSUyMHllYXIpJTJDJTIwdGFwZXJzJTIwb2YlMjAxMCUyNSUyMHBlciUyMG1vbnRoJTIwb3IlMjBzbG93ZXIlMjBhcmUlMjBsaWtlbHklMjB0byUyMGJlJTIwYmV0dGVyJTIwdG9sZXJhdGVkJTIwdGhhbiUyMG1vcmUlMjByYXBpZCUyMHRhcGVycy4pJiN4YTsmI3hhO0ZvciBhIHRhcGVyaW5nIGNhbGN1bGF0b3IsIGdvIHRvIFtodHRwczovL2FnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWxdKGh0dHBzOi8vd3d3LmFnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWwpJiN4YTsmI3hhO1tGb3IgbW9yZSBndWlkYW5jZSByZWdhcmRpbmcgdGFwZXJpbmcsIHBsZWFzZSBzZWXCoFJlY29tbWVuZGF0aW9uIDUgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZSBmb3IgUHJlc2NyaWJpbmcgT3Bpb2lkcyBmb3IgUGFpbl0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMGJlbmVmaXRzJTIwKGluY2x1ZGluZyw2JTIwYW5kJTIwNykuKSYjeGE7JiN4YTsqKk1NRSBDYWxjdWxhdG9yIENhdXRpb25zKiomI3hhOzEpIEFsbCBkb3NlcyBhcmUgaW4gbWcvZGF5IGV4Y2VwdCBmb3IgZmVudGFueWwsIHdoaWNoIGlzIG1jZy9oci4gJiN4YTsyKSBFcXVpYW5hbGdlc2ljIGRvc2UgY29udmVyc2lvbnMgYXJlIG9ubHkgZXN0aW1hdGVzIGFuZCBjYW5ub3QgYWNjb3VudCBmb3IgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBnZW5ldGljcyBhbmQgcGhhcm1hY29raW5ldGljcy4gJiN4YTszKSBEbyBub3QgdXNlIHRoZSBjYWxjdWxhdGVkIGRvc2UgaW4gTU1FcyB0byBkZXRlcm1pbmUgdGhlIGRvc2VzIHRvIHVzZSB3aGVuIGNvbnZlcnRpbmcgb25lIG9waW9pZCB0byBhbm90aGVyOyB3aGVuIGNvbnZlcnRpbmcgb3Bpb2lkcywgdGhlIG5ldyBvcGlvaWQgaXMgdHlwaWNhbGx5IGRvc2VkIGF0IGEgc3Vic3RhbnRpYWxseSBsb3dlciBkb3NlIHRoYW4gdGhlIGNhbGN1bGF0ZWQgTU1FIGRvc2UgdG8gYXZvaWQgb3ZlcmRvc2UgYmVjYXVzZSBvZiBpbmNvbXBsZXRlIGNyb3NzLXRvbGVyYW5jZSBhbmQgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBvcGlvaWQgcGhhcm1hY29raW5ldGljcy4gQ29uc3VsdCB0aGUgRkRBIGFwcHJvdmVkIHByb2R1Y3QgbGFiZWxpbmcgZm9yIHNwZWNpZmljIGd1aWRhbmNlIG9uIG1lZGljYXRpb25zLiAmI3hhOzQpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCBtZXRoYWRvbmUgZG9zZSBjb252ZXJzaW9ucyBiZWNhdXNlIG1ldGhhZG9uZSBoYXMgYSBsb25nIGFuZCB2YXJpYWJsZSBoYWxmLWxpZmUsIGFuZCBwZWFrIHJlc3BpcmF0b3J5IGRlcHJlc3NhbnQgZWZmZWN0IG9jY3VycyBsYXRlciBhbmQgbGFzdHMgbG9uZ2VyIHRoYW4gcGVhayBhbmFsZ2VzaWMgZWZmZWN0LiAmI3hhOzUpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCB0cmFuc2Rlcm1hbCBmZW50YW55bCBiZWNhdXNlIGl0IGlzIGRvc2VkIGluIG1jZy9ociBpbnN0ZWFkIG9mIG1nL2RheSwgYW5kIGl0cyBhYnNvcnB0aW9uIGlzIGFmZmVjdGVkIGJ5IGhlYXQgYW5kIG90aGVyIGZhY3RvcnMuICYjeGE7NikgQnVwcmVub3JwaGluZSBwcm9kdWN0cyBhcHByb3ZlZCBmb3IgdGhlIHRyZWF0bWVudCBvZiBwYWluIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHRhYmxlIGJlY2F1c2Ugb2YgdGhlaXIgcGFydGlhbCDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5IGFuZCByZXN1bHRhbnQgY2VpbGluZyBlZmZlY3RzIGNvbXBhcmVkIHdpdGggZnVsbCDCtS1yZWNlcHRvciBhZ29uaXN0cy4gJiN4YTs3KSBUaGVzZSBjb252ZXJzaW9uIGZhY3RvcnMgc2hvdWxkIG5vdCBiZSBhcHBsaWVkIHRvIGRvc2FnZSBkZWNpc2lvbnMgcmVsYXRlZCB0byB0aGUgbWFuYWdlbWVudCBvZiBvcGlvaWQgdXNlIGRpc29yZGVyLiYjeGE74oCgIFRhcGVudGFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdGFwZW50YWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLiYjeGE7wqcgVHJhbWFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSBhbmQgc2Vyb3RvbmluIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0cmFtYWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgICAgPGVsc2UgYXNUeXBlPSJ0OlN0cmluZyIgeHNpOnR5cGU9IkFzIj4KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iNzIiIGxvY2F0b3I9IjEyNzo4LTEyNzoxMSIgeHNpOnR5cGU9Ik51bGwiLz4KICAgICAgICAgICAgPC9lbHNlPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"
},
{
"contentType" : "application/elm+json",
"data" : "ewogICAibGlicmFyeSIgOiB7CiAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAidHJhbnNsYXRvck9wdGlvbnMiIDogIkVuYWJsZUFubm90YXRpb25zLEVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iLAogICAgICAgICAic2lnbmF0dXJlTGV2ZWwiIDogIk92ZXJsb2FkcyIsCiAgICAgICAgICJ0eXBlIiA6ICJDcWxUb0VsbUluZm8iCiAgICAgIH0sIHsKICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICJyIiA6ICI3NCIsCiAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwibGlicmFyeSBPcGlvaWRDRFNSRUMwNEFuZDA1IHZlcnNpb24gJzIwMjIuMS4wJyIgXQogICAgICAgICAgICB9IF0KICAgICAgICAgfQogICAgICB9IF0sCiAgICAgICJpZGVudGlmaWVyIiA6IHsKICAgICAgICAgImlkIiA6ICJPcGlvaWRDRFNSRUMwNEFuZDA1IiwKICAgICAgICAgInN5c3RlbSIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcyIsCiAgICAgICAgICJ2ZXJzaW9uIiA6ICIyMDIyLjEuMCIKICAgICAgfSwKICAgICAgInNjaGVtYUlkZW50aWZpZXIiIDogewogICAgICAgICAiaWQiIDogInVybjpobDctb3JnOmVsbSIsCiAgICAgICAgICJ2ZXJzaW9uIiA6ICJyMSIKICAgICAgfSwKICAgICAgInVzaW5ncyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIlN5c3RlbSIsCiAgICAgICAgICAgICJ1cmkiIDogInVybjpobDctb3JnOmVsbS10eXBlczpyMSIKICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzOjEtMzoyNiIsCiAgICAgICAgICAgICJsb2NhbElkZW50aWZpZXIiIDogIkZISVIiLAogICAgICAgICAgICAidXJpIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwidXNpbmcgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJGSElSIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAnNC4wLjEnIiBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXQogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgImluY2x1ZGVzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNToxLTU6NTYiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJDb21tb24iLAogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9PcGlvaWRDRFNDb21tb24iLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiMjAyMi4xLjAiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIyIiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiT3Bpb2lkQ0RTQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInMjAyMi4xLjAnIiwiIGNhbGxlZCAiLCJDb21tb24iIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjMiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjoxLTY6NjIiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJDb25maWciLAogICAgICAgICAgICAicGF0aCIgOiAiaHR0cDovL2ZoaXIub3JnL2d1aWRlcy9jZGMvb3Bpb2lkLWNkcy9PcGlvaWRDRFNDb21tb25Db25maWciLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiMjAyMi4xLjAiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICIzIiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJpbmNsdWRlICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiT3Bpb2lkQ0RTQ29tbW9uQ29uZmlnIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInMjAyMi4xLjAnIiwiIGNhbGxlZCAiLCJDb25maWciIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNzoxLTc6NjAiLAogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJSb3V0aW5lcyIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL09waW9pZENEU1JvdXRpbmVzIiwKICAgICAgICAgICAgInZlcnNpb24iIDogIjIwMjIuMS4wIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiNCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk9waW9pZENEU1JvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgdmVyc2lvbiAiLCInMjAyMi4xLjAnIiwiIGNhbGxlZCAiLCJSb3V0aW5lcyIgXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDoxLTEwOjU4IiwKICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiTU1FQ2FsY3VsYXRvciIsCiAgICAgICAgICAgICJwYXRoIiA6ICJodHRwOi8vZmhpci5vcmcvZ3VpZGVzL2NkYy9vcGlvaWQtY2RzL01NRUNhbGN1bGF0b3IiLAogICAgICAgICAgICAidmVyc2lvbiIgOiAiMy4wLjAiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI1IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIvKmluY2x1ZGUgZmhpci5jZGMuXCJvcGlvaWQtbW1lLXI0XCIuTU1FQ2FsY3VsYXRvciB2ZXJzaW9uICczLjAuMCcgY2FsbGVkIE1NRUNhbGN1bGF0b3JcbiAqL1xuIiwiaW5jbHVkZSAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk1NRUNhbGN1bGF0b3IiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiB2ZXJzaW9uICIsIiczLjAuMCciLCIgY2FsbGVkICIsIk1NRUNhbGN1bGF0b3IiIF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdCiAgICAgICAgIH0gXQogICAgICB9LAogICAgICAicGFyYW1ldGVycyIgOiB7CiAgICAgICAgICJkZWYiIDogWyB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI4IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU3OjEtNTc6NTQiLAogICAgICAgICAgICAibmFtZSIgOiAiQ29udGV4dFByZXNjcmlwdGlvbnMiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjgiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi8qXG4qKlxuKiogIFJlY29tbWVuZGF0aW9uICM0XG4qKiAgICBXaGVuIG9waW9pZHMgYXJlIGluaXRpYXRlZCBmb3Igb3Bpb2lkLW5hw692ZSBwYXRpZW50cyB3aXRoIGFjdXRlLCBzdWJhY3V0ZSwgb3IgY2hyb25pYyBwYWluLCBcbioqICAgIGNsaW5pY2lhbnMgc2hvdWxkIHByZXNjcmliZSB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBkb3NhZ2UuIElmIG9waW9pZHMgYXJlIGNvbnRpbnVlZCBmb3IgXG4qKiAgICBzdWJhY3V0ZSBvciBjaHJvbmljIHBhaW4sIGNsaW5pY2lhbnMgc2hvdWxkIHVzZSBjYXV0aW9uIHdoZW4gcHJlc2NyaWJpbmcgb3Bpb2lkcyBhdCBhbnkgZG9zYWdlLCBcbioqICAgIHNob3VsZCBjYXJlZnVsbHkgZXZhbHVhdGUgaW5kaXZpZHVhbCBiZW5lZml0cyBhbmQgcmlza3Mgd2hlbiBjb25zaWRlcmluZyBpbmNyZWFzaW5nIGRvc2FnZSwgYW5kIFxuKiogICAgc2hvdWxkIGF2b2lkIGluY3JlYXNpbmcgZG9zYWdlIGFib3ZlIGxldmVscyBsaWtlbHkgdG8geWllbGQgZGltaW5pc2hpbmcgcmV0dXJucyBpbiBiZW5lZml0cyBcbioqICAgIHJlbGF0aXZlIHRvIHJpc2tzIHRvIHBhdGllbnRzIChyZWNvbW1lbmRhdGlvbiBjYXRlZ29yeTogQTsgZXZpZGVuY2UgdHlwZTogMylcbioqICBSZWNvbW1lbmRhdGlvbiAjNVxuKiogICAgRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIFxuKiogICAgcmlza3MgYW5kIGV4ZXJjaXNlIGNhcmUgd2hlbiBjaGFuZ2luZyBvcGlvaWQgZG9zYWdlLiBJZiBiZW5lZml0cyBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgXG4qKiAgICBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgd29yayBjbG9zZWx5IHdpdGggcGF0aWVudHMgdG8gb3B0aW1pemUgbm9ub3Bpb2lkIHRoZXJhcGllcyBcbioqICAgIHdoaWxlIGNvbnRpbnVpbmcgb3Bpb2lkIHRoZXJhcHkuIElmIGJlbmVmaXRzIGRvIG5vdCBvdXR3ZWlnaCByaXNrcyBvZiBjb250aW51ZWQgb3Bpb2lkIHRoZXJhcHksIFxuKiogICAgY2xpbmljaWFucyBzaG91bGQgb3B0aW1pemUgb3RoZXIgdGhlcmFwaWVzIGFuZCB3b3JrIGNsb3NlbHkgd2l0aCBwYXRpZW50cyB0byBncmFkdWFsbHkgdGFwZXIgdG8gXG4qKiAgICBsb3dlciBkb3NhZ2VzIG9yLCBpZiB3YXJyYW50ZWQgYmFzZWQgb24gdGhlIGluZGl2aWR1YWwgY2lyY3Vtc3RhbmNlcyBvZiB0aGUgcGF0aWVudCwgYXBwcm9wcmlhdGVseSBcbioqICAgIHRhcGVyIGFuZCBkaXNjb250aW51ZSBvcGlvaWRzLiBVbmxlc3MgdGhlcmUgYXJlIGluZGljYXRpb25zIG9mIGEgbGlmZS10aHJlYXRlbmluZyBpc3N1ZSBzdWNoIGFzIFxuKiogICAgd2FybmluZyBzaWducyBvZiBpbXBlbmRpbmcgb3ZlcmRvc2UgKGUuZy4sIGNvbmZ1c2lvbiwgc2VkYXRpb24sIG9yIHNsdXJyZWQgc3BlZWNoKSwgb3Bpb2lkIHRoZXJhcHkgXG4qKiAgICBzaG91bGQgbm90IGJlIGRpc2NvbnRpbnVlZCBhYnJ1cHRseSwgYW5kIGNsaW5pY2lhbnMgc2hvdWxkIG5vdCByYXBpZGx5IHJlZHVjZSBvcGlvaWQgZG9zYWdlcyBmcm9tIFxuKiogICAgaGlnaGVyIGRvc2FnZXMgKHJlY29tbWVuZGF0aW9uIGNhdGVnb3J5OiBCOyBldmlkZW5jZSB0eXBlOiA0KS5cbioqXG4qKiAgV2hlblxuKiogICAgUHJvdmlkZXIgaXMgcHJlc2NyaWJpbmcgYW4gb3Bpb2lkIGFuYWxnZXNpYyB3aXRoIGFtYnVsYXRvcnkgbWlzdXNlIHBvdGVudGlhbCBpbiB0aGUgb3V0cGF0aWVudCBzZXR0aW5nXG4qKiAgICBPcGlvaWQgcmV2aWV3IGlzIHVzZWZ1bCBmb3IgdGhpcyBwYXRpZW50OlxuKiogICAgICBQYXRpZW50IGlzIDE4IG9yIG92ZXJcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGV2aWRlbmNlIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2VcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGZpbmRpbmdzIGluZGljYXRpbmcgbGltaXRlZCBsaWZlIGV4cGVjdGFuY3lcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIG9yZGVycyBmb3IgdGhlcmFwaWVzIGluZGljYXRpbmcgZW5kIG9mIGxpZmUgY2FyZVxuKiogICAgICBQYXRpZW50IGlzIG5vdCB1bmRlcmdvaW5nIGFjdGl2ZSBjYW5jZXIgdHJlYXRtZW50OlxuKiogICAgICAgIFBhdGllbnQgaGFzIGhhZCBhdCBsZWFzdCAyIG9mZmljZSB2aXNpdHMgd2l0aGluIHRoZSBwYXN0IDEyIG1vbnRocyB3aXRoIGFuIG9uY29sb2d5IHNwZWNpYWxpc3QgcHJlc2VudCwgb3JcbioqICAgICAgICBQYXRpZW50IGhhcyBoYWQgYXQgbGVhc3QgMiBvZmZpY2UgdmlzaXRzIHdpdGhpbiB0aGUgcGFzdCAxMiBtb250aHMgd2l0aCBhIENEQyBtYWxpZ25hbnQgY2FuY2VyIGNvbmRpdGlvbiBkaWFnbm9zaXNcbioqICAgICAgUGF0aWVudCBkb2VzIG5vdCBoYXZlIGNvbmRpdGlvbnMgbGlrZWx5IHRlcm1pbmFsIGZvciBvcGlvaWQgcHJlc2NyaWJpbmcgcHJlc2VudFxuKiogICAgUGF0aWVudCBNb3JwaGluZSBNaWxsaWdyYW0gRXF1aXZhbGVudCAoTU1FKSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gNTBcbioqICBUaGVuXG4qKiAgICBDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzOlxuKiogICAgICBEb2N1bWVudCAtIFdpbGwgcHJlc2NyaWJlIGEgbG93ZXIgZG9zZVxuKiogICAgICBEb2N1bWVudCAtIFdpbGwgY2FsaWJyYXRlIGEgZ3JhZHVhbCBjaGFuZ2UgaW4gZG9zYWdlXG4qKiAgICAgIFNub296ZSAtIEJlbmVmaXRzIG91dHdlaWdoIHJpc2tzLCBzbm9vemUgMyBtb250aHNcbioqICAgICAgU25vb3plIC0gU2hvcnQgdGVybSBiZW5lZml0cyBvdXR3ZWlnaCByaXNrcywgc25vb3plIDEgbW9udGhcbioqICAgICAgU25vb3plIC0gTi9BIGFkZCBjb21tZW50LCBzbm9vemUgMyBtb250aHNcbioqXG4qL1xuXG4vLyBNRVRBOiBQbGFuIERlZmluaXRpb246IGh0dHA6Ly9maGlyLm9yZy9ndWlkZXMvY2RjL29waW9pZC1jZHMtcjQvUGxhbkRlZmluaXRpb24vb3Bpb2lkLWNkcy0wNC0wNVxuXG4iLCJwYXJhbWV0ZXIgIiwiQ29udGV4dFByZXNjcmlwdGlvbnMiLCIgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjciLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkxpc3Q8IiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjYiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIk1lZGljYXRpb25SZXF1ZXN0IiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICI+IiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjciLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNTc6MzItNTc6NTQiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiTGlzdFR5cGVTcGVjaWZpZXIiLAogICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNiIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI1NzozNy01Nzo1MyIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1NZWRpY2F0aW9uUmVxdWVzdCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9IF0KICAgICAgfSwKICAgICAgImNvbnRleHRzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU5OjEtNTk6MTUiLAogICAgICAgICAgICAibmFtZSIgOiAiUGF0aWVudCIKICAgICAgICAgfSBdCiAgICAgIH0sCiAgICAgICJzdGF0ZW1lbnRzIiA6IHsKICAgICAgICAgImRlZiIgOiBbIHsKICAgICAgICAgICAgImxvY2F0b3IiIDogIjU5OjEtNTk6MTUiLAogICAgICAgICAgICAibmFtZSIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAidHlwZSIgOiAiU2luZ2xldG9uRnJvbSIsCiAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjU5OjEtNTk6MTUiLAogICAgICAgICAgICAgICAgICAiZGF0YVR5cGUiIDogIntodHRwOi8vaGw3Lm9yZy9maGlyfVBhdGllbnQiLAogICAgICAgICAgICAgICAgICAidGVtcGxhdGVJZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL1BhdGllbnQiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUmV0cmlldmUiCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIxOCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NToxLTY3Ojk0IiwKICAgICAgICAgICAgIm5hbWUiIDogIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnMiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMTgiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnNcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE3IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjEyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsP1wiIiwiKCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbnRleHRQcmVzY3JpcHRpb25zIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgIiwiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAid2hlcmUgIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIxNCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiUm91dGluZXMiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIi4iIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiSXMgU3ViYWN1dGUgb3IgQ2hyb25pYyBQYWluIFByZXNjcmlwdGlvbj9cIiIsIiggIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjE1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgKSIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxNyIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NjozLTY3Ojk0IiwKICAgICAgICAgICAgICAgInR5cGUiIDogIlF1ZXJ5IiwKICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjEzIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY2OjMtNjY6MTIxIiwKICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIiwKICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTIiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6My02Njo5MiIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJJcyBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsPyIsCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwKICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2Njo2OS02Njo4OCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJDb250ZXh0UHJlc2NyaXB0aW9ucyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQYXJhbWV0ZXJSZWYiCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sCiAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIxNiIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2Nzo1LTY3Ojk0IiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiwKICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJSb3V0aW5lcyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTUiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6NjUtNjc6OTIiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc1JlZiIKICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIyOSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MjoxLTc5OjMiLAogICAgICAgICAgICAibmFtZSIgOiAiVG90YWwgTU1FIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjI5IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJUb3RhbCBNTUVcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI4IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI5IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJNTUVDYWxjdWxhdG9yIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI4IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJUb3RhbE1NRSIsIihcbiAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIihcbiAgICAgICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMTkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiQ2hyb25pYyBQYWluIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWwgUHJlc2NyaXB0aW9uc1wiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICAgICAgdW5pb24gIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQ29tbW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeFwiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiAiLCJBbWJ1bGF0b3J5T3Bpb2lkUHJlc2NyaXB0aW9uIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgICAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIndoZXJlICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiMjQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlJvdXRpbmVzIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIuIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjI2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/XCIiLCIoICIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIyNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICApIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyOCIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MzozLTc5OjMiLAogICAgICAgICAgICAgICAibmFtZSIgOiAiVG90YWxNTUUiLAogICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIk1NRUNhbGN1bGF0b3IiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjI3IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc0OjUtNzg6OTYiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLAogICAgICAgICAgICAgICAgICAic291cmNlIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjMiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzQ6NS03NzozNCIsCiAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc0OjUtNzc6NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJVbmlvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMTkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzU6Ny03NTo4NCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc2OjE1LTc2OjUwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFjdGl2ZSBBbWJ1bGF0b3J5IE9waW9pZCBSeCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sCiAgICAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIyNiIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3ODo3LTc4Ojk2IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIklzIFN1YmFjdXRlIG9yIENocm9uaWMgUGFpbiBQcmVzY3JpcHRpb24/IiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJSb3V0aW5lcyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMjUiLAogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzg6NjctNzg6OTQiLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQW1idWxhdG9yeU9waW9pZFByZXNjcmlwdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc1JlZiIKICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiMzQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MS02MTo0MyIsCiAgICAgICAgICAgICJuYW1lIiA6ICJUYXBlciBOb3ciLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiMzQiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIlRhcGVyIE5vd1wiIiwiOiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzMiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjMxIiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJUb3RhbCBNTUVcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAidmFsdWUiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgIiwiPj0iLCIgIiwiOTAiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjE6MjEtNjE6NDMiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiR3JlYXRlck9yRXF1YWwiLAogICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgewogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EZWNpbWFsIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1EZWNpbWFsIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjMxIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjIxLTYxOjM3IiwKICAgICAgICAgICAgICAgICAgInBhdGgiIDogInZhbHVlIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwKICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzMCIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MToyMS02MTozMSIsCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJUb3RhbCBNTUUiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb0RlY2ltYWwiLAogICAgICAgICAgICAgICAgICAic2lnbmF0dXJlIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1JbnRlZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzMiIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MTo0Mi02MTo0MyIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiOTAiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCIKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICIzOSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MzoxLTYzOjUwIiwKICAgICAgICAgICAgIm5hbWUiIDogIkNvbnNpZGVyIFRhcGVyaW5nIiwKICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLAogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsCiAgICAgICAgICAgICJhbm5vdGF0aW9uIiA6IFsgewogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5ub3RhdGlvbiIsCiAgICAgICAgICAgICAgICJzIiA6IHsKICAgICAgICAgICAgICAgICAgInIiIDogIjM5IiwKICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIiLCJkZWZpbmUgIiwiXCJDb25zaWRlciBUYXBlcmluZ1wiIiwiOiAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiMzgiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjM2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJUb3RhbCBNTUVcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAidmFsdWUiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICIzNyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICIgIiwiPCIsIiAiLCI5MCIgXQogICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBdLAogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7CiAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzOCIsCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MzoyOS02Mzo1MCIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMZXNzIiwKICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9RGVjaW1hbCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9RGVjaW1hbCIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICIzNiIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MzoyOS02Mzo0NSIsCiAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJ2YWx1ZSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsCiAgICAgICAgICAgICAgICAgICJzb3VyY2UiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzUiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MjktNjM6MzkiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG90YWwgTU1FIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVG9EZWNpbWFsIiwKICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9SW50ZWdlciIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiMzciLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6NDktNjM6NTAiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfUludGVnZXIiLAogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogIjkwIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNDIiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiNjk6MS03MDo5MCIsCiAgICAgICAgICAgICJuYW1lIiA6ICJQYXRpZW50IElzIEJlaW5nIFByZXNjcmliZWQgT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI0MiIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiUGF0aWVudCBJcyBCZWluZyBQcmVzY3JpYmVkIE9waW9pZCBBbmFsZ2VzaWMgd2l0aCBBbWJ1bGF0b3J5IE1pc3VzZSBQb3RlbnRpYWxcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQxIiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJleGlzdHMiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDAiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiggIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIkNocm9uaWMgUGFpbiBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIFByZXNjcmlwdGlvbnNcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICkiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQxIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjcwOjMtNzA6OTAiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiRXhpc3RzIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNDAiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzA6OS03MDo5MCIsCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJDaHJvbmljIFBhaW4gT3Bpb2lkIEFuYWxnZXNpYyB3aXRoIEFtYnVsYXRvcnkgTWlzdXNlIFBvdGVudGlhbCBQcmVzY3JpcHRpb25zIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI1MSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4MToxLTg0OjM1IiwKICAgICAgICAgICAgIm5hbWUiIDogIkluY2x1c2lvbiBDcml0ZXJpYSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI1MSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiSW5jbHVzaW9uIENyaXRlcmlhXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1MCIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDYiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsXCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICAgIGFuZCAiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNDUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQ0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJSb3V0aW5lcyIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBPcGlvaWQgUmV2aWV3IFVzZWZ1bD9cIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICBhbmQgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjQ5IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJUb3RhbCBNTUVcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiICIsIj49IiwiICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI0OCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiNTAgIiwiJ3tNTUV9L2QnIiBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNTAiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04NDozNSIsCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLAogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQ2IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgyOjMtODM6NDMiLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0MyIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4MjozLTgyOjgxIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQgSXMgQmVpbmcgUHJlc2NyaWJlZCBPcGlvaWQgQW5hbGdlc2ljIHdpdGggQW1idWxhdG9yeSBNaXN1c2UgUG90ZW50aWFsIiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjQ1IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjktODM6NDMiLAogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgT3Bpb2lkIFJldmlldyBVc2VmdWw/IiwKICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJSb3V0aW5lcyIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNDkiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODQ6OS04NDozNSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJHcmVhdGVyT3JFcXVhbCIsCiAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVF1YW50aXR5IiwKICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciIKICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1RdWFudGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOYW1lZFR5cGVTcGVjaWZpZXIiCiAgICAgICAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0NyIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NDo5LTg0OjE5IiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvdGFsIE1NRSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI0OCIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NDoyNC04NDozNSIsCiAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiA1MCwKICAgICAgICAgICAgICAgICAgICAgInVuaXQiIDogIntNTUV9L2QiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVhbnRpdHkiCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI1NCIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NjoxLTg3OjMzIiwKICAgICAgICAgICAgIm5hbWUiIDogIkV4Y2x1c2lvbiBDcml0ZXJpYSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI1NCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiRXhjbHVzaW9uIENyaXRlcmlhXCIiLCI6XG4gICIgXQogICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1MyIsCiAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNTIiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIkNvbW1vbiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiLiIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1MyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJFbmQgb2YgTGlmZSBBc3Nlc3NtZW50XCIiIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjUzIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg3OjMtODc6MzMiLAogICAgICAgICAgICAgICAibmFtZSIgOiAiRW5kIG9mIExpZmUgQXNzZXNzbWVudCIsCiAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiQ29tbW9uIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiCiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNTkiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiODk6MS05MTozMiIsCiAgICAgICAgICAgICJuYW1lIiA6ICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlPyIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI1OSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT9cIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjU4IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1NSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJbmNsdXNpb24gQ3JpdGVyaWFcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgYW5kICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1NyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAibm90ICIgXQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI1NiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJFeGNsdXNpb24gQ3JpdGVyaWFcIiIgXQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjU4IiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkwOjMtOTE6MzIiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwKICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI1NSIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MDozLTkwOjIyIiwKICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkluY2x1c2lvbiBDcml0ZXJpYSIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI1NyIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MTo5LTkxOjMyIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsKICAgICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjU2IiwKICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkxOjEzLTkxOjMyIiwKICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkV4Y2x1c2lvbiBDcml0ZXJpYSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICB9CiAgICAgICAgIH0sIHsKICAgICAgICAgICAgImxvY2FsSWQiIDogIjY0IiwKICAgICAgICAgICAgImxvY2F0b3IiIDogIjkzOjEtOTY6MTEiLAogICAgICAgICAgICAibmFtZSIgOiAiR2V0IEluZGljYXRvciIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI2NCIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiR2V0IEluZGljYXRvclwiIiwiOlxuICAiIF0KICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAiciIgOiAiNjMiLAogICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgImlmICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2MCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXCJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlP1wiIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgICB0aGVuICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2MSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiJ3dhcm5pbmcnIiBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI2MiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJcbiAgZWxzZSAiLCJudWxsIiBdCiAgICAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IF0sCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsKICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjYzIiwKICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk0OjMtOTY6MTEiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiSWYiLAogICAgICAgICAgICAgICAiY29uZGl0aW9uIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjYwIiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk0OjYtOTQ6MzYiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjEiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTU6MTAtOTU6MTgiLAogICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAid2FybmluZyIsCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIgogICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAiZWxzZSIgOiB7CiAgICAgICAgICAgICAgICAgICJhc1R5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFzIiwKICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogewogICAgICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjIiLAogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTY6OC05NjoxMSIsCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOdWxsIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9LCB7CiAgICAgICAgICAgICJsb2NhbElkIiA6ICI2OSIsCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5ODoxLTEwMjoxMSIsCiAgICAgICAgICAgICJuYW1lIiA6ICJHZXQgU3VtbWFyeSIsCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwKICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLAogICAgICAgICAgICAiYW5ub3RhdGlvbiIgOiBbIHsKICAgICAgICAgICAgICAgInR5cGUiIDogIkFubm90YXRpb24iLAogICAgICAgICAgICAgICAicyIgOiB7CiAgICAgICAgICAgICAgICAgICJyIiA6ICI2OSIsCiAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiIiwiZGVmaW5lICIsIlwiR2V0IFN1bW1hcnlcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjY4IiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJpZiAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNjUiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT9cIiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgdGhlblxuICAgICAgIiBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjY2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICInQ2FsaWJyYXRlIHRvIExvd2VzdCBPcGlvaWQgRG9zZSBOZWVkZWQgZm9yIEV4cGVjdGVkIFJlc3VsdHMgYW5kIEV4ZXJjaXNlIENhcmUgV2hlbiBDaGFuZ2luZyBPcGlvaWQgRG9zYWdlcyciIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjY3IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICBlbHNlICIsIm51bGwiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjgiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTk6My0xMDI6MTEiLAogICAgICAgICAgICAgICAidHlwZSIgOiAiSWYiLAogICAgICAgICAgICAgICAiY29uZGl0aW9uIiA6IHsKICAgICAgICAgICAgICAgICAgImxvY2FsSWQiIDogIjY1IiwKICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk5OjYtOTk6MzYiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNjYiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTAxOjctMTAxOjExNCIsCiAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwKICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJDYWxpYnJhdGUgdG8gTG93ZXN0IE9waW9pZCBEb3NlIE5lZWRlZCBmb3IgRXhwZWN0ZWQgUmVzdWx0cyBhbmQgRXhlcmNpc2UgQ2FyZSBXaGVuIENoYW5naW5nIE9waW9pZCBEb3NhZ2VzIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJlbHNlIiA6IHsKICAgICAgICAgICAgICAgICAgImFzVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQXMiLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI2NyIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDI6OC0xMDI6MTEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTnVsbCIKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSwgewogICAgICAgICAgICAibG9jYWxJZCIgOiAiNzQiLAogICAgICAgICAgICAibG9jYXRvciIgOiAiMTA0OjEtMTI3OjExIiwKICAgICAgICAgICAgIm5hbWUiIDogIkdldCBEZXRhaWwiLAogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwKICAgICAgICAgICAgImFubm90YXRpb24iIDogWyB7CiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbm5vdGF0aW9uIiwKICAgICAgICAgICAgICAgInMiIDogewogICAgICAgICAgICAgICAgICAiciIgOiAiNzQiLAogICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIiIsImRlZmluZSAiLCJcIkdldCBEZXRhaWxcIiIsIjpcbiAgIiBdCiAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgInIiIDogIjczIiwKICAgICAgICAgICAgICAgICAgICAgInMiIDogWyB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiBbICJpZiAiIF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAiciIgOiAiNzAiLAogICAgICAgICAgICAgICAgICAgICAgICAicyIgOiBbIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlwiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT9cIiIgXQogICAgICAgICAgICAgICAgICAgICAgICB9IF0KICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiXG4gICAgdGhlblxuICAgICIgXQogICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICJyIiA6ICI3MSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJzIiA6IFsgewogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogWyAiJ1doZW4gb3Bpb2lkIHRoZXJhcHkgaXMgY29uc2lkZXJlZCBhcHByb3ByaWF0ZSwgY2FsaWJyYXRlIG9waW9pZCBkb3NhZ2VzIHRvIGxvd2VzdCBkb3NlIG5lZWRlZCB0byBhY2hpZXZlIGV4cGVjdGVkIGVmZmVjdHMuIEZvciBwYXRpZW50cyBhbHJlYWR5IHJlY2VpdmluZyBvcGlvaWQgdGhlcmFweSwgY2xpbmljaWFucyBzaG91bGQgY2FyZWZ1bGx5IHdlaWdoIGJlbmVmaXRzIGFuZCByaXNrcyBhbmQgZXhlcmNpc2UgY2FyZSB3aGVuIGNoYW5naW5nIG9waW9pZCBkb3NhZ2UuXG5cbltGb3IgZ3VpZGFuY2UgaW4gZGV0ZXJtaW5pbmcgdGhlIGxvd2VzdCBlZmZlY3RpdmUgb3Bpb2lkIGRvc2FnZSwgc2VlIFJlY29tbWVuZGF0aW9uIDQgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9bG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zYWdlLi0sRm9yJTIwcGF0aWVudHMlMjBub3QlMjBhbHJlYWR5JTIwdGFraW5nJTIwb3Bpb2lkcyUyQyUyMHRoZSUyMGxvd2VzdCUyMGVmZmVjdGl2ZSUyMGRvc2UlMjBjYW4saW50ZW5kZWQlMjB0byUyMGJlJTIwZ3VpZGVwb3N0cyUyMHRvJTIwaGVscCUyMGluZm9ybSUyMGNsaW5pY2lhbiUyRHBhdGllbnQlMjBkZWNpc2lvbiUyRG1ha2luZy4sLVN1cHBvcnRpbmclMjBSYXRpb25hbGUpXG5cbltGb3IgcGF0aWVudHMgd2hvIGhhdmUgcmVjZWl2ZWQgb3Bpb2lkIHRoZXJhcHkgZm9yIGxvbmdlciBkdXJhdGlvbnMgb2YgdGltZSwgaWYgdGFwZXJpbmcsIGNvbnNpZGVyIHdvcmtpbmcgY2xvc2VseSB3aXRoIHRoZSBwYXRpZW50IHRvIGdyYWR1YWxseSB0YXBlciBkb3NhZ2VzIChubyBtb3JlIHRoYW4gMTAlIHBlciBtb250aCldKGh0dHBzOi8vd3d3LmNkYy5nb3YvbW13ci92b2x1bWVzLzcxL3JyL3JyNzEwM2ExLmh0bSM6fjp0ZXh0PVdoZW4lMjBwYXRpZW50cyUyMGhhdmUlMjBiZWVuJTIwdGFraW5nJTIwb3Bpb2lkcyUyMGZvciUyMGxvbmdlciUyMGR1cmF0aW9ucyUyMChlLmcuJTJDJTIwZm9yJTIwJUUyJTg5JUE1MSUyMHllYXIpJTJDJTIwdGFwZXJzJTIwb2YlMjAxMCUyNSUyMHBlciUyMG1vbnRoJTIwb3IlMjBzbG93ZXIlMjBhcmUlMjBsaWtlbHklMjB0byUyMGJlJTIwYmV0dGVyJTIwdG9sZXJhdGVkJTIwdGhhbiUyMG1vcmUlMjByYXBpZCUyMHRhcGVycy4pXG5cbkZvciBhIHRhcGVyaW5nIGNhbGN1bGF0b3IsIGdvIHRvIFtodHRwczovL2FnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWxdKGh0dHBzOi8vd3d3LmFnZW5jeW1lZGRpcmVjdG9ycy53YS5nb3YvQ2FsY3VsYXRvci9UYXBlckRvc2VDYWxjdWxhdG9yLmh0bWwpXG5cbltGb3IgbW9yZSBndWlkYW5jZSByZWdhcmRpbmcgdGFwZXJpbmcsIHBsZWFzZSBzZWXCoFJlY29tbWVuZGF0aW9uIDUgb2YgdGhlIDIwMjIgQ0RDIENsaW5pY2FsIFByYWN0aWNlIEd1aWRlbGluZSBmb3IgUHJlc2NyaWJpbmcgT3Bpb2lkcyBmb3IgUGFpbl0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMGJlbmVmaXRzJTIwKGluY2x1ZGluZyw2JTIwYW5kJTIwNykuKVxuXG4qKk1NRSBDYWxjdWxhdG9yIENhdXRpb25zKipcbjEpIEFsbCBkb3NlcyBhcmUgaW4gbWcvZGF5IGV4Y2VwdCBmb3IgZmVudGFueWwsIHdoaWNoIGlzIG1jZy9oci4gXG4yKSBFcXVpYW5hbGdlc2ljIGRvc2UgY29udmVyc2lvbnMgYXJlIG9ubHkgZXN0aW1hdGVzIGFuZCBjYW5ub3QgYWNjb3VudCBmb3IgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBnZW5ldGljcyBhbmQgcGhhcm1hY29raW5ldGljcy4gXG4zKSBEbyBub3QgdXNlIHRoZSBjYWxjdWxhdGVkIGRvc2UgaW4gTU1FcyB0byBkZXRlcm1pbmUgdGhlIGRvc2VzIHRvIHVzZSB3aGVuIGNvbnZlcnRpbmcgb25lIG9waW9pZCB0byBhbm90aGVyOyB3aGVuIGNvbnZlcnRpbmcgb3Bpb2lkcywgdGhlIG5ldyBvcGlvaWQgaXMgdHlwaWNhbGx5IGRvc2VkIGF0IGEgc3Vic3RhbnRpYWxseSBsb3dlciBkb3NlIHRoYW4gdGhlIGNhbGN1bGF0ZWQgTU1FIGRvc2UgdG8gYXZvaWQgb3ZlcmRvc2UgYmVjYXVzZSBvZiBpbmNvbXBsZXRlIGNyb3NzLXRvbGVyYW5jZSBhbmQgaW5kaXZpZHVhbCB2YXJpYWJpbGl0eSBpbiBvcGlvaWQgcGhhcm1hY29raW5ldGljcy4gQ29uc3VsdCB0aGUgRkRBIGFwcHJvdmVkIHByb2R1Y3QgbGFiZWxpbmcgZm9yIHNwZWNpZmljIGd1aWRhbmNlIG9uIG1lZGljYXRpb25zLiBcbjQpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCBtZXRoYWRvbmUgZG9zZSBjb252ZXJzaW9ucyBiZWNhdXNlIG1ldGhhZG9uZSBoYXMgYSBsb25nIGFuZCB2YXJpYWJsZSBoYWxmLWxpZmUsIGFuZCBwZWFrIHJlc3BpcmF0b3J5IGRlcHJlc3NhbnQgZWZmZWN0IG9jY3VycyBsYXRlciBhbmQgbGFzdHMgbG9uZ2VyIHRoYW4gcGVhayBhbmFsZ2VzaWMgZWZmZWN0LiBcbjUpIFVzZSBwYXJ0aWN1bGFyIGNhdXRpb24gd2l0aCB0cmFuc2Rlcm1hbCBmZW50YW55bCBiZWNhdXNlIGl0IGlzIGRvc2VkIGluIG1jZy9ociBpbnN0ZWFkIG9mIG1nL2RheSwgYW5kIGl0cyBhYnNvcnB0aW9uIGlzIGFmZmVjdGVkIGJ5IGhlYXQgYW5kIG90aGVyIGZhY3RvcnMuIFxuNikgQnVwcmVub3JwaGluZSBwcm9kdWN0cyBhcHByb3ZlZCBmb3IgdGhlIHRyZWF0bWVudCBvZiBwYWluIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHRhYmxlIGJlY2F1c2Ugb2YgdGhlaXIgcGFydGlhbCDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5IGFuZCByZXN1bHRhbnQgY2VpbGluZyBlZmZlY3RzIGNvbXBhcmVkIHdpdGggZnVsbCDCtS1yZWNlcHRvciBhZ29uaXN0cy4gXG43KSBUaGVzZSBjb252ZXJzaW9uIGZhY3RvcnMgc2hvdWxkIG5vdCBiZSBhcHBsaWVkIHRvIGRvc2FnZSBkZWNpc2lvbnMgcmVsYXRlZCB0byB0aGUgbWFuYWdlbWVudCBvZiBvcGlvaWQgdXNlIGRpc29yZGVyLlxu4oCgIFRhcGVudGFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSByZXVwdGFrZSBpbmhpYml0b3IuIE1NRXMgYXJlIGJhc2VkIG9uIGRlZ3JlZSBvZiDCtS1yZWNlcHRvciBhZ29uaXN0IGFjdGl2aXR5OyBob3dldmVyLCBpdCBpcyB1bmtub3duIHdoZXRoZXIgdGFwZW50YWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLlxuwqcgVHJhbWFkb2wgaXMgYSDCtS1yZWNlcHRvciBhZ29uaXN0IGFuZCBub3JlcGluZXBocmluZSBhbmQgc2Vyb3RvbmluIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0cmFtYWRvbCBpcyBhc3NvY2lhdGVkIHdpdGggb3ZlcmRvc2UgaW4gdGhlIHNhbWUgZG9zZS1kZXBlbmRlbnQgbWFubmVyIGFzIG9ic2VydmVkIHdpdGggbWVkaWNhdGlvbnMgdGhhdCBhcmUgc29sZWx5IMK1LXJlY2VwdG9yIGFnb25pc3RzLiciIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgInIiIDogIjcyIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6IFsgIlxuICBlbHNlICIsIm51bGwiIF0KICAgICAgICAgICAgICAgICAgICAgfSBdCiAgICAgICAgICAgICAgICAgIH0gXQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gXSwKICAgICAgICAgICAgImV4cHJlc3Npb24iIDogewogICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNzMiLAogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA1OjMtMTI3OjExIiwKICAgICAgICAgICAgICAgInR5cGUiIDogIklmIiwKICAgICAgICAgICAgICAgImNvbmRpdGlvbiIgOiB7CiAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI3MCIsCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDU6Ni0xMDU6MzYiLAogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZT8iLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiIKICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgInRoZW4iIDogewogICAgICAgICAgICAgICAgICAibG9jYWxJZCIgOiAiNzEiLAogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA3OjUtMTA3OjM2MDgiLAogICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsCiAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiV2hlbiBvcGlvaWQgdGhlcmFweSBpcyBjb25zaWRlcmVkIGFwcHJvcHJpYXRlLCBjYWxpYnJhdGUgb3Bpb2lkIGRvc2FnZXMgdG8gbG93ZXN0IGRvc2UgbmVlZGVkIHRvIGFjaGlldmUgZXhwZWN0ZWQgZWZmZWN0cy4gRm9yIHBhdGllbnRzIGFscmVhZHkgcmVjZWl2aW5nIG9waW9pZCB0aGVyYXB5LCBjbGluaWNpYW5zIHNob3VsZCBjYXJlZnVsbHkgd2VpZ2ggYmVuZWZpdHMgYW5kIHJpc2tzIGFuZCBleGVyY2lzZSBjYXJlIHdoZW4gY2hhbmdpbmcgb3Bpb2lkIGRvc2FnZS5cblxuW0ZvciBndWlkYW5jZSBpbiBkZXRlcm1pbmluZyB0aGUgbG93ZXN0IGVmZmVjdGl2ZSBvcGlvaWQgZG9zYWdlLCBzZWUgUmVjb21tZW5kYXRpb24gNCBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1sb3dlc3QlMjBlZmZlY3RpdmUlMjBkb3NhZ2UuLSxGb3IlMjBwYXRpZW50cyUyMG5vdCUyMGFscmVhZHklMjB0YWtpbmclMjBvcGlvaWRzJTJDJTIwdGhlJTIwbG93ZXN0JTIwZWZmZWN0aXZlJTIwZG9zZSUyMGNhbixpbnRlbmRlZCUyMHRvJTIwYmUlMjBndWlkZXBvc3RzJTIwdG8lMjBoZWxwJTIwaW5mb3JtJTIwY2xpbmljaWFuJTJEcGF0aWVudCUyMGRlY2lzaW9uJTJEbWFraW5nLiwtU3VwcG9ydGluZyUyMFJhdGlvbmFsZSlcblxuW0ZvciBwYXRpZW50cyB3aG8gaGF2ZSByZWNlaXZlZCBvcGlvaWQgdGhlcmFweSBmb3IgbG9uZ2VyIGR1cmF0aW9ucyBvZiB0aW1lLCBpZiB0YXBlcmluZywgY29uc2lkZXIgd29ya2luZyBjbG9zZWx5IHdpdGggdGhlIHBhdGllbnQgdG8gZ3JhZHVhbGx5IHRhcGVyIGRvc2FnZXMgKG5vIG1vcmUgdGhhbiAxMCUgcGVyIG1vbnRoKV0oaHR0cHM6Ly93d3cuY2RjLmdvdi9tbXdyL3ZvbHVtZXMvNzEvcnIvcnI3MTAzYTEuaHRtIzp+OnRleHQ9V2hlbiUyMHBhdGllbnRzJTIwaGF2ZSUyMGJlZW4lMjB0YWtpbmclMjBvcGlvaWRzJTIwZm9yJTIwbG9uZ2VyJTIwZHVyYXRpb25zJTIwKGUuZy4lMkMlMjBmb3IlMjAlRTIlODklQTUxJTIweWVhciklMkMlMjB0YXBlcnMlMjBvZiUyMDEwJTI1JTIwcGVyJTIwbW9udGglMjBvciUyMHNsb3dlciUyMGFyZSUyMGxpa2VseSUyMHRvJTIwYmUlMjBiZXR0ZXIlMjB0b2xlcmF0ZWQlMjB0aGFuJTIwbW9yZSUyMHJhcGlkJTIwdGFwZXJzLilcblxuRm9yIGEgdGFwZXJpbmcgY2FsY3VsYXRvciwgZ28gdG8gW2h0dHBzOi8vYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbF0oaHR0cHM6Ly93d3cuYWdlbmN5bWVkZGlyZWN0b3JzLndhLmdvdi9DYWxjdWxhdG9yL1RhcGVyRG9zZUNhbGN1bGF0b3IuaHRtbClcblxuW0ZvciBtb3JlIGd1aWRhbmNlIHJlZ2FyZGluZyB0YXBlcmluZywgcGxlYXNlIHNlZcKgUmVjb21tZW5kYXRpb24gNSBvZiB0aGUgMjAyMiBDREMgQ2xpbmljYWwgUHJhY3RpY2UgR3VpZGVsaW5lIGZvciBQcmVzY3JpYmluZyBPcGlvaWRzIGZvciBQYWluXShodHRwczovL3d3dy5jZGMuZ292L21td3Ivdm9sdW1lcy83MS9yci9ycjcxMDNhMS5odG0jOn46dGV4dD1XaGVuJTIwYmVuZWZpdHMlMjAoaW5jbHVkaW5nLDYlMjBhbmQlMjA3KS4pXG5cbioqTU1FIENhbGN1bGF0b3IgQ2F1dGlvbnMqKlxuMSkgQWxsIGRvc2VzIGFyZSBpbiBtZy9kYXkgZXhjZXB0IGZvciBmZW50YW55bCwgd2hpY2ggaXMgbWNnL2hyLiBcbjIpIEVxdWlhbmFsZ2VzaWMgZG9zZSBjb252ZXJzaW9ucyBhcmUgb25seSBlc3RpbWF0ZXMgYW5kIGNhbm5vdCBhY2NvdW50IGZvciBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIGdlbmV0aWNzIGFuZCBwaGFybWFjb2tpbmV0aWNzLiBcbjMpIERvIG5vdCB1c2UgdGhlIGNhbGN1bGF0ZWQgZG9zZSBpbiBNTUVzIHRvIGRldGVybWluZSB0aGUgZG9zZXMgdG8gdXNlIHdoZW4gY29udmVydGluZyBvbmUgb3Bpb2lkIHRvIGFub3RoZXI7IHdoZW4gY29udmVydGluZyBvcGlvaWRzLCB0aGUgbmV3IG9waW9pZCBpcyB0eXBpY2FsbHkgZG9zZWQgYXQgYSBzdWJzdGFudGlhbGx5IGxvd2VyIGRvc2UgdGhhbiB0aGUgY2FsY3VsYXRlZCBNTUUgZG9zZSB0byBhdm9pZCBvdmVyZG9zZSBiZWNhdXNlIG9mIGluY29tcGxldGUgY3Jvc3MtdG9sZXJhbmNlIGFuZCBpbmRpdmlkdWFsIHZhcmlhYmlsaXR5IGluIG9waW9pZCBwaGFybWFjb2tpbmV0aWNzLiBDb25zdWx0IHRoZSBGREEgYXBwcm92ZWQgcHJvZHVjdCBsYWJlbGluZyBmb3Igc3BlY2lmaWMgZ3VpZGFuY2Ugb24gbWVkaWNhdGlvbnMuIFxuNCkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIG1ldGhhZG9uZSBkb3NlIGNvbnZlcnNpb25zIGJlY2F1c2UgbWV0aGFkb25lIGhhcyBhIGxvbmcgYW5kIHZhcmlhYmxlIGhhbGYtbGlmZSwgYW5kIHBlYWsgcmVzcGlyYXRvcnkgZGVwcmVzc2FudCBlZmZlY3Qgb2NjdXJzIGxhdGVyIGFuZCBsYXN0cyBsb25nZXIgdGhhbiBwZWFrIGFuYWxnZXNpYyBlZmZlY3QuIFxuNSkgVXNlIHBhcnRpY3VsYXIgY2F1dGlvbiB3aXRoIHRyYW5zZGVybWFsIGZlbnRhbnlsIGJlY2F1c2UgaXQgaXMgZG9zZWQgaW4gbWNnL2hyIGluc3RlYWQgb2YgbWcvZGF5LCBhbmQgaXRzIGFic29ycHRpb24gaXMgYWZmZWN0ZWQgYnkgaGVhdCBhbmQgb3RoZXIgZmFjdG9ycy4gXG42KSBCdXByZW5vcnBoaW5lIHByb2R1Y3RzIGFwcHJvdmVkIGZvciB0aGUgdHJlYXRtZW50IG9mIHBhaW4gYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgdGFibGUgYmVjYXVzZSBvZiB0aGVpciBwYXJ0aWFsIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHkgYW5kIHJlc3VsdGFudCBjZWlsaW5nIGVmZmVjdHMgY29tcGFyZWQgd2l0aCBmdWxsIMK1LXJlY2VwdG9yIGFnb25pc3RzLiBcbjcpIFRoZXNlIGNvbnZlcnNpb24gZmFjdG9ycyBzaG91bGQgbm90IGJlIGFwcGxpZWQgdG8gZG9zYWdlIGRlY2lzaW9ucyByZWxhdGVkIHRvIHRoZSBtYW5hZ2VtZW50IG9mIG9waW9pZCB1c2UgZGlzb3JkZXIuXG7igKAgVGFwZW50YWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIHJldXB0YWtlIGluaGliaXRvci4gTU1FcyBhcmUgYmFzZWQgb24gZGVncmVlIG9mIMK1LXJlY2VwdG9yIGFnb25pc3QgYWN0aXZpdHk7IGhvd2V2ZXIsIGl0IGlzIHVua25vd24gd2hldGhlciB0YXBlbnRhZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuXG7CpyBUcmFtYWRvbCBpcyBhIMK1LXJlY2VwdG9yIGFnb25pc3QgYW5kIG5vcmVwaW5lcGhyaW5lIGFuZCBzZXJvdG9uaW4gcmV1cHRha2UgaW5oaWJpdG9yLiBNTUVzIGFyZSBiYXNlZCBvbiBkZWdyZWUgb2YgwrUtcmVjZXB0b3IgYWdvbmlzdCBhY3Rpdml0eTsgaG93ZXZlciwgaXQgaXMgdW5rbm93biB3aGV0aGVyIHRyYW1hZG9sIGlzIGFzc29jaWF0ZWQgd2l0aCBvdmVyZG9zZSBpbiB0aGUgc2FtZSBkb3NlLWRlcGVuZGVudCBtYW5uZXIgYXMgb2JzZXJ2ZWQgd2l0aCBtZWRpY2F0aW9ucyB0aGF0IGFyZSBzb2xlbHkgwrUtcmVjZXB0b3IgYWdvbmlzdHMuIiwKICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiCiAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICJlbHNlIiA6IHsKICAgICAgICAgICAgICAgICAgImFzVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLAogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQXMiLAogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7CiAgICAgICAgICAgICAgICAgICAgICJsb2NhbElkIiA6ICI3MiIsCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMjc6OC0xMjc6MTEiLAogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTnVsbCIKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgfSBdCiAgICAgIH0KICAgfQp9"
}
]
}