FHIR IG analytics| Package | smart.who.int.immunizations |
| Resource Type | Library |
| Id | Library-IMMZD2DTVaricellaEncounterElements.json |
| FHIR Version | R4 |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
| Title: | IMMZD2DTVaricellaEncounterElements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Id: | IMMZD2DTVaricellaEncounterElements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Version: | 0.2.0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Url: | IMMZD2DTVaricellaEncounterElements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Status: | draft | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Type: |
system: http://terminology.hl7.org/CodeSystem/library-type code: logic-library |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Date: | 2026-03-24 11:34:31+0000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Publisher: | WHO | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description: | This library defines encounter-based elements for Varicella used throughout the Immunization CPG |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Related Artifacts: |
Dependencies |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Parameters: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
{
"resourceType": "Library",
"id": "IMMZD2DTVaricellaEncounterElements",
"meta": {
"profile": [
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablelibrary",
"http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-publishablelibrary",
"http://hl7.org/fhir/uv/cql/StructureDefinition/cql-library",
"http://hl7.org/fhir/uv/cql/StructureDefinition/cql-module"
]
},
"text": {
"status": "extensions",
"div": "<!-- snip (see above) -->"
},
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability",
"valueCode": "computable"
}
],
"url": "http://smart.who.int/immunizations/Library/IMMZD2DTVaricellaEncounterElements",
"version": "0.2.0",
"name": "IMMZD2DTVaricellaEncounterElements",
"title": "IMMZD2DTVaricellaEncounterElements",
"status": "draft",
"experimental": false,
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/library-type",
"code": "logic-library"
}
]
},
"date": "2026-03-24T11:34:31+00:00",
"publisher": "WHO",
"contact": [
{
"name": "WHO",
"telecom": [
{
"system": "url",
"value": "http://who.int"
}
]
}
],
"description": "This library defines encounter-based elements for Varicella used throughout the Immunization CPG",
"relatedArtifact": [
{
"type": "depends-on",
"display": "Library WHOConcepts",
"resource": "http://smart.who.int/immunizations/Library/WHOConcepts"
},
{
"type": "depends-on",
"display": "Library WC",
"resource": "http://smart.who.int/immunizations/Library/WHOCommon"
},
{
"type": "depends-on",
"display": "Library WE",
"resource": "http://smart.who.int/immunizations/Library/WHOElements"
},
{
"type": "depends-on",
"display": "Library Common",
"resource": "http://smart.who.int/immunizations/Library/IMMZCommon"
},
{
"type": "depends-on",
"display": "Library Concepts",
"resource": "http://smart.who.int/immunizations/Library/IMMZConcepts"
},
{
"type": "depends-on",
"display": "Library Encounter",
"resource": "http://smart.who.int/immunizations/Library/IMMZEncounterElements"
},
{
"type": "depends-on",
"display": "Library VaricellaElements",
"resource": "http://smart.who.int/immunizations/Library/IMMZD2DTVaricellaElements"
}
],
"parameter": [
{
"name": "Today",
"use": "in",
"min": 0,
"max": "1",
"type": "date"
},
{
"name": "EncounterId",
"use": "in",
"min": 0,
"max": "1",
"type": "string"
},
{
"name": "Patient",
"use": "out",
"min": 0,
"max": "1",
"type": "Patient"
},
{
"name": "Varicella Doses Administered to Patient",
"use": "out",
"min": 0,
"max": "*",
"type": "Immunization"
},
{
"name": "Varicella Primary Series Doses Administered to Patient",
"use": "out",
"min": 0,
"max": "*",
"type": "Immunization"
},
{
"name": "Number of Varicella Primary Series Doses Administered",
"use": "out",
"min": 0,
"max": "1",
"type": "integer"
},
{
"name": "Client's age is less than 12 months",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "No varicella primary series dose was administered",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "Cient's age is more than or equal to 12 months",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "Live vaccine was administered in the past 4 weeks",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "No live vaccine was administered in the past 4 weeks",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "One varicella primary series dose was administered",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "No varicella primary series doses were administered",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "Date of Latest Varicella Dose",
"use": "out",
"min": 0,
"max": "1",
"type": "date"
},
{
"name": "The latest varicella dose administered less than 4 weeks ago",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "The latest varicella dose administered more than 4 weeks ago",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
},
{
"name": "Two varicella primary series doses were administered",
"use": "out",
"min": 0,
"max": "1",
"type": "boolean"
}
],
"content": [
{
"contentType": "text/cql",
"data": "Ci8qCiAgKiBMaWJyYXJ5OiBJTU1aRDJEVFZhcmljZWxsYUVuY291bnRlckVsZW1lbnRzCiAgKi8KbGlicmFyeSBJTU1aRDJEVFZhcmljZWxsYUVuY291bnRlckVsZW1lbnRzCgp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwppbmNsdWRlIEZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBXSE9Db25jZXB0cwppbmNsdWRlIFdIT0NvbW1vbiBjYWxsZWQgV0MKaW5jbHVkZSBXSE9FbGVtZW50cyBjYWxsZWQgV0UKCmluY2x1ZGUgSU1NWkNvbW1vbiBjYWxsZWQgQ29tbW9uCmluY2x1ZGUgSU1NWkNvbmNlcHRzIGNhbGxlZCBDb25jZXB0cwppbmNsdWRlIElNTVpFbmNvdW50ZXJFbGVtZW50cyBjYWxsZWQgRW5jb3VudGVyCgppbmNsdWRlIElNTVpEMkRUVmFyaWNlbGxhRWxlbWVudHMgY2FsbGVkIFZhcmljZWxsYUVsZW1lbnRzCgpwYXJhbWV0ZXIgVG9kYXkgRGF0ZSBkZWZhdWx0IFRvZGF5KCkKcGFyYW1ldGVyIEVuY291bnRlcklkIFN0cmluZwoKY29udGV4dCBQYXRpZW50CgovKgpAaW50ZXJuYWw6IFZhcmljZWxsYSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50CiovCmRlZmluZSAiVmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IjoKICBFbmNvdW50ZXIuIkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBJCiAgd2hlcmUKICAgIEkudmFjY2luZUNvZGUgaW4gQ29uY2VwdHMuIlZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzIgoKLyoKQGludGVybmFsOiBWYXJpY2VsbGEgY29udGFpbmluZyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCB0aGF0IGFyZSBpbiB0aGUgUHJpbWFyeSBzZXJpZXMKKi8KZGVmaW5lICJWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiOgogICJWYXJpY2VsbGEgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLnNlcmllc1ByaW1hcnkoKQoKLyoKQGludGVybmFsOiBOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIGRvc2VzCiovCmRlZmluZSAiTnVtYmVyIG9mIFZhcmljZWxsYSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiOgogIENvdW50KCJWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiKQoKLyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBvZiBiaXJ0aCIgPCAxMiBtb250aHMKQGNvZGU6IENsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzLTQyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICJDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocyI6CiAgRW5jb3VudGVyLiJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgPCAxMgoKLyoKQGlucHV0OiBObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzIiBhbmQgIlR5cGUgb2YgZG9zZSIgPSAiUHJpbWFyeSBzZXJpZXMiKSA9IDAKQGNvZGU6IE5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICJObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFZhcmljZWxsYSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMAoKLyoKQGlucHV0OiBDaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICJEYXRlIG9mIGJpcnRoIiDiiaUgMTIgbW9udGhzCkBjb2RlOiBDaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzLTQyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICJDaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzIjoKICBFbmNvdW50ZXIuIkN1cnJlbnQgUGF0aWVudCBBZ2UgSW4gTW9udGhzIiA+PSAxMgoKLyoKQGlucHV0OiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSIGxhdGVzdCAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJMaXZlIHZhY2NpbmUiID0gVFJVRSkgPCA0IHdlZWtzCkBjb2RlOiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIjoKICBFbmNvdW50ZXIuIkxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MiCgovKgpAaW5wdXQ6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MKQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgbGF0ZXN0ICJEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uIiAod2hlcmUgIkxpdmUgdmFjY2luZSIgPSBUUlVFKSDiiaUgNCB3ZWVrcwpAY29kZTogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcy05MgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAiTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyI6CiAgRW5jb3VudGVyLiJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIgoKLyoKQGlucHV0OiBPbmUgdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAxCkBjb2RlOiBPbmUgdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMjkKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4xIGRvc2U6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgIk9uZSB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIjoKICAiTnVtYmVyIG9mIFZhcmljZWxsYSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiID0gMQoKLyoKQGlucHV0OiBObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgIlZhY2NpbmUgdHlwZSIgPSAiVmFyaWNlbGxhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGFuZCAiVHlwZSBvZiBkb3NlIiA9ICJQcmltYXJ5IHNlcmllcyIpID0gMApAY29kZTogTm8gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyOQpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgIk5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCI6CiAgIk5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiCgovKgpAaW5wdXQ6IFRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAiRGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiIgKHdoZXJlICJWYWNjaW5lIHR5cGUiID0gIlZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzIikgPCA0IHdlZWtzCkBjb2RlOiBUaGUgbGF0ZXN0IHZhcmljZWxsYSBkb3NlIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28tMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAiVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIjoKCSJEYXRlIG9mIExhdGVzdCBWYXJpY2VsbGEgRG9zZSIgaXMgbm90IG51bGwKICAgIGFuZCBkdXJhdGlvbiBpbiB3ZWVrcyBiZXR3ZWVuICJEYXRlIG9mIExhdGVzdCBWYXJpY2VsbGEgRG9zZSIgYW5kIFRvZGF5IDwgNAoKLyoKQGlucHV0OiBUaGUgbGF0ZXN0IHZhcmljZWxsYSBkb3NlIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28KQHBzZXVkb2NvZGU6IFRvZGF5J3MgZGF0ZSDiiJIgIkRhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24iICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyIpIOKJpSA0IHdlZWtzCkBjb2RlOiBUaGUgbGF0ZXN0IHZhcmljZWxsYSBkb3NlIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28tMTEyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAiVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIjoKICBub3QgIlRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIKCi8qCkBpbnB1dDogVHdvIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAiVmFjY2luZSB0eXBlIiA9ICJWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyIgYW5kICJUeXBlIG9mIGRvc2UiID0gIlByaW1hcnkgc2VyaWVzIikgPSAyCkBjb2RlOiBUd28gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyOQpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgIlR3byB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiOgogICJOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCIgPSAyCgovKgpAaW50ZXJuYWw6IERhdGUgb2YgTGF0ZXN0IFZhcmljZWxsYSBEb3NlCiovCmRlZmluZSAiRGF0ZSBvZiBMYXRlc3QgVmFyaWNlbGxhIERvc2UiOgogIGRhdGUgZnJvbSBzdGFydCBvZiAiVmFyaWNlbGxhIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50Ii5tb3N0UmVjZW50KCkub2NjdXJyZW5jZS50b0ludGVydmFsKCkK"
},
{
"contentType": "application/elm+xml",
"data": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGxpYnJhcnkgeG1sbnM9InVybjpobDctb3JnOmVsbTpyMSIgeG1sbnM6dD0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIiB4bWxuczpmaGlyPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB4bWxuczpxZG00Mz0idXJuOmhlYWx0aGl0LWdvdjpxZG06djRfMyIgeG1sbnM6cWRtNTM9InVybjpoZWFsdGhpdC1nb3Y6cWRtOnY1XzMiIHhtbG5zOmE9InVybjpobDctb3JnOmNxbC1hbm5vdGF0aW9uczpyMSIgbG9jYWxJZD0iMCI+CiAgIDxhbm5vdGF0aW9uIHRyYW5zbGF0b3JPcHRpb25zPSJFbmFibGVBbm5vdGF0aW9ucyxFbmFibGVMb2NhdG9ycyxEaXNhYmxlTGlzdERlbW90aW9uLERpc2FibGVMaXN0UHJvbW90aW9uIiBzaWduYXR1cmVMZXZlbD0iT3ZlcmxvYWRzIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUluZm8iLz4KICAgPGFubm90YXRpb24gbWVzc2FnZT0iQW4gb3BlcmFuZCBpZGVudGlmaWVyIHJlZmVyZW5jZSBpcyBoaWRpbmcgYW5vdGhlciBpZGVudGlmaWVyIG9mIHRoZSBzYW1lIG5hbWUuIiBlcnJvclR5cGU9InNlbWFudGljIiBlcnJvclNldmVyaXR5PSJ3YXJuaW5nIiB4c2k6dHlwZT0iYTpDcWxUb0VsbUVycm9yIi8+CiAgIDxhbm5vdGF0aW9uIG1lc3NhZ2U9IkFuIG9wZXJhbmQgaWRlbnRpZmllciByZWZlcmVuY2UgaXMgaGlkaW5nIGFub3RoZXIgaWRlbnRpZmllciBvZiB0aGUgc2FtZSBuYW1lLiIgZXJyb3JUeXBlPSJzZW1hbnRpYyIgZXJyb3JTZXZlcml0eT0id2FybmluZyIgeHNpOnR5cGU9ImE6Q3FsVG9FbG1FcnJvciIvPgogICA8YW5ub3RhdGlvbiBtZXNzYWdlPSJBbiBvcGVyYW5kIGlkZW50aWZpZXIgcmVmZXJlbmNlIGlzIGhpZGluZyBhbm90aGVyIGlkZW50aWZpZXIgb2YgdGhlIHNhbWUgbmFtZS4iIGVycm9yVHlwZT0ic2VtYW50aWMiIGVycm9yU2V2ZXJpdHk9Indhcm5pbmciIHhzaTp0eXBlPSJhOkNxbFRvRWxtRXJyb3IiLz4KICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgIDxhOnMgcj0iMzE4Ij4KICAgICAgICAgPGE6cz4vKgogICogTGlicmFyeTogSU1NWkQyRFRWYXJpY2VsbGFFbmNvdW50ZXJFbGVtZW50cwogICovCmxpYnJhcnkgSU1NWkQyRFRWYXJpY2VsbGFFbmNvdW50ZXJFbGVtZW50czwvYTpzPgogICAgICA8L2E6cz4KICAgPC9hbm5vdGF0aW9uPgogICA8aWRlbnRpZmllciBpZD0iSU1NWkQyRFRWYXJpY2VsbGFFbmNvdW50ZXJFbGVtZW50cyIgc3lzdGVtPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zIi8+CiAgIDxzY2hlbWFJZGVudGlmaWVyIGlkPSJ1cm46aGw3LW9yZzplbG0iIHZlcnNpb249InIxIi8+CiAgIDx1c2luZ3M+CiAgICAgIDxkZWYgbG9jYWxJZD0iMSIgbG9jYWxJZGVudGlmaWVyPSJTeXN0ZW0iIHVyaT0idXJuOmhsNy1vcmc6ZWxtLXR5cGVzOnIxIiB2ZXJzaW9uPSIxLjAuMCIvPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwNiIgbG9jYXRvcj0iNzoxLTc6MjYiIGxvY2FsSWRlbnRpZmllcj0iRkhJUiIgdXJpPSJodHRwOi8vaGw3Lm9yZy9maGlyIiB2ZXJzaW9uPSI0LjAuMSI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIwNiI+CiAgICAgICAgICAgICAgIDxhOnM+dXNpbmcgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+RkhJUjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gdmVyc2lvbiAnNC4wLjEnPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICA8L3VzaW5ncz4KICAgPGluY2x1ZGVzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIwOCIgbG9jYXRvcj0iODoxLTg6MzUiIGxvY2FsSWRlbnRpZmllcj0iRkhJUkhlbHBlcnMiIHBhdGg9Imh0dHA6Ly9obDcub3JnL2ZoaXIvRkhJUkhlbHBlcnMiIHZlcnNpb249IjQuMC4xIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjA4Ij4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPkZISVJIZWxwZXJzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiB2ZXJzaW9uICc0LjAuMSc8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjEwIiBsb2NhdG9yPSIxMDoxLTEwOjE5IiBsb2NhbElkZW50aWZpZXI9IldIT0NvbmNlcHRzIiBwYXRoPSJodHRwOi8vc21hcnQud2hvLmludC9pbW11bml6YXRpb25zL1dIT0NvbmNlcHRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEwIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMTIiIGxvY2F0b3I9IjExOjEtMTE6MjciIGxvY2FsSWRlbnRpZmllcj0iV0MiIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvV0hPQ29tbW9uIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjEyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPldIT0NvbW1vbjwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdDPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNCIgbG9jYXRvcj0iMTI6MS0xMjoyOSIgbG9jYWxJZGVudGlmaWVyPSJXRSIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9XSE9FbGVtZW50cyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNCI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5XSE9FbGVtZW50czwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gY2FsbGVkIFdFPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxNiIgbG9jYXRvcj0iMTQ6MS0xNDozMiIgbG9jYWxJZGVudGlmaWVyPSJDb21tb24iIHBhdGg9Imh0dHA6Ly9zbWFydC53aG8uaW50L2ltbXVuaXphdGlvbnMvSU1NWkNvbW1vbiI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIxNiI+CiAgICAgICAgICAgICAgIDxhOnM+aW5jbHVkZSA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgPGE6cz5JTU1aQ29tbW9uPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29tbW9uPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIxOCIgbG9jYXRvcj0iMTU6MS0xNTozNiIgbG9jYWxJZGVudGlmaWVyPSJDb25jZXB0cyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aQ29uY2VwdHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMTgiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgQ29uY2VwdHM8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjIwIiBsb2NhdG9yPSIxNjoxLTE2OjQ2IiBsb2NhbElkZW50aWZpZXI9IkVuY291bnRlciIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aRW5jb3VudGVyRWxlbWVudHMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6cyByPSIyMjAiPgogICAgICAgICAgICAgICA8YTpzPmluY2x1ZGUgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+SU1NWkVuY291bnRlckVsZW1lbnRzPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPiBjYWxsZWQgRW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIyMiIgbG9jYXRvcj0iMTg6MS0xODo1OCIgbG9jYWxJZGVudGlmaWVyPSJWYXJpY2VsbGFFbGVtZW50cyIgcGF0aD0iaHR0cDovL3NtYXJ0Lndoby5pbnQvaW1tdW5pemF0aW9ucy9JTU1aRDJEVFZhcmljZWxsYUVsZW1lbnRzIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnMgcj0iMjIyIj4KICAgICAgICAgICAgICAgPGE6cz5pbmNsdWRlIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICA8YTpzPklNTVpEMkRUVmFyaWNlbGxhRWxlbWVudHM8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnM+IGNhbGxlZCBWYXJpY2VsbGFFbGVtZW50czwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICA8L2RlZj4KICAgPC9pbmNsdWRlcz4KICAgPHBhcmFtZXRlcnM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjI0IiBsb2NhdG9yPSIyMDoxLTIwOjM2IiBuYW1lPSJUb2RheSIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIyNCI+CiAgICAgICAgICAgICAgIDxhOnM+cGFyYW1ldGVyIFRvZGF5IDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIyOCI+CiAgICAgICAgICAgICAgICAgIDxhOnM+RGF0ZTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cz4gZGVmYXVsdCA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyMjciPgogICAgICAgICAgICAgICAgICA8YTpzPlRvZGF5KCk8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxkZWZhdWx0IGxvY2FsSWQ9IjIyNyIgbG9jYXRvcj0iMjA6MzAtMjA6MzYiIHhzaTp0eXBlPSJUb2RheSIvPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSIyMjgiIGxvY2F0b3I9IjIwOjE3LTIwOjIwIiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjMwIiBsb2NhdG9yPSIyMToxLTIxOjI4IiBuYW1lPSJFbmNvdW50ZXJJZCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTpzIHI9IjIzMCI+CiAgICAgICAgICAgICAgIDxhOnM+cGFyYW1ldGVyIEVuY291bnRlcklkIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjIzMSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+U3RyaW5nPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8cGFyYW1ldGVyVHlwZVNwZWNpZmllciBsb2NhbElkPSIyMzEiIGxvY2F0b3I9IjIxOjIzLTIxOjI4IiBuYW1lPSJ0OlN0cmluZyIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICA8L2RlZj4KICAgPC9wYXJhbWV0ZXJzPgogICA8Y29udGV4dHM+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjM2IiBsb2NhdG9yPSIyMzoxLTIzOjE1IiBuYW1lPSJQYXRpZW50Ii8+CiAgIDwvY29udGV4dHM+CiAgIDxzdGF0ZW1lbnRzPgogICAgICA8ZGVmIGxvY2FsSWQ9IjIzNCIgbG9jYXRvcj0iMjM6MS0yMzoxNSIgbmFtZT0iUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCI+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjIzNSIgeHNpOnR5cGU9IlNpbmdsZXRvbkZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyMzMiIGxvY2F0b3I9IjIzOjEtMjM6MTUiIGRhdGFUeXBlPSJmaGlyOlBhdGllbnQiIHRlbXBsYXRlSWQ9Imh0dHA6Ly9obDcub3JnL2ZoaXIvU3RydWN0dXJlRGVmaW5pdGlvbi9QYXRpZW50IiB4c2k6dHlwZT0iUmV0cmlldmUiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyMzkiIGxvY2F0b3I9IjI4OjEtMzE6NjEiIG5hbWU9IlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iVmFyaWNlbGxhIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiLz4KICAgICAgICAgICAgPGE6cyByPSIyMzkiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogVmFyaWNlbGxhIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQKKi8KZGVmaW5lICZxdW90O1ZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNTEiPgogICAgICAgICAgICAgICAgICA8YTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0MCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXIuJnF1b3Q7RG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBJPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDgiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPndoZXJlCiAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDgiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI0NSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5JPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPnZhY2NpbmVDb2RlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4gaW4gPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjQ3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkNvbmNlcHRzPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNDciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O1ZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjUxIiBsb2NhdG9yPSIyOTozLTMxOjYxIiB4c2k6dHlwZT0iUXVlcnkiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI0MCIgbG9jYXRvcj0iMjk6My0yOTo0NSIgYWxpYXM9IkkiPgogICAgICAgICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyNDIiIGxvY2F0b3I9IjI5OjMtMjk6NDMiIG5hbWU9IkRvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8L3NvdXJjZT4KICAgICAgICAgICAgPHdoZXJlIGxvY2FsSWQ9IjI0OCIgbG9jYXRvcj0iMzA6My0zMTo2MSIgeHNpOnR5cGU9IkluVmFsdWVTZXQiPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI1MCIgbmFtZT0idDpDb25jZXB0IiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxjb2RlIGxvY2FsSWQ9IjI0OSIgbmFtZT0iVG9Db25jZXB0IiBsaWJyYXJ5TmFtZT0iRkhJUkhlbHBlcnMiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI0NSIgbG9jYXRvcj0iMzE6NS0zMToxNyIgcGF0aD0idmFjY2luZUNvZGUiIHNjb3BlPSJJIiB4c2k6dHlwZT0iUHJvcGVydHkiLz4KICAgICAgICAgICAgICAgPC9jb2RlPgogICAgICAgICAgICAgICA8dmFsdWVzZXQgbG9jYWxJZD0iMjQ3IiBsb2NhdG9yPSIzMToyMi0zMTo2MSIgbmFtZT0iVmFyaWNlbGxhLWNvbnRhaW5pbmcgdmFjY2luZXMiIGxpYnJhcnlOYW1lPSJDb25jZXB0cyIgcHJlc2VydmU9InRydWUiLz4KICAgICAgICAgICAgPC93aGVyZT4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTQiIGxvY2F0b3I9IjM2OjEtMzc6NTkiIG5hbWU9IlZhcmljZWxsYSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iVmFyaWNlbGxhIGNvbnRhaW5pbmcgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQgdGhhdCBhcmUgaW4gdGhlIFByaW1hcnkgc2VyaWVzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjU0Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IFZhcmljZWxsYSBjb250YWluaW5nIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IHRoYXQgYXJlIGluIHRoZSBQcmltYXJ5IHNlcmllcwoqLwpkZWZpbmUgJnF1b3Q7VmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50JnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI1NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjU1Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtWYXJpY2VsbGEgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI1NiI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c2VyaWVzUHJpbWFyeSgpPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjU2IiBsb2NhdG9yPSIzNzozLTM3OjU5IiBuYW1lPSJzZXJpZXNQcmltYXJ5IiBsaWJyYXJ5TmFtZT0iQ29tbW9uIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIyNTUiIGxvY2F0b3I9IjM3OjMtMzc6NDMiIG5hbWU9IlZhcmljZWxsYSBEb3NlcyBBZG1pbmlzdGVyZWQgdG8gUGF0aWVudCIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNTkiIGxvY2F0b3I9IjQyOjEtNDM6NjUiIG5hbWU9Ik51bWJlciBvZiBWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW50ZXJuYWwiIHZhbHVlPSJOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIGRvc2VzIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMjU5Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW50ZXJuYWw6IE51bWJlciBvZiBWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgZG9zZXMKKi8KZGVmaW5lICZxdW90O051bWJlciBvZiBWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI2MyI+CiAgICAgICAgICAgICAgICAgIDxhOnM+Q291bnQoPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjYwIj4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnM+KTwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjYzIiBsb2NhdG9yPSI0MzozLTQzOjY1IiB4c2k6dHlwZT0iQ291bnQiPgogICAgICAgICAgICA8c291cmNlIGxvY2FsSWQ9IjI2MCIgbG9jYXRvcj0iNDM6OS00Mzo2NCIgbmFtZT0iVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCB0byBQYXRpZW50IiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjI2NiIgbG9jYXRvcj0iNTQ6MS01NTo0OCIgbmFtZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNsaWVudCdzIGFnZSBpcyBsZXNzIHRoYW4gMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsgJmx0OyAxMiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iQ2xpZW50J3MgYWdlIGlzIGxlc3MgdGhhbiAxMiBtb250aHMtNDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjI2NiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiAmcXVvdDtEYXRlIG9mIGJpcnRoJnF1b3Q7ICZsdDsgMTIgbW9udGhzCkBjb2RlOiBDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAmcXVvdDtDbGllbnQncyBhZ2UgaXMgbGVzcyB0aGFuIDEyIG1vbnRocyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyNjciPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2OSI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjY4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5FbmNvdW50ZXI8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjI2OSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Q3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI3MCI+ICZsdDsgMTI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI2NyIgbG9jYXRvcj0iNTU6My01NTo0OCIgeHNpOnR5cGU9Ikxlc3MiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI3MSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMjcyIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjY5IiBsb2NhdG9yPSI1NTozLTU1OjQzIiBuYW1lPSJDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMjcwIiBsb2NhdG9yPSI1NTo0Ny01NTo0OCIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxMiIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyNzUiIGxvY2F0b3I9IjY0OjEtNjU6NjEiIG5hbWU9Ik5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VmFyaWNlbGxhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDAiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJjb2RlIiB2YWx1ZT0iTm8gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMjkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjI3NSI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkCkBwc2V1ZG9jb2RlOiBDb3VudCBvZiB2YWNjaW5lcyBhZG1pbmlzdGVyZWQgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1ZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAwCkBjb2RlOiBObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkLTEyOQpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAmcXVvdDtObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI3NiI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjc3Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyNzgiPiA9IDA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI3NiIgbG9jYXRvcj0iNjU6My02NTo2MSIgeHNpOnR5cGU9IkVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyNzkiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3NyIgbG9jYXRvcj0iNjU6My02NTo1NyIgbmFtZT0iTnVtYmVyIG9mIFZhcmljZWxsYSBQcmltYXJ5IFNlcmllcyBEb3NlcyBBZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI3OCIgbG9jYXRvcj0iNjU6NjEiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMCIgeHNpOnR5cGU9IkxpdGVyYWwiLz4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyODMiIGxvY2F0b3I9Ijc2OjEtNzc6NDkiIG5hbWU9IkNpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IkNpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBvZiBiaXJ0aCZxdW90OyDiiaUgMTIgbW9udGhzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IkNpZW50J3MgYWdlIGlzIG1vcmUgdGhhbiBvciBlcXVhbCB0byAxMiBtb250aHMtNDIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjI4MyI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBDaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgb2YgYmlydGgmcXVvdDsg4omlIDEyIG1vbnRocwpAY29kZTogQ2llbnQncyBhZ2UgaXMgbW9yZSB0aGFuIG9yIGVxdWFsIHRvIDEyIG1vbnRocy00MgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAmcXVvdDtDaWVudCdzIGFnZSBpcyBtb3JlIHRoYW4gb3IgZXF1YWwgdG8gMTIgbW9udGhzJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjI4NCI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg2Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIyODUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtDdXJyZW50IFBhdGllbnQgQWdlIEluIE1vbnRocyZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjg3Ij4gPj0gMTI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjI4NCIgbG9jYXRvcj0iNzc6My03Nzo0OSIgeHNpOnR5cGU9IkdyZWF0ZXJPckVxdWFsIj4KICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIyODgiIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjI4OSIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NiIgbG9jYXRvcj0iNzc6My03Nzo0MyIgbmFtZT0iQ3VycmVudCBQYXRpZW50IEFnZSBJbiBNb250aHMiIGxpYnJhcnlOYW1lPSJFbmNvdW50ZXIiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjI4NyIgbG9jYXRvcj0iNzc6NDgtNzc6NDkiIHZhbHVlVHlwZT0idDpJbnRlZ2VyIiB2YWx1ZT0iMTIiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgIDwvZXhwcmVzc2lvbj4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMjkyIiBsb2NhdG9yPSI4ODoxLTg5OjYzIiBuYW1lPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O0xpdmUgdmFjY2luZSZxdW90OyA9IFRSVUUpICZsdDsgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlZhcmljZWxsYS4xIGRvc2U6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6cyByPSIyOTIiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkgJmx0OyA0IHdlZWtzCkBjb2RlOiBMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyCkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICZxdW90O0xpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MmcXVvdDs6CiAgPC9hOnM+CiAgICAgICAgICAgICAgIDxhOnMgcj0iMjk0Ij4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTMiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPkVuY291bnRlcjwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMjk0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMjk0IiBsb2NhdG9yPSI4OTozLTg5OjYzIiBuYW1lPSJMaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgbGFzdCA0IHdlZWtzIiBsaWJyYXJ5TmFtZT0iRW5jb3VudGVyIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIyOTciIGxvY2F0b3I9IjEwMDoxLTEwMTo2NiIgbmFtZT0iTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImlucHV0IiB2YWx1ZT0iTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtMaXZlIHZhY2NpbmUmcXVvdDsgPSBUUlVFKSDiiaUgNCB3ZWVrcyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJObyBsaXZlIHZhY2NpbmUgd2FzIGFkbWluaXN0ZXJlZCBpbiB0aGUgcGFzdCA0IHdlZWtzLTkyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlZhcmljZWxsYS4xIGRvc2U6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6cyByPSIyOTciPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcwpAcHNldWRvY29kZTogVG9kYXkncyBkYXRlIOKIkiBsYXRlc3QgJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7TGl2ZSB2YWNjaW5lJnF1b3Q7ID0gVFJVRSkg4omlIDQgd2Vla3MKQGNvZGU6IE5vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBwYXN0IDQgd2Vla3MtOTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4xIGRvc2U6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgJnF1b3Q7Tm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIHBhc3QgNCB3ZWVrcyZxdW90OzoKICA8L2E6cz4KICAgICAgICAgICAgICAgPGE6cyByPSIyOTkiPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjI5OCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+RW5jb3VudGVyPC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzPi48L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIyOTkiPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O05vIGxpdmUgdmFjY2luZSB3YXMgYWRtaW5pc3RlcmVkIGluIHRoZSBsYXN0IDQgd2Vla3MmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICA8L2E6cz4KICAgICAgICAgPC9hbm5vdGF0aW9uPgogICAgICAgICA8ZXhwcmVzc2lvbiBsb2NhbElkPSIyOTkiIGxvY2F0b3I9IjEwMTozLTEwMTo2NiIgbmFtZT0iTm8gbGl2ZSB2YWNjaW5lIHdhcyBhZG1pbmlzdGVyZWQgaW4gdGhlIGxhc3QgNCB3ZWVrcyIgbGlicmFyeU5hbWU9IkVuY291bnRlciIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgPC9kZWY+CiAgICAgIDxkZWYgbG9jYWxJZD0iMzAyIiBsb2NhdG9yPSIxMTI6MS0xMTM6NjEiIG5hbWU9Ik9uZSB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJPbmUgdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMSIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJPbmUgdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZC0xMjkiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjEgZG9zZTogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImRlY2lzaW9uIiB2YWx1ZT0iSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4mI3hhO1RoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLiIvPgogICAgICAgICAgICA8YTpzIHI9IjMwMiI+CiAgICAgICAgICAgICAgIDxhOnM+LyoKQGlucHV0OiBPbmUgdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMQpAY29kZTogT25lIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQtMTI5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMSBkb3NlOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICZxdW90O09uZSB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZSB3YXMgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMwMyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzA0Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMDUiPiA9IDE8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMwMyIgbG9jYXRvcj0iMTEzOjMtMTEzOjYxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMwNiIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzA3IiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzA0IiBsb2NhdG9yPSIxMTM6My0xMTM6NTciIG5hbWU9Ik51bWJlciBvZiBWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMDUiIGxvY2F0b3I9IjExMzo2MSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIxIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMxMCIgbG9jYXRvcj0iMTIyOjEtMTIzOjUzIiBuYW1lPSJObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQiIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9Ik5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMCIvPgogICAgICAgICAgICA8YTp0IG5hbWU9ImNvZGUiIHZhbHVlPSJObyB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTI5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLiYjeGE7VGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzEwIj4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IE5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlcyB3ZXJlIGFkbWluaXN0ZXJlZApAcHNldWRvY29kZTogQ291bnQgb2YgdmFjY2luZXMgYWRtaW5pc3RlcmVkICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OyBhbmQgJnF1b3Q7VHlwZSBvZiBkb3NlJnF1b3Q7ID0gJnF1b3Q7UHJpbWFyeSBzZXJpZXMmcXVvdDspID0gMApAY29kZTogTm8gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkLTEyOQpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgJnF1b3Q7Tm8gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMxMSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7Tm8gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2Ugd2FzIGFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzExIiBsb2NhdG9yPSIxMjM6My0xMjM6NTMiIG5hbWU9Ik5vIHZhcmljZWxsYSBwcmltYXJ5IHNlcmllcyBkb3NlIHdhcyBhZG1pbmlzdGVyZWQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMxOCIgbG9jYXRvcj0iMTU5OjEtMTYwOjk5IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBWYXJpY2VsbGEgRG9zZSIgY29udGV4dD0iUGF0aWVudCIgYWNjZXNzTGV2ZWw9IlB1YmxpYyI+CiAgICAgICAgIDxhbm5vdGF0aW9uIHhzaTp0eXBlPSJhOkFubm90YXRpb24iPgogICAgICAgICAgICA8YTp0IG5hbWU9ImludGVybmFsIiB2YWx1ZT0iRGF0ZSBvZiBMYXRlc3QgVmFyaWNlbGxhIERvc2UiLz4KICAgICAgICAgICAgPGE6cyByPSIzMTgiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnRlcm5hbDogRGF0ZSBvZiBMYXRlc3QgVmFyaWNlbGxhIERvc2UKKi8KZGVmaW5lICZxdW90O0RhdGUgb2YgTGF0ZXN0IFZhcmljZWxsYSBEb3NlJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMxOSI+CiAgICAgICAgICAgICAgICAgIDxhOnM+ZGF0ZSBmcm9tIDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMCI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+c3RhcnQgb2YgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzIxIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtWYXJpY2VsbGEgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQmcXVvdDs8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+LjwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMyMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+bW9zdFJlY2VudCgpPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5vY2N1cnJlbmNlPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz4uPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI2Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz50b0ludGVydmFsKCk8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjMxOSIgbG9jYXRvcj0iMTYwOjMtMTYwOjk5IiB4c2k6dHlwZT0iRGF0ZUZyb20iPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjAiIGxvY2F0b3I9IjE2MDoxMy0xNjA6OTkiIHhzaTp0eXBlPSJTdGFydCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyNiIgbG9jYXRvcj0iMTYwOjIyLTE2MDo5OSIgbmFtZT0idG9JbnRlcnZhbCIgbGlicmFyeU5hbWU9IldDIiB4c2k6dHlwZT0iRnVuY3Rpb25SZWYiPgogICAgICAgICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjUiIGxvY2F0b3I9IjE2MDoyMi0xNjA6ODYiIHBhdGg9Im9jY3VycmVuY2UiIHhzaTp0eXBlPSJQcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgbG9jYWxJZD0iMzIyIiBsb2NhdG9yPSIxNjA6MjItMTYwOjc1IiBuYW1lPSJtb3N0UmVjZW50IiBsaWJyYXJ5TmFtZT0iV0MiIHhzaTp0eXBlPSJGdW5jdGlvblJlZiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzIzIiB4c2k6dHlwZT0iTGlzdFR5cGVTcGVjaWZpZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZWxlbWVudFR5cGUgbG9jYWxJZD0iMzI0IiBuYW1lPSJmaGlyOkltbXVuaXphdGlvbiIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NpZ25hdHVyZT4KICAgICAgICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzIxIiBsb2NhdG9yPSIxNjA6MjItMTYwOjYyIiBuYW1lPSJWYXJpY2VsbGEgRG9zZXMgQWRtaW5pc3RlcmVkIHRvIFBhdGllbnQiIHhzaTp0eXBlPSJFeHByZXNzaW9uUmVmIi8+CiAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgogICAgICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPC9vcGVyYW5kPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjMxNCIgbG9jYXRvcj0iMTMyOjEtMTM0Ojc5IiBuYW1lPSJUaGUgbGF0ZXN0IHZhcmljZWxsYSBkb3NlIGFkbWluaXN0ZXJlZCBsZXNzIHRoYW4gNCB3ZWVrcyBhZ28iIGNvbnRleHQ9IlBhdGllbnQiIGFjY2Vzc0xldmVsPSJQdWJsaWMiPgogICAgICAgICA8YW5ub3RhdGlvbiB4c2k6dHlwZT0iYTpBbm5vdGF0aW9uIj4KICAgICAgICAgICAgPGE6dCBuYW1lPSJpbnB1dCIgdmFsdWU9IlRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyIvPgogICAgICAgICAgICA8YTp0IG5hbWU9InBzZXVkb2NvZGUiIHZhbHVlPSImcXVvdDtEYXRlIGFuZCB0aW1lIG9mIHZhY2NpbmF0aW9uJnF1b3Q7ICh3aGVyZSAmcXVvdDtWYWNjaW5lIHR5cGUmcXVvdDsgPSAmcXVvdDtWYXJpY2VsbGEtY29udGFpbmluZyB2YWNjaW5lcyZxdW90OykgJmx0OyA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnby0xMTIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6cyByPSIzMTQiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1ZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSAmbHQ7IDQgd2Vla3MKQGNvZGU6IFRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnby0xMTIKQGRlY2lzaW9uOiBJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLgpUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4KKi8KZGVmaW5lICZxdW90O1RoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIGxlc3MgdGhhbiA0IHdlZWtzIGFnbyZxdW90OzoKCTwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjMxNSI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzI5Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMjciPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFZhcmljZWxsYSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICA8YTpzPiBpcyBub3QgbnVsbDwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cz4KICAgIGFuZCA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzAiPgogICAgICAgICAgICAgICAgICAgICA8YTpzIHI9IjMzMSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnM+ZHVyYXRpb24gaW4gd2Vla3MgYmV0d2VlbiA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgICAgPGE6cyByPSIzMzIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiZxdW90O0RhdGUgb2YgTGF0ZXN0IFZhcmljZWxsYSBEb3NlJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8YTpzPiBhbmQgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzMzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGE6cz5Ub2RheTwvYTpzPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzM2Ij4gJmx0OyA0PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzE1IiBsb2NhdG9yPSIxMzM6Mi0xMzQ6NzkiIHhzaTp0eXBlPSJBbmQiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzMjkiIGxvY2F0b3I9IjEzMzoyLTEzMzo0NCIgeHNpOnR5cGU9Ik5vdCI+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMyOCIgbG9jYXRvcj0iMTMzOjItMTMzOjQ0IiB4c2k6dHlwZT0iSXNOdWxsIj4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzI3IiBsb2NhdG9yPSIxMzM6Mi0xMzM6MzIiIG5hbWU9IkRhdGUgb2YgTGF0ZXN0IFZhcmljZWxsYSBEb3NlIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMwIiBsb2NhdG9yPSIxMzQ6OS0xMzQ6NzkiIHhzaTp0eXBlPSJMZXNzIj4KICAgICAgICAgICAgICAgPHNpZ25hdHVyZSBsb2NhbElkPSIzMzciIG5hbWU9InQ6SW50ZWdlciIgeHNpOnR5cGU9Ik5hbWVkVHlwZVNwZWNpZmllciIvPgogICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzOCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzMSIgbG9jYXRvcj0iMTM0OjktMTM0Ojc1IiBwcmVjaXNpb249IldlZWsiIHhzaTp0eXBlPSJEdXJhdGlvbkJldHdlZW4iPgogICAgICAgICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjMzNCIgbmFtZT0idDpEYXRlIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzM1IiBuYW1lPSJ0OkRhdGUiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMyIiBsb2NhdG9yPSIxMzQ6MzUtMTM0OjY1IiBuYW1lPSJEYXRlIG9mIExhdGVzdCBWYXJpY2VsbGEgRG9zZSIgeHNpOnR5cGU9IkV4cHJlc3Npb25SZWYiLz4KICAgICAgICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzMzIiBsb2NhdG9yPSIxMzQ6NzEtMTM0Ojc1IiBuYW1lPSJUb2RheSIgeHNpOnR5cGU9IlBhcmFtZXRlclJlZiIvPgogICAgICAgICAgICAgICA8L29wZXJhbmQ+CiAgICAgICAgICAgICAgIDxvcGVyYW5kIGxvY2FsSWQ9IjMzNiIgbG9jYXRvcj0iMTM0Ojc5IiB2YWx1ZVR5cGU9InQ6SW50ZWdlciIgdmFsdWU9IjQiIHhzaTp0eXBlPSJMaXRlcmFsIi8+CiAgICAgICAgICAgIDwvb3BlcmFuZD4KICAgICAgICAgPC9leHByZXNzaW9uPgogICAgICA8L2RlZj4KICAgICAgPGRlZiBsb2NhbElkPSIzNDEiIGxvY2F0b3I9IjE0MzoxLTE0NDo2OCIgbmFtZT0iVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUaGUgbGF0ZXN0IHZhcmljZWxsYSBkb3NlIGFkbWluaXN0ZXJlZCBtb3JlIHRoYW4gNCB3ZWVrcyBhZ28iLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJwc2V1ZG9jb2RlIiB2YWx1ZT0iJnF1b3Q7RGF0ZSBhbmQgdGltZSBvZiB2YWNjaW5hdGlvbiZxdW90OyAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VmFyaWNlbGxhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDspIOKJpSA0IHdlZWtzIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlRoZSBsYXRlc3QgdmFyaWNlbGxhIGRvc2UgYWRtaW5pc3RlcmVkIG1vcmUgdGhhbiA0IHdlZWtzIGFnby0xMTIiLz4KICAgICAgICAgICAgPGE6dCBuYW1lPSJkZWNpc2lvbiIgdmFsdWU9IklNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuJiN4YTtUaGUgbnVtYmVyIG9mIGRvc2VzIHJlY29tbWVuZGVkIGlzIGRlcGVuZGVudCBvbiB0aGUgZ29hbCBvZiB0aGUgdmFjY2luYXRpb24gcHJvZ3JhbW1lLiBPbmUgZG9zZSBpcyBzdWZmaWNpZW50IHRvIHJlZHVjZSBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHkgZnJvbSB2YXJpY2VsbGEgYnV0IG5vdCB0byBwcmV2ZW50IGxpbWl0ZWQgdmlydXMgY2lyY3VsYXRpb24gYW5kIG91dGJyZWFrcy4gVHdvIGRvc2VzIGhhdmUgaGlnaGVyIGVmZmVjdGl2ZW5lc3MgYW5kIHNob3VsZCB0aGVyZWZvcmUgYmUgcmVjb21tZW5kZWQgaW4gY291bnRyaWVzIHdoZXJlIHRoZSBwcm9ncmFtbWF0aWMgZ29hbCBpcywgaW4gYWRkaXRpb24gdG8gZGVjcmVhc2luZyBtb3J0YWxpdHkgYW5kIHNldmVyZSBtb3JiaWRpdHksIHRvIGZ1cnRoZXIgcmVkdWNlIHRoZSBudW1iZXIgb2YgY2FzZXMgYW5kIG91dGJyZWFrcy4iLz4KICAgICAgICAgICAgPGE6cyByPSIzNDEiPgogICAgICAgICAgICAgICA8YTpzPi8qCkBpbnB1dDogVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvCkBwc2V1ZG9jb2RlOiBUb2RheSdzIGRhdGUg4oiSICZxdW90O0RhdGUgYW5kIHRpbWUgb2YgdmFjY2luYXRpb24mcXVvdDsgKHdoZXJlICZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1ZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7KSDiiaUgNCB3ZWVrcwpAY29kZTogVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvLTExMgpAZGVjaXNpb246IElNTVouRDIuRFQuVmFyaWNlbGxhLjIgZG9zZXM6IENvdW50cmllcyB3aGVyZSB2YXJpY2VsbGEgaXMgYW4gaW1wb3J0YW50IHB1YmxpYyBoZWFsdGggYnVyZGVuIGNvdWxkIGNvbnNpZGVyIGludHJvZHVjaW5nIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBpbiB0aGUgcm91dGluZSBjaGlsZGhvb2QgaW1tdW5pemF0aW9uIHByb2dyYW1tZS4gSG93ZXZlciwgcmVzb3VyY2VzIHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIGVuc3VyZSByZWFjaGluZyBhbmQgc3VzdGFpbmluZyB2YWNjaW5lIGNvdmVyYWdlIOKJpSA4MCUuIERlY2lzaW9uLW1ha2luZyBvbiBjaGlsZGhvb2QgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIHNob3VsZCBhbHNvIGluY2x1ZGUgY29uc2lkZXJhdGlvbiBvZiB0aGUgcG9zc2libGUgaW1wYWN0IG9uIGhlcnBlcyB6b3N0ZXIuClRoZSBudW1iZXIgb2YgZG9zZXMgcmVjb21tZW5kZWQgaXMgZGVwZW5kZW50IG9uIHRoZSBnb2FsIG9mIHRoZSB2YWNjaW5hdGlvbiBwcm9ncmFtbWUuIE9uZSBkb3NlIGlzIHN1ZmZpY2llbnQgdG8gcmVkdWNlIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSBmcm9tIHZhcmljZWxsYSBidXQgbm90IHRvIHByZXZlbnQgbGltaXRlZCB2aXJ1cyBjaXJjdWxhdGlvbiBhbmQgb3V0YnJlYWtzLiBUd28gZG9zZXMgaGF2ZSBoaWdoZXIgZWZmZWN0aXZlbmVzcyBhbmQgc2hvdWxkIHRoZXJlZm9yZSBiZSByZWNvbW1lbmRlZCBpbiBjb3VudHJpZXMgd2hlcmUgdGhlIHByb2dyYW1tYXRpYyBnb2FsIGlzLCBpbiBhZGRpdGlvbiB0byBkZWNyZWFzaW5nIG1vcnRhbGl0eSBhbmQgc2V2ZXJlIG1vcmJpZGl0eSwgdG8gZnVydGhlciByZWR1Y2UgdGhlIG51bWJlciBvZiBjYXNlcyBhbmQgb3V0YnJlYWtzLgoqLwpkZWZpbmUgJnF1b3Q7VGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbW9yZSB0aGFuIDQgd2Vla3MgYWdvJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM0MiI+CiAgICAgICAgICAgICAgICAgIDxhOnM+bm90IDwvYTpzPgogICAgICAgICAgICAgICAgICA8YTpzIHI9IjM0MyI+CiAgICAgICAgICAgICAgICAgICAgIDxhOnM+JnF1b3Q7VGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvJnF1b3Q7PC9hOnM+CiAgICAgICAgICAgICAgICAgIDwvYTpzPgogICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgIDwvYW5ub3RhdGlvbj4KICAgICAgICAgPGV4cHJlc3Npb24gbG9jYWxJZD0iMzQyIiBsb2NhdG9yPSIxNDQ6My0xNDQ6NjgiIHhzaTp0eXBlPSJOb3QiPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDMiIGxvY2F0b3I9IjE0NDo3LTE0NDo2OCIgbmFtZT0iVGhlIGxhdGVzdCB2YXJpY2VsbGEgZG9zZSBhZG1pbmlzdGVyZWQgbGVzcyB0aGFuIDQgd2Vla3MgYWdvIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICAgICA8ZGVmIGxvY2FsSWQ9IjM0NiIgbG9jYXRvcj0iMTUzOjEtMTU0OjYxIiBuYW1lPSJUd28gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIiBjb250ZXh0PSJQYXRpZW50IiBhY2Nlc3NMZXZlbD0iUHVibGljIj4KICAgICAgICAgPGFubm90YXRpb24geHNpOnR5cGU9ImE6QW5ub3RhdGlvbiI+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iaW5wdXQiIHZhbHVlPSJUd28gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0icHNldWRvY29kZSIgdmFsdWU9IiZxdW90O1ZhY2NpbmUgdHlwZSZxdW90OyA9ICZxdW90O1ZhcmljZWxsYS1jb250YWluaW5nIHZhY2NpbmVzJnF1b3Q7IGFuZCAmcXVvdDtUeXBlIG9mIGRvc2UmcXVvdDsgPSAmcXVvdDtQcmltYXJ5IHNlcmllcyZxdW90OykgPSAyIi8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iY29kZSIgdmFsdWU9IlR3byB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTI5Ii8+CiAgICAgICAgICAgIDxhOnQgbmFtZT0iZGVjaXNpb24iIHZhbHVlPSJJTU1aLkQyLkRULlZhcmljZWxsYS4yIGRvc2VzOiBDb3VudHJpZXMgd2hlcmUgdmFyaWNlbGxhIGlzIGFuIGltcG9ydGFudCBwdWJsaWMgaGVhbHRoIGJ1cmRlbiBjb3VsZCBjb25zaWRlciBpbnRyb2R1Y2luZyB2YXJpY2VsbGEgdmFjY2luYXRpb24gaW4gdGhlIHJvdXRpbmUgY2hpbGRob29kIGltbXVuaXphdGlvbiBwcm9ncmFtbWUuIEhvd2V2ZXIsIHJlc291cmNlcyBzaG91bGQgYmUgc3VmZmljaWVudCB0byBlbnN1cmUgcmVhY2hpbmcgYW5kIHN1c3RhaW5pbmcgdmFjY2luZSBjb3ZlcmFnZSDiiaUgODAlLiBEZWNpc2lvbi1tYWtpbmcgb24gY2hpbGRob29kIHZhcmljZWxsYSB2YWNjaW5hdGlvbiBzaG91bGQgYWxzbyBpbmNsdWRlIGNvbnNpZGVyYXRpb24gb2YgdGhlIHBvc3NpYmxlIGltcGFjdCBvbiBoZXJwZXMgem9zdGVyLiYjeGE7VGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuIi8+CiAgICAgICAgICAgIDxhOnMgcj0iMzQ2Ij4KICAgICAgICAgICAgICAgPGE6cz4vKgpAaW5wdXQ6IFR3byB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQKQHBzZXVkb2NvZGU6IENvdW50IG9mIHZhY2NpbmVzIGFkbWluaXN0ZXJlZCAod2hlcmUgJnF1b3Q7VmFjY2luZSB0eXBlJnF1b3Q7ID0gJnF1b3Q7VmFyaWNlbGxhLWNvbnRhaW5pbmcgdmFjY2luZXMmcXVvdDsgYW5kICZxdW90O1R5cGUgb2YgZG9zZSZxdW90OyA9ICZxdW90O1ByaW1hcnkgc2VyaWVzJnF1b3Q7KSA9IDIKQGNvZGU6IFR3byB2YXJpY2VsbGEgcHJpbWFyeSBzZXJpZXMgZG9zZXMgd2VyZSBhZG1pbmlzdGVyZWQtMTI5CkBkZWNpc2lvbjogSU1NWi5EMi5EVC5WYXJpY2VsbGEuMiBkb3NlczogQ291bnRyaWVzIHdoZXJlIHZhcmljZWxsYSBpcyBhbiBpbXBvcnRhbnQgcHVibGljIGhlYWx0aCBidXJkZW4gY291bGQgY29uc2lkZXIgaW50cm9kdWNpbmcgdmFyaWNlbGxhIHZhY2NpbmF0aW9uIGluIHRoZSByb3V0aW5lIGNoaWxkaG9vZCBpbW11bml6YXRpb24gcHJvZ3JhbW1lLiBIb3dldmVyLCByZXNvdXJjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gZW5zdXJlIHJlYWNoaW5nIGFuZCBzdXN0YWluaW5nIHZhY2NpbmUgY292ZXJhZ2Ug4omlIDgwJS4gRGVjaXNpb24tbWFraW5nIG9uIGNoaWxkaG9vZCB2YXJpY2VsbGEgdmFjY2luYXRpb24gc2hvdWxkIGFsc28gaW5jbHVkZSBjb25zaWRlcmF0aW9uIG9mIHRoZSBwb3NzaWJsZSBpbXBhY3Qgb24gaGVycGVzIHpvc3Rlci4KVGhlIG51bWJlciBvZiBkb3NlcyByZWNvbW1lbmRlZCBpcyBkZXBlbmRlbnQgb24gdGhlIGdvYWwgb2YgdGhlIHZhY2NpbmF0aW9uIHByb2dyYW1tZS4gT25lIGRvc2UgaXMgc3VmZmljaWVudCB0byByZWR1Y2UgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5IGZyb20gdmFyaWNlbGxhIGJ1dCBub3QgdG8gcHJldmVudCBsaW1pdGVkIHZpcnVzIGNpcmN1bGF0aW9uIGFuZCBvdXRicmVha3MuIFR3byBkb3NlcyBoYXZlIGhpZ2hlciBlZmZlY3RpdmVuZXNzIGFuZCBzaG91bGQgdGhlcmVmb3JlIGJlIHJlY29tbWVuZGVkIGluIGNvdW50cmllcyB3aGVyZSB0aGUgcHJvZ3JhbW1hdGljIGdvYWwgaXMsIGluIGFkZGl0aW9uIHRvIGRlY3JlYXNpbmcgbW9ydGFsaXR5IGFuZCBzZXZlcmUgbW9yYmlkaXR5LCB0byBmdXJ0aGVyIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGNhc2VzIGFuZCBvdXRicmVha3MuCiovCmRlZmluZSAmcXVvdDtUd28gdmFyaWNlbGxhIHByaW1hcnkgc2VyaWVzIGRvc2VzIHdlcmUgYWRtaW5pc3RlcmVkJnF1b3Q7OgogIDwvYTpzPgogICAgICAgICAgICAgICA8YTpzIHI9IjM0NyI+CiAgICAgICAgICAgICAgICAgIDxhOnMgcj0iMzQ4Ij4KICAgICAgICAgICAgICAgICAgICAgPGE6cz4mcXVvdDtOdW1iZXIgb2YgVmFyaWNlbGxhIFByaW1hcnkgU2VyaWVzIERvc2VzIEFkbWluaXN0ZXJlZCZxdW90OzwvYTpzPgogICAgICAgICAgICAgICAgICA8L2E6cz4KICAgICAgICAgICAgICAgICAgPGE6cyByPSIzNDkiPiA9IDI8L2E6cz4KICAgICAgICAgICAgICAgPC9hOnM+CiAgICAgICAgICAgIDwvYTpzPgogICAgICAgICA8L2Fubm90YXRpb24+CiAgICAgICAgIDxleHByZXNzaW9uIGxvY2FsSWQ9IjM0NyIgbG9jYXRvcj0iMTU0OjMtMTU0OjYxIiB4c2k6dHlwZT0iRXF1YWwiPgogICAgICAgICAgICA8c2lnbmF0dXJlIGxvY2FsSWQ9IjM1MCIgbmFtZT0idDpJbnRlZ2VyIiB4c2k6dHlwZT0iTmFtZWRUeXBlU3BlY2lmaWVyIi8+CiAgICAgICAgICAgIDxzaWduYXR1cmUgbG9jYWxJZD0iMzUxIiBuYW1lPSJ0OkludGVnZXIiIHhzaTp0eXBlPSJOYW1lZFR5cGVTcGVjaWZpZXIiLz4KICAgICAgICAgICAgPG9wZXJhbmQgbG9jYWxJZD0iMzQ4IiBsb2NhdG9yPSIxNTQ6My0xNTQ6NTciIG5hbWU9Ik51bWJlciBvZiBWYXJpY2VsbGEgUHJpbWFyeSBTZXJpZXMgRG9zZXMgQWRtaW5pc3RlcmVkIiB4c2k6dHlwZT0iRXhwcmVzc2lvblJlZiIvPgogICAgICAgICAgICA8b3BlcmFuZCBsb2NhbElkPSIzNDkiIGxvY2F0b3I9IjE1NDo2MSIgdmFsdWVUeXBlPSJ0OkludGVnZXIiIHZhbHVlPSIyIiB4c2k6dHlwZT0iTGl0ZXJhbCIvPgogICAgICAgICA8L2V4cHJlc3Npb24+CiAgICAgIDwvZGVmPgogICA8L3N0YXRlbWVudHM+CjwvbGlicmFyeT4K"
}
]
}