This page is part of the Clinical Guidelines (v1.0.0: STU 1) based on FHIR R4. This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Formats: Narrative, XML, JSON, Turtle
Raw xml
<Library xmlns="http://hl7.org/fhir">
<id value="GenerateReport"/>
<meta>
<profile
value="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-computablelibrary"/>
<profile
value="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-executablelibrary"/>
</meta>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><h2>Related Artifacts</h2><table class="grid"><tr><td>depends-on</td><td><code>http://hl7.org/fhir/Library/FHIR-ModelInfo|4.0.1</code></td></tr><tr><td>depends-on</td><td><code>http://hl7.org/fhir/Library/FHIRHelpers|4.0.1</code></td></tr><tr><td>depends-on</td><td><a href="CodeSystem-cpg-activity-type.html">CPG Activity Type</a></td></tr></table><h2>Parameters</h2><table class="grid"><tr><td>reportWith</td><td>in</td><td>0</td><td>1</td><td>string</td></tr><tr><td>Patient</td><td>out</td><td>0</td><td>1</td><td>Patient</td></tr><tr><td>Inclusion Criteria</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr><tr><td>Generation Task</td><td>out</td><td>0</td><td>*</td><td>Task</td></tr><tr><td>Generated Report</td><td>out</td><td>0</td><td>*</td><td>MeasureReport</td></tr><tr><td>Active or Completed Activity</td><td>out</td><td>0</td><td>*</td><td>Task</td></tr><tr><td>Activity Not Done</td><td>out</td><td>0</td><td>*</td><td>Task</td></tr><tr><td>Activity Proposal</td><td>out</td><td>0</td><td>*</td><td>Task</td></tr><tr><td>Activity Proposal Rejected</td><td>out</td><td>0</td><td>*</td><td>Task</td></tr><tr><td>Is Recommendation Applicable</td><td>out</td><td>0</td><td>1</td><td>boolean</td></tr></table><h2>Data Requirements</h2><table class="grid"><tr><td colspan="2"><b>Type</b>: <a href="http://hl7.org/fhir/R4/task.html">Task</a> (<a href="http://hl7.org/fhir/R4/task.html">Task</a>)</td></tr></table><table class="grid"><tr><td colspan="2"><b>Type</b>: <a href="http://hl7.org/fhir/R4/measurereport.html">MeasureReport</a> (<a href="http://hl7.org/fhir/R4/measurereport.html">MeasureReport</a>)</td></tr></table><h2>Contents</h2><p><code>text/cql</code></p><pre><code class="language-sql">library GenerateReport
using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1'
codesystem "Activity Type": 'http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type'
code "Generate report": 'generate-report' from "Activity Type"
parameter reportWith String
context Patient
/* Recommendation to generate a report */
/*
NOTE: This recommendation is dramatically simplified to illustrate the general
pattern for a positive recommendation to enroll a patient, with the ability
for users to reject the recommendation, and flexibility in how the recommendation
is achieved.
Specifically:
* There is no terminology, any task on any topic will do
* There is no timing, any task will do at any time
* There is no reference to participants other than the patient
* There is no relationship to a setting
* There is no relationship to an encounter or episode
* There is no relationship to a care plan
These simplifications allow the example to focus exclusively on the pattern for
recommending and for accepting/rejecting the proposal, as well as documenting
the completion, or explicit non-performance of the activity.
*/
/*
Positive recommendation:
If the patient meets the inclusion criteria
If the report has not been generated
If report generation has not been planned or proposed
Propose report generation
Given a proposal, the user can:
Accept the proposal
Ignore the proposal
Reject the proposal without reason
Reject the proposal with reason
Scenario 1: No event, no plan or proposal, decision support should propose
Scenario 2: No event, incomplete proposal, decision support should not propose
Scenario 3: No event, rejected proposal, decision support should not propose
Scenario 4: Event, no proposal, decision support should not propose
Scenario 5: Event, completed proposal, decision support should not propose
Scenario 6: Event not done, no proposal, decision support should not propose
Scenario 7: Event not done, proposal, decision support should not propose
*/
define "Inclusion Criteria":
Patient.active
define "Generation Task":
[Task] C
where C.code ~ "Generate report"
and reportWith(C).value = reportWith
and not Coalesce(doNotPerform(C), false)
define "Generated Report":
[MeasureReport] R
where R.measure.value = reportWith
define "Active or Completed Activity":
"Generation Task" C
where C.status in { 'in-progress', 'on-hold', 'completed' }
define "Activity Not Done":
"Generation Task" C
where C.status in { 'cancelled', 'failed' }
define "Activity Proposal":
"Generation Task" R
where R.status in { 'draft', 'requested', 'received', 'accepted', 'ready' }
define "Activity Proposal Rejected":
"Generation Task" R
where R.status in { 'rejected' }
define "Is Recommendation Applicable":
"Inclusion Criteria"
and not exists ("Generated Report")
and not exists (
"Active or Completed Activity"
union "Activity Not Done"
)
and not exists (
"Activity Proposal"
union "Activity Proposal Rejected"
)
define function doNotPerform(task Task):
singleton from (
task.extension E
where E.url = 'http://hl7.org/fhir/StructureDefinition/request-doNotPerform'
).value as boolean
define function reportWith(task Task):
singleton from (
task.input I
where I.type ~ "Generate report"
).value as canonical
</code></pre><p><code>Content not shown - (</code><code>application/elm+xml</code>, size = 15Kb)</p><p><code>Content not shown - (</code><code>application/elm+json</code>, size = 28Kb)</p></div>
</text>
<extension
url="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability">
<valueCode value="shareable"/>
</extension>
<extension
url="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability">
<valueCode value="computable"/>
</extension>
<extension
url="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability">
<valueCode value="publishable"/>
</extension>
<extension
url="http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel">
<valueCode value="structured"/>
</extension>
<url value="http://hl7.org/fhir/uv/cpg/Library/GenerateReport"/>
<version value="1.0.0"/>
<name value="GenerateReport"/>
<title value="Generate Report"/>
<status value="draft"/>
<experimental value="true"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2020-11-29T15:54:22-07:00"/>
<publisher value="HL7 International - Clinical Decision Support WG"/>
<contact>
<telecom>
<system value="url"/>
<value value="http://hl7.org/Special/committees/dss"/>
</telecom>
</contact>
<description value="Logic for an example recommendation to generate a report"/>
<jurisdiction>
<coding>
<system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
<code value="001"/>
<display value="World"/>
</coding>
</jurisdiction>
<relatedArtifact>
<type value="depends-on"/>
<resource value="http://hl7.org/fhir/Library/FHIR-ModelInfo|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<resource value="http://hl7.org/fhir/Library/FHIRHelpers|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<resource value="http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type"/>
</relatedArtifact>
<parameter>
<name value="reportWith"/>
<use value="in"/>
<min value="0"/>
<max value="1"/>
<type value="string"/>
</parameter>
<parameter>
<name value="Patient"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Patient"/>
</parameter>
<parameter>
<name value="Inclusion Criteria"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Generation Task"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Task"/>
</parameter>
<parameter>
<name value="Generated Report"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="MeasureReport"/>
</parameter>
<parameter>
<name value="Active or Completed Activity"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Task"/>
</parameter>
<parameter>
<name value="Activity Not Done"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Task"/>
</parameter>
<parameter>
<name value="Activity Proposal"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Task"/>
</parameter>
<parameter>
<name value="Activity Proposal Rejected"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Task"/>
</parameter>
<parameter>
<name value="Is Recommendation Applicable"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<dataRequirement>
<type value="Task"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Task"/>
</dataRequirement>
<dataRequirement>
<type value="MeasureReport"/>
<profile value="http://hl7.org/fhir/StructureDefinition/MeasureReport"/>
</dataRequirement>
<content>
<contentType value="text/cql"/>
<data
value="bGlicmFyeSBHZW5lcmF0ZVJlcG9ydA0KDQp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJw0KDQppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJw0KDQpjb2Rlc3lzdGVtICJBY3Rpdml0eSBUeXBlIjogJ2h0dHA6Ly9obDcub3JnL2ZoaXIvdXYvY3BnL0NvZGVTeXN0ZW0vY3BnLWFjdGl2aXR5LXR5cGUnDQoNCmNvZGUgIkdlbmVyYXRlIHJlcG9ydCI6ICdnZW5lcmF0ZS1yZXBvcnQnIGZyb20gIkFjdGl2aXR5IFR5cGUiDQoNCnBhcmFtZXRlciByZXBvcnRXaXRoIFN0cmluZw0KDQpjb250ZXh0IFBhdGllbnQNCg0KLyogUmVjb21tZW5kYXRpb24gdG8gZ2VuZXJhdGUgYSByZXBvcnQgKi8NCg0KLyoNCk5PVEU6IFRoaXMgcmVjb21tZW5kYXRpb24gaXMgZHJhbWF0aWNhbGx5IHNpbXBsaWZpZWQgdG8gaWxsdXN0cmF0ZSB0aGUgZ2VuZXJhbA0KcGF0dGVybiBmb3IgYSBwb3NpdGl2ZSByZWNvbW1lbmRhdGlvbiB0byBlbnJvbGwgYSBwYXRpZW50LCB3aXRoIHRoZSBhYmlsaXR5DQpmb3IgdXNlcnMgdG8gcmVqZWN0IHRoZSByZWNvbW1lbmRhdGlvbiwgYW5kIGZsZXhpYmlsaXR5IGluIGhvdyB0aGUgcmVjb21tZW5kYXRpb24NCmlzIGFjaGlldmVkLg0KDQpTcGVjaWZpY2FsbHk6DQoqIFRoZXJlIGlzIG5vIHRlcm1pbm9sb2d5LCBhbnkgdGFzayBvbiBhbnkgdG9waWMgd2lsbCBkbw0KKiBUaGVyZSBpcyBubyB0aW1pbmcsIGFueSB0YXNrIHdpbGwgZG8gYXQgYW55IHRpbWUNCiogVGhlcmUgaXMgbm8gcmVmZXJlbmNlIHRvIHBhcnRpY2lwYW50cyBvdGhlciB0aGFuIHRoZSBwYXRpZW50DQoqIFRoZXJlIGlzIG5vIHJlbGF0aW9uc2hpcCB0byBhIHNldHRpbmcNCiogVGhlcmUgaXMgbm8gcmVsYXRpb25zaGlwIHRvIGFuIGVuY291bnRlciBvciBlcGlzb2RlDQoqIFRoZXJlIGlzIG5vIHJlbGF0aW9uc2hpcCB0byBhIGNhcmUgcGxhbg0KDQpUaGVzZSBzaW1wbGlmaWNhdGlvbnMgYWxsb3cgdGhlIGV4YW1wbGUgdG8gZm9jdXMgZXhjbHVzaXZlbHkgb24gdGhlIHBhdHRlcm4gZm9yDQpyZWNvbW1lbmRpbmcgYW5kIGZvciBhY2NlcHRpbmcvcmVqZWN0aW5nIHRoZSBwcm9wb3NhbCwgYXMgd2VsbCBhcyBkb2N1bWVudGluZw0KdGhlIGNvbXBsZXRpb24sIG9yIGV4cGxpY2l0IG5vbi1wZXJmb3JtYW5jZSBvZiB0aGUgYWN0aXZpdHkuDQoqLw0KDQovKg0KUG9zaXRpdmUgcmVjb21tZW5kYXRpb246DQoNCklmIHRoZSBwYXRpZW50IG1lZXRzIHRoZSBpbmNsdXNpb24gY3JpdGVyaWENCiAgSWYgdGhlIHJlcG9ydCBoYXMgbm90IGJlZW4gZ2VuZXJhdGVkDQogICAgSWYgcmVwb3J0IGdlbmVyYXRpb24gaGFzIG5vdCBiZWVuIHBsYW5uZWQgb3IgcHJvcG9zZWQNCiAgICAgIFByb3Bvc2UgcmVwb3J0IGdlbmVyYXRpb24NCg0KR2l2ZW4gYSBwcm9wb3NhbCwgdGhlIHVzZXIgY2FuOg0KICBBY2NlcHQgdGhlIHByb3Bvc2FsDQogIElnbm9yZSB0aGUgcHJvcG9zYWwNCiAgUmVqZWN0IHRoZSBwcm9wb3NhbCB3aXRob3V0IHJlYXNvbg0KICBSZWplY3QgdGhlIHByb3Bvc2FsIHdpdGggcmVhc29uDQoNClNjZW5hcmlvIDE6IE5vIGV2ZW50LCBubyBwbGFuIG9yIHByb3Bvc2FsLCBkZWNpc2lvbiBzdXBwb3J0IHNob3VsZCBwcm9wb3NlDQpTY2VuYXJpbyAyOiBObyBldmVudCwgaW5jb21wbGV0ZSBwcm9wb3NhbCwgZGVjaXNpb24gc3VwcG9ydCBzaG91bGQgbm90IHByb3Bvc2UNClNjZW5hcmlvIDM6IE5vIGV2ZW50LCByZWplY3RlZCBwcm9wb3NhbCwgZGVjaXNpb24gc3VwcG9ydCBzaG91bGQgbm90IHByb3Bvc2UNClNjZW5hcmlvIDQ6IEV2ZW50LCBubyBwcm9wb3NhbCwgZGVjaXNpb24gc3VwcG9ydCBzaG91bGQgbm90IHByb3Bvc2UNClNjZW5hcmlvIDU6IEV2ZW50LCBjb21wbGV0ZWQgcHJvcG9zYWwsIGRlY2lzaW9uIHN1cHBvcnQgc2hvdWxkIG5vdCBwcm9wb3NlDQpTY2VuYXJpbyA2OiBFdmVudCBub3QgZG9uZSwgbm8gcHJvcG9zYWwsIGRlY2lzaW9uIHN1cHBvcnQgc2hvdWxkIG5vdCBwcm9wb3NlDQpTY2VuYXJpbyA3OiBFdmVudCBub3QgZG9uZSwgcHJvcG9zYWwsIGRlY2lzaW9uIHN1cHBvcnQgc2hvdWxkIG5vdCBwcm9wb3NlDQoNCiovDQoNCmRlZmluZSAiSW5jbHVzaW9uIENyaXRlcmlhIjoNCiAgUGF0aWVudC5hY3RpdmUNCg0KZGVmaW5lICJHZW5lcmF0aW9uIFRhc2siOg0KICBbVGFza10gQw0KICAgIHdoZXJlIEMuY29kZSB+ICJHZW5lcmF0ZSByZXBvcnQiDQogICAgICBhbmQgcmVwb3J0V2l0aChDKS52YWx1ZSA9IHJlcG9ydFdpdGgNCiAgICAgIGFuZCBub3QgQ29hbGVzY2UoZG9Ob3RQZXJmb3JtKEMpLCBmYWxzZSkNCg0KZGVmaW5lICJHZW5lcmF0ZWQgUmVwb3J0IjoNCiAgW01lYXN1cmVSZXBvcnRdIFINCiAgICB3aGVyZSBSLm1lYXN1cmUudmFsdWUgPSByZXBvcnRXaXRoDQoNCmRlZmluZSAiQWN0aXZlIG9yIENvbXBsZXRlZCBBY3Rpdml0eSI6DQogICJHZW5lcmF0aW9uIFRhc2siIEMNCiAgICB3aGVyZSBDLnN0YXR1cyBpbiB7ICdpbi1wcm9ncmVzcycsICdvbi1ob2xkJywgJ2NvbXBsZXRlZCcgfQ0KDQpkZWZpbmUgIkFjdGl2aXR5IE5vdCBEb25lIjoNCiAgIkdlbmVyYXRpb24gVGFzayIgQw0KICAgIHdoZXJlIEMuc3RhdHVzIGluIHsgJ2NhbmNlbGxlZCcsICdmYWlsZWQnIH0NCg0KZGVmaW5lICJBY3Rpdml0eSBQcm9wb3NhbCI6DQogICJHZW5lcmF0aW9uIFRhc2siIFINCiAgICB3aGVyZSBSLnN0YXR1cyBpbiB7ICdkcmFmdCcsICdyZXF1ZXN0ZWQnLCAncmVjZWl2ZWQnLCAnYWNjZXB0ZWQnLCAncmVhZHknIH0NCg0KZGVmaW5lICJBY3Rpdml0eSBQcm9wb3NhbCBSZWplY3RlZCI6DQogICJHZW5lcmF0aW9uIFRhc2siIFINCiAgICB3aGVyZSBSLnN0YXR1cyBpbiB7ICdyZWplY3RlZCcgfQ0KDQpkZWZpbmUgIklzIFJlY29tbWVuZGF0aW9uIEFwcGxpY2FibGUiOg0KICAiSW5jbHVzaW9uIENyaXRlcmlhIg0KICAgIGFuZCBub3QgZXhpc3RzICgiR2VuZXJhdGVkIFJlcG9ydCIpDQogICAgYW5kIG5vdCBleGlzdHMgKA0KICAgICAgIkFjdGl2ZSBvciBDb21wbGV0ZWQgQWN0aXZpdHkiDQogICAgICAgIHVuaW9uICJBY3Rpdml0eSBOb3QgRG9uZSINCiAgICApDQogICAgYW5kIG5vdCBleGlzdHMgKA0KICAgICAgIkFjdGl2aXR5IFByb3Bvc2FsIg0KICAgICAgICB1bmlvbiAiQWN0aXZpdHkgUHJvcG9zYWwgUmVqZWN0ZWQiDQogICAgKQ0KDQpkZWZpbmUgZnVuY3Rpb24gZG9Ob3RQZXJmb3JtKHRhc2sgVGFzayk6DQogIHNpbmdsZXRvbiBmcm9tICgNCiAgICB0YXNrLmV4dGVuc2lvbiBFDQogICAgICB3aGVyZSBFLnVybCA9ICdodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vcmVxdWVzdC1kb05vdFBlcmZvcm0nDQogICkudmFsdWUgYXMgYm9vbGVhbg0KDQpkZWZpbmUgZnVuY3Rpb24gcmVwb3J0V2l0aCh0YXNrIFRhc2spOg0KICBzaW5nbGV0b24gZnJvbSAoDQogICAgdGFzay5pbnB1dCBJDQogICAgICB3aGVyZSBJLnR5cGUgfiAiR2VuZXJhdGUgcmVwb3J0Ig0KICApLnZhbHVlIGFzIGNhbm9uaWNhbA0K"/>
</content>
<content>
<contentType value="application/elm+xml"/>
<data
value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxsaWJyYXJ5IHhtbG5zPSJ1cm46aGw3LW9yZzplbG06cjEiIHhtbG5zOnQ9InVybjpobDctb3JnOmVsbS10eXBlczpyMSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6Zmhpcj0iaHR0cDovL2hsNy5vcmcvZmhpciIgeG1sbnM6cWRtNDM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY0XzMiIHhtbG5zOnFkbTUzPSJ1cm46aGVhbHRoaXQtZ292OnFkbTp2NV8zIiB4bWxuczphPSJ1cm46aGw3LW9yZzpjcWwtYW5ub3RhdGlvbnM6cjEiPg0KICAgPGFubm90YXRpb24gdHJhbnNsYXRvck9wdGlvbnM9IkVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iIHhzaTp0eXBlPSJhOkNxbFRvRWxtSW5mbyIvPg0KICAgPGlkZW50aWZpZXIgaWQ9IkdlbmVyYXRlUmVwb3J0IiBzeXN0ZW09Imh0dHA6Ly9zb21ld2hlcmUub3JnL2ZoaXIvdXYvbXljb250ZW50aWciLz4NCiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+DQogICA8dXNpbmdzPg0KICAgICAgPGRlZiBsb2NhbElkZW50aWZpZXI9IlN5c3RlbSIgdXJpPSJ1cm46aGw3LW9yZzplbG0tdHlwZXM6cjEiLz4NCiAgICAgIDxkZWYgbG9jYXRvcj0iMzoxLTM6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSIvPg0KICAgPC91c2luZ3M+DQogICA8aW5jbHVkZXM+DQogICAgICA8ZGVmIGxvY2F0b3I9IjU6MS01OjM1IiBsb2NhbElkZW50aWZpZXI9IkZISVJIZWxwZXJzIiBwYXRoPSJodHRwOi8vc29tZXdoZXJlLm9yZy9maGlyL3V2L215Y29udGVudGlnL0ZISVJIZWxwZXJzIiB2ZXJzaW9uPSI0LjAuMSIvPg0KICAgPC9pbmNsdWRlcz4NCiAgIDxwYXJhbWV0ZXJzPg0KICAgICAgPGRlZiBsb2NhdG9yPSIxMToxLTExOjI3IiBuYW1lPSJyZXBvcnRXaXRoIiBhY2Nlc3NMZXZlbD0iUHVibGljIj4NCiAgICAgICAgIDxwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIGxvY2F0b3I9IjExOjIyLTExOjI3IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPg0KICAgICAgPC9kZWY+DQogICA8L3BhcmFtZXRlcnM+DQogICA8Y29kZVN5c3RlbXM+DQogICAgICA8ZGVmIGxvY2F0b3I9Ijc6MS03Ojg1IiBuYW1lPSJBY3Rpdml0eSBUeXBlIiBpZD0iaHR0cDovL2hsNy5vcmcvZmhpci91di9jcGcvQ29kZVN5c3RlbS9jcGctYWN0aXZpdHktdHlwZSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyIvPg0KICAgPC9jb2RlU3lzdGVtcz4NCiAgIDxjb2Rlcz4NCiAgICAgIDxkZWYgbG9jYXRvcj0iOToxLTk6NjIiIG5hbWU9IkdlbmVyYXRlIHJlcG9ydCIgaWQ9ImdlbmVyYXRlLXJlcG9ydCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8Y29kZVN5c3RlbSBsb2NhdG9yPSI5OjQ4LTk6NjIiIG5hbWU9IkFjdGl2aXR5IFR5cGUiLz4NCiAgICAgIDwvZGVmPg0KICAgPC9jb2Rlcz4NCiAgIDxjb250ZXh0cz4NCiAgICAgIDxkZWYgbG9jYXRvcj0iMTM6MS0xMzoxNSIgbmFtZT0iUGF0aWVudCIvPg0KICAgPC9jb250ZXh0cz4NCiAgIDxzdGF0ZW1lbnRzPg0KICAgICAgPGRlZiBsb2NhdG9yPSIxMzoxLTEzOjE1IiBuYW1lPSJQYXRpZW50IiBjb250ZXh0PSJQYXRpZW50Ij4NCiAgICAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4NCiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjEzOjEtMTM6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhdG9yPSI2MDoxLTYxOjE2IiBuYW1lPSJJbmNsdXNpb24gQ3JpdGVyaWEiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iNjE6My02MToxNiIgcGF0aD0iYWN0aXZlIiB4c2k6dHlwZT0iUHJvcGVydHkiPg0KICAgICAgICAgICAgPHNvdXJjZSBsb2NhdG9yPSI2MTozLTYxOjkiIG5hbWU9IlBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICA8L2V4cHJlc3Npb24+DQogICAgICA8L2RlZj4NCiAgICAgIDxkZWYgbG9jYXRvcj0iMTA3OjEtMTExOjIyIiBuYW1lPSJyZXBvcnRXaXRoIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIiB4c2k6dHlwZT0iRnVuY3Rpb25EZWYiPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iMTA4OjMtMTExOjIyIiBzdHJpY3Q9ImZhbHNlIiB4c2k6dHlwZT0iQXMiPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iMTA4OjMtMTExOjkiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjEwODoxOC0xMTE6OSIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IiR0aGlzIj4NCiAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2F0b3I9IjEwODoxOC0xMTE6MyIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYXRvcj0iMTA5OjUtMTA5OjE2IiBhbGlhcz0iSSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSIxMDk6NS0xMDk6MTQiIHBhdGg9ImlucHV0IiB4c2k6dHlwZT0iUHJvcGVydHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBuYW1lPSJ0YXNrIiB4c2k6dHlwZT0iT3BlcmFuZFJlZiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+DQogICAgICAgICAgICAgICAgICAgICAgICA8d2hlcmUgbG9jYXRvcj0iMTEwOjctMTEwOjM4IiB4c2k6dHlwZT0iRXF1aXZhbGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJUb0NvbmNlcHQiIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjExMDoxMy0xMTA6MTgiIHBhdGg9InR5cGUiIHNjb3BlPSJJIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJUb0NvbmNlcHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iMTEwOjIyLTExMDozOCIgbmFtZT0iR2VuZXJhdGUgcmVwb3J0IiB4c2k6dHlwZT0iQ29kZVJlZiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC93aGVyZT4NCiAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgICAgPHdoZXJlIHhzaTp0eXBlPSJOb3QiPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgeHNpOnR5cGU9IklzTnVsbCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBwYXRoPSJ2YWx1ZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbmFtZT0iJHRoaXMiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgPC93aGVyZT4NCiAgICAgICAgICAgICAgICAgIDxyZXR1cm4gZGlzdGluY3Q9ImZhbHNlIj4NCiAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBuYW1lPSIkdGhpcyIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+DQogICAgICAgICAgICAgICAgICAgICA8L2V4cHJlc3Npb24+DQogICAgICAgICAgICAgICAgICA8L3JldHVybj4NCiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgIDxhc1R5cGVTcGVjaWZpZXIgbG9jYXRvcj0iMTExOjE0LTExMToyMiIgbmFtZT0iZmhpcjpjYW5vbmljYWwiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgIDxvcGVyYW5kIG5hbWU9InRhc2siPg0KICAgICAgICAgICAgPG9wZXJhbmRUeXBlU3BlY2lmaWVyIGxvY2F0b3I9IjEwNzozMy0xMDc6MzYiIG5hbWU9ImZoaXI6VGFzayIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPg0KICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9IjEwMToxLTEwNToyMCIgbmFtZT0iZG9Ob3RQZXJmb3JtIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIiB4c2k6dHlwZT0iRnVuY3Rpb25EZWYiPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iMTAyOjMtMTA1OjIwIiBzdHJpY3Q9ImZhbHNlIiB4c2k6dHlwZT0iQXMiPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iMTAyOjMtMTA1OjkiIHhzaTp0eXBlPSJTaW5nbGV0b25Gcm9tIj4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjEwMjoxOC0xMDU6OSIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgYWxpYXM9IiR0aGlzIj4NCiAgICAgICAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2F0b3I9IjEwMjoxOC0xMDU6MyIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYXRvcj0iMTAzOjUtMTAzOjIwIiBhbGlhcz0iRSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSIxMDM6NS0xMDM6MTgiIHBhdGg9ImV4dGVuc2lvbiIgeHNpOnR5cGU9IlByb3BlcnR5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbmFtZT0idGFzayIgeHNpOnR5cGU9Ik9wZXJhbmRSZWYiLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHdoZXJlIGxvY2F0b3I9IjEwNDo3LTEwNDo4MiIgeHNpOnR5cGU9IkVxdWFsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSIxMDQ6MTMtMTA0OjE3IiBwYXRoPSJ1cmwiIHNjb3BlPSJFIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjEwNDoyMS0xMDQ6ODIiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vcmVxdWVzdC1kb05vdFBlcmZvcm0iIHhzaTp0eXBlPSJMaXRlcmFsIi8+DQogICAgICAgICAgICAgICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgICAgICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+DQogICAgICAgICAgICAgICAgICA8d2hlcmUgeHNpOnR5cGU9Ik5vdCI+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCB4c2k6dHlwZT0iSXNOdWxsIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBuYW1lPSIkdGhpcyIgeHNpOnR5cGU9IkFsaWFzUmVmIi8+DQogICAgICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgICAgICAgICAgPHJldHVybiBkaXN0aW5jdD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gcGF0aD0idmFsdWUiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIG5hbWU9IiR0aGlzIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4NCiAgICAgICAgICAgICAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgICAgICAgICAgIDwvcmV0dXJuPg0KICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgPGFzVHlwZVNwZWNpZmllciBsb2NhdG9yPSIxMDU6MTQtMTA1OjIwIiBuYW1lPSJmaGlyOmJvb2xlYW4iIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgICAgIDxvcGVyYW5kIG5hbWU9InRhc2siPg0KICAgICAgICAgICAgPG9wZXJhbmRUeXBlU3BlY2lmaWVyIGxvY2F0b3I9IjEwMTozNS0xMDE6MzgiIG5hbWU9ImZoaXI6VGFzayIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPg0KICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9IjYzOjEtNjc6NDYiIG5hbWU9IkdlbmVyYXRpb24gVGFzayIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI2NDozLTY3OjQ2IiB4c2k6dHlwZT0iUXVlcnkiPg0KICAgICAgICAgICAgPHNvdXJjZSBsb2NhdG9yPSI2NDozLTY0OjEwIiBhbGlhcz0iQyI+DQogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI2NDozLTY0OjgiIGRhdGFUeXBlPSJmaGlyOlRhc2siIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9UYXNrIiB4c2k6dHlwZT0iUmV0cmlldmUiLz4NCiAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgPHdoZXJlIGxvY2F0b3I9IjY1OjUtNjc6NDYiIHhzaTp0eXBlPSJBbmQiPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjU6MTEtNjY6NDIiIHhzaTp0eXBlPSJBbmQiPg0KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjU6MTEtNjU6MzYiIHhzaTp0eXBlPSJFcXVpdmFsZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvQ29uY2VwdCIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjU6MTEtNjU6MTYiIHBhdGg9ImNvZGUiIHNjb3BlPSJDIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIHhzaTp0eXBlPSJUb0NvbmNlcHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjU6MjAtNjU6MzYiIG5hbWU9IkdlbmVyYXRlIHJlcG9ydCIgeHNpOnR5cGU9IkNvZGVSZWYiLz4NCiAgICAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjY2OjExLTY2OjQyIiB4c2k6dHlwZT0iRXF1YWwiPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjY6MTEtNjY6MjkiIHBhdGg9InZhbHVlIiB4c2k6dHlwZT0iUHJvcGVydHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBsb2NhdG9yPSI2NjoxMS02NjoyMyIgbmFtZT0icmVwb3J0V2l0aCIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjY2OjIyIiBuYW1lPSJDIiB4c2k6dHlwZT0iQWxpYXNSZWYiLz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjY6MzMtNjY6NDIiIG5hbWU9InJlcG9ydFdpdGgiIHhzaTp0eXBlPSJQYXJhbWV0ZXJSZWYiLz4NCiAgICAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjY3OjExLTY3OjQ2IiB4c2k6dHlwZT0iTm90Ij4NCiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjY3OjE1LTY3OjQ2IiB4c2k6dHlwZT0iQ29hbGVzY2UiPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9Cb29sZWFuIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI2NzoyNC02NzozOCIgbmFtZT0iZG9Ob3RQZXJmb3JtIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjc6MzciIG5hbWU9IkMiIHhzaTp0eXBlPSJBbGlhc1JlZiIvPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iNjc6NDEtNjc6NDUiIHZhbHVlVHlwZT0idDpCb29sZWFuIiB2YWx1ZT0iZmFsc2UiIHhzaTp0eXBlPSJMaXRlcmFsIi8+DQogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9IjY5OjEtNzE6MzgiIG5hbWU9IkdlbmVyYXRlZCBSZXBvcnQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iNzA6My03MTozOCIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgIDxzb3VyY2UgbG9jYXRvcj0iNzA6My03MDoxOSIgYWxpYXM9IlIiPg0KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iNzA6My03MDoxNyIgZGF0YVR5cGU9ImZoaXI6TWVhc3VyZVJlcG9ydCIgdGVtcGxhdGVJZD0iaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL01lYXN1cmVSZXBvcnQiIHhzaTp0eXBlPSJSZXRyaWV2ZSIvPg0KICAgICAgICAgICAgPC9zb3VyY2U+DQogICAgICAgICAgICA8d2hlcmUgbG9jYXRvcj0iNzE6NS03MTozOCIgeHNpOnR5cGU9IkVxdWFsIj4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjcxOjExLTcxOjI1IiBwYXRoPSJ2YWx1ZSIgeHNpOnR5cGU9IlByb3BlcnR5Ij4NCiAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYXRvcj0iNzE6MTEtNzE6MTkiIHBhdGg9Im1lYXN1cmUiIHNjb3BlPSJSIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjcxOjI5LTcxOjM4IiBuYW1lPSJyZXBvcnRXaXRoIiB4c2k6dHlwZT0iUGFyYW1ldGVyUmVmIi8+DQogICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9IjczOjEtNzU6NjMiIG5hbWU9IkFjdGl2ZSBvciBDb21wbGV0ZWQgQWN0aXZpdHkiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPg0KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iNzQ6My03NTo2MyIgeHNpOnR5cGU9IlF1ZXJ5Ij4NCiAgICAgICAgICAgIDxzb3VyY2UgbG9jYXRvcj0iNzQ6My03NDoyMSIgYWxpYXM9IkMiPg0KICAgICAgICAgICAgICAgPGV4cHJlc3Npb24gbG9jYXRvcj0iNzQ6My03NDoxOSIgbmFtZT0iR2VuZXJhdGlvbiBUYXNrIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPg0KICAgICAgICAgICAgPC9zb3VyY2U+DQogICAgICAgICAgICA8d2hlcmUgbG9jYXRvcj0iNzU6NS03NTo2MyIgeHNpOnR5cGU9IkluIj4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIG5hbWU9IlRvU3RyaW5nIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI3NToxMS03NToxOCIgcGF0aD0ic3RhdHVzIiBzY29wZT0iQyIgeHNpOnR5cGU9IlByb3BlcnR5Ii8+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI3NToyMy03NTo2MyIgeHNpOnR5cGU9Ikxpc3QiPg0KICAgICAgICAgICAgICAgICAgPGVsZW1lbnQgbG9jYXRvcj0iNzU6MjUtNzU6MzciIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJpbi1wcm9ncmVzcyIgeHNpOnR5cGU9IkxpdGVyYWwiLz4NCiAgICAgICAgICAgICAgICAgIDxlbGVtZW50IGxvY2F0b3I9Ijc1OjQwLTc1OjQ4IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0ib24taG9sZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4NCiAgICAgICAgICAgICAgICAgIDxlbGVtZW50IGxvY2F0b3I9Ijc1OjUxLTc1OjYxIiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iY29tcGxldGVkIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPg0KICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgPC93aGVyZT4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhdG9yPSI3NzoxLTc5OjQ3IiBuYW1lPSJBY3Rpdml0eSBOb3QgRG9uZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI3ODozLTc5OjQ3IiB4c2k6dHlwZT0iUXVlcnkiPg0KICAgICAgICAgICAgPHNvdXJjZSBsb2NhdG9yPSI3ODozLTc4OjIxIiBhbGlhcz0iQyI+DQogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI3ODozLTc4OjE5IiBuYW1lPSJHZW5lcmF0aW9uIFRhc2siIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICA8L3NvdXJjZT4NCiAgICAgICAgICAgIDx3aGVyZSBsb2NhdG9yPSI3OTo1LTc5OjQ3IiB4c2k6dHlwZT0iSW4iPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4NCiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9Ijc5OjExLTc5OjE4IiBwYXRoPSJzdGF0dXMiIHNjb3BlPSJDIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9Ijc5OjIzLTc5OjQ3IiB4c2k6dHlwZT0iTGlzdCI+DQogICAgICAgICAgICAgICAgICA8ZWxlbWVudCBsb2NhdG9yPSI3OToyNS03OTozNSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImNhbmNlbGxlZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4NCiAgICAgICAgICAgICAgICAgIDxlbGVtZW50IGxvY2F0b3I9Ijc5OjM4LTc5OjQ1IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0iZmFpbGVkIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPg0KICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgPC93aGVyZT4NCiAgICAgICAgIDwvZXhwcmVzc2lvbj4NCiAgICAgIDwvZGVmPg0KICAgICAgPGRlZiBsb2NhdG9yPSI4MToxLTgzOjc5IiBuYW1lPSJBY3Rpdml0eSBQcm9wb3NhbCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI4MjozLTgzOjc5IiB4c2k6dHlwZT0iUXVlcnkiPg0KICAgICAgICAgICAgPHNvdXJjZSBsb2NhdG9yPSI4MjozLTgyOjIxIiBhbGlhcz0iUiI+DQogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI4MjozLTgyOjE5IiBuYW1lPSJHZW5lcmF0aW9uIFRhc2siIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICA8L3NvdXJjZT4NCiAgICAgICAgICAgIDx3aGVyZSBsb2NhdG9yPSI4Mzo1LTgzOjc5IiB4c2k6dHlwZT0iSW4iPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9TdHJpbmciIGxpYnJhcnlOYW1lPSJGSElSSGVscGVycyIgeHNpOnR5cGU9IkZ1bmN0aW9uUmVmIj4NCiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjgzOjExLTgzOjE4IiBwYXRoPSJzdGF0dXMiIHNjb3BlPSJSIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4NCiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjgzOjIzLTgzOjc5IiB4c2k6dHlwZT0iTGlzdCI+DQogICAgICAgICAgICAgICAgICA8ZWxlbWVudCBsb2NhdG9yPSI4MzoyNS04MzozMSIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9ImRyYWZ0IiB4c2k6dHlwZT0iTGl0ZXJhbCIvPg0KICAgICAgICAgICAgICAgICAgPGVsZW1lbnQgbG9jYXRvcj0iODM6MzQtODM6NDQiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJyZXF1ZXN0ZWQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+DQogICAgICAgICAgICAgICAgICA8ZWxlbWVudCBsb2NhdG9yPSI4Mzo0Ny04Mzo1NiIgdmFsdWVUeXBlPSJ0OlN0cmluZyIgdmFsdWU9InJlY2VpdmVkIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPg0KICAgICAgICAgICAgICAgICAgPGVsZW1lbnQgbG9jYXRvcj0iODM6NTktODM6NjgiIHZhbHVlVHlwZT0idDpTdHJpbmciIHZhbHVlPSJhY2NlcHRlZCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4NCiAgICAgICAgICAgICAgICAgIDxlbGVtZW50IGxvY2F0b3I9IjgzOjcxLTgzOjc3IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0icmVhZHkiIHhzaTp0eXBlPSJMaXRlcmFsIi8+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9Ijg1OjEtODc6MzYiIG5hbWU9IkFjdGl2aXR5IFByb3Bvc2FsIFJlamVjdGVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4NCiAgICAgICAgIDxleHByZXNzaW9uIGxvY2F0b3I9Ijg2OjMtODc6MzYiIHhzaTp0eXBlPSJRdWVyeSI+DQogICAgICAgICAgICA8c291cmNlIGxvY2F0b3I9Ijg2OjMtODY6MjEiIGFsaWFzPSJSIj4NCiAgICAgICAgICAgICAgIDxleHByZXNzaW9uIGxvY2F0b3I9Ijg2OjMtODY6MTkiIG5hbWU9IkdlbmVyYXRpb24gVGFzayIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4NCiAgICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgICAgPHdoZXJlIGxvY2F0b3I9Ijg3OjUtODc6MzYiIHhzaTp0eXBlPSJJbiI+DQogICAgICAgICAgICAgICA8b3BlcmFuZCBuYW1lPSJUb1N0cmluZyIgbGlicmFyeU5hbWU9IkZISVJIZWxwZXJzIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPg0KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iODc6MTEtODc6MTgiIHBhdGg9InN0YXR1cyIgc2NvcGU9IlIiIHhzaTp0eXBlPSJQcm9wZXJ0eSIvPg0KICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iODc6MjMtODc6MzYiIHhzaTp0eXBlPSJMaXN0Ij4NCiAgICAgICAgICAgICAgICAgIDxlbGVtZW50IGxvY2F0b3I9Ijg3OjI1LTg3OjM0IiB2YWx1ZVR5cGU9InQ6U3RyaW5nIiB2YWx1ZT0icmVqZWN0ZWQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8L3doZXJlPg0KICAgICAgICAgPC9leHByZXNzaW9uPg0KICAgICAgPC9kZWY+DQogICAgICA8ZGVmIGxvY2F0b3I9Ijg5OjEtOTk6NSIgbmFtZT0iSXMgUmVjb21tZW5kYXRpb24gQXBwbGljYWJsZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+DQogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhdG9yPSI5MDozLTk5OjUiIHhzaTp0eXBlPSJBbmQiPg0KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iOTA6My05NTo1IiB4c2k6dHlwZT0iQW5kIj4NCiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjkwOjMtOTE6MzkiIHhzaTp0eXBlPSJBbmQiPg0KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbmFtZT0iVG9Cb29sZWFuIiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5MDozLTkwOjIyIiBuYW1lPSJJbmNsdXNpb24gQ3JpdGVyaWEiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5MTo5LTkxOjM5IiB4c2k6dHlwZT0iTm90Ij4NCiAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjkxOjEzLTkxOjM5IiB4c2k6dHlwZT0iRXhpc3RzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjkxOjIwLTkxOjM5IiBuYW1lPSJHZW5lcmF0ZWQgUmVwb3J0IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPg0KICAgICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgPC9vcGVyYW5kPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iOTI6OS05NTo1IiB4c2k6dHlwZT0iTm90Ij4NCiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjkyOjEzLTk1OjUiIHhzaTp0eXBlPSJFeGlzdHMiPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iOTI6MjAtOTU6NSIgeHNpOnR5cGU9IlVuaW9uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2F0b3I9IjkzOjctOTM6MzYiIG5hbWU9IkFjdGl2ZSBvciBDb21wbGV0ZWQgQWN0aXZpdHkiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5NDoxNS05NDozMyIgbmFtZT0iQWN0aXZpdHkgTm90IERvbmUiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5Njo5LTk5OjUiIHhzaTp0eXBlPSJOb3QiPg0KICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iOTY6MTMtOTk6NSIgeHNpOnR5cGU9IkV4aXN0cyI+DQogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5NjoyMC05OTo1IiB4c2k6dHlwZT0iVW5pb24iPg0KICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYXRvcj0iOTc6Ny05NzoyNSIgbmFtZT0iQWN0aXZpdHkgUHJvcG9zYWwiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhdG9yPSI5ODoxNS05ODo0MiIgbmFtZT0iQWN0aXZpdHkgUHJvcG9zYWwgUmVqZWN0ZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+DQogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICAgICA8L29wZXJhbmQ+DQogICAgICAgICA8L2V4cHJlc3Npb24+DQogICAgICA8L2RlZj4NCiAgIDwvc3RhdGVtZW50cz4NCjwvbGlicmFyeT4NCg=="/>
</content>
<content>
<contentType value="application/elm+json"/>
<data
value="ew0KICAgImxpYnJhcnkiIDogew0KICAgICAgImFubm90YXRpb24iIDogWyB7DQogICAgICAgICAidHJhbnNsYXRvck9wdGlvbnMiIDogIkVuYWJsZUxvY2F0b3JzLERpc2FibGVMaXN0RGVtb3Rpb24sRGlzYWJsZUxpc3RQcm9tb3Rpb24iLA0KICAgICAgICAgInR5cGUiIDogIkNxbFRvRWxtSW5mbyINCiAgICAgIH0gXSwNCiAgICAgICJpZGVudGlmaWVyIiA6IHsNCiAgICAgICAgICJpZCIgOiAiR2VuZXJhdGVSZXBvcnQiLA0KICAgICAgICAgInN5c3RlbSIgOiAiaHR0cDovL3NvbWV3aGVyZS5vcmcvZmhpci91di9teWNvbnRlbnRpZyINCiAgICAgIH0sDQogICAgICAic2NoZW1hSWRlbnRpZmllciIgOiB7DQogICAgICAgICAiaWQiIDogInVybjpobDctb3JnOmVsbSIsDQogICAgICAgICAidmVyc2lvbiIgOiAicjEiDQogICAgICB9LA0KICAgICAgInVzaW5ncyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiU3lzdGVtIiwNCiAgICAgICAgICAgICJ1cmkiIDogInVybjpobDctb3JnOmVsbS10eXBlczpyMSINCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIzOjEtMzoyNiIsDQogICAgICAgICAgICAibG9jYWxJZGVudGlmaWVyIiA6ICJGSElSIiwNCiAgICAgICAgICAgICJ1cmkiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIiLA0KICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIg0KICAgICAgICAgfSBdDQogICAgICB9LA0KICAgICAgImluY2x1ZGVzIiA6IHsNCiAgICAgICAgICJkZWYiIDogWyB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiNToxLTU6MzUiLA0KICAgICAgICAgICAgImxvY2FsSWRlbnRpZmllciIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgInBhdGgiIDogImh0dHA6Ly9zb21ld2hlcmUub3JnL2ZoaXIvdXYvbXljb250ZW50aWcvRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgInZlcnNpb24iIDogIjQuMC4xIg0KICAgICAgICAgfSBdDQogICAgICB9LA0KICAgICAgInBhcmFtZXRlcnMiIDogew0KICAgICAgICAgImRlZiIgOiBbIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMToxLTExOjI3IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJyZXBvcnRXaXRoIiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJwYXJhbWV0ZXJUeXBlU3BlY2lmaWVyIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMToyMi0xMToyNyIsDQogICAgICAgICAgICAgICAibmFtZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLA0KICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciINCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0gXQ0KICAgICAgfSwNCiAgICAgICJjb2RlU3lzdGVtcyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjc6MS03Ojg1IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJBY3Rpdml0eSBUeXBlIiwNCiAgICAgICAgICAgICJpZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci91di9jcGcvQ29kZVN5c3RlbS9jcGctYWN0aXZpdHktdHlwZSIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyINCiAgICAgICAgIH0gXQ0KICAgICAgfSwNCiAgICAgICJjb2RlcyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjk6MS05OjYyIiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJHZW5lcmF0ZSByZXBvcnQiLA0KICAgICAgICAgICAgImlkIiA6ICJnZW5lcmF0ZS1yZXBvcnQiLA0KICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLA0KICAgICAgICAgICAgImNvZGVTeXN0ZW0iIDogew0KICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk6NDgtOTo2MiIsDQogICAgICAgICAgICAgICAibmFtZSIgOiAiQWN0aXZpdHkgVHlwZSINCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0gXQ0KICAgICAgfSwNCiAgICAgICJjb250ZXh0cyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjEzOjEtMTM6MTUiLA0KICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiDQogICAgICAgICB9IF0NCiAgICAgIH0sDQogICAgICAic3RhdGVtZW50cyIgOiB7DQogICAgICAgICAiZGVmIiA6IFsgew0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjEzOjEtMTM6MTUiLA0KICAgICAgICAgICAgIm5hbWUiIDogIlBhdGllbnQiLA0KICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLA0KICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgInR5cGUiIDogIlNpbmdsZXRvbkZyb20iLA0KICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEzOjEtMTM6MTUiLA0KICAgICAgICAgICAgICAgICAgImRhdGFUeXBlIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1QYXRpZW50IiwNCiAgICAgICAgICAgICAgICAgICJ0ZW1wbGF0ZUlkIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vUGF0aWVudCIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUmV0cmlldmUiDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiNjA6MS02MToxNiIsDQogICAgICAgICAgICAibmFtZSIgOiAiSW5jbHVzaW9uIENyaXRlcmlhIiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2MTozLTYxOjE2IiwNCiAgICAgICAgICAgICAgICJwYXRoIiA6ICJhY3RpdmUiLA0KICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwNCiAgICAgICAgICAgICAgICJzb3VyY2UiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjYxOjMtNjE6OSIsDQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiINCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDc6MS0xMTE6MjIiLA0KICAgICAgICAgICAgIm5hbWUiIDogInJlcG9ydFdpdGgiLA0KICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLA0KICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLA0KICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uRGVmIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDg6My0xMTE6MjIiLA0KICAgICAgICAgICAgICAgInN0cmljdCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBcyIsDQogICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA4OjMtMTExOjkiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlNpbmdsZXRvbkZyb20iLA0KICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwODoxOC0xMTE6OSIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiJHRoaXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwODoxOC0xMTE6MyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDk6NS0xMDk6MTYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJJIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDk6NS0xMDk6MTQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogImlucHV0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ0YXNrIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJPcGVyYW5kUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAid2hlcmUiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjExMDo3LTExMDozOCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXF1aXZhbGVudCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJUb0NvbmNlcHQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJGSElSSGVscGVycyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTEwOjEzLTExMDoxOCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGF0aCIgOiAidHlwZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogIkkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVG9Db25jZXB0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMTA6MjItMTEwOjM4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJHZW5lcmF0ZSByZXBvcnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkNvZGVSZWYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTm90IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJJc051bGwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogInZhbHVlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICIkdGhpcyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQWxpYXNSZWYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgInJldHVybiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAiZGlzdGluY3QiIDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAicGF0aCIgOiAidmFsdWUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJzb3VyY2UiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIiR0aGlzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc1JlZiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAiYXNUeXBlU3BlY2lmaWVyIiA6IHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMTE6MTQtMTExOjIyIiwNCiAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1jYW5vbmljYWwiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciINCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJ0YXNrIiwNCiAgICAgICAgICAgICAgICJvcGVyYW5kVHlwZVNwZWNpZmllciIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA3OjMzLTEwNzozNiIsDQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9VGFzayIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIg0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSBdDQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiMTAxOjEtMTA1OjIwIiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJkb05vdFBlcmZvcm0iLA0KICAgICAgICAgICAgImNvbnRleHQiIDogIlBhdGllbnQiLA0KICAgICAgICAgICAgImFjY2Vzc0xldmVsIiA6ICJQdWJsaWMiLA0KICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uRGVmIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDI6My0xMDU6MjAiLA0KICAgICAgICAgICAgICAgInN0cmljdCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBcyIsDQogICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTAyOjMtMTA1OjkiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlNpbmdsZXRvbkZyb20iLA0KICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwMjoxOC0xMDU6OSIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiJHRoaXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwMjoxOC0xMDU6MyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDM6NS0xMDM6MjAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJFIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDM6NS0xMDM6MTgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogImV4dGVuc2lvbiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAidGFzayIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiT3BlcmFuZFJlZiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZWxhdGlvbnNoaXAiIDogWyBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIndoZXJlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICIxMDQ6Ny0xMDQ6ODIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkVxdWFsIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvU3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNDoxMy0xMDQ6MTciLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogInVybCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogIkUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTA0OjIxLTEwNDo4MiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogImh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9yZXF1ZXN0LWRvTm90UGVyZm9ybSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgICAgICAgIndoZXJlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOb3QiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIklzTnVsbCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGF0aCIgOiAidmFsdWUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzb3VyY2UiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIiR0aGlzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbGlhc1JlZiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAicmV0dXJuIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJkaXN0aW5jdCIgOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJ2YWx1ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiJHRoaXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFsaWFzUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICJhc1R5cGVTcGVjaWZpZXIiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjEwNToxNC0xMDU6MjAiLA0KICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIntodHRwOi8vaGw3Lm9yZy9maGlyfWJvb2xlYW4iLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5hbWVkVHlwZVNwZWNpZmllciINCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICJuYW1lIiA6ICJ0YXNrIiwNCiAgICAgICAgICAgICAgICJvcGVyYW5kVHlwZVNwZWNpZmllciIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiMTAxOjM1LTEwMTozOCIsDQogICAgICAgICAgICAgICAgICAibmFtZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9VGFzayIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTmFtZWRUeXBlU3BlY2lmaWVyIg0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSBdDQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiNjM6MS02Nzo0NiIsDQogICAgICAgICAgICAibmFtZSIgOiAiR2VuZXJhdGlvbiBUYXNrIiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NDozLTY3OjQ2IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsDQogICAgICAgICAgICAgICAic291cmNlIiA6IFsgew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY0OjMtNjQ6MTAiLA0KICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJDIiwNCiAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NDozLTY0OjgiLA0KICAgICAgICAgICAgICAgICAgICAgImRhdGFUeXBlIiA6ICJ7aHR0cDovL2hsNy5vcmcvZmhpcn1UYXNrIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0ZW1wbGF0ZUlkIiA6ICJodHRwOi8vaGw3Lm9yZy9maGlyL1N0cnVjdHVyZURlZmluaXRpb24vVGFzayIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUmV0cmlldmUiDQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAicmVsYXRpb25zaGlwIiA6IFsgXSwNCiAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjU6NS02Nzo0NiIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQW5kIiwNCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY1OjExLTY2OjQyIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLA0KICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjU6MTEtNjU6MzYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkVxdWl2YWxlbnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9Db25jZXB0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY1OjExLTY1OjE2IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJjb2RlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY29wZSIgOiAiQyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJUb0NvbmNlcHQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY1OjIwLTY1OjM2IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJHZW5lcmF0ZSByZXBvcnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkNvZGVSZWYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NjoxMS02Njo0MiIsDQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXF1YWwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6MTEtNjY6MjkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogInZhbHVlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAic291cmNlIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NjoxMS02NjoyMyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAicmVwb3J0V2l0aCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6MjIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFsaWFzUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjY6MzMtNjY6NDIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogInJlcG9ydFdpdGgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlBhcmFtZXRlclJlZiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6MTEtNjc6NDYiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsDQogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNjc6MTUtNjc6NDYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkNvYWxlc2NlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvQm9vbGVhbiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAibGlicmFyeU5hbWUiIDogIkZISVJIZWxwZXJzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NzoyNC02NzozOCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiZG9Ob3RQZXJmb3JtIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJGdW5jdGlvblJlZiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2NzozNyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiQWxpYXNSZWYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjY3OjQxLTY3OjQ1IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9Qm9vbGVhbiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogImZhbHNlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI2OToxLTcxOjM4IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJHZW5lcmF0ZWQgUmVwb3J0IiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MDozLTcxOjM4IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsDQogICAgICAgICAgICAgICAic291cmNlIiA6IFsgew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjcwOjMtNzA6MTkiLA0KICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJSIiwNCiAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MDozLTcwOjE3IiwNCiAgICAgICAgICAgICAgICAgICAgICJkYXRhVHlwZSIgOiAie2h0dHA6Ly9obDcub3JnL2ZoaXJ9TWVhc3VyZVJlcG9ydCIsDQogICAgICAgICAgICAgICAgICAgICAidGVtcGxhdGVJZCIgOiAiaHR0cDovL2hsNy5vcmcvZmhpci9TdHJ1Y3R1cmVEZWZpbml0aW9uL01lYXN1cmVSZXBvcnQiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlJldHJpZXZlIg0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sDQogICAgICAgICAgICAgICAid2hlcmUiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjcxOjUtNzE6MzgiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkVxdWFsIiwNCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjcxOjExLTcxOjI1IiwNCiAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJ2YWx1ZSIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUHJvcGVydHkiLA0KICAgICAgICAgICAgICAgICAgICAgInNvdXJjZSIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzE6MTEtNzE6MTkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogIm1lYXN1cmUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJSIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSINCiAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3MToyOS03MTozOCIsDQogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAicmVwb3J0V2l0aCIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiUGFyYW1ldGVyUmVmIg0KICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiNzM6MS03NTo2MyIsDQogICAgICAgICAgICAibmFtZSIgOiAiQWN0aXZlIG9yIENvbXBsZXRlZCBBY3Rpdml0eSIsDQogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsDQogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzQ6My03NTo2MyIsDQogICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NDozLTc0OjIxIiwNCiAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiQyIsDQogICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzQ6My03NDoxOSIsDQogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiR2VuZXJhdGlvbiBUYXNrIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sDQogICAgICAgICAgICAgICAid2hlcmUiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjUtNzU6NjMiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkluIiwNCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvU3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjExLTc1OjE4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJzdGF0dXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJDIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSINCiAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjIzLTc1OjYzIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXN0IiwNCiAgICAgICAgICAgICAgICAgICAgICJlbGVtZW50IiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjI1LTc1OjM3IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiaW4tcHJvZ3Jlc3MiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiDQogICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzU6NDAtNzU6NDgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJvbi1ob2xkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc1OjUxLTc1OjYxIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiY29tcGxldGVkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3NzoxLTc5OjQ3IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJBY3Rpdml0eSBOb3QgRG9uZSIsDQogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsDQogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzg6My03OTo0NyIsDQogICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI3ODozLTc4OjIxIiwNCiAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiQyIsDQogICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiNzg6My03ODoxOSIsDQogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiR2VuZXJhdGlvbiBUYXNrIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sDQogICAgICAgICAgICAgICAid2hlcmUiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjUtNzk6NDciLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkluIiwNCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvU3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjExLTc5OjE4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJzdGF0dXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJDIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSINCiAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjIzLTc5OjQ3IiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXN0IiwNCiAgICAgICAgICAgICAgICAgICAgICJlbGVtZW50IiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjI1LTc5OjM1IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiY2FuY2VsbGVkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjc5OjM4LTc5OjQ1IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiZmFpbGVkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4MToxLTgzOjc5IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJBY3Rpdml0eSBQcm9wb3NhbCIsDQogICAgICAgICAgICAiY29udGV4dCIgOiAiUGF0aWVudCIsDQogICAgICAgICAgICAiYWNjZXNzTGV2ZWwiIDogIlB1YmxpYyIsDQogICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04Mzo3OSIsDQogICAgICAgICAgICAgICAidHlwZSIgOiAiUXVlcnkiLA0KICAgICAgICAgICAgICAgInNvdXJjZSIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4MjozLTgyOjIxIiwNCiAgICAgICAgICAgICAgICAgICJhbGlhcyIgOiAiUiIsDQogICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiIgOiB7DQogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODI6My04MjoxOSIsDQogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiR2VuZXJhdGlvbiBUYXNrIiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfSBdLA0KICAgICAgICAgICAgICAgInJlbGF0aW9uc2hpcCIgOiBbIF0sDQogICAgICAgICAgICAgICAid2hlcmUiIDogew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjUtODM6NzkiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkluIiwNCiAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIlRvU3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjExLTgzOjE4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXRoIiA6ICJzdGF0dXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInNjb3BlIiA6ICJSIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJQcm9wZXJ0eSINCiAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjIzLTgzOjc5IiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXN0IiwNCiAgICAgICAgICAgICAgICAgICAgICJlbGVtZW50IiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjI1LTgzOjMxIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAiZHJhZnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiDQogICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODM6MzQtODM6NDQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJyZXF1ZXN0ZWQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiDQogICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODM6NDctODM6NTYiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJyZWNlaXZlZCIsDQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCINCiAgICAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4Mzo1OS04Mzo2OCIsDQogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWVUeXBlIiA6ICJ7dXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxfVN0cmluZyIsDQogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiIDogImFjY2VwdGVkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJMaXRlcmFsIg0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjgzOjcxLTgzOjc3IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZVR5cGUiIDogInt1cm46aGw3LW9yZzplbG0tdHlwZXM6cjF9U3RyaW5nIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIgOiAicmVhZHkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpdGVyYWwiDQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgfSwgew0KICAgICAgICAgICAgImxvY2F0b3IiIDogIjg1OjEtODc6MzYiLA0KICAgICAgICAgICAgIm5hbWUiIDogIkFjdGl2aXR5IFByb3Bvc2FsIFJlamVjdGVkIiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NjozLTg3OjM2IiwNCiAgICAgICAgICAgICAgICJ0eXBlIiA6ICJRdWVyeSIsDQogICAgICAgICAgICAgICAic291cmNlIiA6IFsgew0KICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjg2OjMtODY6MjEiLA0KICAgICAgICAgICAgICAgICAgImFsaWFzIiA6ICJSIiwNCiAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI4NjozLTg2OjE5IiwNCiAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJHZW5lcmF0aW9uIFRhc2siLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiDQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9IF0sDQogICAgICAgICAgICAgICAicmVsYXRpb25zaGlwIiA6IFsgXSwNCiAgICAgICAgICAgICAgICJ3aGVyZSIgOiB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6NS04NzozNiIsDQogICAgICAgICAgICAgICAgICAidHlwZSIgOiAiSW4iLA0KICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9TdHJpbmciLA0KICAgICAgICAgICAgICAgICAgICAgImxpYnJhcnlOYW1lIiA6ICJGSElSSGVscGVycyIsDQogICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRnVuY3Rpb25SZWYiLA0KICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6MTEtODc6MTgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInBhdGgiIDogInN0YXR1cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAic2NvcGUiIDogIlIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIlByb3BlcnR5Ig0KICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6MjMtODc6MzYiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkxpc3QiLA0KICAgICAgICAgICAgICAgICAgICAgImVsZW1lbnQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiODc6MjUtODc6MzQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlVHlwZSIgOiAie3VybjpobDctb3JnOmVsbS10eXBlczpyMX1TdHJpbmciLA0KICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIiA6ICJyZWplY3RlZCIsDQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiTGl0ZXJhbCINCiAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICB9LCB7DQogICAgICAgICAgICAibG9jYXRvciIgOiAiODk6MS05OTo1IiwNCiAgICAgICAgICAgICJuYW1lIiA6ICJJcyBSZWNvbW1lbmRhdGlvbiBBcHBsaWNhYmxlIiwNCiAgICAgICAgICAgICJjb250ZXh0IiA6ICJQYXRpZW50IiwNCiAgICAgICAgICAgICJhY2Nlc3NMZXZlbCIgOiAiUHVibGljIiwNCiAgICAgICAgICAgICJleHByZXNzaW9uIiA6IHsNCiAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MDozLTk5OjUiLA0KICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsDQogICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MDozLTk1OjUiLA0KICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkFuZCIsDQogICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MDozLTkxOjM5IiwNCiAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJBbmQiLA0KICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiVG9Cb29sZWFuIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJsaWJyYXJ5TmFtZSIgOiAiRkhJUkhlbHBlcnMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkZ1bmN0aW9uUmVmIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IFsgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkwOjMtOTA6MjIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkluY2x1c2lvbiBDcml0ZXJpYSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjkxOjktOTE6MzkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsDQogICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTE6MTMtOTE6MzkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4aXN0cyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTE6MjAtOTE6MzkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkdlbmVyYXRlZCBSZXBvcnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgICAgICAgIH0sIHsNCiAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5Mjo5LTk1OjUiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIk5vdCIsDQogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTI6MTMtOTU6NSIsDQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhpc3RzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJvcGVyYW5kIiA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5MjoyMC05NTo1IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJVbmlvbiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiBbIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhdG9yIiA6ICI5Mzo3LTkzOjM2IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJBY3RpdmUgb3IgQ29tcGxldGVkIEFjdGl2aXR5IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk0OjE1LTk0OjMzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIiA6ICJBY3Rpdml0eSBOb3QgRG9uZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiRXhwcmVzc2lvblJlZiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTY6OS05OTo1IiwNCiAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJOb3QiLA0KICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogew0KICAgICAgICAgICAgICAgICAgICAgImxvY2F0b3IiIDogIjk2OjEzLTk5OjUiLA0KICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4aXN0cyIsDQogICAgICAgICAgICAgICAgICAgICAib3BlcmFuZCIgOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTY6MjAtOTk6NSIsDQogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAiVW5pb24iLA0KICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhbmQiIDogWyB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTc6Ny05NzoyNSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSIgOiAiQWN0aXZpdHkgUHJvcG9zYWwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiIDogIkV4cHJlc3Npb25SZWYiDQogICAgICAgICAgICAgICAgICAgICAgICB9LCB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYXRvciIgOiAiOTg6MTUtOTg6NDIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiIDogIkFjdGl2aXR5IFByb3Bvc2FsIFJlamVjdGVkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJFeHByZXNzaW9uUmVmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfSBdDQogICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICB9IF0NCiAgICAgICAgICAgIH0NCiAgICAgICAgIH0gXQ0KICAgICAgfQ0KICAgfQ0KfQ=="/>
</content>
</Library>