submission: draft-ietf-ldup-protocol-05.txt
John McMeeking <[email protected]> Mon, 29 Dec 2003 13:47:31 -0600
| Newsgroups | gmane.ietf.ldup |
|---|---|
| Message-ID | <OFC600071A.1BB9DE3D-ON86256E0B.006BCE1D-86256E0B.006CBA79@us.ibm.com> |
--0__=09BBE498DFF8488D8f9e8a93df938690918c09BBE498DFF8488D Content-type: text/plain; charset=US-ASCII To the I-D editor: Attached is draft-ietf-ldup-protocol-05.txt. To LDUP: Attached is draft-ietf-ldup-protocol-05.txt, which I believe to be ready for WG last call. This revision adds a reference to the new CSN draft and adds an IANA Considerations section. John McMeeking (See attached file: draft-ietf-ldup-protocol-05.txt) --0__=09BBE498DFF8488D8f9e8a93df938690918c09BBE498DFF8488D Content-type: application/octet-stream; name="draft-ietf-ldup-protocol-05.txt" Content-Disposition: attachment; filename="draft-ietf-ldup-protocol-05.txt" Content-transfer-encoding: base64 CgogICBMRFVQIFJlcGxpY2F0aW9uIFVwZGF0ZSBQcm90b2NvbCAgICAgICAgICAgICAgICAgICBK b2huIE1jTWVla2luZyAKICAgSW50ZXJuZXQtRHJhZnQgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgSUJNIENvcnBvcmF0aW9uIAogICBJbnRlbmRlZCBDYXRlZ29yeTogRXhwZXJp bWVudGFsICAgICAgICAgICAgICAgICAgICAgCiAgIEV4cGlyZXM6IEp1bmUgMjAwNCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIERlY2VtYmVyIDIwMDMgCiAgICAKICAgIAogICAgICAg ICAgICAgICAgICAgVGhlIExEVVAgUmVwbGljYXRpb24gVXBkYXRlIFByb3RvY29sIAogICAgICAg ICAgICAgICAgICAgICA8ZHJhZnQtaWV0Zi1sZHVwLXByb3RvY29sLTA1LnR4dD4gCiAgICAKMS4g IFN0YXR1cyBvZiB0aGlzIE1lbW8gCgogICBUaGlzIGRvY3VtZW50IGlzIGFuIEludGVybmV0LURy YWZ0IGFuZCBpcyBpbiBmdWxsIGNvbmZvcm1hbmNlIHdpdGggCiAgIGFsbCBwcm92aXNpb25zIG9m IFNlY3Rpb24gMTAgb2YgUkZDMjAyNi4gCiAgICAKICAgSW50ZXJuZXQtRHJhZnRzIGFyZSB3b3Jr aW5nIGRvY3VtZW50cyBvZiB0aGUgSW50ZXJuZXQgRW5naW5lZXJpbmcgCiAgIFRhc2sgRm9yY2Ug KElFVEYpLCBpdHMgYXJlYXMsIGFuZCBpdHMgd29ya2luZyBncm91cHMuIE5vdGUgdGhhdCAKICAg b3RoZXIgZ3JvdXBzIG1heSBhbHNvIGRpc3RyaWJ1dGUgd29ya2luZyBkb2N1bWVudHMgYXMgSW50 ZXJuZXQtCiAgIERyYWZ0cy4gCiAgICAKICAgSW50ZXJuZXQtRHJhZnRzIGFyZSBkcmFmdCBkb2N1 bWVudHMgdmFsaWQgZm9yIGEgbWF4aW11bSBvZiBzaXggCiAgIG1vbnRocyBhbmQgbWF5IGJlIHVw ZGF0ZWQsIHJlcGxhY2VkLCBvciBvYnNvbGV0ZWQgYnkgb3RoZXIgZG9jdW1lbnRzIAogICBhdCBh bnkgdGltZS4gIEl0IGlzIGluYXBwcm9wcmlhdGUgdG8gdXNlIEludGVybmV0LURyYWZ0cyBhcyAK ICAgcmVmZXJlbmNlIG1hdGVyaWFsIG9yIHRvIGNpdGUgdGhlbSBvdGhlciB0aGFuIGFzICJ3b3Jr IGluIHByb2dyZXNzLiIgCiAgICAKICAgVG8gdmlldyB0aGUgbGlzdCBJbnRlcm5ldC1EcmFmdCBT aGFkb3cgRGlyZWN0b3JpZXMsIHNlZSAKICAgaHR0cDovL3d3dy5pZXRmLm9yZy9zaGFkb3cuaHRt bC4gCiAKMi4gIEFic3RyYWN0IAoKICAgVGhlIHByb3RvY29sIGRlc2NyaWJlZCBpbiB0aGlzIGRv Y3VtZW50IGlzIGRlc2lnbmVkIHRvIGFsbG93IG9uZSAKICAgTERBUCBzZXJ2ZXIgdG8gcmVwbGlj YXRlIGl0cyBkaXJlY3RvcnkgY29udGVudCB0byBhbm90aGVyIExEQVAgCiAgIHNlcnZlci4gVGhl IHByb3RvY29sIGlzIGRlc2lnbmVkIHRvIGJlIHVzZWQgaW4gYSByZXBsaWNhdGlvbiAKICAgY29u ZmlndXJhdGlvbiB3aGVyZSBtdWx0aXBsZSB1cGRhdGVhYmxlIHNlcnZlcnMgYXJlIHByZXNlbnQu IAogICBQcm92aXNpb25zIGFyZSBtYWRlIGluIHRoZSBwcm90b2NvbCB0byBjYXJyeSBpbmZvcm1h dGlvbiB0aGF0IGFsbG93cyAKICAgdGhlIHNlcnZlciByZWNlaXZpbmcgdXBkYXRlcyB0byBhcHBs eSBhIHRvdGFsIG9yZGVyaW5nIHRvIGFsbCAKICAgdXBkYXRlcyBpbiB0aGUgcmVwbGljYXRlZCBz eXN0ZW0uIFRoaXMgdG90YWwgb3JkZXJpbmcgYWxsb3dzIGFsbCAKICAgcmVwbGljYXMgdG8gY29y cmVjdGx5IHJlc29sdmUgY29uZmxpY3RzIHRoYXQgYXJpc2Ugd2hlbiBMREFQIGNsaWVudHMgCiAg IHN1Ym1pdCBjaGFuZ2VzIHRvIGRpZmZlcmVudCBzZXJ2ZXJzIHRoYXQgbGF0ZXIgcmVwbGljYXRl IHRvIG9uZSAKICAgYW5vdGhlci4gCiAgICAKICAgQWxsIHByb3RvY29sIGVsZW1lbnRzIGRlc2Ny aWJlZCBoZXJlIGFyZSBMREFQdjMgZXh0ZW5kZWQgb3BlcmF0aW9ucyAKICAgYW5kIGNvbnRyb2xz LiBMREFQdjMgaXMgZGVzY3JpYmVkIGluIFJGQyAyMjUxIFtMREFQdjNdLiBTb21lIExEQVB2MyAK ICAgZXh0ZW5kZWQgb3BlcmF0aW9ucyBhbmQgY29udHJvbHMgZGVzY3JpYmVkIGhlcmUgYXJlIExE QVB2MyBleHRlbmRlZCAKICAgb3BlcmF0aW9ucyB1c2VkIHRvIGdyb3VwIHJlbGF0ZWQgb3BlcmF0 aW9ucy4gVGhlIHByb3RvY29sIGVsZW1lbnRzIAogICB1c2VkIGZvciBncm91cGluZyBhcmUgZGVz Y3JpYmVkIGluIExEQVB2MzogR3JvdXBpbmcgb2YgUmVsYXRlZCAKICAgT3BlcmF0aW9ucyBbR1JP VVBJTkddLiAKICAgIAogICBDZXJ0YWluIHRlcm1zIHVzZWQgaW4gdGhpcyBkb2N1bWVudCBhcmUg ZGVmaW5lZCBpbiB0aGUgZG9jdW1lbnQgCiAgICJMREFQIFJlcGxpY2F0aW9uIEFyY2hpdGVjdHVy ZSIgW0FSQ0hJVEVDVFVSRV0uIAogICAgCgoKIApNY01lZWtpbmcgICAgICAgICAgICAgICBFeHBp cmVzIFNlcHRlbWJlciAyMDAzICAgICAgICAgICAgICAgIFtQYWdlIDFdIAogCgoKCgoKCgoKSW50 ZXJuZXQgRHJhZnQgICAgICAgICAgICAgTERVUCBSZXBsaWNhdGlvbiAgICAgICAgICAgICAgICAg TWFyY2ggMjAwMyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0ZSBQcm90b2NvbCAK IAogICBUaGUga2V5IHdvcmRzICJNVVNUIiwgIk1VU1QgTk9UIiwgIlJFUVVJUkVEIiwgIlNIQUxM IiwgIlNIQUxMIE5PVCIsIAogICAiU0hPVUxEIiwgIlNIT1VMRCBOT1QiLCAiUkVDT01NRU5ERUQi LCBhbmQgIk1BWSIgaW4gdGhpcyBkb2N1bWVudCAKICAgYXJlIHRvIGJlIGludGVycHJldGVkIGFz IGRlc2NyaWJlZCBpbiBSRkMgMjExOSBbS0VZV09SRFNdLiAKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCk1jTWVla2luZyAgICAgICAgICAgICAgIEV4cGly ZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICAgW1BhZ2UgMl0gCiAKCgoKCgoKCgpJbnRl cm5ldCBEcmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAgICAgICBN YXJjaCAyMDAzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFByb3RvY29sIAog CjMuICBUYWJsZSBvZiBDb250ZW50cyAKCjEuICBTdGF0dXMgb2YgdGhpcyBNZW1vLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjEgCjIuICBBYnN0cmFjdC4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjEgCjMu ICBUYWJsZSBvZiBDb250ZW50cy4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLjMgCjQuICBPdmVydmlldyBvZiBQcm90b2NvbC4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjQgCjUuICBIaWdoLWxldmVsIERlc2NyaXB0aW9uIG9m IFByb3RvY29sIEZsb3cuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjQgCjUuMS4gICAgIFN1cHBs aWVyLWluaXRpYXRlZCByZXBsaWNhdGlvbiBwcm90b2NvbC4uLi4uLi4uLi4uLi4uLi4uLi4uLjQg CjUuMi4gICAgIENvbnN1bWVyLWluaXRpYXRlZCByZXBsaWNhdGlvbiBwcm90b2NvbC4uLi4uLi4u Li4uLi4uLi4uLi4uLjYgCjYuICBSZXBsaWNhdGlvbiBwcm90b2NvbCBlbGVtZW50IGRlZmluaXRp b25zLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjYgCjYuMS4gICAgIGNyZWF0ZUdyb3VwaW5nUmVx dWVzdCBFeHRlbmRlZCBPcGVyYXRpb24uLi4uLi4uLi4uLi4uLi4uLi4uLjYgCjYuMi4gICAgIGNy ZWF0ZUdyb3VwaW5nUmVzcG9uc2UgRXh0ZW5kZWQgUmVzcG9uc2UuLi4uLi4uLi4uLi4uLi4uLi4u LjggCjYuMy4gICAgIFJlcGxpY2F0aW9uVXBkYXRlIEV4dGVuZGVkIE9wZXJhdGlvbi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uMTAgCjYuMy4xLiAgICAgVW5pcXVlSWRlbnRpZmllci4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTAgCjYuMy4yLiAgICAgUmVwbGljYXRpb25Q cmltaXRpdmUuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTEgCjYuMy4yLjEu ICAgICBBZGRFbnRyeVByaW1pdGl2ZS4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4xMSAKNi4zLjIuMi4gICAgIE1vdmVFbnRyeVByaW1pdGl2ZS4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLjExIAo2LjMuMi40LiAgICAgUmVtb3ZlRW50cnlQcmltaXRpdmUuLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTIgCjYuMy4yLjUuICAgICBBZGRBdHRyaWJ1 dGVWYWx1ZVByaW1pdGl2ZS4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4xMiAKNi4zLjIuNi4g ICAgIFJlbW92ZUF0dHJpYnV0ZVZhbHVlUHJpbWl0aXZlLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u LjEzIAo2LjMuMi43LiAgICAgUmVtb3ZlQXR0cmlidXRlUHJpbWl0aXZlLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uMTMgCjYuNC4gICAgIGVuZEdyb3VwaW5nUmVxdWVzdCBFeHRlbmRlZCBP cGVyYXRpb24uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTQgCjYuNS4gICAgIGVuZEdyb3VwaW5nUmVz cG9uc2UgRXh0ZW5kZWQgUmVzcG9uc2UuLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTQgCjYuNi4gICAg IFJlcGxpY2F0aW9uVXBkYXRlUmVzcG9uc2UgRXh0ZW5kZWQgUmVzcG9uc2UuLi4uLi4uLi4uLi4u Li4uMTUgCjYuNy4gICAgIFJlcGxpY2F0aW9uVXBkYXRlTm90aWNlIEV4dGVuZGVkIFJlc3BvbnNl Li4uLi4uLi4uLi4uLi4uLi4uMTUgCjcuICBTZW1hbnRpY3Mgb2YgRnVsbCBhbmQgSW5jcmVtZW50 YWwgVXBkYXRlIHByb3RvY29scy4uLi4uLi4uLi4uLi4uMTYgCjguICBTZW1hbnRpY3Mgb2YgdGhl IExEQVAgUmVwbGljYXRpb24gR3JvdXBpbmcgVHlwZS4uLi4uLi4uLi4uLi4uLi4uMTcgCjkuICBT dW1tYXJ5IG9mIHJlc3BvbnNlIGNvZGVzLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uMTcgCjEwLiBTZWN1cml0eSBDb25zaWRlcmF0aW9ucy4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uMTggCjExLiBJQU5BIENvbnNpZGVyYXRpb25zLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTggCjEyLiBBY2tub3dsZWRnZW1l bnRzLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTkgCjEz LiBSZWZlcmVuY2VzLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uMTkgCjE0LiBBdXRob3IncyBBZGRyZXNzZXMuLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMjAgCjE1LiBBcHBlbmRpeCBBIC0gQ29tcGxldGUgQVNO LjEgRGVmaW5pdGlvbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMjAgCjE2LiBJbnRlbGxlY3R1 YWwgUHJvcGVydHkgTm90aWNlLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMjIg CjE3LiBDb3B5cmlnaHQgSW5mb3JtYXRpb24uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uMjIgCgoKCgoKCgoKCgoKCk1jTWVla2luZyAgICAgICAgICAgICAgIEV4cGly ZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICAgW1BhZ2UgM10gCiAKCgoKCgoKCgpJbnRl cm5ldCBEcmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAgICAgICBN YXJjaCAyMDAzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFByb3RvY29sIAog CiAgICAKNC4gIE92ZXJ2aWV3IG9mIFByb3RvY29sIAoKICAgVGhlIExEQVAgUmVwbGljYXRpb24g QXJjaGl0ZWN0dXJlIFtBUkNISVRFQ1RVUkVdIGRlc2NyaWJlcyB0aGUgCiAgIG92ZXJhbGwgYXBw cm9hY2ggdXNlZCBpbiBlbnN1cmluZyBjb25zaXN0ZW5jeSBvZiBtdWx0aXBsZSB1cGRhdGVhYmxl IAogICByZXBsaWNhcyBvZiBkaXJlY3RvcnkgY29udGVudC4gVGhlIHByb3RvY29sIGRlc2NyaWJl ZCBpbiB0aGlzIAogICBkb2N1bWVudCBpbXBsZW1lbnRzIHRoZSBhcHByb2FjaCBkZXNjcmliZWQg aW4gdGhhdCBkb2N1bWVudC4gCiAgICAKICAgTERBUCBWZXJzaW9uIDMgZXh0ZW5kZWQgb3BlcmF0 aW9ucyBhcmUgdXNlZCB0byBjYXJyeSByZXBsaWNhdGVkIAogICBjb250ZW50IGZyb20gb25lIHNl cnZlciB0byBhbm90aGVyLiBUaGUgZXh0ZW5kZWQgb3BlcmF0aW9ucyBkZWZpbmVkIAogICBpbiB0 aGlzIGRvY3VtZW50IGFyZSB1c2VkIHRvIGluaXRpYXRlIGFuZCBlbmQgYSByZXBsaWNhdGlvbiBz ZXNzaW9uLCAKICAgYW5kIHRvIGV4Y2hhbmdlIHVwZGF0ZXMuIFRoZXNlIHVwZGF0ZXMgY2Fycnkg d2l0aCB0aGVtIGluZm9ybWF0aW9uIAogICB0aGF0IGFsbG93cyB0aGUgcmVjZWl2aW5nIHNlcnZl ciB0byBhcHBseSBhIHRvdGFsIG9yZGVyaW5nIHRvIGFsbCBvZiAKICAgdGhlIHVwZGF0ZXMgaW4g YSByZXBsaWNhdGVkIHN5c3RlbS4gQWxsIHNlcnZlcnMgdGhhdCByZWNlaXZlIAogICByZXBsaWNh dGlvbiB1cGRhdGVzIGFwcGx5IGEgY29uc2lzdGVudCBzZXQgb2YgdXBkYXRlIHJlc29sdXRpb24g CiAgIHBvbGljaWVzLCBkZXNjcmliZWQgaW4gW1VSUF0uIFlvdSBtdXN0IHVuZGVyc3RhbmQgVVJQ IHRvIAogICBwcm9jZXNzL3NlbmQgYW5kIHJlY2VpdmUvcHJvY2VzcyB0aGUgdXBkYXRlcyBjb3Jy ZWN0bHkuICBXaGF0IHlvdSAKICAgc2VuZCBtYXkgZGVwZW5kIG9uIHdoZXRoZXIgeW91ciBpbXBs ZW1lbnRhdGlvbiBpcyBzdGF0ZS1iYXNlZCBvciAKICAgbG9nLWJhc2VkOyB3aGF0IHlvdSByZWNl aXZlIGlzIGluZGVwZW5kZW50IG9mIHdoZXRoZXIgeW91IGFyZSBzdGF0ZS0KICAgYmFzZWQgb3Ig bG9nLWJhc2VkLiBDb25zaXN0ZW50IGFwcGxpY2F0aW9uIG9mIHRoZSB1cGRhdGUgcmVzb2x1dGlv biAKICAgcG9saWNpZXMgZW5zdXJlcyB0aGF0IGFsbCByZXBsaWNhcyBldmVudHVhbGx5IGNvbnZl cmdlIGFuZCBjb250YWluIAogICB0aGUgc2FtZSBkaXJlY3RvcnkgZGF0YS4gIFRoZSBwcm90b2Nv bCBkZXBlbmRzIHVwb24gZWxlbWVudHMgb2YgdGhlIAogICBpbmZvcm1hdGlvbiBtb2RlbCBzZXQg Zm9ydGggaW4gW0lORk9NT0RdIGFuZCBbRU5UUllVVUlEXS4gIEluIAogICBwYXJ0aWN1bGFyLCB0 aGUgbm90aW9uIG9mIGEgdW5pdmVyc2FsbHkgdW5pcXVlIGlkZW50aWZpZXIgKFVVSUQpIHRvIAog ICBpZGVudGlmeSBhIHBhcnRpY3VsYXIgZW50cnkgaXMgdXNlZCBpbiBlbGVtZW50cyBvZiB0aGUg cHJvdG9jb2wuIFRoZSAKICAgcHJvdG9jb2wgYWxzbyBtYWtlcyB1c2UgTERBUCBDaGFuZ2UgU2Vx dWVuY2UgTnVtYmVycywgd2hpY2ggcHJvdmlkZSAKICAgYW4gb3JkZXJpbmcgb2YgY2hhbmdlcyBh Y3Jvc3MgbXVsdGlwbGUgc2VydmVycy4gTERBUCBDaGFuZ2UgU2VxdWVuY2UgCiAgIE51bWJlcnMg YXJlIGRlZmluZWQgaW4gW0NTTl0uIAogICAgCiAgIFRoZSBwcm90b2NvbCBpcyBpbnRlbmRlZCB0 byBtZWV0IHRoZSByZXF1aXJlbWVudHMgc2V0IGZvcnRoIGluIAogICBbUkVRXS4gCiAgICAKNS4g IEhpZ2gtbGV2ZWwgRGVzY3JpcHRpb24gb2YgUHJvdG9jb2wgRmxvdyAKCiAgIFRoZSBmb2xsb3dp bmcgc2VjdGlvbiBwcm92aWRlcyBhIGhpZ2gtbGV2ZWwgb3ZlcnZpZXcgb2YgdGhlIAogICByZXBs aWNhdGlvbiBwcm90b2NvbC4gVGhyb3VnaG91dCB0aGlzIHNlY3Rpb24sIHRoZSBzdXBwbGllciBz ZXJ2ZXIgCiAgIGlzIGluZGljYXRlZCBieSB0aGUgbGV0dGVyICJTIiBhbmQgdGhlIGNvbnN1bWVy IHNlcnZlciBieSB0aGUgbGV0dGVyIAogICAiQyIuIFRoZSBjb25zdHJ1Y3QgIlMgLT4gQyIgaW5k aWNhdGVzIHRoYXQgdGhlIHN1cHBsaWVyIGlzIHNlbmRpbmcgCiAgIGFuIExEQVB2MyBvcGVyYXRp b24gdG8gdGhlIGNvbnN1bWVyLCBhbmQgIkMgLT4gUyIgaW5kaWNhdGVzIHRoYXQgdGhlIAogICBj b25zdW1lciBpcyBzZW5kaW5nIGFuIExEQVB2MyBvcGVyYXRpb24gdG8gdGhlIHN1cHBsaWVyLiAK ICAgIAo1LjEuICAgU3VwcGxpZXItaW5pdGlhdGVkIHJlcGxpY2F0aW9uIHByb3RvY29sIAoKICAg ICAgUyAtPiBDOiBMREFQIGJpbmQgb3BlcmF0aW9uIChpZGVudGl0eSBhbmQgY3JlZGVudGlhbHMg dXNlZCBhcmUgCiAgICAgICAgICAgICAgaW1wbGVtZW50YXRpb24tZGVmaW5lZCkgCiAgICAKICAg ICAgQyAtPiBTOiBCaW5kIHJlc3BvbnNlIAogICAgCiAgICAgIFMgLT4gQzogY3JlYXRlR3JvdXBp bmdSZXF1ZXN0IExEQVB2MyBleHRlbmRlZCBvcGVyYXRpb24uIFRoZSAKICAgICAgICAgICAgICBw YXJhbWV0ZXJzIGFyZTogCiAgICAKICAgICAgICAgICAgICAgIDEpIFRoZSBMRFVQIFJlcGxpY2F0 aW9uIGdyb3VwaW5nIHR5cGUgT0lELiAKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJlcyBT ZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgICBbUGFnZSA0XSAKIAoKCgoKCgoKCkludGVybmV0 IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1hcmNo IDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAKICAg ICAgICAgICAgICAgIDIpIEFyZWEgb2YgcmVwbGljYXRpb24gc3ViZW50cnkgRE4gKHVuYW1iaWd1 b3VzbHkgCiAgICAgICAgICAgICAgICBpZGVudGlmaWVzIHRoZSByZXBsaWNhdGVkIGFyZWEpIAog ICAgICAgICAgICAgICAgMykgU3VwcGxpZXIncyByZXBsaWNhSUQgCiAgICAgICAgICAgICAgICA0 KSBPSUQgb2YgcmVwbGljYXRpb24gcHJvdG9jb2wgdG8gYmUgdXNlZCAodGhpcyAKICAgICAgICAg ICAgICAgIGRvY3VtZW50IGRlZmluZXMgSUVURi1MRFVQIGluY3JlbWVudGFsIGFuZCBJRVRGLUxE VVAgCiAgICAgICAgICAgICAgICB0b3RhbCB1cGRhdGUgcHJvdG9jb2xzKSAKICAgICAgICAgICAg ICAgIDUpIFRoZSBwcm90b2NvbCBpbml0aWF0aW9uIHR5cGUgLSBTdXBwbGllci1Jbml0aWF0ZWQg aW4gCiAgICAgICAgICAgICAgICB0aGlzIGNhc2UuIAogICAgICAgICAgICAgICAgNikgQSB0YWJs ZSBvZiBVVUlEIHRvIHJlcGxpY2FJRCBtYXBwaW5ncy4gCiAgICAKICAgICAgQyAtPiBTOiBjcmVh dGVHcm91cGluZ1Jlc3BvbnNlIExEQVB2MyBleHRlbmRlZCByZXNwb25zZS4gVGhlIAogICAgICAg ICAgICAgIHBhcmFtZXRlcnMgYXJlOiAKICAgIAogICAgICAgICAgICAgICAgMSkgQSBncm91cENv b2tpZSB0aGF0IHJlcHJlc2VudHMgdGhlIExEVVAgUmVwbGljYXRpb24gCiAgICAgICAgICAgICAg ICBncm91cCBqdXN0IGNyZWF0ZWQgCiAgICAgICAgICAgICAgICAyKSBBIHJlc3BvbnNlIGNvZGUg KHNlZSBzZWN0aW9uIDkpIAogICAgICAgICAgICAgICAgMykgQW4gb3B0aW9uYWwgdXBkYXRlIHZl Y3RvciB0aGF0IGlzIHByZXNlbnQgaWYgYW5kIAogICAgICAgICAgICAgICAgb25seSBpZiB0aGUg cmVzcG9uc2UgY29kZSBpcyBSRVBMIFNVQ0NFU1MgCiAgICAKICAgICAgUyAtPiBDOiBUaGUgc3Vw cGxpZXIgbWF5IHNlbmQgemVybyBvciBtb3JlIFJlcGxpY2F0aW9uVXBkYXRlIAogICAgICAgICAg ICAgIExEQVB2MyBleHRlbmRlZCBvcGVyYXRpb25zLiBUaGUgcGFyYW1ldGVycyBhcmU6IAogICAg CiAgICAgICAgICAgICAgICAxKSBUaGUgVVVJRCBvZiB0aGUgZW50cnkgYmVpbmcgdXBkYXRlZCAK ICAgICAgICAgICAgICAgIDIpIE9uZSBvciBtb3JlIFJlcGxpY2F0aW9uIFByaW1pdGl2ZXMgKFRo ZSBzdXBwbGllciBtYXkgCiAgICAgICAgICAgICAgICBzZW5kIGFzIG1hbnkgb2YgdGhlc2UgYXMg cmVxdWlyZWQgdG8gYnJpbmcgdGhlIGNvbnN1bWVyIAogICAgICAgICAgICAgICAgdXAgdG8gZGF0 ZSkgCiAgICAgICAgICAgICAgICAzKSBBIGdyb3VwaW5nQ29udHJvbCBjb250YWluaW5nIHRoZSBn cm91cENvb2tpZSBmb3IgCiAgICAgICAgICAgICAgICB0aGlzIExEVVAgUmVwbGljYXRpb24gZ3Jv dXAgCiAgICAKICAgICAgQyAtPiBTOiBBdCBhbnkgdGltZSwgdGhlIGNvbnN1bWVyIG1heSBzZW5k IGFuIHVuc29saWNpdGVkIAogICAgICAgICAgICAgIFJlcGxpY2F0aW9uVXBkYXRlTm90aWNlIExE QVB2MyBleHRlbmRlZCByZXNwb25zZS4gVGhlIAogICAgICAgICAgICAgIHBhcmFtZXRlcnMgYXJl OiAKICAgIAogICAgICAgICAgICAgICAgMSkgQW4gb3B0aW9uYWwgdXBkYXRlIHZlY3Rvci4gIElm IHNlbnQsIHRoaXMgaW5kaWNhdGVzIAogICAgICAgICAgICAgICAgdGhhdCB0aGUgY29uc3VtZXIg aGFzIGNvbW1pdHRlZCBhbGwgdXBkYXRlcyB3aG9zZSBDU05zIAogICAgICAgICAgICAgICAgYXJl IGNvdmVyZWQgYnkgdGhlIHRyYW5zbWl0dGVkIHVwZGF0ZSB2ZWN0b3IgW3NlZSAKICAgICAgICAg ICAgICAgIGdsb3NzYXJ5IGZvciBhIGRlZmluaXRpb24gb2YgImNvdmVyZWQgYnkiXS4gCiAgICAg ICAgICAgICAgICAyKSBBbiBvcHRpb25hbCBBYm9ydFVwZGF0ZSBCb29sZWFuIGZsYWcuICBJZiBh IHN1cHBsaWVyIAogICAgICAgICAgICAgICAgcmVjZWl2ZXMgYSBSZXBsaWNhdGlvblVwZGF0ZU5v dGljZSBmcm9tIGEgY29uc3VtZXIgd2l0aCAKICAgICAgICAgICAgICAgIHRoZSBBYm9ydFVwZGF0 ZSBmbGFnIHNldCB0byB0cnVlLCB0aGUgc3VwcGxpZXIgc2VydmVyIAogICAgICAgICAgICAgICAg TVVTVCBpbW1lZGlhdGVseSBjZWFzZSBzZW5kaW5nIHVwZGF0ZXMgYW5kIHRlcm1pbmF0ZSAKICAg ICAgICAgICAgICAgIGl0cyBjb25uZWN0aW9uIHRvIHRoZSBjb25zdW1lci4gCiAgICAgICAgICAg ICAgICAzKSBBIGdyb3VwaW5nQ29udHJvbCBjb250YWluaW5nIHRoZSBncm91cENvb2tpZSBmb3Ig CiAgICAgICAgICAgICAgICB0aGlzIExEVVAgUmVwbGljYXRpb24gZ3JvdXAuIAogICAgCiAgICAg IFMgLT4gQzogQWZ0ZXIgYWxsIHJlcXVpcmVkIHVwZGF0ZXMgaGF2ZSBiZWVuIHNlbnQgdG8gdGhl IAogICAgICAgICAgICAgIGNvbnN1bWVyLCB0aGUgc3VwcGxpZXIgc2VuZHMgYW4gZW5kR3JvdXBp bmdSZXF1ZXN0IExEQVB2MyAKICAgICAgICAgICAgICBleHRlbmRlZCBvcGVyYXRpb24uIFRoZSBw YXJhbWV0ZXJzIGFyZTogCiAgICAKICAgICAgICAgICAgICAgIDEpIEEgZ3JvdXBDb29raWUgZm9y IHRoaXMgTERVUCBSZXBsaWNhdGlvbiBncm91cCAKICAgIAoKTWNNZWVraW5nICAgICAgICAgICAg ICAgRXhwaXJlcyBTZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgICBbUGFnZSA1XSAKIAoKCgoK CgoKCkludGVybmV0IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAg ICAgICAgIE1hcmNoIDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJv dG9jb2wgCiAKICAgICAgQyAtPiBTOiBUaGUgY29uc3VtZXIgcmVzcG9uZHMgYnkgc2VuZGluZyBh biBlbmRHcm91cGluZ1Jlc3BvbnNlIAogICAgICAgICAgICAgIExEQVB2MyBleHRlbmRlZCByZXNw b25zZS4gCiAgICAgICAKICAgICAgUyAtPiBDOiBUaGUgc3VwcGxpZXIgdGhlbiBzZW5kcyBhbiB1 bmJpbmQgb3BlcmF0aW9uIGFuZCBib3RoIAogICAgICAgICAgICAgIHNpZGVzIGNsb3NlIHRoZSBj b25uZWN0aW9uLiAKICAgIAo1LjIuICAgQ29uc3VtZXItaW5pdGlhdGVkIHJlcGxpY2F0aW9uIHBy b3RvY29sIAoKICAgICAgQyAtPiBTOiBMREFQIGJpbmQgb3BlcmF0aW9uIChpZGVudGl0eSBhbmQg Y3JlZGVudGlhbHMgdXNlZCBhcmUgCiAgICAgICAgICAgICAgaW1wbGVtZW50YXRpb24tZGVmaW5l ZCkgCiAgICAKICAgICAgUyAtPiBDOiBCaW5kIHJlc3BvbnNlIAogICAgCiAgICAgIEMgLT4gUzog Y3JlYXRlR3JvdXBpbmdSZXF1ZXN0IExEQVB2MyBleHRlbmRlZCBvcGVyYXRpb24uIFRoZSAKICAg ICAgICAgICAgICBwYXJhbWV0ZXJzIGFyZTogCiAgICAKICAgICAgICAgICAgICAgIDEpIFRoZSBM RFVQIHJlcGxpY2F0aW9uIGdyb3VwaW5nIHR5cGUgT0lEIAogICAgICAgICAgICAgICAgMikgQXJl YSBvZiByZXBsaWNhdGlvbiBzdWJlbnRyeSBETiAodW5hbWJpZ3VvdXNseSAKICAgICAgICAgICAg ICAgIGlkZW50aWZpZXMgdGhlIHJlcGxpY2F0ZWQgYXJlYSkgCiAgICAgICAgICAgICAgICAzKSBD b25zdW1lcidzIHJlcGxpY2FJRCAKICAgICAgICAgICAgICAgIDQpIE9JRCBvZiByZXBsaWNhdGlv biBwcm90b2NvbCB0byBiZSB1c2VkICh0aGlzIAogICAgICAgICAgICAgICAgZG9jdW1lbnQgZGVm aW5lcyBpZXRmLWxkdXAtaW5jcmVtZW50YWwtdXBkYXRlIGFuZCBpZXRmLQogICAgICAgICAgICAg ICAgbGR1cC1mdWxsLXVwZGF0ZSBwcm90b2NvbHMpIAogICAgICAgICAgICAgICAgNSkgVGhlIHBy b3RvY29sIGluaXRpYXRpb24gdHlwZSAtIENvbnN1bWVyLUluaXRpYXRlZCBpbiAKICAgICAgICAg ICAgICAgIHRoaXMgY2FzZSAKICAgIAogICAgICBTIC0+IEM6IGNyZWF0ZUdyb3VwaW5nUmVzcG9u c2UgTERBUHYzIGV4dGVuZGVkIHJlc3BvbnNlLiBUaGUgCiAgICAgICAgICAgICAgcGFyYW1ldGVy cyBhcmU6IAogICAgCiAgICAgICAgICAgICAgICAxKSBBIGdyb3VwQ29va2llIHRoYXQgcmVwcmVz ZW50cyB0aGUgTERVUCByZXBsaWNhdGlvbiAKICAgICAgICAgICAgICAgIGdyb3VwIGp1c3QgY3Jl YXRlZCAKICAgICAgICAgICAgICAgIDIpIEEgTERVUCByZXNwb25zZSBjb2RlIChzZWUgc2VjdGlv biA5KSAKICAgIAogICAgICBDIC0+IFM6IFRoZSBjb25zdW1lciB0aGVuIHNlbmRzIGFuIHVuYmlu ZCBvcGVyYXRpb24gYW5kIGJvdGggCiAgICAgICAgICAgICAgc2lkZXMgY2xvc2UgdGhlIGNvbm5l Y3Rpb24uIAogICAgICAgCiAgIFRoZSBzdXBwbGllciBzZXJ2ZXIgdGhlbiBjb25uZWN0cyB0byB0 aGUgY29uc3VtZXIsIGJlZ2lubmluZyBhIAogICBTdXBwbGllci0gSW5pdGlhdGVkIHByb3RvY29s IHNlc3Npb24gKHNlZSBzZWN0aW9uIDUuMSkuIAogCjYuICBSZXBsaWNhdGlvbiBwcm90b2NvbCBl bGVtZW50IGRlZmluaXRpb25zIAoKICAgVGhlIGZvbGxvd2luZyBzdWItc2VjdGlvbnMgZGVmaW5l IHRoZSBpbmRpdmlkdWFsIHByb3RvY29sIGVsZW1lbnRzIAogICB0aGF0IG1ha2UgdXAgdGhlIHVw ZGF0ZSByZXBsaWNhdGlvbiBwcm90b2NvbC4gIFBvcnRpb25zIG9mIHRoZSBBU04uMSAKICAgdXNl IEFTTi4xIHR5cGVzIGRlZmluZWQgaW4gW0xEQVB2M10uIAogICAgCjYuMS4gICBjcmVhdGVHcm91 cGluZ1JlcXVlc3QgRXh0ZW5kZWQgT3BlcmF0aW9uIAoKICAgVGhlIGNyZWF0aW9uIG9mIGFuIExE QVAgUmVwbGljYXRpb24gZ3JvdXBpbmcgdHlwZSBieSBhIHJlcGxpY2F0aW9uIAogICBpbml0aWF0 b3IgaW5kaWNhdGVzIHRoYXQgYSByZXBsaWNhdGlvbiBzZXNzaW9uIHNob3VsZCBjb21tZW5jZS4g QW4gCiAgIExEVVAgUmVwbGljYXRpb24gZ3JvdXBpbmcgdHlwZSBpcyBjcmVhdGVkIGJ5IHNlbmRp bmcgYSAKICAgY3JlYXRlR3JvdXBpbmdSZXF1ZXN0IGV4dGVuZGVkIG9wZXJhdGlvbiB3aXRoIGEg Y3JlYXRlR3JvdXBUeXBlIE9JRCAKICAgdmFsdWUgc3BlY2lmeWluZyB0aGUgTERBUCBSZXBsaWNh dGlvbiBncm91cGluZyB0eXBlLiBGb3Igc3VwcGxpZXItCk1jTWVla2luZyAgICAgICAgICAgICAg IEV4cGlyZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICAgW1BhZ2UgNl0gCiAKCgoKCgoK CgpJbnRlcm5ldCBEcmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAg ICAgICBNYXJjaCAyMDAzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFByb3Rv Y29sIAogCiAgIGluaXRpYXRlZCByZXBsaWNhdGlvbiwgdGhlIHN1cHBsaWVyIHNlbmRzIHRoaXMg ZXh0ZW5kZWQgb3BlcmF0aW9uIHRvIAogICB0aGUgcmVwbGljYXRpb24gY29uc3VtZXIgdG8gaW5k aWNhdGUgdGhhdCBhIHJlcGxpY2F0aW9uIHNlc3Npb24gCiAgIHNob3VsZCBjb21tZW5jZS4gRm9y IGNvbnN1bWVyLWluaXRpYXRlZCByZXBsaWNhdGlvbiwgdGhlIGNvbnN1bWVyIAogICBzZW5kcyB0 aGlzIGV4dGVuZGVkIG9wZXJhdGlvbiB0byB0aGUgcmVwbGljYXRpb24gc3VwcGxpZXIgdG8gCiAg IGluZGljYXRlIHRoYXQgdGhlIHN1cHBsaWVyIHNob3VsZCBpbml0aWF0ZSBhIHJlcGxpY2F0aW9u IHNlc3Npb24gdG8gCiAgIHRoZSBjb25zdW1lciBhcyBzb29uIGFzIHBvc3NpYmxlLiAKICAgIAog ICBUaGUgY3JlYXRlR3JvdXBpbmdSZXF1ZXN0IGV4dGVuZGVkIG9wZXJhdGlvbiBpcyBkZWZpbmVk IGluIHNlY3Rpb24gCiAgIDIuMi4xIG9mIFtHUk9VUElOR10uICAKICAgIAogICBUaGUgY3JlYXRl R3JvdXBUeXBlIG9mIHRoZSBjcmVhdGVHcm91cGluZ1JlcXVlc3RWYWx1ZSBtdXN0IGJlIExEVVAt CiAgIE9JRC4zLjEuMS4gVGhpcyBPSUQgcmVwcmVzZW50cyB0aGUgTERBUCBSZXBsaWNhdGlvbiBn cm91cGluZyB0eXBlLiAKICAgIAogICBUaGUgY3JlYXRlR3JvdXBWYWx1ZSBvZiB0aGUgY3JlYXRl R3JvdXBpbmdSZXF1ZXN0VmFsdWUgbXVzdCBiZSBzZXQgCiAgIHRvIHRoZSBCRVItZW5jb2Rpbmcg b2YgdGhlIGZvbGxvd2luZzogCiAgICAKICAgICAgICAgY3JlYXRlR3JvdXBWYWx1ZSA6Oj0gY3Jl YXRlUmVwbEdyb3VwUmVxVmFsdWUgCiAgICAgICAKICAgICAgICAgY3JlYXRlUmVwbEdyb3VwUmVx VmFsdWUgOjo9IFNFUVVFTkNFIHsgCiAgICAgICAgICAgICBhcmVhT2ZSZXBsaWNhdGlvbiAgICAg IExEQVBETiwgCiAgICAgICAgICAgICByZXBsaWNhSUQgICAgICAgICAgICAgIExEQVBTdHJpbmcs IAogICAgICAgICAgICAgcmVwbGljYXRpb25Qcm90b2NvbE9JRCBMREFQT0lELCAKICAgICAgICAg ICAgIHJlcGxpY2F0aW9uSW5pdGlhdG9yICAgRU5VTUVSQVRFRCAKICAgICAgICAgICAgIHsgCiAg ICAgICAgICAgICAgICAgc3VwcGxpZXIgKDApLCAKICAgICAgICAgICAgICAgICBjb25zdW1lciAo MSkgCiAgICAgICAgICAgICB9IAogICAgICAgICAgICAgcmVwbGljYUlEVGFibGUgU0VRVUVOQ0Ug T1BUSU9OQUwgeyAKICAgICAgICAgICAgICAgICB0YWJsZUxlbmd0aCAgIElOVEVHRVIgCiAgICAg ICAgICAgICAgICAgdGFibGUgU0VRVUVOQ0UgT0YgU0VRVUVOQ0UgeyAKICAgICAgICAgICAgICAg ICAgICAgcmVwbGljYUlEICAgIExEQVBTdHJpbmcsIAogICAgICAgICAgICAgICAgICAgICByZXBs aWNhVVVJRCAgTERBUFN0cmluZyAKICAgICAgICAgICAgICAgICB9IAogICAgICAgICAgICAgfSAK ICAgICAgICAgfSAKICAgIAogICBUaGUgcGFyYW1ldGVycyBpbiB0aGUgY3JlYXRlR3JvdXBWYWx1 ZSBvZiB0aGUgCiAgIGNyZWF0ZUdyb3VwaW5nUmVxdWVzdFZhbHVlIGFyZTogCiAgICAKICAgICAg LSBhcmVhT2ZSZXBsaWNhdGlvbjogdGhlIGRpc3Rpbmd1aXNoZWQgbmFtZSBvZiB0aGUgCiAgICAg ICAgYXJlYU9mUmVwbGljYXRpb25TdWJlbnRyeSBvYmplY3QgdGhhdCB1bmlxdWVseSBpZGVudGlm aWVzIHRoZSAKICAgICAgICB1bml0IG9mIHJlcGxpY2F0aW9uLiAKICAgICAgIAogICAgICAtIHJl cGxpY2FJRDogdGhlIHJlcGxpY2EgaWRlbnRpZmllciBvZiB0aGUgcmVwbGljYXRpb24gaW5pdGlh dG9yLiAKICAgICAgICBFYWNoIHJlcGxpY2Egb2YgYSBnaXZlbiByZXBsaWNhdGVkIGFyZWEgaXMg aWRlbnRpZmllZCBieSBhIAogICAgICAgIHVuaXF1ZSBpZGVudGlmaWVyLCBkZXNjcmliZWQgaW4g W0FSQ0hJVEVDVFVSRV0gYW5kIFtFTlRSWVVVSURdLiAgCiAgICAgICAgVG8gYmUgbW9yZSBlZmZp Y2llbnQgaW4gZGF0YSB0cmFuc2ZlciBvZiB0aGUgcmVwbGljYXRpb24gdXBkYXRlIAogICAgICAg IHByb3RvY29sLCBlYWNoIHJlZmVyZW5jZWQgcmVwbGljYSBpcyBhc3NpZ25lZCBhbiBpZCB0aGF0 IGlzIAoKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJlcyBTZXB0ZW1iZXIgMjAwMyAgICAg ICAgICAgICAgICBbUGFnZSA3XSAKIAoKCgoKCgoKCkludGVybmV0IERyYWZ0ICAgICAgICAgICAg IExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1hcmNoIDIwMDMgCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAKICAgICAgICBwcm90b2NvbCBzZXNz aW9uLXNwZWNpZmljLiAgVGhlIHJlcGxpY2FJRFRhYmxlIGlzIHVzZWQgdG8gbWFwIAogICAgICAg IGJldHdlZW4gdGhlIHJlcGxpY2FJRCAodXNlZCBoZXJlIGFuZCBpbiBDaGFuZ2VTZXF1ZW5jZU51 bWJlciAKICAgICAgICB2YWx1ZXMgaW4gdGhlIHByb3RvY29sKSBhbmQgdGhlIFVVSUQgY29ycmVz cG9uZGluZyB0byB0aGUgCiAgICAgICAgcmVwbGljYVN1YkVudHJ5IHJlcHJlc2VudGluZyB0aGUg cmVwbGljYS4gCiAgICAgICAKICAgICAgLSByZXBsaWNhdGlvblByb3RvY29sT0lEOiBPSUQgb2Yg dGhlIHJlcGxpY2F0aW9uIHByb3RvY29sIHRoYXQgCiAgICAgICAgIHNob3VsZCBiZSB1c2VkIHRv IHRyYW5zZmVyIHRoZSB1cGRhdGVzLiAgVGhpcyBkb2N1bWVudCAKICAgICAgICAgZGVzY3JpYmVz IHR3byByZXBsaWNhdGlvbiBwcm90b2NvbHM6IAogICAgICAgICAgCiAgICAgICAgICAgIGlldGYt bGR1cC1mdWxsLXVwZGF0ZSAgICAgICAgICBMRFVQLU9JRC4zLjIuMSAKICAgICAgICAgICAgaWV0 Zi1sZHVwLWluY3JlbWVudGFsLXVwZGF0ZSAgIExEVVAtT0lELjMuMi4yIAogICAgICAgCiAgICAg ICAgU2VlIHNlY3Rpb24gNyBmb3IgaW5mb3JtYXRpb24gb24gdGhlIHNlbWFudGljIGJlaGF2aW9y IG9mIHRoZXNlIAogICAgICAgIHVwZGF0ZSBwcm90b2NvbHMuICBJbXBsZW1lbnRhdGlvbnMgTVVT VCBzdXBwb3J0IHRoZSB0d28gdXBkYXRlIAogICAgICAgIHByb3RvY29scyBkZWZpbmVkIGluIHRo aXMgZG9jdW1lbnQuIAogICAgICAgCiAgICAgIC0gcmVwbGljYXRpb25Jbml0aWF0b3I6IHVzZWQg dG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIGEgc3VwcGxpZXItIAogICAgICAgIGluaXRpYXRlZCBz ZXNzaW9uIGFuZCBhIGNvbnN1bWVyLWluaXRpYXRlZCBzZXNzaW9uLiAgSWYgdGhlIAogICAgICAg IHJlcGxpY2F0aW9uSW5pdGlhdG9yIGNvbnRhaW5zIHRoZSBlbnVtZXJhdGVkIHZhbHVlIDxzdXBw bGllcj4sIAogICAgICAgIHRoZW4gdGhlIGluaXRpYXRvciBpcyB0aGUgc3VwcGxpZXIsIGFuZCB0 aGUgcmVjZWl2ZXIgb2YgdGhpcyAKICAgICAgICBvcGVyYXRpb24gc2hvdWxkIHByZXBhcmUgdG8g cmVjZWl2ZSBhIHNldCBvZiByZXBsaWNhdGlvbiAKICAgICAgICB1cGRhdGVzIChvciBzaG91bGQg cmVqZWN0IHRoZSBvcGVyYXRpb24gaXMgcmVwbGljYXRpb24gdXBkYXRlcyAKICAgICAgICBhcmUg bm90IHBlcm1pdHRlZCBmb3Igc29tZSByZWFzb24sIHBlcmhhcHMgZHVlIHRvIGFjY2VzcyAKICAg ICAgICBjb250cm9sIHJlc3RyaWN0aW9ucykuICBJZiB0aGUgcmVwbGljYXRpb25Jbml0aWF0b3Ig Y29udGFpbnMgCiAgICAgICAgdGhlIGVudW1lcmF0ZWQgdmFsdWUgPGNvbnN1bWVyPiwgdGhlbiB0 aGUgcmVjZWl2ZXIgc2hvdWxkIAogICAgICAgIHByZXBhcmUgdG8gZXN0YWJsaXNoIGEgc3VwcGxp ZXItaW5pdGlhdGVkIHJlcGxpY2F0aW9uIHNlc3Npb24gCiAgICAgICAgd2l0aCB0aGUgY29uc3Vt ZXIgYXMgc29vbiBhcyBwb3NzaWJsZSwgdXBkYXRpbmcgdGhlIHJlcGxpY2F0ZWQgCiAgICAgICAg YXJlYSBnaXZlbiBieSBhcmVhT2ZSZXBsaWNhdGlvbiBhbmQgdXNpbmcgdGhlIHVwZGF0ZSBwcm90 b2NvbCAKICAgICAgICBnaXZlbiBieSByZXBsaWNhdGlvblByb3RvY29sT0lELiAKICAgICAgIAog ICAgICAtIHJlcGxpY2FJRFRhYmxlOiB1c2VkIHRvIHNldCB1cCBhIG1hcHBpbmcgb2Ygc2hvcnRl ciAiaWRzIiB0byAKICAgICAgICBVVUlEcyBvZiB0aGUgcmVwbGljYVN1YkVudHJ5IGVudHJpZXMg dGhhdCBjb3JyZXNwb25kIHRvIHRoZSAKICAgICAgICBpZHMuICBUaGVzZSBpZHMgYXJlIHVzZWQg aW4gdGhlIGNoYW5nZSBzZXF1ZW5jZSBudW1iZXJzIHNlbnQgCiAgICAgICAgb3ZlciB0aGUgcmVw bGljYXRpb24gdXBkYXRlIHByb3RvY29sIGluc3RlYWQgb2YgdGhlIGZ1bGwgY2hhbmdlIAogICAg ICAgIHNlcXVlbmNlIG51bWJlciAoaW5jbHVkaW5nIHRoZSBVVUlEKS4gIFRoaXMgZ3JlYXRseSBy ZWR1Y2VzIHRoZSAKICAgICAgICBkYXRhIHRyYW5zZmVyIHJlcXVpcmVtZW50cyBvZiB0aGUgdXBk YXRlIHJlcGxpY2F0aW9uIHByb3RvY29sLiAKICAgIAo2LjIuICAgY3JlYXRlR3JvdXBpbmdSZXNw b25zZSBFeHRlbmRlZCBSZXNwb25zZSAKCiAgIFRoZSBjcmVhdGVHcm91cGluZ1Jlc3BvbnNlIGV4 dGVuZGVkIHJlc3BvbnNlIGlzIHNlbnQgaW4gcmVzcG9uc2UgdG8gCiAgIGEgY3JlYXRlR3JvdXBp bmdSZXF1ZXN0IGV4dGVuZGVkIG9wZXJhdGlvbi4gCiAgICAKICAgRm9yIGEgc3VwcGxpZXItaW5p dGlhdGVkIHNlc3Npb24sIHRoZSBjcmVhdGVHcm91cGluZ1Jlc3BvbnNlIAogICBleHRlbmRlZCBy ZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCB0aGUgY29uc3VtZXIgaXMgb3IgaXMgbm90IHByZXBhcmVk IAogICB0byBhY2NlcHQgYSBzZXQgb2YgdXBkYXRlcy4gSWYgdGhlIGNvbnN1bWVyIGlzIHByZXBh cmVkIHRvIGFjY2VwdCAKICAgdXBkYXRlcywgaXQgc2VuZHMgYSBjcmVhdGVHcm91cGluZ1Jlc3Bv bnNlIGV4dGVuZGVkIHJlc3BvbnNlIAogICBjb250YWluaW5nIGEgc3VjY2VzcyBjb2RlIGFuZCB0 aGUgY29uc3VtZXIncyByZXBsaWNhIHVwZGF0ZSB2ZWN0b3IuIAoKTWNNZWVraW5nICAgICAgICAg ICAgICAgRXhwaXJlcyBTZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgICBbUGFnZSA4XSAKIAoK CgoKCgoKCkludGVybmV0IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAg ICAgICAgICAgIE1hcmNoIDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUg UHJvdG9jb2wgCiAKICAgSWYgdGhlIGNvbnN1bWVyIGlzIHVud2lsbGluZyBvciB1bmFibGUgdG8g YWNjZXB0IHVwZGF0ZXMsIGl0IHNlbmRzIGEgCiAgIGNyZWF0ZUdyb3VwaW5nUmVzcG9uc2UgZXh0 ZW5kZWQgcmVzcG9uc2UgY29udGFpbmluZyBhbiBlcnJvciBjb2RlLiAKICAgIAogICBGb3IgYSBj b25zdW1lci1pbml0aWF0ZWQgc2Vzc2lvbiwgdGhlIGNyZWF0ZUdyb3VwaW5nUmVzcG9uc2UgCiAg IGV4dGVuZGVkIHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRoZSBzdXBwbGllciBpcyBvciBpcyBu b3QgcHJlcGFyZWQgCiAgIHRvIHNlbmQgYSBzZXQgb2YgdXBkYXRlcyB0byB0aGUgY29uc3VtZXIu IElmIHRoZSBzdXBwbGllciBpcyAKICAgcHJlcGFyZWQgdG8gc2VuZCB1cGRhdGVzIHRvIHRoZSBj b25zdW1lciwgaXQgc2VuZHMgYSAKICAgY3JlYXRlR3JvdXBpbmdSZXNwb25zZSBleHRlbmRlZCBy ZXNwb25zZSB3aXRoIGEgc3VjY2VzcyBjb2RlLiBJZiB0aGUgCiAgIHN1cHBsaWVyIGlzIHVud2ls bGluZyBvciB1bmFibGUgdG8gc2VuZCB1cGRhdGVzIHRvIHRoZSBjb25zdW1lciwgaXQgCiAgIHNl bmRzIGEgY3JlYXRlR3JvdXBpbmdSZXNwb25zZSBleHRlbmRlZCByZXNwb25zZSBjb250YWluaW5n IGFuIGVycm9yIAogICBjb2RlLiBJbiBib3RoIGNhc2VzLCB0aGUgY29uc3VtZXIgdW5iaW5kcyBh bmQgZGlzY29ubmVjdHMgZnJvbSB0aGUgCiAgIHN1cHBsaWVyLiBJZiB0aGUgc3VwcGxpZXIgc2Vu dCBhIHN1Y2Nlc3MgY29kZSB0byB0aGUgY29uc3VtZXIsIHRoZSAKICAgc3VwcGxpZXIgb3BlbnMg YSBjb25uZWN0aW9uIHRvIHRoZSBjb25zdW1lciBhcyBzb29uIGFzIHBvc3NpYmxlIGFuZCAKICAg aW5pdGlhdGVzIGEgc3VwcGxpZXItaW5pdGlhdGVkIHJlcGxpY2F0aW9uIHNlc3Npb24uIAogICAg CiAgIEFuIExEQVB2MyBleHRlbmRlZCByZXNwb25zZSBpcyBkZWZpbmVkIGluIFtMREFQdjNdIGFz IGZvbGxvd3M6IAogICAgCiAgICAgICAgIEV4dGVuZGVkUmVzcG9uc2UgOjo9IFtBUFBMSUNBVElP TiAyNF0gU0VRVUVOQ0UgeyAKICAgICAgICAgICAgQ09NUE9ORU5UUyBvZiBMREFQUmVzdWx0LCAK ICAgICAgICAgICAgcmVzcG9uc2VOYW1lICBbMTBdIExEQVBPSUQgT1BUSU9OQUwsIAogICAgICAg ICAgICByZXNwb25zZSAgICAgIFsxMV0gT0NURVQgU1RSSU5HIE9QVElPTkFMIAogICAgICAgICB9 IAogICAgCiAgIFRoZSBjcmVhdGVHcm91cGluZ1Jlc3BvbnNlIGV4dGVuZGVkIHJlc3BvbnNlIGlz IGRlZmluZWQgaW4gc2VjdGlvbiAKICAgMi4yLjIgb2YgW0dST1VQSU5HXS4gCiAgICAKICAgVGhl IGNyZWF0ZUdyb3VwQ29va2llIG9mIHRoZSBjcmVhdGVHcm91cGluZ1Jlc3BvbnNlVmFsdWUgd2ls bCAKICAgY29udGFpbiBhIGNvb2tpZSB1bmlxdWVseSBpZGVudGlmeWluZyB0aGlzIGluc3RhbmNl IG9mIHRoZSBMREFQIAogICBSZXBsaWNhdGlvbiBncm91cGluZyB0eXBlIGNyZWF0ZWQgYXMgYSBy ZXN1bHQgb2YgdGhlIAogICBjcmVhdGVHcm91cFJlcXVlc3QgY29ycmVzcG9uZGluZyB0byB0aGlz IHJlc3BvbnNlLiBUaGlzIGNvb2tpZSB3aWxsIAogICBiZSB1c2VkIGluIHN1YnNlcXVlbnQgb3Bl cmF0aW9ucyBpbiB0aGlzIHJlcGxpY2F0aW9uIHNlc3Npb24uIAogICAgCiAgIFRoZSBjcmVhdGVH cm91cFZhbHVlIG9mIHRoZSBjcmVhdGVHcm91cGluZ1Jlc3BvbnNlVmFsdWUgaXMgc2V0IHRvIAog ICB0aGUgQkVSLWVuY29kaW5nIG9mIHRoZSBmb2xsb3dpbmc6IAogICAgCiAgICAgICAgIGNyZWF0 ZUdyb3VwVmFsdWUgOjo9IGNyZWF0ZVJlcGxHcm91cFJlc3BWYWx1ZSAKICAgICAgIAogICAgICAg ICBjcmVhdGVSZXBsR3JvdXBSZXNwVmFsdWUgOjo9IFNFUVVFTkNFIHsgCiAgICAgICAgICAgICBy ZXBsaWNhVXBkYXRlVmVjdG9yICAgQXR0cmlidXRlIE9QVElPTkFMLCAKICAgICAgICAgfSAKICAg IAogICBUaGUgTERBUCByZXNwb25zZSBjb2RlcyBhcHBsaWNhYmxlIHRvIHRoaXMgcmVzcG9uc2Ug YXJlIGRlZmluZWQgaW4gCiAgIHNlY3Rpb24gOS4gCiAgICAKICAgVGhlIHJlcGxpY2FVcGRhdGVW ZWN0b3IgY29udGFpbnMgYSByZXBsaWNhIHVwZGF0ZSB2ZWN0b3IsIGFzIGRlZmluZWQgCiAgIGlu IFtJTkZPTU9EXS4gVGhlIHVwZGF0ZSB2ZWN0b3IgaXMgZW5jb2RlZCBhcyBhIG5vcm1hbCBMREFQ IAogICBhdHRyaWJ1dGUsIGRlZmluZWQgaW4gW0xEQVB2M10uIAogICAgCiAgICAKCgpNY01lZWtp bmcgICAgICAgICAgICAgICBFeHBpcmVzIFNlcHRlbWJlciAyMDAzICAgICAgICAgICAgICAgIFtQ YWdlIDldIAogCgoKCgoKCgoKSW50ZXJuZXQgRHJhZnQgICAgICAgICAgICAgTERVUCBSZXBsaWNh dGlvbiAgICAgICAgICAgICAgICAgTWFyY2ggMjAwMyAKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFVwZGF0ZSBQcm90b2NvbCAKIAo2LjMuICAgUmVwbGljYXRpb25VcGRhdGUgRXh0ZW5kZWQg T3BlcmF0aW9uIAoKICAgVGhlIFJlcGxpY2F0aW9uVXBkYXRlIGV4dGVuZGVkIG9wZXJhdGlvbiBj YXJyaWVzIGEgc2V0IG9mIAogICByZXBsaWNhdGlvbiBwcmltaXRpdmVzIHRoYXQgcmVwcmVzZW50 IHRoZSBjaGFuZ2VzIG5lY2Vzc2FyeSB0byBicmluZyAKICAgYSBzaW5nbGUgZW50cnkgdG8gYSBk ZXNpcmVkIGZpbmFsIHN0YXRlLiAKICAgICAKICAgVGhlIFJlcGxpY2F0aW9uVXBkYXRlIGV4dGVu ZGVkIG9wZXJhdGlvbiBpcyBkZWZpbmVkIGFzIGZvbGxvd3M6IAogICAgCiAgIEFuIExEQVB2MyBF eHRlbmRlZCBSZXF1ZXN0IGlzIGRlZmluZWQgaW4gW0xEQVB2M10gYXMgZm9sbG93czogCiAgICAK ICAgICAgICAgUmVwbGljYXRpb25VcGRhdGUgOjo9IFtBUFBMSUNBVElPTiAgMjNdIFNFUVVFTkNF IHsgCiAgICAgICAgICAgIHJlcXVlc3ROYW1lICAgIFswXSBMREFQT0lELCAKICAgICAgICAgICAg cmVxdWVzdFZhbHVlICAgWzFdIE9DVEVUIFNUUklORyAKICAgICAgICAgfSAKICAgIAogICBUaGUg cmVxdWVzdE5hbWUgb2YgdGhlIFJlcGxpY2F0aW9uVXBkYXRlIGlzIHRoZSBPSUQgTERVUC1PSUQu My4zLjEuIAogICAgCiAgIFRoZSByZXF1ZXN0VmFsdWUgb2YgdGhlIFJlcGxpY2F0aW9uVXBkYXRl IGlzIHNldCB0byB0aGUgQkVSLWVuY29kaW5nIAogICBvZiB0aGUgZm9sbG93aW5nOiAKICAgIAog ICAgICAgICByZXF1ZXN0VmFsdWUgOjo9IHJlcGxpY2F0aW9uVXBkYXRlUmVxdWVzdFZhbHVlIAog ICAgICAgCiAgICAgICAgIHJlcGxpY2F0aW9uVXBkYXRlUmVxdWVzdFZhbHVlIDo6PSBTRVFVRU5D RSB7IAogICAgICAgICAgICB1bmlxdWVJRCAgVW5pcXVlSWRlbnRpZmllciwgCiAgICAgICAgICAg IHVwZGF0ZXMgICBTRVQgT0YgUmVwbGljYXRpb25QcmltaXRpdmUgCiAgICAgICAgIH0gCiAgICAK ICAgRWFjaCBSZXBsaWNhdGlvblVwZGF0ZSBleHRlbmRlZCBvcGVyYXRpb24gTVVTVCBiZSBhY2Nv bXBhbmllZCBieSBhIAogICBncm91cGluZ0NvbnRyb2wgY29udHJvbCBpZGVudGlmeWluZyB0aGUg cmVwbGljYXRpb24gc2Vzc2lvbiB0byB3aGljaCAKICAgdGhlIFJlcGxpY2F0aW9uVXBkYXRlIG9w ZXJhdGlvbiBiZWxvbmdzLiBUaGUgZ3JvdXBpbmdDb250cm9sIGNvbnRyb2wgCiAgIGlzIGRlZmlu ZWQgaW4gc2VjdGlvbiAyLjcgb2YgW0dST1VQSU5HXS4gVGhlIGdyb3VwaW5nQ29va2llIG9mIHRo ZSAKICAgZ3JvdXBpbmdDb250cm9sVmFsdWUgY29udGFpbnMgdGhlIGdyb3VwIGNvb2tpZSByZXR1 cm5lZCBpbiB0aGUgCiAgIGNyZWF0ZUdyb3VwaW5nUmVzcG9uc2UuIFRoZSBncm91cFZhbHVlIG9m IHRoZSBncm91cGluZ0NvbnRyb2xWYWx1ZSAKICAgaXMgbm90IHByZXNlbnQuIAogICAgCjYuMy4x LiAgIFVuaXF1ZUlkZW50aWZpZXIgCgogICBUaGUgRGlzdGluZ3Vpc2hlZCBOYW1lIG9mIGFuIGVu dHJ5IG1heSBiZSBjaGFuZ2VkIChieSByZW5hbWluZyB0aGUgCiAgIGVudHJ5KSwgb3IgdGhlIGVu dHJ5IG1heSBub3QgaGF2ZSBhIGRpc3Rpbmd1aXNoZWQgbmFtZSAoaWYgaXQgd2FzIAogICBkZWxl dGVkKS4gIFRoZSBVbmlxdWUgSWRlbnRpZmllciBwcm92aWRlcyBhbiBpbW11dGFibGUgbmFtZSwg CiAgIGluZGVwZW5kZW50IG9mIHRoZSBjdXJyZW50IG5hbWUgb3IgZGVsZXRpb24gc3RhdHVzLCBm b3IgYW4gZW50cnkuIAogICBBbGwgcmVwbGljYXRlZCBvcGVyYXRpb25zIGFkZHJlc3MgZW50cmll cyBieSB0aGVpciBVbmlxdWUgCiAgIElkZW50aWZpZXJzLiAKICAgIAogICAgICAgICBVbmlxdWVJ ZGVudGlmaWVyIDo6PSBMREFQU3RyaW5nIAogICAgCiAgIFVuaXF1ZSBpZGVudGlmaWVycyBhcmUg YWxzbyBrbm93biBhcyBVVUlEcyBpbiB0aGlzIGRvY3VtZW50LiAgVmFsdWVzIAogICBmb3IgVVVJ RHMgYXJlIHRha2VuIGZyb20gYW4gZW50cnkncyAnZW50cnlVVUlEJyBvcGVyYXRpb25hbCAKICAg YXR0cmlidXRlIFtFTlRSWVVVSURdLiAKIAoKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJl cyBTZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgIFtQYWdlIDEwXSAKIAoKCgoKCgoKCkludGVy bmV0IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1h cmNoIDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAK Ni4zLjIuICAgUmVwbGljYXRpb25QcmltaXRpdmUgCgogICAgCiAgIEEgUmVwbGljYXRpb25Qcmlt aXRpdmUgY2FycmllcyBhIHNpbmdsZSBhc3NlcnRpb24gYWJvdXQgY2hhbmdlcyAKICAgbmVjZXNz YXJ5IHRvIGJyaW5nIGFib3V0IHRoZSBmaW5hbCBzdGF0ZSBvZiBhbiBlbnRyeSwgYXR0cmlidXRl LCBvciAKICAgYXR0cmlidXRlIHZhbHVlLiBUaGVyZSBhcmUgc2V2ZW4gdHlwZXMgb2YgcHJpbWl0 aXZlcy4gCiAgICAKICAgICAgICAgUmVwbGljYXRpb25QcmltaXRpdmUgOjo9IENIT0lDRSB7IAog ICAgICAgICAgICAgYWRkRW50cnlQcmltaXRpdmUgICAgICAgICAgICAgIEFkZEVudHJ5UHJpbWl0 aXZlLCAKICAgICAgICAgICAgIG1vdmVFbnRyeVByaW1pdGl2ZSAgICAgICAgICAgICBNb3ZlRW50 cnlQcmltaXRpdmUsIAogICAgICAgICAgICAgcmVuYW1lRW50cnlQcmltaXRpdmUgICAgICAgICAg IFJlbmFtZUVudHJ5UHJpbWl0aXZlLCAKICAgICAgICAgICAgIHJlbW92ZUVudHJ5UHJpbWl0aXZl ICAgICAgICAgICBSZW1vdmVFbnRyeVByaW1pdGl2ZSwgCiAgICAgICAgICAgICBhZGRBdHRyaWJ1 dGVWYWx1ZVByaW1pdGl2ZSAgICAgQWRkQXR0cmlidXRlVmFsdWVQcmltaXRpdmUsIAogICAgICAg ICAgICAgcmVtb3ZlQXR0cmlidXRlVmFsdWVQcmltaXRpdmUgCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgUmVtb3ZlQXR0cmlidXRlVmFsdWVQcmltaXRpdmUsIAogICAg ICAgICAgICAgcmVtb3ZlQXR0cmlidXRlUHJpbWl0aXZlICAgICAgIFJlbW92ZUF0dHJpYnV0ZVBy aW1pdGl2ZSAKICAgICAgICAgfSAKICAgIAogICBFYWNoIHByaW1pdGl2ZSBhcHBsaWVzIHRvIHRo ZSBlbnRyeSByZWZlcnJlZCB0byBieSB0aGUgCiAgIHVuaXF1ZUlkZW50aWZpZXIgaW4gdGhlIGVu Y2xvc2luZyBSZXBsaWNhdGlvblVwZGF0ZSBleHRlbmRlZCAKICAgb3BlcmF0aW9uLiAKICAgIAog ICBFYWNoIHByaW1pdGl2ZSBjYXJyaWVzIGEgQ2hhbmdlU2VxdWVuY2VOdW1iZXIgdGhhdCBpcyB1 c2VkIGJ5IHRoZSAKICAgY29uc3VtZXIgc2VydmVyIHRvIGNvcnJlY3RseSByZXNvbHZlIHVwZGF0 ZSBjb25mbGljdHMuIFtVUlBdIAogICBkZXNjcmliZXMgdGhlIHVwZGF0ZSByZWNvbmNpbGlhdGlv biBwcm9jZWR1cmVzLiAKICAgIAo2LjMuMi4xLiAgQWRkRW50cnlQcmltaXRpdmUgCgogICBUaGUg QWRkRW50cnlQcmltaXRpdmUgaXMgdXNlZCB0byBhZGQgYSBuZXcgZW50cnkuIAogICAgCiAgICAg ICAgIEFkZEVudHJ5UHJpbWl0aXZlIDo6PSBbQVBQTElDQVRJT04gMF0gU0VRVUVOQ0UgeyAKICAg ICAgICAgICAgY3NuICAgICAgICAgQ2hhbmdlU2VxdWVuY2VOdW1iZXIsIAogICAgICAgICAgICBz dXBlcmlvciAgICBVbmlxdWVJZGVudGlmaWVyLCAKICAgICAgICAgICAgcmRuICAgICAgICAgUmVs YXRpdmVMREFQRE4gCiAgICAgICAgIH0gCiAgICAKICAgUGFyYW1ldGVycyBvZiB0aGUgQWRkRW50 cnlQcmltaXRpdmUgYXJlOiAKICAgIAogICAgICAtIGNzbjogVGhlIGNoYW5nZSBzZXF1ZW5jZSBu dW1iZXIgb2YgdGhlIHByaW1pdGl2ZS4gCiAgICAgICAKICAgICAgLSBzdXBlcmlvcjogVGhlIHVu aXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBzdXBlcmlvciAocGFyZW50KSBlbnRyeS4gCiAgICAgICAK ICAgICAgLSByZG46IFRoZSByZWxhdGl2ZSBkaXN0aW5ndWlzaGVkIG5hbWUgb2YgdGhlIG5ldyBl bnRyeS4gCiAgICAgICAKNi4zLjIuMi4gIE1vdmVFbnRyeVByaW1pdGl2ZSAKCiAgIFRoZSBNb3Zl RW50cnlQcmltaXRpdmUgaXMgdXNlZCB0byBtb3ZlIGFuIGVudHJ5IHRvIGEgbmV3IGxvY2F0aW9u IGluIAogICB0aGUgRElULiAKICAgIAoKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJlcyBT ZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgIFtQYWdlIDExXSAKIAoKCgoKCgoKCkludGVybmV0 IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1hcmNo IDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAKICAg ICAgICAgTW92ZUVudHJ5UHJpbWl0aXZlIDo6PSBbQVBQTElDQVRJT04gMV0gU0VRVUVOQ0UgeyAK ICAgICAgICAgICAgY3NuICAgICAgIENoYW5nZVNlcXVlbmNlTnVtYmVyLCAKICAgICAgICAgICAg c3VwZXJpb3IgIFVuaXF1ZUlkZW50aWZpZXIgCiAgICAgICAgIH0gCiAgICAKICAgUGFyYW1ldGVy cyBvZiB0aGUgTW92ZUVudHJ5UHJpbWl0aXZlIGFyZTogCiAgICAKICAgICAgLSBjc246IFRoZSBj aGFuZ2Ugc2VxdWVuY2UgbnVtYmVyIG9mIHRoZSBwcmltaXRpdmUuIAogICAgICAgCiAgICAgIC0g c3VwZXJpb3I6IFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgbmV3IHN1cGVyaW9yIChwYXJl bnQpIAogICAgICAgIGVudHJ5LiAKICAgIAo2LjMuMi4zLiAgUmVuYW1lRW50cnlQcmltaXRpdmUg CiAgICAKICAgVGhlIFJlbmFtZUVudHJ5UHJpbWl0aXZlIGlzIHVzZWQgdG8gY2hhbmdlIHRoZSBS RE4gb2YgYW4gZW50cnkuIAogICAgCiAgICAgICAgIFJlbmFtZUVudHJ5UHJpbWl0aXZlIDo6PSBb QVBQTElDQVRJT04gMl0gU0VRVUVOQ0UgeyAKICAgICAgICAgICAgY3NuICAgQ2hhbmdlU2VxdWVu Y2VOdW1iZXIsIAogICAgICAgICAgICByZG4gICBSZWxhdGl2ZUxEQVBETiAKICAgICAgICAgfSAK ICAgIAogICBQYXJhbWV0ZXJzIG9mIHRoZSBSZW5hbWVFbnRyeVByaW1pdGl2ZSBhcmU6IAogICAg CiAgICAgIC0gY3NuOiBUaGUgY2hhbmdlIHNlcXVlbmNlIG51bWJlciBvZiB0aGUgcHJpbWl0aXZl LiAKICAgICAgIAogICAgICAtIHJkbjogVGhlIG5ldyByZWxhdGl2ZSBkaXN0aW5ndWlzaGVkIG5h bWUgb2YgdGhlIGVudHJ5LiAKICAgIAo2LjMuMi40LiAgUmVtb3ZlRW50cnlQcmltaXRpdmUgCgog ICBUaGUgUmVtb3ZlRW50cnlQcmltaXRpdmUgaXMgdXNlZCB0byBkZWxldGUgYW4gZW50cnkgZnJv bSB0aGUgRElULiAKICAgIAogICAgICAgICBSZW1vdmVFbnRyeVByaW1pdGl2ZSA6Oj0gW0FQUExJ Q0FUSU9OIDNdIFNFUVVFTkNFIHsgCiAgICAgICAgICAgIGNzbiAgQ2hhbmdlU2VxdWVuY2VOdW1i ZXIgCiAgICAgICAgIH0gCiAgICAKICAgUGFyYW1ldGVycyBvZiB0aGUgUmVtb3ZlRW50cnlQcmlt aXRpdmUgYXJlOiAKICAgIAogICAgICAtIGNzbjogVGhlIGNoYW5nZSBzZXF1ZW5jZSBudW1iZXIg b2YgdGhlIHByaW1pdGl2ZS4gCiAgICAKNi4zLjIuNS4gIEFkZEF0dHJpYnV0ZVZhbHVlUHJpbWl0 aXZlIAoKICAgVGhlIEFkZEF0dHJpYnV0ZVZhbHVlUHJpbWl0aXZlIGlzIHVzZSB0byBhZGQgYSBu ZXcgYXR0cmlidXRlIHZhbHVlIAogICB0byBhbiBlbnRyeS4gCiAgICAKICAgICAgICAgQWRkQXR0 cmlidXRlVmFsdWVQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElPTiA0XSBTRVFVRU5DRSB7IAogICAg ICAgICAgICBjc24gICAgIENoYW5nZVNlcXVlbmNlTnVtYmVyLCAKICAgICAgICAgICAgdHlwZSAg ICBBdHRyaWJ1dGVEZXNjcmlwdGlvbiwgCiAgICAgICAgICAgIHZhbHVlICAgQXR0cmlidXRlVmFs dWUgCiAgICAgICAgIH0gCk1jTWVla2luZyAgICAgICAgICAgICAgIEV4cGlyZXMgU2VwdGVtYmVy IDIwMDMgICAgICAgICAgICAgICBbUGFnZSAxMl0gCiAKCgoKCgoKCgpJbnRlcm5ldCBEcmFmdCAg ICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAgICAgICBNYXJjaCAyMDAzIAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFByb3RvY29sIAogCiAgICAKICAgUGFy YW1ldGVycyBvZiB0aGUgQWRkQXR0cmlidXRlVmFsdWVQcmltaXRpdmUgYXJlOiAKICAgIAogICAg ICAtIGNzbjogVGhlIGNoYW5nZSBzZXF1ZW5jZSBudW1iZXIgb2YgdGhlIHByaW1pdGl2ZS4gCiAg ICAgICAKICAgICAgLSB0eXBlOiBUaGUgdHlwZSBvZiB0aGUgYXR0cmlidXRlIGJlaW5nIGFkZGVk LiAKICAgICAgIAogICAgICAtIHZhbHVlOiBUaGUgdmFsdWUgYmVpbmcgYWRkZWQuIE11bHRpcGxl IHZhbHVlcyBhcmUgbm90IAogICAgICAgIHBlcm1pdHRlZC4gCiAgICAKICAgTXVsdGlwbGUgYWRk ZWQgdmFsdWVzIGFyZSByZXByZXNlbnRlZCBtdWx0aXBsZSBwcmltaXRpdmVzLiAKICAgIAo2LjMu Mi42LiAgUmVtb3ZlQXR0cmlidXRlVmFsdWVQcmltaXRpdmUgCgogICBUaGUgUmVtb3ZlQXR0cmli dXRlVmFsdWVQcmltaXRpdmUgaXMgdXNlZCB0byByZW1vdmUgYSBwYXJ0aWN1bGFyIAogICBhdHRy aWJ1dGUgdmFsdWUgZnJvbSBhbiBlbnRyeS4gCiAgICAKICAgICAgICAgUmVtb3ZlQXR0cmlidXRl VmFsdWVQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElPTiA1XSBTRVFVRU5DRSB7IAogICAgICAgICAg ICBjc24gICAgICBDaGFuZ2VTZXF1ZW5jZU51bWJlciwgCiAgICAgICAgICAgIHR5cGUgICAgIEF0 dHJpYnV0ZURlc2NyaXB0aW9uLCAKICAgICAgICAgICAgdmFsdWUgICAgQXR0cmlidXRlVmFsdWUg CiAgICAgICAgIH0gCiAgICAKICAgUGFyYW1ldGVycyBvZiB0aGUgUmVtb3ZlQXR0cmlidXRlVmFs dWVQcmltaXRpdmUgYXJlOiAKICAgIAogICAgICAtIGNzbjogVGhlIGNoYW5nZSBzZXF1ZW5jZSBu dW1iZXIgb2YgdGhlIHByaW1pdGl2ZS4gCiAgICAgICAKICAgICAgLSB0eXBlOiBUaGUgdHlwZSBv ZiB0aGUgYXR0cmlidXRlIGJlaW5nIHJlbW92ZWQuIAogICAgICAgCiAgICAgIC0gdmFsdWU6IFRo ZSB2YWx1ZSBiZWluZyByZW1vdmVkLiBNdWx0aXBsZSB2YWx1ZXMgYXJlIG5vdCAKICAgICAgICBw ZXJtaXR0ZWQuIAogICAgCiAgIE11bHRpcGxlIHJlbW92ZWQgdmFsdWVzIGFyZSByZXByZXNlbnRl ZCB1c2luZyBtdWx0aXBsZSBwcmltaXRpdmVzLiAKICAgIAo2LjMuMi43LiAgUmVtb3ZlQXR0cmli dXRlUHJpbWl0aXZlIAoKICAgVGhlIFJlbW92ZUF0dHJpYnV0ZVByaW1pdGl2ZSBpcyB1c2VkIHRv IHJlbW92ZSBhbiBhdHRyaWJ1dGUgYW5kIGFsbCAKICAgaXRzIHZhbHVlcyBmcm9tIGFuIGVudHJ5 LiAKICAgIAogICAgICAgICBSZW1vdmVBdHRyaWJ1dGVQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElP TiA2XSBTRVFVRU5DRSB7IAogICAgICAgICAgICBjc24gICAgQ2hhbmdlU2VxdWVuY2VOdW1iZXIs IAogICAgICAgICAgICB0eXBlICAgQXR0cmlidXRlRGVzY3JpcHRpb24gCiAgICAgICAgIH0gCiAg ICAKICAgUGFyYW1ldGVycyBvZiB0aGUgUmVtb3ZlQXR0cmlidXRlUHJpbWl0aXZlIGFyZTogCiAg ICAKICAgICAgLSBjc246IFRoZSBjaGFuZ2Ugc2VxdWVuY2UgbnVtYmVyIG9mIHRoZSBwcmltaXRp dmUuIAogICAgICAgCiAgICAgIC0gdHlwZTogVGhlIHR5cGUgb2YgdGhlIGF0dHJpYnV0ZSBiZWlu ZyByZW1vdmVkLiAKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJlcyBTZXB0ZW1iZXIgMjAw MyAgICAgICAgICAgICAgIFtQYWdlIDEzXSAKIAoKCgoKCgoKCkludGVybmV0IERyYWZ0ICAgICAg ICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1hcmNoIDIwMDMgCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAKIAo2LjQuICAgZW5kR3Jv dXBpbmdSZXF1ZXN0IEV4dGVuZGVkIE9wZXJhdGlvbiAKCiAgIFRoZSBlbmRHcm91cGluZ1JlcXVl c3QgZXh0ZW5kZWQgb3BlcmF0aW9uIGlzIHNlbnQgZnJvbSB0aGUgCiAgIHJlcGxpY2F0aW9uIHN1 cHBsaWVyIHRvIHRoZSByZXBsaWNhdGlvbiBjb25zdW1lciB0byBpbmRpY2F0ZSB0aGUgZW5kIAog ICBvZiB0aGUgc2VxdWVuY2Ugb2YgcmVwbGljYXRpb24gdXBkYXRlcy4gSW4gdGhlIGV2ZW50IHRo YXQgdGhlIAogICBzdXBwbGllciBpcyBzZW5kaW5nIGEgdG90YWwgdXBkYXRlLCB0aGUgZW5kR3Jv dXBpbmdSZXF1ZXN0IGV4dGVuZGVkIAogICBvcGVyYXRpb24gY29udGFpbnMgYSByZXBsaWNhIHVw ZGF0ZSB2ZWN0b3IuIFRoZSBjb25zdW1lciBzZXJ2ZXIgbXVzdCAKICAgcmVwbGFjZSBpdHMgcmVw bGljYSB1cGRhdGUgdmVjdG9yLCBpZiBwcmVzZW50LCB3aXRoIHRoZSBvbmUgcHJvdmlkZWQgCiAg IGJ5IHRoZSBzdXBwbGllci4gSW4gdGhlIGV2ZW50IHRoYXQgdGhlIHN1cHBsaWVyIGlzIHNlbmRp bmcgYW4gCiAgIGluY3JlbWVudGFsIHVwZGF0ZSwgdGhlIHJlcGxpY2EgdXBkYXRlIHZlY3RvciBp cyBhYnNlbnQuIAogICAgCiAgIFRoZSBlbmRHcm91cGluZ1JlcXVlc3QgZXh0ZW5kZWQgb3BlcmF0 aW9uIGlzIGRlZmluZWQgaW4gc2VjdGlvbiAKICAgMi4zLjEgb2YgW0dST1VQSU5HXS4gCiAgICAK ICAgVGhlIGVuZEdyb3VwQ29va2llIG9mIHRoZSBlbmRHcm91cGluZ1JlcXVlc3RWYWx1ZSBtdXN0 IGJlIHRoZSBjb29raWUgCiAgIGlkZW50aWZ5aW5nIHRoaXMgaW5zdGFuY2Ugb2YgdGhlIExEQVAg UmVwbGljYXRpb24gZ3JvdXBpbmcgdHlwZS4gCiAgICAKICAgVGhlIGVuZEdyb3VwVmFsdWUgb2Yg dGhlIGVuZEdyb3VwaW5nUmVxdWVzdFZhbHVlIG11c3QgYmUgc2V0IHRvIHRoZSAKICAgQkVSLWVu Y29kaW5nIG9mIHRoZSBmb2xsb3dpbmc6IAogICAgCiAgICAgICAgIGVuZEdyb3VwVmFsdWUgOjo9 IGVuZFJlcGxHcm91cFJlcVZhbHVlIAogICAgICAgCiAgICAgICAgIGVuZFJlcGxHcm91cFJlcVZh bHVlIDo6PSBTRVFVRU5DRSB7IAogICAgICAgICAgICByZXR1cm5Db25zdW1lclVwZGF0ZVZlY3Rv ciBCT09MRUFOLCAKICAgICAgICAgICAgcmVwbGljYVVwZGF0ZVZlY3RvciAgICAgICAgQXR0cmli dXRlIE9QVElPTkFMIAogICAgICAgICB9IAogICAgCiAgIElmIHJldHVybkNvbnN1bWVyVXBkYXRl VmVjdG9yIGlzIFRSVUUsIHRoZSBjb25zdW1lciBzZXJ2ZXIgbXVzdCAKICAgcmV0dXJuIGl0cyBj dXJyZW50IHVwZGF0ZSB2ZWN0b3IgdG8gdGhlIHN1cHBsaWVyIGluIHRoZSAKICAgRW5kUmVwbGlj YXRpb25SZXNwb25zZSBleHRlbmRlZCBvcGVyYXRpb24uIFR5cGljYWxseSwgdGhlIHN1cHBsaWVy IAogICB3aWxsIHJlcXVlc3QgdGhlIGNvbnN1bWVyJ3MgdXBkYXRlIHZlY3RvciBmb3IgcmVhZC1v bmx5IHJlcGxpY2FzLCAKICAgc2luY2UgdGhlIHJlYWQtb25seSByZXBsaWNhIHdpbGwgbmV2ZXIg aW5pdGlhdGUgYSByZXBsaWNhdGlvbiAKICAgc2Vzc2lvbiwgYW5kIHdpbGwgdGhlcmVmb3JlIG5l dmVyIGhhdmUgdGhlIG9wcG9ydHVuaXR5IHRvIHByb3ZpZGUgCiAgIGl0cyB1cGRhdGUgdmVjdG9y IHRvIG90aGVyIHNlcnZlcnMuIAogICAgCjYuNS4gICBlbmRHcm91cGluZ1Jlc3BvbnNlIEV4dGVu ZGVkIFJlc3BvbnNlIAoKICAgVGhlIGVuZEdyb3VwaW5nUmVzcG9uc2UgZXh0ZW5kZWQgcmVzcG9u c2UgaXMgc2VudCBieSBhIGNvbnN1bWVyIHRvIGEgCiAgIHN1cHBsaWVyIGluIHJlc3BvbnNlIHRv IGFuIGVuZEdyb3VwaW5nUmVxdWVzdCBleHRlbmRlZCBvcGVyYXRpb24uIAogICAgCiAgIFRoZSBl bmRHcm91cGluZ1Jlc3BvbnNlIGV4dGVuZGVkIHJlc3BvbnNlIGlzIGRlZmluZWQgaW4gc2VjdGlv biAKICAgMi4zLjIgb2YgW0dST1VQSU5HXS4gCiAgICAKICAgVGhlIGVuZEdyb3VwVmFsdWUgb2Yg dGhlIGVuZEdyb3VwaW5nUmVzcG9uc2VWYWx1ZSBtdXN0IGJlIHNldCB0byB0aGUgCiAgIEJFUi1l bmNvZGluZyBvZiB0aGUgZm9sbG93aW5nOiAKICAgIAogICAgICAgICBlbmRHcm91cFZhbHVlIDo6 PSBlbmRSZXBsR3JvdXBSZXNwVmFsdWUgCiAgICAgICAKICAgICAgICAgZW5kUmVwbEdyb3VwUmVz cFZhbHVlIDo6PSBTRVFVRU5DRSB7IAogICAgICAgICAgICAgcmVwbGljYVVwZGF0ZVZlY3RvciAg ICBBdHRyaWJ1dGUgT1BUSU9OQUwgCk1jTWVla2luZyAgICAgICAgICAgICAgIEV4cGlyZXMgU2Vw dGVtYmVyIDIwMDMgICAgICAgICAgICAgICBbUGFnZSAxNF0gCiAKCgoKCgoKCgpJbnRlcm5ldCBE cmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAgICAgICBNYXJjaCAy MDAzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFByb3RvY29sIAogCiAgICAg ICAgIH0gCiAgICAKICAgVGhlIHJlcGxpY2FVcGRhdGVWZWN0b3IgY29udGFpbnMgdGhlIGNvbnN1 bWVyJ3MgY3VycmVudCByZXBsaWNhIAogICB1cGRhdGUgdmVjdG9yLCBhbmQgaXMgb3B0aW9uYWwu IFRoZSBjb25zdW1lciBzZXJ2ZXIgTVVTVCBzZW5kIHRoZSAKICAgcmVwbGljYVVwZGF0ZVZlY3Rv ciBpZiByZXF1ZXN0ZWQgYnkgdGhlIHN1cHBsaWVyIHNlcnZlciBpbiB0aGUgCiAgIEVuZFJlcGxp Y2F0aW9uUmVxdWVzdCBleHRlbmRlZCBvcGVyYXRpb24uIAogCjYuNi4gICBSZXBsaWNhdGlvblVw ZGF0ZVJlc3BvbnNlIEV4dGVuZGVkIFJlc3BvbnNlIAoKICAgVGhlIFJlcGxpY2F0aW9uVXBkYXRl UmVzcG9uc2UgZXh0ZW5kZWQgcmVzcG9uc2UgaXMgc2VudCBpbiByZXNwb25zZSAKICAgdG8gZWFj aCBSZXBsaWNhdGlvblVwZGF0ZSBleHRlbmRlZCByZXF1ZXN0LiAKICAgIAogICBUaGUgcmVzcG9u c2VOYW1lIG9mIHRoZSBSZXBsaWNhdGlvblVwZGF0ZVJlc3BvbnNlIGlzIHRoZSAKICAgUmVwbGlj YXRpb25VcGRhdGUgZXh0ZW5kZWQgcmVxdWVzdCBPSUQuIAogICAgCiAgIFRoZSByZXNwb25zZSBm aWVsZCBvZiB0aGUgUmVwbGljYXRpb25VcGRhdGVSZXNwb25zZSBpcyBub3QgdXNlZC4gCiAgICAK ICAgTERBUCByZXNwb25zZSBjb2RlcyB0aGF0IGFwcGx5IHRvIHRoZSBSZXBsaWNhdGlvblVwZGF0 ZVJlc3BvbnNlIGFyZSAKICAgZGVmaW5lZCBpbiBzZWN0aW9uIDkuIAogICAgCjYuNy4gICBSZXBs aWNhdGlvblVwZGF0ZU5vdGljZSBFeHRlbmRlZCBSZXNwb25zZSAKCiAgIFRoZSBSZXBsaWNhdGlv blVwZGF0ZU5vdGljZSBpcyBhbiBMREFQIHVuc29saWNpdGVkIG5vdGlmaWNhdGlvbiBzZW50IAog ICBieSBhIGNvbnN1bWVyIHRvIGEgc3VwcGxpZXIgd2hlbiB0aGUgY29uc3VtZXIgd2lzaGVzIHRv IGluZm9ybSB0aGUgCiAgIHN1cHBsaWVyIG9mIGNvbW1pdHRlZCByZXN1bHRzIG9yIHRlbGwgdGhl IHN1cHBsaWVyIHRvIHN0b3Agc2VuZGluZyAKICAgdXBkYXRlcy4gIFRoZSBub3RpY2UgaXMgYW4g ZXh0ZW5kZWQgcmVzcG9uc2Ugd2hlcmU6IAogICAgCiAgIFRoZSByZXNwb25zZU5hbWUgb2YgdGhl IFJlcGxpY2F0aW9uVXBkYXRlTm90aWNlIGlzIHRoZSBPSUQgTERVUC0KICAgT0lELjMuMy4yLiAK ICAgIAogICBUaGUgcmVzcG9uc2UgZmllbGQgb2YgdGhlIFJlcGxpY2F0aW9uVXBkYXRlTm90aWNl IGlzIHNldCB0byB0aGUgQkVSLQogICBlbmNvZGluZyBvZiB0aGUgZm9sbG93aW5nOiAKICAgIAog ICAgICAgICByZXNwb25zZSA6Oj0gcmVwbGljYXRpb25VcGRhdGVOb3RpY2UgCiAgICAgICAKICAg ICAgICAgcmVwbGljYXRpb25VcGRhdGVOb3RpY2UgOjo9IFNFUVVFTkNFIHsgCiAgICAgICAgICAg IHJlcGxpY2FVcGRhdGVWZWN0b3IgIEF0dHJpYnV0ZSBPUFRJT05BTCAKICAgICAgICAgICAgYWJv cnRVcGRhdGUgICAgICAgICAgQk9PTEVBTiBPUFRJT05BTCBERUZBVUxUIEZBTFNFIAogICAgICAg ICB9IAogICAgCiAgIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBSZXBsaWNhdGlvblVwZGF0ZU5vdGlj ZSBhcmU6IAogICAgCiAgICAgIC0gcmVwbGljYVVwZGF0ZVZlY3RvcjogYW4gb3B0aW9uYWwgdXBk YXRlIHZlY3Rvci4gIElmIHNlbnQsIHRoaXMgCiAgICAgICAgaW5kaWNhdGVzIHRoYXQgdGhlIGNv bnN1bWVyIGhhcyBjb21taXR0ZWQgYWxsIHVwZGF0ZXMgd2hvc2UgCiAgICAgICAgQ1NOcyBhcmUg Y292ZXJlZCBieSB0aGUgdHJhbnNtaXR0ZWQgdXBkYXRlIHZlY3RvciBbc2VlIGdsb3NzYXJ5IAog ICAgICAgIGZvciBhIGRlZmluaXRpb24gb2YgImNvdmVyZWQgYnkiXS4gCiAgICAgIC0gYWJvcnRV cGRhdGU6IGFuIG9wdGlvbmFsIEJvb2xlYW4gZmxhZy4gIElmIGEgc3VwcGxpZXIgcmVjZWl2ZXMg CiAgICAgICAgYSBSZXBsaWNhdGlvblVwZGF0ZU5vdGljZSBmcm9tIGEgY29uc3VtZXIgd2l0aCB0 aGUgQWJvcnRVcGRhdGUgCiAgICAgICAgZmxhZyBzZXQgdG8gdHJ1ZSwgdGhlIHN1cHBsaWVyIHNl cnZlciBNVVNUIGltbWVkaWF0ZWx5IGNlYXNlIAogICAgICAgIHNlbmRpbmcgdXBkYXRlcyBhbmQg dGVybWluYXRlIGl0cyBjb25uZWN0aW9uIHRvIHRoZSBjb25zdW1lci4gCgpNY01lZWtpbmcgICAg ICAgICAgICAgICBFeHBpcmVzIFNlcHRlbWJlciAyMDAzICAgICAgICAgICAgICAgW1BhZ2UgMTVd IAogCgoKCgoKCgoKSW50ZXJuZXQgRHJhZnQgICAgICAgICAgICAgTERVUCBSZXBsaWNhdGlvbiAg ICAgICAgICAgICAgICAgTWFyY2ggMjAwMyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVw ZGF0ZSBQcm90b2NvbCAKIAogICAgCiAgIEVhY2ggUmVwbGljYXRpb25VcGRhdGVOb3RpY2UgZXh0 ZW5kZWQgcmVzcG9uc2UgTVVTVCBiZSBhY2NvbXBhbmllZCAKICAgYnkgYSBncm91cGluZ0NvbnRy b2wgY29udHJvbCBpZGVudGlmeWluZyB0aGUgcmVwbGljYXRpb24gc2Vzc2lvbiB0byAKICAgd2hp Y2ggdGhlIFJlcGxpY2F0aW9uVXBkYXRlTm90aWNlIGFwcGxpZXMuIFRoZSBncm91cGluZ0NvbnRy b2wgCiAgIGNvbnRyb2wgaXMgZGVmaW5lZCBpbiBzZWN0aW9uIDIuNyBvZiBbR1JPVVBJTkddLiBU aGUgZ3JvdXBpbmdDb29raWUgCiAgIG9mIHRoZSBncm91cGluZ0NvbnRyb2xWYWx1ZSBjb250YWlu cyB0aGUgZ3JvdXAgY29va2llIHJldHVybmVkIGluIAogICB0aGUgY3JlYXRlR3JvdXBpbmdSZXNw b25zZS4gVGhlIGdyb3VwVmFsdWUgb2YgdGhlIAogICBncm91cGluZ0NvbnRyb2xWYWx1ZSBpcyBu b3QgcHJlc2VudC4gCiAgICAKNy4gIFNlbWFudGljcyBvZiBGdWxsIGFuZCBJbmNyZW1lbnRhbCBV cGRhdGUgcHJvdG9jb2xzIAoKICAgVGhlIGZ1bGwgYW5kIGluY3JlbWVudGFsIHVwZGF0ZSBwcm90 b2NvbHMgYXJlIHZlcnkgc2ltaWxhci4gIEluIHRoZSAKICAgZnVsbCB1cGRhdGUgcHJvdG9jb2ws IHRoZSByZXBsaWNhdGlvbiBzZXNzaW9uIGlzIGluaXRpYXRlZCBpbiB0aGUgCiAgIHNhbWUgbWFu bmVyIGFzIHByZXNjcmliZWQgYWJvdmUgZm9yIGVpdGhlciBzdXBwbGllci1pbml0aWF0ZWQgb3Ig CiAgIGNvbnN1bWVyLWluaXRpYXRlZCByZXBsaWNhdGlvbi4gIEluIHRoZSBmdWxsIHVwZGF0ZSBw cm90b2NvbCwgdGhlIAogICBjb25zdW1lcidzIHVwZGF0ZSB2ZWN0b3IgaXMgYXNzdW1lZCB0byBi ZSBzZXQgdG8gdGltZXMgImVhcmxpZXIgCiAgIHRoYW4iIHRoZSBvbGRlc3QgdGltZXMga25vd24g dG8gdGhlIHN1cHBsaWVyIHNlcnZlci4gIFRoZSBzdXBwbGllciAKICAgc2VydmVyIHRoZW4gYmVn aW5zIGJ5IHNlbmRpbmcgYWRkRW50cnlQcmltaXRpdmUgcHJvdG9jb2wgZWxlbWVudHMgCiAgIGZv ciBlYWNoIGVudHJ5IGluIHRoZSByZXBsaWNhdGlvbiBhcmVhLCBzdGFydGluZyBmcm9tIHRoZSB0 b3Agb2YgdGhlIAogICB0cmVlIGFuZCBtb3ZpbmcgZGVlcGVyIGludG8gdGhlIHRyZWUuICBJZiBh bnkgZW50cnkncyBhdHRyaWJ1dGVzIAogICBoYXZlIGJlZW4gbW9kaWZpZWQgc2luY2UgdGhlIGFk ZCBvcGVyYXRpb24sIAogICBhZGRBdHRyaWJ1dGVWYWx1ZVByaW1pdGl2ZSBhbmQgcmVtb3ZlQXR0 cmlidXRlVmFsdWVQcmltaXRpdmUgCiAgIG9wZXJhdGlvbnMgYXJlIGFsc28gc2VudCB0byBicmlu ZyB0aGUgY29uc3VtZXIncyB2aWV3IG9mIGFuIGVudHJ5IAogICAoaW5jbHVkaW5nIGNoYW5nZSBz ZXF1ZW5jZSBudW1iZXIgaW5mb3JtYXRpb24pIHVwIHRvIGRhdGUgd2l0aCB0aGUgCiAgIHN1cHBs aWVyJ3Mga25vd2xlZGdlIGFib3V0IGVhY2ggZW50cnkuIAogICAgCiAgIFRoZSBvcmRlciBvZiBl bnRyaWVzIHNlbnQgU0hPVUxEIGJlOiAKICAgIAogICAgICAtICJoaWdoZXN0IiBlbnRyaWVzIGlu IHRoZSB0cmVlIHNlbnQgcHJpb3IgdG8gImxvd2VyIiBlbnRyaWVzIAogICAgICAgIChhbmNlc3Rv cnMgc2VudCBiZWZvcmUgcGFyZW50cykuIAogICAgICAtIHJlcGxpY2F0aW9uIHRvcG9sb2d5ICJz dWJlbnRyaWVzIiBzZW50IHByaW9yIHRvIGFueSBvdGhlciAKICAgICAgICBlbnRyaWVzIGluIHRo ZSBESVQsIHNlbnQgaW4gYSAiYnJlYWR0aC1maXJzdCIgb3JkZXIgCiAgICAgIC0gb3RoZXIgZW50 cmllcyBpbiB0aGUgRElULCBzZW50IGluIGEgImJyZWFkdGgtZmlyc3QiIG9yZGVyIAogICAgCiAg IFRoaXMgb3JkZXIgYWxsb3dzICJhbmNlc3RvciIgZW50cmllcyB0byBiZSBzZWVuIGJ5IHRoZSBj b25zdW1lciAKICAgYmVmb3JlIGNoaWxkIGVudHJpZXMsIHRodXMgcmVkdWNpbmcgdGhlIGNoYW5j ZXMgdGhhdCB0aGUgCiAgIGxvc3RBbmRGb3VuZCBlbnRyeSB3aWxsIG5lZWQgdG8gYmUgdXNlZCBk dXJpbmcgcHJvY2Vzc2luZyBvZiBhIGZ1bGwgCiAgIHVwZGF0ZSBwcm90b2NvbC4gCiAgICAKICAg QSBpbmNyZW1lbnRhbCB1cGRhdGUgcmVwbGljYXRpb24gc2Vzc2lvbiBTSE9VTEQgYmUgcmVxdWVz dGVkIGJ5IHRoZSAKICAgY29uc3VtZXIgc2hvcnRseSBhZnRlciB0aGUgY29tcGxldGlvbiBvZiB0 aGUgZnVsbCB1cGRhdGUgcmVwbGljYXRpb24gCiAgIHNlc3Npb24gdG8gZW5zdXJlIGEgdGltZWx5 IHVwZGF0ZSBvZiBlbnRyaWVzIGluIHRoZSByZXBsaWNhIGZvciAKICAgdXBkYXRlcyBtYWRlIHdo aWxlIHRoZSBmdWxsIHJlcGxpY2F0aW9uIHByb3RvY29sIHdhcyB0YWtpbmcgcGxhY2UuIAogICAg CiAgIEluIHRoZSBpbmNyZW1lbnRhbCB1cGRhdGUgcHJvdG9jb2wsIG5vdGUgdGhhdCBpdCBpcyBk ZXNpcmFibGUgdGhhdCAKICAgd2l0aGluIGFuIGVudHJ5LCB1cGRhdGUgcmVwbGljYXRpb24gcHJp bWl0aXZlcyBhcmUgc2VudCBpbiBjaGFuZ2UgCiAgIHNlcXVlbmNlIG51bWJlciBvcmRlciAocGVy IHJlcGxpY2Egb24gd2hpY2ggdGhlIGNoYW5nZSB3YXMgbWFkZSkgdG8gCiAgIHJlZHVjZSB0aGUg cHJvY2Vzc2luZyBvbiB0aGUgY29uc3VtZXIgc2lkZS4gIFdoaWxlIHRoaXMgaXMgbm90IAogICBy ZXF1aXJlZCwgaXQgaXMgcmVjb21tZW5kZWQuIAogCgoKTWNNZWVraW5nICAgICAgICAgICAgICAg RXhwaXJlcyBTZXB0ZW1iZXIgMjAwMyAgICAgICAgICAgICAgIFtQYWdlIDE2XSAKIAoKCgoKCgoK CkludGVybmV0IERyYWZ0ICAgICAgICAgICAgIExEVVAgUmVwbGljYXRpb24gICAgICAgICAgICAg ICAgIE1hcmNoIDIwMDMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9j b2wgCiAKOC4gIFNlbWFudGljcyBvZiB0aGUgTERBUCBSZXBsaWNhdGlvbiBHcm91cGluZyBUeXBl IAoKICAgSW4gYWRkaXRpb24gdG8gdGhlIG9wZXJhdGlvbmFsIHNlbWFudGljcyBpbiBzZWN0aW9u IDQgb2YgW0dST1VQSU5HXSAKICAgdGhhdCBhcmUgYXBwbGljYWJsZSB0byBhbGwgZ3JvdXBpbmcg dHlwZXMsIHRoZSBmb2xsb3dpbmcgc2VtYW50aWNzIAogICBhcHBseSB0byB0aGUgTERBUCBSZXBs aWNhdGlvbiBncm91cGluZyB0eXBlOiAKICAgIAogICAgICAtIFRoZSBMREFQIFJlcGxpY2F0aW9u IGdyb3VwaW5nIHR5cGUgTVVTVCBOT1QgYmUgbmVzdGVkLiAKICAgICAgIAogICAgICAtIE9wZXJh dGlvbnMgdGhhdCBkbyBub3QgYmVsb25nIHRvIHRoZSBjdXJyZW50IGluc3RhbmNlIG9mIHRoZSAK ICAgICAgICBMREFQIFJlcGxpY2F0aW9uIGdyb3VwaW5nIHR5cGUgU0hBTEwgTk9UIGJlIHNlbnQg YmV0d2VlbiB0aGUgCiAgICAgICAgY3JlYXRlR3JvdXBpbmdSZXF1ZXN0IGFuZCB0aGUgcmVjZWlw dCBvZiB0aGUgCiAgICAgICAgZW5kR3JvdXBpbmdSZXNwb25zZS4gIEluIGVmZmVjdCwgdGhpcyBt ZWFucyB0aGF0IGEgcmVwbGljYXRpb24gCiAgICAgICAgc2Vzc2lvbiAoYXMgZnJhbWVkIGJ5IHRo ZSBjcmVhdGVHcm91cGluZ1JlcXVlc3QgYW5kIGl0cyAKICAgICAgICBjb3JyZXNwb25kaW5nIGVu ZEdyb3VwaW5nUmVxdWVzdCkgaGFzIGV4Y2x1c2l2ZSB1c2Ugb2YgdGhlIExEQVAgCiAgICAgICAg Y29ubmVjdGlvbi4gCiAgICAKOS4gIFN1bW1hcnkgb2YgcmVzcG9uc2UgY29kZXMgCgogICBUaGUg Zm9sbG93aW5nIGxpc3QgZGVzY3JpYmVzIHRoZSByZXNwb25zZSBjb2RlcyB0aGF0IG1heSBiZSBp bmNsdWRlZCAKICAgaW4gdGhlIGNyZWF0ZUdyb3VwaW5nUmVzcG9uc2UgYW5kIFJlcGxpY2F0aW9u VXBkYXRlUmVzcG9uc2UgZXh0ZW5kZWQgCiAgIHJlc3BvbnNlcy4gCiAgICAKICAgICAgIHJlc3Vs dENvZGUgIEVOVU1FUkFURUQgeyAKICAgICAgICAgICBzdWNjZXNzICAgICAgICAgICAgICAgICAg ICAgICAgICAgKDApLCAKICAgICAgICAgICBvcGVyYXRpb25zRXJyb3IgICAgICAgICAgICAgICAg ICAgKDEpLCAKICAgICAgICAgICBwcm90b2NvbEVycm9yICAgICAgICAgICAgICAgICAgICAgKDIp LCAKICAgICAgICAgICBpbnN1ZmZpY2llbnRBY2Nlc3NSaWdodHMgICAgICAgICAoNTApLCAKICAg ICAgICAgICBidXN5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoNTEpLCAKICAgICAgICAg ICBleGNlc3NpdmVDU05Ta2V3ICAgIChbSUFOQS1hc3NpZ25lZF0pLCAKICAgICAgICAgICBvdGhl ciAgICAgICAgICAgICAgICAgICAgICAgICAgICAoODApIAogICAgICAgfSAKICAgIAogICBUaGUg bWVhbmluZ3Mgb2YgdGhlIHJlc3BvbnNlIGNvZGVzIGFyZSBhcyBmb2xsb3dzOiAKICAgIAogICBz dWNjZXNzLi4uLi4uLi4uLi4uLi4uLi4uLi4uIEFzIGRlZmluZWQgaW4gW0xEQVB2M10uIAogICBv cGVyYXRpb25zRXJyb3IuLi4uLi4uLi4uLi4uIEFzIGRlZmluZWQgaW4gW0xEQVB2M10uIAogICBw cm90b2NvbEVycm9yLi4uLi4uLi4uLi4uLi4uIEFzIGRlZmluZWQgaW4gW0xEQVB2M10uIAogICBp bnN1ZmZpY2llbnRBY2Nlc3NSaWdodHMuLi4uIEFjY2VzcyBkZW5pZWQuIFRoZSBpZGVudGl0eSB0 aGF0IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBpbml0aWF0b3IgcHJvdmlk ZWQgaW4gdGhlIGJpbmQgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdCBk b2VzIG5vdCBoYXZlIHN1ZmZpY2llbnQgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cHJpdmlsZWdlcyB0byBwZXJmb3JtIHRoZSBvcGVyYXRpb24uIAogICBidXN5Li4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uIFRoZSByZXBsaWNhIGlzIHRlbXBvcmFyaWx5IHVuYWJsZSB0byAKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBhY2NlcHQgdXBkYXRlcy4gCiAgIGV4Y2Vzc2l2ZUNT TlNrZXcuLi4uLi4uLi4uLi4gVGhlIGNvbnN1bWVyIHNlcnZlciBoYXMgZGV0ZWN0ZWQgdGhhdCAK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgQ1NOcyBiZWluZyBnZW5lcmF0ZWQg YnkgdGhlICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwbGllciBhcmUgdG9v IHNtYWxsIChwZXJoYXBzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlY2F1c2Ug dGhlIHN1cHBsaWVyJ3MgY2xvY2sgd2FzIHNldCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBiYWNrKS4gVXBkYXRlcyBmcm9tIHRoZSBzdXBwbGllciAKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB3aWxsIG5vdCBiZSBhcHBsaWVkLiAKICAgb3RoZXIuLi4uLi4uLi4uLi4u Li4uLi4uLi4uLiBTb21lIG90aGVyIGVycm9yIG9jY3VycmVkLiAKIApNY01lZWtpbmcgICAgICAg ICAgICAgICBFeHBpcmVzIFNlcHRlbWJlciAyMDAzICAgICAgICAgICAgICAgW1BhZ2UgMTddIAog CgoKCgoKCgoKSW50ZXJuZXQgRHJhZnQgICAgICAgICAgICAgTERVUCBSZXBsaWNhdGlvbiAgICAg ICAgICAgICAgICAgTWFyY2ggMjAwMyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVwZGF0 ZSBQcm90b2NvbCAKIAoxMC4gU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMgCgogICBHaXZlbiB0aGUg YXV0aG9yaXR5IG5lY2Vzc2FyaWx5IGdyYW50ZWQgdG8gcGVyZm9ybSByZXBsaWNhdGlvbiBhbmQg CiAgIHRoZSBzZW5zaXRpdmUgbmF0dXJlIG9mIGRhdGEgdGhhdCBpcyByZXBsaWNhdGVkLCByZXBs aWNhdGlvbiBTSE9VTEQgCiAgIGJlIGRvbmUgdXNpbmcgYW4gYXV0aGVudGljYXRpb24gbWV0aG9k IGFuZCBzZWN1cml0eSBsYXllciB0aGF0IAogICBwcm90ZWN0cyB0aGUgYXV0aGVudGljYXRpb24g Y3JlZGVudGlhbHMgYW5kIGVuc3VyZXMgYm90aCB0aGUgCiAgIGludGVncml0eSBhbmQgY29uZmlk ZW50aWFsaXR5IG9mIHRoZSByZXBsaWNhdGVkIGRhdGEgW0FVVEhNRVRIXS4gCiAgICAKICAgRXJy b3IgbWVzc2FnZSByZXR1cm5lZCBpcyBsaXN0ZWQgYXMgJ3Blcm1pc3Npb24gZGVuaWVkJyByZWdh cmRsZXNzIAogICBvZiB3aHkgcmVxdWVzdCBjb3VsZG4ndCBiZSBwZXJmb3JtZWQsIGUuZy4gc28g dGhhdCBhIGNsaWVudCBjYW5ub3QgCiAgIGRpc2NvdmVyIHdoYXQgcmVwbGljYXMgZXhpc3Qgb3Ig aWRlbnRpdHkgdGhhdCBjYW5ub3QgcGVyZm9ybSAKICAgcmVwbGljYXRpb24uIAogICAgCjExLiBJ QU5BIENvbnNpZGVyYXRpb25zIAoKICAgVGhpcyBkb2N1bWVudCBsaXN0cyBzZXZlcmFsIHZhbHVl cyB0aGF0IGFyZSB0byBiZSBhc3NpZ25lZCBieSBvciAKICAgcmVnaXN0ZXJlZCB3aXRoIElBTkEu IAogICAgCiAgIFRoZSBmb2xsb3dpbmcgTERBUCByZXN1bHQgY29kZSBpcyB0byBiZSBhc3NpZ25l ZCBieSBJQU5BIGFzIAogICBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjYgb2YgW1JGQzMzODNdOiAK ICAgIAogICAgICBleGNlc3NpdmVDU05Ta2V3IAogICAgCiAgIFRoZSBmb2xsb3dpbmcgT2JqZWN0 IElkZW50aWZpZXIgW09JRF0gaXMgdG8gYmUgYXNzaWduZWQgYnkgSUFOQSBhcyAKICAgZGVzY3Jp YmVkIGluIHNlY3Rpb24gMy4xIG9mIFtSRkMzMzgzXTogCiAgICAKICAgICAgTERVUC1PSUQgCiAg ICAKICAgVGhpcyBPSUQgaXMgdXNlZCBieSB2YXJpb3VzIExEVVAgZG9jdW1lbnRzIHRvIGdlbmVy YXRlIE9JRCBmb3IgCiAgIG9iamVjdCBjbGFzc2VzLCBhdHRyaWJ1dGUgdHlwZXMsIGNvbnRyb2wg YW5kIGV4dGVuZGVkIHJlcXVlc3RzIGFzIAogICBmb2xsb3dzOiAKICAgIAogICAgICAtIFtJTkZP TU9EXSBnZW5lcmF0ZXMgT0lEcyBmcm9tIHRoZSBPSUQgYXJjIExEVVAtT0lELjEuIAogICAgICAg CiAgICAgIC0gW01STV0gZ2VuZXJhdGVzIE9JRHMgZnJvbSB0aGUgT0lEIGFyYyBMRFVQLU9JRC4y LiAKICAgICAgIAogICAgICAtIFRoaXMgZG9jdW1lbnQgZ2VuZXJhdGVzIE9JRHMgZnJvbSB0aGUg T0lEIGFyYyBMRFVQLU9JRC4zLiAKICAgIAogICBUaGUgZm9sbG93aW5nIExEQVAgcHJvdG9jb2wg ZWxlbWVudHMgYXJlIHRvIGJlIHJlZ2lzdGVyZWQgd2l0aCBJQU5BIAogICBhcyBkZXNjcmliZWQg aW4gc2VjdGlvbiAzLjIgb2YgW1JGQzMzODNdLiAKICAgIAogICBOYW1lICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFR5cGUgIE9JRCAKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t ICAtLS0tICAtLS0tLS0tLS0tLS0tIAogICBMREFQIFJlcGxpY2F0aW9uIEdyb3VwaW5nIFR5cGUg IEcgICAgIExEVVAtT0lELjMuMS4xIAogICBSZXBsaWNhdGlvblVwZGF0ZSAgICAgICAgICAgICAg IEUgICAgIExEVVAtT0lELjMuMy4xIAogICAgCiAgIExlZ2VuZDogCiAgIC0tLS0tLS0gCiAgIEUg PT4gc3VwcG9ydGVkRXh0ZW5zaW9uIAogICBHID0+IHN1cHBvcnRlZEdyb3VwaW5nVHlwZSAKICAg IAoKTWNNZWVraW5nICAgICAgICAgICAgICAgRXhwaXJlcyBTZXB0ZW1iZXIgMjAwMyAgICAgICAg ICAgICAgIFtQYWdlIDE4XSAKIAoKCgoKCgoKCkludGVybmV0IERyYWZ0ICAgICAgICAgICAgIExE VVAgUmVwbGljYXRpb24gICAgICAgICAgICAgICAgIE1hcmNoIDIwMDMgCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBVcGRhdGUgUHJvdG9jb2wgCiAKMTIuIEFja25vd2xlZGdlbWVudHMgCgog ICBUaGUgYXV0aG9yIHdvdWxkIGxpa2UgdG8gdGhhbmsgcHJldmlvdXMgYXV0aG9ycyBvZiB0aGlz IGRvY3VtZW50LCAKICAgR29yZG9uIEdvb2QsIEFtZXJpY2EgT25saW5lLCBSb2dlciBIYXJyaXNv biwgTm92ZWxsLCBJbmMuLCBFbGxlbiAKICAgU3Rva2VzIGFuZCBUaW1vdGh5IEhhaG4sIElCTSBD b3Jwb3JhdGlvbiwgYW5kIG1lbWJlcnMgb2YgdGhlIExEVVAgCiAgIHdvcmtpbmcgZ3JvdXAgZm9y IHRoZWlyIHNpZ25pZmljYW50IGNvbnRyaWJ1dGlvbnMgdG8gdGhpcyBkb2N1bWVudC4gCiAgICAK MTMuIFJlZmVyZW5jZXMgCgogICBbQVJDSElURUNUVVJFXSAKICAgICBKLiBNZXJyZWxscywgRS4g UmVlZCwgVS4gU3Jpbml2YXNhbiwgIkxEQVAgUmVwbGljYXRpb24gCiAgICAgQXJjaGl0ZWN0dXJl IiwgSW50ZXJuZXQtRHJhZnQsIGRyYWZ0LWlldGYtbGR1cC1tb2RlbC14eC50eHQsIGEgCiAgICAg d29yayBpbiBwcm9ncmVzcy4gCiAgICAKICAgW0FVVEhNRVRIXSAKICAgICBXYWhsLCBNLiwgQWx2 ZXN0cmFuZCwgSC4sIEhvZGdlcywgSi4gYW5kIFIuIE1vcmdhbiwgCiAgICAgIkF1dGhlbnRpY2F0 aW9uIE1ldGhvZHMgZm9yIExEQVAiLCBSRkMgMjgyOSwgTWF5IDIwMDAuIAogICAgCiAgIFtDU05d IAogICAgIEouIFNlcm1lcnNoZWltLCAiVGhlIExEQVAgQ2hhbmdlIFNlcXVlbmNlIE51bWJlciBT eW50YXggYW5kIAogICAgIE1hdGNoaW5nIFJ1bGVzIiwgSW50ZXJuZXQtRHJhZnQsIGRyYWZ0LXNl cm1lcnNoZWltLWxkYXAtY3NuLSAKICAgICB4eC50eHQsIGEgd29yayBpbiBwcm9ncmVzcy4gCiAg ICAKICAgW0VOVFJZVVVJRF0gCiAgICAgSy4gWmVpbGVuZ2EsICJUaGUgTERBUCBlbnRyeXV1aWQg b3BlcmF0aW9uYWwgYXR0cmlidXRlIiwgSW50ZXJuZXQtIAogICAgIERyYWZ0LCBkcmFmdC16ZWls ZW5nYS1sZGFwLXV1aWQteHgudHh0LCBhIHdvcmsgaW4gcHJvZ3Jlc3MuIAogICAgICAKICAgW0dS T1VQSU5HXSAKICAgICBLLiBaZWlsZW5nYSwgIkxEQVB2MzogR3JvdXBpbmcgb2YgUmVsYXRlZCBP cGVyYXRpb25zIiwgSW50ZXJuZXQtCiAgICAgRHJhZnQsIGRyYWZ0LXplaWxlbmdhLWxkYXAtZ3Jv dXBpbmcteHgudHh0LCBhIHdvcmsgaW4gcHJvZ3Jlc3MuIAogICAgCiAgIFtJTkZPTU9EXSAKICAg ICBSLiBIdWJlciwgSi4gTWNNZWVraW5nLCBSLiBNb2F0cywgIkxEQVAgUmVwbGljYXRpb24gSW5m b3JtYXRpb24gCiAgICAgTW9kZWwiLCBJbnRlcm5ldC1EcmFmdCwgZHJhZnQtaWV0Zi1sZHVwLWlu Zm9tb2QteHgudHh0LCBhIHdvcmsgaW4gCiAgICAgcHJvZ3Jlc3MuIAogICAgCiAgIFtLRVlXT1JE U10gCiAgICAgUy4gQnJhZG5lciwgIktleSBXb3JkcyBmb3IgdXNlIGluIFJGQ3MgdG8gSW5kaWNh dGUgUmVxdWlyZW1lbnQgCiAgICAgTGV2ZWxzIiwgSGFydmFyZCBVbml2ZXJzaXR5LCBSRkMgMjEx OSwgTWFyY2ggMTk5Ny4gCiAgICAKICAgW0xEQVB2M10gCiAgICAgTS4gV2FobCwgUy4gS2lsbGUs IFQuIEhvd2VzLCAiTGlnaHR3ZWlnaHQgRGlyZWN0b3J5IEFjY2VzcyAKICAgICBQcm90b2NvbCAo djMpIiwgUkZDIDIyNTEsIERlY2VtYmVyIDE5OTcuIAogICAgCiAgIFtNUk1dIAogICAgIFIuIE1v YXRzLCBSLiBIdWJlciwgSi4gTWNNZWVraW5nLCAiTWFuZGF0b3J5IExEQVAgUmVwbGljYSAKICAg ICBNYW5hZ2VtZW50IiwgSW50ZXJuZXQtRHJhZnQsIGRyYWZ0LWlldGYtbGR1cC1tcm0teHgudHh0 LCBhIHdvcmsgaW4gCiAgICAgcHJvZ3Jlc3MuIAogICAgCgoKCk1jTWVla2luZyAgICAgICAgICAg ICAgIEV4cGlyZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICBbUGFnZSAxOV0gCiAKCgoK CgoKCgpJbnRlcm5ldCBEcmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxpY2F0aW9uICAgICAgICAg ICAgICAgICBNYXJjaCAyMDAzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIFBy b3RvY29sIAogCiAgIFtSRVFdIAogICAgIEUuIFN0b2tlcywgUi4gV2Vpc2VyLCBSLiBNb2F0cywg Ui4gSHViZXIsICJMaWdodHdlaWdodCBEaXJlY3RvcnkgCiAgICAgQWNjZXNzIFByb3RvY29sICh2 ZXJzaW9uIDMpIFJlcGxpY2F0aW9uIFJlcXVpcmVtZW50cyIsIFJGQyAzMzg0LCAKICAgICBPY3Rv YmVyIDIwMDIuIAogICAgCiAgIFtVUlBdIAogICAgIFMuIExlZ2csIEEuIFBheW5lLCAiTERVUCBV cGRhdGUgUmVjb25jaWxpYXRpb24gUHJvY2VkdXJlcyIsIAogICAgIEludGVybmV0LURyYWZ0LCBk cmFmdC1pZXRmLWxkdXAtdXJwLXh4LnR4dCwgYSB3b3JrIGluIHByb2dyZXNzLiAKICAgIAoxNC4g QXV0aG9yJ3MgQWRkcmVzc2VzIAoKICAgSm9obiBNY01lZWtpbmcgCiAgIElCTSBDb3Jwb3JhdGlv biAKICAgUm9jaGVzdGVyLCBNTiAKICAgVVNBIAogICBFbWFpbDogam1jbWVla0B1cy5pYm0uY29t IAogICBwaG9uZTogKzEgNTA3IDI1MyA0NTk2IAogICAgCjE1LiBBcHBlbmRpeCBBIC0gQ29tcGxl dGUgQVNOLjEgRGVmaW5pdGlvbiAKCiAgICAgIGNyZWF0ZVJlcGxHcm91cFJlcVZhbHVlIDo6PSBT RVFVRU5DRSB7IAogICAgICAgICAgYXJlYU9mUmVwbGljYXRpb24gICAgICBMREFQRE4sIAogICAg ICAgICAgcmVwbGljYUlEICAgICAgICAgICAgICBMREFQU3RyaW5nLCAKICAgICAgICAgIHJlcGxp Y2F0aW9uUHJvdG9jb2xPSUQgTERBUE9JRCwgCiAgICAgICAgICByZXBsaWNhdGlvbkluaXRpYXRv ciAgIEVOVU1FUkFURUQgCiAgICAgICAgICB7IAogICAgICAgICAgICAgIHN1cHBsaWVyICgwKSwg CiAgICAgICAgICAgICAgY29uc3VtZXIgKDEpIAogICAgICAgICAgfSAKICAgICAgICAgIHJlcGxp Y2FJRFRhYmxlIFNFUVVFTkNFIE9QVElPTkFMIHsgCiAgICAgICAgICAgICAgdGFibGVMZW5ndGgg ICBJTlRFR0VSIAogICAgICAgICAgICAgIHRhYmxlIFNFUVVFTkNFIE9GIFNFUVVFTkNFIHsgCiAg ICAgICAgICAgICAgICAgIHJlcGxpY2FJRCAgICBMREFQU3RyaW5nLCAKICAgICAgICAgICAgICAg ICAgcmVwbGljYVVVSUQgIExEQVBTdHJpbmcgCiAgICAgICAgICAgICAgfSAKICAgICAgICAgIH0g CiAgICAgIH0gCiAgICAgICAKICAgICAgY3JlYXRlUmVwbEdyb3VwUmVzcFZhbHVlIDo6PSBTRVFV RU5DRSB7IAogICAgICAgICAgcmVwbGljYVVwZGF0ZVZlY3RvciAgIEF0dHJpYnV0ZSBPUFRJT05B TCwgCiAgICAgIH0gCiAgICAgICAKICAgICAgcmVwbGljYXRpb25VcGRhdGVSZXF1ZXN0VmFsdWUg Ojo9IFNFUVVFTkNFIHsgCiAgICAgICAgICB1bmlxdWVJRCAgVW5pcXVlSWRlbnRpZmllciwgCiAg ICAgICAgICB1cGRhdGVzICAgU0VUIE9GIFJlcGxpY2F0aW9uUHJpbWl0aXZlIAogICAgICB9IAog ICAgICAgCiAgICAgIFVuaXF1ZUlkZW50aWZpZXIgOjo9IExEQVBTdHJpbmcgCgpNY01lZWtpbmcg ICAgICAgICAgICAgICBFeHBpcmVzIFNlcHRlbWJlciAyMDAzICAgICAgICAgICAgICAgW1BhZ2Ug MjBdIAogCgoKCgoKCgoKSW50ZXJuZXQgRHJhZnQgICAgICAgICAgICAgTERVUCBSZXBsaWNhdGlv biAgICAgICAgICAgICAgICAgTWFyY2ggMjAwMyAKICAgICAgICAgICAgICAgICAgICAgICAgICAg IFVwZGF0ZSBQcm90b2NvbCAKIAogICAgICAgCiAgICAgIFJlcGxpY2F0aW9uUHJpbWl0aXZlIDo6 PSBDSE9JQ0UgeyAKICAgICAgICAgIGFkZEVudHJ5UHJpbWl0aXZlICAgICAgICAgICAgICBBZGRF bnRyeVByaW1pdGl2ZSwgCiAgICAgICAgICBtb3ZlRW50cnlQcmltaXRpdmUgICAgICAgICAgICAg TW92ZUVudHJ5UHJpbWl0aXZlLCAKICAgICAgICAgIHJlbmFtZUVudHJ5UHJpbWl0aXZlICAgICAg ICAgICBSZW5hbWVFbnRyeVByaW1pdGl2ZSwgCiAgICAgICAgICByZW1vdmVFbnRyeVByaW1pdGl2 ZSAgICAgICAgICAgUmVtb3ZlRW50cnlQcmltaXRpdmUsIAogICAgICAgICAgYWRkQXR0cmlidXRl VmFsdWVQcmltaXRpdmUgICAgIEFkZEF0dHJpYnV0ZVZhbHVlUHJpbWl0aXZlLCAKICAgICAgICAg IHJlbW92ZUF0dHJpYnV0ZVZhbHVlUHJpbWl0aXZlIAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJlbW92ZUF0dHJpYnV0ZVZhbHVlUHJpbWl0aXZlLCAKICAgICAgICAg IHJlbW92ZUF0dHJpYnV0ZVByaW1pdGl2ZSAgICAgICBSZW1vdmVBdHRyaWJ1dGVQcmltaXRpdmUg CiAgICAgIH0gCiAgICAgICAKICAgICAgQWRkRW50cnlQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElP TiAwXSBTRVFVRU5DRSB7IAogICAgICAgICAgY3NuICAgICAgICAgQ2hhbmdlU2VxdWVuY2VOdW1i ZXIsIAogICAgICAgICAgc3VwZXJpb3IgICAgVW5pcXVlSWRlbnRpZmllciwgCiAgICAgICAgICBy ZG4gICAgICAgICBSZWxhdGl2ZUxEQVBETiAKICAgICAgfSAKICAgICAgIAogICAgICBNb3ZlRW50 cnlQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElPTiAxXSBTRVFVRU5DRSB7IAogICAgICAgICAgY3Nu ICAgICAgIENoYW5nZVNlcXVlbmNlTnVtYmVyLCAKICAgICAgICAgIHN1cGVyaW9yICBVbmlxdWVJ ZGVudGlmaWVyIAogICAgICB9IAogICAgICAgCiAgICAgIFJlbmFtZUVudHJ5UHJpbWl0aXZlIDo6 PSBbQVBQTElDQVRJT04gMl0gU0VRVUVOQ0UgeyAKICAgICAgICAgIGNzbiAgIENoYW5nZVNlcXVl bmNlTnVtYmVyLCAKICAgICAgICAgIHJkbiAgIFJlbGF0aXZlTERBUEROIAogICAgICB9IAogICAg ICAgCiAgICAgIFJlbW92ZUVudHJ5UHJpbWl0aXZlIDo6PSBbQVBQTElDQVRJT04gM10gU0VRVUVO Q0UgeyAKICAgICAgICAgIGNzbiAgQ2hhbmdlU2VxdWVuY2VOdW1iZXIgCiAgICAgIH0gCiAgICAg ICAKICAgICAgQWRkQXR0cmlidXRlVmFsdWVQcmltaXRpdmUgOjo9IFtBUFBMSUNBVElPTiA0XSBT RVFVRU5DRSB7IAogICAgICAgICAgY3NuICAgICBDaGFuZ2VTZXF1ZW5jZU51bWJlciwgCiAgICAg ICAgICB0eXBlICAgIEF0dHJpYnV0ZURlc2NyaXB0aW9uLCAKICAgICAgICAgIHZhbHVlICAgQXR0 cmlidXRlVmFsdWUgCiAgICAgIH0gCiAgICAgICAKICAgICAgUmVtb3ZlQXR0cmlidXRlVmFsdWVQ cmltaXRpdmUgOjo9IFtBUFBMSUNBVElPTiA1XSBTRVFVRU5DRSB7IAogICAgICAgICAgY3NuICAg ICAgQ2hhbmdlU2VxdWVuY2VOdW1iZXIsIAogICAgICAgICAgdHlwZSAgICAgQXR0cmlidXRlRGVz Y3JpcHRpb24sIAogICAgICAgICAgdmFsdWUgICAgQXR0cmlidXRlVmFsdWUgCiAgICAgIH0gCiAg ICAgICAKICAgICAgUmVtb3ZlQXR0cmlidXRlUHJpbWl0aXZlIDo6PSBbQVBQTElDQVRJT04gNl0g U0VRVUVOQ0UgeyAKICAgICAgICAgIGNzbiAgICBDaGFuZ2VTZXF1ZW5jZU51bWJlciwgCk1jTWVl a2luZyAgICAgICAgICAgICAgIEV4cGlyZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICBb UGFnZSAyMV0gCiAKCgoKCgoKCgpJbnRlcm5ldCBEcmFmdCAgICAgICAgICAgICBMRFVQIFJlcGxp Y2F0aW9uICAgICAgICAgICAgICAgICBNYXJjaCAyMDAzIAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgVXBkYXRlIFByb3RvY29sIAogCiAgICAgICAgICB0eXBlICAgQXR0cmlidXRlRGVzY3Jp cHRpb24gCiAgICAgIH0gCiAgICAgICAKICAgICAgZW5kUmVwbEdyb3VwUmVxVmFsdWUgOjo9IFNF UVVFTkNFIHsgCiAgICAgICAgICByZXR1cm5Db25zdW1lclVwZGF0ZVZlY3RvciBCT09MRUFOLCAK ICAgICAgICAgIHJlcGxpY2FVcGRhdGVWZWN0b3IgICAgICAgIEF0dHJpYnV0ZSBPUFRJT05BTCAK ICAgICAgfSAKICAgICAgIAogICAgICBlbmRSZXBsR3JvdXBSZXNwVmFsdWUgOjo9IFNFUVVFTkNF IHsgCiAgICAgICAgICByZXBsaWNhVXBkYXRlVmVjdG9yICAgIEF0dHJpYnV0ZSBPUFRJT05BTCAK ICAgICAgfSAKICAgICAgIAogICAgICByZXBsaWNhdGlvblVwZGF0ZU5vdGljZSA6Oj0gU0VRVUVO Q0UgeyAKICAgICAgICAgIHJlcGxpY2FVcGRhdGVWZWN0b3IgICAgQXR0cmlidXRlIE9QVElPTkFM IAogICAgICAgICAgYWJvcnRVcGRhdGUgICAgICAgICAgICBCT09MRUFOIE9QVElPTkFMIERFRkFV TFQgRkFMU0UgCiAgICAgIH0gCiAgICAKMTYuIEludGVsbGVjdHVhbCBQcm9wZXJ0eSBOb3RpY2Ug CgogICBUaGUgSUVURiBpbnZpdGVzIGFueSBpbnRlcmVzdGVkIHBhcnR5IHRvIGJyaW5nIHRvIGl0 cyBhdHRlbnRpb24gYW55IAogICBjb3B5cmlnaHRzLCBwYXRlbnRzIG9yIHBhdGVudCBhcHBsaWNh dGlvbnMsIG9yIG90aGVyIHByb3ByaWV0YXJ5IAogICByaWdodHMgd2hpY2ggbWF5IGNvdmVyIHRl Y2hub2xvZ3kgdGhhdCBtYXkgYmUgcmVxdWlyZWQgdG8gcHJhY3RpY2UgCiAgIHRoaXMgc3RhbmRh cmQuICBQbGVhc2UgYWRkcmVzcyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIElFVEYgRXhlY3V0aXZl IAogICBEaXJlY3Rvci4gCiAgICAKMTcuIENvcHlyaWdodCBJbmZvcm1hdGlvbiAgCgogICBGdWxs IENvcHlyaWdodCBTdGF0ZW1lbnQgCiAgICAKICAgQ29weXJpZ2h0IChDKSBUaGUgSW50ZXJuZXQg U29jaWV0eSAoMjAwMykuICBBbGwgUmlnaHRzIFJlc2VydmVkLiAKICAgIAogICBUaGlzIGRvY3Vt ZW50IGFuZCB0cmFuc2xhdGlvbnMgb2YgaXQgbWF5IGJlIGNvcGllZCBhbmQgZnVybmlzaGVkIHRv IAogICBvdGhlcnMsIGFuZCBkZXJpdmF0aXZlIHdvcmtzIHRoYXQgY29tbWVudCBvbiBvciBvdGhl cndpc2UgZXhwbGFpbiBpdCAKICAgb3IgYXNzaXN0IGluIGl0cyBpbXBsZW1lbnRhdGlvbiBtYXkg YmUgcHJlcGFyZWQsIGNvcGllZCwgcHVibGlzaGVkIAogICBhbmQgZGlzdHJpYnV0ZWQsIGluIHdo b2xlIG9yIGluIHBhcnQsIHdpdGhvdXQgcmVzdHJpY3Rpb24gb2YgYW55IAogICBraW5kLCBwcm92 aWRlZCB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBhcmFncmFwaCAK ICAgYXJlIGluY2x1ZGVkIG9uIGFsbCBzdWNoIGNvcGllcyBhbmQgZGVyaXZhdGl2ZSB3b3Jrcy4g IEhvd2V2ZXIsIHRoaXMgCiAgIGRvY3VtZW50IGl0c2VsZiBtYXkgbm90IGJlIG1vZGlmaWVkIGlu IGFueSB3YXksIHN1Y2ggYXMgYnkgcmVtb3ZpbmcgCiAgIHRoZSBjb3B5cmlnaHQgbm90aWNlIG9y IHJlZmVyZW5jZXMgdG8gdGhlIEludGVybmV0IFNvY2lldHkgb3Igb3RoZXIgCiAgIEludGVybmV0 IG9yZ2FuaXphdGlvbnMsIGV4Y2VwdCBhcyBuZWVkZWQgZm9yIHRoZSBwdXJwb3NlIG9mIGRldmVs b3AtIAogICBpbmcgSW50ZXJuZXQgc3RhbmRhcmRzIGluIHdoaWNoIGNhc2UgdGhlIHByb2NlZHVy ZXMgZm9yIGNvcHlyaWdodHMgCiAgIGRlZmluZWQgaW4gdGhlIEludGVybmV0IFN0YW5kYXJkcyBw cm9jZXNzIG11c3QgYmUgZm9sbG93ZWQsIG9yIGFzIAogICByZXF1aXJlZCB0byB0cmFuc2xhdGUg aXQgaW50byBsYW5ndWFnZXMgb3RoZXIgdGhhbiBFbmdsaXNoLiAKICAgIAogICBUaGUgbGltaXRl ZCBwZXJtaXNzaW9ucyBncmFudGVkIGFib3ZlIGFyZSBwZXJwZXR1YWwgYW5kIHdpbGwgbm90IGJl IAogICByZXZva2VkIGJ5IHRoZSBJbnRlcm5ldCBTb2NpZXR5IG9yIGl0cyBzdWNjZXNzb3JzIG9y IGFzc2lnbnMuIAogICAgCiAgIFRoaXMgZG9jdW1lbnQgYW5kIHRoZSBpbmZvcm1hdGlvbiBjb250 YWluZWQgaGVyZWluIGlzIHByb3ZpZGVkIG9uIGFuIAogICAiQVMgSVMiIGJhc2lzIGFuZCBUSEUg SU5URVJORVQgU09DSUVUWSBBTkQgVEhFIElOVEVSTkVUIEVOR0lORUVSSU5HIAogICBUQVNLIEZP UkNFIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUywgRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJ TkcgCk1jTWVla2luZyAgICAgICAgICAgICAgIEV4cGlyZXMgU2VwdGVtYmVyIDIwMDMgICAgICAg ICAgICAgICBbUGFnZSAyMl0gCiAKCgoKCgoKCgpJbnRlcm5ldCBEcmFmdCAgICAgICAgICAgICBM RFVQIFJlcGxpY2F0aW9uICAgICAgICAgICAgICAgICBNYXJjaCAyMDAzIAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgVXBkYXRlIFByb3RvY29sIAogCiAgIEJVVCBOT1QgTElNSVRFRCBUTyBB TlkgV0FSUkFOVFkgVEhBVCBUSEUgVVNFIE9GIFRIRSBJTkZPUk1BVElPTiAKICAgSEVSRUlOIFdJ TEwgTk9UIElORlJJTkdFIEFOWSBSSUdIVFMgT1IgQU5ZIElNUExJRUQgV0FSUkFOVElFUyBPRiAK ICAgTUVSQ0hBTlRBQklMSVRZIE9SIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCk1jTWVla2lu ZyAgICAgICAgICAgICAgIEV4cGlyZXMgU2VwdGVtYmVyIDIwMDMgICAgICAgICAgICAgICBbUGFn ZSAyM10gCiAKCgoKCgoKCg== --0__=09BBE498DFF8488D8f9e8a93df938690918c09BBE498DFF8488D--