DQpUcmFjZWFseXplciBUcmFjZSBSZWNvcmRlciBMaWJyYXJ5DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpQZXJjZXBpbyBBQg0Kd3d3LnBlcmNlcGlvLmNvbQ0KDQpUaGlzIGRpcmVjdG9yeSBjb250YWlucyB0aGUgYSBnZW5lcmljIHRyYWNlIHJlY29yZGVyIGxpYnJhcnkgZm9yIFRyYWNlYWx5emVyIHYyLjYuIA0KDQpGb3IgaW5mb3JtYXRpb24gb24gaG93IHRvIHVwbG9hZCB0aGUgdHJhY2UgZGF0YSBmcm9tIHlvdXIgdGFyZ2V0IHN5c3RlbSBSQU0gdG8gDQpUcmFjZWFseXplciwgc2VlICJkZWJ1Z2dlciB0cmFjZSB1cGxvYWQudHh0Ig0KDQpGaWxlcyBpbmNsdWRlZA0KLS0tLS0tLS0tLS0tLS0NCi0gdHJjQ29uZmlnLmggICAgICAgICAgICAgLSBUaGUgcmVjb3JkZXIncyBjb25maWd1cmF0aW9uIGZpbGUsIHNldCB5b3VyIHJlY29yZGVyIGNvbmZpZ3VyYXRpb24gaGVyZSENCi0gdHJjVXNlci5jLy5oICAgICAgICAgICAgLSBUaGUgbWFpbiBBUEkgdG93YXJkcyB0aGUgYXBwbGljYXRpb24gKHRyY1VzZXIuaCBpbiB0aGUgb25seSBpbmNsdWRlIG5lY2Vzc2FyeSkuDQotIHRyY0tlcm5lbC5jLy5oICAgICAgICAgIC0gSW50ZXJuYWwgcm91dGluZXMgZm9yIHN0b3Jpbmcga2VybmVsIGV2ZW50cy4NCi0gdHJjQmFzZS5jLy5oICAgICAgICAgICAgLSBJbnRlcm5hbCByb3V0aW5lcyBmb3IgbWFuaXB1bGF0aW5nIHRoZSBkYXRhIHN0cnVjdHVyZXMgYW5kIGNhbGN1bGF0aW5nIHRpbWVzdGFtcHMuDQotIHRyY0hhcmR3YXJlUG9ydC5jLy5oICAgIC0gVGhlIGhhcmR3YXJlIGludGVyZmFjZSwgZXNwZWNpYWxseSBmb3IgdGltZXN0YW1waW5nLg0KLSB0cmNLZXJuZWxQb3J0LmMvLmggICAgICAtIEtlcm5lbCBzcGVjaWZpYyBpbXBsZW1lbnRhdGlvbnMgb2YgbWFjcm9zIGFuZCBkYXRhLg0KLSB0cmNLZXJuZWxIb29rcy5oICAgICAgICAtIFRoZSB0cmFjZSBtYWNybyBkZWZpbmVzIChPUyBpbmRlcGVuZGVudCkuDQotIHRyY1R5cGVzLmggICAgICAgICAgICAgIC0gVHlwZSBkZWZpbml0aW9ucyB1c2VkLg0KDQpIYXJkd2FyZSBUaW1lciBQb3J0cw0KLS0tLS0tLS0tLS0tLS0tLS0tLS0NClRoaXMgcmVsZWFzZSBjb250YWlucyBoYXJkd2FyZSB0aW1lciBwb3J0cyBmb3IgdGhlIGZvbGxvd2luZyBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzOg0KDQotIEFSTSBDb3J0ZXggTTMvTTQvTTAvTTArIChhbGwgYnJhbmRzLCBzdWNoIGFzIEF0bWVsIFNBTTN4L1NBTTR4L1NBTSBEMjAsIE5YUCAxN3h4LCAxOHh4LCA0M3h4LCBTVE0zMiwgRnJlZXNjYWxlIEtpbmV0aXMsIC4uLikNCi0gQXRtZWwgQVQ5MVNBTTd4DQotIEF0bWVsIEFUMzJVQzMgKEFWUjMyKQ0KLSBSZW5lc2FzIFJYNjAwIChlLmcuLCBSWDYyTikNCi0gTWljcm9jaGlwIGRzUElDL1BJQzI0DQotIE1pY3JvY2hpcCBQSUMzMg0KLSBOWFAgTFBDMjEwNg0KLSBUZXhhcyBJbnN0cnVtZW50cyBUTVM1NzAgKENvcnRleC1SNCkNCi0gVGV4YXMgSW5zdHJ1bWVudHMgTVNQNDMwDQotIFhpbGlueCBQb3dlclBDIDQwNQ0KLSBYaWxpbnggUG93ZXJQQyA0NDANCi0gWGlsaW54IE1pY3JvYmxhemUNCg0KVGhlc2UgYXJlIGRlZmluZWQgaW4gdHJjSGFyZHdhcmVQb3J0LmguIFNvbWUgb2YgdGhlc2UgYXJlICJ1bm9mZmljaWFsIiBwb3J0cywgcHJvdmlkZWQgYnkgZXh0ZXJuYWwgY29udHJpYnV0b3JzLg0KQnkgdW5vZmZpY2lhbCwgaXQgbWVhbnMgdGhhdCB0aGV5IGFyZSBub3QgeWV0IHZlcmlmaWVkIGJ5IFBlcmNlcGlvIEFCLiBQbGVhc2UgcmVmZXIgdG8gdHJjSGFyZHdhcmVQb3J0LmggZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uLiANCklmIHlvdSB1c2UgYW4gdW5vZmZpY2lhbCBwb3J0IGFuZCBiZWxlaXZlIGl0IGlzIGluY29ycmVjdCwgcGxlYXNlIGxldCB1cyBrbm93ISAoc3VwcG9ydEBwZXJjZXBpby5jb20pDQoNCkluIGNhc2UgeW91ciBNQ1UgaXMgbm90IHlldCBzdXBwb3J0ZWQgZGlyZWN0bHksIGRldmVsb3BpbmcgYSBuZXcgcG9ydCBpcyBxdWl0ZSBlYXN5LCBqdXN0IGEgbWF0dGVyIG9mIGRlZmluaW5nIGEgZmV3IG1hY3Jvcw0KYWNjb3JkaW5nIHRvIHlvdXIgc3BlY2lmaWMgTUNVLiBTZWUgdHJjSGFyZHdhcmVQb3J0LmggZm9yIGZ1cnRoZXIgaW5mb3JtYXRpb24uDQoNCkluIGNhc2UgeW91IGhhdmUgYW55IHF1ZXN0aW9ucywgZG8gbm90IGhlc2l0YXRlIHRvIGNvbnRhY3Qgc3VwcG9ydEBwZXJjZXBpby5jb20NCg0KUGVyY2VwaW8gQUINCkv2cG1hbmdhdGFuIDFBDQo3MjIxNSBW5HN0ZXLlcw0KU3dlZGVuDQoNCnd3dy5wZXJjZXBpby5jb20=