MjAwOC0wMy0yNyAxMzoyNyAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLnR4dDogRU5IOiBjaGVjayBpbiBuZXcgY2hhbmdlIGxvZyBmb3IgMi42CgoyMDA4LTAzLTI3IDExOjE2ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DUGFjay5jbWFrZSwKCSAgU291cmNlL2NtSW5zdGFsbENvbW1hbmRBcmd1bWVudHMuY3h4LCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6CgkgIG1lcmdlIGluIGZyb20gbWFpbiB0cmVlCgoyMDA4LTAzLTI2IDIzOjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMjYgMjI6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogY2xlYW4gdXAgYW5ub3lpbmcgb3V0cHV0IGZyb20gcmMgdG9vbCBpbgoJICBWUzkKCjIwMDgtMDMtMjYgMjA6MTIgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2U6IEVOSDogdXNlIENQQUNLX1BBQ0tBR0VfVkVSU0lPTiBpbnN0ZWFkIG9mCgkgIENQQUNLX1BBQ0tBR0VfVkVSU0lPTl9NQUpPUi5DUEFDS19QQUNLQUdFX1ZFUlNJT05fTUlOT1IuQ1BBQ0tfUEFDS0FHRV9WRVJTSU9OX1BBVENICgkgIGZvciBjcmVhdGluZyB0aGUgcGFja2FnZSBmaWxlIG5hbWUKCgkgIEFsZXgKCjIwMDgtMDMtMjYgMTg6MzAgIGFsZXgKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kQXJndW1lbnRzLmN4eDogQlVHOiBmaXggdGhlIGRlZmF1bHQKCSAgIlVuc3BlY2lmaWVkIiBjb21wb25lbnQgd2hlbiBvbmx5IHRoZSBnZW5lcmljIChpLmUuIG5vdCBSVU5USU1FLAoJICBBUkNISVZFLCBMSUJSQVJZLCBldGMuKSBhcmd1bWVudHMgYXJlIGdpdmVuLgoKCSAgSWYgdGhlIGNvbXBvbmVudCBvZiBhIHBhcnQgb2YgYSB0YXJnZXQgaXMgcXVlcmllZCwgcmV0dXJuIHRoZQoJICBzcGVjaWZpYyBvbmUsIGlmIGEgc3BlY2lmaWMgb25lIGhhc24ndCBiZWVuIHNldCwgcmV0dXJuIHRoZQoJICBnZW5lcmljIG9uZSwgaWYgdGhhdCBoYXNuJ3QgYmVlbiBzZXQsIHJldHVybiAiVW5zcGVjaWZpZWQiLgoKCSAgQWxleAoKMjAwOC0wMy0yNiAxNTo1NSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiB2MjBuMTdfYWl4X3JlbGVhc2UuY21ha2UsCgkgIHZvZ29uX3JlbGVhc2VfcXQuY21ha2U6IEVOSDoKCjIwMDgtMDMtMjYgMTQ6MDggIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NNYWtlSmF2YUluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTdWJ2ZXJzaW9uLmNtYWtlLCBTb3VyY2UvY21Db3JlVHJ5Q29tcGlsZS5jeHg6IEVOSDoKCSAgbWVyZ2UgaW4gZnJvbSBtYWluIHRyZWUKCjIwMDgtMDMtMjYgMTM6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvcmVUcnlDb21waWxlLmN4eDogRU5IOiBtYWtlIHN1cmUgbnVtQXR0ZW1wdHMgaXMKCSAgaW5jcmVtZW50ZWQKCjIwMDgtMDMtMjYgMTM6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvcmVUcnlDb21waWxlLmN4eDogRU5IOiB0cnkgdG8gZml4IGRhc2hib2FyZCBpc3N1ZSB3aXRoCgkgIG5vdCBiZWluZyBhYmxlIHRvIHJlbW92ZSB0cnkgY29tcGlsZSBjb2RlCgoyMDA4LTAzLTI1IDIzOjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMjUgMTk6NTggIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBUZXN0cy9Bc3NlbWJsZXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1aWxkRGVwZW5kcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQnVuZGxlVGVzdC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ09ubHkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NUZXN0VGVzdC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ1Rlc3RUZXN0Mi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db252TGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdENvbURlcGVuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZFdvcmtpbmdEaXJlY3RvcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0RvY1Rlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0V4cG9ydEltcG9ydC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0V4cG9ydC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0ltcG9ydC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRXh0ZXJuYWxPQkovQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0V4dGVybmFsT0JKL09iamVjdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Gb3J0cmFuL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9GcmFtZXdvcmsvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0Z1bmN0aW9uVGVzdC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvSmF2YS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvSnVtcC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9NYWNyb1Rlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL01ha2VDbGVhbi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTWF0aFRlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL05ld2xpbmVBcmdzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvUGx1Z2luL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvUHJvcGVydGllcy9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvUmV0dXJuVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvUnVudGltZVBhdGgvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NhbWVOYW1lL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TZXRMYW5nL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9TaW1wbGVFeGNsdWRlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NvdXJjZUdyb3Vwcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1N1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3ViRGlyL0V4YW1wbGVzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdWJEaXIvRXhhbXBsZXMvZXhhbXBsZTEvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N1YkRpclNwYWNlcy9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU3ViRGlyU3BhY2VzL1NvbWUKCSAgRXhhbXBsZXMvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1N1YkRpclNwYWNlcy9Tb21lCgkgIEV4YW1wbGVzL2V4YW1wbGUxL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdWJQcm9qZWN0L0NNYWtlTGlzdHMudHh0LCBUZXN0cy9Td2lnVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RhclRlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1RhcmdldE5hbWUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1Rlc3REcml2ZXIvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1Rlc3RpbmcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAxL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVHV0b3JpYWwvU3RlcDMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVHV0b3JpYWwvU3RlcDYvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA3L0NNYWtlTGlzdHMudHh0LCBUZXN0cy9Vc2VXWC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9YMTEvQ01ha2VMaXN0cy50eHQ6IEVOSDoKCSAgbWVyZ2UgaW4gZnJvbSBtYWluIHRyZWUKCjIwMDgtMDMtMjUgMTQ6MzcgIG1hcnRpbmsKCgkqIFRlc3RzL0V4dGVybmFsT0JKL0NNYWtlTGlzdHMudHh0OiBCVUc6IG1ha2UgdGVzdCBtb3JlIHJvYnVzdAoKMjAwOC0wMy0yNSAxNDoxNSAgbWFydGluawoKCSogVGVzdHMvRXh0ZXJuYWxPQkovQ01ha2VMaXN0cy50eHQ6IEJVRzogYWRkIGRlYnVnZ2luZyBpbnRvIHRvCgkgIGNoZWNrIG91dCBhIHByb2JsZW0KCjIwMDgtMDMtMjUgMTE6MjYgIG1hcnRpbmsKCgkqIFRlc3RzLzogQXNzZW1ibGVyL0NNYWtlTGlzdHMudHh0LCBCdWlsZERlcGVuZHMvQ01ha2VMaXN0cy50eHQsCgkgIEJ1bmRsZVRlc3QvQ01ha2VMaXN0cy50eHQsIENPbmx5L0NNYWtlTGlzdHMudHh0LAoJICBDVGVzdFRlc3QvQ01ha2VMaXN0cy50eHQsIENUZXN0VGVzdDIvQ01ha2VMaXN0cy50eHQsCgkgIENvbW1hbmRMaW5lVGVzdC9DTWFrZUxpc3RzLnR4dCwgQ29udkxpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIEN1c3RDb21EZXBlbmQvQ01ha2VMaXN0cy50eHQsIEN1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIEN1c3RvbUNvbW1hbmRXb3JraW5nRGlyZWN0b3J5L0NNYWtlTGlzdHMudHh0LAoJICBEZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0LCBEb2NUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBFeHBvcnRJbXBvcnQvQ01ha2VMaXN0cy50eHQsIEV4cG9ydEltcG9ydC9FeHBvcnQvQ01ha2VMaXN0cy50eHQsCgkgIEV4cG9ydEltcG9ydC9JbXBvcnQvQ01ha2VMaXN0cy50eHQsIEV4dGVybmFsT0JKL0NNYWtlTGlzdHMudHh0LAoJICBFeHRlcm5hbE9CSi9PYmplY3QvQ01ha2VMaXN0cy50eHQsCgkgIEZpbmRQYWNrYWdlVGVzdC9DTWFrZUxpc3RzLnR4dCwgRm9ydHJhbi9DTWFrZUxpc3RzLnR4dCwKCSAgRnJhbWV3b3JrL0NNYWtlTGlzdHMudHh0LCBGdW5jdGlvblRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIEphdmEvQ01ha2VMaXN0cy50eHQsIEp1bXAvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LCBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9DTWFrZUxpc3RzLnR4dCwKCSAgTWFjcm9UZXN0L0NNYWtlTGlzdHMudHh0LCBNYWtlQ2xlYW4vQ01ha2VMaXN0cy50eHQsCgkgIE1hdGhUZXN0L0NNYWtlTGlzdHMudHh0LCBOZXdsaW5lQXJncy9DTWFrZUxpc3RzLnR4dCwKCSAgT3V0T2ZTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFBsdWdpbi9DTWFrZUxpc3RzLnR4dCwKCSAgUHJlY29tcGlsZWRIZWFkZXIvQ01ha2VMaXN0cy50eHQsIFByb3BlcnRpZXMvQ01ha2VMaXN0cy50eHQsCgkgIFJldHVyblRlc3QvQ01ha2VMaXN0cy50eHQsIFJ1bnRpbWVQYXRoL0NNYWtlTGlzdHMudHh0LAoJICBTYW1lTmFtZS9DTWFrZUxpc3RzLnR4dCwgU2V0TGFuZy9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlRXhjbHVkZS9DTWFrZUxpc3RzLnR4dCwgU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0LCBTb3VyY2VHcm91cHMvQ01ha2VMaXN0cy50eHQsCgkgIFN0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0LCBTdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFN1YkRpci9FeGFtcGxlcy9DTWFrZUxpc3RzLnR4dCwKCSAgU3ViRGlyL0V4YW1wbGVzL2V4YW1wbGUxL0NNYWtlTGlzdHMudHh0LAoJICBTdWJEaXJTcGFjZXMvQ01ha2VMaXN0cy50eHQsIFN1YkRpclNwYWNlcy9Tb21lCgkgIEV4YW1wbGVzL0NNYWtlTGlzdHMudHh0LCBTdWJEaXJTcGFjZXMvU29tZQoJICBFeGFtcGxlcy9leGFtcGxlMS9DTWFrZUxpc3RzLnR4dCwgU3ViUHJvamVjdC9DTWFrZUxpc3RzLnR4dCwKCSAgU3dpZ1Rlc3QvQ01ha2VMaXN0cy50eHQsIFN5c3RlbUluZm9ybWF0aW9uL0NNYWtlTGlzdHMudHh0LAoJICBUYXJUZXN0L0NNYWtlTGlzdHMudHh0LCBUYXJnZXROYW1lL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0RHJpdmVyL0NNYWtlTGlzdHMudHh0LCBUZXN0aW5nL0NNYWtlTGlzdHMudHh0LAoJICBUcnlDb21waWxlL0NNYWtlTGlzdHMudHh0LCBUdXRvcmlhbC9TdGVwMS9DTWFrZUxpc3RzLnR4dCwKCSAgVHV0b3JpYWwvU3RlcDIvQ01ha2VMaXN0cy50eHQsIFR1dG9yaWFsL1N0ZXAzL0NNYWtlTGlzdHMudHh0LAoJICBUdXRvcmlhbC9TdGVwNC9DTWFrZUxpc3RzLnR4dCwgVHV0b3JpYWwvU3RlcDUvQ01ha2VMaXN0cy50eHQsCgkgIFR1dG9yaWFsL1N0ZXA2L0NNYWtlTGlzdHMudHh0LCBUdXRvcmlhbC9TdGVwNy9DTWFrZUxpc3RzLnR4dCwKCSAgVXNlV1gvQ01ha2VMaXN0cy50eHQsIFZTRXh0ZXJuYWxJbmNsdWRlL0NNYWtlTGlzdHMudHh0LAoJICBXcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwgWDExL0NNYWtlTGlzdHMudHh0OiBFTkg6IHByZWNsZWFuIHNvbWUKCSAgd2FybmluZ3MKCjIwMDgtMDMtMjUgMTA6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZml4IGZvciB3YXRjb20KCSAgY2FuJ3QgdXNlIHBob255CgoyMDA4LTAzLTI0IDIzOjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMjQgMTg6MjMgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0ZpbmRCTEFTLmNtYWtlLCBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRMQVBBQ0suY21ha2UsIE1vZHVsZXMvRmluZE1QSS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLCBNb2R1bGVzL0ZpbmRTdWJ2ZXJzaW9uLmNtYWtlLAoJICBTb3VyY2UvY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsCgkgIFNvdXJjZS9jbUNNYWtlUG9saWN5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LCBTb3VyY2UvY21Db3JlVHJ5Q29tcGlsZS5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LCBTb3VyY2UvY21JZkNvbW1hbmQuaCwKCSAgU291cmNlL2NtTGlzdEZpbGVDYWNoZS5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIFNvdXJjZS9jbVBvbGljaWVzLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2NtYWtlLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9QcmVwcm9jZXNzL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1lcmdlIGluIGZyb20gQ1ZTCgoyMDA4LTAzLTI0IDE1OjQxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRNUEkuY21ha2U6IEVOSDogcmVtb3ZlIHVzZSBvZiB1bmRlZmluZWQgY2RyCgoyMDA4LTAzLTI0IDE1OjQwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogZml4IGlmCgoyMDA4LTAzLTI0IDExOjQ5ICBhbGluLmVsZW5hCgoJKiBNb2R1bGVzLzogRmluZEJMQVMuY21ha2UsIEZpbmRMQVBBQ0suY21ha2U6IEVOSDoKCSAgRmluZEJMQVMuY21ha2UmRmluZExBUEFDSyB1cGRhdGVkIHRvIHN1cHBvcnQgaW50ZWwgbWtsIDEwCgoyMDA4LTAzLTI0IDEwOjU2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmN4eCwgY21DTWFrZVBvbGljeUNvbW1hbmQuY3h4LAoJICBjbVBvbGljaWVzLmN4eDogRU5IOiBDbGVhbnVwIHBvbGljeSB2ZXJzaW9uIGludGVyZmFjZSBwcmVzZW50ZWQKCSAgdG8gdXNlci4KCgkgICAgLSBJbiBjbWFrZV9taW5pbXVtX3JlcXVpcmVkIGRvIG5vdCBzZXQgcG9saWN5IHZlcnNpb24gaWYKCSAgY3VycmVudAoJICAgICAgQ01ha2UgaXMgdG9vIG9sZAoJICAgIC0gSW4gY21Qb2xpY2llczo6QXBwbHlQb2xpY3lWZXJzaW9uIHJlcG9ydCBlcnJvciBpZiB2ZXJzaW9uIGlzCgkgIHRvbwoJICAgICAgbmV3IG9yIGNhbm5vdCBiZSBwYXJzZWQKCjIwMDgtMDMtMjQgMTA6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBhZGQgUEhPTlkgdGFyZ2V0cwoKMjAwOC0wMy0yMyAyMzo1OCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTIyIDIzOjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMjIgMTA6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtYWtlLmgsIGNtYWtlLmN4eDogRU5IOiBtYWtlIHN1cmUgLVduby1kZXYgc3RpY2tzIHNvCgkgIG1ha2UgcmVidWlsZF9jYWNoZSB3aWxsIHdvcmsKCjIwMDgtMDMtMjEgMjM6NTggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0yMCAyMzo1OSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTIwIDIxOjExICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uaCwgY21Qb2xpY2llcy5jeHg6IEVOSDogWWV0IGFub3RoZXIKCSAgYXR0ZW1wdCBhdCB3YXJuaW5nIGZvciBDTVAwMDAzLgoKCSAgICAtIEdpdmUgZXhhbXBsZSBjb2RlIHRvIGF2b2lkIHRoZSB3YXJuaW5nCgkgICAgLSBNYWtlIGV4cGxhbmF0aW9uIG1vcmUgY29uc2lzZQoJICAgIC0gRXhwbGljaXRseSBzdGF0ZSB0aGlzIGlzIGZvciBjb21wYXRpYmlsaXR5CgkgICAgLSBJc3N1ZSB0aGUgd2FybmluZyBmb3IgYXQgbW9zdCBvbmUgdGFyZ2V0CgoyMDA4LTAzLTIwIDE4OjI1ICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LCBTb3VyY2UvY21JZkNvbW1hbmQuaCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkICJpZihQT0xJQ1kKCSAgcG9saWN5LWlkKSIgb3B0aW9uIGZvciBJRiBjb21tYW5kLgoKCSAgICAtIFRoaXMgd2lsbCBoZWxwIHByb2plY3RzIHN1cHBvcnQgbXVsdGlwbGUgQ01ha2UgdmVyc2lvbnMuCgkgICAgLSBJbiBvcmRlciB0byBzZXQgYSBwb2xpY3kgd2hlbiB1c2luZyBhIG5ld2VyIENNYWtlIGJ1dCBzdGlsbAoJICAgICAgd29ya2luZyB3aXRoIGFuIG9sZGVyIENNYWtlIG9uZSBtYXkgd3JpdGUKCQlpZihQT0xJQ1kgQ01QMTIzNCkKCQkgIGNtYWtlX3BvbGljeShTRVQgQ01QMTIzNCBORVcpCgkJZW5kaWYoUE9MSUNZIENNUDEyMzQpCgkgICAgLSBOb3RlIHRoYXQgc2luY2UgQ01ha2UgMi40IGRvZXMgbm90IGhhdmUgaWYoUE9MSUNZKSBzdXBwb3J0aW5nCgkgICAgICBpdCB3aWxsIGFsc28gcmVxdWlyZSB1c2luZyAiaWYoQ09NTUFORCBjbWFrZV9wb2xpY3kpIgoKMjAwOC0wMy0yMCAxODoyNSAga2luZwoKCSogVGVzdHMvOiBNYWtlQ2xlYW4vVG9DbGVhbi9DTWFrZUxpc3RzLnR4dCwKCSAgUHJlcHJvY2Vzcy9DTWFrZUxpc3RzLnR4dDogQlVHOiBDb252ZXJ0IGNtYWtlX3BvbGljeShWRVJTSU9OKSB0bwoJICBjbWFrZV9taW5pbXVtX3JlcXVpcmVkKFZFUlNJT04pIGluCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0IGFuZAoJICBUZXN0cy9QcmVwcm9jZXNzL0NNYWtlTGlzdHMudHh0LiAgQ01QMDAwMCBub3cgcmVxdWlyZXMgdGhlCgkgIGNtYWtlX21pbmltdW1fcmVxdWlyZWQgY29tbWFuZC4KCjIwMDgtMDMtMjAgMTE6NDQgIGRhdmlkLmNvbGUKCgkqIE1vZHVsZXMvRmluZFN1YnZlcnNpb24uY21ha2U6IEJVRzogUmVtb3ZlIHJlZmVyZW5jZSB0bwoJICBQUk9KRUNUX1NPVVJDRV9ESVIgc28gdGhhdCB0aGUgU3VidmVyc2lvbl9XQ19JTkZPIG1hY3JvIG1heSBiZQoJICBjYWxsZWQgZnJvbSBhIGN0ZXN0IG9yIGNtYWtlIHNjcmlwdC4KCjIwMDgtMDMtMjAgMTA6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4OiBFTkg6IHRpbnkgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQKCjIwMDgtMDMtMjAgMTA6NDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4OiBFTkg6IHNtYWxsIHNpbXBsZSBwcm9qZWN0cyBkbyBub3QKCSAgbmVlZCB0byBzcGVjaWZ5IGNtYWtlIG1pbmltdW0gcmVxdWlyZWQKCjIwMDgtMDMtMjAgMTA6MTEgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogQ2xhcmlmeSBlbmQgb2YgKGRldikgd2FybmluZ3MgdG8KCSAgZXhwbGljaXRseSBzdGF0ZSB0aGV5IGFyZSBtZWFudCBmb3IgcHJvamVjdCBkZXZlbG9wZXJzLgoKMjAwOC0wMy0xOSAyMzo1OSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTE5IDE2OjE0ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEJVRzoJRml4IGlzc3VlIHdoZW4gUXQgZnJvbSBMaW51eCBkaXN0cm8gaXMgdXNlZAkgIGFuZCBnbGliCgkgIGFuZCBkYnVzIGRldmVsb3BtZW50IHBhY2thZ2VzIGFyZW4ndCBpbnN0YWxsZWQuCgoyMDA4LTAzLTE5IDE1OjQ0ICBraW5nCgoJKiBTb3VyY2UvY21Db3JlVHJ5Q29tcGlsZS5jeHg6IEJVRzogQ2hhbmdlIGdlbmVyYXRlZCB0cnktY29tcGlsZQoJICBwcm9qZWN0cyB0byB1c2UgY21ha2VfbWluaW11bV9yZXF1aXJlZCBpbnN0ZWFkIG9mIGNtYWtlX3BvbGljeSB0bwoJICBzZXQgdGhlIHZlcnNpb24gbm93IHRoYXQgQ01QMDAwMCByZXF1aXJlcyBpdC4KCjIwMDgtMDMtMTkgMTU6MjcgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQlVHOiAgRG9uJ3QgY2xlYXIgb3V0cHV0IHN0cmluZ3MgYmVmb3JlCgkgIHVzaW5nLgoKMjAwOC0wMy0xOSAxNToxOCAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUNhY2hlLmN4eCwgY21Qb2xpY2llcy5jeHg6IEVOSDogSW1wcm92ZQoJICB3YXJuaW5nIGFib3V0IHNwZWNpZnlpbmcgYSBjbWFrZSB2ZXJzaW9uCgoJICAgIC0gVXBkYXRlIHBvbGljeSBDTVAwMDAwIHRvIHJlcXVpcmUgdXNlIG9mIHRoZSBjb21tYW5kCgkgICAgICBjbWFrZV9taW5pbXVtX3JlcXVpcmVkIGFuZCBub3QgY21ha2VfcG9saWN5CgkgICAgICBzbyB0aGVyZSBpcyBvbmx5IG9uZSB3YXkgdG8gYXZvaWQgaXQuCgkgICAgLSBFeHBsaWNpdGx5IHNwZWNpZnkgdGhlIGxpbmUgdXNlcnMgc2hvdWxkIGFkZC4KCSAgICAtIFJlZmVyZW5jZSBwb2xpY3kgQ01QMDAwMCBvbmx5IGF0IHRoZSBlbmQuCgkgICAgLSBGaXggcG9saWN5IENNUDAwMDAgZG9jdW1lbnRhdGlvbiB0byBub3Qgc3VnZ2VzdAoJICAgICAgdXNlIG9mIHRoZSBjbWFrZV9wb2xpY3kgY29tbWFuZC4KCjIwMDgtMDMtMTkgMTQ6MzIgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4OiBFTkg6IENsYXJpZnkgd2FybmluZyBmb3IKCSAgcG9saWN5IENNUDAwMDMgZnVydGhlci4KCjIwMDgtMDMtMTkgMTE6MTggIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogQlVHOiBNaXNzaW5nIGEgbGlua2VyCgkgIGNyYXNoZWQgZXJyb3IgbWF0Y2hpbmcgc3RyaW5nLgoKMjAwOC0wMy0xOSAwOToxNCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHg6IEVOSDogZG8gbm90IHdhcm4gYWJvdXQKCSAgZnJhbWV3b3JrcyBhcyB0aGV5IGFyZSBub3QgYWZmZWN0ZWQgYnkgLUwgYW55d2F5CgoyMDA4LTAzLTE4IDIzOjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMTggMjE6MjIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGZvcmdvdCB0byBjaGVjayB0aGlzIGluLCBuZWVkIHRvIGNoYW5nZSB0aGUKCSAgdmVyc2lvbiBpbiBDVlMKCjIwMDgtMDMtMTggMTg6MzcgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZToKCSAgU1RZTEU6ICBJbXByb3ZlIGRvY3VtZW50YXRpb24gYnkgZXhwYW5kaW5nIG9uIGhvdyBVc2VRdDQuY21ha2UKCSAgZml0cyBpbi4KCjIwMDgtMDMtMTggMTc6NTQgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogU1RZTEU6IGZpeCBkb2N1bWVudGF0aW9uIGFnYWluOgoJICBRVF9MSUJSQVJJRVMgZXhpc3RzIGlmIHlvdSB1c2UgUXQ0IHZpYSBVc2VRdDQuY21ha2UKCgkgIEFsZXgKCjIwMDgtMDMtMTggMTc6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsCgkgIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oOiBFTkg6IHRyeSB0byByZWR1Y2UgdGhlIG51bWJlciBvZgoJICBDTVAwMDAzIHdhcm5pbmdzIHRoYXQgcGVvcGxlIHNlZS4gIE9ubHkgcmVwb3J0IHRoZW0gZm9yIHVuaXF1ZQoJICBzZXRzIG9mIGxpYnJhcmllcyB3aXRoIG5vIGZ1bGwgcGF0aC4JQWxzbyBhZGQgYSBtZXNzYWdlCgkgIGV4cGxhaW5pbmcgdGhlIGNvdXJzZSBvZiBhY3Rpb24gdGhhdCBzaG91bGQgYmUgdGFrZW4KCjIwMDgtMDMtMTggMTc6MjYgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogU1RZTEU6IGZpeCBkb2N1bWVudGF0aW9uLCBRVF9MSUJSQVJJRVMKCSAgZG9lc24ndCBleGlzdCwgYW5kIGFsc28gZGlkbid0IGV4aXN0IGluIGNtYWtlIDIuNC4zLCB0aGUgZmlyc3QKCSAgc3RhYmxlIGNtYWtlIDIuNC54IHJlbGVhc2UKCgkgIEFsZXgKCjIwMDgtMDMtMTggMTY6MzAgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZToKCSAgRU5IOglTYXRpc2Z5IFF0REJ1cyBkZXBlbmRlbmNpZXMgZm9yIGJ1aWxkcyB3aXRoIHN0YXRpYyBRdC4KCSAgRmluaXNoIGZpeCBmb3IgIzY2MDcuCgoyMDA4LTAzLTE4IDExOjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGV4Y2x1ZGUgYm9ybGFuZAoJICBtYWtlIGFzIHdlbGwKCjIwMDgtMDMtMTggMTE6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogdHVybiBvZmYgZXh0cmEKCSAgcnVsZXMgZm9yIG5tYWtlIGFuZCB3bWFrZQoKMjAwOC0wMy0xOCAxMToxMSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogc2V0IHRoZSB2ZXJzaW9uIG9uIDIuNgoKMjAwOC0wMy0xOCAxMDoyMyAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ1Rlc3QuY21ha2UsIE1vZHVsZXMvRmluZEtERTQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBhY2thZ2VIYW5kbGVTdGFuZGFyZEFyZ3MuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBhY2thZ2VNZXNzYWdlLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFgxMS5jbWFrZSwgTW9kdWxlcy9Vc2VRdDQuY21ha2UsCgkgIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1HTlUtRm9ydHJhbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1pZm9ydC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21DTWFrZU1pbmltdW1SZXF1aXJlZC5oLCBTb3VyY2UvY21DTWFrZVBvbGljeUNvbW1hbmQuaCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtEZXBlbmRzLmN4eCwgU291cmNlL2NtQ29tcHV0ZUxpbmtEZXBlbmRzLmgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eCwgU291cmNlL2NtRXhwb3J0RmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21Qb2xpY2llcy5jeHgsIFNvdXJjZS9jbVBvbGljaWVzLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cC5jeHgsCgkgIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eCwKCSAgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LCBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2UsCgkgIFV0aWxpdGllcy9jbWN1cmwvQ01ha2VMaXN0cy50eHQ6IEVOSDogbW92ZSBoZWFkIHRvIGJyYW5jaAoKMjAwOC0wMy0xOCAxMDowMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiB0cnkgdG8gaW1wcm92ZQoJICBtYWtlIHNwZWVkIGJ5IGdldHRpbmcgcmlkIG9mIHNvbWUgaW1wbGljaXQgcnVsZXMgdGhhdCB3ZXJlIHN0aWxsCgkgIGFyb3VuZC4KCjIwMDgtMDMtMTcgMjM6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0xNyAyMDozMCAga2luZwoKCSogU291cmNlL2NtQ01ha2VQb2xpY3lDb21tYW5kLmg6IEVOSDogSW1wcm92ZSBkb2N1bWVudGF0aW9uIG9mCgkgIGNtYWtlX3BvbGljeSBjb21tYW5kLgoKCSAgICAtIEFkZCBhIHBhcmFncmFwaCBpbnRyb2R1Y2luZyB0aGUgcG9saWN5IG1lY2hhbmlzbQoJICAgIC0gRXhwbGljaXRseSBpbnRyb2R1Y2UgdGhlIENNUDxOTk5OPiwgT0xELCBhbmQgTkVXIG5vdGF0aW9uCgkgICAgLSBOb3RlIHRoYXQgc2V0dGluZyBwb2xpY2llcyBieSBDTWFrZSB2ZXJzaW9uIGlzIHByZWZlcnJlZAoJICAgIC0gRml4IFNFVCBzaWduYXR1cmUgdG8gdXNlIENNUDxOTk5OPiBub3RhdGlvbgoJICAgIC0gQWRkIG1vcmUgZGV0YWlscyBhYm91dCB0aGUgcG9saWN5IHN0YWNrCgoyMDA4LTAzLTE3IDE2OjIyICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBFTkg6IFNldCBDTWFrZSBQb2xpY3kgQ01QMDAwMyB0bwoJICBORVcgYmVoYXZpb3IgdG8gYnVpbGQgd2l0aG91dCB3YXJuaW5ncyB3aXRoIHRoZSB1cGNvbWluZyBDTWFrZQoJICAyLjYgcmVsZWFzZS4KCjIwMDgtMDMtMTcgMTQ6NTMgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZToKCSAgRU5IOglGb3IgTWFjIE9TIFgsIHJlbW92ZSBRdWlja1RpbWUgbGluayBmb3IgUXQgNC4zKyBhbmQgYWRkCgkgIEFwcEtpdCBsaW5rIGZvciBRdCA0LjIrLgoKMjAwOC0wMy0xNyAxMToxMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUGFja2FnZU1lc3NhZ2UuY21ha2U6IGZpbGUgRmluZFBhY2thZ2VNZXNzYWdlLmNtYWtlCgkgIHdhcyBhZGRlZCBvbiBicmFuY2ggQ01ha2UtMi02IG9uIDIwMDgtMDMtMTggMTQ6MjM6NTIgKzAwMDAKCjIwMDgtMDMtMTcgMTE6MTAgIGtpbmcKCgkqIE1vZHVsZXMvOiBGaW5kUGFja2FnZUhhbmRsZVN0YW5kYXJkQXJncy5jbWFrZSwKCSAgRmluZFBhY2thZ2VNZXNzYWdlLmNtYWtlLCBGaW5kUXQ0LmNtYWtlLCBGaW5kWDExLmNtYWtlOiBFTkg6CgkgIEFkZGVkIEZpbmRQYWNrYWdlTWVzc2FnZSBtb2R1bGUKCgkgICAgLSBEZWZpbmVzIEZJTkRfUEFDS0FHRV9NRVNTQUdFIGZ1bmN0aW9uIHRvIGhlbHAgZGlzcGxheQoJICAgICAgZmluZCByZXN1bHQgbWVzc2FnZXMgb25seSBvbmNlCgkgICAgLSBBZGRlZCB1c2Ugb2YgaXQgdG8gRmluZFBhY2thZ2VIYW5kbGVTdGFuZGFyZEFyZ3MKCSAgICAtIEFkZGVkIHVzZSBvZiBpdCB0byBGaW5kUXQ0LCBhbmQgRmluZFgxMQoJICAgIC0gVGhpcyBjbGVhbnMgdXAgcmVwZWF0ZWQgbWVzc2FnZXMgaW4gYmlnIHByb2plY3RzCgoyMDA4LTAzLTE3IDExOjEwICBraW5nCgoJKiBNb2R1bGVzL0NUZXN0LmNtYWtlOiBFTkg6IEF2b2lkIHByaW50aW5nIG1lc3NhZ2UgYWJvdXQgdW5rbm93bgoJICByZXBvc2l0b3J5IHR5cGUgcmVwZWF0ZWRseSBpbiBDVGVzdC4KCjIwMDgtMDMtMTcgMDg6NTUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBMaW51eC1HTlUtRm9ydHJhbi5jbWFrZSwgTGludXgtaWZvcnQuY21ha2U6CgkgIEVOSDogUGF0Y2ggZnJvbSBNYWlrIHRvIGFkZCBwZXItY29uZmlndXJhdGlvbiBkZWZhdWx0IGZsYWdzIHRvCgkgIEdDQyBhbmQgSW50ZWwgRm9ydHJhbiBjb21waWxlcnMgb24gTGludXguCgoyMDA4LTAzLTE2IDIzOjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMTUgMjM6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0xNSAyMDoxMCAgZGF2aWQuY29sZQoKCSogTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZTogQlVHOiBHbyBiYWNrIHRvIHVzaW5nICIuIiBzbwoJICB0aGUgSmF2YSB0ZXN0IHBhc3NlcyBvbiB0aGUgbmlnaHRseSBubWFrZSBkYXNoYm9hcmRzIGFnYWluLiBTdGlsbAoJICBuZWVkIGEgc29sdXRpb24gdGhhdCB3b3JrcyB3aXRoIGJvdGggbm1ha2UgYW5kIFZpc3VhbCBTdHVkaW8KCSAgYnVpbGRzLgoKMjAwOC0wMy0xNSAxMDowMCAga2luZwoKCSogU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHg6IENPTVA6IEZpeCB1bnJlYWNoYWJsZSBjb2RlCgkgIHdhcm5pbmcgZm9yIGJyZWFrIGFmdGVyIHJldHVybiBpbiBzd2l0Y2ggaW4gQ01QMDAwMyBpbXBsLgoKMjAwOC0wMy0xNSAxMDowMCAga2luZwoKCSogU291cmNlLzogY21UYXJnZXQuY3h4LCBjbVNvdXJjZUZpbGVMb2NhdGlvbi5jeHg6IFNUWUxFOiBGaXgKCSAgbGluZS10b28tbG9uZyBmb3IgbmV3IElOVEVSTkFMX0VSUk9SIG1lc3NhZ2VzLgoKMjAwOC0wMy0xNCAyMzo1OSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTE0IDE4OjE2ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlOiBFTkg6IHByZXBhcmF0aW9ucyBmb3IgY3Jvc3MgY29tcGlsaW5nCgkgIEtERTQKCgkgIEFsZXgKCjIwMDgtMDMtMTQgMTY6MzkgIGJhcnJlCgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5jeHg6IFNUWUxFOiB5ZWFoIHllYWguCgoyMDA4LTAzLTE0IDE1OjE4ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cC5jeHg6CgkgIEVOSDoJUHJldmVudCBsb2FkaW5nIHN0YW5kYXJkIHF0IHBsdWdpbnMgYXQgcnVudGltZSAod2hpY2ggd2UKCSAgZG9udCcgY2FyZSBhYm91dCkuCSAgICBUaGlzIGNhbiBjYXVzZSBwcm9ibGVtcyBpZiBhIE1hYyBidW5kbGUKCSAgZG9lc24ndCBjb250YWluIHRoZSBwbHVnaW5zLgoKMjAwOC0wMy0xNCAxNDoyOCAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6ICBGaXggdHlwbyB0byBmaW5kIFFBc3Npc3RhbnRDbGllbnQKCSAgaGVhZGVyLgoKMjAwOC0wMy0xNCAxNDoyMSAga2luZwoKCSogU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHg6IEVOSDogSW1wcm92ZSBDTVAwMDAzIHRvCgkgIHByb3ZpZGUgbW9yZSBjb21wYXRpYmlsaXR5CgoJICAgIC0gVGFyZ2V0cyBidWlsdCBpbiB0aGUgdHJlZSBub3cgYWRkIGNvbXBhdGliaWxpdHkgcGF0aHMgdG9vCgkgICAgLSBUaGUgd2FybmluZyBtZXNzYWdlJ3MgZmlyc3QgbGlzdCBpbmNsdWRlcyBhdCBtb3N0IG9uZSBpdGVtCgkgICAgICBmb3IgZWFjaCB1bmlxdWUgY29tcGF0aWJpbGl0eSBwYXRoCgkgICAgLSBDbGFyaWZpZWQgZXJyb3IgbWVzc2FnZSBmdXJ0aGVyCgoyMDA4LTAzLTE0IDEzOjI5ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEVOSDoJU2F0aXNmeSBRdE5ldHdvcmsgYW5kIFF0T3BlbkdMIGRlcGVuZGVuY2llcyBmb3IgYnVpbGRzIHdpdGgKCSAgc3RhdGljIFF0LgkgICAgUGFydGlhbCBmaXggZm9yICM2NjA3LgoKMjAwOC0wMy0xNCAxMzoxNiAgY2xpbnRvbgoKCSogTW9kdWxlcy86IEZpbmRRdDQuY21ha2UsIFVzZVF0NC5jbWFrZToKCSAgRU5IOglBdXRvbWF0aWNhbGx5IGFkZCBkZXBlbmRlbnQgbW9kdWxlcy4JICAgIEZvciBleGFtcGxlLCBpZgoJICBRVF9VU0VfUVRYTUxQQVRURVJOUyBpcyBvbiwgUVRfVVNFX1FUTkVUV09SSyBpcyB0dXJuZWQgb24uCgkgIFRoZSBlcXVpdmFsZW50IGhhcHBlbnMgaW4gYSBxbWFrZSAucHJvIGZpbGUgd2hlbiBRVCArPQoJICB4bWxwYXR0ZXJucyBpcyBzcGVjaWZpZWQuCgoyMDA4LTAzLTE0IDEyOjExICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEVOSDoJU3VwcG9ydCBzdGF0aWMgUXQgNC40IGJ1aWxkcyB1c2luZyBRdEhlbHAgbW9kdWxlLgoKMjAwOC0wMy0xMyAxOToxMiAgY2xpbnRvbgoKCSogTW9kdWxlcy86IEZpbmRRdDQuY21ha2UsIFVzZVF0NC5jbWFrZToKCSAgRU5IOglBZGQgc3VwcG9ydCBmb3IgUXQgNC40J3MgcGhvbm9uIG1vZHVsZS4gICAgICAgIEFkZCBuZXcgUXQKCSAgNC40IG1vZHVsZXMgaW4gVXNlUXQ0LmNtYWtlCgoyMDA4LTAzLTEzIDE3OjM4ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRml4IGltcGwgb2YgQ01QMDAwNSByZWdleCB0byBtYXRjaAoJICB2YWx1ZS1sZXNzIGRlZmluaXRpb25zLgoKMjAwOC0wMy0xMyAxNzozMiAga2luZwoKCSogU291cmNlLzogY21DTWFrZU1pbmltdW1SZXF1aXJlZC5oLCBjbVBvbGljaWVzLmN4eDogRU5IOiBDbGFyaWZ5CgkgIGRvY3VtZW50YXRpb24gb2YgcG9saWN5IENNUDAwMDAgYW5kIGl0cyByZWxhdGlvbnNoaXAgd2l0aAoJICBjbWFrZV9taW5pbXVtX3JlcXVpcmVkLgoKMjAwOC0wMy0xMyAxNzoxMSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtUG9saWNpZXMuY3h4LCBjbVBvbGljaWVzLmg6IEVOSDogQWRkCgkgIHBvbGljeSBDTVAwMDA1IHRvIGRlY2lkZSB3aGV0aGVyIGFkZF9kZWZpbml0aW9ucyBzaG91bGQgZXNjYXBlCgkgIGRlZnMuCgoyMDA4LTAzLTEzIDE3OjA0ICBraW5nCgoJKiBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBBZGQgY21ha2VfcG9saWN5CgkgIHB1c2gvdmVyc2lvbi9wb3AgdG8gaW1wb3J0L2V4cG9ydCBmaWxlcy4KCjIwMDgtMDMtMTMgMTY6NDIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiBmaXggYyBmbGFncyBmb3IgMjAwMyBmcmVlCgkgIGNvbW1hbmQgbGluZSB0b29scwoKMjAwOC0wMy0xMyAxNjozNSAga2luZwoKCSogU291cmNlLzogY21Db21wdXRlTGlua0RlcGVuZHMuY3h4LCBjbUNvbXB1dGVMaW5rRGVwZW5kcy5oLAoJICBjbVBvbGljaWVzLmN4eCwgY21Qb2xpY2llcy5oLCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDogQWRkCgkgIHBvbGljeSBDTVBfMDAwNCB0byByZXF1aXJlIGxpYnJhcnkgbmFtZXMgdG8gaGF2ZSBubyBsZWFkaW5nIG9yCgkgIHRyYWlsaW5nIHdoaXRlc3BhY2UuCVJlcGxhY2UgcHJldmlvdXMgY2hlY2sgb2YKCSAgQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgYWdhaW5zdCB2ZXJzaW9uIDIuNCB3aXRoIHRoZQoJICBwb2xpY3kuCgoyMDA4LTAzLTEzIDE2OjIzICBraW5nCgoJKiBNb2R1bGVzL1ZUS0NvbXBhdGliaWxpdHkuY21ha2UsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eCwgU291cmNlL2NtUG9saWNpZXMuY3h4LAoJICBTb3VyY2UvY21Qb2xpY2llcy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaDogRU5IOgoJICBDb252ZXJ0IENNQUtFX0xJTktfT0xEX1BBVEhTIHRvIHBvbGljeSBDTVAwMDAzLgoKCSAgICAtIFBvbGljeSBpcyBXQVJOIGJ5IGRlZmF1bHQgc28gcHJvamVjdHMgd2lsbCBidWlsZAoJICAgICAgYXMgdGhleSBkaWQgaW4gMi40IHdpdGhvdXQgdXNlciBpbnRlcnZlbnRpb24KCSAgICAtIFJlbW92ZSBDTUFLRV9MSU5LX09MRF9QQVRIUyB2YXJpYWJsZSBzaW5jZSBpdCB3YXMKCSAgICAgIG5ldmVyIGluIGEgcmVsZWFzZSBhbmQgdGhlIHBvbGljeSBzdXBlcmNlZGVzIGl0CgkgICAgLSBSZXBvcnQgdGFyZ2V0IGNyZWF0aW9uIGJhY2t0cmFjZSBpbiB3YXJuaW5nIG1lc3NhZ2UKCSAgICAgIHNpbmNlIHBvbGljeSBzaG91bGQgYmUgc2V0IGJ5IHRoYXQgcG9pbnQKCjIwMDgtMDMtMTMgMTY6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogRU5IOiBtYWtlIG1lbnUgaXRlbSBtYXRjaAoJICAtV25vLWRldiBjb21tYW5kIGxpbmUKCjIwMDgtMDMtMTMgMTY6MTMgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogRU5IOiAgUHJlc2VydmUgd2hpdGUgc3BhY2VzCgkgIHdoZW4gcHJpbnRpbmcgbWVzc2FnZXMuCgoyMDA4LTAzLTEzIDE1OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IG1vdmUgdGhlIGNsZWFyIHRvIGJlZm9yZSB0aGluZ3MgYXJlIGFkZGVkCgkgIHRvIHRoZSBtYXBzCgoyMDA4LTAzLTEzIDE1OjI5ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEVOSDoJQWRkIHN1cHBvcnQgZm9yIG5ldyBtb2R1bGVzIGluIFF0IDQuNC4JRml4ZXMgIzYzMTYuCgkgIFNpbXBsaWZ5IGFuZCBjbGFyaWZ5IHNvbWUgZG9jdW1lbnRhdGlvbi4KCgkgIEJVRzoJRml4IG9yZGVyIG9mIGluY2x1ZGUgcGF0aHMgKGZyb20gS0RFJ3MgRmluZFF0NCkgICAgICAgRml4CgkgIGZpbmQgb2YgRGVzaWduZXIgY29tcG9uZW50cyBkZWJ1ZyBsaWJyYXJ5IG9uIFdpbmRvd3MuCgoyMDA4LTAzLTEzIDE1OjA2ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IE1ha2UgKGRldikgd2FybmluZ3Mgc2hvdyBub3RlIGFib3V0CgkgIC1Xbm8tZGV2IG9wdGlvbi4gIEZpeCAtV2RldiBhbmQgLVduby1kZXYgb3B0aW9ucyB0byBub3QgYmUKCSAgbWlzdGFrZW4gZm9yIHRoZSBzb3VyY2UgZGlyZWN0b3J5IHNwZWNpZmljYXRpb24uCgoyMDA4LTAzLTEzIDE1OjAzICBkYXZpZC5jb2xlCgoJKiBNb2R1bGVzL0NNYWtlSmF2YUluZm9ybWF0aW9uLmNtYWtlOiBDT01QOiBDb25kaXRpb25hbGl6ZSB0aGUgbGFzdAoJICBjaGFuZ2Ugc28gdGhhdCB0aGUgZml4IG9ubHkgYXBwbGllcyB0byBXSU4zMi4gTGVhdmUgaXQgdGhlIHdheSBpdAoJICB3YXMgZWxzZXdoZXJlLCB0aGUgbmV3IHdheSBkb2VzIG5vdCB3b3JrIG9uIHRoZSBNYWMgY29udGludW91cwoJICBkYXNoYm9hcmQuLi4KCjIwMDgtMDMtMTMgMTU6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbVBvbGljaWVzLmN4eDogRU5IOiBSZWR1Y2Ugd2hpdGVzcGFjZSBpbiBwb2xpY3kKCSAgd2FybmluZy9lcnJvciBtZXNzYWdlcy4KCjIwMDgtMDMtMTMgMTQ6MjkgIGRhdmlkLmNvbGUKCgkqIE1vZHVsZXMvQ01ha2VKYXZhSW5mb3JtYXRpb24uY21ha2U6IEJVRzogRml4IHRoZSBKYXZhIHRlc3QgZm9yCgkgIFZpc3VhbCBTdHVkaW8gYnVpbGRzLiBCZWZvcmUgdGhpcywgaXQgaGFkIGJlZW4gdHJ5aW5nIHRvIGluY2x1ZGUKCSAgIkJ1aWxkTG9nLmh0bSIgaW4gdGhlIC5qYXIgZmlsZSBiZWNhdXNlIGl0IHdhcyB1c2luZyAiLiIgYXMgdGhlCgkgIGxpc3Qgb2YgZmlsZXMgdG8gaW5jbHVkZSBpbiB0aGUgLmphciBmaWxlLiBVc2UgIiouY2xhc3MiIGluc3RlYWQKCSAgb2YgIi4iIHRvIHByZXZlbnQgdGhpcyBzaWxsaW5lc3MuCgoyMDA4LTAzLTEzIDE0OjEzICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogSW1wcm92ZSBlcnJvciBtZXNzYWdlIHdoZW4gaW52YWxpZAoJICBwb2xpY3kgaXMgZ2l2ZW4uCgoyMDA4LTAzLTEzIDEzOjUyICBraW5nCgoJKiBTb3VyY2UvY21TZXRDb21tYW5kLmN4eDogRU5IOiBTaW1wbGlmeSBlcnJvciBtZXNzYWdlIGZvciBpbnZhbGlkCgkgIHNldCguLi4gQ0FDSEUpIGNhbGxzIHRvIG1ha2UgaXQgbG9vayBuaWNlciB3aXRoIG5ldyBtZXNzYWdlCgkgIGZvcm1hdC4KCjIwMDgtMDMtMTMgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTGlzdEZpbGVDYWNoZS5oLCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZS5oLCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0LmgsIGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOgoJICBJbXByb3ZlIG5ldyBlcnJvci93YXJuaW5nIG1lc3NhZ2UgZ2VuZXJhdGlvbgoKCSAgICAtIEFkZCBjbUxpc3RGaWxlQmFja3RyYWNlIHRvIHJlY29yZCBzdGFjayB0cmFjZXMKCSAgICAtIE1vdmUgbWFpbiBJc3N1ZU1lc3NhZ2UgbWV0aG9kIHRvIHRoZSBjbWFrZSBjbGFzcyBpbnN0YW5jZQoJICAgICAgKG1ha2UgdGhlIGJhY2t0cmFjZSBhbiBleHBsaWNpdCBhcmd1bWVudCkKCSAgICAtIENoYW5nZSBjbU1ha2VmaWxlOjpJc3N1ZU1lc3NhZ2UgdG8gY29uc3RydWN0IGEgYmFja3RyYWNlCgkgICAgICBhbmQgY2FsbCB0aGUgY21ha2UgaW5zdGFuY2UgdmVyc2lvbgoJICAgIC0gUmVjb3JkIGEgYmFja3RyYWNlIGF0IHRoZSBwb2ludCBhIHRhcmdldCBpcyBjcmVhdGVkCgkgICAgICAodXNlZnVsIGxhdGVyIGZvciBtZXNzYWdlcyBpc3N1ZWQgYnkgZ2VuZXJhdG9ycykKCjIwMDgtMDMtMTMgMTE6MzggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ01ha2VQb2xpY3lDb21tYW5kLmgsIGNtTGlzdEZpbGVDYWNoZS5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21Qb2xpY2llcy5jeHgsCgkgIGNtUG9saWNpZXMuaCwgY21ha2UuY3h4OiBFTkg6IGNoYW5nZSBDTVBfIHRvIENNUAoKMjAwOC0wMy0xMyAxMDo1NiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kR0xVVC5jbWFrZTogQlVHOiBmaXggYnVnIDY1OTQgbG9vayBmb3IgZ2x1dCBpbiBtb3JlCgkgIHBsYWNlcyBvbiB3aW5kb3dzCgoyMDA4LTAzLTEzIDA5OjI4ICBiYXJyZQoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBCVUc6IHRoZSBkaXJlY3RvcnkgdGhlIEZJTEUgRE9XTkxPQUQKCSAgY29tbWFuZCBpcyB3cml0aW5nIHRvIG1pZ2h0IG5vdCBleGlzdC4KCjIwMDgtMDMtMTIgMjM6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0xMiAyMTo1NCAgaG9mZm1hbgoKCSogQ01ha2VDUGFja09wdGlvbnMuY21ha2UuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrQ3lnd2luQmluYXJ5R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tDeWd3aW5Tb3VyY2VHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGNyYXNoIGluIGNwYWNrIHdoZW4KCSAgQ1BBQ0tfQ1lHV0lOX1BBVENIX05VTUJFUiBub3Qgc3BlY2lmaWVkCgoyMDA4LTAzLTEyIDIxOjA2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbVNvdXJjZUZpbGVMb2NhdGlvbi5jeHgsIGNtVGFyZ2V0LmN4eCwgY21ha2UuaDogRU5IOiByZW1vdmUKCSAgYWJvcnQgY2FsbHMgYW5kIHJlcGxhY2Ugd2l0aCBhbiBJc3N1ZU1lc3NhZ2UgSU5URVJBTkxfRVJST1IsCgkgIGJldHRlciB0byBub3QgY3Jhc2ggb24gdGhlIGVuZCB1c2VyLgoKMjAwOC0wMy0xMiAxNzowMiAgaG9mZm1hbgoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IG1ha2Ugc3VyZSBwcm9wZXJ0aWVzIGFyZSByZS1zZXQKCSAgb24gZWFjaCBjb25maWd1cmUKCjIwMDgtMDMtMTIgMTc6MDIgIGJhcnJlCgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmgsCgkgIFRlc3RzL0NNYWtlVGVzdHMvTGlzdFRlc3QuY21ha2UuaW46IEVOSDogYWRkIFJFTU9WRV9EVVBMSUNBVEVTCgkgIHN1YmNvbW1hbmQgdG8gTElTVCBjb21tYW5kIChhbmQgdGVzdCkuIFJlbW92ZSBkdXBsaWNhdGVzIGZyb20gYQoJICBsaXN0IChrZWVwIHRoZSBvcmRlcmluZykKCjIwMDgtMDMtMTIgMTQ6MzcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCBzb21lIGJhZAoJICBjaGFuZ2VzIGluIHByb2dyZXNzIGNhbGMKCjIwMDgtMDMtMTIgMDk6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbgoKMjAwOC0wMy0xMiAwMDowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTExIDIzOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IGZpeCBkdW1iIE1TIHdhcm5pbmcKCSAgYWJvdXQgQk9PTCBhbmQgcGVyZm9ybWFuY2Ugd2l0aCBtb3JlIGNvZGUKCjIwMDgtMDMtMTEgMjI6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogRU5IOiByZW1vdmUgaW9zdHJlYW0sIG5vdAoJICB1c2VkCgoyMDA4LTAzLTExIDIyOjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLnJjLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsCgkgIE1GQ0RpYWxvZy9yZXNvdXJjZS5oLCBRdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eCwKCSAgUXREaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBRdERpYWxvZy9RQ01ha2UuY3h4LAoJICBRdERpYWxvZy9RQ01ha2UuaDogRU5IOiBhZGQgYWJpbGl0eSB0byBzdXBwcmVzcyBkZXYgd2FybmluZ3MgdG8KCSAgZ3VpIGNvZGUKCjIwMDgtMDMtMTEgMTc6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4IHN1YnRsZSBidWcKCSAgdGhhdCBwcmV2ZW50ZWQgTWFrZWZpbGUgZ2VuZXJhdG9ycyBmcm9tIHJlc2Nhbm5pbmcgZGVwZW5kZW5jaWVzCgkgIHdoZW4gYSBuZXcgc291cmNlIGZpbGUgaXMgYWRkZWQgYnV0IG5vIG90aGVyIHNvdXJjZXMgYXJlIHRvdWNoZWQuCgoyMDA4LTAzLTExIDE3OjM3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uaHh4LmluOiBDT01QOiBGaXggc2hhcmVkIGxpYiBidWlsZAoJICBvbiB3aW5kb3dzIGZvciBLV1N5cydzIFN5c3RlbUluZm9ybWF0aW9uIGJ5IGFkZGluZyBleHBvcnQgbWFjcm8uCgoyMDA4LTAzLTExIDE3OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZS5kZXNrdG9wLCBDTWFrZUxpc3RzLnR4dCwgY21ha2VjYWNoZS54bWw6CgkgIEVOSDogYWRkIEtERSBkZXNrdG9wIHN0dWZmCgoyMDA4LTAzLTExIDE3OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogZml4IHdhcm5pbmcgbWVzc2FnZSBhIGJpdAoKMjAwOC0wMy0xMSAxNzoyNSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4LCBjbWFrZS5oOgoJICBCVUc6IEZpeGVzIHRvIFZTOC9WUzkgcHJvamVjdCByZWdlbmVyYXRpb24gcnVsZXMKCgkgICAgLSBaRVJPX0NIRUNLIHNob3VsZCBjaGVjayBhbGwgc3RhbXBzIGluIGNhc2UKCSAgICAgIG9mIHBhcmFsbGVsIGJ1aWxkIChmaXhlcyBjb21wbGV4IHRlc3QgZmFpbHVyZSkKCSAgICAtIFpFUk9fQ0hFQ0sgc2hvdWxkIG5vdCBhcHBlYXIgd2hlbgoJICAgICAgQ01BS0VfU1VQUFJFU1NfUkVHRU5FUkFUSU9OIGlzIG9uIChmaXhlcyBidWcgNjQ5MCkKCjIwMDgtMDMtMTEgMTY6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtYWtlLmgsIGNtYWtlbWFpbi5jeHg6IEVOSDogZml4IC1Xbm8tZGV2IGZvciBjY21ha2UKCjIwMDgtMDMtMTEgMTU6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbWFrZS5jeHgsIGNtYWtlbWFpbi5jeHg6IEVOSDogYWRkIGEgd2F5CgkgIHRvIHN1cHByZXNzIHRoZSBuZXcgcG9saWN5IHdhcm5pbmdzLCBzdGlsbCBuZWVkIGNjbWFrZSBhbmQgZ3VpJ3MKCjIwMDgtMDMtMTEgMTA6NTQgIGJhcnJlCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogYWRkIHNpbXBsZSBmdW5jdGlvbiB0byBjb252ZXJ0IGFsbCBDTWFrZQoJICBjb21tYW5kcyB0byBsb3dlcmNhc2UKCjIwMDgtMDMtMTEgMTA6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtUG9saWNpZXMuY3h4LCBjbWFrZS5oOiBFTkg6IGFkZCBlbnVtIHRvIElzc3VlTWVzc2FnZQoKMjAwOC0wMy0xMSAwMDowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTEwIDE4OjQ4ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRDVlMuY21ha2U6IEVOSDogZm9yIHNvbWUgcmVhc29ucyB0aGVyZSB3YXMgbmV2ZXIgYQoJICBGaW5kQ1ZTIG1vZHVsZT8KCjIwMDgtMDMtMTAgMTU6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBFbmZvcmNlIG1hdGNoaW5nIFBVU0gvUE9QIGNhbGxzIGZvcgoJICBjbWFrZV9wb2xpY3kuCgoyMDA4LTAzLTEwIDE1OjQwICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogQWRkIGRpcmVjdG9yeS1sZXZlbCBjb250ZXh0CgkgIGluZm9ybWF0aW9uIHRvIGVycm9yL3dhcm5pbmcgbWVzc2FnZXMgd2hlbiBubyBjYWxsIHN0YWNrIGlzCgkgIHByZXNlbnQuCgoyMDA4LTAzLTEwIDEzOjI2ICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZEx1YTUwLmNtYWtlLCBGaW5kTHVhNTEuY21ha2U6IEVOSDogdXNlIHRoZSBzdGFuZGFyZAoJICBmaW5kX3BhY2thZ2VfaGFuZGxlX3N0YW5kYXJkX2FyZ3MoKSBmb3IgbHVhIDUuMCBhbmQgNS4xCgoJICBBbGV4CgoyMDA4LTAzLTEwIDA5OjMyICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLmluLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLmluLAoJICBDTWFrZVBsYXRmb3JtSWQuaC5pbjogRU5IOiBNYWtlIGNvbXBpbGVyIGlkIGRldGVjdGlvbiBtb3JlIHJvYnVzdAoKCSAgICAtIFNwbGl0IElORk8gc3RyaW5ncyBpbiBzb3VyY2UgaW50byBtdWx0aXBsZSBwaWVjZXMKCSAgICAgIHRvIG1ha2Ugc3VyZSBhc3NlbWJseSBvciBvdGhlciBsaXN0aW5ncyBwcm9kdWNlZAoJICAgICAgYnkgdGhlIGNvbXBpbGVyIGFyZSBuZXZlciBtYXRjaGVkIGJ5IHRoZSByZWdleAoJICAgIC0gU3RvcmUgSU5GTyBzdHJpbmdzIHZpYSBwb2ludGVyIGluc3RlYWQgb2YgYXJyYXkKCSAgICAgIHRvIGNvbnZpbmNlIHNvbWUgY29tcGlsZXJzIHRvIHN0b3JlIHRoZSBzdHJpbmcKCSAgICAgIGxpdGVyYWxseSBpbiB0aGUgYmluYXJ5CgkgICAgLSBUaGlzIHNob3VsZCBoZWxwIG1ha2UgaXQgd29yayBmb3Igc2RjYyAyLjguMCBSQzEKCjIwMDgtMDMtMTAgMDA6MDAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0wOSAxOToyMCAgYWxleAoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6IEJVRzogbWFrZSBjb21waWxlciBpZAoJICBkZXRlY3Rpb24gKGFsbW9zdCkgd29yayBhZ2FpbiB3aXRoIHNkY2MgMi44LjAgUkMxLCBtYWlsIHNlbnQgdG8KCSAgQnJhZCBmb3IgdGhlIHJlbWFpbmluZyBpc3N1ZSBkb24ndCBtYXRjaCBJTkZPOmNvbXBpbGVyWyIKCSAgQ09NUElMRVJfSUQgIl0gd2hpY2ggYXBwZWFycyBpbiB0aGUgYXNzZW1ibGVyIGZpbGUgZ2VuZXJhdGVkIGZyb20KCSAgdGhlIEMgZmlsZSBieSBzZGNjLCBidXQgbWFrZSBzdXJlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgYWZ0ZXIgdGhlIFsKCSAgaXMgbm8gZG91YmxlIHF1b3RlCgoJICBBbGV4CgoyMDA4LTAzLTA5IDAwOjAwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMDggMDk6NTAgIGtpbmcKCgkqIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eDogQlVHOiBGaXgKCSAgaW5jbHVkZV9kaXJlY3RvcmllcyBjb21tYW5kIHRvIHByb2R1Y2UgYW4gaW1tZWRpYXRlbHkgd2hldGhlciBvcgoJICBub3QgMi40IGNvbXBhdGliaWxpdHkgaXMgZW5hYmxlZC4gIENNYWtlIDIuNCBhbHJlYWR5IHByb2R1Y2VkIGFuCgkgIGVycm9yLCBqdXN0IG5vdCBpbW1lZGlhdGVseS4KCjIwMDgtMDMtMDggMDk6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbUluY2x1ZGVDb21tYW5kLmN4eDogRU5IOiBJbXByb3ZlIGZvcm1hdHRpbmcgb2YgaW5jbHVkZQoJICBjb21tYW5kIGVycm9yIG1lc3NhZ2UuCgoyMDA4LTAzLTA4IDA5OjIxICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IENPTVA6IEF2b2lkIHVzaW5nIG9wZXJhdG9yLT4gb24KCSAgY29uc3RfcmV2ZXJzZV9pdGVyYXRvciB0byBoZWxwIG9sZCBjb21waWxlcnMuCgoyMDA4LTAzLTA4IDA5OjEzICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Qb2xpY2llcy5jeHg6IEVOSDogQ2xlYW51cCBwb2xpY3kKCSAgZ2VuZXJpYyBkb2N1bWVudGF0aW9uLiAgQ2xlYW51cCBzb21lIHBvbGljeSBlcnJvci93YXJuaW5nCgkgIG1lc3NhZ2VzLgoKMjAwOC0wMy0wOCAwMDowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTA3IDE5OjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRNUEkuY21ha2U6IEVOSDogYWRkIG5ldyB2ZXJzaW9uIG9mIEZpbmRNUEksIGZpeCBpdCB0bwoJICB3b3JrIHdpdGggTVBJQ0gyIG9uIHdpbmRvd3MKCjIwMDgtMDMtMDcgMTc6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4OiBDT01QOiBGaXggdW51c2VkIHBhcmFtZXRlcgoJICB3YXJuaW5nIGluIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC4KCjIwMDgtMDMtMDcgMTY6MzYgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbVBvbGljaWVzLmN4eCwgY21Qb2xpY2llcy5oLCBjbWFrZS5jeHg6CgkgIEVOSDogRmluaXNoIGNyZWF0aW5nLCBkb2N1bWVudGluZywgYW5kIGVuZm9yY2luZyBwb2xpY3kgQ01QXzAwMDIuCgoyMDA4LTAzLTA3IDE2OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmN4eCwKCSAgY21DdXJzZXNNYWluRm9ybS5jeHg6IEVOSDogZml4IGl0IGZvciB3b3JraW5nIHdpdGggYW4gZW1wdHkgY2FjaGUKCjIwMDgtMDMtMDcgMTY6MjYgIGtpbmcKCgkqIGJvb3RzdHJhcDogQ09NUDogRml4IGJvb3RzdHJhcCBidWlsZCBhZnRlciB1c2luZwoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJUZXh0IGluIGNtTWFrZWZpbGUuCgoyMDA4LTAzLTA3IDE2OjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJUZXh0LmN4eCwgY21NYWtlZmlsZS5jeHg6IEVOSDoKCSAgSW4gY21NYWtlZmlsZTo6SXNzdWVNZXNzYWdlIHVzZSBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJUZXh0IHRvCgkgIGZvcm1hdCB0aGUgbWVzc2FnZSBuaWNlbHkuCgoyMDA4LTAzLTA3IDE1OjMwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaCwgU291cmNlL2NtQ01ha2VQb2xpY3lDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZEJhc2UuY3h4LAoJICBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbVBvbGljaWVzLmN4eCwKCSAgU291cmNlL2NtUG9saWNpZXMuaCwgU291cmNlL2NtYWtlLmN4eCwKCSAgVGVzdHMvTWFrZUNsZWFuL1RvQ2xlYW4vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wcm92ZSBoYW5kbGluZyBvZgoJICBvbGQtc3R5bGUgY29tcGF0aWJpbGl0eS4KCgkgICAgLSBSZW1vdmUgQ01QXzAwMDEgKG5vIHNsYXNoIGluIHRhcmdldCBuYW1lKSBhbmQgcmVzdG9yZQoJICAgICAgb2xkIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZIGNoZWNrIGZvciBpdAoJICAgIC0gUmVwbGFjZSBhbGwgY2hlY2tzIG9mIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZCgkgICAgICB3aXRoIGNtTG9jYWxHZW5lcmF0b3I6Ok5lZWRCYWNrd2FyZHNDb21wYXRpYmlsaXR5IGNhbGxzCgkgICAgLSBDcmVhdGUgbmV3IENNUF8wMDAxIHRvIGRldGVybWluZSB3aGV0aGVyIG9yIG5vdAoJICAgICAgQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgaXMgdXNlZC4KCSAgICAgIChvbGQgPSB1c2UsIG5ldyA9IGlnbm9yZSkKCSAgICAtIFNob3cgQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgaW4gY2FjaGUgb25seSB3aGVuCgkgICAgICBDTVBfMDAwMSBpcyBzZXQgdG8gT0xEIG9yIFdBUk4KCSAgICAtIFVwZGF0ZSBkb2N1bWVudGF0aW9uIG9mIGNtYWtlX3BvbGljeSBhbmQKCSAgY21ha2VfbWluaW11bV9yZXF1aXJlZAoJICAgICAgdG8gaW5kaWNhdGUgdGhlaXIgcmVsYXRpb25zaGlwIGFuZCB0aGUgMi40IHZlcnNpb24gYm91bmRhcnkKCSAgICAtIFdoZW4gbm8gY21ha2UgcG9saWN5IHZlcnNpb24gaXMgc2V0IGluIHRvcCBsZXZlbCBtYWtlZmlsZQoJICAgICAgaW1wbGljaXRseSBjYWxsIGNtYWtlX3BvbGljeShWRVJTSU9OIDIuNCkgd2hpY2ggcmVzdG9yZXMKCSAgICAgIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZIGFuZCBvdGhlciAyLjQgY29tcGF0aWJpbGl0eQoJICAgIC0gRml4IHRlc3RzIE1ha2VDbGVhbiBhbmQgUHJlcHJvY2VzcyB0byBjYWxsCgkgICAgICBjbWFrZV9wb2xpY3koVkVSU0lPTiAyLjYpIGJlY2F1c2UgdGhleSBkZXBlbmQgb24gbmV3IHBvbGljaWVzCgoyMDA4LTAzLTA3IDE0OjAzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNyZWF0ZS1jbWFrZS1yZWxlYXNlLmNtYWtlLAoJICBkYXNobWFjbWluaTJfcmVsZWFzZS5jbWFrZSwgbWFncmF0aGVhX3JlbGVhc2UuY21ha2UsCgkgIHJlbGVhc2VfY21ha2Uuc2guaW46IEVOSDogcXRndWkgc3R1ZmYKCjIwMDgtMDMtMDcgMTE6NTAgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogRU5IOiAgVXNlIGZpeGVkIHBpdGNoIGZvbnQKCSAgaW4gb3V0cHV0IHdpbmRvdy4KCjIwMDgtMDMtMDcgMTE6NDMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LCBjbUNhY2hlTWFuYWdlci5oLAoJICBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbVBvbGljaWVzLmN4eCwgY21ha2UuY3h4OiBFTkg6IGNsZWFuIHVwCgkgIHNvbWUgcG9saWN5IHN0dWZmIGFuZCBpbnRlcmFjdGlvbnMgd2l0aAoJICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSBhbmQgQ01BS0VfTUlOSU1VTV9SRVFVSVJFRAoKMjAwOC0wMy0wNyAxMTowNiAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0N5Z3dpbkJpbmFyeUdlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBjcmFzaCBpbiBjeWd3aW4gcGFja2FnZSBzdHVmZgoKMjAwOC0wMy0wNyAwOTo0MSAgbWFydGluawoKCSogU291cmNlL2NtTGlzdEZpbGVDYWNoZS5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGggaXNzdWUKCjIwMDgtMDMtMDcgMDk6MDkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBEbyBub3QgcHJvZHVjZSB3aGl0ZXNwYWNlLW9ubHkgbGluZXMKCSAgd2hlbiBpbmRlbnRpbmcgbWVzc2FnZXMgaW4gbmV3IGVycm9yL3dhcm5pbmcgZm9ybWF0LgoKMjAwOC0wMy0wNyAwODo1MyAga2luZwoKCSogU291cmNlL2NtQ29yZVRyeUNvbXBpbGUuY3h4OiBCVUc6IEdlbmVyYXRlZCB0cnktY29tcGlsZQoJICBDTWFrZUxpc3RzLnR4dCBmaWxlIHNob3VsZCBjYWxsIGNtYWtlX3BvbGljeSB3aXRoIHRoZSBjdXJyZW50CgkgIHZlcnNpb24gb2YgQ01ha2UsIG5vdCBqdXN0IDIuNi4KCjIwMDgtMDMtMDcgMDg6NDAgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsIGNtRXhlY3V0aW9uU3RhdHVzLmgsCgkgIGNtRnVuY3Rpb25Db21tYW5kLmN4eCwgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsCgkgIGNtTWFjcm9Db21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21Qb2xpY2llcy5jeHg6CgkgIEVOSDogTmV3IGZvcm1hdCBmb3Igd2FybmluZyBhbmQgZXJyb3IgbWVzc2FnZXMKCgkgICAgLSBBZGQgY21NYWtlZmlsZSBtZXRob2RzIElzc3VlRXJyb3IgYW5kIElzc3VlV2FybmluZwoJICAgIC0gTWFpbnRhaW4gYW4gZXhwbGljaXQgY2FsbCBzdGFjayBpbiBjbU1ha2VmaWxlCgkgICAgLSBJbmNsdWRlIGNvbnRleHQvY2FsbC1zdGFjayBpbmZvIGluIG1lc3NhZ2VzCgkgICAgLSBOZXN0ZWQgZXJyb3JzIG5vdyB1bndpbmQgdGhlIGNhbGwgc3RhY2sKCSAgICAtIFVzZSBuZXcgbWVjaGFuaXNtIGZvciBwb2xpY3kgd2FybmluZ3MgYW5kIGVycm9ycwoJICAgIC0gSW1wcm92ZSBwb2xpY3kgZXJyb3IgbWVzc2FnZQoJICAgIC0gSW5jbHVkZSBjbUV4ZWN1dGlvblN0YXR1cyBwb2ludGVyIGluIGNhbGwgc3RhY2sKCSAgICAgIHNvIHRoYXQgZXJyb3JzIGRlZXBlciBpbiB0aGUgQysrIHN0YWNrIHVuZGVyCgkgICAgICBhIGNvbW1hbmQgaW52b2NhdGlvbiB3aWxsIGJlY29tZSBlcnJvcnMgZm9yIHRoZQoJICAgICAgY29tbWFuZAoKMjAwOC0wMy0wNyAwMDowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTA2IDE2OjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eDogQlVHOiBrZWVwIENNQUtFX0JBQ0tXQVJEU19DT01QIGFzCgkgIGludGVybmFsCgoyMDA4LTAzLTA2IDE1OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eDogQlVHOiBtYWtlIGRlZmF1bHQKCSAgQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgMi41CgoyMDA4LTAzLTA2IDE1OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Db3JlVHJ5Q29tcGlsZS5jeHg6IEVOSDogbWFrZSBzdXJlIHBvbGljeSBpcyBzZXQgaW4KCSAgZ2VuZXJhdGVkIGNtYWtlbGlzdCBmaWxlcwoKMjAwOC0wMy0wNiAxNTowOCAgbWFydGluawoKCSogU291cmNlLzogY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsIGNtTGlzdEZpbGVDYWNoZS5jeHgsCgkgIGNtUG9saWNpZXMuY3h4OiBCVUc6IGNoYW5nZSBpbiBoYW5kbGluZyBvZiBjbWFrZV9taW5pbXVtX3JlcXVpcmVkCgoyMDA4LTAzLTA2IDExOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVySFRNTC5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDgtMDMtMDYgMTA6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbVBvbGljaWVzLmN4eDogQlVHOiBjaGFuZ2UgdGhlIGhhbmRsaW5nIG9mCgkgIENNQUtFX01JTklNVU1fUkVRVUlSRUQgYW5kIEJBQ0tXQVJEU19DT01QQVRJQklMSVRZIGFuZCBleHRlbmQgdGhlCgkgIGRvY3VtZW50YWl0b24gcXVpdGUgYSBiaXQKCjIwMDgtMDMtMDYgMDA6MDAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMy0wNSAxODo0MiAga2luZwoKCSogU291cmNlL2NtUG9saWNpZXMuY3h4OiBFTkg6IEZpeCBwb2xpY3kgd2FybmluZyBtZXNzYWdlIHRvIG5vdAoJICBnaXZlIHdyb25nIGNvZGUgYXMgZXhhbXBsZS4KCjIwMDgtMDMtMDUgMTg6MjEgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ01ha2VQb2xpY3lDb21tYW5kLmN4eCwgY21DTWFrZVBvbGljeUNvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBJbXByb3ZlIGNtYWtlX3BvbGljeSBjb21tYW5kCgkgIHNpZ25hdHVyZQoKCSAgICAtIFJlcGxhY2UgTkVXIGFuZCBPTEQgbW9kZXMgd2l0aCBhIFNFVCBtb2RlIGZvciBjbGFyaXR5CgkgICAgLSBFbmZvcmNlIFZFUlNJT04gYXJndW1lbnQgdmFsaWRpdHkgKG1ham9yLm1pbm9yWy5wYXRjaF0pCgoyMDA4LTAzLTA1IDE4OjIwICBraW5nCgoJKiBTb3VyY2UvY21Qb2xpY2llcy5jeHg6IEJVRzogUmVxdWlyZSBwb2xpY3kgdmVyc2lvbiB0byBzcGVjaWZ5IGF0CgkgIGxlYXN0IG1ham9yLm1pbm9yLiAgRG8gbm90IHN0b3JlIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZCgkgIHdpdGggYW4gaW52YWxpZCB2ZXJzaW9uIHZhbHVlLgoKMjAwOC0wMy0wNSAxNzoyNiAga2luZwoKCSogU291cmNlL2NtUG9saWNpZXMuY3h4OiBCVUc6IEZpeCBwYXJzaW5nIG9mIHBvbGljeSB2ZXJzaW9uIG51bWJlcgoJICBpbiBjbVBvbGljaWVzLgoKMjAwOC0wMy0wNSAxNTo1NSAga2luZwoKCSogTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbjogRU5IOiBQYXRjaCBmcm9tIE1haWsgdG8KCSAgYWRkIG1vcmUgZm9ydHJhbiBleHRlbnNpb25zLgoKMjAwOC0wMy0wNSAxMjo1MyAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOgoJICBFTkg6CUFsbG93IHVzZXJzIHRvIHJlY292ZXIgZnJvbSB0cnlpbmcgdG8gdXNlIGFuIGltcHJvcGVybHkKCSAgaW5zdGFsbGVkIFF0CSAgICAgd2l0aG91dCByZW1vdmluZyB0aGVpciBjYWNoZSwgZml4aW5nIHRoZWlyCgkgIGVudmlyb25tZW50IGFuZCB0cnlpbmcgYWdhaW4uCgoyMDA4LTAzLTA1IDExOjQxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtUG9saWNpZXMuY3h4LCBjbVBvbGljaWVzLmg6IEJVRzogc29tZSBmaXhlcywgc3RpbGwgYSBmZXcgdG8gZ28KCjIwMDgtMDMtMDUgMTE6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlci5oLAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmN4eCwgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVySFRNTC5oOgoJICBFTkg6IGFkZCBtYXN0ZXIgaW5kZXggaW50byBodG1sIGZ1bGwgaGVscAoKMjAwOC0wMy0wNSAwMzoxMSAgZXdpbmcKCgkqIE1vZHVsZXMvRmluZE9wZW5BTC5jbWFrZTogQlVHOiBGaXhlZCBQQVRIX1NVRkZJWEVTIGNvcHkvcGFzdGUgYnVnCgkgICgwMDA2MjAxKQoKMjAwOC0wMy0wNSAwMDowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTA0IDE4OjU3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogTWFrZSBzdXJlIGF0IGxlYXN0IG9uZSBwb2xpY3kgc3RhY2sKCSAgZW50cnkgaXMgY3JlYXRlZCBmb3IgZXZlcnkgY21NYWtlZmlsZSBpbnN0YW5jZS4KCjIwMDgtMDMtMDQgMTg6NDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LCBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmg6CgkgIEVOSDogTWFrZSBDTUFLRV9NSU5JTVVNX1JFUVVJUkVEIGNvbW1hbmQgRkFUQUxfRVJST1Igb3B0aW9uCgkgIGltcGxpY2l0IChhbHdheXMgb24pLiAgQWNjZXB0IGJ1dCBpZ25vcmUgdGhlIGV4aXN0aW5nIG9wdGlvbi4KCjIwMDgtMDMtMDQgMTg6NDEgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHg6CgkgIEJVRzogRml4IGNyYXNoIHdoZW4gQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgaXMgbm90IHNldC4KCjIwMDgtMDMtMDQgMTQ6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LCBjbVBvbGljaWVzLmN4eCwgY21ha2UuY3h4OgoJICBFTkg6IG1vcmUgcG9saWN5IGNoYW5nZXMKCjIwMDgtMDMtMDQgMTM6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogRml4IG1lbW9yeSBsZWFrIHdoZW4gY21UYXJnZXQgaW5zdGFuY2VzCgkgIGFyZSBhc3NpZ25lZC4gIFdlIHJlYWxseSBuZWVkIHRvIGdldCByaWQgb2YgZ2xvYmFsIHRhcmdldHMgYW5kCgkgIHRoZWlyIGFzc29jaWF0ZWQgYXNzaWdubWVudHMuCgoyMDA4LTAzLTA0IDEzOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuCgoyMDA4LTAzLTA0IDA5OjQwICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudFZhcmlhYmxlcy5jeHg6IEJVRzogRml4IHR5cG8gaW4gZG9jdW1lbnRhdGlvbiBvZgoJICBMSUJSQVJZX09VVFBVVF9QQVRILgoKMjAwOC0wMy0wNCAwOToxNiAgbWFydGluawoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlci5oLCBjbVBvbGljaWVzLmN4eCwgY21Qb2xpY2llcy5oLAoJICBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHg6IEVOSDogYWRkIC0taGVscC1wb2xpY2llcyBhbmQKCSAgLS1oZWxwLXBvbGljeSBjb21tYW5kIGxpbmUgb3B0aW9ucwoKMjAwOC0wMy0wNCAwOToxMCAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQ6IEJVRzogdW5kbyBhY2NpZGVudGFsIGNvbW1pdAoKMjAwOC0wMy0wNCAwODoxOCAgZGF2aWQuY29sZQoKCSogVGVzdHMvQ01ha2VUZXN0cy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ01ha2VUZXN0cy9HZXRQcmVyZXF1aXNpdGVzVGVzdC5jbWFrZS5pbiwKCSAgTW9kdWxlcy9HZXRQcmVyZXF1aXNpdGVzLmNtYWtlOiBFTkg6IEFkZCBzY3JpcHQKCSAgR2V0UHJlcmVxdWlzaXRlcy5jbWFrZSB0byBoZWxwIGFuYWx5emUgd2hhdCBzaGFyZWQgbGlicmFyaWVzCgkgIGV4ZWN1dGFibGUgZmlsZXMgZGVwZW5kIG9uLiBQcmltYXJ5IHVzZXMgYXJlIHRvIGRldGVybWluZSB3aGF0CgkgIHNoYXJlZCBsaWJyYXJpZXMgc2hvdWxkIGJlIGNvcGllZCBpbnRvIE1hYyBPU1ggYnVuZGxlCgkgIGFwcGxpY2F0aW9ucyB0byBjcmVhdGUgc3RhbmRhbG9uZSBidW5kbGVzIGFwcHMgYW5kIHRvIGRldGVybWluZQoJICB3aGF0IHNoYXJlZCBsaWJyYXJ5IGZpbGVzIG5lZWQgdG8gYmUgaW5zdGFsbGVkIGZvciBhbiBleGVjdXRhYmxlCgkgIHRvIHJ1biBvbiBhbnkgcGxhdGZvcm0uIFJlcXVpcmVzIG5hdGl2ZSBwbGF0Zm9ybSB0b29scyBkdW1wYmluLAoJICBvdG9vbCBhbmQgbGRkIHRvIGdlbmVyYXRlIHJlc3VsdHMuCgoyMDA4LTAzLTA0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMDMgMjA6MzEgIGtpbmcKCgkqIE1vZHVsZXMvVXNld3hXaWRnZXRzLmNtYWtlOiBTVFlMRTogUmVtb3ZlIHRyYWlsaW5nIHdoaXRlc3BhY2UuCgoyMDA4LTAzLTAzIDIwOjI0ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlQVNNSW5mb3JtYXRpb24uY21ha2U6IFNUWUxFOiBSZW1vdmUgdHJhaWxpbmcKCSAgd2hpdGVzcGFjZS4KCjIwMDgtMDMtMDMgMTU6NTYgIGtpbmcKCgkqIE1vZHVsZXMvVXNlX3d4V2luZG93cy5jbWFrZTogU1RZTEU6IFJlbW92ZSB0cmFpbGluZyB3aGl0ZXNwYWNlLgoKMjAwOC0wMy0wMyAxMTo1NyAga2luZwoKCSogTW9kdWxlcy9WVEtDb21wYXRpYmlsaXR5LmNtYWtlOiBTVFlMRTogUmVtb3ZlIHRyYWlsaW5nCgkgIHdoaXRlc3BhY2UuCgoyMDA4LTAzLTAzIDExOjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eDogRU5IOiBmaXggSUNFIHdpdGggZ2NjIGluCgkgIGRhc2g4CgoyMDA4LTAzLTAzIDExOjE4ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRm9yY2VDb21waWxlci5jbWFrZTogU1RZTEU6IEZpeGVkIGRvY3Mgb2YgbmV3CgkgIENNYWtlRm9yY2VDb21waWxlcgoKMjAwOC0wMy0wMyAxMToxNiAga2luZwoKCSogTW9kdWxlcy9DTWFrZUZvcmNlQ29tcGlsZXIuY21ha2U6IEVOSDogUmVzdG9yZQoJICBDTUFLRV9GT1JDRV9DX0NPTVBJTEVSIGFuZCBDTUFLRV9GT1JDRV9DWFhfQ09NUElMRVIgbWFjcm9zIGluCgkgIENNYWtlRm9yY2VDb21waWxlciBtb2R1bGUuCgoyMDA4LTAzLTAzIDA4OjQ4ICBraW5nCgoJKiBTb3VyY2UvY21FTEYuY3h4OiBDT01QOiBGaXggY21FTEYgdG8gYnVpbGQgd2hlbiBFVF9MT09TLCBFVF9ISU9TLAoJICBFVF9MT1BST0MsIEVUX0hJUFJPQyBtYXkgbm90IGJlIGRlZmluZWQuCgoyMDA4LTAzLTAzIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDMtMDIgMTY6NDggIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IER1cmluZyBpbnN0YWxsYXRpb24gZG8KCSAgbm90IHVzZSBidWlsdGluIGNocnBhdGggaWYgdGhlIHJwYXRoIHdpbGwgbm90IGNoYW5nZS4KCjIwMDgtMDMtMDIgMTY6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogQWxsb3cgdXNlcnMgdG8gd29yayBhcm91bmQgcHJvYmxlbXMKCSAgd2l0aCB0aGUgYnVpbHRpbiBjaHJwYXRoIGJ5IHNldHRpbmcgQ01BS0VfTk9fQlVJTFRJTl9DSFJQQVRILgoKMjAwOC0wMy0wMiAxNjozMSAga2luZwoKCSogU291cmNlL2NtRUxGLmN4eDogQlVHOiBGaXggYnVnIGludHJvZHVjZWQgYnkgd29ya2Fyb3VuZCB0bwoJICB3YXJuaW5nLgoKMjAwOC0wMy0wMiAxNjoxOSAga2luZwoKCSogU291cmNlLzogY21FTEYuY3h4LCBjbUVMRi5oOiBCVUc6IEEgZmV3IG1vcmUgY29ycmVjdGlvbnMgZm9yCgkgIGNtRUxGCgoJICAgIC0gQWRkIG9zLXNwZWNpZmljIGFuZCBwcm9jZXNzb3Itc3BlY2lmaWMgZmlsZSB0eXBlcwoJICAgIC0gQWRkIG1vcmUgZXJyb3Igc3RyaW5ncyBmb3IgaW52YWxpZCBmaWxlcy4KCSAgICAtIEJ5dGUgb3JkZXIgb2YgaGVhZGVyIGZpZWxkcyBkb2VzIG5vdCBhbHdheXMgbWF0Y2ggZW5jb2RpbmcKCjIwMDgtMDMtMDIgMTY6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBJbiBjbVN5c3RlbVRvb2xzOjpDaGFuZ2VSUGF0aAoJICBjaGVjayBmb3IgdGhlIFJVTlBBVEggaWYgUlBBVEggZG9lcyBub3QgZXhpc3QuCgoyMDA4LTAzLTAyIDE0OjM1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LCBjbUZpbGVDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVGFyZ2V0LmN4eDogRU5IOiBDbGVhbnVwCgkgIGJ1aWx0aW4gY2hycGF0aCBzdXBwb3J0CgoJICAgIC0gTW92ZSBjb21wdXRhdGlvbiBvZiBleHRlbmRlZCBidWlsZC10cmVlIHJwYXRoCgkgICAgICB0byBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24KCSAgICAtIE9ubHkgZW5hYmxlIHRoZSBleHRlbmRlZCBidWlsZC10cmVlIHJwYXRoIGlmCgkgICAgICB0aGUgdGFyZ2V0IHdpbGwgYmUgaW5zdGFsbGVkCgkgICAgLSBHZW5lcmFsaXplIHRoZSBpbnRlcmZhY2Ugb2YgZmlsZShDSFJQQVRIKQoJICAgIC0gV2hlbiBjaGFuZ2luZyB0aGUgcnBhdGggb24gaW5zdGFsbGF0aW9uIG9ubHkKCSAgICAgIHJlcGxhY2UgdGhlIHBhcnQgZ2VuZXJhdGVkIGJ5IENNYWtlIGJlY2F1c2UKCSAgICAgIHRoZSBuYXRpdmUgdG9vbHMgKGV4IFN1bkNDIG9uIExpbnV4KSBtaWdodCBoYXZlCgkgICAgICBhZGRlZCB0aGVpciBvd24gcGFydCB0byB0aGUgcnBhdGgKCjIwMDgtMDMtMDIgMTQ6MzUgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IFNpbXBsaWZ5IHRlc3RzIGZvciBidWlsZGluZyBDTWFrZSBpdHNlbGYKCSAgd2l0aCBycGF0aCBzdXBwb3J0IG5vdyB0aGF0IDIuNCBpcyByZXF1aXJlZCB0byBidWlsZC4KCjIwMDgtMDMtMDIgMDk6MTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVBvbGljaWVzLmg6IENPTVA6IHBvc3NpYmxlIGZpeCBmb3IgVlM2LCBidXQgcHJvYmFibHkKCSAgbm90LCBwcm9iYWJseSBuZWVkIHRvbWFrZSBpdCBpbnRlcm5hbAoKMjAwOC0wMy0wMiAwOToxMSAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwOC0wMy0wMiAwOTowMyAgbWFydGluawoKCSogU291cmNlLzogY21Qb2xpY2llcy5jeHgsIGNtUG9saWNpZXMuaDogRU5IOiByZXZlcnQgZHVtYiBjaGFuZ2UKCjIwMDgtMDMtMDIgMDg6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsIGNtUG9saWNpZXMuY3h4LAoJICBjbVBvbGljaWVzLmg6IENPTVA6IGZpeCBjb21waWxlIGVycm9ycyBvbiB2czYgYW5kIGEgd2FybmluZwoKMjAwOC0wMy0wMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAzLTAxIDE2OjIxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogYmFkIGxvb3AgaW5kZXggdW5zaWduZWQgY29tcGFyZWQgdG8KCSAgemVybwoKMjAwOC0wMy0wMSAxNTo0NCAgbWFydGluawoKCSogU291cmNlLzogY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHg6IENPTVA6IGZpeAoJICBzb21lIHdhcm5pbmdzCgoyMDA4LTAzLTAxIDE1OjI2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVBvbGljaWVzLmN4eCwgY21Qb2xpY2llcy5oOiBTVFlMRTogZml4IHNvbWUgbGluZQoJICBsZW5ndGhzCgoyMDA4LTAzLTAxIDE1OjIwICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oOiBFTkg6IGFkZAoJICBmaXJzdCBjdXQgYW5kIHBvbGljaWVzIHN0aWxsIG5lZWQgdG8gYWRkIHRoZSBkb2Mgc3VwcG9ydAoKMjAwOC0wMy0wMSAxNToxNiAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBGaXggdW51c2VkIHBhcmFtZXRlciB3YXJuaW5nIHdoZW4KCSAgY21TeXN0ZW1Ub29sczo6Q2hhbmdlUlBhdGggaXMgYnVpbHQgd2l0aG91dCBFTEYgc3VwcG9ydC4KCjIwMDgtMDMtMDEgMTM6MTcgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBGaXggY21TeXN0ZW1Ub29sczo6Q2hhbmdlUlBhdGggdG8KCSAgbm90IGNvbXBsYWluIGlmIHRoZXJlIGlzIG5vIFJQQVRIIGVudHJ5IGluIHRoZSBmaWxlIGJ1dCB0aGUKCSAgcmVxdWVzdGVkIG5ldyBycGF0aCBpcyBlbXB0eS4KCjIwMDgtMDMtMDEgMTM6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogRG8gbm90IHRyeSB0byBjaGFuZ2UgdGhlIFJQQVRIIHdoZW4KCSAgaW5zdGFsbGluZyBhIHRhcmdldCBpZiBDTUFLRV9TS0lQX1JQQVRIIGlzIG9uIG9yIHRoZSBwYXRoIGRvZXMKCSAgbm90IG5lZWQgdG8gYmUgY2hhbmdlZC4KCjIwMDgtMDMtMDEgMTI6NTEgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2UsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0Lmg6IEVOSDogVXNlIGJ1aWx0aW4gY2hycGF0aAoJICBpbnN0ZWFkIG9mIHJlbGlua2luZyBFTEYgdGFyZ2V0cwoKCSAgICAtIEFkZCBjbVN5c3RlbVRvb2xzOjpDaGFuZ2VSUGF0aCBtZXRob2QKCSAgICAtIEFkZCB1bmRvY3VtZW50ZWQgZmlsZShDSFJQQVRIKSBjb21tYW5kCgkgICAgLSBXaGVuIGluc3RhbGxpbmcgdXNlIGZpbGUoQ0hSUEFUSCkgdG8gY2hhbmdlIHRoZSBycGF0aAoJICAgICAgaW5zdGVhZCBvZiByZWxpbmtpbmcKCSAgICAtIFJlbW92ZSBDTUFLRV9DSFJQQVRIIGxvb2t1cCBmcm9tIENNYWtlRmluZEJpblV0aWxzCgkgICAgLSBSZW1vdmUgQ01BS0VfVVNFX0NIUlBBVEggb3B0aW9uIHNpbmNlIHRoaXMgc2hvdWxkCgkgICAgICBhbHdheXMgd29yawoKMjAwOC0wMy0wMSAxMjo1MCAga2luZwoKCSogU291cmNlLzogY21FTEYuY3h4LCBjbUVMRi5oOiBFTkg6IEFkZCBTaXplIG1lbWJlciB0bwoJICBjbUVMRjo6U3RyaW5nRW50cnkgdG8gcmV0dXJuIHRoZSBhbW91bnQgb2Ygc3BhY2UgaW4gdGhlIHN0cmluZwoJICBlbnRyeS4KCjIwMDgtMDMtMDEgMTA6NTYgIGtpbmcKCgkqIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQ6IEJVRzogRml4IHR5cG8gWENvZGUgLT4gWGNvZGUgaW4KCSAgUHJlcHJvY2VzcyB0ZXN0LgoKMjAwOC0wMy0wMSAwOTowOCAga2luZwoKCSogVGVzdHMvUHJlcHJvY2Vzcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGUgUHJlcHJvY2VzcyB0ZXN0IHRvCgkgIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIG1ha2UgdG9vbCBvciBjb21waWxlciB0b29sIHRoYXQgaXMgYXQKCSAgZmF1bHQgZm9yIG5vdCBzdXBwb3J0aW5nIGEgcGFydGljdWxhciBjaGFyYWN0ZXIgaW4gZGVmaW5pdGlvbnMuCgkgIE1ha2UgaXQgc2tpcCB0aGUgJSBjaGFyYWN0ZXIgd2hlbiB0aGUgY29tcGlsZXIgaXMgTVNWQyBhbmQgaXQgaXMKCSAgYSBub24tbm1ha2UgdG9vbC4KCjIwMDgtMDMtMDEgMDk6MDggIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OgoJICBCVUc6IERvIG5vdCBwbGFjZSAkKENNQUtFX0NPTU1BTkQpIGluIGxpbmsgc2NyaXB0cy4KCjIwMDgtMDMtMDEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0yOSAyMTozMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbVdoaWxlQ29tbWFuZC5jeHg6IEVOSDogZml4IHdhcm5pbmdzCgoyMDA4LTAyLTI5IDIxOjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmg6IEVOSDogZml4IGRvY3MKCjIwMDgtMDItMjkgMTU6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNNYWtlUG9saWN5Q29tbWFuZC5jeHg6IEVOSDoganVzdCBnZXR0aW5nIHNvbWV0aG5nCgkgIGNoZWNrZWQgaW4sIHN0aWxsIHdvcmsgdG8gZG8KCjIwMDgtMDItMjkgMTU6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNtYWtlUG9saWN5Q09tbWFuZC5jeHg6IEVOSDogY2FzZQoKMjAwOC0wMi0yOSAxNToyOCAgbWFydGluawoKCSogU291cmNlLzogY21DTWFrZVBvbGljeUNvbW1hbmQuaCwgY21DbWFrZVBvbGljeUNPbW1hbmQuY3h4LAoJICBjbVBvbGljaWVzLmN4eCwgY21Qb2xpY2llcy5oOiBFTkg6IGp1c3QgZ2V0dGluZyBzb21ldGhuZyBjaGVja2VkCgkgIGluLCBzdGlsbCB3b3JrIHRvIGRvCgoyMDA4LTAyLTI5IDE0OjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0RhcnRDb25maWd1cmF0aW9uLnRjbC5pbiwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmg6IEVOSDogYWxsb3cgY2Rhc2ggbm90IHRvCgkgIHRyaWdnZXIKCjIwMDgtMDItMjkgMTQ6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlOiBFTkg6IGFkZCB2czkgc3R1ZmYsCgkgIHN0aWxsIG5lZWQgbXN2YzkgbWZjCgoyMDA4LTAyLTI5IDEyOjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZvckVhY2hDb21tYW5kLmN4eCwgY21GdW5jdGlvbkNvbW1hbmQuY3h4LAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtTWFjcm9Db21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtV2hpbGVDb21tYW5kLmN4eDogRU5IOiBtYWtlIENNQUtFX0FMTE9XX0xPT1NFX0xPT1BfQ09OU1RSVUNUUwoJICB0aGUgZGVmYXVsdCBhbmQgcmVtb3ZlIHRoZSBwcm9wZXJ0eS4JSWYgYW55IHZhbHVlIGlzIHNwZWNpZmllZAoJICBpbiBhbiBlbmRpZiwgZW5kZm9yZWFjaCwgZW5kd2hpbGUsIGV0YyB0aGVuIG1ha2Ugc3VyZSBpdCBtYXRjaGVzCgkgIHRoZSBzdGFydCBzdHJpbmcuICBJZiBubyB2YWx1ZXMgYXJlIGdpdmVuIHRoZW4gaXQgaXMgbm8gbG9uZ2VyIGFuCgkgIGVycm9yLgoKMjAwOC0wMi0yOSAxMToxMiAga2luZwoKCSogU291cmNlLzogY21FTEYuY3h4LCBjbUVMRi5oOiBFTkg6IE1ha2UgY21FTEYgcGFyc2VyIG1vcmUgZ2VuZXJhbAoJICBhbmQgcG93ZXJmdWwKCgkgICAgLSBBZGQgc3VwcG9ydCB0byBnZXQgUlBBVEggYW5kIFJVTlBBVEggZW50cmllcy4KCSAgICAtIEFkZCBzdXBwb3J0IHRvIGdldCBmaWxlIG9mZnNldHMgdG8gc3RyaW5ncy4KCSAgICAtIEFkZCBtb3JlIERUXyogdGFncyB0byBieXRlIHN3YXBwaW5nLgoKMjAwOC0wMi0yOSAwOToxNSAga2luZwoKCSogU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHg6IEJVRzoKCSAgY21Db21wdXRlTGlua0luZm9ybWF0aW9uOjpDaGVja0ltcGxpY2l0RGlySXRlbSBuZWVkcyB0byBleHRyYWN0CgkgIHRoZSBmaWxlbmFtZSBwb3J0aW9uIG9mIHRoZSBsaW5rIGl0ZW0gdG8gdGVzdCBhZ2FpbnN0IHRoZSBsaWJyYXJ5CgkgIHJlZ2V4LgoKMjAwOC0wMi0yOSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTI4IDA4OjQzICBraW5nCgoJKiBTb3VyY2UvY21FTEYuY3h4OiBDT01QOiBjbUVMRiBuZWVkcyB0byBpbmNsdWRlIHN5cy9saW5rLmggdG8gZ2V0CgkgIGR5bmFtaWMgc2VjdGlvbiBzdHJ1Y3R1cmVzIG9uIHRoZSBTdW4uCgoyMDA4LTAyLTI4IDA4OjMyICBraW5nCgoJKiBTb3VyY2UvY21FTEYuY3h4OiBDT01QOiBGaXggd2FybmluZ3MgaW4gY21FTEYuCgoyMDA4LTAyLTI4IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMjcgMTc6MTAgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1pZm9ydC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9jbC5jbWFrZSwKCSAgU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDogSGFuZGxlIGxhcmdlIG9iamVjdCBmaWxlCgkgIGxpc3RzIG9uIHNvbWUgcGxhdGZvcm1zCgoJICAgIC0gVXNlIGEgcmVzcG9uc2UgZmlsZSB3aGVuIGVuYWJsZWQgYnkKCSAgICAgIENNQUtFXzxMQU5HPl9VU0VfUkVTUE9OU0VfRklMRV9GT1JfT0JKRUNUUwoJICAgIC0gRW5hYmxlIGZvciBDIGFuZCBDWFggd2l0aCBjbCAoTVNWQykKCSAgICAtIEVuYWJsZSBmb3IgRm9ydHJhbiB3aXRoIGlmb3J0IChJbnRlbCBGb3J0cmFuKQoKMjAwOC0wMi0yNyAxNjoyNiAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ29uZmlndXJlLmNtYWtlLmguaW4sIGNtRUxGLmN4eCwKCSAgY21FTEYuaCwgY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkIEVMRiBmaWxlIHBhcnNpbmcKCgkgICAgLSBFbmFibGVkIHdoZW4gc3lzdGVtIHByb3ZpZGVzIGVsZi5oCgkgICAgLSBJbnRyb2R1Y2UgY21FTEYgY2xhc3MgdG8gcGFyc2UgRUxGIGZpbGVzCgkgICAgLSBVc2UgaW4gY21TeXN0ZW1Ub29sczo6R3Vlc3NMaWJyYXJ5U09OYW1lIHRvIHJlYWxseSBnZXQgc29uYW1lCgoyMDA4LTAyLTI3IDE2OjExICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ1BVLmguaW46IEJVRzogRml4ZWQgdHlwbyBpbiBwcmV2aW91cyBjb21taXQgb2YKCSAga3dzeXMvQ1BVLmguaW4KCjIwMDgtMDItMjcgMTY6MDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDUFUuaC5pbjogRU5IOiBBZGRlZCBDUFUuaCB0bwoJICBLV1N5cyB0byBpZGVudGlmeSB0aGUgdGFyZ2V0IENQVSBhbmQgaXRzIGJ5dGUgb3JkZXIuCgoyMDA4LTAyLTI3IDE0OjMxICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogSFAtVVguY21ha2UsIElSSVg2NC5jbWFrZSwgTGludXgtUEdJLUMuY21ha2UsCgkgIExpbnV4LVBHSS1DWFguY21ha2UsIFN1bk9TLmNtYWtlLCBXaW5kb3dzLWJjYzMyLmNtYWtlLCBnY2MuY21ha2U6CgkgIEJVRzogQXBwbHkgcGF0Y2ggZnJvbSBidWcjNjQ0NS4gIEFkZCBwcmVwcm9jZXNzb3IgZGVmaW5pdGlvbnMgdG8KCSAgYXNzZW1ibHkgYW5kIHByZXByb2Nlc3NpbmcgYnVpbGQgcnVsZXMuCgoyMDA4LTAyLTI3IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMjYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0yNSAxODo0NyAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNDb21waWxlcklkLmMuaW46IEVOSDogQWRkIHN1cHBvcnQgdG8gQyBjb21waWxlcgoJICBpZGVudGlmaWNhdGlvbiBmb3Igdm9pZCByZXR1cm4gdHlwZSBmcm9tIG1haW4uICBDcm9zcy1jb21waWxlcnMKCSAgZm9yIGVtYmVkZGVkIHBsYXRmb3JtcyBtYXkgcmVxdWlyZSBpdC4KCjIwMDgtMDItMjUgMTU6MDcgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDoKCSAgRU5IOglBZGp1c3Qgd2hlbiBsb2cgaXMgY2xlYXJlZC4gIEl0cyBrZXB0IGRvaW5nIGdlbmVyYXRlLAoJICBhbmQgY2xlYXJlZCB3aGVuIGNoYW5naW5nIHRoZSBzb3VyY2UgZGlyZWN0b3J5LgkgIzYzNTguCgoyMDA4LTAyLTI1IDE0OjIzICBhbGV4CgoJKiBNb2R1bGVzL0NQYWNrUlBNLmNtYWtlOiBCVUc6IGZpeCBycG1idWlsZCBidWcsIHdoaWNoIGV4cGFuZHMKCSAgdmFyaWFibGVzIGluIGNvbW1lbnRzIDotLyBhcHBhcmVudGx5IHJwbWJ1aWxkIGNhbid0IGhhbmRsZSBwYXRocwoJICB3aXRoIHNwYWNlcyBhbmQgY2FuJ3QgaGFuZGxlIHZhcmlhYmxlcyBpbiBjb21tZW50cy4uLgoKCSAgQWxleAoKMjAwOC0wMi0yNSAxMDoxNyAgZGF2aWQuY29sZQoKCSogQ1Rlc3RDdXN0b20uY21ha2UuaW46IEJVRzogRXhjbHVkZSB0cnlfY29tcGlsZSBzb3VyY2VzIGFuZCBrd3N5cwoJICBmaWxlcyBmcm9tIENNYWtlIGNvdmVyYWdlIHJlc3VsdHMuCgoyMDA4LTAyLTI1IDA5OjIzICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZUNDb21waWxlcklkLmMuaW4sCgkgIENNYWtlQ1hYQ29tcGlsZXJJZC5jcHAsIENNYWtlQ1hYQ29tcGlsZXJJZC5jcHAuaW4sCgkgIENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLCBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlLCBDTWFrZUZvcnRyYW5Db21waWxlcklkLkY5MCwKCSAgQ01ha2VGb3J0cmFuQ29tcGlsZXJJZC5GOTAuaW4sIENNYWtlUGxhdGZvcm1JZC5oLAoJICBDTWFrZVBsYXRmb3JtSWQuaC5pbjogRU5IOiBJbXByb3ZpZWQgY29tcGlsZXIgaWRlbnRpZmljYXRpb24KCSAgcm9idXN0bmVzcwoKCSAgICAtIFdyaXRlIGEgc2luZ2xlIHNvdXJjZSBmaWxlIGludG8gdGhlIGNvbXBpbGVyIGlkIGRpcmVjdG9yeQoJICAgIC0gVGhpcyBhdm9pZCByZXF1aXJpbmcgdGhlIGNvbXBpbGVyIHRvIGJlaGF2ZSBjb3JyZWN0bHkgd2l0aAoJICAgICAgcmVzcGVjdCB0byBpbmNsdWRlIHJ1bGVzIGFuZCB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeQoJICAgIC0gSGVscHMgdG8gaWRlbnRpZnkgY3Jvc3MtY29tcGlsaW5nIHRvb2xjaGFpbnMgd2l0aCB1bnVzdWFsCgkgICAgICBkZWZhdWx0IGJlaGF2aW9yCgoyMDA4LTAyLTI1IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMjQgMTQ6MDUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IFNpbXBsaWZ5IG1ha2UgYnVpbGQKCSAgcnVsZSBnZW5lcmF0aW9uIGJ5IHJlbW92aW5nIHVzZSBvZiBPQkpFQ1RTX1FVT1RFRCBhbmQKCSAgVEFSR0VUX1FVT1RFRCBydWxlIHZhcmlhYmxlcyBhbmQgdXBkYXRpbmcgdGhlIGdlbmVyYXRpb24gb2YKCSAgT0JKRUNUUyB0byBhbHdheXMgdXNlIHRoZSBuZXdlciBjbUxvY2FsR2VuZXJhdG9yOjpDb252ZXJ0IG1ldGhvZC4KCjIwMDgtMDItMjQgMTQ6MDUgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtEZXBlbmRzLmN4eCwgY21FeHBvcnRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtVGFyZ2V0LmN4eDogQ09NUDogRml4IEJvcmxhbmQgNS41IGJ1aWxkCgoJICAgIC0gSXRzIDxpb3Nmd2Q+IGhlYWRlciBpbmNsdWRlcyB3aW5kb3dzLmggd2hpY2gKCSAgICAgIGRlZmluZXMgR2V0Q3VycmVudERpcmVjdG9yeQoJICAgIC0gSXQgZGVmaW5lcyAnaW50ZXJmYWNlJyBzbyB3ZSBjYW5ub3QgdXNlIGl0IGFzCgkgICAgICBhIHZhcmlhYmxlIG5hbWUuCgoyMDA4LTAyLTI0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMjMgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0yMiAwOTo0NCAga2luZwoKCSogU291cmNlL2NtT3JkZXJEaXJlY3Rvcmllcy5jeHg6IENPTVA6IEZpeCB1bnJlYWNoYWJsZSBjb2RlIHdhcm5pbmcKCSAgaW4gY21PcmRlckRpcmVjdG9yaWVzLgoKMjAwOC0wMi0yMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTIxIDEzOjU5ICBraW5nCgoJKiBTb3VyY2UvY21PcmRlckRpcmVjdG9yaWVzLmN4eDogQ09NUDogUmVtb3ZlIHVudXNlZCBsb2NhbCB2YXJpYWJsZQoJICBmcm9tIGNtT3JkZXJEaXJlY3Rvcmllcy4KCjIwMDgtMDItMjEgMTM6NTggIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsIGNtT3JkZXJEaXJlY3Rvcmllcy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogSW1wcm92ZSBsaW5raW5nIHRvCgkgIHRoaXJkLXBhcnR5IHNoYXJlZCBsaWJyYXJpZXMgb24gc29uYW1lIHBsYXRmb3JtcwoKCSAgICAtIFJlZHVjZSBmYWxzZSBwb3NpdGl2ZXMgaW4gY2FzZXMgb2YgdW5rbm93biBzb25hbWUKCSAgICAtIE1ha2UgbGlicmFyeSBleHRlbnNpb24gcmVndWxhciBleHByZXNzaW9ucyBtYXRjaCBvbmx5IGF0IGVuZAoJICBvZiBzdHJpbmcKCSAgICAtIFdoZW4gbGlua2luZyB0byBsaWJyYXJpZXMgaW4gaW1wbGljaXQgZGlycyBjb252ZXJ0IHRvIHRoZSAtbAoJICBvcHRpb24KCSAgICAgIG9ubHkgaWYgdGhlIGZpbGUgbmFtZSBpcyBvbmUgdGhhdCBjYW4gYmUgZm91bmQgYnkgdGhlIGxpbmtlcgoJICAgICAgKGV4LiAvdXNyL2xpYi9saWJmb28uc28uMSBzaG91bGQgYmUgbGlua2VkIGJ5IGZ1bGwgcGF0aCkKCSAgICAtIEFkZCBjbVN5c3RlbVRvb2xzOjpHdWVzc0xpYnJhcnlTT05hbWUgdG8gZ3Vlc3MgdGhlIHNvbmFtZSBvZgoJICBhCgkgICAgICBsaWJyYXJ5IGJhc2VkIG9uIHByZXNlbmNlIG9mIGEgc3ltbGluawoJICAgIC0gSW4gY21Db21wdXRlTGlua0luZm9ybWF0aW9uIHRyeSB0byBndWVzcyBhbiBzb25hbWUgYmVmb3JlCgkgIGFzc3VtaW5nCgkgICAgICB0aGF0IGEgdGhpcmQtcGFydHkgbGlicmFyeSBpcyBidWlsdCB3aXRob3V0IGFuIHNvbmFtZQoJICAgIC0gSW4gY21PcmRlckRpcmVjdG9yaWVzIGd1ZXNzIHRoZSBzb25hbWUgb2Ygc2hhcmVkIGxpYnJhcmllcyBpbgoJICBjYXNlcwoJICAgICAgaXQgaXMgb3RoZXJ3aXNlIHVua25vd24KCjIwMDgtMDItMjEgMTE6NDEgIGtpbmcKCgkqIGJvb3RzdHJhcCwgTW9kdWxlcy9QbGF0Zm9ybS9GcmVlQlNELmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1FOWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmN4eCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oLCBTb3VyY2UvY21PcmRlckRpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJEaXJlY3Rvcmllcy5oLAoJICBTb3VyY2UvY21PcmRlclJ1bnRpbWVEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyUnVudGltZURpcmVjdG9yaWVzLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oOiBFTkg6IEJldHRlciBsaW5rZXIgc2VhcmNoIHBhdGggY29tcHV0YXRpb24uCgoJICAgIC0gVXNlIGxpbmtlciBzZWFyY2ggcGF0aCAtTC4uIC1sZm9vIGZvciBsaWIgdy9vdXQgc29uYW1lCgkgICAgICB3aGVuIHBsYXRmb3JtIHNldHMgQ01BS0VfUExBVEZPUk1fVVNFU19QQVRIX1dIRU5fTk9fU09OQU1FCgkgICAgLSBSZW5hbWUgY21PcmRlclJ1bnRpbWVEaXJlY3RvcmllcyB0byBjbU9yZGVyRGlyZWN0b3JpZXMKCSAgICAgIGFuZCBnZW5lcmFsaXplIGl0IGZvciBib3RoIHNvbmFtZSBjb25zdHJhaW50cyBhbmQgbGluawoJICAgICAgbGlicmFyeSBjb25zdHJhaW50cwoJICAgIC0gVXNlIGNtT3JkZXJEaXJlY3RvcmllcyB0byBvcmRlciAtTCBkaXJlY3RvcmllcyBiYXNlZAoJICAgICAgb24gYWxsIG5lZWRlZCBjb25zdHJhaW50cwoJICAgIC0gQXZvaWQgcHJvY2Vzc2luZyBpbXBsaWNpdCBsaW5rIGRpcmVjdG9yaWVzCgkgICAgLSBGb3IgQ01BS0VfT0xEX0xJTktfUEFUSFMgYWRkIGNvbnN0cmFpbnRzIGZyb20gbGlicwoJICAgICAgcHJvZHVjaW5nIHRoZW0gdG8gcHJvZHVjZSBvbGQgb3JkZXJpbmcKCjIwMDgtMDItMjEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0yMCAxNDo1NiAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEJVRzoKCSAgTGluayBzY3JpcHRzIHNob3VsZCBiZSBnZW5lcmF0ZWQgd2l0aCBjb3B5LWlmLWRpZmZlcmVudCBhbmQKCSAgaW5jbHVkZWQgYXMgYSBkZXBlbmRlbmN5IG9mIHRoZSBsaW5rIHJ1bGUuCgoyMDA4LTAyLTIwIDEzOjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4LAoJICBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuaDogRU5IOiBEZXByZWNhdGUKCSAgZXhwb3J0X2xpYnJhcnlfZGVwZW5kZW5jaWVzCgoJICAgIC0gUmVmZXJlbmNlIGV4cG9ydCgpIGFuZCBpbnN0YWxsKEVYUE9SVCkKCSAgICAtIEZpeCB0byBzdXBwb3J0IE9VVFBVVF9OQU1FIGluIHNpbXBsZSBjYXNlcwoKMjAwOC0wMi0yMCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTE5IDE4OjUwICBpYmFuZXoKCgkqIFNvdXJjZS9rd3N5cy90ZXN0U3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IE1pc3NpbmcgY29weXJpZ2h0CgkgIGhlYWRlci4KCjIwMDgtMDItMTkgMTY6MzQgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4OiBTVFlMRTogcGF0Y2ggcGFydCAzIGZyb20KCSAgTWlndWVsOiBmb2xsb3cgbmFtaW5nIHN0eWxlIGZvciB2YXJpYWJsZXMKCgkgIEFsZXgKCjIwMDgtMDItMTkgMTY6MjcgIGFsZXgKCgkqIFNvdXJjZS86IGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5oOiBFTkg6IHBhdGNoIGZyb20gTWlndWVsIHBhcnQgMjogaWYKCSAgRUNMSVBTRV9DRFQ0X0dFTkVSQVRFX1NPVVJDRV9QUk9KRUNUIGlzIHRydWUsIHRoZW4gdGhlIGdlbmVyYXRvcgoJICBhZGRpdGlvbmFsbHkgZ2VuZXJhdGVzIGVjbGlwc2UgcHJvamVjdCBmaWxlcyBpbiB0aGUgc291cmNlIGRpciwKCSAgc2luY2UgdGhpcyBpcyB0aGUgb25seSB3YXkgdG8gZ2V0IGN2cy9zdm4gd29ya2luZyB3aXRoIGVjbGlwc2UKCgkgIFRoaXMgaXMgb2ZmIGJ5IGRlZmF1bHQgYW5kIHRoZSB1c2VyIGhhcyB0byBlbmFibGUgaXQgZXhwbGljaXRlbHkuCgkgIElmIGNtYWtlIGNhbid0IHdyaXRlIHRoZXJlIGl0IHN0aWxsIGNvbnRpbnVlcy4KCgkgIEFsZXgKCjIwMDgtMDItMTkgMTU6MDcgIGFsZXgKCgkqIFNvdXJjZS86IGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5oOiBFTkg6IHBhdGNoIHBhcnQgMSBmcm9tIE1pZ3VlbDogdXNlCgkgIHRoZSBjbWFrZSBwcm9qZWN0IG5hbWUgZm9yIHRoZSBlY2xpcHNlIHByb2plY3QgbmFtZQoKCSAgQWxleAoKMjAwOC0wMi0xOSAxNDo0NyAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nL01hY0luc3RhbGxEaWFsb2cudWk6IEVOSDogYmV0dGVyIHVpCgoyMDA4LTAyLTE5IDE0OjMzICBhbGV4CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlci5oLCBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJEb2Nib29rLmN4eCwKCSAgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyRG9jYm9vay5oLAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmN4eCwgY21ha2VtYWluLmN4eDogRU5IOiBhZGQgc3VwcG9ydAoJICBmb3IgY3JlYXRpbmcgdGhlIGRvY3VtZW50YXRpb24gaW4gZG9jYm9vayBmb3JtYXQKCSAgKGh0dHA6Ly93d3cub2FzaXMtb3Blbi5vcmcvZG9jYm9vay94bWwvNC4yLyksIHdoaWNoIHVzZXJzIGNhbgoJICB0aGVuIGNvbnZlcnQgdG8gb3RoZXIgZm9ybWF0cy4gIFRlc3RlZCB3aXRoIG1laW5wcm9jIGZyb20gS0RFLAoJICB3aGljaCBnZW5lcmF0ZXMgSFRNTCBwYWdlcyB3aGljaCBsb29rIGdvb2QuCgoJICBBbGV4CgoyMDA4LTAyLTE5IDE0OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5oLCBRdERpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgUXREaWFsb2cvUXREaWFsb2dDUGFjay5jbWFrZS5pbiwgUXREaWFsb2cvcG9zdGZsaWdodC5zaC5pbiwKCSAgUXREaWFsb2cvcG9zdHVwZ3JhZGUuc2guaW46IEVOSDogaW5zdGFsbCB3b3JraW5nIHdpdGggc3ltbGluayBxdAoJICB0b29sCgoyMDA4LTAyLTE5IDE0OjA2ICBob2ZmbWFuCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgQ01ha2VTZXR1cC5jeHgsCgkgIE1hY0luc3RhbGxEaWFsb2cudWksIFFNYWNJbnN0YWxsRGlhbG9nLmN4eCwgUU1hY0luc3RhbGxEaWFsb2cuaDoKCSAgRU5IOiBhZGQgbWFjIGluc3RhbGwgc3ltbGluayBvcHRpb24gdG8gZGlhbG9nCgoyMDA4LTAyLTE5IDA5OjA5ICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBDT01QOiBGaXggSFAgd2FybmluZyBhYm91dAoJICBjbVRhcmdldEludGVybmFsUG9pbnRlcjo6b3BlcmF0b3I9IGNoZWNraW5nIGZvciBzZWxmLWFzc2lnbm1lbnQuCgoyMDA4LTAyLTE5IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMTggMTY6MzggIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOiBDbGVhbnVwIGltcGwgb2YgUFVCTElDX0hFQURFUiwKCSAgUFJJVkFURV9IRUFERVIsIGFuZCBSRVNPVVJDRSBwcm9wZXJ0aWVzCgoyMDA4LTAyLTE4IDE1OjUwICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrT3B0aW9ucy5jbWFrZS5pbiwgQ01ha2VMaXN0cy50eHQ6IEVOSDogaW5zdGFsbCBzZWVtcyB0bwoJICBiZSB3b3JraW5nIGZvciBjbWFrZS1ndWkKCjIwMDgtMDItMTggMTU6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiBhZGQgbW9yZSBpbmZvcm1hdGlvbiB0byBtZXNzYWdlCgoyMDA4LTAyLTE4IDE0OjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VJbmdlc3RPU1hCdW5kbGVMaWJyYXJpZXMuY21ha2U6IEVOSDogbWFrZQoJICBzdXJlIGZpeHVwIGhhcyByaWdodCBwYXRocwoKMjAwOC0wMi0xOCAxMzoxMSAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlSW5nZXN0T1NYQnVuZGxlTGlicmFyaWVzLmNtYWtlOiBTVFlMRTogdXNlCgkgIGxvd2VyY2FzZQoKMjAwOC0wMi0xOCAxMzowMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db25maWd1cmUuY21ha2UuaC5pbiwgY21ha2UuY3h4OiBFTkg6IHJlbW92ZQoJICBDTUFLRV9QUkVGSVggc28gY2hhbmdpbmcgaXQgZG9lcyBub3QgcmVidWlsZCBhbGwKCjIwMDgtMDItMTggMTI6MDEgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2U6IEJVRzogRml4IHBhc3Npbmcgb2Ygbm9kZWZhdWx0cnBhdGgKCSAgZmxhZyB0byBsaW5rZXIgdGhyb3VnaCBjKysgY29tcGlsZXIuCgoyMDA4LTAyLTE4IDExOjEwICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiByZXF1aXJlIDIuNCB0byBidWlsZCBjbWFrZQoKMjAwOC0wMi0xOCAxMDoyNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUluZ2VzdE9TWEJ1bmRsZUxpYnJhcmllcy5jbWFrZSwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvUXREaWFsb2cvQ01ha2VJbmdlc3RPU1hCdW5kbGVMaWJyYXJpZXMuY21ha2UsCgkgIFNvdXJjZS9RdERpYWxvZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBoYXZlIGNwYWNrIHdvcmsgd2l0aCBERVNURElSCgkgIGluc3RhbGwgYW5kIGluZ2VzdCBxdCBmcmFtZXdvcmsgbGlicyBpbnRvIGNtYWtlLWd1aQoKMjAwOC0wMi0xOCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTE3IDE3OjQwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVzLmNtYWtlOiBCVUc6IGZpeCBkb3VibGUgY21ha2VmaWxlcwoJICBkaXJlY3RvcnkKCjIwMDgtMDItMTcgMTQ6MDQgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBCVUc6IGFjdHVhbGx5IHByaW50IHRoZSBkb2NzIGZvcgoJICBjdXN0b20gbW9kdWxlcyBpZiB0aGlzIHdhcyByZXF1ZXN0ZWQKCgkgIEFsZXgKCjIwMDgtMDItMTcgMTI6MzEgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmN4eDogUEVSRjogcmVkdWNlIHRpbWUgZm9yCgkgIGZ1bGwgZG9jcyBhcyBIVE1MIGZyb20gMS40IHMgdG8gMC4yIHMsIHRoZSBtYXAgaXMgbm93IGNyZWF0ZWQgYW5kCgkgIGZpbGxlZCBvbmx5IG9uY2UgaW5zdGVhZCBmb3IgZXZlcnkgY2hhcmFjdGVyIEkgZ3Vlc3MgYSBzaW1wbGUKCSAgY2FzZS1zd2l0Y2ggd291bGQgYmUgc3RpbGwgZmFzdGVyLgoKCSAgQWxleAoKMjAwOC0wMi0xNyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTE2IDE2OjMzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlSW5nZXN0T1NYQnVuZGxlTGlicmFyaWVzLmNtYWtlOiBFTkg6IGFkZCBzY3JpcHQgdG8KCSAgaW5nZXN0IGxpYnJhcnkgZGVwZW5kcyBpbnRvIGEgYnVuZGxlCgoyMDA4LTAyLTE2IDEzOjA1ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgYm9vdHN0cmFwLCBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9RdERpYWxvZy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL1F0RGlhbG9nL1FDTWFrZS5jeHgsCgkgIFNvdXJjZS9RdERpYWxvZy9RdERpYWxvZ0NQYWNrLmNtYWtlLmluOiBFTkg6IHN1cHBvcnQgZm9yIGNwYWNrCgkgIGFuZCBpbnN0YWxsIG9mIGNtYWtlLWd1aSBhcyBtYWMgYXBwIGJ1bmRsZQoKMjAwOC0wMi0xNiAxMzowMiAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBERVNURElSIGluc3RhbGwKCjIwMDgtMDItMTYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0xNSAxODoyNiAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogU1RZTEU6IHVzZSBnbG9iYWwgcHJvcGVydHkgaW5zdGVhZAoJICBvZiBoZWxwZXIgdGFyZ2V0IHRvIGNvbGxlY3QgYWxsIHB5dGhvbiBtb2R1bGVzIGZyb20gYSBzb3VyY2UgdHJlZQoKCSAgQWxleAoKMjAwOC0wMi0xNSAxNTozNiAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL1FDTWFrZS5jeHg6IEVOSDogIHJlbW92ZSB1bnVzZWQgY29kZS4KCjIwMDgtMDItMTUgMTI6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9RdERpYWxvZy9RQ01ha2UuY3h4OiBFTkg6IHVzZSBwYWNrYWdlIG5hbWUgb24gbWFjIGZvciBlZGl0CgkgIGNhY2hlCgoyMDA4LTAyLTE1IDExOjU2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEFwcGx5IHBhdGNoIGZyb20KCSAgYnVnICM2MTgwIHRvIG1ha2UgQ01BS0VfQURESVRJT05BTF9NQUtFX0NMRUFOX0ZJTEVTIHdvcmsgZm9yCgkgIGRpcmVjdG9yaWVzLgoKMjAwOC0wMi0xNSAxMTo0OSAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtQ2FsbFZpc3VhbFN0dWRpb01hY3JvLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW85R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuaCwKCSAgVGVtcGxhdGVzL0NNYWtlVlNNYWNyb3MyLnZzbWFjcm9zOiBFTkg6IEFkZCBjb2RlIHRvIHN1cHBvcnQKCSAgY2FsbGluZyB0aGUgVlMgcmVsb2FkIG1hY3JvIGZyb20gVmlzdWFsIFN0dWRpbyA3LjEgYW5kIDkuMCBpbgoJICBhZGRpdGlvbiB0byA4LjAgc3AxLi4uIE1ha2UgbmV3IG1hY3JvcyBmaWxlIHdpdGggVlMgNy4xIHNvIHRoYXQKCSAgaXQgY2FuIGJlIHJlYWQgYnkgNy4xIGFuZCBsYXRlci4gVlMgNy4xIGRvZXMgbm90IGFwcGVhciB0byBydW4KCSAgdGhlIG1hY3JvcyB3aGlsZSBhIGJ1aWxkIGlzIGluIHByb2dyZXNzLCBidXQgZG9lcyBub3QgcmV0dXJuIGFueQoJICBlcnJvcnMgZWl0aGVyLCBzbyBmb3Igbm93LCB0aGUgcmVsb2FkIG1hY3JvIGlzIG5vdCBjYWxsZWQgd2hlbgoJICB1c2luZyA3LjEuIElmIEkgY2FuIGZpZ3VyZSBvdXQgaG93IHRvIGdldCA3LjEgdG8gZXhlY3V0ZSB0aGUKCSAgbWFjcm8sIEkgd2lsbCB1bmNvbW1lbnQgdGhlIGNvZGUgaW4KCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvcjo6R2V0VXNlck1hY3Jvc0RpcmVjdG9yeSgpIHRvCgkgIGFjdGl2YXRlIGV4ZWN1dGluZyB0aGUgbWFjcm9zIGluIFZTIDcuMSwgdG9vLgoKMjAwOC0wMi0xNSAxMToyMiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtU2V0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4OiBFTkg6IENsZWFudXAgYnVpbGRpbmcgb2YgT1MgWCBidW5kbGUKCSAgY29udGVudAoKCSAgIC0gRml4ZXMgcmVwZWF0ZWQgcmVidWlsZCBvZiBidW5kbGVzIGJ5IE1ha2VmaWxlIGdlbmVyYXRvcnMKCSAgIC0gQWRkIHNwZWNpYWwgcnVsZXMgdG8gY29weSBzb3VyY2VzIHRvIHRoZWlyCgkgICAgIE1BQ09TWF9QQUNLQUdFX0xPQ0FUSU9OIGJ1bmRsZSBkaXJlY3RvcnkKCSAgIC0gUmVtb3ZlIE1hY09TWF9Db250ZW50IGxhbmd1YWdlIGhhY2sKCSAgICAgLSBSZW1vdmUgRVhUUkFfQ09OVEVOVCBwcm9wZXJ0eQoJICAgICAtIFJlbW92ZSBNQUNPU1hfQ09OVEVOVAoJICAgICAtIFJlbW92ZSBjb3JyZXNwb25kaW5nIHNwZWNpYWwgY2FzZXMgaW4gb2JqZWN0IG5hbWVzCgoyMDA4LTAyLTE1IDEwOjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDYyOTQsCgkgIGNvcnJlY3QgdXJsIGZvciBuc2lzCgoyMDA4LTAyLTE1IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMTQgMjA6MTggIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4OiBFTkg6IGVuYWJsZSBjb2xvciBpbiB0aGUKCSAgZWNsaXBzZSBnZW5lcmF0b3IsIHRoZXJlIGRvZXNuJ3Qgc2VlbSB0byBiZSBwcm9ibGVtcwoKCSAgQWxleAoKMjAwOC0wMi0xNCAxOTo1OCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jeHgsIFFDTWFrZUNhY2hlVmlldy5jeHgsCgkgIFFDTWFrZUNhY2hlVmlldy5oOgoJICBFTkg6CUNvbnZlcnQgbmF0aXZlIHBhdGhzIGZyb20gUUZpbGVEaWFsb2cgYW5kCgkgIFFEaXJNb2RlbC9RQ29tcGxldGVyLiAgQlVHOiAgQmxvY2sgcG9zc2libGUgY29tcGxldGlvbiBsb29wLgoKMjAwOC0wMi0xNCAxODoxOCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cC5jeHgsIENNYWtlU2V0dXBEaWFsb2cuY3h4LAoJICBDTWFrZVNldHVwRGlhbG9nLmgsIFFDTWFrZS5jeHgsIFFDTWFrZUNhY2hlVmlldy5jeHg6CgkgIEVOSDoJQWRkIHNob3J0Y3V0IHRvIHN0YXJ0IHNlYXJjaC9maWx0ZXIuCSAgICBBIGJpdCBvZgoJICBjbGVhbnVwLgkgIERpc2FibGUgdGFiIG5hdmlnYXRpb24gaW4gY2FjaGUgdmFyaWFibGUgbGlzdC4KCSAgICAgIEVuYWJsZSBob21lL2VuZCBrZXlzLgoKCSAgQlVHOglFbnN1cmUgY3VycmVudGx5IGVkaXRlZCB2YWx1ZXMgYXJlIHNhdmVkIGJlZm9yZSBkb2luZwoJICBjb25maWd1cmUuCgoyMDA4LTAyLTE0IDE2OjQyICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbWFrZS5jeHg6IEVOSDogQWRkIGdsb2JhbCBwcm9wZXJ0eQoJICBBTExPV19EVVBMSUNBVEVfQ1VTVE9NX1RBUkdFVFMgdG8gaGVscCBleGlzdGluZyBwcm9qZWN0cyB0aGF0CgkgIGRlcGVuZCBvbiBoYXZpbmcgZHVwbGljYXRlIGN1c3RvbSB0YXJnZXRzLiAgSXQgaXMgYWxsb3dlZCBvbmx5CgkgIGZvciBNYWtlZmlsZSBnZW5lcmF0b3JzLiAgU2VlIGJ1ZyM2MzQ4LgoKMjAwOC0wMi0xNCAxNTozMSAga2luZwoKCSogTW9kdWxlcy9NYWNPU1hCdW5kbGVJbmZvLnBsaXN0LmluLAoJICBNb2R1bGVzL01hY09TWEZyYW1ld29ya0luZm8ucGxpc3QuaW4sCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4OgoJICBFTkg6IEFsbG93IG11bHRpcGxlIE9TIFggYXBwbGljYXRpb25zIGJ1bmRsZXMgdG8gYmUgY3JlYXRlZCBpbiBhCgkgIHNpbmdsZSBidWlsZCBkaXJlY3RvcnkuICBDb252ZXJ0ZWQgSW5mby5wbGlzdCBmaWxlcyB0byBiZQoJICBnZW5lcmF0ZWQgZGlyZWN0bHkgaW5zdGVhZCBvZiBjb25maWd1cmVkIHdpdGggbWFrZSB2YXJpYWJsZXMuCgkgIFRoZSBNQUNPU1hfQlVORExFXyogdmFyaWFibGVzIGFyZSBub3cgcHJvcGVydGllcyAoYW5kIHZhcnMgZm9yCgkgIGNvbXBhdGliaWxpdHkpLgoKMjAwOC0wMi0xNCAxNTowNiAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jeHgsIENNYWtlU2V0dXBEaWFsb2cuaDogRU5IOgoJICBtYWtlIHN1cmUgaHRtbCA8ID4gJiBzdHVmZiBpcyBlc2NhcGVkIGZvciB0aGUgb3V0cHV0IHdpbmRvdwoKMjAwOC0wMi0xNCAxMzozNiAga2luZwoKCSogTW9kdWxlcy9DVGVzdFRhcmdldHMuY21ha2UsIFNvdXJjZS9jbURlZmluZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbURlZmluZVByb3BlcnR5Q29tbWFuZC5oLAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvUHJvcGVydGllcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGVkIERFRklORV9QUk9QRVJUWQoJICBjb21tYW5kIHRvIGJlIG1vcmUgZXh0ZW5kaWJsZSBhbmQgbW9yZSBjb25zaXN0ZW50IHdpdGggbmV3CgkgIFNFVF9QUk9QRVJUWSBhbmQgR0VUX1BST1BFUlRZIHNpZ25hdHVyZXMuCgoyMDA4LTAyLTE0IDExOjU4ICBraW5nCgoJKiBNb2R1bGVzL0NUZXN0VGFyZ2V0cy5jbWFrZSwgU291cmNlL2NtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBSZS1lbmFibGUKCSAgZGlhZ25vc2lzIG9mIG5vbi11bmlxdWUgdGFyZ2V0IG5hbWVzLgoKCSAgICAtIFJlLWVuYWJsZSBlbmZvcmNlbWVudCBpbiBjbU1ha2VmaWxlOjpFbmZvcmNlVW5pcXVlTmFtZQoJICAgIC0gSW1wcm92ZSBlcnJvciBtZXNzYWdlIHRvIGhlbHAgdXNlciByZXNvbHZlIHRoZSBwcm9ibGVtCgkgICAgLSBGaXggTW9kdWxlcy9DVGVzdFRhcmdldHMuY21ha2UgdG8gbm90IGR1cGxpY2F0ZSB0ZXN0aW5nCgkgIHRhcmdldHMKCSAgICAtIE1vdmUgY29tbWFuZHMgdXNlZCBieSB0aGUgY2hhbmdlcyB0bwoJICBNb2R1bGVzL0NUZXN0VGFyZ2V0cy5jbWFrZQoJICAgICAgdG8gYnVpbGQgZHVyaW5nIGJvb3RzdHJhcDogREVGSU5FX1BST1BFUlRZLCBHRVRfUFJPUEVSVFkKCjIwMDgtMDItMTQgMTA6NTAgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZUZvcmNlQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENDb21waWxlci5jbWFrZSwKCSAgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6IEVOSDogUmVtb3ZlIHVubmVjZXNzYXJ5IGNvbXBpbGVyCgkgIGZvcmNlIG1hY3Jvcy4gIFRoZSBjb21waWxlciBJRCBjYW4gbm93IGJlIGRldGVjdGVkIHdpdGhvdXQKCSAgbGlua2luZyBhbiBleGVjdXRhYmxlLgoKMjAwOC0wMi0xNCAwOToxNCAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3h4OiBFTkg6IGFkZCBhIGNoZWNrIGJlZm9yZQoJICBkZWxldGUgY2FjaGUKCjIwMDgtMDItMTQgMDg6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9RdERpYWxvZy9RQ01ha2UuY3h4OiBFTkg6IGRvIG5vdCBzaG93IHVuaXRpdGlhbGl6ZWQKCSAgZW50cmllcwoKMjAwOC0wMi0xNCAwMToxMSAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOgoJICBCVUc6CUZpeCBlcnJvciB3aGVuIHBhdGhzIGhhdmUgKyBpbiB0aGVtLiAoc3BlY2lhbCByZWdleAoJICBjaGFyYWN0ZXJzKQoKMjAwOC0wMi0xNCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTEzIDE3OjAwICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBFTkg6IGZpeCBhZHZhbmNlZCBidWcKCjIwMDgtMDItMTMgMTU6MjkgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtEZXBlbmRzLmN4eCwgY21Db21wdXRlTGlua0RlcGVuZHMuaDogQlVHOgoJICBVcGRhdGUgY21Db21wdXRlTGlua0RlcGVuZHMgdG8gc3VwcG9ydCBsZWFkaW5nL3RyYWlsaW5nCgkgIHdoaXRlc3BhY2Ugc3RyaXBwaW5nIG9mZiBsaW5rIGl0ZW1zIGZvciBjb21wYXRpYmlsaXR5LgoKMjAwOC0wMi0xMyAxNDo0NyAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eDoKCSAgRU5IOiBBZGQgb3B0aW9uIHRvIGJvb3RzdHJhcCBzY3JpcHQgdG8gZW5hYmxlIFF0IGRpYWxvZy4KCgkgICAgLSBBZGQgLS1xdC1ndWkgYW5kIC0tbm8tcXQtZ3VpIG9wdGlvbnMKCSAgICAtIEFkZCAtLXF0LXFtYWtlPTxxbWFrZT4gb3B0aW9uIHRvIGhlbHAgbG9jYXRlIFF0CgkgICAgLSBCdWlsZCBtb3JlIGNvbW1hbmRzIGR1cmluZyBib290c3RyYXAgdG8gaGVscCBGaW5kUXQ0LmNtYWtlOgoJICAgICAgTUFUSCwgR0VUX0RJUkVDVE9SWV9QUk9QRVJUWSwgRVhFQ1VURV9QUk9DRVNTLAoJICAgICAgU0VQQVJBVEVfQVJHVU1FTlRTCgkgICAgLSBCb290c3RyYXBwaW5nIHdpdGggdGhlIGNtYWtlLWd1aSBpcyBub3cgcG9zc2libGUgaW4gTVN5cwoKMjAwOC0wMi0xMyAxNDozNSAga2luZwoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6IEZpeCBGaW5kUXQ0LmNtYWtlCgkgIFFUNF9DUkVBVEVfTU9DX0NPTU1BTkQgbWFjcm8gdG8gd29yayB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aAoJICB3aGlsZSB1c2luZyB0aGUgQCBzeW50YXggb24gTVNZUyBidWlsZHMuCgoyMDA4LTAyLTEzIDEzOjU4ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgUUNNYWtlQ2FjaGVWaWV3LmN4eDoKCSAgRU5IOiBSZW1vdmUgQ3VycmVudENoYW5nZWQgZnJvbSB0aGUgdGFibGUgdmlldydzIGVkaXQgdHJpZ2dlcnMuCgkgIEl0IHJlc3VsdHMgaW4gZWRpdG9yIGlzc3VlcyB3aGVuIG1vZGlmeWluZyB0aGUgdmlldy4KCSAgUmVtb3ZlIHdvcmthcm91bmRzIGZvciBzb21lIG9mIHRob3NlIGlzc3Vlcy4KCjIwMDgtMDItMTMgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0xMiAxNzoyMiAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IGRvIG5vdCBleHBhbmQgcmVndWxhciB2YXJzCgkgIGhlcmUKCjIwMDgtMDItMTIgMTA6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBEaXNhYmxlIGVuZm9yY2VtZW50IG9mIHVuaXF1ZSB0YXJnZXQKCSAgbmFtZXMgdW50aWwgQ1Rlc3RUYXJnZXRzIGNhbiBiZSBmaXhlZC4KCjIwMDgtMDItMTIgMDk6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaCwgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIFF0RGlhbG9nL0NNYWtlU2V0dXAuY3h4LAoJICBRdERpYWxvZy9RQ01ha2UuY3h4OiBFTkg6IGZpeCBtYWtlIGVkaXRfY2FjaGUgZm9yIGNtYWtlLWd1aQoKMjAwOC0wMi0xMiAwOToxOCAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IFNUWUxFOiBGaXggbGluZS10b28tbG9uZwoJICBpbiBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuCgoyMDA4LTAyLTEyIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMTEgMjA6MTMgIGtpbmcKCgkqIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eDogRU5IOiBVcGRhdGUgZG9jdW1lbnRhdGlvbiBvZgoJICBFWEVDVVRBQkxFX09VVFBVVF9QQVRIIGFuZCBMSUJSQVJZX09VVFBVVF9QQVRIIHRvIHJlZmVyZW5jZSB0aGVpcgoJICByZXBsYWNlbWVudHMuCgoyMDA4LTAyLTExIDE3OjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHg6IENPTVA6IEZpeAoJICBzaGFkb3dlZCBsb2NhbCB2YXJpYWJsZSB3YXJuaW5nLgoKMjAwOC0wMi0xMSAxNzowMSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9lQ29zLmNtYWtlOiBFTkg6IEZpeCBlQ29zLmNtYWtlIHRvIG5vdCByZXF1aXJlIGEKCSAgZm9yY2VkIGNvbXBpbGVyCgoJICAgIC0gU2VhcmNoIGZvciBsaWJ0YXJnZXQuYSBleHBsaWNpdGx5CgkgICAgLSBEbyBub3QgY29tcGxhaW4gYWJvdXQgY29tcGlsZXIgaWQgZHVyaW5nIHRyeS1jb21waWxlCgoyMDA4LTAyLTExIDE3OjAwICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlOiBFTkg6IFdoZW4gZGV0ZWN0aW5nIHRoZQoJICBjb21waWxlciBpZCB0cnkgY29tcGlsaW5nIG9ubHkgdG8gYW4gb2JqZWN0IGZpbGUuCgoyMDA4LTAyLTExIDE3OjAwICBraW5nCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBCVUc6IEZJTkRfTElCUkFSWSBzaG91bGQgbm90CgkgIHJlcXVpcmUgQ01BS0VfU0laRU9GX1ZPSURfUCB0byBiZSBzZXQuCgoyMDA4LTAyLTExIDE3OjAwICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBnbG9iYWwgY29tcHV0ZWQgcHJvcGVydHkKCSAgSU5fVFJZX0NPTVBJTEUuCgoyMDA4LTAyLTExIDE1OjMxICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlOiBFTkg6IFJlbW92ZSBDTUFLRV9BTlNJX0NGTEFHUwoJICB2YXJpYWJsZSBhbmQgaW5zdGVhZCBhbHdheXMgYWRkIGFuc2kgZmxhZ3MgdG8KCSAgQ01BS0VfQ19DT01QSUxFX09CSkVDVC4gIFdlIHNob3VsZCBub3QgcmVxdWlyZSBldmVyeSBwcm9qZWN0IHRvCgkgIHJlZmVyZW5jZSBDTUFLRV9BTlNJX0NGTEFHUy4KCjIwMDgtMDItMTEgMTM6MzUgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsCgkgIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsCgkgIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtVGFyZ2V0LmN4eDogRU5IOiBFbmZvcmNlIGdsb2JhbCB0YXJnZXQgbmFtZQoJICB1bmlxdWVuZXNzLgoKCSAgICAtIEVycm9yIGlmIGltcG9ydGVkIHRhcmdldCBpcyBpbnZvbHZlZCBpbiBjb25mbGljdAoJICAgIC0gRXJyb3IgZm9yIG5vbi1pbXBvcnRlZCB0YXJnZXQgY29uZmxpY3QgdW5sZXNzCgkgICAgICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSA8PSAyLjQKCSAgICAtIEluY2x1ZGUgT1VUUFVUX05BTUUgcHJvcGVydHkgaW4gZXJyb3IgbWVzc2FnZQoJICAgIC0gVXBkYXRlIGFkZF9leGVjdXRhYmxlIGFuZCBhZGRfbGlicmFyeSBjb21tYW5kIGRvY3VtZW50YXRpb24KCjIwMDgtMDItMTEgMTM6MzUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEVOSDogQWRkCgkgIGNtTWFrZWZpbGU6Ok5lZWRCYWNrd2FyZHNDb21wYXRpYmlsaXR5IG1ldGhvZCB0byBwYXNzIHRocm91Z2ggdG8KCSAgY21Mb2NhbEdlbmVyYXRvcjo6TmVlZEJhY2t3YXJkc0NvbXBhdGliaWxpdHkgZm9yIGNvbnZlbmllbmNlLgoKMjAwOC0wMi0xMSAxMDozMSAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IEJVRzogRml4CgkgIGV4cG9ydF9saWJyYXJ5X2RlcGVuZGVuY2llcyBjb21tYW5kIHRvIHByb2R1Y2UgYSBmaWxlIHRoYXQgaXMKCSAgY29tcGF0aWJsZSB3aXRoIENNYWtlIDIuNC4KCjIwMDgtMDItMTEgMTA6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbXB1dGVMaW5rRGVwZW5kcy5jeHg6IEJVRzogRml4CgkgIGNtQ29tcHV0ZUxpbmtEZXBlbmRzOjpBZGRWYXJMaW5rRW50cmllcwoKCSAgICAtIFRyYWNrIGxpbmsgdHlwZSBjb3JyZWN0bHkKCSAgICAtIFVzZSBfTElOS19UWVBFIHZhcmlhYmxlcyBleHBvcnRlZCBieSBDTWFrZSAyLjQKCjIwMDgtMDItMTEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0xMCAxNzoxOSAgYWxleAoKCSogU291cmNlL2NtSWZDb21tYW5kLmg6IFNUWUxFOiBkb2N1bWVudCB0aGF0IGlmKENPTU1BTkQpIHdvcmtzIGFsc28KCSAgZm9yIG1hY3JvcyBhbmQgZnVuY3Rpb25zCgoJICBBbGV4CgoyMDA4LTAyLTEwIDExOjM3ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBCVUc6IEZpeCByZWNlbnQgZmluZF9saWJyYXJ5CgkgIGNoYW5nZSB0byBsb29rIGZvciB1c2VyLXNwZWNpZmllZCBuYW1lIGZpcnN0IHRvIGRvIHNvIG9ubHkgaWYgdGhlCgkgIG5hbWUgbWF0Y2hlcyBhIHZhbGlkIGxpYnJhcnkgZXh0ZW5zaW9uLgoKMjAwOC0wMi0xMCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTA5IDEwOjA1ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS92b2dvbl9yZWxlYXNlLmNtYWtlOiBFTkg6IGJ1aWxkIHRoZSBxdCBndWkKCjIwMDgtMDItMDkgMDk6NTMgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2UsIENNYWtlQ1BhY2tPcHRpb25zLmNtYWtlLmluLAoJICBTb3VyY2UvUXREaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9RdERpYWxvZy9RdERpYWxvZ0NQYWNrLmNtYWtlLmluOiBFTkg6IG1ha2UgaXQgc28gY21ha2UtZ3VpCgkgIG9ubHkgaW5zdGFsbHMgaWYgcXQgaXMgc3RhdGljIG9uIHdpbmRvd3MKCjIwMDgtMDItMDkgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0wOCAxMzo0NyAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3h4OiBCVUc6ICBNYWtlIHN1cmUgZWRpdG9yCgkgIGNsb3NlcyB3aGVuIGRlbGV0aW5nIGNhY2hlIGVudHJpZXMuCgoyMDA4LTAyLTA4IDEyOjAxICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogIEJldHRlciB3YXkgdG8gaGF2ZSBlc2NhcGluZyBkb25lCgkgIGNvcnJlY3RseSBmb3IgYWxsIGdlbmVyYXRvcnMuCgoyMDA4LTAyLTA4IDExOjI2ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvUUNNYWtlLmN4eDogRU5IOiAgTmVlZCB0byBwaWNrIHVwIHRoZQoJICBQcmVMb2FkLmNtYWtlIGZpbGVzLgoKMjAwOC0wMi0wOCAxMDo0MiAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cC5jeHgsIFFDTWFrZUNhY2hlVmlldy5jeHg6IENPTVA6IEZpeAoJICBidWlsZCB3aXRoIFF0IDQuMi4gIEJVRzogIEZpeCBuZXcgZWRpdG9ycyBzdGVhbGluZyBmb2N1cyB3aGlsZQoJICB0eXBpbmcgc2VhcmNoIHRleHQuICBFTkg6ICBMb29rIGZvciB0cmFuc2xhdGlvbiBpbiBkYXRhIGRpciwgbm90CgkgIGJpbiBkaXIuCgoyMDA4LTAyLTA4IDA5OjI0ICBraW5nCgoJKiBUZXN0cy9EZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0OiBCVUc6IE5lZWQgQU5TSSBDLgoKMjAwOC0wMi0wOCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTA3IDIzOjI2ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEJVRzoJRml4IGFyZyBmb3IgbW9jIHBhcmFtZXRlciBmaWxlIHNvIGl0IHdvcmtzIHdpdGggdW5peAoJICBtYWtlZmlsZXMsIHdoZW4gdGhlCSAgICBidWlsZCBkaXIgaGFzIGEgc3BhY2UgaW4gaXQuCgoyMDA4LTAyLTA3IDE4OjI0ICBhbGV4CgoJKiBTb3VyY2UvY21FeHRyYUVjbGlwc2VDRFQ0R2VuZXJhdG9yLmN4eDogcGF0Y2ggZnJvbSBNaWd1ZWwgQlVHOgoJICBmaXggIzU0OTY6IGVjbGlwc2UgY2FuJ3QgbG9hZCBwcm9qZWN0cyB3aGVyZSB0aGUgYnVpbGQgZGlyIGlzIGEKCSAgc3ViZGlyIG9mIHRoZSBzcmMgZGlyCgoJICBBbGV4CgoyMDA4LTAyLTA3IDE3OjU4ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBRQ01ha2VDYWNoZVZpZXcuY3h4LCBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgRU5IOglTaG93IGNhY2hlIHZhcmlhYmxlIG5hbWUgaW4gdGl0bGUgb2YgZmlsZSBkaWFsb2dzLgoKMjAwOC0wMi0wNyAxNjo0OSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IEF2b2lkCgkgIGNvbXB1dGluZyBsaW5rIGluZm9ybWF0aW9uIGZvciBzdGF0aWMgbGlicmFyeSB0YXJnZXRzLiAgVGhleSBkbwoJICBub3QgbGluay4KCjIwMDgtMDItMDcgMTY6MjYgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4OiB0d28gcGF0Y2hlcyBmcm9tIE1pZ3VlbDoKCSAgQlVHOiBmaXggIzU4MTk6IHB1dCBjb21waWxlIGRlZmluaXRpb25zIGludG8gdGhlIGVjbGlwc2UgcHJvamVjdAoJICBmaWxlcyBzbyBlY2xpcHNlIGhhbmRsZXMgaWZkZWYgYmxjb2tzIGNvcnJlY3RseSBTVFlMRTogbWFrZSB0aGUKCSAgY29kZSBmb3IgZmlsdGVyaW5nIHNvbWUgZ2xvYmFsIHRhcmdldHMgb3V0IG5pY2VyCgoJICBBbGV4CgoyMDA4LTAyLTA3IDE2OjI0ICBraW5nCgoJKiBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuY3h4OiBDT01QOiBBZGQgbWlzc2luZyBhc3NlcnQKCSAgaW5jbHVkZS4KCjIwMDgtMDItMDcgMTY6MjIgIGFsZXgKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eDogU1RZTEU6IGFkZCBzb21lIGNvbW1lbnRzCgoJICBBbGV4CgoyMDA4LTAyLTA3IDE2OjE0ICBraW5nCgoJKiBUZXN0cy9EZXBlbmRlbmN5L0Nhc2UyLzogQ01ha2VMaXN0cy50eHQsIGZvbzEuYywgZm9vMWIuYywKCSAgZm9vMmIuYywgZm9vMy5jLCBmb28zYi5jOiBFTkg6IE1ha2UgRGVwZW5kZW5jeSB0ZXN0IENhc2UyIHJlcXVpcmUKCSAgdHdvIHRyYXZlcnNhbHMgb2YgYSBzdGF0aWMgbGlicmFyeSBsb29wLgoKMjAwOC0wMi0wNyAxNjoxNCAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNvbXB1dGVDb21wb25lbnRHcmFwaC5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVDb21wb25lbnRHcmFwaC5oLAoJICBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuY3h4LCBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuaCwKCSAgU291cmNlL2NtQ29tcHV0ZVRhcmdldERlcGVuZHMuY3h4LAoJICBTb3VyY2UvY21Db21wdXRlVGFyZ2V0RGVwZW5kcy5oLCBTb3VyY2UvY21HcmFwaEFkamFjZW5jeUxpc3QuaDoKCSAgRU5IOiBJbXByb3ZlIGxpbmsgbGluZSBnZW5lcmF0aW9uIGZvciBzdGF0aWMgbGlicmFyeSBjeWNsZXMuCgoJICAgIC0gTW92ZSBUYXJqYW4gYWxnb3JpdGhtIGZyb20gY21Db21wdXRlVGFyZ2V0RGVwZW5kcwoJICAgICAgaW50byBpdHMgb3duIGNsYXNzIGNtQ29tcHV0ZUNvbXBvbmVudEdyYXBoCgkgICAgLSBVc2UgY21Db21wdXRlQ29tcG9uZW50R3JhcGggdG8gaWRlbnRpZnkgdGhlIGNvbXBvbmVudCBEQUcKCSAgICAgIG9mIGxpbmsgZGVwZW5kZW5jaWVzIGluIGNtQ29tcHV0ZUxpbmtEZXBlbmRzCgkgICAgLSBFbWl0IG5vbi10cml2aWFsIGNvbXBvbmVudCBtZW1iZXJzIG1vcmUgdGhhbiBvbmNlIGJ1dCBhbHdheXMKCSAgICAgIGluIGEgY29udGlndW91cyBncm91cCBvbiB0aGUgbGluayBsaW5lCgoyMDA4LTAyLTA3IDEzOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6IG1ha2Ugc3VyZSBmaWxlcwoJICBhcmUgYmluYXJ5IGZvciBkb3dubG9hZCBhbmQgbWFrZSBzdGF0dXMgYSBwYWlyIG9mIHZhbHVlIHN0cmluZwoKMjAwOC0wMi0wNyAxMzoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUGtnQ29uZmlnLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDYxMTcgcGtnY29uZmlnCgoyMDA4LTAyLTA3IDExOjQzICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrT3B0aW9ucy5jbWFrZS5pbiwgU291cmNlL1F0RGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIGZvciB3aW5kb3dzIG9ubHkgYWxsb3cgYSBzdGF0aWMgcXQgZm9yIGluc3RhbGwgYW5kIE5TSVMgb2YKCSAgY21ha2UtZ3VpCgoyMDA4LTAyLTA3IDA4OjU1ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGNvbXBsZXggbXVzdAoJICBsaW5rIHRvIGN1cmwgbm93CgoyMDA4LTAyLTA3IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMDYgMjA6MTQgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4OiBCVUc6IEZpeAoJICBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24gdG8gaW5jbHVkZSB0aGUgdGFyZ2V0J3MgdXNlciBsaW5rCgkgIGRpcmVjdG9yaWVzIGluIHRoZSBydW50aW1lIHBhdGggY29tcHV0YXRpb24uCVRoaXMgYnVnIHdhcwoJICBpbnRyb2R1Y2VkIHdoZW4gY21PcmRlclJ1bnRpbWVEaXJlY3RvcmllcyB3YXMgaW50cm9kdWNlZC4KCjIwMDgtMDItMDYgMTc6MDIgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFBhY2thZ2VIYW5kbGVTdGFuZGFyZEFyZ3MuY21ha2U6IFNUWUxFOiB1c2UgYQoJICBmdW5jdGlvbiBpbnN0ZWFkIG9mIGEgbWFjcm8sIHRvIGtlZXAgRkFJTF9NRVNTQUdFIGxvY2FsIHBhdGNoCgkgIGZyb20gTWlndWVsCgoJICBBbGV4CgoyMDA4LTAyLTA2IDE1OjI2ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBFTkg6IE1ha2UgZmluZF9saWJyYXJ5IHRlc3QgZm9yCgkgIHRoZSBsaWJyYXJ5IGZpbGUgYXMgbmFtZWQgYmVmb3JlIHRyeWluZyBwcmVmaXhlcyBhbmQgc3VmZml4ZXMuCgkgIFRoaXMgd2lsbCBhbGxvdyB1c2VycyB0byBleHBsaWNpdGx5IHNlYXJjaCBmb3Igc3RhdGljIGxpYnJhcmllcwoJICBvbiB1bml4LiAgU2VlIGJ1ZyAjMTY0My4KCjIwMDgtMDItMDYgMTU6MjMgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmg6IFNUWUxFOiBJbXByb3ZlCgkgIGRvY3VtZW50YXRpb24gb2YgdGFyZ2V0X2xpbmtfbGlicmFyaWVzIGNvbW1hbmQgdG8gbWFrZQoJICB0YXJnZXQtbGV2ZWwgZGVwZW5kZW5jeSBleHBsaWNpdC4gIFNlZSBidWcgIzYwNDMuCgoyMDA4LTAyLTA2IDE1OjEwICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cC5jeHg6IEVOSDoJVXBkYXRlIHNvbWUgc3RyaW5ncyB0bwoJICBtYXRjaCBwcm9ncmFtIG5hbWUuCgoyMDA4LTAyLTA2IDE0OjUyICBraW5nCgoJKiBUZXN0cy86IENNYWtlTGlzdHMudHh0LCBEZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0LAoJICBEZXBlbmRlbmN5L0Nhc2UxL0NNYWtlTGlzdHMudHh0LCBEZXBlbmRlbmN5L0Nhc2UxL2EuYywKCSAgRGVwZW5kZW5jeS9DYXNlMS9iLmMsIERlcGVuZGVuY3kvQ2FzZTEvYjIuYywKCSAgRGVwZW5kZW5jeS9DYXNlMS9jLmMsIERlcGVuZGVuY3kvQ2FzZTEvYzIuYywKCSAgRGVwZW5kZW5jeS9DYXNlMS9kLmMsIERlcGVuZGVuY3kvQ2FzZTEvbWFpbi5jLAoJICBEZXBlbmRlbmN5L0Nhc2UyL0NNYWtlTGlzdHMudHh0LCBEZXBlbmRlbmN5L0Nhc2UyL2JhcjEuYywKCSAgRGVwZW5kZW5jeS9DYXNlMi9iYXIyLmMsIERlcGVuZGVuY3kvQ2FzZTIvYmFyMy5jLAoJICBEZXBlbmRlbmN5L0Nhc2UyL2ZvbzEuYywgRGVwZW5kZW5jeS9DYXNlMi9mb28yLmMsCgkgIERlcGVuZGVuY3kvQ2FzZTIvZm9vMy5jLCBEZXBlbmRlbmN5L0Nhc2UyL3pvdC5jOiBFTkg6IENvbWJpbmUgYWxsCgkgIGRlcGVuZGVuY3kqIHRlc3RzIGludG8gb25lIERlcGVuZGVuY3kgdGVzdC4gIEFkZCBtb3JlIGRpZmZpY3VsdAoJICB0ZXN0IGNhc2VzLgoKMjAwOC0wMi0wNiAxNDo0NSAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlU2V0dXAuY3h4OiBCVUc6CU9uIE1hYyBPUyBYLCBnaXZlIHRoZSBDTWFrZQoJICBsaWJyYXJ5IHRoZSBjb3JyZWN0IHBhdGggdG8gdGhlIGNtYWtlICAgICAgIGV4ZWN0dWFibGVzLiAgRml4ZXMKCSAgIzYyODYuCgoyMDA4LTAyLTA2IDE0OjIwICBraW5nCgoJKiBTb3VyY2UvY21FeHBvcnRCdWlsZEZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21FeHBvcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0SW5zdGFsbEZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFRlc3RzL0V4cG9ydEltcG9ydC9FeHBvcnQvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wcm92ZQoJICBleHBvcnRpbmcvaW1wb3J0aW5nIG9mIHRhcmdldHMKCgkgICAgLSBVc2UgcmVhbCBuYW1lIGluc3RlYWQgb2YgbGluayBmb3IgbG9jYXRpb24gb2YgdmVyc2lvbmVkCgkgIHRhcmdldHMKCSAgICAtIEVycm9yIHdoZW4gYSB0YXJnZXQgaXMgZXhwb3J0ZWQgbXVsdGlwbGUgdGltZXMKCjIwMDgtMDItMDYgMTQ6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogTWFrZSBzdXJlIGxpbmtpbmcgdG8gYSBzaGFyZWQgbGliIG9uCgkgIHdpbmRvd3MgdXNlcyBpbXBvcnQgbGlicmFyeSBhbmQgbm90IHRoZSBuZXcgcmVhbG5hbWUuCgoyMDA4LTAyLTA2IDE0OjA2ICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBCVUc6IERvIG5vdCBjcmVhdGUgdmVyc2lvbmVkIGV4ZWN1dGFibGUKCSAgbmFtZXMgb24gWGNvZGUgd2hlcmUgdGhleSBhcmUgbm90IHN1cHBvcnRlZC4KCjIwMDgtMDItMDYgMTM6MzQgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsCgkgIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oLCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDogV2hlbgoJICBsaW5raW5nIHRvIHZlcnNpb25lZCB0YXJnZXRzIHdob3NlIHJlYWwgZmlsZSBuYW1lIGlzIGtub3duIHBhc3MKCSAgdGhlIHJlYWwgbmFtZSB0byB0aGUgbGlua2VyIGluc3RlYWQgb2YgdGhlIHN5bWxpbmsgbmFtZS4KCjIwMDgtMDItMDYgMDk6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiByZW1vdmUgZGVidWcgcHJpbnQgc3R1ZmYKCjIwMDgtMDItMDYgMDk6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6CgkgIGFkZCBET1dOTE9BRCBvcHRpb24gdG8gRklMRSBjb21tYW5kCgoyMDA4LTAyLTA2IDA5OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEVOSDogY2hhbmdlIG5hbWUgb2YgcXQtZGlhbG9nCgoyMDA4LTAyLTA2IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMDUgMjM6MTAgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21Db21wdXRlVGFyZ2V0RGVwZW5kcy5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVUYXJnZXREZXBlbmRzLmgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFuYWx5emUKCSAgaW50ZXItdGFyZ2V0IGRlcGVuZGVuY2llcyB0byBzYWZlbHkgZml4IGN5Y2xlcwoKCSAgICAtIEN5Y2xlcyBtYXkgYmUgZm9ybWVkIGFtb25nIHN0YXRpYyBsaWJyYXJpZXMKCSAgICAtIE5hdGl2ZSBidWlsZCBzeXN0ZW0gc2hvdWxkIG5vdCBoYXZlIGN5Y2xlcyBpbiB0YXJnZXQgZGVwcwoJICAgIC0gQ3JlYXRlIGNtQ29tcHV0ZVRhcmdldERlcGVuZHMgdG8gYW5hbHl6ZSBkZXBlbmRlbmNpZXMKCSAgICAtIElkZW50aWZ5IGNvbm5lY2VkIGNvbXBvbmVudHMgYW5kIHVzZSB0aGVtIHRvIGZpeCBkZXBzCgkgICAgLSBEaWFnbm9zZSBjeWNsZXMgY29udGFpbmluZyBub24tU1RBVElDIHRhcmdldHMKCSAgICAtIEFkZCBkZWJ1ZyBtb2RlIHByb3BlcnR5IEdMT0JBTF9ERVBFTkRTX0RFQlVHX01PREUKCSAgICAtIFVzZSByZXN1bHRzIGluIGNtR2xvYmFsR2VuZXJhdG9yIGFzIHRhcmdldCBkaXJlY3QgZGVwZW5kcwoKMjAwOC0wMi0wNSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTA0IDE5OjAwICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogQ09NUDogQWRkIG1pc3NpbmcgaW5jbHVkZQoJICBmb3IgYXNzZXJ0LgoKMjAwOC0wMi0wNCAxNzowMyAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtSW5zdGFsbENvbW1hbmQuaCwKCSAgY21JbnN0YWxsQ29tbWFuZEFyZ3VtZW50cy5jeHgsIGNtSW5zdGFsbENvbW1hbmRBcmd1bWVudHMuaCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDoKCSAgQWxsb3cgc2VwYXJhdGUgaW5zdGFsbGF0aW9uIG9mIHNoYXJlZCBsaWJzIGFuZCB0aGVpciBsaW5rcy4KCgkgICAgLSBBZGQgTkFNRUxJTktfT05MWSBhbmQgTkFNRUxJTktfU0tJUCB0byBJTlNUQUxMIGNvbW1hbmQKCSAgICAtIE9wdGlvbnMgc2VsZWN0IGEgXCJuYW1lbGlua1wiIG1vZGUKCSAgICAtIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvciBzZWxlY3RzIGZpbGVzL2xpbmsgYmFzZWQgb24gbW9kZQoJICAgIC0gU2VlIGJ1ZyAjNDQxOQoKMjAwOC0wMi0wNCAxNjowNSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBzdXJlCgkgIEFMTF9CVUlMRCBvbmx5IHNob3dzIHVwIG9uY2UKCjIwMDgtMDItMDQgMTU6MjIgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlLCBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmN4eCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oLCBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEFkZGVkCgkgIFRBUkdFVF9BUkNISVZFU19NQVlfQkVfU0hBUkVEX0xJQlMgZ2xvYmFsIHByb3BlcnR5IHRvIGhlbHAKCSAgY29tcHV0ZSBwcm9wZXIgcnBhdGggaW5mb3JtYXRpb24gb24gQUlYIHdoZW4gc2hhcmVkIGxpYnJhcmllcwoJICBoYXZlIG5hbWVzIGxpa2UgImxpYmZvby5hIi4KCjIwMDgtMDItMDQgMTA6MDQgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENDb21waWxlci5jbWFrZSwKCSAgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6IEJVRzogV2hlbiBjb25maWd1cmluZyBjb21waWxlcgoJICBpbmZvcm1hdGlvbiBmaWxlcyBpbnRvIHRoZSBDTWFrZUZpbGVzIGRpcmVjdG9yeSBpbiB0aGUgcHJvamVjdAoJICBidWlsZCB0cmVlLCB1c2UgSU1NRURJQVRFIG9wdGlvbiBmb3IgQ09ORklHVVJFX0ZJTEUgZXhwbGljaXRseS4KCSAgSXQgaXMgbmVlZGVkIGluIGNhc2UgdGhlIHVzZXIgc2V0cyBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWQoJICB0byAyLjAgb3IgbG93ZXIuCgoyMDA4LTAyLTA0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDItMDMgMTc6MjQgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsIENNYWtlRm9yY2VDb21waWxlci5jbWFrZSwKCSAgQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLCBDTWFrZVRlc3RDWFhDb21waWxlci5jbWFrZTogQlVHOiBXaGVuCgkgIGZvcmNpbmcgdGhlIEMgYW5kIENYWCBjb21waWxlcnMgZG8gbm90IHRyeSB0byBkZXRlY3QgdGhlIEFCSQoJICBpbmZvcm1hdGlvbi4JQ2xlYW51cCBjb25maWd1cmVkIGxhbmd1YWdlIGNvbXBpbGVyIGluZm8gZmlsZXMgYnkKCSAgYWx3YXlzIHVzaW5nIEBPTkxZLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzYyOTcuCgoyMDA4LTAyLTAzIDA4OjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvSU9TdHJlYW0uY3h4OiBDT01QOiBBdm9pZCB3YXJuaW5nIGluIGt3c3lzCgkgIElPU3RyZWFtLmN4eCB3aGVuIHRoZSBoZWxwZXIgZnVuY3Rpb25zIGFyZSBub3QgbmVlZGVkLiAgRGVmaW5lCgkgIG9uZSBwdWJsaWMgc3ltYm9sIHRvIGF2b2lkIGNvbXBsYWludHMgZnJvbSBhcmNoaXZlcnMgYWJvdXQgZW1wdHkKCSAgb2JqZWN0IGZpbGVzLgoKMjAwOC0wMi0wMyAwODo1NyAga2luZwoKCSogVGVzdHMvRXhwb3J0SW1wb3J0L0V4cG9ydC86IHRlc3RFeGUxLmMsIHRlc3RFeGUxbGliLmMsCgkgIHRlc3RMaWIxLmMsIHRlc3RMaWIyLmM6IENPTVA6IENvbnZlcnQgQyBmdW5jdGlvbiBwcm90b3R5cGVzIHRvCgkgIHVzZSAodm9pZCkgaW5zdGVhZCBvZiAoKS4KCjIwMDgtMDItMDMgMDg6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEJVRzogY21DVGVzdDo6R2V0Q29uZmlnVHlwZQoJICBzaG91bGQgcmV0dXJuIHRoZSBzdHJpbmcgYnkgcmVmZXJlbmNlLXRvLWNvbnN0IHNvIHRoYXQgY2FsbGVycwoJICBtYXkgdXNlIC5jX3N0cigpIHNhZmVseS4KCjIwMDgtMDItMDMgMDg6MjAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1JbmZvcm1hdGlvbi5jeHg6IENPTVA6IEZpeCB3YXJuaW5nIGluCgkgIFN5c3RlbUluZm9ybWF0aW9uLmN4eCBhYm91dCBwb3NzaWJseSBpbmNvcnJlY3QgYXNzaWdubWVudCBpbiBpZgoJICBjb25kaXRpb24uCgoyMDA4LTAyLTAzIDA4OjE0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBDT01QOiBGaXggdW5yZWFjaGFibGUgY29kZQoJICB3YXJuaW5nLiAgUmVtb3ZlIHJ1bnRpbWUgdGVzdCBvZiBjb25zdGFudCBpbmZvcm1hdGlvbi4KCjIwMDgtMDItMDMgMDg6MDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9oYXNoX3NldC5oeHguaW46IENPTVA6IFJlbW92ZSBpbmxpbmUga2V5d29yZCBmcm9tCgkgIGZvcndhcmQgZGVjbGFyYXRpb24gZm9yIFZTOS4KCjIwMDgtMDItMDMgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMi0wMiAxNjoxOCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbUluZm9ybWF0aW9uLmN4eDogRU5IOiBmaXggaW5maW5pdGUgbG9vcCBmcm9tCgkgIHNpemVfdCBjaGFuZ2UKCjIwMDgtMDItMDIgMDg6NTggIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBOZXRCU0QuY21ha2UsIGtGcmVlQlNELmNtYWtlOiBFTkg6IEVuYWJsZQoJICBkZXBlbmRlbnQgbGlicmFyeSBzZWFyY2ggcGF0aHMgb24gbW9yZSBwbGF0Zm9ybXMKCgkgICAgLSBOZXRCU0QgbmVlZHMgZGVwZW5kZW50IGxpYnJhcnkgcGF0aHMgaW4gLXJwYXRoLWxpbmsgb3B0aW9uLgoJICAgIC0ga0ZyZWVCU0QgbmVlZHMgZGVwZW5kZW50IGxpYnJhcnkgcGF0aHMgaW4gLXJwYXRoLWxpbmsgb3B0aW9uLgoKMjAwOC0wMi0wMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAyLTAxIDE2OjE3ICBtYXJ0aW5rCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBkaXNhYmxlIHRlc3QgZm9yIHZzIDcwIGFzIGRldmVudgoJICByYW5kb21seSBzZWdmYXVsdHMgd2hlbiBidWlsZGluZyB0aGUgc3ViLXByb2plY3QKCjIwMDgtMDItMDEgMTY6MDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogcmVhbGx5IEJpbGwsIHVzaW5nIEtlbidzCgkgIGNoZWNrb3V0LCBmaXggb3V0cHV0IGluIGN0ZXN0IHNvIGNsZWFuIG91dHB1dCBpbiBidWlsZCBhbmQgdGVzdAoJICBpcyBub3QgbG9zdCwgYWxzbyBkaXNwbGF5IHRoZSBjb21tYW5kIGxpbmVzIHVzZWQKCjIwMDgtMDItMDEgMTQ6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCB0eXBvCgkgIHJlc3VsdGluZyBpbiBjb25mdXNpbmcgZXJyb3IgbWVzc2FnZSBmcm9tCgkgIGNtRXhwb3J0SW5zdGFsbEZpbGVHZW5lcmF0b3IuCgoyMDA4LTAyLTAxIDEzOjUyICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEJVRzoJV2hlbiBwcmVzZXJ2aW5nIHJlbGF0aXZlIHBhdGhzIGZvciBtb2MgZ2VuZXJhdGVkIGZpbGVzLAoJICBhbHNvIGNvbnNpZGVyIHBhdGhzIHRvIGhlYWRlcnMgaW4gdGhlIGJ1aWxkIGRpcmVjdG9yeS4KCjIwMDgtMDItMDEgMTM6MTggIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBNZXJnZSBjaGFuZ2VzIGZyb20gbWFpbiB0cmVlCgkgIGludG8gVlRLLTUtMCBicmFuY2guIChjdnMgLXEgdXAgLWoxLjEzNSAtajEuMTM2CgkgIFV0aWxpdGllcy9rd3N5cy9DTWFrZUxpc3RzLnR4dCkKCjIwMDgtMDItMDEgMTM6MDggIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0V4cG9ydC9DTWFrZUxpc3RzLnR4dDogQlVHOiBSZW1vdmUKCSAgSW5zdGFsbE5hbWVGaXh1cFBhdGggZnJvbSBjbVRhcmdldCBhbmQgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLgoKCSAgICAtIE1vdGl2YXRpb246CgkgICAgICAtIEl0IGRlcGVuZGVkIG9uIHRoZSBvcmRlciBvZiBpbnN0YWxsYXRpb24KCSAgICAgIC0gSXQgc3VwcG9ydGVkIG9ubHkgYSBzaW5nbGUgZGVzdGluYXRpb24gZm9yIGVhY2ggdGFyZ2V0CgkgICAgICAtIEl0IGNyZWF0ZWQgZGlyZWN0b3J5IHBvcnRpb25zIG9mIGFuIGluc3RhbGwgbmFtZSB3aXRob3V0CgkgIHVzZXIgcmVxdWVzdAoJICAgIC0gVXBkYXRlZCBFeHBvcnRJbXBvcnQgdGVzdCB0byBpbnN0YWxsIHRhcmdldHMgaW4gYW4gb3JkZXIgdGhhdAoJICBleHBvZWQKCSAgICAgIHRoaXMgYnVnCgoyMDA4LTAyLTAxIDEyOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IGZpeCB3YXJuaW5ncwoKMjAwOC0wMi0wMSAxMjowMiAgY2xpbnRvbgoKCSogTW9kdWxlcy9Vc2VRdDQuY21ha2U6IEVOSDogIFVzZSBuZXcgQ09NUElMRV9ERUZJTklUSU9OU18qIHdpdGgKCSAgc2V0X3Byb3BlcnR5IHRvCWFkZCBRdCByZWxlYXNlL2RlYnVnIGRlZmluZXMuCgoyMDA4LTAyLTAxIDExOjQ4ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5jeHg6IEVOSDoKCSAgU2hvdyB2ZXJzaW9uIG51bWJlciBpbiB3aW5kb3cgdGl0bGUuCgoyMDA4LTAyLTAxIDExOjQwICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IGZpeCBtb3JlIHdhcm5pbmdzCgoyMDA4LTAyLTAxIDExOjMzICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1JbmZvcm1hdGlvbi5jeHg6IEVOSDogZml4IG1vcmUgd2FybmluZ3MKCjIwMDgtMDItMDEgMTE6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1JbmZvcm1hdGlvbi5jeHg6IEVOSDogZml4IHNvbWUgd2FybmluZ3MgYW5kIDY0CgkgIGJpdCBidWlsZCB3aW5kb3dzCgoyMDA4LTAyLTAxIDExOjA5ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IGZpeCB3aW42NCBidWlsZCBhbmQgYQoJICB3YXJuaW5nCgoyMDA4LTAyLTAxIDEwOjQxICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5jeHgsCgkgIENNYWtlU2V0dXBEaWFsb2cuaCwgUUNNYWtlLmN4eDogRU5IOglVc2UgdHJhbnNsYXRpb24gZmlsZSBpZiBpdAoJICBleGlzdHMgZm9yIHRoZSBsb2NhbGUuCUNvbnNvbGlkYXRlIHNvbWUgc3RyaW5ncy4KCgkJTW9yZSByZXNwb25zaXZlIGludGVycnVwdGluZy4gIFByb21wdCB1c2VyIGlmIHRoZXkgdHJ5IHRvCgkgIGNsb3NlIGR1cmluZwoJCWNvbmZpZ3VyZSwgYW5kIGFsbG93IHRoZW0gdG8gY2xvc2UuCgoyMDA4LTAyLTAxIDA5OjU3ICBraW5nCgoJKiBUZXN0cy9FeHBvcnRJbXBvcnQvOiBDTWFrZUxpc3RzLnR4dCwgRXhwb3J0L0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIFVwZGF0ZSBFeHBvcnRJbXBvcnQgdGVzdCB0byBlbmZvcmNlIGRlcGVuZGVudCBsaWJyYXJ5IHBhdGhzCgoJICAgIC0gQnVpbGQgd2l0aG91dCBycGF0aHMKCSAgICAtIFBsYWNlIGltcGxlbWVudGF0aW9uIGxpYnMgaW4gc2VwYXJhdGUgZGlyZWN0b3JpZXMKCjIwMDgtMDItMDEgMDk6NTcgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBGcmVlQlNELmNtYWtlLCBIUC1VWC5jbWFrZSwgSVJJWC5jbWFrZSwKCSAgSVJJWDY0LmNtYWtlLCBTdW5PUy5jbWFrZTogRU5IOiBFbmFibGUgZGVwZW5kZW50IGxpYnJhcnkgc2VhcmNoCgkgIHBhdGhzIG9uIG1vcmUgcGxhdGZvcm1zCgoJICAgIC0gSFAtVVggbmVlZHMgZGVwZW5kZW50IGxpYnJhcnkgcGF0aHMgYXMgLUwgb3B0aW9ucy4KCSAgICAtIElSSVggbmVlZHMgZGVwZW5kZW50IGxpYnJhcnkgcGF0aHMgYXMgLUwgb3B0aW9ucy4KCSAgICAtIFN1biBuZWVkcyBkZXBlbmRlbnQgbGlicmFyeSBwYXRocyBhcyAtTCBvcHRpb25zLgoJICAgIC0gRnJlZUJTRCBuZWVkcyBkZXBlbmRlbnQgbGlicmFyeSBwYXRocyBpbiAtcnBhdGgtbGluayBvcHRpb24uCgoyMDA4LTAyLTAxIDA5OjM2ICBraW5nCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBGaXggY29tbWl0IDEuNDEgb2YKCSAgVGVzdHMvQ01ha2VMaXN0cy50eHQgdG8gcGxhY2UgZmFrZSB0YXJnZXQgYmVmb3JlIC0tdmVyc2lvbiBmbGFnCgkgIGluc3RlYWQgb2YgYWZ0ZXIuCgoyMDA4LTAyLTAxIDA4OjU2ICBraW5nCgoJKiBib290c3RyYXAsIE1vZHVsZXMvQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vUU5YLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rRGVwZW5kcy5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUV4cG9ydEZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0SW5zdGFsbEZpbGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21PcmRlclJ1bnRpbWVEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyUnVudGltZURpcmVjdG9yaWVzLmgsIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDoKCSAgUGFzcyBkZXBlbmRlbnQgbGlicmFyeSBzZWFyY2ggcGF0aCB0byBsaW5rZXIgb24gc29tZSBwbGF0Zm9ybXMuCgoJICAgIC0gTW92ZSBydW50aW1lIHBhdGggb3JkZXJpbmcgb3V0IG9mIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbgoJICAgICAgaW50byBpdHMgb3duIGNsYXNzIGNtT3JkZXJSdW50aW1lRGlyZWN0b3JpZXMuCgkgICAgLSBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgY21PcmRlclJ1bnRpbWVEaXJlY3RvcmllcyBmb3IgcnVudGltZQoJICAgICAgcGF0aCBvcmRlcmluZyBhbmQgYW5vdGhlciBpbnN0YW5jZSBmb3IgZGVwZW5kZW50IGxpYnJhcnkKCSAgICAgIHBhdGggb3JkZXJpbmcuCgkgICAgLSBSZXBsYWNlIENNQUtFX0RFUEVOREVOVF9TSEFSRURfTElCUkFSWV9NT0RFIHdpdGggZXhwbGljaXQKCSAgICAgIENNQUtFX0xJTktfREVQRU5ERU5UX0xJQlJBUllfRklMRVMgYm9vbGVhbi4KCSAgICAtIENyZWF0ZSBDTUFLRV9MSU5LX0RFUEVOREVOVF9MSUJSQVJZX0RJUlMgYm9vbGVhbi4KCSAgICAtIENyZWF0ZSB2YXJpYWJsZXMgdG8gc3BlY2lmeSAtcnBhdGgtbGluayBmbGFnczoKCQlDTUFLRV9TSEFSRURfTElCUkFSWV9SUEFUSF9MSU5LXzxMQU5HPl9GTEFHCgkJQ01BS0VfRVhFQ1VUQUJMRV9SUEFUSF9MSU5LXzxMQU5HPl9GTEFHCgkgICAgLSBFbmFibGUgLXJwYXRoLWxpbmsgZmxhZyBvbiBMaW51eCBhbmQgUU5YLgoJICAgIC0gRG9jdW1lbnRhdGlvbiBhbmQgZXJyb3IgbWVzc2FnZSB1cGRhdGVzCgoyMDA4LTAyLTAxIDA4OjU1ICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBDT01QOiBGaXggc2hhZG93ZWQgbG9jYWwgd2FybmluZy4KCjIwMDgtMDItMDEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0zMSAyMTozMyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbUluZm9ybWF0aW9uLmN4eDogRU5IOiB0cnkgdG8gZml4IGhwIGFuZCB2cyA2LAoJICBhZ2Fpbi4uLgoKMjAwOC0wMS0zMSAxNjozOCAgaG9mZm1hbgoKCSogU291cmNlLzogQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaDogU1RZTEU6IGxpbmUgbGVuZ3RoCgoyMDA4LTAxLTMxIDE2OjM3ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IGZpeGVzIGZvciBib3JsYW5kCgoyMDA4LTAxLTMxIDE2OjMzICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQlVHOiBtaW5vciBmaXggZm9yIGN0ZXN0CgoyMDA4LTAxLTMxIDE2OjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogcmVtb3ZlIGV4dHJhIGp1bmsKCjIwMDgtMDEtMzEgMTU6NDUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLCBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuaCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uaCwKCSAgU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4LCBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0RmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgVGVzdHMvRXhwb3J0SW1wb3J0L0V4cG9ydC9DTWFrZUxpc3RzLnR4dDogRU5IOgoJICBTdXBwb3J0IGxpbmtpbmcgdG8gc2hhcmVkIGxpYnMgd2l0aCBkZXBlbmRlbnQgbGlicwoKCSAgICAtIFNwbGl0IElNUE9SVEVEX0xJTktfTElCUkFSSUVTIGludG8gdHdvIHBhcnRzOgoJCUlNUE9SVEVEX0xJTktfSU5URVJGQUNFX0xJQlJBUklFUwoJCUlNUE9SVEVEX0xJTktfREVQRU5ERU5UX0xJQlJBUklFUwoJICAgIC0gQWRkIENNQUtFX0RFUEVOREVOVF9TSEFSRURfTElCUkFSWV9NT0RFIHRvIHNlbGVjdCBiZWhhdmlvcgoJICAgIC0gU2V0IG1vZGUgdG8gTElOSyBmb3IgRGFyd2luIChmaXhlcyB1bml2ZXJzYWwgYmluYXJ5IHByb2JsZW0pCgkgICAgLSBVcGRhdGUgRXhwb3J0SW1wb3J0IHRlc3QgdG8gYWNjb3VudCBmb3IgY2hhbmdlcwoKMjAwOC0wMS0zMSAxNTozNCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbUluZm9ybWF0aW9uLmN4eDogRU5IOiBmaXggZm9yIHFueCwgSSBob3BlLCBhbmQKCSAgZml4IGluZGVudCBzdHVmZgoKMjAwOC0wMS0zMSAxNToxMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbUluZm9ybWF0aW9uLmN4eDogRU5IOiBmaXggYnVpbGQgZXJyb3JzIHdpdGgKCSAgYXNtIHN0dWZmIG9uIG1pbmd3IGFuZCBob3BlZnVsbHkgd2luNjQKCjIwMDgtMDEtMzEgMTQ6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1JbmZvcm1hdGlvbi5jeHg6IEVOSDogZml4IGJ1aWxkIGZvciBtaW5ndwoKMjAwOC0wMS0zMSAxNDozNCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtSW5mb3JtYXRpb24uY3h4LCBTeXN0ZW1JbmZvcm1hdGlvbi5oeHguaW46CgkgIEVOSDogc3BsaXQgaW50byBpbXBsZW1lbnRhdGlvbiBhbmQgaW50ZXJmYWNlIGNsYXNzIHRvIGNsZWFuIHVwCgkgIG5hbWVzcGFjZSBpc3N1ZXMgd2l0aCAjZGVmaW5lIHN0dWZmCgoyMDA4LTAxLTMxIDEzOjIzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogdXNlIGN0ZXN0IHRvIGRyaXZlIGRhc2hib2FyZHMgZm9yIG1ha2UKCSAgdGFyZ2V0cyBhcyBvcHBvc2VkIHRvIHRjbHNoCgoyMDA4LTAxLTMxIDEyOjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byBpbnN0YWxsIGNzdGRkZWYgaGVhZGVyLgoKMjAwOC0wMS0zMSAxMjoxOSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgYSBjb25zdCBjYXN0CgoyMDA4LTAxLTMxIDExOjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEVOSDogcmVhZCBpbgoJICBvbGQgZmlsZSBmb3JtYXRzIERhcnQgYXMgd2VsbAoKMjAwOC0wMS0zMSAwODozMiAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1UZXN0c0NYWC5jeHg6IFNUWUxFOiBXb3JrLWFyb3VuZCBzdGQ6OgoJICBjaGVjayBzaW5jZSB0aGlzIGlzIGEgcGxhdGZvcm0gdGVzdC4KCjIwMDgtMDEtMzEgMDg6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFN0cmluZy5oeHguaW4sIFN5c3RlbVRvb2xzLmh4eC5pbiwKCSAga3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogU1RZTEU6IFJlbW92ZSByZWZlcmVuY2VzIHRvIHN0ZDo6IGluc2lkZQoJICBLV1N5cywgZXZlbiBpbiBjb21tZW50cy4gIFRoaXMgd2lsbCBhbGxvdyBhIGNvbW1pdCBjaGVjayB0byBiZQoJICBhZGRlZC4KCjIwMDgtMDEtMzEgMDg6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1JbmZvcm1hdGlvbi5jeHg6IENPTVA6IFJlcGxhY2Uga3dzeXNfc3RsOjoKCSAgd2l0aCBrd3N5c19pb3M6OiBmb3Igc3RyZWFtcyBhY2Nlc3MuCgoyMDA4LTAxLTMxIDA4OjA1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LCBjbVRhcmdldC5jeHg6IEVOSDogQWRkCgkgIHRhcmdldCBwcm9wZXJ0eSBMSU5LX1NFQVJDSF9FTkRfU1RBVElDIHRvIGhlbHAgcGVvcGxlIGJ1aWxkaW5nCgkgIHN0YXRpYyBiaW5hcmllcyBvbiBzb21lIHBsYXRmb3Jtcy4KCjIwMDgtMDEtMzEgMDc6NTAgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vSVJJWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9JUklYNjQuY21ha2UsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsCgkgIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5oOgoJICBCVUc6IE1vdmUgZGVjaXNpb24gdG8gc3dpdGNoIGxpYnJhcnkgcGF0aHMgZm91bmQgaW4gaW1wbGljaXQgbGluawoJICBkaXJlY3RvcmllcyB0byB1c2UgLWwgb3B0aW9ucyBmcm9tIGNtRmluZExpYnJhcnlDb21tYW5kIHRvCgkgIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi4gIEV4aXN0aW5nIHByb2plY3RzIG1heSBkZXBlbmQgb24KCSAgZmluZF9saWJyYXJ5IHJldHVybmluZyBhIGZ1bGwgcGF0aC4gIFRoaXMgc2xpZ2h0bHkgd2Vha2VucwoJICBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24gYnV0IGlzIG5lY2Vzc2FyeSBmb3IgY29tcGF0aWJpbGl0eS4KCjIwMDgtMDEtMzEgMDY6NTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtRXhwb3J0RmlsZUdlbmVyYXRvci5jeHgsIGNtRXhwb3J0RmlsZUdlbmVyYXRvci5oOgoJICBDT01QOiBSZW1vdmUgdW51c2VkIHBhcmFtZXRlci4KCjIwMDgtMDEtMzEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0zMCAyMjo1NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiByZW1vdmUgY29uc3QKCjIwMDgtMDEtMzAgMjE6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbUluZm9ybWF0aW9uLmN4eCwgU3lzdGVtSW5mb3JtYXRpb24uaHh4LmluOgoJICBDT01QOiB1c2Uga3dzeXNfc3RsIGFuZCBub3Qgc3RkOjoKCjIwMDgtMDEtMzAgMTc6NTcgIGtpbmcKCgkqIFNvdXJjZS9jbUV4cG9ydEZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIHByZXZpb3VzIGNvbW1pdCBpbgoJICBjbUV4cG9ydEZpbGVHZW5lcmF0b3IgdG8gc2VwYXJhdGUgbGlicmFyaWVzIGNvcnJlY3RseSBpbiB0aGUKCSAgaW1wb3J0IGxpbmsgbGlzdC4KCjIwMDgtMDEtMzAgMTc6MjYgIGtpbmcKCgkqIFRlc3RzL0V4cG9ydEltcG9ydC86IENNYWtlTGlzdHMudHh0LCBFeHBvcnQvQ01ha2VMaXN0cy50eHQsCgkgIEV4cG9ydC90ZXN0RXhlMmxpYi5jLCBFeHBvcnQvdGVzdEV4ZTJsaWJJbXAuYywgRXhwb3J0L3Rlc3RMaWIzLmMsCgkgIEV4cG9ydC90ZXN0TGliM0ltcC5jLCBJbXBvcnQvaW1wX21vZDEuYzogRU5IOiBVcGRhdGVkCgkgIEV4cG9ydEltcG9ydCB0ZXN0IHRvIHRyeSBMSU5LX0lOVEVSRkFDRV9MSUJSQVJJRVMuCgoyMDA4LTAxLTMwIDE3OjI1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rRGVwZW5kcy5jeHgsCgkgIGNtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmN4eCwgY21FeHBvcnRCdWlsZEZpbGVHZW5lcmF0b3IuaCwKCSAgY21FeHBvcnRDb21tYW5kLmN4eCwgY21FeHBvcnRDb21tYW5kLmgsCgkgIGNtRXhwb3J0RmlsZUdlbmVyYXRvci5jeHgsIGNtRXhwb3J0RmlsZUdlbmVyYXRvci5oLAoJICBjbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIEltcGxlbWVudGVkIGxpbmstaW50ZXJmYWNlIHNwZWNpZmljYXRpb24gZmVhdHVyZS4KCgkgICAgLSBTaGFyZWQgbGlicyBhbmQgZXhlY3V0YWJsZXMgd2l0aCBleHBvcnRzIG1heSBub3cgaGF2ZQoJICAgICAgZXhwbGljaXQgdHJhbnNpdGl2ZSBsaW5rIGRlcGVuZGVuY2llcyBzcGVjaWZpZWQKCSAgICAtIENyZWF0ZWQgTElOS19JTlRFUkZBQ0VfTElCUkFSSUVTIGFuZCByZWxhdGVkIHByb3BlcnRpZXMKCSAgICAtIEV4cG9ydGVkIHRhcmdldHMgZ2V0IHRoZSBpbnRlcmZhY2UgbGlicmFyaWVzIGFzIHRoZWlyCgkgICAgICBJTVBPUlRFRF9MSU5LX0xJQlJBUklFUyBwcm9wZXJ0eS4KCSAgICAtIFRoZSBleHBvcnQoKSBhbmQgaW5zdGFsbChFWFBPUlQpIGNvbW1hbmRzIG5vdyBnaXZlCgkgICAgICBhbiBlcnJvciB3aGVuIGEgbGlua2VkIHRhcmdldCBpcyBub3QgaW5jbHVkZWQgc2luY2UKCSAgICAgIHRoZSB1c2VyIGNhbiBjaGFuZ2UgdGhlIGludGVyZmFjZSBsaWJyYXJpZXMgaW5zdGVhZAoJICAgICAgb2YgYWRkaW5nIHRoZSB0YXJnZXQuCgoyMDA4LTAxLTMwIDE2OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIHN1cmUgZ2xvYmFsCgkgIHRhcmdldHMgYXJlIGluIHRoZSByaWdodCBwcm9qZWN0cwoKMjAwOC0wMS0zMCAxMzowMiAgaG9mZm1hbgoKCSogVGVzdHMvU3ViUHJvamVjdC9mb28vOiBDTWFrZUxpc3RzLnR4dCwgZm9vLmN4eDogRU5IOiBhZGQgbWlzc2luZwoJICBmaWxlcwoKMjAwOC0wMS0zMCAxMjo1NSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbUluZm9ybWF0aW9uLmh4eC5pbjogRU5IOiBmaXggZm9yIHZzIDcwCgoyMDA4LTAxLTMwIDEyOjE1ICBraW5nCgoJKiBTb3VyY2UvY21Db21wdXRlTGlua0RlcGVuZHMuY3h4OiBCVUc6IGNtQ29tcHV0ZUxpbmtEZXBlbmRzIHNob3VsZAoJICBub3QgZm9sbG93IHRoZSBkZXBlbmRlbmNpZXMgb2YgZXhlY3V0YWJsZXMuCgoyMDA4LTAxLTMwIDEyOjA0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFRlc3RzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdWJQcm9qZWN0L0NNYWtlTGlzdHMudHh0LCBUZXN0cy9TdWJQcm9qZWN0L2Jhci5jeHgsCgkgIFRlc3RzL1N1YlByb2plY3QvY2FyLmN4eDogRU5IOiBmaXggZm9yIGJ1ZyAzMjE4IGRlcGVuZGFudAoJICBwcm9qZWN0cyBhcmUgd3JpdHRlbiBvdXQgYXV0b21hdGljYWxseSBpZiB0aGV5IGFyZSBpbiB0aGUKCSAgcHJvamVjdC4gIEFsc28gZml4IGJ1ZyA1ODI5LCByZW1vdmUgaGFyZCBjb2RlZAoJICBDTUFLRV9DT05GSUdVUkFUSU9OX1RZUEVTIGZyb20gdnMgNyBnZW5lcmF0b3IKCjIwMDgtMDEtMzAgMTE6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIGNtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDoKCSAgRU5IOiByZW1vdmUgd2FybmluZ3MKCjIwMDgtMDEtMzAgMTE6MjIgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmg6IEVOSDogTWFrZSBhZGRfY3VzdG9tX2NvbW1hbmQKCSAgaW50ZXJwcmV0IHJlbGF0aXZlIE9VVFBVVCBsb2NhdGlvbnMgd2l0aCByZXNwZWN0IHRvIHRoZSBidWlsZCB0cmUKCSAgaW5zdGVhZCBvZiB0aGUgc291cmNlIHRyZWUuICBUaGlzIGNhbiBncmVhdGx5IHNpbXBsaWZ5IHVzZXIgY29kZQoJICBzaW5jZSBnZW5lcmF0aW5nIGEgZmlsZSB3aWxsIG5vdCBuZWVkIHRvIHJlZmVyZW5jZQoJICBDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVIuICBUaGUgbmV3IGJlaGF2aW9yIGlzIHdoYXQgdXNlcnMgZXhwZWN0CgkgIDk5JSBvZiB0aGUgdGltZS4KCjIwMDgtMDEtMzAgMTE6MjEgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2V0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlLmN4eCwKCSAgY21Tb3VyY2VGaWxlLmg6IEJVRzogQWRkIGNtU291cmNlRmlsZTo6R2V0UHJvcGVydHlGb3JVc2VyIHRvCgkgIGNlbnRyYWxpemUgdGhlIExPQ0FUSU9OIHByb3BlcnR5IGhhY2suICBUaGlzIGZpeGVzIHRoZSBMT0NBVElPTgoJICBwcm9wZXJ0eSB3aGVuIHJldHJpZXZlZCB2aWEgdGhlIGdldF9wcm9wZXJ0eSBjb21tYW5kLgoKMjAwOC0wMS0zMCAxMToxNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4LAoJICBrd3N5cy9DTWFrZUxpc3RzLnR4dCwga3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uaHh4LmluOiBFTkg6CgkgIGVuaGFuY2VtZW50cyBmb3IgY2Rhc2gsIGluY2x1ZGUgc3lzdGVtIGluZm9ybWF0aW9uIGFuZCBiZXR0ZXIKCSAgdGltZSBlbnRyaWVzCgoyMDA4LTAxLTMwIDA4OjM3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRml4IG1pc3VzZSBvZiBzdGwgdmVjdG9yIHRoYXQgY2F1c2VkCgkgIGRlZmluaXRpb25zIHRvIGJlIGRyb3BwZWQgYnkgY21NYWtlZmlsZTo6UHVzaFNjb3BlLgoKMjAwOC0wMS0zMCAwNzo0NCAga2luZwoKCSogQ29tcGlsZUZsYWdzLmNtYWtlLCBTb3VyY2Uva3dzeXMvaGFzaF9tYXAuaHh4LmluOiBDT01QOiBGaXgKCSAgd2FybmluZ3Mgb24gVlM5LgoKMjAwOC0wMS0zMCAwNzoxNyAga2luZwoKCSogVXRpbGl0aWVzL2NtdGFyL0NNYWtlTGlzdHMudHh0OiBDT01QOiBGaXggd2FybmluZyBhYm91dCB0b2xvd2VyCgkgIGJ5IG1ha2luZyBzdXJlIGN0eXBlLmggaXMgaW5jbHVkZWQgaW4gY210YXIuCgoyMDA4LTAxLTMwIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMjkgMjE6MTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IEVuYWJsZSB1c2Ugb2YgbGluawoJICBzY3JpcHQgd2hlbmV2ZXIgaW5jcmVtZW50YWwgYXJjaGl2ZSBjb25zdHJ1Y3Rpb24gcnVsZXMgYXJlCgkgIGF2YWlsYWJsZS4gIEVuYWJsZSB1c2Ugb2YgYXJjaGl2ZSBjb25zdHJ1Y3Rpb24gcnVsZXMgb24gTVNZUy4KCjIwMDgtMDEtMjkgMjA6NDYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2UsCgkgIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oOiBFTkg6IEFkZGVkIGJ1aWxkIHJ1bGUKCSAgdmFyaWFibGVzIENNQUtFXzxMQU5HPl9BUkNISVZFX0NSRUFURSwKCSAgQ01BS0VfPExBTkc+X0FSQ0hJVkVfQVBQRU5ELCBhbmQgQ01BS0VfPExBTkc+X0FSQ0hJVkVfRklOSVNIIHRvCgkgIHN1cHBvcnQgY3JlYXRpb24gb2Ygc3RhdGljIGFyY2hpdmUgbGlicmFyaWVzIG91dCBvZiBhIGxhcmdlCgkgIG51bWJlciBvZiBvYmplY3RzLiAgU2VlIGJ1ZyAjNjI4NC4KCjIwMDgtMDEtMjkgMTc6MzAgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaDogQlVHOiBGaXgKCSAgdW5pbml0aWFsemVkIG1lbWJlcnMgb2YgY21DYWNoZU1hbmFnZXIuCgoyMDA4LTAxLTI5IDE3OjMwICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBCVUc6CgkgIGNtVGFyZ2V0IGluc3RhbmNlcyBzaG91bGQgbm90IGJlIGNvcGllZC4gIFJlbW92ZWQgcGFzcy1ieS12YWx1ZQoJICBhcmd1bWVudHMgZnJvbSBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvcjo6V3JpdGVHcm91cCBhbmQKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3I6OldyaXRlR3JvdXAuICBVcGRhdGVkIGNtVGFyZ2V0IHRvCgkgIG1ha2UgdGhpcyBlYXNpZXIgdG8gZmluZC4KCjIwMDgtMDEtMjkgMTc6MDEgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiAgTWFrZSBsdXBkYXRlIGFuZCBscmVsZWFzZQoJICBleGVjdXRhYmxlcyBhZHZhbmNlZCB2YXJpYWJsZXMuCgoyMDA4LTAxLTI5IDE1OjU0ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jeHg6IEVOSDogQ29ycmVjdGx5IGZvcm1hdAoJICBtdWx0aS1saW5lIGVycm9yIG1lc3NhZ2VzLgoKMjAwOC0wMS0yOSAxNTo0NyAga2luZwoKCSogU291cmNlLzogY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmN4eCwKCSAgY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDoKCSAgVXBkYXRlIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvciB0byBnZXQgdGhlIHNoYXJlZCBsaWJyYXJpZXMKCSAgbGlua2VkIGJ5IGEgdGFyZ2V0IGZyb20gY21Db21wdXRlTGlua0luZm9ybWF0aW9uIGluc3RlYWQgb2YKCSAgZHVwbGljYXRpbmcgdGhlIGNvbXB1dGF0aW9uLgoKMjAwOC0wMS0yOSAxNToxMCAgYmFycmUKCgkqIE1vZHVsZXMvRmluZEhUTUxIZWxwLmNtYWtlOiBFTkg6IG5lZWQgcXVvdGVzCgoyMDA4LTAxLTI5IDE1OjA3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uaCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIEFkZCBjbVRhcmdldDo6R2V0TGlua0luZm9ybWF0aW9uIG1ldGhvZCB0byBhbGxvdyBzZXZlcmFsIHBsYWNlcwoJICBpbiB0aGUgZ2VuZXJhdG9ycyB0byBzaGFyZSBsaW5rIGluZm9ybWF0aW9uIHdoaWxlIG9ubHkgY29tcHV0aW5nCgkgIGl0IG9uY2UgcGVyIGNvbmZpZ3VyYXRpb24gZm9yIGEgdGFyZ2V0LiAgVXNlIGl0IHRvIHNpbXBsaWZ5IHRoZQoJICBjaHJwYXRoIGZlYXR1cmUuCgoyMDA4LTAxLTI5IDEzOjA3ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEVOSDoJQWxsb3cgUVQ0X1dSQVBfQ1BQIHRvIHdvcmsgd2l0aCBkaXIxL215b2JqZWN0LmgKCSAgZGlyMi9teW9iamVjdC5oCUZpeGVzICM1MDY3LgoKMjAwOC0wMS0yOSAwOTo1NyAga2luZwoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBub3QgdG8gZmluZF9wYWNrYWdlCgkgIGRvY3VtZW50YXRpb24gYWJvdXQgdW5zcGVjaWZpZWQgY2hvaWNlIGFtb25nIG11bHRpcGxlIHZlcnNpb25zLgoKMjAwOC0wMS0yOSAwODowMyAga2luZwoKCSogVGVzdHMvRXhwb3J0SW1wb3J0L0NNYWtlTGlzdHMudHh0OiBCVUc6IEN1c3RvbSBjb21tYW5kIGRyaXZlcgoJICBvdXRwdXRzIG11c3QgYmUgU1lNQk9MSUMgc2luY2Ugbm8gY29ycmVzcG9uZGluZyBmaWxlIGlzIGNyZWF0ZWQuCgoyMDA4LTAxLTI5IDA3OjU3ICBraW5nCgoJKiBUZXN0cy9FeHBvcnRJbXBvcnQvQ01ha2VMaXN0cy50eHQ6IEJVRzogTWFrZSBzdXJlCgkgIENNQUtFX0lOU1RBTExfUFJFRklYIHN0YXlzIGluIHN1YnByb2plY3QgY2FjaGVzLgoKMjAwOC0wMS0yOSAwNzo0OCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1TdW5Qcm8tQy5jbWFrZTogQlVHOiBGaXggZHluYW1pYyBleHBvcnRzCgkgIGV4ZWN1dGFibGUgbGluayBvcHRpb24gZm9yIFN1biBDIGNvbXBpbGVyIG9uIExpbnV4LgoKMjAwOC0wMS0yOSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTI4IDIwOjM4ICBraW5nCgoJKiBNb2R1bGVzL3JlYWRtZS50eHQsIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5oLAoJICBUZXN0cy9GaW5kUGFja2FnZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9saWIvc3VmZml4L3Rlc3QvU3VmZml4VGVzdENvbmZpZ1ZlcnNpb24uY21ha2UsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9saWIvem90LTEuMC96b3QtY29uZmlnLmNtYWtlLAoJICBUZXN0cy9GaW5kUGFja2FnZVRlc3QvbGliL3pvdC0yLjAvem90LWNvbmZpZy12ZXJzaW9uLmNtYWtlLAoJICBUZXN0cy9GaW5kUGFja2FnZVRlc3QvbGliL3pvdC0yLjAvem90LWNvbmZpZy5jbWFrZSwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L2xpYi96b3QtMy4wL3pvdC1jb25maWctdmVyc2lvbi5jbWFrZSwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L2xpYi96b3QtMy4wL3pvdC1jb25maWcuY21ha2UsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9saWIvem90LTMuMS96b3QtY29uZmlnLXZlcnNpb24uY21ha2UsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9saWIvem90LTMuMS96b3QtY29uZmlnLmNtYWtlOiBFTkg6IEFkZGVkCgkgIHZlcnNpb24gc3VwcG9ydCB0byBDb25maWcgbW9kZSBvZiBmaW5kX3BhY2thZ2UgY29tbWFuZC4KCgkgICAgLSBBZGRlZCBFWEFDVCBvcHRpb24gdG8gcmVxdWVzdCBhbiBleGFjdCB2ZXJzaW9uLgoJICAgIC0gRW5mb3JjZSB2ZXJzaW9uIHVzaW5nIGNoZWNrIHByb3ZpZGVkIGJ5IHBhY2thZ2UuCgkgICAgLSBVcGRhdGVkIEZpbmRQYWNrYWdlVGVzdCB0byB0ZXN0IHZlcnNpb25pbmcgaW4gY29uZmlnIG1vZGUuCgoyMDA4LTAxLTI4IDE5OjIwICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6CgkgIEVOSDoJSW1wcm92ZSBmaW5kIGZvciBnbGliL2d0aHJlYWQgd2hlbiBRdCBpcyBjb25maWd1cmVkIHRvIHVzZQoJICBpdC4JICAgICBGaXhlcyAjNjIyMC4KCjIwMDgtMDEtMjggMTU6MjIgIGtpbmcKCgkqIFNvdXJjZS86IGNtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21FeHBvcnRJbnN0YWxsRmlsZUdlbmVyYXRvci5jeHg6IFNUWUxFOiBVcGRhdGVkIFRPRE8gY29tbWVudCBmb3IKCSAgUFVCTElDX0hFQURFUl9MT0NBVElPTiBleHBvcnQuCgoyMDA4LTAxLTI4IDE1OjEyICBraW5nCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxDb21tYW5kLmgsIGNtVGFyZ2V0LmN4eDogRU5IOiBEb2N1bWVudAoJICBQUklWQVRFX0hFQURFUiwgUFVCTElDX0hFQURFUiwgYW5kIFJFU09VUkNFIHRhcmdldCBwcm9wZXJ0aWVzIGFuZAoJICBjb3JyZXNwb25kaW5nIGFyZ3VtZW50cyB0byBJTlNUQUxMKFRBUkdFVFMpLgoKMjAwOC0wMS0yOCAxNDo0NiAga2luZwoKCSogVGVzdHMvRnJhbWV3b3JrL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZpeCBGcmFtZXdvcmsgdGVzdCBhZnRlcgoJICBmaXhpbmcgRlJBTUVXT1JLIHRhcmdldHMgdG8gbm90IGluc3RhbGwgbGlrZSBmcmFtZXdvcmtzIG9uCgkgIG5vbi1BcHBsZSBzeXN0ZW1zLgoKMjAwOC0wMS0yOCAxNDo0NiAga2luZwoKCSogU291cmNlL2NtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0RmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmgsIFRlc3RzL0V4cG9ydEltcG9ydC9FeHBvcnQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0V4cG9ydEltcG9ydC9FeHBvcnQvdGVzdEV4ZTMuYywKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0ltcG9ydC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0ltcG9ydC9pbXBfdGVzdEV4ZTEuYzogRU5IOiBTdXBwb3J0CgkgIGV4cG9ydGluZy9pbXBvcnRpbmcgb2YgQXBwQnVuZGxlIHRhcmdldHMuCgoJICAgIC0gSW1wb3J0ZWQgYnVuZGxlcyBoYXZlIHRoZSBNQUNPU1hfQlVORExFIHByb3BlcnR5IHNldAoJICAgIC0gQWRkZWQgY21UYXJnZXQ6OklzQXBwQnVuZGxlT25BcHBsZSBtZXRob2QgdG8gc2ltcGxpZnkgY2hlY2tzCgkgICAgLSBEb2N1bWVudCBCVU5ETEUga2V5d29yZCBpbiBJTlNUQUxMIGNvbW1hbmQKCSAgICAtIFVwZGF0ZWQgSU1QT1JURURfTE9DQVRJT04gcHJvcGVydHkgZG9jdW1lbnRhdGlvbiBmb3IgYnVuZGxlcwoJICAgIC0gVXBkYXRlZCBFeHBvcnRJbXBvcnQgdGVzdCB0byB0ZXN0IGJ1bmRsZXMKCjIwMDgtMDEtMjggMTM6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbUV4cG9ydEZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmgsCgkgIFRlc3RzL0V4cG9ydEltcG9ydC9FeHBvcnQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0V4cG9ydEltcG9ydC9FeHBvcnQvdGVzdEV4ZTEuYywKCSAgVGVzdHMvRXhwb3J0SW1wb3J0L0V4cG9ydC90ZXN0RXhlMWxpYi5jOiBCVUc6IEZpeCBleHBvcnQvaW1wb3J0CgkgIGZpbGUgZ2VuZXJhdGlvbiB0byBub3Qgc3RvcmUgbGluayBkZXBlbmRlbmNpZXMgb2YgZXhlY3V0YWJsZXMgb3IKCSAgbW9kdWxlcy4KCjIwMDgtMDEtMjggMTM6MjEgIGtpbmcKCgkqIFNvdXJjZS9jbUV4cG9ydEJ1aWxkRmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21FeHBvcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0Q29tbWFuZC5oLCBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0RmlsZUdlbmVyYXRvci5oLAoJICBUZXN0cy9FeHBvcnRJbXBvcnQvRXhwb3J0L0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlc3RvcmVkIEFQUEVORAoJICBvcHRpb24gdG8gRVhQT1JUKCkgY29tbWFuZCBpbiBuZXcgaW1wbGVtZW50YXRpb24uCgoyMDA4LTAxLTI4IDEzOjA2ICBraW5nCgoJKiBUZXN0cy9FeHBvcnRJbXBvcnQvOiBFeHBvcnQvQ01ha2VMaXN0cy50eHQsIEV4cG9ydC90ZXN0TGliNC5jLAoJICBJbXBvcnQvQ01ha2VMaXN0cy50eHQsIEltcG9ydC9pbXBfdGVzdEV4ZTEuYzogRU5IOiBBZGRlZAoJICBmcmFtZXdvcmsgdG8gRXhwb3J0SW1wb3J0IHRlc3QuCgoyMDA4LTAxLTI4IDEzOjA1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LCBjbUV4cG9ydEZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbENvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6CgkgIEVOSDogU3VwcG9ydCBleHBvcnRpbmcvaW1wb3J0aW5nIG9mIEZyYW1ld29yayB0YXJnZXRzLgoKCSAgICAtIEltcG9ydGVkIGZyYW1ld29ya3MgaGF2ZSB0aGUgRlJBTUVXT1JLIHByb3BlcnR5IHNldAoJICAgIC0gQWRkZWQgY21UYXJnZXQ6OklzRnJhbWV3b3JrT25BcHBsZSBtZXRob2QgdG8gc2ltcGxpZnkgY2hlY2tzCgkgICAgLSBBbHNvIHJlbW92ZSBzZXBhcmF0ZSBJTVBPUlRFRF9FTkFCTEVfRVhQT1JUUyBwcm9wZXJ0eSBhbmQKCSAganVzdCB1c2UgRU5BQkxFX0VYUE9SVFMgc2luY2UsIGxpa2UgRlJBTUVXT1JLLCBpdCBqdXN0IHJlcHJlc2VudHMKCSAgdGhlIHRhcmdldCB0eXBlLgoJICAgIC0gRG9jdW1lbnQgRlJBTUVXT1JLIGtleXdvcmQgaW4gSU5TVEFMTCBjb21tYW5kLgoJICAgIC0gVXBkYXRlZCBJTVBPUlRFRF9MT0NBVElPTiBwcm9wZXJ0eSBkb2N1bWVudGF0aW9uIGZvcgoJICBGcmFtZXdvcmtzCgoyMDA4LTAxLTI4IDA5OjUzICBraW5nCgoJKiBTb3VyY2UvY21FeHBvcnRGaWxlR2VuZXJhdG9yLmg6IENPTVA6IEFkZCB2aXJ0dWFsIGRlc3RydWN0b3IgdG8KCSAgY21FeHBvcnRGaWxlR2VuZXJhdG9yIHRvIGF2b2lkIHdhcm5pbmdzIGFib3V0IG90aGVyIHZpcnR1YWwKCSAgZnVuY3Rpb25zLgoKMjAwOC0wMS0yOCAwODo0MCAga2luZwoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgRXhwb3J0SW1wb3J0L0NNYWtlTGlzdHMudHh0LAoJICBFeHBvcnRJbXBvcnQvbWFpbi5jLCBFeHBvcnRJbXBvcnQvRXhwb3J0L0NNYWtlTGlzdHMudHh0LAoJICBFeHBvcnRJbXBvcnQvRXhwb3J0L3Rlc3RFeGUxLmMsIEV4cG9ydEltcG9ydC9FeHBvcnQvdGVzdEV4ZTIuYywKCSAgRXhwb3J0SW1wb3J0L0V4cG9ydC90ZXN0TGliMS5jLCBFeHBvcnRJbXBvcnQvRXhwb3J0L3Rlc3RMaWIyLmMsCgkgIEV4cG9ydEltcG9ydC9FeHBvcnQvdGVzdExpYjMuYywKCSAgRXhwb3J0SW1wb3J0L0ltcG9ydC9DTWFrZUxpc3RzLnR4dCwKCSAgRXhwb3J0SW1wb3J0L0ltcG9ydC9pbXBfbW9kMS5jLAoJICBFeHBvcnRJbXBvcnQvSW1wb3J0L2ltcF90ZXN0RXhlMS5jOiBFTkg6IEFkZGVkIEV4cG9ydEltcG9ydCB0ZXN0CgkgIHRvIHRlc3QgbmV3IGV4cG9ydC9pbXBvcnQgZmVhdHVyZXMuCgoyMDA4LTAxLTI4IDA4OjM5ICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBVcGRhdGVkIFNpbXBsZUluc3RhbGwgdGVzdHMKCSAgZm9yIG5ldyBleHBvcnQvaW1wb3J0IGludGVyZmFjZS4KCjIwMDgtMDEtMjggMDg6MzggIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLAoJICBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBjbUNvbXB1dGVMaW5rRGVwZW5kcy5jeHgsIGNtQ29tcHV0ZUxpbmtEZXBlbmRzLmgsCgkgIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsIGNtRXhwb3J0QnVpbGRGaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21FeHBvcnRCdWlsZEZpbGVHZW5lcmF0b3IuaCwgY21FeHBvcnRDb21tYW5kLmN4eCwKCSAgY21FeHBvcnRDb21tYW5kLmgsIGNtRXhwb3J0RmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtRXhwb3J0RmlsZUdlbmVyYXRvci5oLCBjbUV4cG9ydEluc3RhbGxGaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21FeHBvcnRJbnN0YWxsRmlsZUdlbmVyYXRvci5oLCBjbUdldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5oLCBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbENvbW1hbmQuaCwgY21JbnN0YWxsQ29tbWFuZEFyZ3VtZW50cy5jeHgsCgkgIGNtSW5zdGFsbENvbW1hbmRBcmd1bWVudHMuaCwgY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmgsCgkgIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsR2VuZXJhdG9yLmgsCgkgIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbVNldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDoKCSAgVXBkYXRlZCBleHBvcnRpbmcgYW5kIGltcG9ydGluZyBvZiB0YXJnZXRzIHRvIHN1cHBvcnQgbGlicmFyaWVzCgkgIGFuZCBjb25maWd1cmF0aW9ucy4KCgkgICAgLSBDcmVhdGVkIGNtRXhwb3J0RmlsZUdlbmVyYXRvciBoaWVyYXJjaHkgdG8gaW1wbGVtZW50IGV4cG9ydAoJICBmaWxlIGdlbmVyYXRpb24KCSAgICAtIEluc3RhbGxlZCBleHBvcnRzIHVzZSBwZXItY29uZmlnIGltcG9ydCBmaWxlcyBsb2FkZWQgYnkgYQoJICBjZW50cmFsIG9uZS4KCSAgICAtIEluY2x1ZGUgc29uYW1lIG9mIHNoYXJlZCBsaWJyYXJpZXMgaW4gaW1wb3J0IGluZm9ybWF0aW9uCgkgICAgLSBSZW5hbWVkIFBSRUZJWCB0byBOQU1FU1BBQ0UgaW4gSU5TVEFMTChFWFBPUlQpIGFuZCBFWFBPUlQoKQoJICBjb21tYW5kcwoJICAgIC0gTW92ZSBhZGRpdGlvbiBvZiBDTUFLRV9JTlNUQUxMX1BSRUZJWCB0byBkZXN0aW5hdGlvbnMgdG8KCSAgaW5zdGFsbCBnZW5lcmF0b3JzCgkgICAgLSBJbXBvcnQgZmlsZXMgY29tcHV0ZSB0aGUgaW5zdGFsbGF0aW9uIHByZWZpeCByZWxhdGl2ZSB0bwoJICB0aGVpciBsb2NhdGlvbiB3aGVuIGxvYWRlZAoJICAgIC0gQWRkIG1hcHBpbmcgb2YgaW1wb3J0ZXIgY29uZmlndXJhdGlvbnMgdG8gaW1wb3J0ZWUKCSAgY29uZmlndXJhdGlvbnMKCSAgICAtIFJlbmFtZSBJTVBPUlQgdGFyZ2V0cyB0byBJTVBPUlRFRCB0YXJnZXRzIHRvIGRpc3Rpbmd1aXNoIGZyb20KCSAgd2luZG93cyBpbXBvcnQgbGlicmFyaWVzCgkgICAgLSBTY29wZSBJTVBPUlRFRCB0YXJnZXRzIHdpdGhpbiBkaXJlY3RvcmllcyB0byBpc29sYXRlIHRoZW0KCSAgICAtIFBsYWNlIGFsbCBwcm9wZXJ0aWVzIGNyZWF0ZWQgYnkgaW1wb3J0IGZpbGVzIGluIHRoZSBJTVBPUlRFRAoJICBuYW1lc3BhY2UKCSAgICAtIERvY3VtZW50IElOU1RBTEwoRVhQT1JUKSBhbmQgRVhQT1JUKCkgY29tbWFuZHMuCgkgICAgLSBEb2N1bWVudCBJTVBPUlRFRCBzaWduYXR1cmUgb2YgYWRkX2V4ZWN1dGFibGUgYW5kIGFkZF9saWJyYXJ5CgkgICAgLSBFbmFibGUgZmluZGluZyBvZiBpbXBvcnRlZCB0YXJnZXRzIGluIGNtQ29tcHV0ZUxpbmtEZXBlbmRzCgoyMDA4LTAxLTI4IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMjcgMTU6MDkgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL2NtQ29tcHV0ZUxpbmtEZXBlbmRzLmN4eDogQ09NUDogVXNlIGt3c3lzIHRvCgkgIGdldCBTVEwgc2V0X2ludGVyc2VjdGlvbiBhbGdvcml0aG0uCgoyMDA4LTAxLTI3IDEzOjQyICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtEZXBlbmRzLmN4eCwgU291cmNlL2NtQ29tcHV0ZUxpbmtEZXBlbmRzLmgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDoKCSAgQ3JlYXRlZCBjbUNvbXB1dGVMaW5rRGVwZW5kcyB0byBjb21wdXRlIGxpbmsgZGVwZW5kZW5jaWVzLgoKCSAgICAtIFRoaXMgd2lsbCBiZSB1c2VmdWwgZm9yIGltcG9ydGVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzCgkgICAgLSBSZXBsYWNlcyBvbGQgY21UYXJnZXQgYW5hbHl6ZS1saWItZGVwZW5kcyBzdHVmZiBmb3IgbGlua2luZwoJICAgIC0gRm9ybWFsaXplcyBncmFwaCBjb25zdHJ1Y3Rpb24gYW5kIGR1bXAKCSAgICAtIEV4cGxpY2l0bHkgcmVwcmVzZW50cyBkZXBlbmRlbmN5IGluZmVycmFsIHNldHMKCSAgICAtIFVzZSBCRlMgb2YgaW5pdGlhbCBkZXBlbmRlbmNpZXMgdG8gcHJlc2VydmUgb3JkZXIKCjIwMDgtMDEtMjcgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0yNiAwMToxMSAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVENMLmNtYWtlLCBGaW5kVGNsU3R1Yi5jbWFrZSwgRmluZFRjbHNoLmNtYWtlLAoJICBGaW5kV2lzaC5jbWFrZTogRU5IOiBVcGRhdGUgVGNsL1RrIDguNQoKMjAwOC0wMS0yNiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTI1IDEzOjA3ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRQZXJsLmNtYWtlLCBGaW5kVENMLmNtYWtlLCBGaW5kVGNsU3R1Yi5jbWFrZSwKCSAgRmluZFRjbHNoLmNtYWtlLCBGaW5kV2lzaC5jbWFrZTogRU5IOiB1cGRhdGUgZm9yIFRjbC9UayA4LjUKCjIwMDgtMDEtMjUgMDg6MTEgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQ09NUDogTmVlZCB0byByZXR1cm4gYSB2YWx1ZSBmcm9tIGZha2UKCSAgTUQ1IG1ldGhvZCB1bmRlciBib290c3RyYXAuCgoyMDA4LTAxLTI1IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMjQgMTk6NDIgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRUY2xzaC5jbWFrZTogRU5IOiB0eXBvCgoyMDA4LTAxLTI0IDE5OjMxICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRUQ0wuY21ha2UsIEZpbmRUY2xzaC5jbWFrZSwgRmluZFdpc2guY21ha2U6IEVOSDoKCSAgdXBkYXRlIGZvciBUY2wvVGsgOC41CgoyMDA4LTAxLTI0IDE2OjExICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IENhbm5vdCBkbyBNRDUgZnJvbSBLV1N5cyBkdXJpbmcKCSAgQ01ha2UgYm9vdHN0cmFwLgoKMjAwOC0wMS0yNCAxNDo0MSAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGQKCSAgY21TeXN0ZW1Ub29sczo6Q29tcHV0ZVN0cmluZ01ENSBtZXRob2QuCgoyMDA4LTAxLTI0IDE0OjM3ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IE1ha2UgY21ha2UgLUUgcmVtb3ZlX2RpcmVjdG9yeSB3b3JrIHdoZW4KCSAgZGlyZWN0b3J5IGlzIG5vdCBwcmVzZW50LgoKMjAwOC0wMS0yNCAwNzozNyAga2luZwoKCSogU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eDogRU5IOiBBcHBseSBuZXcgaW1wbGljaXQgbGluawoJICBkaXJlY3RvcnkgZmluZF9saWJyYXJ5IHBvbGljeSB3aGVuIGxvYWRpbmcgYSBjYWNoZSBmcm9tIGFuCgkgIGVhcmxpZXIgQ01ha2UuCgoyMDA4LTAxLTI0IDA3OjM3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmg6IEVOSDogQWRkZWQgY21NYWtlZmlsZTo6TmVlZENhY2hlQ29tcGF0aWJpbGl0eQoJICBtZXRob2QgYW5kIHN1cHBvcnQgZm9yIGl0IGluIGNtQ2FjaGVNYW5hZ2VyLglUaGlzIHdpbGwgYWxsb3cKCSAgY29tbWFuZHMgdG8gbW9kaWZ5IHRoZWlyIGJlaGF2aW9yIHdoZW4gcnVubmluZyB3aXRoIGEgY2FjaGUKCSAgbG9hZGVkIGZyb20gYW4gZWFybGllciBDTWFrZSB2ZXJzaW9uLgoKMjAwOC0wMS0yNCAwNzozMSAga2luZwoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OiBDT01QOiBBZGQgaW5jbHVkZSBvZgoJICA8bGltaXRzLmg+IHRvIGdldCBVU0hSVF9NQVggY29uc3RhbnQuCgoyMDA4LTAxLTI0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMjMgMTg6MzQgIGFsZXgKCgkqIFNvdXJjZS9jbVJldHVybkNvbW1hbmQuaDogU1RZTEU6IGZpeCB0eXBvCgoJICBBbGV4CgoyMDA4LTAxLTIzIDE3OjUzICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlQ29tcGlsZXJBQkkuaCwgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eDogRU5IOgoJICBSZW1vdmUgc3BhcmN2OSBhcmNoaXRlY3R1cmUgc3ViZGlyIGFkZGVkIGVhcmxpZXIuICBUaGUgbmV3CgkgIGltcGxpY2l0IGxpbmsgZGlyZWN0b3J5IHBvbGljeSB0YWtlcyBjYXJlIG9mIHRoZSBwcm9ibGVtLgoKMjAwOC0wMS0yMyAxNzo0MyAga2luZwoKCSogYm9vdHN0cmFwOiBCVUc6IERvIG5vdCBoYXZlIHZhcmlhYmxlIGFuZCBmdW5jdGlvbiBvZiB0aGUgc2FtZQoJICBuYW1lLiAgT2xkIHNoZWxscyBkbyBub3QgbGlrZWl0LgoKMjAwOC0wMS0yMyAxNjo1MyAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBTaW1wbGlmeSBjb2RlIGJ5CgkgIHJlbW92aW5nIHVubmVjZXNzYXJ5IExJTktfRElSRUNUT1JJRVMgY2FsbC4KCjIwMDgtMDEtMjMgMTY6MzUgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZTogQlVHOgoJICBDTUFLRV9FWEVDVVRBQkxFX1JVTlRJTUVfQ1hYX0ZMQUcgc2hvdWxkIGdldCBpdHMgZGVmYXVsdCB2YWx1ZQoJICBmcm9tIENNQUtFX1NIQVJFRF9MSUJSQVJZX1JVTlRJTUVfQ1hYX0ZMQUcsIG5vdAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9SVU5USU1FX0NfRkxBRy4KCjIwMDgtMDEtMjMgMTY6MjcgIGJhcnJlCgoJKiBNb2R1bGVzLzogRmluZFRDTC5jbWFrZSwgRmluZFRjbFN0dWIuY21ha2UsIEZpbmRUY2xzaC5jbWFrZSwKCSAgRmluZFdpc2guY21ha2U6IEVOSDogdXBkYXRlIGZvciBUY2wvVGsgOC41CgoyMDA4LTAxLTIzIDE2OjIxICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmg6IEVOSDoKCSAgVGVhY2ggZmluZF9saWJyYXJ5IHRvIGF2b2lkIHJldHVybmluZyBsaWJyYXJ5IHBhdGhzIGluIHN5c3RlbQoJICBkaXJlY3RvcmllcyB0aGF0IG1heSBiZSBjb252ZXJ0ZWQgdG8gYXJjaGl0ZWN0dXJlLXNwZWNpZmljCgkgIGRpcmVjdG9yaWVzIGJ5IHRoZSBjb21waWxlciB3aGVuIGl0IGludm9rZXMgdGhlIGxpbmtlci4KCjIwMDgtMDEtMjMgMTU6NTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsCgkgIGNtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oOiBCVUc6IEZpeCBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24KCSAgY3ljbGUgZGV0ZWN0aW9uLgoKMjAwOC0wMS0yMyAxNToyMiAga2luZwoKCSogTW9kdWxlcy9WVEtDb21wYXRpYmlsaXR5LmNtYWtlLAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmN4eCwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5oLAoJICBTb3VyY2UvY21Eb2N1bWVudFZhcmlhYmxlcy5jeHg6IEVOSDogQWRkZWQgQ01BS0VfTElOS19PTERfUEFUSFMKCSAgY29tcGF0aWJpbGl0eSBtb2RlIGZvciBsaW5rZXIgc2VhcmNoIHBhdGhzLgoKMjAwOC0wMS0yMyAxNDowNyAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVENMLmNtYWtlLCBGaW5kVGNsU3R1Yi5jbWFrZTogRU5IOiBrZWVwIGNsZWFuaW5nIHVwCgkgIFRjbC9UayBtb2R1bGVzCgoyMDA4LTAxLTIzIDEzOjM3ICBraW5nCgoJKiBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmN4eDogQ09NUDogRml4IGJ1aWxkIG9uIEJvcmxhbmQKCSAgNS41LgoKMjAwOC0wMS0yMyAxMzozMCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLXdjbDM4Ni5jbWFrZSwKCSAgU291cmNlL2NtQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi5jeHgsCgkgIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uaCwKCSAgU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzoKCSAgRml4IGdlbmVyYXRpb24gb2YgV2F0Y29tIGxpbmsgbGluZXMuCgoJICAgIC0gV29yay1hcm91bmQgYnVnIGluIFdhdGNvbSBjb21tYW5kIGxpbmUgcGFyc2luZyBmb3Igc3BhY2VzIGluCgkgIHBhdGhzLgoJICAgIC0gQWRkICdsaWJyYXJ5JyBvcHRpb24gYmVmb3JlIGxpYnJhcmllcyBzcGVjaWZpZWQgYnkgZmlsZSBwYXRoLgoKMjAwOC0wMS0yMyAxMzowMyAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaDogQlVHOgoJICBXb3JrLWFyb3VuZCBidWcgaW4gTVNWQyA2IGNvbW1hbmQgbGluZSBwYXJzaW5nLgoKMjAwOC0wMS0yMyAxMjo1MSAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IGxvb2sgZm9yIENUZXN0Q29uZmlndXJhdGlvbi5pbmkgZmlyc3QKCjIwMDgtMDEtMjMgMTA6MjkgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ01ha2VMaXN0cy50eHQsIFJldHVyblRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFJldHVyblRlc3QvcmV0dXJuVGVzdC5jLCBSZXR1cm5UZXN0L3N1YmRpci9DTWFrZUxpc3RzLnR4dDogRU5IOgoJICBhZGQgdGVzdGluZyBmb3IgcmV0dXJuIGFuZCBicmVhayBjb21tYW5kcwoKMjAwOC0wMS0yMyAxMDoyNyAgbWFydGluawoKCSogU291cmNlLzogY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsCgkgIGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwKCSAgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuaCwgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwKCSAgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUFkZExpYnJhcnlDb21tYW5kLmgsIGNtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5oLCBjbUFkZFRlc3RDb21tYW5kLmN4eCwKCSAgY21BZGRUZXN0Q29tbWFuZC5oLCBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuaCwgY21Cb290c3RyYXBDb21tYW5kcy5jeHgsCgkgIGNtQnVpbGRDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuaCwgY21CdWlsZE5hbWVDb21tYW5kLmN4eCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LAoJICBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmgsIGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ29tbWFuZC5oLAoJICBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwgY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLAoJICBjbURlZmluZVByb3BlcnR5Q29tbWFuZC5jeHgsIGNtRGVmaW5lUHJvcGVydHlDb21tYW5kLmgsCgkgIGNtRWxzZUNvbW1hbmQuY3h4LCBjbUVsc2VDb21tYW5kLmgsIGNtRWxzZUlmQ29tbWFuZC5jeHgsCgkgIGNtRWxzZUlmQ29tbWFuZC5oLCBjbUVuYWJsZUxhbmd1YWdlQ29tbWFuZC5jeHgsCgkgIGNtRW5hYmxlTGFuZ3VhZ2VDb21tYW5kLmgsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmgsIGNtRW5kRm9yRWFjaENvbW1hbmQuY3h4LAoJICBjbUVuZEZvckVhY2hDb21tYW5kLmgsIGNtRW5kRnVuY3Rpb25Db21tYW5kLmN4eCwKCSAgY21FbmRGdW5jdGlvbkNvbW1hbmQuaCwgY21FbmRJZkNvbW1hbmQuY3h4LCBjbUVuZElmQ29tbWFuZC5oLAoJICBjbUVuZE1hY3JvQ29tbWFuZC5jeHgsIGNtRW5kTWFjcm9Db21tYW5kLmgsCgkgIGNtRW5kV2hpbGVDb21tYW5kLmN4eCwgY21FbmRXaGlsZUNvbW1hbmQuaCwKCSAgY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUV4ZWN1dGVQcm9jZXNzQ29tbWFuZC5jeHgsIGNtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmgsCgkgIGNtRXhwb3J0Q29tbWFuZC5jeHgsIGNtRXhwb3J0Q29tbWFuZC5oLAoJICBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4LCBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuaCwKCSAgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuaCwKCSAgY21GaWxlQ29tbWFuZC5jeHgsIGNtRmlsZUNvbW1hbmQuaCwgY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLCBjbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kLmgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuaCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBjbUZvckVhY2hDb21tYW5kLmN4eCwgY21Gb3JFYWNoQ29tbWFuZC5oLAoJICBjbUZ1bmN0aW9uQmxvY2tlci5oLCBjbUZ1bmN0aW9uQ29tbWFuZC5jeHgsIGNtRnVuY3Rpb25Db21tYW5kLmgsCgkgIGNtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuY3h4LCBjbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmgsCgkgIGNtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLCBjbUdldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0UHJvcGVydHlDb21tYW5kLmgsIGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5oLCBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsIGNtR2V0VGVzdFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0VGVzdFByb3BlcnR5Q29tbWFuZC5oLCBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmgsCgkgIGNtSW5jbHVkZUNvbW1hbmQuY3h4LCBjbUluY2x1ZGVDb21tYW5kLmgsCgkgIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5oLAoJICBjbUluY2x1ZGVSZWd1bGFyRXhwcmVzc2lvbkNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVSZWd1bGFyRXhwcmVzc2lvbkNvbW1hbmQuaCwgY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbENvbW1hbmQuaCwgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNDb21tYW5kLmgsIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5oLCBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5jeHgsCgkgIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5oLCBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbUxpc3RDb21tYW5kLmN4eCwgY21MaXN0Q29tbWFuZC5oLAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuaCwKCSAgY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LCBjbUxvYWRDb21tYW5kQ29tbWFuZC5oLAoJICBjbU1hY3JvQ29tbWFuZC5jeHgsIGNtTWFjcm9Db21tYW5kLmgsIGNtTWFrZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eCwgY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuaCwKCSAgY21NYXRoQ29tbWFuZC5jeHgsIGNtTWF0aENvbW1hbmQuaCwgY21NZXNzYWdlQ29tbWFuZC5jeHgsCgkgIGNtTWVzc2FnZUNvbW1hbmQuaCwgY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmgsCgkgIGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LCBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuY3h4LCBjbVByb2plY3RDb21tYW5kLmgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmgsCgkgIGNtUmVtb3ZlQ29tbWFuZC5jeHgsIGNtUmVtb3ZlQ29tbWFuZC5oLAoJICBjbVJlbW92ZURlZmluaXRpb25zQ29tbWFuZC5jeHgsIGNtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIGNtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmN4eCwgY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuaCwKCSAgY21TZXRDb21tYW5kLmN4eCwgY21TZXRDb21tYW5kLmgsCgkgIGNtU2V0RGlyZWN0b3J5UHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBjbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmgsIGNtU2V0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21TZXRQcm9wZXJ0eUNvbW1hbmQuaCwgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LCBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsIGNtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlR3JvdXBDb21tYW5kLmN4eCwgY21Tb3VyY2VHcm91cENvbW1hbmQuaCwKCSAgY21TdHJpbmdDb21tYW5kLmN4eCwgY21TdHJpbmdDb21tYW5kLmgsIGNtU3ViZGlyQ29tbWFuZC5jeHgsCgkgIGNtU3ViZGlyQ29tbWFuZC5oLCBjbVN1YmRpckRlcGVuZHNDb21tYW5kLmN4eCwKCSAgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLCBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwKCSAgY21UcnlDb21waWxlQ29tbWFuZC5oLCBjbVRyeVJ1bkNvbW1hbmQuY3h4LCBjbVRyeVJ1bkNvbW1hbmQuaCwKCSAgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwgY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLAoJICBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmN4eCwgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oLAoJICBjbVZhcmlhYmxlV2F0Y2hDb21tYW5kLmN4eCwgY21WYXJpYWJsZVdhdGNoQ29tbWFuZC5oLAoJICBjbVdoaWxlQ29tbWFuZC5jeHgsIGNtV2hpbGVDb21tYW5kLmgsIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0RW1wdHlCaW5hcnlEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEVtcHR5QmluYXJ5RGlyZWN0b3J5Q29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0SGFuZGxlckNvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0SGFuZGxlckNvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdFJlYWRDdXN0b21GaWxlc0NvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0UmVhZEN1c3RvbUZpbGVzQ29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0UnVuU2NyaXB0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RSdW5TY3JpcHRDb21tYW5kLmgsIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFNsZWVwQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RTbGVlcENvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgY21CcmVha0NvbW1hbmQuY3h4LAoJICBjbUJyZWFrQ29tbWFuZC5oLCBjbUV4ZWN1dGlvblN0YXR1cy5oLCBjbVJldHVybkNvbW1hbmQuY3h4LAoJICBjbVJldHVybkNvbW1hbmQuaDogRU5IOiBhZGQgcmV0dXJuIGFuZCBicmVhayBzdXBwb3J0IHRvIGNtYWtlLAoJICBhbHNvIGNoYW5nZSBiYXNpYyBjb21tYW5kIGludm9jYXRpb24gc2lnbmF0dXJlIHRvIGJlIGFibGUgdG8KCSAgcmV0dXJuIGV4dHJhIGluZm9ybWFpdG9uIHZpYSB0aGUgY21FeGVjdXRpb25TdGF0dXMgY2xhc3MKCjIwMDgtMDEtMjMgMTA6MjEgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4OiBCVUc6IEJlIGxlc3MgYWdncmVzc2l2ZQoJICBhYm91dCBmaW5kaW5nIGNvbmZsaWN0cyBpbiB0aGUgcnVudGltZSBwYXRoIHdoZW4gdGhlIHJlYWwgc29uYW1lCgkgIGlzIG5vdCBrbm93bi4KCjIwMDgtMDEtMjMgMDk6NTMgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VDb21waWxlckFCSS5oLCBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuaDogRU5IOiBFbmFibGUgbGlicmFyeSBzZWFyY2ggcGF0aAoJICBzdWZmaXggZm9yIHNwYXJjdjkgYXJjaGl0ZWN0dXJlLiAgVGhpcyBzaG91bGQgYmUgZ2VuZXJhbGl6ZWQgdG8gYQoJICBwbGF0Zm9ybSBmaWxlIGxhdGVyLgoKMjAwOC0wMS0yMyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTIyIDEwOjExICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogIEFkZCBtYWNyb3MgdG8gaGFuZGxlIHRyYW5zbGF0aW9ucy4KCSAgRml4ZXMgIzYyMjkuCgoyMDA4LTAxLTIyIDEwOjA1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBjbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uaDogQlVHOiBXaGVuIGEgbGlicmFyeSBmaWxlIG5hbWUgaXMKCSAgbGlua2VkIHdpdGhvdXQgYSBwYXRoIG1ha2Ugc3VyZSB0aGUgbGluayB0eXBlIGlzIHJlc3RvcmVkIGFmdGVyCgkgIHRoZSAtbCBvcHRpb24uCgoyMDA4LTAxLTIyIDA5OjE1ICBraW5nCgoJKiBUZXN0cy86IENNYWtlTGlzdHMudHh0LCBSdW50aW1lUGF0aC9DTWFrZUxpc3RzLnR4dCwKCSAgUnVudGltZVBhdGgvYmFyMS5jLCBSdW50aW1lUGF0aC9iYXIyLmMsIFJ1bnRpbWVQYXRoL2ZvbzEuYywKCSAgUnVudGltZVBhdGgvZm9vMi5jLCBSdW50aW1lUGF0aC9tYWluLmM6IEVOSDogQWRkZWQgUnVudGltZVBhdGgKCSAgdGVzdCB0byBtYWtlIHN1cmUgcnBhdGggZ2V0cyBjb3JyZWN0IG9yZGVyLgoKMjAwOC0wMS0yMiAwOToxMyAga2luZwoKCSogYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlLAoJICBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUNvbXB1dGVMaW5rSW5mb3JtYXRpb24uY3h4LAoJICBTb3VyY2UvY21Db21wdXRlTGlua0luZm9ybWF0aW9uLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50VmFyaWFibGVzLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogSW1wbGVtZW50CgkgIGxpbmtpbmcgd2l0aCBwYXRocyB0byBsaWJyYXJ5IGZpbGVzIGluc3RlYWQgb2YgLUwgYW5kIC1sCgkgIHNlcGFyYXRpb24uICBTZWUgYnVnICMzODMyCgoJICAgIC0gVGhpcyBpcyBwdXJlbHkgYW4gaW1wbGVtZW50YXRpb24gaW1wcm92ZW1lbnQuICBObyBpbnRlcmZhY2UKCSAgaGFzIGNoYW5nZWQuCgkgICAgLSBDcmVhdGUgY21Db21wdXRlTGlua0luZm9ybWF0aW9uIGNsYXNzCgkgICAgLSBNb3ZlIGFuZCByZS1pbXBsZW1lbnQgbG9naWMgZnJvbToKCQljbUxvY2FsR2VuZXJhdG9yOjpDb21wdXRlTGlua0luZm9ybWF0aW9uCgkJY21PcmRlckxpbmtEaXJlY3RvcmllcwoJICAgIC0gTGluayBsaWJyYXJpZXMgdG8gdGFyZ2V0cyB3aXRoIHRoZWlyIGZ1bGwgcGF0aCAoaWYgaXQgaXMKCSAga25vd24pCgkgICAgLSBEaXJzIHNwZWNpZmllZCB3aXRoIGxpbmtfZGlyZWN0b3JpZXMgY29tbWFuZCBzdGlsbCBhZGRlZCB3aXRoCgkgIC1MCgkgICAgLSBNYWtlIGxpbmsgdHlwZSBzcGVjaWZpYyB0byBsaWJyYXJ5IG5hbWVzIHdpdGhvdXQgcGF0aHMKCSAgICAgIChuYW1lIGxpYmZvby5hIHdpdGhvdXQgcGF0aCBiZWNvbWVzIC1XbCwtQnN0YXRpYyAtbGZvbykKCSAgICAtIE1ha2UgZGlyZWN0b3J5IG9yZGVyaW5nIHNwZWNpZmljIHRvIGEgcnVudGltZSBwYXRoCgkgIGNvbXB1dGF0aW9uIGZlYXR1cmUKCSAgICAgIChsb29rIGZvciBjb25mbGljdGluZyBTT05BTUVzIGluc3RlYWQgb2YgbGlicmFyeSBuYW1lcykKCSAgICAtIEltcGxlbWVudCBwcm9wZXIgcnBhdGggc3VwcG9ydCBvbiBIUC1VWCBhbmQgQUlYLgoKMjAwOC0wMS0yMiAwODo1MiAga2luZwoKCSogU291cmNlL2t3c3lzL2hhc2hfbWFwLmh4eC5pbjogQ09NUDogUmVtb3ZlIGlubGluZSBrZXl3b3JkIGZyb20KCSAgZm9yd2FyZCBkZWNsYXJhdGlvbiBmb3IgVlM5LgoKMjAwOC0wMS0yMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTIxIDIyOjQ4ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBFTkg6IFVwZGF0ZWQgZmluZF9wYWNrYWdlCgkgIGRvY3VtZW50YXRpb24gdG8gZGVzY3JpYmUgY29tbW9uIHVzYWdlIGZpcnN0LgoKMjAwOC0wMS0yMSAyMDo1NyAga2luZwoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ29tcGlsZXJJZC5jbWFrZSwKCSAgQ01ha2VGaW5kQmluVXRpbHMuY21ha2U6IEVOSDogQ2xlYW51cCBjaHJwYXRoIGZlYXR1cmUgYnkgbm90CgkgIGRpc3BsYXlpbmcgZXhlIGZvcm1hdCBvciBwbGFjaW5nIG5vbi1hZHZhbmNlZCBvcHRpb25zIGluIGNhY2hlLgoKMjAwOC0wMS0yMSAxODozMCAga2luZwoKCSogU291cmNlLzogY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oOiBFTkg6CgkgIEFkZCBzdXBwb3J0IHRvIGZpbmRfbGlicmFyeSB0byB0cmFuc2Zvcm0gL2xpYiB0byAvbGliMzIgb24gc29tZQoJICBhcmNoaXRlY3R1cmVzLgoKMjAwOC0wMS0yMSAxODozMCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwgTW9kdWxlcy9DTWFrZUNDb21waWxlckFCSS5jLAoJICBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlckFCSS5jcHAsIE1vZHVsZXMvQ01ha2VDb21waWxlckFCSS5oLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ29tcGlsZXJBQkkuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBTb3VyY2UvY21Eb2N1bWVudFZhcmlhYmxlcy5jeHg6IEVOSDogR2VuZXJhbGl6ZSB0aGUgY2hlY2sgZm9yCgkgIHNpemVvZiB2b2lkKiB0byBkZXRlY3QgbW9yZSBBQkkgaW5mb3JtYXRpb24uCgoyMDA4LTAxLTIxIDE3OjI5ICBraW5nCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBEbyBub3QgZ2V0IGluIGluZmluaXRlIGxvb3Agd2hlbgoJICBjaGVja2luZyBtYWtlIHRvb2wgdmVyc2lvbiBpbiBjbWFrZSBidWlsZCB0cmVlLgoKMjAwOC0wMS0yMSAxMzo1OSAga2luZwoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBBZGRlZCBtaXNzaW5nIGRvY3VtZW50YXRpb24gb2YKCSAgTElOS19GTEFHU188Q09ORklHPiBwcm9wZXJ0eS4KCjIwMDgtMDEtMjEgMTM6MDQgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHg6IENPTVA6IHNucHJpbnRmIGlzIG5vdCBwb3J0YWJsZS4KCjIwMDgtMDEtMjEgMTI6NTYgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZS5pbiwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuaDogRU5IOiBmaW5hbCAyLjQuOAoKMjAwOC0wMS0yMSAwODo0OCAga2luZwoKCSogTW9kdWxlcy9yZWFkbWUudHh0LCBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuaCwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9GaW5kUGFja2FnZVRlc3QvRmluZFZlcnNpb25UZXN0QS5jbWFrZSwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L0ZpbmRWZXJzaW9uVGVzdEIuY21ha2UsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9GaW5kVmVyc2lvblRlc3RDLmNtYWtlOiBFTkg6IEltcGxlbWVudAoJICB2ZXJzaW9uIHN1cHBvcnQgaW4gdGhlIGZpbmRfcGFja2FnZSBjb21tYW5kIG1vZHVsZSBtb2RlLiAgVmVyc2lvbgoJICBudW1iZXJzIHByb3ZpZGVkIHRvIHRoZSBjb21tYW5kIGFyZSBjb252ZXJ0ZWQgdG8gdmFyaWFibGUKCSAgc2V0dGluZ3MgdG8gdGVsbCB0aGUgRmluZFhYWC5jbWFrZSBtb2R1bGUgd2hhdCB2ZXJzaW9uIGlzCgkgIHJlcXVlc3RlZC4gIFRoaXMgYWRkcmVzc2VzIGlzc3VlICMxNjQ1LgoKMjAwOC0wMS0yMSAwODowMSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogRml4IFZTNiBhbmQgb2xkIEhQIGJ1aWxkLgoJICBUaGlzIHNvdXJjZSBkb2VzIG5vdCBoYXZlIHRoZSAjZGVmaW5lIGZvciBoYWNrLgoKMjAwOC0wMS0yMSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTIwIDE5OjI5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpeCBwcmV2aW91cyBjb21taXQgdG8gbm90IGFjY2VzcwoJICBlbXB0eSBzdHJpbmdzIG91dCBvZiBib3VuZHMuCgoyMDA4LTAxLTIwIDE3OjQxICBraW5nCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBCVUc6IE1ha2Ugc3VyZSBzZWFyY2ggcGF0aHMKCSAgbmV2ZXIgaGF2ZSBkb3VibGUtc2xhc2hlcy4gIExlYWRpbmcgd2l0aCB0d28gc2xhc2hlcyAoLy8pIG9uCgkgIGN5Z3dpbiBsb29rcyBsaWtlIGEgbmV0d29yayBwYXRoIGFuZCBkZWxheXMgd2hpbGUgd2FpdGluZyBmb3IgYQoJICBub24tZXhpc3RlbnQgbWFjaGluZS4gIFRoaXMgZmlsZSB3YXMgbGVmdCBvdXQgb2YgdGhlIHByZXZpb3VzCgkgIGNoZWNraW4gZm9yIHRoaXMgcHJvYmxlbS4KCjIwMDgtMDEtMjAgMTc6MjQgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZFBhdGhDb21tYW5kLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IE1ha2UKCSAgc3VyZSBzZWFyY2ggcGF0aHMgbmV2ZXIgaGF2ZSBkb3VibGUtc2xhc2hlcy4JTGVhZGluZyB3aXRoIHR3bwoJICBzbGFzaGVzICgvLykgb24gY3lnd2luIGxvb2tzIGxpa2UgYSBuZXR3b3JrIHBhdGggYW5kIGRlbGF5cyB3aGlsZQoJICB3YWl0aW5nIGZvciBhIG5vbi1leGlzdGVudCBtYWNoaW5lLgoKMjAwOC0wMS0yMCAxNjowMiAga2luZwoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBCVUc6IEZpbmRYMTEgbW9kdWxlIHNob3VsZCBzZWFyY2ggZm9yIFNNCgkgIGxpYnJhcnkgaW5zdGVhZCBvZiByZXR1cm5pbmcgLWxTTS4KCjIwMDgtMDEtMjAgMTM6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IENPTVA6IEZpeCBidWlsZCBkdXJpbmcgYm9vdHN0cmFwIG9uIE1TeXMuCgoyMDA4LTAxLTIwIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMTkgMTU6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBFTkg6CgkgIGltcHJvdmUgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkKCjIwMDgtMDEtMTkgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0xOCAxOTowMiAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVENMLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsIEZpbmRXaXNoLmNtYWtlOiBFTkg6CgkgIFRjbC9UayA4LjYgYWxwaGEgc2NoZWR1bGUgZm9yIE1heSAyMDA4LgoKMjAwOC0wMS0xOCAxODo0MCAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBDT01QOiBGaXggYnVpbGQgb24gQm9ybGFuZCA1LjUuCgoyMDA4LTAxLTE4IDE3OjExICBhbGV4CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogZG9uJ3QgY3Jhc2ggaWYKCSAgY21NYWtlZmlsZTo6UmFpc2VTY29wZSgpIGlzIGNhbGxlZCBmcm9tIGEgY21ha2UgZmlsZSBpbiB0aGUgdG9wCgkgIGxldmVsIGRpcmVjdG9yeSBpbiBub3JtYWwgY29kZSAoaS5lLiBub3Qgd2l0aGluIGEgZnVuY3Rpb24pCgoJICBBbGV4CgoyMDA4LTAxLTE4IDE2OjA2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UuaW46IEVOSDogbWFrZSBzdXJlIG1zdmM5MCBnZXRzCgkgIHNldAoKMjAwOC0wMS0xOCAxNTo1MiAgYWxleAoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIE1vZHVsZXMvRmluZHd4V2lkZ2V0cy5jbWFrZSwgU291cmNlL2NtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21SYWlzZVNjb3BlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVJhaXNlU2NvcGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4LCBTb3VyY2UvY21TZXRDb21tYW5kLmgsCgkgIFRlc3RzL0Z1bmN0aW9uVGVzdC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvRnVuY3Rpb25UZXN0L1V0aWwuY21ha2UsCgkgIFRlc3RzL0Z1bmN0aW9uVGVzdC9TdWJEaXJTY29wZS9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUKCSAgUkFJU0VfU0NPUEUoKSBhZ2FpbiBhbmQgaW5zdGVhZCBhZGQgU0VUKDx2YXI+IDx2YWx1ZT4KCSAgUEFSRU5UX1NDT1BFKQoKCSAgQWxleAoKMjAwOC0wMS0xOCAxNToxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IG1ha2Ugc3VyZSBNU1ZDOTAgaXMgc2V0CgoyMDA4LTAxLTE4IDE0OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuaDogRU5IOiBhZGQgTVNWQzkwIGRlZmluZSB0byB2czkKCSAgaWRlCgoyMDA4LTAxLTE4IDE0OjAyICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRUQ0wuY21ha2UsIEZpbmRUY2xzaC5jbWFrZSwgRmluZFdpc2guY21ha2U6IEVOSDoKCSAgY2xlYW51cCBGaW5kUGVybCBhbmQgRmluZFRjbCAodXNlIEFjdGl2ZVN0YXRlIEN1cnJlbnRWZXJzaW9uLCBhbmQKCSAgc3VwcG9ydCBUY2wvVGsgOC41KQoKMjAwOC0wMS0xOCAxMzo1MSAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVGNsc2guY21ha2UsIEZpbmRXaXNoLmNtYWtlOiBFTkg6IGNsZWFudXAgRmluZFBlcmwKCSAgYW5kIEZpbmRUY2wgKHVzZSBBY3RpdmVTdGF0ZSBDdXJyZW50VmVyc2lvbiwgYW5kIHN1cHBvcnQgVGNsL1RrCgkgIDguNSkKCjIwMDgtMDEtMTggMTM6NDYgIGJhcnJlCgoJKiBNb2R1bGVzLzogRmluZFRDTC5jbWFrZSwgRmluZFRjbHNoLmNtYWtlLCBGaW5kV2lzaC5jbWFrZTogRU5IOgoJICBjbGVhbnVwIEZpbmRQZXJsIGFuZCBGaW5kVGNsICh1c2UgQWN0aXZlU3RhdGUgQ3VycmVudFZlcnNpb24sIGFuZAoJICBzdXBwb3J0IFRjbC9UayA4LjUpCgoyMDA4LTAxLTE4IDEzOjE1ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRQZXJsLmNtYWtlLCBGaW5kVENMLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsCgkgIEZpbmRXaXNoLmNtYWtlOiBFTkg6IGNsZWFudXAgRmluZFBlcmwgYW5kIEZpbmRUY2wgKHVzZQoJICBBY3RpdmVTdGF0ZSBDdXJyZW50VmVyc2lvbiwgYW5kIHN1cHBvcnQgVGNsL1RrIDguNSkKCjIwMDgtMDEtMTggMTI6MjYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5oOiBTVFlMRTogZml4IGJ1ZyA1NjgyCgoyMDA4LTAxLTE4IDEwOjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbWFrZS5jeHgsIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEJVRzogZml4IGJ1Z3MgNTUzOQoJICAocHJvZ3Jlc3MgZ29pbmcgYmV5b25kIDEwMCUgd2hlbiBuZXcgZmlsZXMgYXJlIGFkZGVkKSBhbmQgNTg4OQoJICAodGVzdHMgYXJlIG5vdCBmb3VuZCBpbiBzb21lIGNhc2VzIHdoZW4gdXNpbmcgYWRkX3N1YmRpcmVjdG9yeSB0bwoJICAuLiBldGMpCgoyMDA4LTAxLTE4IDA4OjM1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IENvbnN0cnVjdGlvbiBvZgoJICBDT01QSUxFX0RFRklOSVRJT05TXzxDT05GSUc+IHByb3BlcnR5IG5hbWUgbXVzdCB1c2UgdXBwZXItY2FzZQoJICBjb25maWcgbmFtZS4KCjIwMDgtMDEtMTggMDg6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXggbGluZS10b28tbG9uZy4KCjIwMDgtMDEtMTggMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0xNyAyMDo1OSAga2luZwoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDogRU5IOiBDbGFyaWZ5IGRvY3VtZW50YXRpb24gb2YKCSAgZmluZF9wYWNrYWdlIGNvbW1hbmQuCgoyMDA4LTAxLTE3IDIwOjM0ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBNYWtlCgkgIHBlci1jb25maWd1cmF0aW9uIENPTVBJTEVfREVGSU5JVElPTlNfPENPTkZJRz4gZGlyZWN0b3J5IHByb3BlcnR5CgkgIGluaXRpYWxpemVkIGZyb20gcGFyZW50LgoKMjAwOC0wMS0xNyAxOTo1OCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWlmb3J0LmNtYWtlLAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBFbmFibGUgdXNlIG9mCgkgIENPTVBJTEVfREVGSU5JVElPTlMgcHJvcGVydHkgZm9yIEZvcnRyYW4gc291cmNlcy4KCjIwMDgtMDEtMTcgMTk6NTAgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBDT01QSUxFX0RFRklOSVRJT05TIGRpcmVjdG9yeQoJICBwcm9wZXJ0eSBuZWVkcyB0byBiZSBpbmhlcml0ZWQgZnJvbSBwYXJlbnQgd2hlbiBhIGRpcmVjdG9yeSBpcwoJICBjcmVhdGVkLgoKMjAwOC0wMS0xNyAxOToyOSAga2luZwoKCSogU291cmNlL2NtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1ByZXByb2Nlc3MvcHJlcHJvY2Vzcy5jLAoJICBUZXN0cy9QcmVwcm9jZXNzL3ByZXByb2Nlc3MuY3h4OiBFTkg6IENvbnZlcnRlZCBjbU1ha2VmaWxlCgkgIERlZmluZUZsYWdzIGFkZGVkIGJ5IEFERF9ERUZJTklUSU9OUyBjb21tYW5kIGludG8gYQoJICBDT01QSUxFX0RFRklOSVRJT05TIGRpcmVjdG9yeSBwcm9wZXJ0eS4KCjIwMDgtMDEtMTcgMTg6MTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtUHJvcGVydHkuY3h4LAoJICBjbVByb3BlcnR5LmgsIGNtUHJvcGVydHlNYXAuY3h4LCBjbVByb3BlcnR5TWFwLmgsCgkgIGNtU2V0UHJvcGVydHlDb21tYW5kLmN4eCwgY21TZXRQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwKCSAgY21UZXN0LmN4eCwgY21UZXN0LmgsIGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOiBBZGQgQXBwZW5kUHJvcGVydHkKCSAgbWV0aG9kcyBmb3IgdXNlIGJ5IEMrKyBjb2RlIGluIENNYWtlLiAgU2ltcGxpZnkgaW1wbGVtZW50YXRpb24gb2YKCSAgU0VUX1BST1BFUlRZIGNvbW1hbmQgYnkgdXNpbmcgdGhlbS4KCjIwMDgtMDEtMTcgMTc6NDkgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogU1RZTEU6IFBBVEhTIGlzIG9wdGlvbmFsICgjNjI1MykKCgkgIEFsZXgKCjIwMDgtMDEtMTcgMTc6NDMgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogU1RZTEU6IGZpeCB0eXBvICgjNjI1MikKCgkgIEFsZXgKCjIwMDgtMDEtMTcgMTc6MzQgIGtpbmcKCgkqIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQ6IEVOSDogVXNlIG5ldyBzZXRfcHJvcGVydHkKCSAgc2lnbmF0dXJlIHRvIHNldCBDT01QSUxFX0RFRklOSVRJT05TIHByb3BlcnRpZXMgaW4gUHJlcHJvY2VzcwoJICB0ZXN0LgoKMjAwOC0wMS0xNyAxNzoxOSAga2luZwoKCSogTW9kdWxlcy9DUGFja0RlYi5jbWFrZSwgTW9kdWxlcy9GZWF0dXJlU3VtbWFyeS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZSwgU291cmNlL2NtR2V0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0UHJvcGVydHlDb21tYW5kLmgsIFRlc3RzL1Byb3BlcnRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogQ2hhbmdlZCBzaWduYXR1cmUgb2YgR0VUX1BST1BFUlRZIGNvbW1hbmQgdG8gYmUgbW9yZQoJICBwb3dlcmZ1bCBhbmQgZXh0ZW5kaWJsZS4KCjIwMDgtMDEtMTcgMTY6MjQgIGtpbmcKCgkqIFNvdXJjZS9jbVNldFByb3BlcnR5Q29tbWFuZC5jeHg6IENPTVA6IEZpeCBWUyBidWlsZC4KCjIwMDgtMDEtMTcgMTU6NTQgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlLCBNb2R1bGVzL0ZlYXR1cmVTdW1tYXJ5LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0JsdWVHZW5lTC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9DYXRhbW91bnQuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vR2VuZXJpYy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9Vbml4UGF0aHMuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vZUNvcy5jbWFrZSwgU291cmNlL2NtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldFByb3BlcnRpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVNldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldFByb3BlcnR5Q29tbWFuZC5oLCBUZXN0cy9Eb2NUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Qcm9wZXJ0aWVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlbmFtZSBTRVRfUFJPUEVSSVRFUwoJICBjb21tYW5kIHRvIFNFVF9QUk9QRVJUWSBhbmQgZ2l2ZSBpdCBhIG1vcmUgcG93ZXJmdWwgc2lnbmF0dXJlLgoKMjAwOC0wMS0xNyAxMjo0NCAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGN0ZXN0LmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogRU5IOiB1c2UgQ1Rlc3RUZXN0ZmlsZS50eHQKCjIwMDgtMDEtMTcgMTI6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUVuYWJsZVRlc3RpbmdDb21tYW5kLmg6IEVOSDogcmVtb3ZlIHVudXNlZCBwcm90b3R5cGUKCjIwMDgtMDEtMTcgMTA6MzUgIGtpbmcKCgkqIGJvb3RzdHJhcDogQ09NUDogVGhlIGZpbmRfcGFja2FnZSBjb21tYW5kIG5lZWRzIG1vcmUgb2Yga3dzeXMuCgkgIEFkZGVkIFN0cmluZy5oLCBTdHJpbmcuYywgYW5kIGF1dG9fcHRyLmh4eCB0byBib290c3RyYXBwaW5nCgkgIGt3c3lzLgoKMjAwOC0wMS0xNyAxMDozMiAga2luZwoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDogQ09NUDogRml4IHdhcm5pbmcgYWJvdXQgbWlzc2luZwoJICB2aXJ0dWFsIGRlc3RydWN0b3IuCgoyMDA4LTAxLTE3IDEwOjI2ICBtYXJ0aW5rCgoJKiBUZXN0cy9UdXRvcmlhbC9TdGVwNy86IENNYWtlTGlzdHMudHh0LCBDVGVzdENvbmZpZy5jbWFrZTogU1RZTEU6CgkgIGNoYW5nZSBjYXNlIHRvIG1hdGNoIGJvb2sKCjIwMDgtMDEtMTcgMTA6MDAgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0veGxmLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBFbmFibGUKCSAgQ01BS0VfPGxhbmc+X0RFRklORV9GTEFHIGZvciBDT01QSUxFX0RFRklOSVRJT05TIHByb3BlcnR5CgkgIGltcGxlbWVudGF0aW9uLgoKMjAwOC0wMS0xNyAwOTowNiAga2luZwoKCSogVGVzdHMvRmluZFBhY2thZ2VUZXN0LzogQ01ha2VMaXN0cy50eHQsCgkgIFRBcHAuYXBwL0NvbnRlbnRzL1Jlc291cmNlcy9UQXBwQ29uZmlnLmNtYWtlLAoJICBUQXBwLmFwcC9Db250ZW50cy9SZXNvdXJjZXMvY21ha2UvdGFwcC1jb25maWcuY21ha2UsCgkgIFRGcmFtZXdvcmsuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUmVzb3VyY2VzL3RmcmFtZXdvcmstY29uZmlnLmNtYWtlLAoJICBURnJhbWV3b3JrLmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9DTWFrZS9URnJhbWV3b3JrQ29uZmlnLmNtYWtlLAoJICBsaWIvQmFyL0JhckNvbmZpZy5jbWFrZSwgbGliL0Jhci9jbWFrZS9iYXItY29uZmlnLmNtYWtlLAoJICBsaWIvVEFwcC9UQXBwQ29uZmlnLmNtYWtlLCBsaWIvZm9vLTEuMi9mb28tY29uZmlnLmNtYWtlLAoJICBsaWIvZm9vLTEuMi9DTWFrZS9Gb29Db25maWcuY21ha2UsCgkgIGxpYi9zdWZmaXgvdGVzdC9TdWZmaXhUZXN0Q29uZmlnLmNtYWtlOiBFTkg6IFVwZGF0ZWQKCSAgRmluZFBhY2thZ2VUZXN0IHRvIHRlc3QgbmV3IGZpbmRfcGFja2FnZSBjb21tYW5kIGZlYXR1cmVzLgoKMjAwOC0wMS0xNyAwOTowMiAga2luZwoKCSogU291cmNlLzogY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIGNtRmluZEJhc2UuY3h4LCBjbUZpbmRCYXNlLmgsCgkgIGNtRmluZENvbW1vbi5jeHgsIGNtRmluZENvbW1vbi5oLCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGFja2FnZUNvbW1hbmQuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHg6IEVOSDogTWFqb3IKCSAgaW1wcm92ZW1lbnRzIHRvIHRoZSBGSU5EX1BBQ0tBR0UgY29tbWFuZC4gIFNlZSBidWcgIzM2NTkuCgoJICAgIC0gVXNlIENNQUtFX1BSRUZJWF9QQVRIIGFuZCBDTUFLRV9TWVNURU1fUFJFRklYX1BBVEggYW1vbmcKCSAgb3RoZXIgbWVhbnMKCSAgICAgIHRvIGxvY2F0ZSBwYWNrYWdlIGNvbmZpZ3VyYXRpb24gZmlsZXMuCgkgICAgLSBDcmVhdGUgY21GaW5kQ29tbW9uIGFzIGJhc2UgZm9yIGNtRmluZEJhc2UgYW5kCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kCgkgICAgLSBNb3ZlIGNvbW1vbiBmdW5jdGlvbmFsaXR5IHVwIHRvIGNtRmluZENvbW1vbgoJICAgIC0gSW1wcm92ZSBkb2N1bWVudGF0aW9uIG9mIEZJTkRfKiBjb21tYW5kcy4KCSAgICAtIEZpeCBGSU5EXyogY29tbWFuZHMgdG8gbm90IGFkZCBmcmFtZXdvcmsvYXBwIHBhdGhzIGluIHdyb25nCgkgIHBsYWNlLgoKMjAwOC0wMS0xNyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTE2IDExOjUzICBrYXJ0aGlrCgoJKiBEb2NzLzogY21ha2UtaW5kZW50LnZpbSwgY21ha2Utc3ludGF4LnZpbTogRU5IOgoKCgkJCX4vQ01ha2Uvc3JjL0RvY3MgKiBBZGRpdGlvbnMgZm9yIGNtYWtlLWNvbW1hbmQKCSAgaGlnaGxpZ3RpbmcuCSogQWRkaXRpb25zIGZvciBvcGVyYXRvci1oaWdobGlnaHRpbmcKCjIwMDgtMDEtMTYgMTE6MjQgIGtpbmcKCgkqIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eDogRU5IOiBBbGxvdyBMSVNUKEFQUEVORCkgY29tbWFuZCB0bwoJICBhcHBlbmQgbm90aGluZy4KCjIwMDgtMDEtMTYgMTA6MDQgIGRhdmlkLmNvbGUKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogQlVHOiBFbGltaW5hdGUgbWVzc2FnZSAtIGl0IHBvcHMgdXAgYW4KCSAgYW5ub3lpbmcgZGlhbG9nIHdoZW5ldmVyIHlvdSBydW4gQ01ha2VTZXR1cCBpbiBhIHByb2plY3Qgd2l0aAoJICBqYXZhIHdyYXBwaW5nIHR1cm5lZCBvbi4KCjIwMDgtMDEtMTYgMDk6NTEgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBEYXJ3aW4uY21ha2UsIFVuaXhQYXRocy5jbWFrZSwKCSAgV2luZG93c1BhdGhzLmNtYWtlLCBzeWxsYWJsZS5jbWFrZTogRU5IOiBDb252ZXJ0IE1vZHVsZXMvUGxhdGZvcm0KCSAgc3BlY2lmaWNhdGlvbiBvZiBzeXN0ZW0gc2VhcmNoIHBhdGhzIHRvIHVzZQoJICBDTUFLRV9TWVNURU1fUFJFRklYX1BBVEggd2hlbiBwb3NzaWJsZS4KCjIwMDgtMDEtMTYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0xNSAyMToyMCAga2luZwoKCSogTW9kdWxlcy86IEZpbmRGcmVldHlwZS5jbWFrZSwgRmluZEdEQUwuY21ha2UsIEZpbmRHSUYuY21ha2UsCgkgIEZpbmRMdWE1MC5jbWFrZSwgRmluZEx1YTUxLmNtYWtlLCBGaW5kT3BlbkFMLmNtYWtlLAoJICBGaW5kT3BlblRocmVhZHMuY21ha2UsIEZpbmRQaHlzRlMuY21ha2UsIEZpbmRQcm9kdWNlci5jbWFrZSwKCSAgRmluZFF1aWNrVGltZS5jbWFrZSwgRmluZFNETC5jbWFrZSwgRmluZFNETF9pbWFnZS5jbWFrZSwKCSAgRmluZFNETF9taXhlci5jbWFrZSwgRmluZFNETF9uZXQuY21ha2UsIEZpbmRTRExfdHRmLmNtYWtlLAoJICBGaW5kb3NnLmNtYWtlLCBGaW5kb3NnREIuY21ha2UsIEZpbmRvc2dGWC5jbWFrZSwgRmluZG9zZ0dBLmNtYWtlLAoJICBGaW5kb3NnSW50cm9zcGVjdGlvbi5jbWFrZSwgRmluZG9zZ01hbmlwdWxhdG9yLmNtYWtlLAoJICBGaW5kb3NnUGFydGljbGUuY21ha2UsIEZpbmRvc2dQcm9kdWNlci5jbWFrZSwKCSAgRmluZG9zZ1NoYWRvdy5jbWFrZSwgRmluZG9zZ1NpbS5jbWFrZSwgRmluZG9zZ1RlcnJhaW4uY21ha2UsCgkgIEZpbmRvc2dUZXh0LmNtYWtlLCBGaW5kb3NnVXRpbC5jbWFrZSwgRmluZG9zZ1ZpZXdlci5jbWFrZTogQlVHOgoJICBSZW1vdmUgcmVmZXJlbmNlcyB0byBDTUFLRV9QUkVGSVhfUEFUSCB2YXJpYWJsZS4gIEl0IHNob3VsZCBub3QKCSAgYmUgcmVmZXJlbmNlZCBkaXJlY3RseSBieSBGSU5EXyogY29tbWFuZCBjYWxscy4gIFRoZSBjb21tYW5kcwoJICBzZWFyY2ggaXQgYXV0b21hdGljYWxseS4KCjIwMDgtMDEtMTUgMjE6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgVGVzdHMvUHJlcHJvY2Vzcy9DTWFrZUxpc3RzLnR4dDogRU5IOgoJICBSZW5hbWVkIDxDT05GSUc+X0NPTVBJTEVfREVGSU5JVElPTlMgdG8KCSAgQ09NUElMRV9ERUZJTklUSU9OU188Q09ORklHPiBmb3IgYmV0dGVyIGRvY3VtZW50YXRpb24gY2xhcml0eS4KCjIwMDgtMDEtMTUgMTk6NTYgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2U6IFNUWUxFOiBmaXggaW5maW5pc2hlZCBjb21tZW50CgoJICBBbGV4CgoyMDA4LTAxLTE1IDE3OjAyICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrT3B0aW9ucy5jbWFrZS5pbjogRU5IOiBmaXggYWRkL3JlbW92ZSBwcm9ncmFtIG5hbWUKCjIwMDgtMDEtMTUgMTY6MDIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cE1hbmlmZXN0LnhtbDogRU5IOiBtb3ZlIG1vcmUgc3R1ZmYKCSAgb3ZlciBhbmQgZ2V0IHZzIDkgd29ya2luZwoKMjAwOC0wMS0xNSAxNDoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA2MjMxLCBiYWQgcmVnZXgKCSAgZm9yIHN1bm9zLCB3b3JrZWQgYnkgY2hhbmNlLCBidXQgYmV0dGVyIHRvIGhhdmUgaXQgcmlnaHQKCjIwMDgtMDEtMTUgMTQ6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LCBRdERpYWxvZy9SRUFETUU6IEVOSDogcmVtb3ZlCgkgIHBhdGNoIGFzIGRpcmVjdG9yeSBjaGFuZ2Ugd2FzIGFscmVhZHkgZml4ZWQKCjIwMDgtMDEtMTUgMTE6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyA2MjM0LAoJICB1c2UgY2QgL2Qgc28gdGhhdCBkcml2ZXMgY2FuIGJlIGNoYW5nZWQuCgoyMDA4LTAxLTE1IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZGVkIHBhcnRpYWwgaW1wbGVtZW50YXRpb24gb2YKCSAgcmVjb2duaXppbmcgcGVyLWNvbmZpZ3JhdGlvbiBwcm9wZXJ0aWVzLgoKMjAwOC0wMS0xNSAxMDo0OSAga2luZwoKCSogU291cmNlLzogY21Tb3VyY2VGaWxlLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IEFkZCBleHBsaWNpdAoJICBkb2N1bWVudGF0aW9uIGVudHJ5IGZvciBjb25maWd1cmF0aW9uLXNwZWNpZmljCgkgIDxDT05GSUc+X0NPTVBJTEVfREVGSU5JVElPTlMuCgoyMDA4LTAxLTE1IDEwOjM4ICBraW5nCgoJKiBUZXN0cy9Eb2NUZXN0L0RvY1Rlc3QuY3h4OiBCVUc6IEFkZCBuZXdsaW5lIGJldHdlZW4gcHJvcGVydGllcy4KCjIwMDgtMDEtMTUgMDk6MDkgIGtpbmcKCgkqIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQ6IEJVRzogVGVzdCBuZWVkcyBhbnNpIEMgY29kZQoJICBzdXBwb3J0LgoKMjAwOC0wMS0xNSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA4LTAxLTE0IDE5OjIwICBhbGV4CgoJKiBEb2NzLzogY21ha2UtaW5kZW50LnZpbSwgY21ha2Utc3ludGF4LnZpbTogQlVHOiBmaXggdmltCgkgIGhpZ2hsaWdodGluZywgc2VlICM2MjM4CgoJICBBbGV4CgoyMDA4LTAxLTE0IDE5OjAyICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRmluZEJpblV0aWxzLmNtYWtlOiBCVUc6IGFjY29yZGluZyB0byB0aGUgYmludXRpbHMKCSAgbWFpbGluZyBsaXN0IGNocnBhdGggZG9lc24ndCB3b3JrIHdoZW4gY3Jvc3MgY29tcGlsaW5nCgoJICBBbGV4CgoyMDA4LTAxLTE0IDE3OjE5ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRTdWJ2ZXJzaW9uLmNtYWtlOiBCVUc6IHNldCBMQ19BTEwgdG8gQywgc28gbWVzc2FnZQoJICBmcm9tIHN2biBhcmUgbm90IHRyYW5zbGF0ZWQsIHdoaWNoIGNhbiBsZWFkIHRvIHByb2JsZW1zIChzaW5jZQoJICB0aGUgb3V0cHV0IGlzIHBhcnNlZCwgd2hpY2ggZmFpbHMgdGhlbikKCgkgIEJyYWQsIEJpbGwsIGNhbiB5b3UgdGhpbmsgb2YgYW55IHJlYXNvbnMgdGhpcyBjaGFuZ2UgbWlnaHQgY3JlYXRlCgkgIHByb2JsZW1zID8KCgkgIEFsZXgKCjIwMDgtMDEtMTQgMTc6MDUgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBCVUc6IG1ha2UgLWhlbHAtbW9kdWxlLWxpc3Qgd29yayBieQoJICBmaWxsaW5nIHRoZSBtb2R1bGVzIHNlY3Rpb24gZmlyc3QsIGFsc28gZm9yIGN1c3RvbSBtb2R1bGVzCgoJICBBbGV4CgoyMDA4LTAxLTE0IDExOjIxICBraW5nCgoJKiBUZXN0cy9QcmVwcm9jZXNzL0NNYWtlTGlzdHMudHh0OiBCVUc6IERpc2FibGUgc2VtaWNvbG9uIHRlc3Qgb24KCSAgVlMgNy4wLgoKMjAwOC0wMS0xNCAxMTowNyAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBDT01QOiBGaXggd2FybmluZyBhYm91dAoJICBiYWNrc2xhc2ggYXQgZW5kIG9mIGMrKyBjb21tZW50LgoKMjAwOC0wMS0xNCAwOToyMCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9HZW5lcmljLVNEQ0MtQy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9RTlguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWljbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLXdjbDM4Ni5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9jbC5jbWFrZSwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1ByZXByb2Nlc3MvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1ByZXByb2Nlc3MvZmlsZV9kZWYuaCwKCSAgVGVzdHMvUHJlcHJvY2Vzcy9wcmVwcm9jZXNzLmMsIFRlc3RzL1ByZXByb2Nlc3MvcHJlcHJvY2Vzcy5jeHgsCgkgIFRlc3RzL1ByZXByb2Nlc3MvcHJlcHJvY2Vzcy5oLmluLAoJICBUZXN0cy9QcmVwcm9jZXNzL3ByZXByb2Nlc3NfdnM2LmN4eCwKCSAgVGVzdHMvUHJlcHJvY2Vzcy90YXJnZXRfZGVmLmg6IEVOSDogQ3JlYXRlIENPTVBJTEVfREVGSU5JVElPTlMKCSAgcHJvcGVydHkgZm9yIHRhcmdldHMgYW5kIHNvdXJjZSBmaWxlcy4gIENyZWF0ZQoJICA8Y29uZmlnPl9DT01QSUxFX0RFRklOSVRJT05TIHByb3BlcnR5IGFzIHBlci1jb25maWd1cmF0aW9uCgkgIHZlcnNpb24uICBBZGQgUHJlcHJvY2VzcyB0ZXN0IHRvIHRlc3QgdGhlIGZlYXR1cmUuICBEb2N1bWVudAoJICBsaW1pdGF0aW9ucyBvbiBYY29kZSBhbmQgVlM2IGdlbmVyYXRvcnMuCgoyMDA4LTAxLTE0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMTMgMTY6NTkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBSZW1vdmVkIHN0cmF5IGRlYnVnZ2luZwoJICBzdGF0ZW1lbnQuCgoyMDA4LTAxLTEzIDE2OjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGt3c3lzL1N5c3RlbS5jLAoJICBrd3N5cy9TeXN0ZW0uaC5pbjogRU5IOiBJbXByb3ZlZCBlc2NhcGluZyBpbiBrd3N5cy9TeXN0ZW0uICBBZGRlZAoJICBlc2NhcGUgb2YgJSBmb3IgTk1ha2UuICBBZGRlZCBlc2NhcGUgb2YgOyBmb3IgdGhlIFZTIElERS4KCjIwMDgtMDEtMTMgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0xMiAwOTo1MiAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogRml4IGJ1aWxkIG9uIGJvcmxhbmQuCgoyMDA4LTAxLTEyIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMTEgMTc6MzcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBBSVgtVmlzdWFsQWdlLUZvcnRyYW4uY21ha2UsCgkgIExpbnV4LVZpc3VhbEFnZS1Gb3J0cmFuLmNtYWtlLCB4bGYuY21ha2U6IEVOSDogYWRkIHN1cHBvcnQgZm9yCgkgIHhsZiB3aXRoIC1XRiwtRCBmb3IgLUQKCjIwMDgtMDEtMTEgMTM6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IEVOSDogYWRkCgkgIENNQUtFX0RFRklORV9GTEFHXyhMQU5HKSB0aGF0IGNhbiByZXBsYWNlIC1EIGZsYWdzIHdpdGggd2hhdCB0aGUKCSAgY29tcGlsZXIgYWN0dWFsbHkgdXNlcwoKMjAwOC0wMS0xMSAxMjo0MCAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6ICBGb3IgbW9jIGNvbW1hbmRzIG9uIFdpbmRvd3MsIHVzZQoJICBAcGFyYW1fZmlsZSBtZXRob2QgdG8gYWxsb3cgYXJndW1lbnRzICAgICAgIGxvbmdlciB0aGFuIFdpbmRvd3MnCgkgIGNvbW1hbmQgbGVuZ3RoIGxpbWl0YXRpb24uCSAgICBGaXhlcyAjNjIyMS4KCjIwMDgtMDEtMTEgMTA6MzYgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogTWVyZ2UgY2hhbmdlcyBmcm9tIG1haW4gdHJlZQoJICBpbnRvIFZUSy01LTAgYnJhbmNoLiAoU2VsZWN0ZWQgVXRpbGl0aWVzL2t3c3lzL1N5c3RlbVRvb2xzLmN4eAoJICBmaXhlcyBmb3IgS1dXaWRnZXRzIGZpbGUgYnJvd3NlciBkaWFsb2cpCgoyMDA4LTAxLTExIDA4OjMzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQKCSAgU3lzdGVtVG9vbHM6OlNwbGl0UGF0aFJvb3RDb21wb25lbnQgYW5kIHJlLWltcGxlbWVudCBTcGxpdFBhdGggdG8KCSAgdXNlIGl0LiAgQWRkIGJldHRlciB0cmVhdG1lbnQgb2YgdXNlciBob21lIGRpcmVjdG9yeSBwYXRocy4KCjIwMDgtMDEtMTEgMDg6MzAgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0NNYWtlVlM5RmluZE1ha2UuY21ha2UsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IHB1c2ggYSBmZXcgbW9yZSBjaGFuZ2VzCgkgIHRvIDIuNC44CgoyMDA4LTAxLTExIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMTAgMjE6NDIgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogTWVyZ2UgY2hhbmdlcyBmcm9tIG1haW4gdHJlZQoJICBpbnRvIFZUSy01LTAgYnJhbmNoLiAoY3ZzIC1xIHVwIC1qMS4yMDUgLWoxLjIwNgoJICBVdGlsaXRpZXMva3dzeXMvU3lzdGVtVG9vbHMuY3h4KQoKMjAwOC0wMS0xMCAxODo1MiAgYWxleAoKCSogTW9kdWxlcy9GaW5kQm9vc3QuY21ha2U6IEJVRzogaXQgc2VlbXMgb24gc29tZSBpbnN0YWxsYXRpb25zCgkgIGJvb3N0IGlzIGluc3RhbGxlZCB1bmRlciBib29zdC0xXzM0ICwgc2VlICM1MDMwCgoJICBGaW5kQm9vc3QuY21ha2UgcmVjb21tZW5kcyB1c2luZyBMSU5LX0RJUkVDVE9SSUVTKCksIGlzIHRoaXMKCSAgcmVhbGx5IGdvb2QgPwoKCSAgQWxleAoKMjAwOC0wMS0xMCAxODozMiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogRml4IGhhbmcgaW4gUHJvY2Vzc19LaWxsIG9uIE9TIFgKCSAgY2F1c2VkIGJ5IGFuIE9TIGJ1ZyBpbiB3aGljaCBhIHBpcGUgcmVhZCBlbmQgY2Fubm90IGJlIGNsb3NlZCBpZgoJICB0aGUgcGlwZSB3cml0ZSBlbmQgaXMgb3BlbiwgdGhlIHBpcGUgaXMgZnVsbCwgYW5kIGFub3RoZXIgcHJvY2VzcwoJICBpcyBibG9ja2luZyB3YWl0aW5nIHRvIHdyaXRlLiAgV29yayBhcm91bmQgdGhlIHByb2JsZW0gYnkga2lsbGluZwoJICB0aGUgY2hpbGRyZW4gYmVmb3JlIGNsb3NpbmcgdGhlIHBpcGVzLgoKMjAwOC0wMS0xMCAxNjoyMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kU1dJRy5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA0MTQ1IG11Y2ggYmV0dGVyCgkgIGZpbmRTd2lnCgoyMDA4LTAxLTEwIDE1OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyA2MTkzLCBmaXggeGNvZGUKCSAgZGVwZW5kIGhlbHBlcgoKMjAwOC0wMS0xMCAxNDo0NyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1WaXN1YWxBZ2UtQy5jbWFrZTogQlVHOiBSZW1vdmVkIHN0cmF5CgkgIGRlYnVnZ2luZyBtZXNzYWdlLgoKMjAwOC0wMS0xMCAxNDo0NyAga2luZwoKCSogTW9kdWxlcy9DTWFrZUxpc3RzLnR4dDogQlVHOiBOZWVkIHRvIGluc3RhbGwgZm9ydHJhbiBjb21waWxlciBpZAoJICBzb3VyY2UuCgoyMDA4LTAxLTEwIDExOjU4ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRm9ydHJhbkNvbXBpbGVySWQuRjkwOiBTVFlMRTogTW92ZSBWaXN1YWxBZ2UgaWQKCSAgbWFjcm8gdG8gY29ycmVjdCBibG9jay4KCjIwMDgtMDEtMTAgMTA6NTAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUZvcnRyYW5Db21waWxlcklkLkY5MCwKCSAgUGxhdGZvcm0vTGludXgtVmlzdWFsQWdlLUMuY21ha2UsCgkgIFBsYXRmb3JtL0xpbnV4LVZpc3VhbEFnZS1Gb3J0cmFuLmNtYWtlOiBFTkg6IGFkZCBzdXBwb3J0IGZvcgoJICB2aXN1YWwgYWdlIGZvcnRyYW4gb24gbGludXgKCjIwMDgtMDEtMTAgMDk6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogQ09NUDogRml4IGJ1aWxkIG9uIFZTNi4KCjIwMDgtMDEtMTAgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0wOSAyMjowOSAgcGVyZXJhCgoJKiBTb3VyY2UvOiBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwKCSAgY21Eb2N1bWVudGF0aW9uLmN4eCwgY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuaCwgY21GaW5kQmFzZS5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVNvdXJjZUZpbGUuY3h4LCBjbVN0cmluZ0NvbW1hbmQuaCwKCSAgY21UYXJnZXQuY3h4LCBjbVRlc3QuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmgsCgkgIGNtVmFyaWFibGVXYXRjaENvbW1hbmQuaCwgY21XaGlsZUNvbW1hbmQuaDogU1RZTEU6IFNwZWxsaW5nIGZpeGVzCgkgIG9uIGRvY3VtZW50YXRpb24KCjIwMDgtMDEtMDkgMTY6NTkgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBFTkg6IHNvcnQgdGhlIG1vZHVsZSBmaWxlcwoJICBhbHBoYWJldGljYWxseSB3aGVuIGdlbmVyYXRpbmcgdGhlIGRvY3VtZW50YXRpb24gb2Ygcmh0IG1vZHVsZXMKCgkgIEFsZXgKCjIwMDgtMDEtMDkgMTA6MzAgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1pZm9ydC5jbWFrZSwKCSAgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4LCBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBUZXN0cy9Gb3J0cmFuL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9Gb3J0cmFuL3Rlc3RfcHJlcHJvY2Vzcy5GOTA6CgkgIEVOSDogUGF0Y2ggZnJvbSBNYWlrIHRvIGFkZCBwcmVwcm9jZXNzb3IgZGlyZWN0aXZlIGhhbmRsaW5nIHRvCgkgIEZvcnRyYW4gZGVwZW5kZW5jeSBzY2FubmluZy4JQWxzbyBhZGRlZCAtZnBwIGZsYWcgdG8gSW50ZWwKCSAgRm9ydHJhbiBjb21waWxlciBvbiBXaW5kb3dzIGJ5IGRlZmF1bHQuCgoyMDA4LTAxLTA5IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMDggMTc6NTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbUluZm9ybWF0aW9uLmN4eCwgU3lzdGVtSW5mb3JtYXRpb24uaHh4LmluOgoJICBFTkg6IGZpZ3VyZSBvdXQgbG9uZyBsb25nIHZhbHVlCgoyMDA4LTAxLTA4IDE3OjIwICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtSW5mb3JtYXRpb24uY3h4OiBFTkg6IGZpeCBsb3RzIG9mIHdhcm5pbmdzCgoyMDA4LTAxLTA4IDE2OjQwICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DUGFjay5jbWFrZTogRU5IOgoJICByZW1vdmUgcmVsb2NhdGUgb3B0aW9uIGluIG1hYyBpbnN0YWxsZXIgYXMgaXQgaXMgYnJva2VuCgoyMDA4LTAxLTA4IDE2OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogdHVybiBvZmYgZm9yIG5vdwoKMjAwOC0wMS0wOCAxNDo1OSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIFN5c3RlbUluZm9ybWF0aW9uLmN4eCwKCSAgU3lzdGVtSW5mb3JtYXRpb24uaHh4LmluOiBFTkg6IGZpeCBsZWFrcyBhbmQgdHVybiBvbiBieSBkZWZhdWx0CgoyMDA4LTAxLTA4IDExOjQzICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgdGVzdFN5c3RlbUluZm9ybWF0aW9uLmN4eDogRU5IOgoJICBhZGQgbWlzc2luZyBmaWxlCgoyMDA4LTAxLTA4IDExOjM4ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgU3lzdGVtSW5mb3JtYXRpb24uY3h4LAoJICBTeXN0ZW1JbmZvcm1hdGlvbi5oeHguaW46IEVOSDogYWRkIG5ldyBzeXN0ZW0gaW5mb3JtYXRpb24gY2xhc3MKCSAgZm9yIHVzZSBpbiBjdGVzdAoKMjAwOC0wMS0wOCAxMTowNiAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOgoJICBsYXN0IGNoYW5nZSBmb3IgMi40LjggYnJhbmNoLCBJIGhvcGUsIGZpeCBmb3IgZmluZHF0CgoyMDA4LTAxLTA4IDA4OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEJVRzogbWFrZSBpdCBjb21waWxlIG9uIHZzIDYKCjIwMDgtMDEtMDggMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0wNyAyMzowOCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgQlVHOiBGaXggcGFyc2luZyBvZiBmb3J0cmFuIGluY2x1ZGUgZGlyZWN0aXZlcyBkdXJpbmcgZGVwZW5kZW5jeQoJICBzY2FubmluZy4gIFByZXZpb3VzbHkgb25seSAjaW5jbHVkZSB3b3JrZWQgYnV0IG5vdCBqdXN0IGluY2x1ZGUuCgoyMDA4LTAxLTA3IDE2OjEyICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlSmF2YUNvbXBpbGVyLmNtYWtlLmluLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogUmVzdG9yZSBvbGQgaW50ZXJmYWNlCgkgIG9mICJtYWtlIGZvby5vIiBhbmQgIm1ha2UgZm9vLmkiIGV2ZW4gdGhvdWdoIG9iamVjdCBmaWxlIG5hbWVzCgkgIG5vdyBpbmNsdWRlIHNvdXJjZSBleHRlbnNpb25zLiAgRm9yIEphdmEgd2UgYWxzbyBuZWVkIHRvIGFsd2F5cwoJICByZW1vdmUgdGhlIHNvdXJjZSBleHRlbnNpb24gKC5qYXZhIC0+IC5jbGFzcykuICBUaGlzIGZpeGVzIHRoZQoJICByZS1vcGVuaW5nIG9mIGJ1ZyAjNjE2OS4KCjIwMDgtMDEtMDcgMTQ6NTIgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogQlVHOiB3aXRoIGNtYWtlIDIuNCBJTlNUQUxMX0ZJTEVTKCkKCSAgd2l0aCBubyBmaWxlcyB3YXMgYWNjZXB0ZWQgYnkgY21ha2UsIHdpdGggY21ha2UgY3ZzIHdpdGhvdXQgdGhpcwoJICBwYXRjaCBhbiBpbnZhbGlkIGNtYWtlX2luc3RhbGwuY21ha2Ugc2NyaXB0IHdhcyBnZW5lcmF0ZWQgaW4gdGhpcwoJICBjYXNlLCBpdCBmYWlsZWQgd2l0aCBhbiBlcnJvciBpZiBubyBmaWxlcyB3ZXJlIGdpdmVuLiBTbyBqdXN0IGRvCgkgIG5vdGhpbmcgaWYgbm8gZmlsZXMgYXJlIGxpc3RlZCB0byBtYWtlIGl0IGNvbXBhdGlibGUuCgoJICBodHRwOi8vbGlzdHMua2RlLm9yZy8/bD1rZGUtY29tbWl0cyZtPTExOTk2NTE4NTExNDQ3OCZ3PTIKCgkgIEFsZXgKCjIwMDgtMDEtMDcgMTE6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogRU5IOiBDaGFuZ2VzIGJhc2VkIG9uIHBhdGNoIGZyb20KCSAgTWFpayBmb3IgYmV0dGVyIGNtRGVwZW5kc0ZvcnRyYW46Ok1vZHVsZXNEaWZmZXIuCgoyMDA4LTAxLTA3IDEwOjI3ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlLAoJICBDTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZTogRU5IOiBBZGQgc3VwcG9ydCB0bwoJICBDTUFLRV9ERVRFUk1JTkVfQ09NUElMRVJfSUQgbWFjcm8gdG8gdHJ5IGJ1aWxkaW5nIHRoZSBpZCBzb3VyY2UKCSAgbW9yZSB0aGFuIG9uY2Ugd2l0aCBkaWZmZXJlbnQgZXh0cmEgZmxhZ3MgYWRkZWQgdG8gdGhlIGNvbXBpbGVyLgoJICBVc2UgdGhlIHN1cHBvcnQgdG8gY29ycmVjdGx5IGlkZW50aWZ5IHRoZSBJbnRlbCBGb3J0cmFuIGNvbXBpbGVyCgkgIG9uIHdpbmRvd3Mgd2hpY2ggZG9lcyBub3QgcHJlcHJvY2VzcyBieSBkZWZhdWx0IHdpdGhvdXQgc3BlY2lhbAoJICBmbGFncy4KCjIwMDgtMDEtMDcgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0wNiAxNzoxOCAgYWxleAoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4OiBCVUc6IGZpeCAjNjEwNSwgaWYgYSBkaXJlY3RvcnkgaW5zaWRlCgkgIENNQUtFX0ZJTkRfUk9PVF9QQVRIIGlzIGdpdmVuIHRvIGEgRklORF9YWFgoKSBjb21tYW5kLCBkb24ndAoJICBwcmVwZW5kIHRoZSByb290IHRvIGl0IChzaW5jZSBpdCBpcyBhbHJlYWR5IGluIHRoaXMgcm9vdCkKCgkgIEFsZXgKCjIwMDgtMDEtMDYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0wNSAyMDozNyAgbWlndWVsZgoKCSogTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlOiBCVUc6IFN1cHBvcnQgY3Jvc3MtY29tcGlsaW5nOwoJICB3eC1jb25maWcgc2hvdWxkIGJlIHNlYXJjaGVkIGZvciBpbiB0YXJnZXQgcGxhdGZvcm0gT05MWSAoYnVnCgkgIDYxODcpLgoKMjAwOC0wMS0wNSAxMToxOSAgbWlndWVsZgoKCSogTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlOiBFTkg6IEdlbmVyYWxpemVkIHRoZQoJICBXWFdJREdFVFNfQUREX1JFU09VUkNFUyB0byBzdXBwb3J0IGhlYWRlciBnZW5lcmF0aW9uLCB4cnMgZmlsZQoJICBnZW5lcmF0aW9uLCBhbmQgb3RoZXIgb3B0aW9ucyAoQlVHOiA2MTYyKS4KCjIwMDgtMDEtMDUgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwOC0wMS0wNCAxNDoyMiAga2luZwoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBCVUc6IEZpbGUgaW5zdGFsbGF0aW9uIHNob3VsZCBvdmVyd3JpdGUKCSAgdGhlIGRlc3RpbmF0aW9uIGlmIHRoZSBmaWxlIHRpbWVzIGRpZmZlciBhdCBhbGwgcmF0aGVyIHRoYW4gb25seQoJICBpZiB0aGUgc291cmNlIGZpbGUgaXMgbmV3ZXIuCVVzZXJzIGV4cGVjdCBpbnN0YWxsYXRpb24gdG8KCSAgb3ZlcndyaXRlIGRlc3RpbmF0aW9uIGZpbGVzLglUaGlzIGFkZHJlc3NlcyB0aGUgcmUtb3BlbmluZyBvZgoJICBidWcjMzM0OS4KCjIwMDgtMDEtMDQgMTI6MzggIGFsZXgKCgkqIE1vZHVsZXMvOiBGaW5kRnJlZXR5cGUuY21ha2UsIEZpbmRHSUYuY21ha2U6IEVOSDogcmVuYW1lCgkgIHZhcmlhYmxlcyBmcm9tIEdJRkxJQl8qIHRvIEdJRl8qIC1hZGQgc3RhbmRhcmQgUVVJRVQgYW5kIFJFUVVJUkVECgkgIGhhbmRsaW5nIC1hZGQgR0lGX0xJQlJBUklFUyB2YXJpYWJsZSBhcyByZWFkbWUudHh0IHNheXMgLWFkZCBuYW1lCgkgIGdpZmxpYiB0byB0aGUgbmFtZXMgZm9yIHRoZSBnaWYgbGlicmFyeSAtcmVtb3ZlIHNvbWUgdW5uZWNlc3NhcnkKCSAgc2VhcmNoIHBhdGhzIGZvciB0aGUgbGliICh0aGV5IGFyZSBhbHJlYWR5IHBhcnQgb2YgdGhlIHN0YW5kYXJkCgkgIHNlYXJjaCBwYXRocywgc2VlIE1vZHVsZXMvUGxhdGZvcm0vVW5peFBhdGhzLmNtYWtlKQoJICAtRmluZEZyZWV0eXBlLmNtYWtlOiB1c2UgUEFUSF9TVUZGSVhFUyBpbmNsdWRlIGFnYWluIGZvciB0aGUKCSAgaGVhZGVycyB3aXRoIHRoZSBDTUFLRV9QUkVGSVhfUEFUSCB2YXJpYWJsZQoKCSAgQWxleAoKMjAwOC0wMS0wNCAxMjoyOSAgYWxleAoKCSogTW9kdWxlcy86IEZpbmRHSUYuY21ha2UsIEZpbmRHSUZMSUIuY21ha2U6IFNUWUxFOiByZW5hbWUKCSAgRmluZEdJRkxJQi5jbWFrZSB0byBGaW5kR0lGLmNtYWtlLCBhcyBkaXNjdXNzZWQgd2l0aCBFcmljCgoJICBBbGV4CgoyMDA4LTAxLTA0IDExOjU2ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6IEJVRzogZml4IHNwZWxsaW5nIG9mIHRoZSB4Zjg2bWlzYyBhbmQKCSAgeGY4NnZtb2RlIHZhcmlhYmxlcwoKCSAgQWxleAoKMjAwOC0wMS0wNCAxMTo0MiAgZXdpbmcKCgkqIE1vZHVsZXMvRmluZE9wZW5BTC5jbWFrZTogRU5IOiBBZGRlZCBhbGwgbG93ZXJjYXNlICdvcGVuYWwnIHRvCgkgIGxpYnJhcnkgc2VhcmNoIG5hbWVzIGluIGhvcGVzIG9mIGFkZHJlc3NpbmcgIGJ1ZyA2MjAxICh3b24ndAoJICBkZXRlY3Qgb24gR2VudG9vKS4KCjIwMDgtMDEtMDQgMDc6MjkgIGFsZXgKCgkqIE1vZHVsZXMvRmluZEZyZWV0eXBlLmNtYWtlOiBTVFlMRTogdXNlCgkgIEZJTkRfUEFDS0FHRV9IQU5ETEVfU1RBTkRBUkRfQVJHUygpIHRvIGhhbmRsZSBRVUlFVCBhbmQgUkVRVUlSRUQKCSAgLXJlbW92ZSBzb21lIHVubmVjZXNzYXJ5IHNlYXJjaCBwYXRocyAodGhleSBhcmUgcGFydCBvZiB0aGUKCSAgZGVmYXVsdCBwYXRocykgLWRvbid0IHVzZSBQQVRIX1NVRkZJWEVTIGZvciBpbmNsdWRlLyB3aGVuCgkgIHNlYXJjaGluZyBmb3IgYSBoZWFkZXIsIHRoYXQncyB2ZXJ5IHVuY29tbW9uIHN0eWxlIC1hZGQKCSAgRlJFRVRZUEVfTElCUkFSSUVTIGFzIHRoZSB2YXJpYWJsZSB3aGljaCBzaG91bGQgYmUgdXNlZCBieSB0aGUKCSAgdXNlciAoYXMgZG9jdW1lbnRlZCBpbiByZWFkbWUudHh0KQoKCSAgQWxleAoKMjAwOC0wMS0wNCAwNzoyNSAgYWxleAoKCSogTW9kdWxlcy86IEZpbmRGcmVlVHlwZS5jbWFrZSwgRmluZEZyZWV0eXBlLmNtYWtlOiBTVFlMRTogcmVuYW1lZAoJICBGaW5kRnJlZVR5cGUuY21ha2UgdG8gRmluZEZyZWV0eXBlLmNtYWtlIHRvIG1ha2UgaXQgbW9yZQoJICBjb21wYXRpYmxlIHdpdGggdGhlIG9uZSBpbiBLREU0CgoJICBBbGV4CgoyMDA4LTAxLTA0IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMDMgMTE6MjEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtUmFpc2VTY29wZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21SYWlzZVNjb3BlQ29tbWFuZC5oLAoJICBUZXN0cy9GdW5jdGlvblRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0Z1bmN0aW9uVGVzdC9TdWJEaXJTY29wZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRnVuY3Rpb25UZXN0L1V0aWwuY21ha2U6IEVOSDogY2hhbmdlIHJhaXNlX3Njb3BlIHNpZ25hdHVyZQoJICB0byBiZSBzYWZlciBmb3IgcmV0dXJuZWQgdmFydWFibGVzCgoyMDA4LTAxLTAzIDA5OjQwICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXggbGluZS10b28tbG9uZy4KCjIwMDgtMDEtMDMgMDc6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogZml4IHJlc291cmNlIGZpbGUgd2l0aCBhIGZ1bGwgcGF0aAoKMjAwOC0wMS0wMyAwNDoxOSAgYWxleAoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBDT01QOiBmaXggYnVpbGQgb24gV2luZG93cyB3aXRoIGdjYywKCSAgcGF0Y2ggZnJvbSBNYWlrIEJlY2ttYW5uCgoJICBBbGV4CgoyMDA4LTAxLTAzIDAwOjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbGVUaW1lQ29tcGFyaXNvbi5jeHgsIGNtRmlsZVRpbWVDb21wYXJpc29uLmg6IEVOSDoKCSAgQWRkIG1ldGhvZCBjbUZpbGVUaW1lQ29tcGFyaXNvbjo6RmlsZVRpbWVzRGlmZmVyIHRvIGNoZWNrIGlmIGZpbGUKCSAgdGltZXMgZGlmZmVyIGJ5IDEgc2Vjb25kIG9yIG1vcmUuCgoyMDA4LTAxLTAzIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMDIgMTg6MzAgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogRU5IOiBDbGVhbnVwIEZvcnRyYW4gYnVpbGQKCSAgZGlyZWN0b3JpZXMgYnkgcGxhY2luZyBtb2R1bGUgc3RhbXAgZmlsZXMgaW4gdGhlIHRhcmdldCBkaXJlY3RvcnkKCSAgdGhhdCBidWlsZHMgdGhlbS4gIFRoaXMgaXMgYWN0dWFsbHkgYSBzaW1wbGVyIGltcGxlbWVudGF0aW9uCgkgIGFueXdheS4KCjIwMDgtMDEtMDIgMTg6MDAgIGtpbmcKCgkqIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCB0ZXN0IGZvciBGSUxFKFJFQUQKCSAgLi4uSEVYKS4KCjIwMDgtMDEtMDIgMTc6NDkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgVGVzdHMvRnVuY3Rpb25UZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9GdW5jdGlvblRlc3QvU3ViRGlyU2NvcGUvQ01ha2VMaXN0cy50eHQ6IEJVRzogTWFrZQoJICBSQUlTRV9TQ09QRSBmdW5jdGlvbiB3b3JrIHdoZW4gdmFyaWFibGUgaXMgbm90IGRlZmluZWQuCgoyMDA4LTAxLTAyIDE3OjMyICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogRW5hYmxlIGluZGVudGF0aW9uIG9mCgkgIEZVTkNUSU9OL0VOREZVTkNUSU9OIGJsb2NrcyBpbiBlbWFjcy4KCjIwMDgtMDEtMDIgMTc6MTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvVXNlU1dJRy5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA2MTUxCgoyMDA4LTAxLTAyIDE2OjUzICBhbGV4CgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IG9ubHkgYWxsb3cgdXNhZ2Ugb2YgY2hycGF0aCBpZiB0aGUKCSAgZXhlY3V0YWJsZSBmaWxlIGZvcm1hdCBpcyBFTEYKCgkgIEFsZXgKCjIwMDgtMDEtMDIgMTY6NTIgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIENNYWtlRmluZEJpblV0aWxzLmNtYWtlOiBFTkg6IGNoZWNrIHRoZSBtYWdpYyBjb2RlIG9mIHRoZQoJICBleGVjdXRhYmxlIGZpbGUgdG8gZGV0ZXJtaW5lIHRoZSBleGVjdXRhYmxlIGZpbGUgZm9ybWF0LiBUZXN0ZWQKCSAgZm9yIEVMRiBvbiB4ODYgTGludXgsIENPRkYgYW5kIE1hY2gtTyBwcmVwYXJlZCBidXQgY29tbWVudGVkIG91dAoJICBzaW5jZSBJIGRvbid0IGhhdmUgc3VjaCBzeXN0ZW1zIGF2YWlsYWJsZS4gUGxlYXNlIGhhdmUgYSBsb29rIGEKCSAgQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlIGFuZCBlbmFibGUgdGhlIHRlc3QgZm9yIHRoZW0gdG9vLgoKCSAgT25seSBhZGQgdGhlIG9wdGlvbiBmb3IgdXNpbmcgY2hycGF0aCBpZiB0aGUgZXhlY3V0YWJsZSBmb3JtYXQgaXMKCSAgRUxGCgoJICBBbGV4CgoyMDA4LTAxLTAyIDE2OjQ2ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6IGFkZCB0aGUKCSAga2V5d29yZHMgT0ZGU0VUIGFuZCBIRVggdG8gdGhlIEZJTEUoKSBjb21tYW5kLCB1c2luZyBPRkZTRVQgYW4KCSAgb2Zmc2V0IGNhbiBiZSBzcGVjaWZpZWQgd2hlcmUgdGhlIHJlYWRpbmcgc3RhcnRzLCBhbmQgdXNpbmcgSEVYCgkgIHRoZSBkYXRhIGNhbiBiZSBjb252ZXJ0ZWQgaW50byBhIGhleCBzdHJpbmcsIHNvIGJpbmFyeSBkYXRhIGNhbgoJICBiZSBjb21wYXJlZCB3aXRoIHRleHQgZnVuY3Rpb25zIC1hZGQgZG9jcyBmb3IgTElNSVQsIE9GRlNFVCBhbmQKCSAgSEVYCgoJICBBbGV4CgoyMDA4LTAxLTAyIDE1OjU1ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eDogU1RZTEU6IEZpeGVkCgkgIGxpbmUtdG9vLWxvbmcuCgoyMDA4LTAxLTAyIDE1OjUzICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eDogQlVHOiBEbyBub3QgdXNlCgkgIFZTTWFjcm9zIHN0dWZmIGZvciBWUzhzcDAgYmVjYXVzZSBtYWNyb3MgZG8gbm90IHdvcmsgaW4gdGhhdAoJICB2ZXJzaW9uLgoKMjAwOC0wMS0wMiAxNToxNyAga2luZwoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmgsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBGSUxFU19NQVRDSElORwoJICBvcHRpb24gdG8gSU5TVEFMTChESVJFQ1RPUlkpLiAgVGhpcyB3aWxsIGhlbHAgaW5zdGFsbCBhIHRyZWUgb2YKCSAgaGVhZGVyIGZpbGVzIHdoaWxlIGlnbm9yaW5nIG5vbi1oZWFkZXJzLgoKMjAwOC0wMS0wMiAxMjozMiAgYWxleAoKCSogTW9kdWxlcy9GaW5kUnVieS5jbWFrZTogRU5IOiBhZGQgbW9yZSBydWJ5IHBhdGhzOiBzaXRlYXJjaCwKCSAgc2l0ZWxpYiwgdmVuZG9yYXJjaCwgdmVuZG9ybGliICgjNTUzMSkgLW1ha2UgdGhlc2UgdmFyaWFibGVzCgkgIGNhY2hlZCBhbmQgQURWQU5DRUQgLXJlbW92ZSB1bnVzZWQgUVVJRVRMWSBjb2RlIC1kb2N1bWVudAoJICBSVUJZX0xJQlJBUlkKCgkgIEFsZXgKCjIwMDgtMDEtMDIgMTE6NDMgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFJ1YnkuY21ha2U6IEJVRzogbWFrZSBGaW5kUnVieSB3b3JrIHdpdGggdGhlIGxpYnMgZm9yCgkgIE1TVkMsIHdoaWNoIGNhbiBoYXZlIGFkZGl0aW9uYWwgcHJlLSBhbmQgc3VmZml4ZXMgKCM1NjQyKQoKCSAgQWxleAoKMjAwOC0wMS0wMiAxMTowOCAgaG9mZm1hbgoKCSogU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IEJVRzogZml4IGZvciBidWcgNjE5NywKCSAgYWJzb2x1dGUgcGF0aHMgd2VyZSBub3Qgc3VwcG9ydGVkCgoyMDA4LTAxLTAyIDExOjA0ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21EZXBlbmRzRm9ydHJhbi5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogTWFrZSB0aGUgRm9ydHJhbiBjb21waWxlcgoJICBpZCBhdmFpbGFibGUgdG8gY21EZXBlbmRzRm9ydHJhbiBhdCBzY2FubmluZyBhbmQgbW9kdWxlIHRpbWVzdGFtcAoJICBjb3B5IHRpbWUuCgoyMDA4LTAxLTAyIDEwOjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5oOiBCVUc6IGZpeCBmb3IgYnVnIDYyMDcgZXhwbGFpbiBsaXN0IGluZGV4CgkgIHZhbHVlcyBiZXR0ZXIKCjIwMDgtMDEtMDIgMDk6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogZml4IG5ldyBpbmNyZW1lbnRhbCBsaW5rIHN0dWZmIHRvIHdvcmsKCSAgd2l0aCBubWFrZSBAIGZpbGVzCgoyMDA4LTAxLTAyIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDgtMDEtMDEgMTc6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDgtMDEtMDEgMTU6MTMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VWQ01hbmlmZXN0LmNtYWtlLCBNb2R1bGVzL0NNYWtlVkNNYW5pZmVzdEV4ZS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2NtYWtlLmg6IEVOSDogYWRkIGFiaWxpdHkgdG8gaGF2ZQoJICBtYW5pZmVzdCBmaWxlcyBhbmQgaW5jcmVtZW50YWwgbGlua2luZyB3aXRoIG1ha2UgYW5kIG5tYWtlCgoyMDA4LTAxLTAxIDEwOjU0ICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBGaXggU2ltcGxlSW5zdGFsbCB0ZXN0IHRvCgkgIHdvcmsgd2l0aCBuZXcgZGVwZW5kZW5jeSBvZiBwYWNrYWdlIG9uIGFsbC4KCjIwMDgtMDEtMDEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0zMSAxNzoyOSAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBBZGQgYSBkZXBlbmRlbmN5IGZyb20gdGhlCgkgIFBBQ0tBR0UgdGFyZ2V0IHRvIHRoZSBBTEwgdGFyZ2V0IHNvIHRoYXQgIm1ha2UgcGFja2FnZSIgd2lsbAoJICBmaXJzdCAoZXNzZW50aWFsbHkpIGRvIGEgIm1ha2UgYWxsIi4uLiBBIHNpbWlsYXIgY2h1bmsgb2YgY29kZQoJICBhbHJlYWR5IGV4aXN0ZWQgZm9yIHRoZSBtYWtlIGluc3RhbGwgdGFyZ2V0LiBUaGlzIGNoYW5nZSBtYWtlcyBpdAoJICBlYXN5IHRvIGJ1aWxkIGFuIGluc3RhbGxlciBwYWNrYWdlIGFzIHBhcnQgb2YgYSBkYXNoYm9hcmQgcnVuCgkgIHNpbXBseSBieSBzZXR0aW5nIENURVNUX0JVSUxEX1RBUkdFVCB0byAicGFja2FnZSIuCgoyMDA3LTEyLTMxIDExOjI1ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21EZXBlbmRzRm9ydHJhbi5oOiBFTkg6IENoYW5nZXMKCSAgYmFzZWQgb24gcGF0Y2ggZnJvbSBNYWlrIEJlY2ttYW5uIHRvIGNvcHkgZm9ydHJhbiBtb2R1bGVzIHRvCgkgIHRpbWVzdGFtcHMgb25seSBpZiB0aGV5IGhhdmUgcmVhbGx5IGNoYW5nZWQuCVRoaXMgb3B0aW1pemF0aW9uCgkgIHNob3VsZCByZWR1Y2UgZXh0cmEgcmVidWlsZHMgY2F1c2VkIGJ5IGRlcGVuZGVuY2llcyBvbiBtb2R1bGVzCgkgIHdob3NlIHByb3ZpZGVycyBoYXZlIHJlY29tcGlsZWQgYnV0IHdob3NlIGludGVyZmFjZXMgaGF2ZSBub3QKCSAgY2hhbmdlZC4KCjIwMDctMTItMzEgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0zMCAxNjozNCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy1TdW5Qcm8tRm9ydHJhbi5jbWFrZTogRU5IOiBBZGQgU3VuUHJvCgkgIGZvcnRyYW4gbW9kdWxlIGZsYWdzIG9uIFN1bk9TLgoKMjAwNy0xMi0zMCAxNjoxMSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1HTlUtRm9ydHJhbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1TdW5Qcm8tRm9ydHJhbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1pZm9ydC5jbWFrZSwgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5oLCBTb3VyY2UvY21Eb2N1bWVudFZhcmlhYmxlcy5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgVGVzdHMvRm9ydHJhbi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRm9ydHJhbi9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Gb3J0cmFuL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wbGVtZW50ZWQgRm9ydHJhbgoJICBtb2R1bGUgb3V0cHV0IGRpcmVjdG9yeSBhbmQgc2VhcmNoIHBhdGggZmxhZ3MuCgoyMDA3LTEyLTMwIDEyOjIzICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEVOSDogU2ltcGxpZnkgRm9ydHJhbiBtb2R1bGUgcHJveHkKCSAgZGVwZW5kZW5jeSBpbXBsZW1lbnRhdGlvbiBieSByZW1vdmluZyB1bm5lY2Vzc2FyeSB0YXJnZXQuCgoyMDA3LTEyLTMwIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMjkgMTE6NTMgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBCVUc6IGNyZWF0ZSBtb2R1bGVzIGRvY3VtZW50YXRpb24gbm90CgkgIG9ubHkgZm9yIHRoZSBmaXJzdCBkb2N1bWVudGF0aW9uIGNyZWF0aW9uIHN0ZXAgaW4gY21ha2UgKHRoZSBzZXQKCSAgTW9kdWxlc0ZvdW5kIHdhc24ndCBjbGVhcmVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaAoJICBQcmludERvY3VtZW50YXRpb24oKSBmdW5jdGlvbiwgc28gd2hlbiBkb2N1bWVudGF0aW9uIGZvciBtb2R1bGVzCgkgIHdhcyBleGVjdXRlZCB0aGUgc2Vjb25kIHRpbWUsIE1vZHVsZXNGb3VuZCBhbHJlYWR5IGNvbnRhaW5lZCBhbGwKCSAgbW9kdWxlcyBhbmQgc28gbm8gbW9kdWxlIHdhcyBkb2N1bWVudGVkKQoKCSAgQWxleAoKMjAwNy0xMi0yOSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTI4IDIzOjA3ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFRlc3RzL0V4dGVybmFsT0JKL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9NYWtlQ2xlYW4vVG9DbGVhbi9DTWFrZUxpc3RzLnR4dDogQlVHOiBEbyBub3QgcmVtb3ZlIHRoZQoJICBzb3VyY2UgZmlsZSBleHRlbnNpb24gd2hlbiBjb21wdXRpbmcgYW4gb2JqZWN0IGZpbGUgbmFtZS4gIFRoaXMKCSAgYWRkcmVzc2VzIGJ1ZyAjNjE2OS4JSWYgQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgaXMgMi40IG9yCgkgIGxvd2VyIG1haW50YWluIHRoZSBvbGQgYmVoYXZpb3Igc28gdGhhdCBleGlzdGluZyBidWlsZCB0cmVlcyBhbmQKCSAgb2xkIHByb2plY3QgcmVsZWFzZXMgYXJlIG5vdCBhZmZlY3RlZC4KCjIwMDctMTItMjggMjM6MDcgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtU3RhbmRhcmRJbmNsdWRlcy5oOiBFTkg6IEFkZGVkIG1ldGhvZAoJICBjbUxvY2FsR2VuZXJhdG9yOjpHZXRCYWNrd2FyZHNDb21wYXRpYmlsaXR5IHRvIHJlZHVjZSBwYXJzaW5nIG9mCgkgIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZIHZhcmlhYmxlLiAgQWRkCgkgIGNtTG9jYWxHZW5lcmF0b3I6Ok5lZWRCYWNrd2FyZHNDb21wYXRpYmlsaXR5IHRvIHNpbXBsaWZ5IGNoZWNrcwoJICBmb3IgY29tcGF0aWJpbGl0eSByZXF1aXJlbWVudHMuCgoyMDA3LTEyLTI4IDIyOjUzICBraW5nCgoJKiBUZXN0cy9Gb3J0cmFuL0NNYWtlTGlzdHMudHh0OiBCVUc6IERpc2FibGUgdGVzdCBvZiBmb3J0cmFuIG1vZHVsZQoJICBkZXBlbmRlbmNpZXMgZXhjZXB0IG9uIEdOVSBmb3Igbm93LiAgQSBtb2R1bGUgcGF0aCBmZWF0dXJlIGlzCgkgIG5lZWRlZCBmb3IgU3VuIHN1cHBvcnQgYmVjYXVzZSBpdCB1c2VzIC1NIGluc3RlYWQgb2YgLUkgZm9yIHRoZQoJICBtb2R1bGUgc2VhcmNoIHBhdGguCgoyMDA3LTEyLTI4IDIyOjI5ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IENPTVA6IEZpeCB1bmluaXRpYWxpemVkIHZhcmlhYmxlIGFuZAoJICB1bnVzZWQgcGFyYW1ldGVyIHdhcm5pbmdzLgoKMjAwNy0xMi0yOCAxNDo1OSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDoKCSAgU2ltcGxpZmllZCBhbmQgbW92ZWQgbGluayBzY3JpcHQgaW1wbGVtZW50YXRpb24gdXAgZnJvbQoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvciB0byBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yIGFuZAoJICB1c2UgZm9yIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yIHRvby4gIFRoaXMgYWRkcmVzc2VzCgkgIGJ1ZyAjNjE5Mi4KCjIwMDctMTItMjggMTM6MjAgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBNYWNJbnN0YWxsUmVhZG1lLnR4dDogRU5IOiBhZGQKCSAgc29tZSBkZXNjcmlwdGl2ZSB0ZXh0IGZvciBtYWMgaW5zdGFsbGVyCgoyMDA3LTEyLTI4IDEyOjAxICBraW5nCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IEVOSDogTWFrZSBGSU5EXyogY29tbWFuZHMgbG9vayBpbiB0aGUKCSAgQ01BS0VfUFJFRklYX1BBVEggZGlyZWN0b3JpZXMgZGlyZWN0bHkgYWZ0ZXIgbG9va2luZyBpbiBlYWNoCgkgIGNvbW1hbmQncyBzcGVjaWZpYyBzdWJkaXJlY3RvcnkgKC9pbmNsdWRlLCAvbGliLCBvciAvYmluKS4gIFRoaXMKCSAgbWF5IGJlIHVzZWZ1bCBvbiBXaW5kb3dzIHdoZXJlIHByb2plY3RzIGNvdWxkIGJlIGluc3RhbGxlZCBpbiBhCgkgIHNpbmdsZSBkaXJlY3RvcnkuICBTZWUgaXNzdWUgIzQ5NDcuCgoyMDA3LTEyLTI4IDExOjUwICBraW5nCgoJKiBUZXN0cy9Gb3J0cmFuLzogQ01ha2VMaXN0cy50eHQsIEV4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIEV4ZWN1dGFibGUvbWFpbi5mOTAsIEV4dGVybmFsL0NNYWtlTGlzdHMudHh0LCBFeHRlcm5hbC9hLmY5MDoKCSAgRU5IOiBBZGQgdGVzdHMgb2YgRm9ydHJhbiBtb2R1bGUgZGVwZW5kZW5jaWVzIGFjcm9zcyBkaXJlY3RvcmllcwoJICBhbmQgb24gZXh0ZXJuYWwgbW9kdWxlcy4gIFRlc3RzIGJhc2VkIG9uIGNhc2VzIHByb3ZpZGVkIGJ5IE1haWsKCSAgaW4gaXNzdWUgIzU4MDkuCgoyMDA3LTEyLTI4IDExOjUwICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OgoJICBFTkg6IEFkZCBwZXItbGFuZ3VhZ2UgY2xlYW4gcnVsZSBnZW5lcmF0aW9uIHRvIGNtYWtlX2NsZWFuLmNtYWtlCgkgIGZpbGVzIHRvIGluY2x1ZGUgY21ha2VfY2xlYW5fPGxhbmc+LmNtYWtlIGZpbGVzIGdlbmVyYXRlZCBieQoJICBkZXBlbmRlbmN5IHNjYW5uaW5nLglBZGQgRm9ydHJhbiBtb2R1bGUgZmlsZSBhbmQgdGltZXN0YW1wCgkgIGNsZWFuaW5nIHJ1bGVzLgoKMjAwNy0xMi0yOCAxMTo0OSAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzLmN4eCwgY21EZXBlbmRzLmgsIGNtRGVwZW5kc0ZvcnRyYW4uY3h4LAoJICBjbURlcGVuZHNGb3J0cmFuLmg6IEVOSDogSW1wbGVtZW50IEZvcnRyYW4gbW9kdWxlIGRlcGVuZGVuY2llcwoJICBhY3Jvc3MgdGFyZ2V0cyBhbmQgZGlyZWN0b3JpZXMuICAgIC0gU2VlIGlzc3VlICM1ODA5CSAgLSBLZWVwCgkgIGluZm9ybWF0aW9uIGFib3V0IGFsbCBzb3VyY2VzIGluIHRoZSB0YXJnZXQgdW50aWwgZGVwcyBhcmUKCSAgd3JpdHRlbiAgICAtIENyZWF0ZSBhIGZvcnRyYW4uaW50ZXJuYWwgZmlsZSBhZnRlciBzY2FubmluZyB0aGF0CgkgIGxpc3RzIG1vZHVsZXMgcHJvdmlkZWQgICAgLSBMb2FkIGZvcnRyYW4uaW50ZXJuYWwgZmlsZXMgZnJvbQoJICBsaW5rZWQgdGFyZ2V0cyB0byBmaW5kIG1vZHVsZXMgICAgLSBTZWFyY2ggdGhlIGluY2x1ZGUgcGF0aCBmb3IKCSAgZXh0ZXJuYWwgbW9kdWxlcyAgICAtIENyZWF0ZSBmaWxlLWxldmVsIGRlcHMgb24gaW4tcHJvamVjdCBtb2R1bGUKCSAgdGltZXN0YW1wcyBvciBleHRlcm5hbCBtb2RzCgoyMDA3LTEyLTI4IDExOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogU3RvcmUgaW4KCSAgRGVwZW5kSW5mby5jbWFrZSBmaWxlcyBhIGxpc3Qgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZmlsZXMgZm9yIHRoZQoJICB0YXJnZXRzIHRvIHdoaWNoIGEgdGFyZ2V0IGxpbmtzLiAgVGhpcyBpcyB1c2VmdWwgZm9yIGxvY2F0aW5nCgkgIEZvcnRyYW4gbW9kdWxlcyBwcm92aWRlZCBieSBsaW5rZWQgdGFyZ2V0cy4gIFNlZSBpc3N1ZSAjNTgwOS4KCjIwMDctMTItMjggMDk6NDkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvQ1BhY2suSW5mby5wbGlzdC5pbiwKCSAgTW9kdWxlcy9DUGFjay5jbWFrZTogRU5IOiBtb3ZlIG92ZXIgbWFjIHBhY2thZ2UgY2hhbmdlCgoyMDA3LTEyLTI4IDA5OjM0ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbDogRU5IOiBvb3Bwc3MgdGhlcmUgaXMgbm8gMi40LjkKCjIwMDctMTItMjggMDk6MTEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsOiBFTkg6IG1ha2UgYSBuZXcgdmVyc2lvbiBudW1iZXIKCjIwMDctMTItMjggMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0yNyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTI2IDE2OjU3ICBkYXZpZC5jb2xlCgoJKiBDTWFrZUNQYWNrT3B0aW9ucy5jbWFrZS5pbiwgTW9kdWxlcy9DUGFjay5JbmZvLnBsaXN0LmluLAoJICBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IEdpdmUgTWFjIGluc3RhbGxlcnMgcGFja2FnZSByZWxvY2F0aW9uCgkgIGNhcGFiaWxpdHkuIERlZmF1bHQgbG9jYXRpb24gaXMgc3RpbGwgdGhlIHNhbWUgZm9yIGJhY2t3YXJkcwoJICBjb21wYXRpYmlsaXR5LCBidXQgcGFja2FnZXMgd2lsbCBub3cgYmUgcmVsb2NhdGFibGUgYnkgZGVmYXVsdAoJICBsaWtlIHRoZXkgYXJlIG9uIFdpbmRvd3MgdmlhIHRoZSBOU0lTIGluc3RhbGxlci4gTmV3IENQYWNrCgkgIHZhcmlhYmxlcyBmb3IgY29udHJvbGxpbmcgdGhpcyBmdW5jdGlvbmFsaXR5IGFyZQoJICBDUEFDS19QQUNLQUdFX0RFRkFVTFRfTE9DQVRJT04gYW5kIENQQUNLX1BBQ0tBR0VfUkVMT0NBVEFCTEUuCgoyMDA3LTEyLTI2IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMjUgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0yNCAxMToxNSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQ09NUDogRml4IGJ1aWxkIG9uIFZTNi4KCjIwMDctMTItMjQgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0yMyAxOTowMyAga2luZwoKCSogU291cmNlL2NtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5oOiBFTkg6IENsYXJpZnkgZG9jdW1lbnRhdGlvbiBvZgoJICBsaW5rX2RpcmVjdG9yaWVzIGNvbW1hbmQgZm9yIGJ1ZyM2MTk5LgoKMjAwNy0xMi0yMyAxNTowMyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbVRhcmdldC5oOiBFTkg6IE1vdmVkIGdsb2JhbAoJICBpbnRlci10YXJnZXQgZGVwZW5kZW5jeSBhbmFseXNpcyBhbmQgY3ljbGUtcHJldmVudGlvbiBjb2RlIHVwCgkgIGZyb20gY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzIHRvIGNtR2xvYmFsR2VuZXJhdG9yLgoJICBTaW1wbGlmaWVkIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMyB0byB1c2UgaXQuCUxhdGVyIG90aGVyCgkgIGdlbmVyYXRvcnMgbWF5IGJlIG1vZGlmaWVkIHRvIHVzZSBpdCBhbHNvLgoKMjAwNy0xMi0yMyAxMzoxNiAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBCVUc6IFJldmVydCBwcmV2aW91cyBjaGFuZ2UKCSAgdW50aWwgaXQgd29ya3Mgb24gYWxsIE9TWCB2ZXJzaW9ucy4KCjIwMDctMTItMjMgMTM6MTMgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eDogQlVHOiBEaXNhYmxlIHN0YXRpYwoJICBsaWIgZGVwcyB1bnRpbCBhIGdsb2JhbCBjeWNsZSByZW1vdmFsIGNhbiBiZSBkb25lLgoKMjAwNy0xMi0yMyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTIyIDIyOjQxICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHMuY3h4LCBjbURlcGVuZHMuaCwgY21EZXBlbmRzRm9ydHJhbi5jeHgsCgkgIGNtRGVwZW5kc0ZvcnRyYW4uaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6CgkgIENvbnZlcnQgY21EZXBlbmRzIG9iamVjdCBpbnRlcmZhY2UgdG8gc2NhbiBhbiBlbnRpcmUgdGFyZ2V0IGF0CgkgIG9uY2UuCgoyMDA3LTEyLTIyIDE0OjE3ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogU2ltcGxpZnkgdGFyZ2V0LWxldmVsCgkgIGRlcGVuZGVuY2llcyBieSBkZXBlbmRpbmcgb25seSBvbiBkaXJlY3RseSBsaW5rZWQgdGFyZ2V0cyBpbnN0ZWFkCgkgIG9mIHRob3NlIGNoYWluZWQuCgoyMDA3LTEyLTIyIDEzOjA4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBTdXBwb3J0IGN5Y2xpYwoJICBkZXBlbmRlbmNpZXMgYW1vbmcgU1RBVElDIGxpYnJhcmllcyBieSByZW1vdmluZyBvbmUgZnJvbSB0aGUKCSAgZ2VuZXJhdGVkIE1ha2VmaWxlIHJ1bGVzLgoKMjAwNy0xMi0yMiAxMDoxNSAgbWlndWVsZgoKCSogTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlOiBTVFlMRTogUmVmYWN0b3JlZCBjb21tb24gbGlicyBpbnRvIGEKCSAgdmFyaWFibGUsIG1vZGlmaWVkIGNvbW1lbnRzLCBhbmQgY2xlYW5lZCB1c2Ugb2YgbW9ub2xpdGhpYyBidWlsZC4KCjIwMDctMTItMjIgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0yMSAyMDoxOSAga2luZwoKCSogVGVzdHMvQnVpbGREZXBlbmRzL0NNYWtlTGlzdHMudHh0OiBCVUc6IEVuYWJsZQoJICBDTUFLRV9TVVBQUkVTU19SRUdFTkVSQVRJT04gYmVjYXVzZSB0aGUgZW50aXJlIHRlc3QgcnVucyBkdXJpbmcKCSAgdGhlIGluaXRhbCBjb25maWd1cmF0aW9uLgoKMjAwNy0xMi0yMSAxODozMiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IENPTVA6IFJlbW92ZSB1bnVzZWQgcGFyYW1ldGVyCgkgIG9mIG1ldGhvZC4KCjIwMDctMTItMjEgMTY6NDYgIGliYW5legoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBGaXggYnVnIzU1OTAuCSBXaGVuCgkgIGNvbnZlcnRpbmcgYSByZWxhdGl2ZSBwYXRoIGJldHdlZW4gdHdvIGZ1bGwgcGF0aHMgb24gZGlmZmVyZW50CgkgIHdpbmRvd3MgZHJpdmUgbGV0dGVycyBkbyBub3QgY3JlYXRlIGEgLi4vLi4vZDovZm9vL2JhciBwYXRoCgkgIGFuZCBqdXN0CSByZXR1cm4gdGhlIGZ1bGwgcGF0aCB0byB0aGUgZGVzdGluYXRpb24uCgoyMDA3LTEyLTIxIDE1OjA0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuaCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDoKCSAgTWFrZSBzdGF0aWMgbGlicmFyeSB0YXJnZXRzIGRlcGVuZCBvbiB0YXJnZXRzIHRvIHdoaWNoIHRoZXkKCSAgImxpbmsiIGZvciB0aGUgcHVycG9zZSBvZiBidWlsZCBvcmRlcmluZy4gIFRoaXMgbWFrZXMgdGhlIGJ1aWxkCgkgIG9yZGVyIGNvbnNpc3RlbnQgZm9yIHN0YXRpYyBhbmQgc2hhcmVkIGxpYnJhcnkgYnVpbGRzLiAgSXQgaXMKCSAgYWxzbyB1c2VmdWwgd2hlbiBjdXN0b20gY29tbWFuZCBpbnB1dHMgb2Ygb25lIGxpYnJhcnkgYXJlCgkgIGdlbmVyYXRlZCBhcyBjdXN0b20gY29tbWFuZHMgb3V0cHV0cyBvZiBhbm90aGVyLiAgSXQgbWF5IGJlCgkgIHVzZWZ1bCBpbiB0aGUgZnV0dXJlIGZvciBGb3J0cmFuIG1vZHVsZSBkZXBlbmRlbmNpZXMuCgkgIEltcGxlbWVudGVkIGZvciBNYWtlZmlsZXMsIFhjb2RlLCBhbmQgVlMgOCBhbmQgYWJvdmUuICBBZGRlZAoJICBzYW1wbGUgY29kZSB0byBkbyBpdCBmb3IgVlMgNy4xIGFuZCBiZWxvdywgYnV0IGxlZnQgaXQgZGlzYWJsZWQKCSAgd2l0aCBjb21tZW50cyBleHBsYWluaW5nIHdoeS4gIExpa2VseSBpdCB3aWxsIG5ldmVyIGJlIG5lZWRlZCBvbgoJICBWUyA3LjEgb3IgYmVsb3cgYW55d2F5LgoKMjAwNy0xMi0yMSAxMzoxMCAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogTm93IHRoYXQgY3VzdG9tCgkgIHRhcmdldHMgaGF2ZSBkZXBlbmRlbmNpZXMgdGhlaXIgRGVwZW5kSW5mbyBmaWxlcyBzaG91bGQgYmUgbGlzdGVkCgkgIGluIE1ha2VmaWxlLmNtYWtlLgoKMjAwNy0xMi0yMSAxMjoyMiAga2luZwoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFRlc3RzL0J1aWxkRGVwZW5kcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQnVpbGREZXBlbmRzL1Byb2plY3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1aWxkRGVwZW5kcy9Qcm9qZWN0L2RlcF9jdXN0b20uY3h4LAoJICBUZXN0cy9CdWlsZERlcGVuZHMvUHJvamVjdC96b3QuY3h4OiBFTkg6IEFkZCBhIGRlcGVuZHMgY2hlY2sgc3RlcAoJICB0byBjdXN0b20gdGFyZ2V0cy4gIEFkZCBzdXBwb3J0IGZvciB0aGUgSU1QTElDSVRfREVQRU5EUyBmZWF0dXJlCgkgIG9mIGN1c3RvbSBjb21tYW5kcyB3aGVuIGJ1aWxkaW5nIGluIGN1c3RvbSB0YXJnZXRzLiAgQ29udmVydAoJICBtdWx0aXBsZS1vdXRwdXQgcGFpciBjaGVja3MgdG8gYmUgcGVyLXRhcmdldCBpbnN0ZWFkIG9mIGdsb2JhbC4KCjIwMDctMTItMjEgMTE6MDAgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBUaGUgZGVwZW5kZW5jeQoJICBzY2FubmluZyB0YXJnZXQgc2hvdWxkIGJlIHN5bWJvbGljLgoKMjAwNy0xMi0yMSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTIwIDIwOjU5ICBld2luZwoKCSogTW9kdWxlcy86IEZpbmRGcmVlVHlwZS5jbWFrZSwgRmluZEdEQUwuY21ha2UsIEZpbmRHSUZMSUIuY21ha2UsCgkgIEZpbmRMdWE1MC5jbWFrZSwgRmluZEx1YTUxLmNtYWtlLCBGaW5kT3BlbkFMLmNtYWtlLAoJICBGaW5kT3BlblRocmVhZHMuY21ha2UsIEZpbmRQaHlzRlMuY21ha2UsIEZpbmRQcm9kdWNlci5jbWFrZSwKCSAgRmluZFF1aWNrVGltZS5jbWFrZSwgRmluZFNETC5jbWFrZSwgRmluZFNETF9pbWFnZS5jbWFrZSwKCSAgRmluZFNETF9taXhlci5jbWFrZSwgRmluZFNETF9uZXQuY21ha2UsIEZpbmRTRExfc291bmQuY21ha2UsCgkgIEZpbmRTRExfdHRmLmNtYWtlLCBGaW5kb3NnLmNtYWtlLCBGaW5kb3NnREIuY21ha2UsCgkgIEZpbmRvc2dGWC5jbWFrZSwgRmluZG9zZ0dBLmNtYWtlLCBGaW5kb3NnSW50cm9zcGVjdGlvbi5jbWFrZSwKCSAgRmluZG9zZ01hbmlwdWxhdG9yLmNtYWtlLCBGaW5kb3NnUGFydGljbGUuY21ha2UsCgkgIEZpbmRvc2dQcm9kdWNlci5jbWFrZSwgRmluZG9zZ1NoYWRvdy5jbWFrZSwgRmluZG9zZ1NpbS5jbWFrZSwKCSAgRmluZG9zZ1RlcnJhaW4uY21ha2UsIEZpbmRvc2dUZXh0LmNtYWtlLCBGaW5kb3NnVXRpbC5jbWFrZSwKCSAgRmluZG9zZ1ZpZXdlci5jbWFrZTogQlVHOiBGaXhlZCBtb2R1bGVzIHRvIHNldCBGT09fRk9VTkQgd2hlbgoJICBib3RoIGhlYWRlcnMgYW5kIGxpYnJhcmllcyBhcmUgZm91bmQuICBCVUc6IEZpbmRTREwgbm93IGhhcyBmbGFnCgkgIGl0IHJlc3BvbmRzIHRvIHNvIGl0IHdpbGwgbm90IGZpbmQvbGluayBhZ2FpbnN0IFNETG1haW4uIFRoaXMgaXMKCSAgcmVxdWlyZWQgdG8gYnVpbGQgbGlicmFyaWVzIGluc3RlYWQgb2YgYXBwbGljYXRpb25zIHNpbmNlIHRoZXkKCSAgZG9uJ3QgaGF2ZSBtYWluKCkuICBFTkg6IEFsbCBtb2R1bGVzIGhhdmUgYSBwcmVkaWN0YWJsZSBzZWFyY2gKCSAgb3JkZXIsIHdoZXJlIGVudmlyb25tZW50YWwgdmFyaWFibGVzIGFyZSBzZWFyY2hlZCBiZWZvcmUgc3lzdGVtCgkgIHBhdGhzLiBUaGlzIGlzIGRlc2lnbmVkIHRvIG1ha2UgYXV0b21hdGlvbiBlYXNpZXIgZm9yIHRob3NlIHRoYXQKCSAgbmVlZCB0byBhdXRvbWF0aWNhbGx5IGJ1aWxkIHByb2plY3RzIHdpdGhvdXQgaW50ZXJ2ZW50aW9uIGJ1dCBtYXkKCSAgYmUgdXNpbmcgYWx0ZXJuYXRpdmUgaW5zdGFsbCBsb2NhdGlvbnMgZm9yIGlzb2xhdGVkIHRlc3RpbmcuCgkgIEVOSDogTmV3IG1vZHVsZXMgZm9yIE9wZW5TY2VuZUdyYXBoLCBGcmVldHlwZSwgR0RBTCwgTHVhLAoJICBRdWlja1RpbWUsIEdJRkxJQiwgUHJvZHVjZXIsIE9wZW5UaHJlYWRzLiAgU1RZTEU6IEFkZGVkCgkgIGRvY3VtZW50YXRpb24gZXhwbGFpbmluZyBwZWN1bHVhciBTRExfTElCUkFSWV9URU1QIHZhcmlhYmxlIGluCgkgIFNETAltb2R1bGUgd2hlbiBsaWJyYXJ5IGZpbmQgaXMgaW5jb21wbGV0ZS4KCjIwMDctMTItMjAgMTc6NDkgIGFsZXgKCgkqIFNvdXJjZS86IGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oLCBjbUJ1aWxkQ29tbWFuZC5oLAoJICBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmgsIGNtRXhwb3J0Q29tbWFuZC5oLAoJICBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuaCwgY21PcHRpb25Db21tYW5kLmgsIGNtU2V0Q29tbWFuZC5oOgoJICBTVFlMRTogbWFrZSBmb3JtYXR0aW5nIG9mIGhlbHAgYSBiaXQgbW9yZSBjb25zaXN0ZW50CgoJICBBbGV4CgoyMDA3LTEyLTIwIDEwOjA1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21GdW5jdGlvbkNvbW1hbmQuY3h4OiBCVUc6IGZpeCBpc3N1ZSB3aXRoCgkgIENNQUtFX0NVUkVOVF9MSVNUX0ZJTEUgcmVwb3J0aW5nIGluIGZ1bmNpdG9ucwoKMjAwNy0xMi0yMCAwOTozNSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuaDogQ09NUDogRml4ZWQgZXJyb3Igb24gSFAgZHVlIHRvIG5ld2xpbmUKCSAgbWFjcm8uCgoyMDA3LTEyLTIwIDA5OjI3ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IENPTVA6IEZpeGVkIGRhdGEgbG9zcyB3YXJuaW5nLgoKMjAwNy0xMi0yMCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTE5IDE3OjU0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEZpeCBtYWtlIGRlcGVuZAoJICB0YXJnZXQgaW4gc3ViZGlyZWN0b3J5IE1ha2VmaWxlIGludGVyZmFjZS4KCjIwMDctMTItMTkgMTc6MTUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwgY21ha2UuY3h4OiBFTkg6IEVuYWJsZWQgY29sb3IKCSAgcHJpbnRpbmcgb2YgIlNjYW5uaW5nIGRlcGVuZGVuY2llcyBvZiB0YXJnZXQgLi4uIiBtZXNzYWdlLgoKMjAwNy0xMi0xOSAxNjo1MyAgYWxleAoKCSogU291cmNlL2NtT3B0aW9uQ29tbWFuZC5oOiBFTkg6IG9wdGlvbnMoKSBpcyBub3cgc2NyaXB0YWJsZSwgc2V0KCkKCSAgaXMgc2NyaXB0YWJsZSB0b28sIEkgZG9uJ3Qgc2VlIGEgYmlnIGRpZmZlcmVuY2UKCgkgIEFsZXgKCjIwMDctMTItMTkgMTY6NDggIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiAgQmV0dGVyIFFUNF9FWFRSQUNUX09QVElPTlMgbWFjcm8uCgoyMDA3LTEyLTE5IDE2OjQ2ICBhbGV4CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IFNUWUxFOiBuaWNlciBlcnJvciBtZXNzYWdlOiAiQ29tbWFuZAoJICBvcHRpb25zKCkgaXMgbm90IHNjcmlwdGFibGUiIGlzIElNTyBiZXR0ZXIgdG8gdW5kZXJzdGFuZCB0aGFuCgkgICJDb21tYW5kIG9wdGlvbnMgbm90IHNjcmlwdGFibGUiICh3aXRoIGFsbCB1cHBlcmNhc2UgY29tbWFuZHMgaXQKCSAgd2FzIGVhc2llciB0byBzZWUpCgoJICBBbGV4CgoyMDA3LTEyLTE5IDE2OjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHMuY3h4LCBjbURlcGVuZHMuaCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbWFrZS5jeHg6IEVOSDogTW92ZWQgZGVwZW5kZW5jeSBpbnRlZ3JpdHkgY2hlY2sgZnJvbQoJICBDaGVja0J1aWxkU3lzdGVtIG92ZXIgdG8gYSBwZXItdGFyZ2V0IFVwZGF0ZURlcGVuZGVuY2llcyBzdGVwLgoJICBUaGlzIGdyZWF0bHkgcmVkdWNlcyB0aGUgc3RhcnR1cCB0aW1lIGZvciBtYWtlIHByb2Nlc3NlcyBhbmQKCSAgYWxsb3dzIGluZGl2aWR1YWwgdGFyZ2V0cyB0byBiZSBidWlsdCB3aXRob3V0IGEgZ2xvYmFsIGRlcGVuZGVuY3kKCSAgY2hlY2suCgoyMDA3LTEyLTE5IDE2OjM1ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEJVRzogY21EZXBlbmRzRm9ydHJhbiBzaG91bGQgc3RvcmUKCSAgdGhlIHNvdXJjZSBmaWxlIGFzIGEgZGVwZW5kZW5jeSBvZiB0aGUgb2JqZWN0IGZpbGUgd2hlbiBzY2FubmluZwoJICBmb3IgZGVwZW5kZW5jaWVzLgoKMjAwNy0xMi0xOSAxNDoyOCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbi5jeHgsIGNtRGVwZW5kc0ZvcnRyYW4uaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IFBhc3MgdGFyZ2V0IGRpcmVjdG9yeSB0bwoJICBjbURlcGVuZHNGb3J0cmFuIHNjYW5uaW5nIGluc3RhbmNlcy4KCjIwMDctMTItMTkgMTE6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogSW1wcm92ZWQgc3BlZWQgb2YgY21ha2U6OkNoZWNrQnVpbGRTeXN0ZW0KCSAgd2hlbiBjaGVja2luZyBidWlsZCBzeXN0ZW0gb3V0cHV0cyB2ZXJzdXMgZGVwZW5kZW5jaWVzLiAgSW5zdGVhZAoJICBvZiBkb2luZyBhbiBPKG0qbikgY29tcGFyaXNvbiBvZiBldmVyeSBwYWlyLCBqdXN0IGxvY2F0ZSB0aGUKCSAgb2xkZXN0IG91dHB1dCBhbmQgdGhlIG5ld2VzdCBpbnB1dCBhbmQgY29tcGFyZSB0aGVtIHdoaWNoIGlzIG5vdwoJICBPKG0rbikuCgoyMDA3LTEyLTE5IDExOjA2ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHgsIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOgoJICBSZW5hbWVkIENNQUtFX0ZJTkRfUFJFRklYX1BBVEggdG8gQ01BS0VfUFJFRklYX1BBVEggZm9yIGJyZXZpdHkKCSAgYW5kIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgZmluZCBwYXRoIHZhcmlhYmxlIG5hbWVzLgoKMjAwNy0xMi0xOSAxMDo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogY21MaXN0Q29tbWFuZC5jeHgsIGNtTGlzdENvbW1hbmQuaDogRU5IOiBtZXJnZSBpbiBsaXN0CgkgIGZpbmQgdG8gc3VwcG9ydCBGaW5kcXQKCjIwMDctMTItMTkgMTA6MzQgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogRU5IOiBBZGRlZCBDTUFLRV9TWVNURU1fUFJFRklYX1BBVEgKCSAgdmFyaWFibGUuCgoyMDA3LTEyLTE5IDAzOjU2ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuaCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaDoKCSAgU1RZTEU6IGZpeCB3YXJuaW5nczogY29tcGFyaXNvbiBzaWduZWQvdW5zaWduZWQsIHVudXNlZCB2YXJpYWJsZQoKCSAgQWxleAoKMjAwNy0xMi0xOSAwMzo1NSAgYWxleAoKCSogTW9kdWxlcy9DTWFrZUZpbmRCaW5VdGlscy5jbWFrZToKCSAgQlVHOiBtYWtlIENNQUtFX1VTRV9DSFJQQVRIIGEgc2ltcGxlIHZhcmlhYmxlIGluc3RlYWQgYW4gb3B0aW9uLAoJICBzaW5jZSBhbiBvcHRpb24gaXMgbm90IHNjcmlwdGFibGUgYW5kIHNvIGJyZWFrcyB0aGUgdG9vbGNoYWluCgkgIHRlc3Qgb3IgbWF5YmUgb3B0aW9uKCkgc2hvdWxkIGJlIG1hZGUgc2NyaXB0YWJsZSA/CgoJICBBbGV4CgoyMDA3LTEyLTE5IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMTggMTc6NTAgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2UsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0Lmg6IEVOSDogYWRkIHN1cHBvcnQgZm9yIGNocnBhdGgsIHNvIHRoZSBSUEFUSCBpbgoJICBFTEYgZmlsZXMgY2FuIGJlIGNoYW5nZWQgd2hlbiBpbnN0YWxsaW5nIHdpdGhvdXQgaGF2aW5nIHRvIGxpbmsKCSAgdGhlIHRhcmdldCBhZ2FpbiAtPiBjYW4gc2F2ZSBhIGxvdCBvZiB0aW1lCgoJICBjaHJwYXRoIGlzIGhhbmRsZWQgdmVyeSBzaW1pbGFyIHRvIGluc3RhbGxfbmFtZV90b29sIG9uIHRoZSBtYWMuCgkgIElmIHRoZSBSUEFUSCBpbiB0aGUgYnVpbGQgdHJlZSBmaWxlIGlzIHRvIHNob3J0LCBpdCBpcyBwYWRkZWQKCSAgdXNpbmcgdGhlIHNlcGFyYXRvciBjaGFyYWN0ZXIuICBUaGlzIGlzIGN1cnJlbnRseSBkaXNhYmxlZCBieQoJICBkZWZhdWx0LCBpdCBjYW4gYmUgZW5hYmxlZCB1c2luZyB0aGUgb3B0aW9uIENNQUtFX1VTRV9DSFJQQVRILgoJICBUaGVyZSBhcmUgYWRkaXRpb25hbCBjaGVja3Mgd2hldGhlciBpdCBpcyBzYWZlIHRvIGVuYWJsZSBpdC4gSQoJICB3aWxsIHJld29yayB0aGVtIGFuZCB1c2UgRklMRShSRUFEKSBpbnN0ZWFkIHRvIGRldGVjdCB3aGV0aGVyIHRoZQoJICBiaW5hcmllcyBhcmUgYWN0dWFsbHkgRUxGIGZpbGVzLgoKCSAgY2hycGF0aCBpcyBhdmFpbGFibGUgaGVyZQoJICBodHRwOi8vd3d3LnR1eC5vcmcvcHViL1gtV2luZG93cy9mdHAuaHVuZ3J5LmNvbS9jaHJwYXRoLyBvciBrZGUKCSAgc3ZuIChzaW5jZSBhIGZldyBkYXlzKToKCSAgaHR0cDovL3dlYnN2bi5rZGUub3JnL3RydW5rL2tkZXN1cHBvcnQvY2hycGF0aC8KCgkgIEFsZXgKCjIwMDctMTItMTggMTU6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzlXaW42NEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOVdpbjY0R2VuZXJhdG9yLmg6IEVOSDogbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDctMTItMTggMTU6MDIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0ZpbmRQa2dDb25maWcuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vTGludXgtaWZvcnQuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFV0aWxpdGllcy9jbXRhci9lbmNvZGUuYzogRU5IOiBtZXJnZSBpbiBmcm9tIG1haW4gdHJlZQoKMjAwNy0xMi0xOCAxNDo1MCAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IHNob3VsZCBkZWZpbmUgUVRfRExMIGluc3RlYWQgb2YKCSAgUVRfU0hBUkVECgoyMDA3LTEyLTE4IDEzOjA1ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogIEltcHJvdmUgZG9jdW1lbnRhdGlvbiBvZiBuZXcKCSAgZmVhdHVyZXMuCgoyMDA3LTEyLTE4IDEwOjAyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRCb29zdC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA1NDY0IGJldHRlciBmaW5kIGJvb3N0CgkgIGZvciB3aW5kb3dzCgoyMDA3LTEyLTE4IDA5OjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgVGVzdHMvQ09ubHkvQ01ha2VMaXN0cy50eHQ6IEJVRzogZml4IGZvciBidWcgNjE3MiBhZGQgZ2V0IHNvdXJjZQoJICBmaWxlIHByb3AgTEFOR1VBR0UKCjIwMDctMTItMTggMDk6NTAgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wbGVtZW50ZWQgZ2VuZXJhdGlvbgoJICBvZiBkaXNwbGF5IGZvciBwcmUtYnVpbGQsIHByZS1saW5rLCBhbmQgcG9zdC1idWlsZCBjdXN0b20gY29tbWFuZAoJICBjb21tZW50cyBkdXJpbmcgdGhlIGJ1aWxkLiAgVGhpcyBhZGRyZXNzZXMgaXNzdWUgIzUzNTMuCgoyMDA3LTEyLTE4IDA4OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbgoKMjAwNy0xMi0xOCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTE3IDIxOjM3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRQa2dDb25maWcuY21ha2U6IEJVRzogZml4IGZvciA1NzIyCgoyMDA3LTEyLTE3IDE5OjQ4ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEJVRzogUmVtb3ZlIHN0cmF5IGRlYnVnZ2luZwoJICBtZXNzYWdlLgoKMjAwNy0xMi0xNyAxODozOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4OiBCVUc6IFdoZW4gdGhlIHdvcmtpbmcKCSAgZGlyZWN0b3J5IGZvciBhIGN1c3RvbSBjb21tYW5kIGlzIG9uIGFub3RoZXIgZHJpdmUgbGV0dGVyIHdlIG5lZWQKCSAgdG8gY2hhbmdlIHRvIHRoYXQgZHJpdmUgbGV0dGVyIGFmdGVyIGNoYW5naW5nIGl0cyB3b3JraW5nCgkgIGRpcmVjdG9yeS4gIEZpeGVzIGlzc3VlICM2MTUwLgoKMjAwNy0xMi0xNyAxNzo1NyAgaG9mZm1hbgoKCSogTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlOiBTVFlMRTogZml4IGRvYyBzdHJpbmcKCjIwMDctMTItMTcgMTc6NTUgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuY3h4LCBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLnk6CgkgIEJVRzogRml4ZWQgbWVtb3J5LWxlYWtzIGluIGZvcnRyYW4gcGFyc2VyLgoKMjAwNy0xMi0xNyAxNzo1NSAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgQlVHOiBGaXggcGFyc2luZyBvZiAjaW5jbHVkZSBwcmVwcm9jZXNzb3IgZGlyZWN0aXZlcy4KCjIwMDctMTItMTcgMTc6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogRm9ydHJhbiBpbmNsdWRlCgkgIHBhdGggaXMgdGhlIHNhbWUgYXMgQyBhbmQgQ1hYIGluY2x1ZGUgcGF0aHMuCgoyMDA3LTEyLTE3IDE3OjUwICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY210YXIvZW5jb2RlLmM6IEJVRzogZml4IGZvciBidWcgNTgzNywgbGlidGFyIGFuZCBsb25nCgkgIHBhdGggbmFtZXMKCjIwMDctMTItMTcgMTc6NDAgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0ZpbmRQa2dDb25maWcuY21ha2UsCgkgIE1vZHVsZXMvRmluZFF0My5jbWFrZSwgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLAoJICBNb2R1bGVzL1VzZVF0NC5jbWFrZSwgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbi5iYWs6IEVOSDogbW92ZSBjaGFuZ2VzIGZyb20gbWFpbgoJICB0cmVlCgoyMDA3LTEyLTE3IDE3OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyA1OTMxCgkgIGFkZCBzb21lIG1vcmUgZmxhZ3MgZm9yIHRoZSBndWkKCjIwMDctMTItMTcgMTc6MjIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogQlVHOiBmaXggZm9yIDU5MzMsIGxvb2sgZm9yIGphdmEgaW4gbW9yZQoJICByZWcgZW50cmllcwoKMjAwNy0xMi0xNyAxNzowNSAgYWxleAoKCSogTW9kdWxlcy9DVGVzdC5jbWFrZTogU1RZTEU6IHVzZSBJRihOT1QgKSBpbnN0ZWFkIG9mIElGKCkgRUxTRSgpCgkgIHdpdGggZW1wdHkgSUYoKSBicmFuY2gKCgkgIEFsZXgKCjIwMDctMTItMTcgMTY6MTUgIGFsZXgKCgkqIERvY3MvY21ha2Utc3ludGF4LnZpbTogU1RZTEU6IGFwcGx5IHBhdGNoIGZyb20gIzYxNjYsIGJldHRlcgoJICBjbWFrZSBzeW50YXggaGlnaGxpZ2h0aW5nIGluIHZpbSwgc2VlbXMgdG8gZml4IHRoZSBpc3N1ZXMKCSAgbWVudGlvbmVkIGluIHRoZSBidWcgcmVwb3J0IGFuZCB0aGUgcmVzdCBhbHNvIHN0aWxsIHNlZW1zIHRvIGJlCgkgIG9rCgoJICBBbGV4CgoyMDA3LTEyLTE3IDE1OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHg6IEVOSDogdHJ5IHRvIGZpeAoJICBkYXNoYm9hcmQKCjIwMDctMTItMTcgMTU6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eDogQlVHOiBBcHBseSBwYXRjaCBmcm9tIGlzc3VlICM2MDA2LgoKMjAwNy0xMi0xNyAxNDo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOVdpbjY0R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW85V2luNjRHZW5lcmF0b3IuaCwgY21ha2UuY3h4OiBFTkg6IGFkZAoJICBzdXBwb3J0IGZvciB2cyA5IHdpbjY0CgoyMDA3LTEyLTE3IDEyOjA0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDYxNjcgZ2V0IHJpZCBvZgoJICBleHRyYSBzcGFjZSBpbiBmbGFncwoKMjAwNy0xMi0xNyAxMDoxMiAga2luZwoKCSogU291cmNlL2NtVGFyZ2V0LmN4eCwgVGVzdHMvUHJvcGVydGllcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZAoJICBTT1VSQ0VTIHByb3BlcnR5IHRvIHRhcmdldHMuCVRoaXMgaXMgYmFzZWQgb24gcGF0Y2ggZnJvbSBpc3N1ZXMKCSAgIzYxMzcuCgoyMDA3LTEyLTE3IDEwOjEyICBraW5nCgoJKiBTb3VyY2UvOiBjbVNvdXJjZUZpbGUuY3h4LCBjbVNvdXJjZUZpbGUuaDogRU5IOiBBZGRlZAoJICBjbVNvdXJjZUZpbGU6OkdldExvY2F0aW9uIG1ldGhvZCB0byBnZXQgYSByZWFkLW9ubHkgcmVmZXJlbmNlIHRvCgkgIHRoZSBMb2NhdGlvbiBpdmFyLiAgVGhpcyBwYXJ0aWFsbHkgYWRkcmVzc2VzIGlzc3VlICM2MTM3LgoKMjAwNy0xMi0xNyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTE2IDA3OjU2ICBhbGV4CgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eDogQlVHOiBmaXggU1RSSU5HKFNUUklQIC4uLikgaWYgbm8KCSAgbm9uLXNwYWNlIGlzIGNvbnRhaW5lZCBpbiB0aGUgaW5wdXQgc3RyaW5nLCB0aGlzIHNob3VsZCBmaXggdGhlCgkgIGRhc2hib2FyZAoKCSAgQWxleAoKMjAwNy0xMi0xNiAwNTo0OSAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBTVFlMRTogc29tZSB3aGl0ZXNwYWNlIHN5bmNpbmcgd2l0aAoJICBGaW5kUXQ0LmNtYWtlIGluIEtERSBzdm4KCgkgIEFsZXgKCjIwMDctMTItMTYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0xNSAxNjowMyAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6IEJVRzogTmVlZCB0byBzdHJpcAoJICBsZWFkaW5nIGFuZCB0cmFpbGluZyB3aGl0ZXNwYWNlIG9mZiB0aGUgY29tcGlsZXIgJ0FSRzEnLiAgVGhpcwoJICBmaXhlcyBidWcjNjE0MS4KCjIwMDctMTItMTUgMTU6MzYgIGtpbmcKCgkqIFRlc3RzL0ZvcnRyYW4vOiBDTWFrZUxpc3RzLnR4dCwgTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgTGlicmFyeS9hLmY5MCwgTGlicmFyeS9iLmY5MCwgTGlicmFyeS9tYWluLmY5MDogRU5IOiBBZGRlZCB0ZXN0CgkgIGZvciBGb3J0cmFuOTAgbW9kdWxlcyBpbiBzdWJkaXJlY3Rvcmllcy4KCjIwMDctMTItMTUgMTU6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogRU5IOiBNYWtlIG1vZHVsZSB0aW1lc3RhbXBzIHdvcmsgZm9yCgkgIG1vZHVsZXMgaW4gc3ViZGlyZWN0b3JpZXMuICBNYWtlIHN1cmUgdGltZXN0YW1wcyBmb3IgYWxsIG1vZHVsZXMKCSAgcHJvdmlkZWQgYnkgYSB0YXJnZXQgYXJlIGNyZWF0ZWQgd2hlbiB0aGUgdGFyZ2V0IGlzIGRvbmUKCSAgYnVpbGRpbmcuCgoyMDA3LTEyLTE1IDE0OjE2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsIGNtRmluZFBhY2thZ2VDb21tYW5kLmg6IFNUWUxFOgoJICBSZW1vdmVkIHRyYWlsaW5nIHdoaXRlc3BhY2UuCgoyMDA3LTEyLTE1IDE0OjE0ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IFNUWUxFOiBGaXhlZCB0ZXJtaW5vbG9neSB0byBhdm9pZAoJICBjb25mdXNpb24gYmV0d2VlbiByb290cyBhbmQgcHJlZml4ZXMuCgoyMDA3LTEyLTE1IDE0OjEzICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBTVFlMRTogRml4ZWQgbGluZS10b28tbG9uZy4KCjIwMDctMTItMTUgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0xNCAyMDo0NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5jeHg6IEJVRzoKCSAgZml4IGZvciBidWcgNjAzOSBMSUIgYW5kIElOQ0xVREUgbm90IHVzZWQgZm9yIGZpbmQgc3R1ZmYKCjIwMDctMTItMTQgMjA6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21NYWtlRGVwZW5kLmN4eCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5oeHguaW46IEJVRzogZml4IGZvciBidWcKCSAgNjEzNiBtYWtlIHN1cmUgaW5jbHVkZXMgYXJlIG5vdCBkaXJlY3RvcmllcwoKMjAwNy0xMi0xNCAxNjo1NiAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6ICBBZGQgT1BUSU9OUyBhcmd1bWVudCB0byBzb21lIFF0NAoJICBtYWNyb3MuCSBBZGRyZXNzZXMgIzYxMjUuCgoyMDA3LTEyLTE0IDE1OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5oOiBCVUc6IGZpeCBidWcgNjA4MQoKMjAwNy0xMi0xNCAxNDo1OCAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIDYwODYKCSAgdW5pbnN0YWxsIGljb24gbm90IHNldCByaWdodAoKMjAwNy0xMi0xNCAxMjo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUGtnQ29uZmlnLmNtYWtlOiBCVUc6IGZpeCBmb3IgNjExNywgZml4IGZvciBzZWNvbmQKCSAgcnVuCgoyMDA3LTEyLTE0IDEyOjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oOiBTVFlMRTogbGluZSBsZW5ndGgKCjIwMDctMTItMTQgMTE6MDAgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbWN1cmwvY3VybC9tcHJpbnRmLmg6IEJVRzogZml4IGZvciBidWcgNjA1NCByZW1vdmUKCSAgc29tZSB3YXJuaW5ncwoKMjAwNy0xMi0xNCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTEzIDE4OjMwICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBDT01QOiBBZGQgbWlzc2luZyByZXR1cm4gdmFsdWUgZnJvbSBCaWxsJ3MKCSAgY2hhbmdlLgoKMjAwNy0xMi0xMyAxNzo1NiAga2luZwoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtYWtlLmN4eCwgY21ha2UuaCwKCSAgY21ha2VtYWluLmN4eCwgY3Rlc3QuY3h4LCBDUGFjay9jcGFjay5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIEZMVEtEaWFsb2cvRkxUS0RpYWxvZy5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcCwKCSAgUXREaWFsb2cvQ01ha2VTZXR1cC5jeHg6IEVOSDogQ2VudHJhbGl6ZWQgYW5kIGdsb2JhbGl6ZWQKCSAgY29tcHV0YXRpb24gb2YgQ01ha2UgcHJvZ3JhbSBsb2NhdGlvbnMuICBUaGlzIGVsaW1pbmF0ZXMgc3RhcnR1cAoJICBwYXRocyB0aGF0IGZhaWxlZCB0byBwcm9kdWNlIHRoaXMgaW5mb3JtYXRpb24uCgoyMDA3LTEyLTEzIDE3OjM5ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeGVkIHR5cG8gaW50cm9kdWNlZCBieSBwcmV2aW91cyBjb21taXQuCgoyMDA3LTEyLTEzIDE1OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IGZpeCBmb3IKCSAgYnVnIDYxMDIsIGFsbG93IHVzZXJzIHRvIGNoYW5nZSB0aGUgY29tcGlsZXIKCjIwMDctMTItMTMgMTU6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IFNUWUxFOiBmaXggaW5kZW50CgoyMDA3LTEyLTEzIDE1OjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oOiBFTkg6IGZpeCBkb2NzCgoyMDA3LTEyLTEzIDE1OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2VtYWluLmN4eDogRU5IOiBmaXggZG9jcwoKMjAwNy0xMi0xMyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTEyIDEzOjI1ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jeHg6IEJVRzogIEZpeCBsb2dpYyB0byBhY2NlcHQKCSAgZHJvcCBldmVudHMuCgoyMDA3LTEyLTEyIDA3OjI2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRQZXJsTGlicy5jbWFrZTogQlVHOiAgRml4IGJ1ZyA2MTA2IEZpbmRQZXJsTGlicy5jbWFrZQoJICBtaXNzaW5nIGVzY2FwZWQgJAoKMjAwNy0xMi0xMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTExIDIyOjI4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9GaW5kSk5JLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRQZXJsTGlicy5jbWFrZSwKCSAgTW9kdWxlcy9JbnN0YWxsUmVxdWlyZWRTeXN0ZW1MaWJyYXJpZXMuY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IEVOSDogY2hhbmdlcyBmb3IgUkM1CgoyMDA3LTEyLTExIDEyOjU3ICBjbGludG9uCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogIENvcnJlY3RseSBmaW5kIFVpVG9vbHMgbGlicmFyeSBvbgoJICBNYWMgdy8gYmluYXJ5IGluc3RhbGwgb2YgUXQuCSAgICAgIEZpeGVzICM0NTU0LgoKMjAwNy0xMi0xMSAxMTozNiAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIFN0cmluZy5jLCBTdHJpbmcuaC5pbjogRU5IOiBBZGRlZAoJICBDIFN0cmluZyB1dGlsaXRpZXMgdG8gS1dTeXMuCUltcGxlbWVudGVkIHN0cmNhc2VjbXAgYW5kCgkgIHN0cm5jYXNlY21wLgoKMjAwNy0xMi0xMSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTEwIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMDkgMTk6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBTVFlMRTogZml4IGxpbmUgbGVuIGVycm9yCgoyMDA3LTEyLTA5IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMDggMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0wNyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTA2IDIyOjM4ICBob2ZmbWFuCgoJKiBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dDogRU5IOiBjaGFuZ2UgdG8gbGlicyB0aGF0IGFyZSBub3QgcmVhbAoKMjAwNy0xMi0wNiAxNjo0MyAgcHBwZWJheQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXhlZCBhbiBpbmNvbXBsZXRlIHJlZ2V4cAoKMjAwNy0xMi0wNiAxNDowNyAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3h4OiBCVUc6ICBQcmV2ZW50IG1hcHBpbmcgb2YKCSAgQ29uZmlndXJlIHRvIFByZWZlcmVuY2VzIHdoZW4gUXQgbWVyZ2VzIG1lbnUgaXRlbXMgd2l0aAl0aGUKCSAgc3RhbmRhcmQgTWFjIE9TIFggYXBwbGljYXRpb24gbWVudS4KCjIwMDctMTItMDYgMDk6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvcmVUcnlDb21waWxlLmN4eDogRU5IOiBmb3IgdHJ5IGNvbXBpbGUgZG8gbm90IHB1dCB0aGUKCSAgcnVsZXMgdG8gcmVidWlsZCB0aGUgcHJvamVjdCB3aXRoIGNtYWtlIGluc2lkZSBpdC4gIFRoaXMgaGFzCgkgIGNhdXNlZCBpbmZpbml0ZSBsb29wcyBvZiBidWlsZHMgaW4gc29tZSBjYXNlcywgYW5kIGl0IGlzIGp1c3QgYQoJICB3YXN0ZSBvZiB0aW1lIGFueXdheS4KCjIwMDctMTItMDYgMDg6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dDogQlVHOiBmaXggZm9yIGJ1ZyA1NDU1LCBoYW5kbGUKCSAgbm9kZWZhdWx0bGliIHdpdGggbW9yZSB0aGFuIG9uZSBsaWIKCjIwMDctMTItMDYgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0wNSAxMzoxMyAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogUmVtb3ZlIHJlZmVyZW5jZSB0byB2dGtzeXMuCgkgIFRoZSB1bm1hbmdsZWQga3dzeXMgbmFtZSBzaG91bGQgYmUgdXNlZCBpbiB0aGlzIHNvdXJjZS4KCjIwMDctMTItMDUgMTI6MjQgIHBwcGViYXkKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IGFkZGVkCgkgIHR3byBmdW5jdGlvbnMgZm9yIFVSTCBwYXJzaW5nOiAgICAgIDEuIGFuICJhYnJpZGdlZCIgdmVyc2lvbiB0aGF0CgkgIHNlcGFyYXRlcyBwcm90b2NvbCBmcm9tIGRhdGFnbG9tIGluCSAgICAgIGFuIGV4cHJlc3Npb24gd2l0aAoJICB0aGUgZm9ybSBwcm90b2NvbDovL2RhdGFnbG9tCSAgICAyLiBhICJmdWxsIiB2ZXJzaW9uIHRoYXQgcGFyc2VzCgkgIHByb3RvY29sLCB1c2VybmFtZSwgcGFzc3dvcmQsIAlob3N0bmFtZSwgcG9ydCwgYW5kIHBhdGggaW4KCSAgYSBzdGFuZGFyZCBVUkwgKGFsbCBvZiB0aGVzZSB2YXJpYWJsZXMJIGFyZSBvcHRpb25hbCwKCSAgZXhjZXB0IGZvciBwcm90b2NvbCBhbmQgaG9zdG5hbWUpLgoKMjAwNy0xMi0wNSAxMDo0MCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogbW92ZSB1cCB0byByYyA0CgoyMDA3LTEyLTA1IDEwOjQwICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW46IEVOSDogbW92ZSBmaXggZm9yCgkgIG5zaXMgdG8gYnJhbmNoCgoyMDA3LTEyLTA1IDA5OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW4KCjIwMDctMTItMDUgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMi0wNCAxNzoxNCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eDoKCSAgRU5IOiBtZXJnZSBpbiBmaXhlcyBmcm9tIG1haW4gdHJlZQoKMjAwNy0xMi0wNCAxNzowMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiByZW1vdmUgd2FybmluZwoKMjAwNy0xMi0wNCAxNjowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBFTkg6IGRvIG5vdCBkZXBlbmQgb24gdG91Y2ggYmVpbmcgb24KCSAgdGhlIHN5c3RlbQoKMjAwNy0xMi0wNCAxNjowMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21ha2UuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBhZGQgYSB0b3VjaCAtRSBjb21tYW5kIHRvIGNtYWtlCgoyMDA3LTEyLTA0IDEwOjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZ1bmN0aW9uQ29tbWFuZC5jeHgsIGNtRnVuY3Rpb25Db21tYW5kLmg6IENPTVA6IGZpeAoJICBzdHlsZSBhbmQgd29yayBhcm91bmQgb2xkIGNvbXBpbGVycwoKMjAwNy0xMi0wNCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTAzIDIwOjQ0ICBob2ZmbWFuCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiByZW1vdmUgc3VwZXJpb3IgZGVhbiBpLCBubyBsb25nZXIgdXNlcwoJICBib3JsYW5kCgoyMDA3LTEyLTAzIDEzOjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21ha2UuY3h4LAoJICBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgZnVuY3Rpb25zIGFuZCByYWlzZSBzY29wZQoKMjAwNy0xMi0wMyAxMjo0NyAgbWFydGluawoKCSogU291cmNlLzogY21FbmRGdW5jdGlvbkNvbW1hbmQuY3h4LCBjbUVuZEZ1bmN0aW9uQ29tbWFuZC5oOiBFTkg6CgkgIGFkZCBmdW5jdGlvbnMKCjIwMDctMTItMDMgMTI6NDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUZ1bmN0aW9uQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZ1bmN0aW9uQ29tbWFuZC5oLAoJICBTb3VyY2UvY21SYWlzZVNjb3BlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVJhaXNlU2NvcGVDb21tYW5kLmgsCgkgIFRlc3RzL0Z1bmN0aW9uVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRnVuY3Rpb25UZXN0L2Z1bmN0aW9uVGVzdC5jOiBFTkg6IGFkZCBmdW5jdGlvbnMgYW5kIHJhaXNlCgkgIHNjb3BlIHRvIGNtYWtlCgoyMDA3LTEyLTAzIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTItMDIgMTE6NTEgIGhvZmZtYW4KCgkqIERhcnRMb2NhbC5jb25mLmluOiBFTkg6IGZpeCB1cCBzb21lIHN0dWZmCgoyMDA3LTEyLTAyIDA5OjE1ICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IFNUWUxFOiBDbGFyaWZpZWQgdXNhZ2UgZG9jdW1lbnRhdGlvbgoJICBmb3IgY21ha2UgLS1oZWxwLW1vZHVsZSBGaW5kd3hXaWRnZXRzLgoKMjAwNy0xMi0wMiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTEyLTAxIDIyOjUxICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IFNUWUxFOiBVc2UgTElTVChBUFBFTkQgLi4uKSBpbnN0ZWFkCgkgIG9mIFNFVCguLi4pCgoyMDA3LTEyLTAxIDIwOjU4ICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IEVOSDogQWRkZWQgc2VhcmNoIGVudHJ5IGZvciB0aGUgbmV3CgkgIHJlbGVhc2U6IHd4V2lkZ2V0cy0yLjguNy4KCjIwMDctMTItMDEgMjA6MzUgIG1pZ3VlbGYKCgkqIE1vZHVsZXMvRmluZHd4V2lkZ2V0cy5jbWFrZTogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBzZWxlY3RpbmcKCSAgZGlmZmVyZW50IGNvbmZpZ3VyYXRpb25zIGluIFVOSVhfU1RZTEU6IGRlYnVnL3JlbGVhc2UsCgkgIHN0YXRpYy9zaGFyZWQsIHVuaWNvZGUvYW5zaSwgYW5kIHJlZ3VsYXIvdW5pdmVyc2FsLgoKMjAwNy0xMi0wMSAxOTozMCAgbWlndWVsZgoKCSogTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlOiBFTkg6IEFkZGVkIG1hY3JvIHN1cHBvcnQgZm9yCgkgIGNvbXBpbGluZyB4cmMgcmVzb3VyY2VzIHRvIGNwcCBjb2RlLgoKMjAwNy0xMi0wMSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTMwIDE5OjExICBjbGludG9uCgoJKiBNb2R1bGVzL1VzZVF0NC5jbWFrZTogRU5IOiAgRGVmaW5lIFFUX05PX0RFQlVHIHdoZW4gYnVpbGRpbmcgd2l0aAoJICByZWxlYXNlIFF0IGxpYnMuCSAgRml4ZXMgIzYxMDQuCgoyMDA3LTExLTMwIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMjkgMTA6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBCVUc6IGZpeCBzaW5nbGUgbW9kdWxlIGdlbmVyYXRpb24KCjIwMDctMTEtMjkgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMS0yOCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTI3IDE1OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVySFRNTC5jeHg6IEVOSDogYmV0dGVyIG91dHB1dCBmb3IKCSAgcXQgYXNzaXN0YW50CgoyMDA3LTExLTI3IDAxOjA0ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cC5jeHg6IEVOSDoJQWRkIGhhbmRsaW5nIG9mIC0taGVscCBhbmQKCSAgcmVsYXRlZCBhcmd1bWVudHMuCgoyMDA3LTExLTI3IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMjYgMTc6NTcgIGFsZXgKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IFNUWUxFOgoJICByZXN0cnVjdHVyZSBPdXRwdXRMaW5rTGlicmFyaWVzKCkgYSBiaXQsIHNvIHRoYXQgbmV3IHRoZXJlIGlzIGEKCSAgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyB0aGUgUlBBVEgsIHNvIGUuZy4gdGhlIGluc3RhbGwgcnBhdGggY2FuCgkgIGJlIHF1ZXJpZWQgd2hlbiB0aGUgY29tbWFuZCBmb3IgdGhlIGJ1aWxkIHJwYXRoIGlzIGNyZWF0ZWQuIFRoaXMKCSAgaXMgYSBmaXJzdCBzdGVwIGZvciBzdXBwb3J0aW5nIGNocnBhdGguCgoJICBBbGV4CgoyMDA3LTExLTI2IDEzOjIxICBiYXJyZQoKCSogQ01ha2VMb2dvLmdpZjogRU5IOiBmYW5jaWVyIGxvZ28KCjIwMDctMTEtMjYgMTA6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4ZWQgY29tcHV0YXRpb24KCSAgb2YgJ29iamVjdCcgbmFtZSBmb3IgTUFDT1NYX1BBQ0tBR0VfTE9DQVRJT04gc291cmNlIGZpbGVzLgoKMjAwNy0xMS0yNiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTI1IDE3OjExICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogQlVHOiB0cnkgdG8gZml4ICBjb25maWd1cmUgZXJyb3Igb24KCSAgZGFzaGJvYXJkCgoyMDA3LTExLTI1IDA4OjIwICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRFWFBBVC5jbWFrZTogQlVHOiB1c2UgdGhlIGNvcnJlY3QgdmFyaWFibGUgZm9yCgkgIGNoZWNraW5nIHRoZSBzdWNjZXNzICgjNjA2MikKCgkgIEFsZXgKCjIwMDctMTEtMjUgMDc6NDUgIGFsZXgKCgkqIFNvdXJjZS86IGNtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eCwKCSAgY21FeHRyYUNvZGVCbG9ja3NHZW5lcmF0b3IuaDogU1RZTEU6IG1vdmUgdGhlIGNvZGUgZm9yIGdlbmVyYXRpbmcKCSAgdGhlIFhNTCBmb3Igb25lIHRhcmdldCBpbiBhIHNlcGFyYXRlIGZ1bmN0aW9uIEFwcGVuZFRhcmdldCgpIC1hZGQKCSAgImFsbCIgdGFyZ2V0IC1zb21lIHN5bmNpbmcgd2l0aCB0aGUgRWNsaXBzZSBnZW5lcmF0b3IKCgkgIEFsZXgKCjIwMDctMTEtMjUgMDc6NDAgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCB0aGUgImNsZWFuIgoJICB0YXJnZXQgZG9uJ3QgYWRkICphbGwgZXhpc3RpbmcqIHRhcmdldHMgYXMgRWNsaXBzZSB0YXJnZXRzLCBidXQKCSAgb25seSBhIHN1YnNldCAodGhlIHNhbWUgYXMgZm9yIENvZGVCbG9ja3MpLCBlLmcuIGV4Y2x1ZGUgdGhlCgkgIHN1YnRhcmdldHMgb2YgRXhwZXJpbWVudGFsLCBhbmQgYWxzbyBlZGl0X2NhY2hlLCBjY21ha2UgZG9lc24ndAoJICB3b3JrIGZyb20gd2l0aGluIGFuIElERQoKCSAgQWxleAoKMjAwNy0xMS0yNSAwNzozNCAgYWxleAoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuaCwgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6CgkgIEVOSDogYWRkIEdldENsZWFuVGFyZ2V0TmFtZSgpIHdoaWNoIHJldHVybnMgImNsZWFuIiBmb3IKCSAgbWFrZWZpbGVzLCBzbyBpdCBjYW4gYmUgdXNlZCBieSB0aGUgZWNsaXBzZSBnZW5lcmF0b3IKCgkgIEFsZXgKCjIwMDctMTEtMjUgMDY6MjEgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHg6IEVOSDogYWxzbyBhZGQgdGhlCgkgIGV4cGVyaW1lbnRhbCwgbmlnaHRseSwgcGFja2FnZV9zb3VyY2UsIHByZWluc3RhbGwgYW5kCgkgIHJlYnVpbGRfY2FjaGUgdGFyZ2V0cwoKCSAgQWxleAoKMjAwNy0xMS0yNSAwNToyNiAgYWxleAoKCSogU291cmNlL2NtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eDogU1RZTEU6IGFkZCBzb21lIGNvbW1lbnRzCgoJICBBbGV4CgoyMDA3LTExLTI1IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMjQgMDM6NTEgIGFsZXgKCgkqIFNvdXJjZS86IGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5oOiBTVFlMRTogUVQgLT4KCSAgUXQgaW4gdGhlIGRvY3MKCgkgIEFsZXgKCjIwMDctMTEtMjQgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMS0yMyAyMDo0NSAgYWxleAoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvUGxhdGZvcm0vc3lsbGFibGUuY21ha2UsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9rd3N5cy90ZXN0RHluYW1pY0xvYWRlci5jeHgsCgkgIFRlc3RzL0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkCgkgIHN1cHBvcnQgZm9yIHRoZSBTeWxsYWJsZSBPUyAoaHR0cDovL3d3dy5zeWxsYWJsZS5vcmcpIG1ham9yCgkgIGlzc3VlczogLWFjY2VzcygpIGRvZXNuJ3QgcmV0dXJuIGZhbHNlIGZvciBhbiBlbXB0eSBzdHJpbmcKCSAgKCNpZmRlZmVkIGluIGNtYWtlKSAtZGxvcGVuKCkgZG9lc24ndCByZXR1cm4gMCBvbiBmYWlsdXJlCgkgICgjaWZkZWZlZCBpbiBjbWFrZSBhbmQgZml4ZWQgbm93IGluIFN5bGxhYmxlKSAtdGhlIGt3c3lzIGFuZAoJICBCb290c3RyYXAgdGVzdHMgZmFpbCB3aXRoIHRpbWVvdXQgZHVlIHRvIHRoZSBmYWN0IHRoYXQgSSdtIGRvaW5nCgkgIGFsbCB0aGF0IGluIHFlbXUsIHdoaWNoIGlzIHF1aXRlIHNsb3cgLVJQQVRIIGlzIG5vdyBzdXBwb3J0ZWQsIHNvCgkgIHdpdGhvdXQgbW9kaWZ5aW5nIHRoZSB0ZXN0IGFkYXB0aW5nIERMTF9QQVRIIGluIFN5bGxhYmxlIGlzCgkgIHJlcXVpcmVkIGZvciB0aGUgdGVzdHMgdG8gc3VjY2VlZCAtdGhlIFBsdWdpbiB0ZXN0IGZhaWxzIHdpdGggYW4KCSAgdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBleGFtcGxlX2V4ZV9mdW5jdGlvbigpIGluIGV4YW1wbGVfbW9kXzEsCgkgIGl0IHNlZW1zIHRoaXMgaXNuJ3Qgc3VwcG9ydGVkIHVuZGVyIFN5bGxhYmxlCgoJICBBbGV4CgoyMDA3LTExLTIzIDE0OjUzICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lLXRvby1sb25nLgoKMjAwNy0xMS0yMyAxMTozMCAgYWxleAoKCSogU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHg6IFNUWUxFOiBRVCBpcyBxdWlja3RpbWUsIFF0IGlzIFF0LAoJICBhcyBwb2ludGVkIG91dCBieSBEYXZpZCBGYXVyZQoKCSAgQWxleAoKMjAwNy0xMS0yMyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTIyIDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMjEgMTc6MDkgIGRhdmlkLmNvbGUKCgkqIERhcnRMb2NhbC5jb25mLmluOiBTVFlMRTogVXBkYXRlZCBhbmQgYWxwaGFiZXRpemVkIGV4cGVjdGVkCgkgIGJ1aWxkcyBsaXN0LiBNYW55IG5ldyBNYWMgTGVvcGFyZCBlbnRyaWVzIGZyb20gUm9ndWUgLS0gdGhhbmtzCgkgIGd1eXMhCgoyMDA3LTExLTIxIDE1OjMzICBkYXZpZC5jb2xlCgoJKiBUZW1wbGF0ZXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogSW5zdGFsbCB0aGUgdnNtYWNyb3MgZmlsZS4KCjIwMDctMTEtMjEgMTM6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBDaGFuZ2UgY29tcGlsZXIKCSAgd29ya2luZyBkaXJlY3RvcnkgdG8gdGhlIGxvY2FsIGJ1aWxkIHRyZWUgbG9jYXRpb24gd2hlbiBjb21waWxpbmcKCSAgb2JqZWN0IGZpbGVzLiAgVGhpcyBzaW1wbGlmaWVzIHRoZSBjb21waWxlciBjb21tYW5kIGxpbmUgYW5kIHRoZQoJICB1c2FnZSBvZiB0aGUgPG9iakJhc2U+LnMgYW5kIDxvYmpCYXNlPi5pIHRhcmdldHMuICBJdCBhbHNvIGhlbHBzCgkgIGZvcnRyYW4gY29tcGlsZXJzIHB1dCB0aGVpciBtb2R1bGVzIGluIHRoZSBjb3JyZWN0IHBsYWNlLgoKMjAwNy0xMS0yMSAxMjo1NSAga2luZwoKCSogQ01ha2VMaXN0cy50eHQ6IEJVRzogRml4ZWQgY29uc3RydWN0aW9uIG9mIENNYWtlX1ZFUlNJT05fREFURSB0bwoJICB1c2UgS1dTeXMgRGF0ZVN0YW1wIGZlYXR1cmUgbm93IHRoYXQgY21WZXJzaW9uLmN4eCBpcyBub3QgdXBkYXRlZAoJICBuaWdodGx5IGFueW1vcmUuCgoyMDA3LTExLTIxIDEwOjA3ICBraW5nCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogRG8gbm90IHJlcXVpcmUgYSBuaWdodGx5IHN0YXJ0IHRpbWUgZm9yCgkgIGFuIGV4cGVyaW1lbnRhbCBvciBjb250aW51b3VzIHRlc3QgbW9kZWwuCgoyMDA3LTExLTIxIDA4OjU5ICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBCVUc6IEZvciBpbXBvcnRlZCB0YXJnZXQgZGlyZWN0b3J5LCBkbyBub3QKCSAgcmV0dXJuIHBvaW50ZXIgdG8gZnJlZWQgbWVtb3J5LgoKMjAwNy0xMS0yMSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTIwIDExOjE4ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IE5lZWQgdG8gaG9ub3IKCSAgSEVBREVSX0ZJTEVfT05MWSBzb3VyY2UgZmlsZSBwcm9wZXJ0eSBhbmQgZXhjbHVkZSB0aGUgc291cmNlIGZyb20KCSAgdGhlIGJ1aWxkLgoKMjAwNy0xMS0yMCAxMToxMCAga2luZwoKCSogU291cmNlLzogY21DYWxsVmlzdWFsU3R1ZGlvTWFjcm8uY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcuCgkgIENPTVA6IEZpeGVkIHdhcm5pbmdzIGFib3V0IGxvc3N5IGNvbnZlcnNpb25zLgoKMjAwNy0xMS0yMCAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTE5IDE0OjI3ICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXhfbm9idWlsZC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXhfbm9idWlsZC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleF9ub2J1aWxkLmN4eDogRU5IOiBBZGRpbmcKCSAgdGVzdCBmb3IgdXNpbmcgSEVBREVSX0ZJTEVfT05MWSB0byBhdm9pZCBidWlsZGluZyBhIC5jeHggZmlsZS4KCjIwMDctMTEtMTkgMTQ6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4OiBCVUc6IERvIG5vdCBmb3JjZSBIRUFERVJfRklMRV9PTkxZIG9mZgoJICBpZiB0aGUgdXNlciBoYXMgYWxyZWFkeSBzZXQgaXQgb24uCgoyMDA3LTExLTE5IDE0OjIyICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBDT01QOiBEbyBub3QgYnVpbGQgVlMtc3BlY2lmaWMgY29kZSB3aGVuCgkgIGdlbmVyYXRvcnMgYXJlIG5vdCBpbmNsdWRlZC4KCjIwMDctMTEtMTkgMTQ6MDggIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZUxpc3RzLnR4dDogRU5IOglBZGQgaW5zdGFsbCBjb21tYW5kIGZvcgoJICBleGVjdXRhYmxlLgoKMjAwNy0xMS0xOSAxMzo0NSAga2luZwoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZGVkIGNhbGwgdG8gU3RvcEJ1aWxkIFZTCgkgIG1hY3JvIHdoZW4gcHJvamVjdHMgZmFpbCB0byByZWdlbmVyYXRlIGR1cmluZyBhIGJ1aWxkLgoKMjAwNy0xMS0xOSAxMzo0NCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oOiBFTkg6IFJlbmFtZWQKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3I6OkNhbGxWaXN1YWxTdHVkaW9SZWxvYWRNYWNybyBtZXRob2QKCSAgdG8gQ2FsbFZpc3VhbFN0dWRpb01hY3JvIGFuZCBhZGRlZCBhcmd1bWVudHMgdG8gc2VsZWN0IHdoaWNoCgkgIG1hY3JvIHRvIGNhbGwgYW5kIG9wdGlvbmFsbHkgcGFzcyB0aGUgc29sdXRpb24gZmlsZSBuYW1lLiAgQWRkZWQKCSAgb3B0aW9uIHRvIGNhbGwgdG8gbmV3IFN0b3BCdWlsZCBtYWNyby4gIFVwZGF0ZWQgbG9naWMgZm9yCgkgIHJlcGxhY2luZyB0aGUgbWFjcm8gZmlsZSBpbiB1c2VyIGRpcmVjdG9yaWVzIHdoZW4gdGhlIGRpc3RyaWJ1dGVkCgkgIHZlcnNpb24gaXMgbmV3ZXIuCgoyMDA3LTExLTE5IDEzOjQ0ICBraW5nCgoJKiBUZW1wbGF0ZXMvQ01ha2VWU01hY3JvczEudnNtYWNyb3M6IEVOSDogQWRkZWQgU3RvcEJ1aWxkIG1hY3JvLgoKMjAwNy0xMS0xOSAxMzo0MiAga2luZwoKCSogU291cmNlL2NtYWtlbWFpbi5jeHg6IEJVRzogQWx3YXlzIHJldHVybiBwb3NpdGl2ZSBpbnRlZ2VycyB0byB0aGUKCSAgT1Mgb24gZXJyb3IuCVdpbmRvd3MgZXJyb3IgZW5jb2RpbmcgaXMgY29uZnVzZWQgYnkgbmVnYXRpdmUKCSAgcmV0dXJuIHZhbHVlcy4KCjIwMDctMTEtMTkgMTM6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4OiBCVUc6IFBhcnNlRmlsZSBzaG91bGQgcmV0dXJuIGZhbHNlIGlmCgkgIHRoZXJlIHdhcyBhIHBhcnNlIGVycm9yLgoKMjAwNy0xMS0xOSAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTE4IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMTcgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogU1RZTEU6IE5pZ2h0bHkgRGF0ZSBTdGFtcAoKMjAwNy0xMS0xNiAyMToxOCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL0FkZENhY2hlRW50cnkuY3h4OiBFTkg6ICBSZW1vdmUgZGVidWcgcHJpbnRmCgoyMDA3LTExLTE2IDE0OjA2ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY214bWxycGMvOiBDTWFrZUxpc3RzLnR4dCwgeG1scnBjX2NvbmZpZy5oLmluLAoJICB4bWxycGNfZGF0YS5jOiBFTkg6IGFkZCBhIHRyeSBjb21waWxlIGZvciB2YV9jb3B5CgoyMDA3LTExLTE2IDEzOjU0ICBkYXZpZC5jb2xlCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4OiBFTkg6IEFkZCBtb3JlCgkgIGNvbmRpdGlvbnMgZm9yIGF0dGVtcHRpbmcgdG8gY2FsbCB0aGUgbmV3IFZpc3VhbCBTdHVkaW8gbWFjcm9zLgoJICBPbmx5IHRyeSB0byBjYWxsIHRoZW0gaWYgdGhlIHZzbWFjcm9zIGZpbGUgZXhpc3RzIGFuZCBpcwoJICByZWdpc3RlcmVkLiBDb3VudCBWUyBpbnN0YW5jZXMgYWdhaW4gYWZ0ZXIgd2FybmluZyBhYm91dCBydW5uaW5nCgkgIGluc3RhbmNlcy4gSWYgdXNlciBjbG9zZWQgdGhlbSBpbiByZXNwb25zZSB0byB0aGUgd2FybmluZywgaXQncwoJICBPSyB0byByZWdpc3RlciB0aGUgbWFjcm9zIG5vdyByYXRoZXIgdGhhbiB3YWl0aW5nIHRpbGwgdGhlIG5leHQKCSAgQ01ha2UgZ2VuZXJhdGUuCgoyMDA3LTExLTE2IDExOjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEVOSDogYWRkIHN1cHBvcnQgZm9yCgkgIENEYXNoIGJ1bGxzZXllIGNvdmVyYWdlCgoyMDA3LTExLTE2IDExOjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRml4IGV4Y2VwdGlvbiBoYW5kbGluZwoJICBmbGFnIHRyYW5zbGF0aW9uIHRvIGJlIHNwZWNpZmljIHRvIGVhY2ggVlMgdmVyc2lvbi4gIFRoaXMgYWxsb3dzCgkgIC9FSGEgdG8gYmUgaGFuZGxlZCBjb3JyZWN0bHkgZm9yIFZTIDIwMDMuCgoyMDA3LTExLTE2IDEwOjQwICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvUUNNYWtlQ2FjaGVWaWV3LmN4eDogRU5IOiAgbW9yZSByb2J1c3Qgc2VhcmNoCgkgIGZpbHRlci4KCjIwMDctMTEtMTYgMDc6MDEgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ2FsbFZpc3VhbFN0dWRpb01hY3JvLmN4eCwKCSAgU291cmNlL2NtQ2FsbFZpc3VhbFN0dWRpb01hY3JvLmgsCgkgIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFRlbXBsYXRlcy9DTWFrZVZTTWFjcm9zMS52c21hY3JvczoKCSAgRU5IOiBBZGQgYWJpbGl0eSB0byBjYWxsIFZpc3VhbCBTdHVkaW8gbWFjcm9zIGZyb20gQ01ha2UuIEFkZCBhCgkgIENNYWtlIFZpc3VhbCBTdHVkaW8gbWFjcm8gdG8gcmVsb2FkIGEgc29sdXRpb24gZmlsZSBhdXRvbWF0aWNhbGx5CgkgIGlmIENNYWtlIG1ha2VzIGNoYW5nZXMgdG8gLnNsbiBmaWxlcyBvciAudmNwcm9qIGZpbGVzLiBBZGQgY29kZQoJICB0byBjYWxsIHRoZSBtYWNybyBhdXRvbWF0aWNhbGx5IGZvciBhbnkgcnVubmluZyBWaXN1YWwgU3R1ZGlvCgkgIGluc3RhbmNlcyB3aXRoIHRoZSAuc2xuIGZpbGUgb3BlbiBhdCB0aGUgZW5kIG9mIHRoZSBWaXN1YWwgU3R1ZGlvCgkgIEdlbmVyYXRlIGNhbGwuIE9ubHkgY2FsbCB0aGUgbWFjcm8gaWYgc29tZSAuc2xuIG9yIC52Y3Byb2ogZmlsZQoJICBjaGFuZ2VkIGR1cmluZyBHZW5lcmF0ZS4gQWxzbywgYWRkIGhhbmRsaW5nIGZvciBSRUdfRVhQQU5EX1NaCgkgIHR5cGUgdG8gU3lzdGVtVG9vbHM6OlJlYWRSZWdpc3RyeVZhbHVlIC0gcmV0dXJuZWQgc3RyaW5nIGhhcwoJICBlbnZpcm9ubWVudCB2YXJpYWJsZSByZWZlcmVuY2VzIGV4cGFuZGVkLgoKMjAwNy0xMS0xNiAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBTVFlMRTogTmlnaHRseSBEYXRlIFN0YW1wCgoyMDA3LTExLTE1IDEzOjE0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogRU5IOiBhZGQgc3VwcG9ydCBmb3IgZW52IHZhciBhbmQKCSAgYmV0dGVyIGRlZmF1bHQgZm9yIENNQUtFX09TWF9TWVNST09UCgoyMDA3LTExLTE1IDAwOjAxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IFNUWUxFOiBOaWdodGx5IERhdGUgU3RhbXAKCjIwMDctMTEtMTQgMjM6MzAgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9RQ01ha2VDYWNoZVZpZXcuY3h4OiBDT01QOiAgRml4IHdhcm5pbmcuCgoyMDA3LTExLTE0IDIxOjE3ICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBFTkg6IFNpbXBsaWZpZWQgQ01ha2UgdmVyc2lvbgoJICBpbmZvcm1hdGlvbiB1c2luZyBLV1N5cyBEYXRlU3RhbXAgZmVhdHVyZS4gIFJlZHVjZWQgZHVwbGljYXRlCgkgIGNvZGUgaW4gYm9vdHN0cmFwIHNjcmlwdC4KCjIwMDctMTEtMTQgMTg6MDggIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiAgRml4IGNhc2Ugb2Ygd2luZG93cyBsaWJyYXJ5IG5hbWVzIHRvCgkgIHN1cHBvcnQJY3Jvc3MgY29tcGlsaW5nIHcvIFF0IG9uIGNhc2Ugc2Vuc2l0aXZlIHBsYXRmb3Jtcy4KCjIwMDctMTEtMTQgMDA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c0RhdGVTdGFtcC5jbWFrZTogZGFpbHkgdmVyc2lvbiBudW1iZXIKCjIwMDctMTEtMTMgMjM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMS0xMyAxNjoyNSAgYWxleAoKCSogU291cmNlL1F0RGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3h4OiBFTkg6IGFkZCBjb21wbGV0ZXIgZm9yIHRoZQoJICBzb3VyY2UgYW5kIGJpbmFyeSBkaXIgbGluZWVkaXRzCgoJICBDbGludG9uOiBkbyBJIGFjdHVhbGx5IGhhdmUgdG8gY3JlYXRlIHNlcGFyYXRlIG1vZGVscyBmb3IgZWFjaAoJICBjb21wbGV0ZXIsIGFuZCBhIHNlcGFyYXRlIGNvbXBsZXRlciBmb3IgZWFjaCB3aWRnZXQsIG9yIGNvdWxkIHRoZQoJICBtb2RlbHMvY29tcGxldGVycyBiZSB1c2VkIGZvciBtdWx0aXBsZSB3aWRnZXRzID8KCgkgIEFsZXgKCjIwMDctMTEtMTMgMTI6NTMgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9RQ01ha2VDYWNoZVZpZXcuY3h4OiBFTkg6ICBzaW5nbGUgY2xpY2sgY2FuIHN0YXJ0CgkgIGVkaXRpbmcgY2FjaGUgdmFsdWVzLgoKMjAwNy0xMS0xMyAxMToyMSAgbWFydGluawoKCSogVGVzdHMvVHV0b3JpYWwvU3RlcDYvQ01ha2VMaXN0cy50eHQ6IEVOSDogc3dpdGNoIHRvIG5ldyBpbnN0YWxsCgkgIGNvbW1hbmRzIHRvIG1hdGNoIGJvb2sgdGV4dAoKMjAwNy0xMS0xMyAxMToxOCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL1FDTWFrZUNhY2hlVmlldy5jeHg6IEJVRzogIFRoZSBzZWFyY2ggaXMgc2V0IHRvCgkgIGFwcGx5IHRvIGFsbCBjb2x1bW5zLCBidXQgaW4gUXQgNC4yLCB0aGF0IGJyZWFrcwkgdGhlIHNlYXJjaAoJICBlbnRpcmVseS4gIFNlYXJjaCBvbiB0aGUgZmlyc3QgY29sdW1uIG9ubHkgd2hlbiB1c2luZyBRdCA0LjIuCgoyMDA3LTExLTEzIDExOjExICBtYXJ0aW5rCgoJKiBUZXN0cy9UdXRvcmlhbC86IFN0ZXAzL0NNYWtlTGlzdHMudHh0LAoJICBTdGVwMy9NYXRoRnVuY3Rpb25zL0NNYWtlTGlzdHMudHh0LCBTdGVwNC9DTWFrZUxpc3RzLnR4dCwKCSAgU3RlcDQvTWF0aEZ1bmN0aW9ucy9DTWFrZUxpc3RzLnR4dCwgU3RlcDUvQ01ha2VMaXN0cy50eHQsCgkgIFN0ZXA1L01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsIFN0ZXA2L0NNYWtlTGlzdHMudHh0LAoJICBTdGVwNi9NYXRoRnVuY3Rpb25zL0NNYWtlTGlzdHMudHh0LCBTdGVwNy9DTWFrZUxpc3RzLnR4dCwKCSAgU3RlcDcvTWF0aEZ1bmN0aW9ucy9DTWFrZUxpc3RzLnR4dDogRU5IOiBzd2l0Y2ggdG8gbmV3IGluc3RhbGwKCSAgY29tbWFuZHMgdG8gbWF0Y2ggYm9vayB0ZXh0CgoyMDA3LTExLTEzIDAwOjMzICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5jeHg6IEVOSDoKCSAgc3VwcG9ydCBzcGVjaWZ5aW5nIGJ1aWxkIG9yIHNvdXJjZSBkaXJlY3RvcnkgYXQgY29tbWFuZCBsaW5lLgoKMjAwNy0xMS0xMyAwMDoxNyAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogUUNNYWtlQ2FjaGVWaWV3LmN4eCwgUUNNYWtlQ2FjaGVWaWV3Lmg6IEVOSDoKCSAgQWxsb3cgY2xpY2tpbmcgYW55d2hlcmUgaW4gZmllbGQgdG8gdG9nZ2xlIGNoZWNrIGJveGVzLgoKMjAwNy0xMS0xMyAwMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzRGF0ZVN0YW1wLmNtYWtlOiBkYWlseSB2ZXJzaW9uIG51bWJlcgoKMjAwNy0xMS0xMiAyMzo1OSAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQWRkQ2FjaGVFbnRyeS5jeHgsIEFkZENhY2hlRW50cnkuaDogU1RZTEU6CWFkZAoJICBsaWNlbnNlLgoKMjAwNy0xMS0xMiAyMzo1NCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQWRkQ2FjaGVFbnRyeS5jeHgsIEFkZENhY2hlRW50cnkuaCwKCSAgQWRkQ2FjaGVFbnRyeS51aSwgQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAucXJjLAoJICBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLCBDTWFrZVNldHVwRGlhbG9nLnVpLAoJICBQbHVzMTYucG5nLCBRQ01ha2UuY3h4LCBRQ01ha2VDYWNoZVZpZXcuY3h4LCBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgRU5IOglBZGQgYWJpbGl0eSB0byBhZGQgY2FjaGUgZW50cmllcyAoZXZlbiBiZWZvcmUgZmlyc3QKCSAgY29uZmlndXJlKS4KCjIwMDctMTEtMTIgMjM6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMS0xMiAyMjozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgZiBzdHVmZiB0byBhdm9pZCB3YXJuaW5ncwoKMjAwNy0xMS0xMiAyMjozMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oOiBFTkg6IGFkZAoJICBndWVzcyBwcm9ncmVzcyBmb3IgZmlyc3QgdGltZSBjb25maWd1cmluZyBhIHByb2plY3QuCgoyMDA3LTExLTEyIDE4OjIyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNEYXRlU3RhbXAuY21ha2U6IGRhaWx5IHZlcnNpb24gbnVtYmVyCgoyMDA3LTExLTEyIDE4OjIyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBEYXRlU3RhbXAuaC5pbiwga3dzeXNEYXRlU3RhbXAucHk6IEVOSDogQ3JlYXRlZAoJICBiZXR0ZXIgbmFtZXMgYW5kIGEgbW9yZSBjb252ZW5pZW50IHNldCBvZiB2ZXJzaW9uIGRhdGUgc3RhbXAKCSAgbWFjcm9zLgoKMjAwNy0xMS0xMiAxODowNiAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jeHgsIENNYWtlU2V0dXBEaWFsb2cudWk6IEVOSDoKCSAgRml4IGxheW91dCB3aXRoIFF0IDQuMi4gIEJVRzogIEZpeCBoZWxwIGNvbW1lbnRzIHRvIG1hdGNoIHdoYXQKCSAgdGhpcyBHVUkgZG9lcy4KCjIwMDctMTEtMTIgMTc6NTEgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogQlVHOiAgRml4IHByb21wdCBmb3IKCSAgY2hhbmdlcyBpZiB0aGV5IGhhdmVuJ3QgYmVlbiBzYXZlZC4KCjIwMDctMTEtMTIgMTc6NDEgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3h4LCBDTWFrZVNldHVwRGlhbG9nLmgsCgkgIENNYWtlU2V0dXBEaWFsb2cudWk6CgkgIEJVRzogRml4IHBhdXNlIGF0IHNodXRkb3duLiAgRU5IOiBSZW1vdmUgaW50ZXJydXB0IGJ1dHRvbiBhbmQKCSAgbWFrZSBjb25maWd1cmUvZ2VuZXJhdGUgdHVybiB0byBzdG9wIGR1cmluZyBydW5zLiAgRU5IOiBBZGQgdGV4dAoJICB0byByZW1vdmUgY2FjaGUgZW50cnkgYnV0dG9uLgoKMjAwNy0xMS0xMiAxNzozOCAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZpeGVkIHR5cG8gaW4gcHJldmlvdXMgY29tbWl0LgoKMjAwNy0xMS0xMiAxNzozNCAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIERhdGVTdGFtcC5oLmluLAoJICBrd3N5c0RhdGVTdGFtcC5jbWFrZSwga3dzeXNEYXRlU3RhbXAucHk6IEVOSDogQWRkaW5nIERhdGVTdGFtcAoJICBmZWF0dXJlIHRvIEtXU3lzLiAgVGhpcyBwcm92aWRlcyBhIGhlYWRlciBmaWxlIGdpdmluZwoJICBwcmVwcm9jZXNzb3IgYWNjZXNzIHRvIGEgZGF0ZWQgdmVyc2lvbi4gIFRoZSAnZGF0ZXN0YW1wJyB3aWxsIGJlCgkgIHVwZGF0ZWQgYXV0b21hdGljYWxseSBldmVyeSBkYXkgYnkgYSBzY3JpcHQuCgoyMDA3LTExLTEyIDE2OjU4ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeCBtZXNzYWdlcyBmb3IgdGltZSBzdGFtcCBmaWxlCgkgIHJlY3JlYXRpb24uCgoyMDA3LTExLTEyIDE1OjQyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IEJVRzogQ29udmVydGVkIHBlci12Y3Byb2oKCSAgdGltZXN0YW1wIHRvIGEgc2luZ2xlIGRpcmVjdG9yeS1sZXZlbCBDTWFrZUZpbGVzL2dlbmVyYXRlLnN0YW1wCgkgIGZpbGUgc2hhcmVkIGJ5IGFsbCB0YXJnZXRzIGluIGVhY2ggZGlyZWN0b3J5LiAgVGhpcyBhdm9pZHMgaGF2aW5nCgkgIGFsbCB0YXJnZXRzIG92ZXJ3cml0ZSBlYWNoIG90aGVycyB0aW1lc3RhbXAgY2hlY2sgcnVsZXMgYW5kCgkgIGluc3RlYWQgaGFzIG9uZSBzaW5nbGUgcnVsZS4KCjIwMDctMTEtMTIgMTM6NTQgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlTGlzdHMudHh0LCBDTWFrZVNldHVwRGlhbG9nLnVpOiBFTkg6CgkgIEFsbG93IGJ1aWxkIHdpdGggUXQgNC4yLgoKCQk0LjMgZGVwZW5kZW5jZSBmZWxsIG91dCB3aGVuIGVycm9ycyBnbyB0byBvdXRwdXQKCQl3aW5kb3cgaW5zdGVhZCBvZiBtZXNzYWdlIGJveCBibG9ja2luZyBjbWFrZSB0aHJlYWQuCgoyMDA3LTExLTEyIDEzOjUyICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IEJVRzogRml4IHRvIHN1cHBvcnQgYXJjaCBhbmQKCSAgaXN5c3Jvb3QgY29tcGlsYXRpb24gb3B0aW9ucyBvbiBNQUMgKEJ1ZyA1MDA3KS4KCjIwMDctMTEtMTIgMTI6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4OiBCVUc6IGJldHRlciBzZXR1cCBvZiBwcm9wZXJ0aWVzIGZvcgoJICBsb2FkZWQgY29tbWFuZHMKCjIwMDctMTEtMTEgMjM6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMS0xMCAyMzoxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTEwIDE3OjMxICBraW5nCgoJKiBUZXN0cy9XcmFwcGluZy86IENNYWtlTGlzdHMudHh0LCBmYWtlZmx1aWQuY3h4OiBCVUc6IEZpeGVkIGZha2UKCSAgZ2VuZXJhdGlvbiBvZiBmaWxlcyB0byBiZWhhdmUgbW9yZSBsaWtlIGZsdWlkLgoKMjAwNy0xMS0xMCAxMTozNiAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cC5xcmMsIENNYWtlU2V0dXBEaWFsb2cuY3h4LAoJICBDTWFrZVNldHVwRGlhbG9nLmgsIENNYWtlU2V0dXBEaWFsb2cudWksIERlbGV0ZTE2LnBuZywKCSAgUUNNYWtlQ2FjaGVWaWV3LmN4eCwgUUNNYWtlQ2FjaGVWaWV3Lmg6CgkgIEVOSDoJUmUtYXJyYW5nZSBVSSBhIGJpdC4gIEJVRzogIFByb3Blcmx5IHVwZGF0ZSB3aGVuIHZhbHVlcwoJICB0aGF0IGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgY29uZmlndXJlLgoKMjAwNy0xMS0xMCAwODoxNSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogQWxsb3cKCSAgVlMgNyBwcm9qZWN0IFJlYnVpbGQgYW5kIFNvbHV0aW9uIFJlYnVpbGQgdG8gd29yayB3aXRob3V0CgkgIHJlLXJ1bm5pbmcgQ01ha2UgZm9yIGV2ZXJ5IHByb2plY3QgZHVyaW5nIHRoZSByZWJ1aWxkLgoKMjAwNy0xMS0xMCAwODoxNCAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4OiBTVFlMRTogRml4ZWQgbGluZS10b28tbG9uZyBmb3IKCSAgdW5kb2N1bWVudGVkIHZhcmlhYmxlIGVudHJpZXMuCgoyMDA3LTExLTEwIDA2OjU0ICBkYXZpZC5jb2xlCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBOZWVkIGV4dHJhIHJlZ2V4IHRvIHBhcnNlCgkgIHN3X3ZlcnMgb3V0cHV0IG9uIE1hYyBPU1ggMTAuMiAoYW5kIHByZXN1bWFibHkgZWFybGllcikgdG8gYXZvaWQKCSAgcnVubmluZyBQYWNrYWdlTWFrZXIgZHVyaW5nIHRoZSBTaW1wbGVJbnN0YWxsKiB0ZXN0cy4gU2VlIGNvbW1lbnQKCSAgaW4gQ01ha2UvVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCBmb3IgbW9yZSBpbmZvLgoKMjAwNy0xMS0wOSAyMzoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTA5IDE1OjE4ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLAoJICBRQ01ha2UuY3h4LCBRQ01ha2UuaCwgUUNNYWtlQ2FjaGVWaWV3LmN4eCwgUUNNYWtlQ2FjaGVWaWV3Lmg6CgkgIEJVRzoJRG9uJ3QgcHJvbXB0IGZvciB1bnNhdmVkIGNoYW5nZXMgaWYgbm8gY2hhbmdlcyB3ZXJlIG1hZGUuCgkgIEVOSDoJRXJyb3IgbWVzc2FnZXMgZ28gdG8gb3V0cHV0IHdpbmRvdyBpbnN0ZWFkIG9mIG1lc3NhZ2UKCSAgYm94ZXMuCgoyMDA3LTExLTA5IDE1OjA4ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBFTkg6IFJlbW92ZWQgZGVwZW5kZW5jeQoJICBvbiBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlIHdoaWNoIGlzIG5vIGxvbmdlcgoJICB1c2VkLiAgQWxzbyByZW1vdmVkIHRoZSBmaWxlIGl0c2VsZi4KCjIwMDctMTEtMDkgMTI6MTggIGhvZmZtYW4KCgkqIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlOiBFTkg6IGNoYW5nZSBuYW1lCgoyMDA3LTExLTA5IDEyOjA1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogQ29udmVydGVkIHZjcHJvaiBmaWxlCgkgIGdlbmVyYXRpb24gdG8gdXNlIGNtR2VuZXJhdGVkRmlsZVN0cmVhbSBmb3IgYXRvbWljIHJlcGxhY2VtZW50LgoJICBSZXBsYWNlZCB0aGUgdmNwcm9qLmNtYWtlIGNvcHkgb2YgdGhlIGZpbGUgd2l0aCBhIHNpbXBsZQoJICB2Y3Byb2ouc3RhbXAgdGltZXN0YW1wIGZpbGUgdG8gcHJlc2VydmUgcHJldmlvdXMKCSAgcmVydW4td2l0aG91dC1yZWxvYWQgYmVoYXZpb3IuCgoyMDA3LTExLTA5IDAxOjE0ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvUUNNYWtlQ2FjaGVWaWV3LmN4eDogRU5IOiAgQWRkIGNvbXBsZXRpb24gdG8KCSAgZWRpdG9yIGZvciBmaWxlcyBhbmQgZmlsZSBwYXRocy4KCjIwMDctMTEtMDggMjM6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMS0wOCAyMDozNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9JbnN0YWxsUmVxdWlyZWRTeXN0ZW1MaWJyYXJpZXMuY21ha2U6IEVOSDogYWRkIGFiaWxpdHkgdG8KCSAgdXNlIHlvdXIgb3duIGluc3RhbGwgZGlyZWN0b3JpZXMKCjIwMDctMTEtMDggMTY6NDcgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3h4LCBRQ01ha2UuY3h4OiBCVUc6ICBEb24ndAoJICBlbmFibGUgZ2VuZXJhdGUgaWYgY29uZmlndXJlIGNvbXBsZXRlZCB3aXRoIGVycm9ycy4gIEVOSDogIEFsbG93CgkgIGJ1aWxkIHcvIFF0IGNvbmZpZ3VyZWQgd2l0aCBubyBTVEwgc3VwcG9ydC4KCjIwMDctMTEtMDggMTU6NTQgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvcmVzL0NNYWtlU2V0dXBEaWFsb2cuaWNvLAoJICBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cC5pY28sIFNvdXJjZS9XWERpYWxvZy9OR0RpYWxvZy5pY28sCgkgIFV0aWxpdGllcy9SZWxlYXNlL0NNYWtlTG9nby5pY286IEVOSDogUHV0IGJsYWNrIG91dGxpbmUgYXJvdW5kCgkgIGFsbCByZXNvbHV0aW9ucyBvZiB0aGUgbmV3IGljbyBmaWxlcy4gTG9va3MgYmV0dGVyIG9uIGEgZGFyawoJICBiYWNrZ3JvdW5kIHRoYW4gdGhlIGxpZ2h0ZXIgb3V0bGluZS4uLgoKMjAwNy0xMS0wOCAxNDozMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2U6IEVOSDogZml4IGJ1ZyBpbiBkZWZhdWx0IGFyY2gsIGl0CgkgIHdhcyB1c2luZyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgd2hpY2ggaXMgbm90IGEgZGVmYXVsdAoKMjAwNy0xMS0wOCAxMzowMyAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEJVRzogdHJ5IHRvIGZpeCBjcmFzaAoKMjAwNy0xMS0wOCAxMjoyNyAgY2xpbnRvbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6ICBoYW5kbGUgcW1ha2UgcmV0dXJuaW5nIG11bHRpcGxlCgkgIHBhdGhzIGZvciBta3NwZWNzLiAgRml4ZXMgIzU5MzUKCjIwMDctMTEtMDggMTA6NTYgIGNsaW50b24KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiAgQWRkIHN1cHBvcnQgZm9yIHN0YXRpYyBRdCA0LjMKCSAgYnVpbGRzLgoKMjAwNy0xMS0wOCAxMDozOCAgZGF2aWQuY29sZQoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgVHV0b3JpYWwvU3RlcDYvQ01ha2VMaXN0cy50eHQsCgkgIFR1dG9yaWFsL1N0ZXA2L0xpY2Vuc2UudHh0LCBUdXRvcmlhbC9TdGVwNi9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUdXRvcmlhbC9TdGVwNi90dXRvcmlhbC5jeHgsCgkgIFR1dG9yaWFsL1N0ZXA2L01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFR1dG9yaWFsL1N0ZXA2L01hdGhGdW5jdGlvbnMvTWFrZVRhYmxlLmN4eCwKCSAgVHV0b3JpYWwvU3RlcDYvTWF0aEZ1bmN0aW9ucy9NYXRoRnVuY3Rpb25zLmgsCgkgIFR1dG9yaWFsL1N0ZXA2L01hdGhGdW5jdGlvbnMvbXlzcXJ0LmN4eCwKCSAgVHV0b3JpYWwvU3RlcDcvQ01ha2VMaXN0cy50eHQsIFR1dG9yaWFsL1N0ZXA3L0NUZXN0Q29uZmlnLmNtYWtlLAoJICBUdXRvcmlhbC9TdGVwNy9MaWNlbnNlLnR4dCwgVHV0b3JpYWwvU3RlcDcvVHV0b3JpYWxDb25maWcuaC5pbiwKCSAgVHV0b3JpYWwvU3RlcDcvYnVpbGQxLmNtYWtlLCBUdXRvcmlhbC9TdGVwNy9idWlsZDIuY21ha2UsCgkgIFR1dG9yaWFsL1N0ZXA3L3R1dG9yaWFsLmN4eCwKCSAgVHV0b3JpYWwvU3RlcDcvTWF0aEZ1bmN0aW9ucy9DTWFrZUxpc3RzLnR4dCwKCSAgVHV0b3JpYWwvU3RlcDcvTWF0aEZ1bmN0aW9ucy9NYWtlVGFibGUuY3h4LAoJICBUdXRvcmlhbC9TdGVwNy9NYXRoRnVuY3Rpb25zL01hdGhGdW5jdGlvbnMuaCwKCSAgVHV0b3JpYWwvU3RlcDcvTWF0aEZ1bmN0aW9ucy9teXNxcnQuY3h4OiBFTkg6IEFkZCBuZXcgVHV0b3JpYWwKCSAgc3RlcHMuIERpZmYgYmV0d2VlbiBTdGVwNSBhbmQgU3RlcDYgc2hvd3MgaG93IHRvIGFkZCBhIGNwYWNrCgkgIGRyaXZlbiBpbnN0YWxsZXIgdG8geW91ciBwcm9qZWN0LiBEaWZmIGJldHdlZW4gU3RlcDYgYW5kIFN0ZXA3CgkgIHNob3dzIGhvdyB0byBhZGQgY3Rlc3QgZGFzaGJvYXJkIHNjcmlwdGluZyBjYXBhYmlsaXR5LgoKMjAwNy0xMS0wOCAxMDoyMiAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nL1FDTWFrZUNhY2hlVmlldy5jeHg6IENPTVA6IEZpeCB3YXJuaW5ncy4KCjIwMDctMTEtMDggMTA6MTcgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3h4LCBDTWFrZVNldHVwRGlhbG9nLnVpLAoJICBRQ01ha2UuY3h4LCBRQ01ha2VDYWNoZVZpZXcuY3h4LCBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgRU5IOglhZGQgY29udGV4dCBtZW51IGZvciBkZWxldGluZywgaWdub3JpbmcsIGFuZCBnZXR0aW5nIGhlbHAKCSAgZm9yIGNhY2hlIGVudHJpZXMuICBFTkg6ICBhZGQgZGVsZXRlIGNhY2hlIGJ1dHRvbiBFTkg6ICBhZGQKCSAgaW5mb3JtYXRpb24gc3RyaW5nIGFib3ZlIGNvbmZpZ3VyZS9nZW5lcmF0ZSBidXR0b25zIEVOSDogIGNoYW5nZQoJICBzZWFyY2ggdG8gc2VhcmNoIGJvdGggY29sdW1ucywgYW5kIGZyb20gcmVnZXggdG8gcGxhaW4gc3RyaW5nCgkgIHNlYXJjaCBFTkg6ICBhZGQgYnVkZHkgaW5mbyBpbiBjYWNoZSBlbnRyeSB2aWV3LCBzbyBkb3VibGUKCSAgY2xpY2tpbmcgaW4gdGhlIGxlZnQgY29sdW1uCSAgICBzdGFydHMgZWRpdGluZyB0aGUgYXNzb2NpYXRlZAoJICB2YWx1ZS4gIEJVRzoJZml4IGZpbGUgcGF0aCBlZGl0b3Igc28gaXQgZ29lcyBhd2F5IHdoZW4gZm9jdXMgaXMKCSAgbG9zdAoKMjAwNy0xMS0wOCAwOTowOSAgZGF2aWQuY29sZQoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2U6IEJVRzogRG8gbm90IHVzIHRoZQoJICBzZWFyY2hfcGF0aHNfZmlyc3QgZmxhZyBvbiBvbGRlciBNYWMgT1NYICgxMC4yIGFuZCBlYXJsaWVyKQoJICBzeXN0ZW1zLgoKMjAwNy0xMS0wNyAyMzowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTA3IDE3OjQzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS92b2dvbl9yZWxlYXNlLmNtYWtlOiBFTkg6IGFkZCBtdCB0byB2b2dvbgoJICByZWxlYXNlCgoyMDA3LTExLTA3IDE3OjMwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFsbG93IGZvciBtc3ZjNzEgdG8gYnVpbGQKCSAgZm9yIHZpc3RhIGlmIENNQUtFX01UX0VYRUNVVEFCTEUgaXMgcHV0IGluIHRoZSBjYWNoZQoKMjAwNy0xMS0wNyAxNDozNSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgbWVtZGVidWcuYyBmcm9tIGxpc3QKCjIwMDctMTEtMDcgMTM6MTEgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2UsIENNYWtlQ1BhY2tPcHRpb25zLmNtYWtlLmluLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4OiBFTkg6IGNoYW5nZQoJICBDUEFDS19DUkVBVEVfREVTS1RPUF9MSU5LUyB0byBzb21ldGhpbmcgdGhhdCBjYW4gaGFuZGxlIHNwYWNlcyBpbgoJICB0aGUgbmFtZSBvZiB0aGUgZXhlY3R1YWJsZQoKMjAwNy0xMS0wNyAxMTozMSAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jeHgsIENNYWtlU2V0dXBEaWFsb2cuaCwKCSAgQ01ha2VTZXR1cERpYWxvZy51aToKCSAgRU5IOiByZW1vdmUgc3RhdHVzIGJhciBhbmQgbW92ZSBpbnRlcnJ1cHQvcHJvZ3Jlc3MgbmV4dCB0bwoJICBjb25maWd1cmUvZ2VuZXJhdGUuCgoyMDA3LTExLTA3IDEwOjA5ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLAoJICBDTWFrZVNldHVwRGlhbG9nLnVpLCBRQ01ha2VDYWNoZVZpZXcuY3h4LCBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgQlVHOglGaXggYmVoYXZpb3Igb2YKCSAgQ01ha2VTZXR1cERpYWxvZzo6c2V0e0JpbmFyeXxTb3VyY2V9RGlyZWN0b3J5ICAgICAgIHNvIHRoZXkgd29yawoJICByaWdodCB3aGVuIGNhbGxlZCBleHRlcm5hbGx5LiAgICAgICAgRGlzYWJsZSB0aGUgZ2VuZXJhdGUgYnV0dG9uCgkgIHdoZW4gb25lIGhpdHMgY29uZmlndXJlIGFnYWluLiAgRU5IOglTb21lIFVJIHR3ZWFrcyBmb3Igc3BhY2luZy4KCQkgQWxsb3cgdmlld2luZyBjYWNoZSB2YWx1ZXMgd2hpbGUgY29uZmlndXJlL2dlbmVyYXRlIChidXQKCSAgbm90IGVkaXQpLgoKMjAwNy0xMS0wNyAwOToxMiAga2luZwoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogQ09NUDogRml4IGNoZWNrIGZvcgoJICBmaWxlLXRvby1iaWcgdG8gYXZvaWQgd2FybmluZ3MuCgoyMDA3LTExLTA3IDA4OjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBGaXggd2FybmluZyB3aGVuIGdjb3VudAoJICBzdHJlYW0gbWV0aG9kIGRvZXMgbm90IHJlYWxseSByZXR1cm4gc3RkOjpzdHJlYW1zaXplLgoKMjAwNy0xMS0wNiAyMzowMCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAuaWNucywgUUNNYWtlLmN4eDoKCSAgRU5IOglGb3IgTWFjIE9TWCAtLSBhZGQgYXBwIGljb24sIGFuZCBpbXBsZW1lbnQgZmluZCBvZiBjbWFrZQoJICBleGVjdXRhYmxlLgoKMjAwNy0xMS0wNiAyMjo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTA2IDIyOjI3ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jeHg6IEJVRzogIGRpc2FibGUgZHJhZyAmIGRyb3AKCSAgd2hpbGUgYnVzeS4KCjIwMDctMTEtMDYgMjE6NTEgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmN4eDogQlVHOiBvbmx5IGhhbmRsZSBkcm9wCgkgIGV2ZW50cyBpZiB0aGV5J2xsIHJlYWxseSBjaGFuZ2Ugc29tZXRoaW5nLgoKMjAwNy0xMS0wNiAyMToyNyAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jeHgsIENNYWtlU2V0dXBEaWFsb2cuaDoKCSAgQlVHOglQdXQgYmFjayByZWFkL3dyaXRlIG9mIG9yaWdpbmFsIFdoZXJlQnVpbGQqIHNldHRpbmdzLiAgRU5IOgoJICBNYWtlIHB1YmxpYyBhIGNvdXBsZSBmdW5jdGlvbnMgdG8gc3VwcG9ydCBjb21tYW5kIGxpbmUgYXJncy4KCSAgVHJ5IHJlbW92aW5nIGV4aXQgYWZ0ZXIgZ2VuZXJhdGUgdG8gc2VlIGlmIG90aGVycyBsaWtlIGl0LgoJICBDT01QOiAgRml4IHdhcm5pbmdzLgoKMjAwNy0xMS0wNiAxOToyNSAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cC5jeHgsIENNYWtlU2V0dXBEaWFsb2cuY3h4LAoJICBDTWFrZVNldHVwRGlhbG9nLmgsIENNYWtlU2V0dXBEaWFsb2cudWksIFFDTWFrZS5jeHgsCgkgIFFDTWFrZUNhY2hlVmlldy5jeHgsIFFDTWFrZUNhY2hlVmlldy5oOgoJICBFTkg6CURpc2FibGUgbWVudS9idXR0b25zIHdoZW4gZG9pbmcgY29uZmlndXJlLgkgIEFsc28KCSAgZGlzYWJsZSBnZW5lcmF0ZSB1bnRpbCBjb25maWd1cmUgaXMgZG9uZS4JICAgU2F2ZSBtb3JlCgkgIHNldHRpbmdzIChsYXN0IDEwIGJpbmFyeSBkaXJlY3RvcmllcywgZXhpdCBhZnRlciBnZW5lcmF0ZSwKCQkJICAgICAgbGFzdCBnZW5lcmF0b3IpCSAgICAgU29tZSBVSSB0d2Vha3MgZm9yCgkgIGJldHRlciBsYXlvdXQuCVN1cHBvcnQgZHJhZyAmIGRyb3Agb2YKCSAgQ01ha2VMaXN0cy50eHQvQ01ha2VDYWNoZS50eHQgZmlsZXMuCgoyMDA3LTExLTA2IDE0OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50VmFyaWFibGVzLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtUHJvcGVydHlNYXAuY3h4LCBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogZGlmZmVyZW50IHdheSBvZgoJICB0ZXN0aW5nIHByb3BlcnRpZXMKCjIwMDctMTEtMDYgMTQ6MTQgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogbW92ZSBDTUFLRV9TVFJJQ1QKCSAgb3B0aW9uIHRvIHRoZSB0b3AKCjIwMDctMTEtMDYgMTQ6MTEgIG1hcnRpbmsKCgkqIFRlc3RzL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBkb2MgdGVzdCBmb3Igc3RyaWN0IGJ1aWxkcwoKMjAwNy0xMS0wNiAxNDoxMCAgbWFydGluawoKCSogVGVzdHMvRG9jVGVzdC86IENNYWtlTGlzdHMudHh0LCBEb2NUZXN0LmN4eDogRU5IOiBhZGQgYSBldHN0IHRvCgkgIHZlcmlmeSBwcm9wcyBhcmUgZG9jdW1lbnRlZAoKMjAwNy0xMS0wNiAwODoyOCAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0dlbmVyYXRvci5jeHgsIGNtQ1BhY2tHZW5lcmF0b3IuaCwKCSAgY3BhY2suY3h4OiBFTkg6IGNoYW5nbmUgUHJvY2Vzc0dlbmVydG9yIHRvIERvUGFja2FnZQoKMjAwNy0xMS0wNiAwODoyNyAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgkgIGlzc3VlCgoyMDA3LTExLTA2IDAxOjE2ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLAoJICBDTWFrZVNldHVwRGlhbG9nLnVpLCBRQ01ha2UuY3h4LCBRQ01ha2UuaDogRU5IOiAgQWRkIG1lbnVzIGluCgkgIG1lbnUgYmFyLgkgICBBZGQgcmVsb2FkICYgZGVsZXRlIGNhY2hlIG9wdGlvbnMuCSAgICAgQWRkCgkgIG9wdGlvbiB0byBxdWl0IGFmdGVyIGdlbmVyYXRpb24gc3RlcCAobm90IHlldCByZW1lbWJlcmVkIGJldHdlZW4KCSAgc2Vzc2lvbnMpLgkgICAgQWRkIEhlbHAgLT4gQWJvdXQJICAgICBSZW1vdmUgSGVscCBidXR0b24gKGluCgkgIG1lbnUgbm93KQkgICBSZW1vdmUgQ2FuY2VsIGJ1dHRvbiAoRmlsZSAtPiBFeGl0IGFuZCB0aGUKCSAgV2luZG93ICdYJyBidXR0b24gZXhpc3QpCgoyMDA3LTExLTA2IDAwOjA0ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy51aTogRU5IOgoJICBjbGFyaWZ5IGxhYmVsIGZvciBjdXJyZW50IGdlbmVyYXRvci4KCjIwMDctMTEtMDYgMDA6MDIgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3h4LCBDTWFrZVNldHVwRGlhbG9nLmgsCgkgIENNYWtlU2V0dXBEaWFsb2cudWksIFFDTWFrZUNhY2hlVmlldy5jeHg6IEVOSDogIHNlYXJjaCBpcyBjYXNlCgkgIGluc2Vuc2l0aXZlIEVOSDogIHB1dCBiYWNrIHByb21wdCBmb3IgZ2VuZXJhdG9yLCBhbmQgY2hhbmdlIGNvbWJvCgkgIHRvIGxhYmVsCSBzaG93aW5nIGN1cnJlbnQgZ2VuZXJhdG9yLgoKMjAwNy0xMS0wNSAyMjozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTA1IDE5OjI2ICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLAoJICBDTWFrZVNldHVwRGlhbG9nLnVpLCBRQ01ha2VDYWNoZVZpZXcuY3h4LCBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgRU5IOglSZXBsYWNlIHByb21wdCBmb3IgZ2VuZXJhdG9yIHdpdGggY29tYm9ib3ggaW4gVUkuICBFTkg6CgkgIE1ha2UgIlNob3cgQWR2YW5jZWQiIHRvZ2dsZSB3b3JrLiAgRU5IOiAgQWRkIHJlZ2V4IHNlYXJjaAoJICBjYXBhYmlsaXRpZXMuICBFTkg6ICBSZWFkIGV4aXN0aW5nIHJlZ2lzdHJ5IGVudHJpZXMgZnJvbSBNRkMKCSAgQ01ha2VTZXR1cC5leGUgKHdpbGwgc2F2ZSBsYXRlcikuCgoyMDA3LTExLTA1IDE4OjA2ICBhbGV4CgoJKiBDTWFrZUxpc3RzLnR4dDogQ09NUDogdXNlIFJQQVRIIGlzIGJ1aWxkaW5nIFF0RGlhbG9nIGFuZCB0aGUgUXQKCSAgbGlicyBhcmUgbm90IGluIC9saWIgb3IgL3Vzci9saWIgKHNhbWUgbG9naWMgYXMgZm9yIGNjbWFrZSkKCgkgIEFsZXgKCjIwMDctMTEtMDUgMTc6NDQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19pb3NfaW9zdHJlYW0uaC5pbjogQ09NUDogQWRkIHN0cmVhbXNpemUgYW5kCgkgIHN0cmVhbW9mZiB0byBrd3N5c19pb3MgbmFtZXNwYWNlIGZvciBhbmNpZW50IHN0cmVhbXMuCgoyMDA3LTExLTA1IDE2OjU3ICBkYXZpZC5jb2xlCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogU1RZTEU6IFRyYWRlIGluIGV4cGVjdGVkIGFycmFraXMgZGFzaGJvYXJkcwoJICBmb3IgcmVzdXJyZWN0ZWQgZXF1aXZhbGVudCBvbmVzIG9uIGRhc2gxNC4KCjIwMDctMTEtMDUgMTY6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBDUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3IuY3h4LCBDUGFjay9jbUNQYWNrR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JGYWN0b3J5LmN4eCwKCSAgQ1BhY2svY21DUGFja0dlbmVyYXRvckZhY3RvcnkuaCwKCSAgQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLCBDUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5oLAoJICBDUGFjay9jbUNQYWNrT1NYWDExR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwKCSAgQ1BhY2svY21DUGFja1JQTUdlbmVyYXRvci5oLCBDUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuaCwgQ1BhY2svY3BhY2suY3h4OiBFTkg6IGNoYW5nZSBuYW1lCgoyMDA3LTExLTA1IDE2OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1BhY2svY21DUGFja0dlbmVyYXRvckZhY3RvcnkuY3h4LAoJICBDUGFjay9jbUNQYWNrR2VuZXJhdG9yRmFjdG9yeS5oLCBDUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmgsIENQYWNrL2NwYWNrLmN4eDogRU5IOiBjaGFuZ2UgbmFtZSBvZgoJICBjbGFzcwoKMjAwNy0xMS0wNSAxNDo0NyAgaG9mZm1hbgoKCSogU291cmNlL1dYRGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXBGcmFtZS5jcHA6IEVOSDogZml4CgkgIHRoZSBjb21waWxlIGFuZCBhZGQgaW5zdGFsbCBydWxlCgoyMDA3LTExLTA1IDE0OjM0ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4LCBTb3VyY2UvQ1BhY2svY21DUGFja0RlYkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4LAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBVdGlsaXRpZXMvY21jdXJsL2Z0cC5jOiBDT01QOiBGaXgKCSAgd2FybmluZ3Mgb24gNjQtYml0IE1hYyBPUyBYIGJ1aWxkLiAgUGF0Y2ggZnJvbSBpc3N1ZSAjMzY5Ny4KCjIwMDctMTEtMDUgMTM6MjAgIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXAuY3h4LCBDTWFrZVNldHVwRGlhbG9nLmN4eCwKCSAgQ01ha2VTZXR1cERpYWxvZy5oLCBRQ01ha2UuY3h4LCBRQ01ha2UuaCwgUUNNYWtlQ2FjaGVWaWV3LmN4eCwKCSAgUUNNYWtlQ2FjaGVWaWV3Lmg6CgkgIEVOSDoJUHJvbXB0IHVzZXIgZm9yIGdlbmVyYXRvciB3aGVuIHRoZXJlIGlzIG5vbmUuCSAgICAgTWFueQoJICBtaW5vciBpbXByb3ZlbWVudHMsIGJ1ZyBmaXhlcywgYW5kIHN0eWxlIGZpeGVzLgoKMjAwNy0xMS0wNCAyMjowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTA0IDAxOjIwICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IEJVRzogRml4ZWQgZXJyb3IgcmVsYXRlZCB0byBtaXNzaW5nCgkgIHF1b3RlcyBhcm91bmQgdmFyaWFibGUuCgoyMDA3LTExLTAzIDIzOjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTEtMDMgMTk6NDggIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3h4LCBDTWFrZVNldHVwRGlhbG9nLmgsCgkgIENNYWtlU2V0dXBEaWFsb2cudWksIFFDTWFrZS5jeHgsIFFDTWFrZS5oLCBRQ01ha2VDYWNoZVZpZXcuY3h4LAoJICBRQ01ha2VDYWNoZVZpZXcuaDoKCSAgRU5IOglBbGxvdyB3b3JraW5nIHdpdGggZW1wdHkgYnVpbGQgZGlyZWN0b3JpZXMuCSAgIE1ha2UKCSAgb3V0cHV0IHdpbmRvdyBhIGJpdCBzbWFsbGVyIGNvbXBhcmVkIHRvIGNhY2hlIHZpZXcuCSAgICAgUHJvbXB0CgkgIG9uIFgnaW5nIHdpbmRvdyBhcyB3ZWxsIGFzIGhpdHRpbmcgY2FuY2VsLgkgICAgQ29sb3IgbmV3IGNhY2hlCgkgIHZhbHVlcyByZWQsIGFuZCBwdXQgdGhlbSBmaXJzdC4KCjIwMDctMTEtMDMgMTM6MjggIGNsaW50b24KCgkqIFNvdXJjZS9RdERpYWxvZy9RQ01ha2VDYWNoZVZpZXcuY3h4OiBDT01QOiAgRml4IHNvbWUgY29tcGlsZQoJICB3YXJuaW5ncy4gIFNUWUxFOiBNYWtlIHN0eWxlIGEgYml0IG1vcmUgY29uc2lzdGVudC4KCjIwMDctMTEtMDMgMTI6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9RdERpYWxvZy86IENNYWtlU2V0dXAuY3h4LCBDTWFrZVNldHVwRGlhbG9nLmgsIFFDTWFrZS5oLAoJICBRQ01ha2VDYWNoZVZpZXcuaDogRU5IOiByZW1vdmUgcXQgd2FybmluZ3MgZnJvbSBxdCB3aXRoIE1TCgkgIGNvbXBpbGVyCgoyMDA3LTExLTAzIDEyOjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvUXREaWFsb2cvUUNNYWtlQ2FjaGVWaWV3Lmg6IEVOSDogZml4IGNvbXBpbGUgZXJyb3Igb24KCSAgd2luZG93cwoKMjAwNy0xMS0wMyAxMDozMCAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAuY3h4LCBDTWFrZVNldHVwLmljbywKCSAgQ01ha2VTZXR1cC5wbmcsIENNYWtlU2V0dXAucXJjLCBDTWFrZVNldHVwLnJjLAoJICBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLCBDTWFrZVNldHVwRGlhbG9nLnBuZywKCSAgQ01ha2VTZXR1cERpYWxvZy51aSwgUUNNYWtlLmN4eCwgUUNNYWtlLmgsIFFDTWFrZUNhY2hlVmlldy5jeHgsCgkgIFFDTWFrZUNhY2hlVmlldy5oOgoJICBFTkg6CUFkZCBpbnRlcnJ1cHQgYnV0dG9uIG5lYXIgcHJvZ3Jlc3MgYmFyLiAgICAgICAgSW1wbGVtZW50CgkgIGhlbHAgYnV0dG9uLgkgICAgICBJbXBsZW1lbnQgY2FuY2VsIGJ1dHRvbi4JICAgICAgQWRkCgkgIHNjcm9sbGFibGUgb3V0cHV0IHdpbmRvdy4JICAgUmVwbGFjZSBPTi9PRkYgJiBjb21ib2JveAoJICBlZGl0b3JzIHdpdGggY2hlY2tib3hlcy4JICBUYWIvYmFja3RhYiBpbiBjYWNoZSB0YWJsZSBqdW1wcwoJICBiZXR3ZWVuIHZhbHVlcyAobm90IG5hbWVzIGFuZCB2YWx1ZXMpICAgICAgICBBZGQgdG9vbHRpcHMgdG8gc2hvdwoJICBoZWxwIHN0cmluZ3MuICAgICAgICBBZGQgYXBwbGljYXRpb24gaWNvbiBhbmQgcXRtYWluIGZvciBXaW5kb3dzLgoKCSAgQlVHOglGaXggc2F2ZSBvZiBjYWNoZSB2YWx1ZXMgb24gY29uZmlndXJlLgoKMjAwNy0xMS0wMiAyMzowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTExLTAyIDE0OjEyICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvQ01ha2VMaXN0cy50eHQ6IENPTVA6IEZpeCBidWlsZCBvbiBXaW5kb3dzLgoKMjAwNy0xMS0wMiAxMjowMyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBvcHRpb24gZm9yIHF0IGRpYWxvZwoKMjAwNy0xMS0wMiAxMTo1NSAgY2xpbnRvbgoKCSogU291cmNlL1F0RGlhbG9nLzogQ01ha2VTZXR1cC5jeHgsIENNYWtlU2V0dXBEaWFsb2cuY3h4LAoJICBDTWFrZVNldHVwRGlhbG9nLmgsIFFDTWFrZS5jeHgsIFFDTWFrZS5oLCBRQ01ha2VDYWNoZVZpZXcuY3h4LAoJICBRQ01ha2VDYWNoZVZpZXcuaDogU1RZTEU6ICBBZGQgbGljZW5zZSBpbmZvIHRvIGNvZGUuCgoyMDA3LTExLTAyIDExOjUwICBjbGludG9uCgoJKiBTb3VyY2UvUXREaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgQ01ha2VTZXR1cC5jeHgsIENNYWtlU2V0dXAucXJjLAoJICBDTWFrZVNldHVwRGlhbG9nLmN4eCwgQ01ha2VTZXR1cERpYWxvZy5oLCBDTWFrZVNldHVwRGlhbG9nLnBuZywKCSAgQ01ha2VTZXR1cERpYWxvZy51aSwgUUNNYWtlLmN4eCwgUUNNYWtlLmgsIFFDTWFrZUNhY2hlVmlldy5jeHgsCgkgIFFDTWFrZUNhY2hlVmlldy5oOiBFTkg6ICBCZWdpbm5pbmdzIG9mIGEgUXQgVUkgZm9yIENNYWtlLgoKMjAwNy0xMS0wMiAxMDo0NiAgaG9mZm1hbgoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQsCgkgIFdyYXBwaW5nL3F0bm9xdG1haW4uY3h4OiBFTkg6IHJlbW92ZSBmaW5kcXQzIGZyb20gY21ha2UncwoJICBjbWFrZWxpc3QgZmlsZXMKCjIwMDctMTEtMDEgMjI6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMS0wMSAxNjoyMSAgaG9mZm1hbgoKCSogU291cmNlL1F0RGlhbG9nL1JFQURNRTogRU5IOiBjcmVhdGUgYSBkaXJlY3RvcnkgZm9yIHF0IGludGVyZmFjZQoJICB0byBjbWFrZQoKMjAwNy0xMS0wMSAwOTo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DUGFja1JQTS5jbWFrZTogRU5IOiBmaXggZm9yIFJQTSBnZW5lcmF0b3IgZnJvbSBFcmljCgoyMDA3LTExLTAxIDA4OjM2ICBkYXZpZC5jb2xlCgoJKiBTb3VyY2UvTUZDRGlhbG9nL3Jlcy9DTWFrZVNldHVwRGlhbG9nLmljbywKCSAgU291cmNlL1dYRGlhbG9nL05HRGlhbG9nLmljbywgVXRpbGl0aWVzL1JlbGVhc2UvQ01ha2VMb2dvLmljbzoKCSAgRU5IOiBBZGQgbW9yZSByZXNvbHV0aW9ucyBmb3IgQ01ha2UgaWNvbnMgdG8gYXZvaWQgdGhhdCBibG9hdGVkCgkgIGNodW5reSBibG93biB1cCBpY29uIGxvb2suLi4KCjIwMDctMTAtMzEgMjI6NDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0zMSAxMzo1NyAgbWFydGluawoKCSogU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4OiBFTkg6IG1pbm9yIGZpeAoKMjAwNy0xMC0zMSAxMzozOCAgbWFydGluawoKCSogU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4OiBFTkg6IGFkZGVkIGRvY3VtZW50YXRpb24gZm9yIG1vcmUKCSAgdmFyaWFibGVzCgoyMDA3LTEwLTMxIDEyOjU1ICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrLmNtYWtlLCBDTWFrZUNQYWNrT3B0aW9ucy5jbWFrZS5pbiwKCSAgQ1BhY2tDb25maWcuY21ha2UuaW4sIENQYWNrU291cmNlQ29uZmlnLmNtYWtlLmluLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZAoJICBDUEFDS19QUk9KRUNUX0NPTkZJR19GSUxFIG9wdGlvbiB0byBDUGFjawoKMjAwNy0xMC0zMSAxMDo0OSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvQ01ha2VMb2dvLmljbzogRU5IOiBhZGQgaWNvbiBmb3IgaW5zdGFsbGVyCgoyMDA3LTEwLTMxIDA5OjM5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IE1lcmdlIGNoYW5nZXMgZnJvbSAxLjIwNS0xLjIwNwoJICBmcm9tIHRydW5rIHRvIGdjY3htbC1nY2M0MiBicmFuY2guCgoyMDA3LTEwLTMxIDA5OjM3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBTVFlMRTogRml4IGRvY3VtZW50YXRpb24gKG1lcmdlCgkgIGZyb20gdHJ1bmspCgoyMDA3LTEwLTMxIDA5OjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNy0xMC0zMSAwODo1MCAgZGF2aWQuY29sZQoKCSogTW9kdWxlcy9DUGFjay5jbWFrZSwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tDeWd3aW5CaW5hcnlHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpbkJpbmFyeUdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpblNvdXJjZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrQ3lnd2luU291cmNlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrT1NYWDExR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tPU1hYMTFHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1JQTUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUlBNR2VuZXJhdG9yLmg6IEVOSDogQWRkIENQQUNLX1NFVF9ERVNURElSCgkgIGhhbmRsaW5nIHRvIGVuYWJsZSBwYWNrYWdpbmcgb2YgaW5zdGFsbGVkIGZpbGVzIGluIGFic29sdXRlCgkgIGxvY2F0aW9ucy4gV2l0aCB0aGlzIHNldHRpbmcgb24sIGNwYWNrIHdpbGwgc2V0IHRoZSBERVNURElSIGVudgoJICB2YXIgd2hlbiBidWlsZGluZyB0aGUgcGFja2FnZSBzbyB0aGF0IGZpbGVzIGVuZCB1cCBpbiB0aGVpcgoJICBpbnRlbmRlZCBsb2NhdGlvbnMuIERlZmF1bHQgYmVoYXZpb3IgaXMgbm90IHRvIHNldCBERVNURElSIGZvcgoJICBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSGVscHMgYWRkcmVzcyBpc3N1ZSAjNDk5MyBhbmQgaXNzdWUKCSAgIzUyNTcuIEFsc28sIHJlbW92ZSB1bnVzZWQgQ1BBQ0tfVVNFX0RFU1RESVIgdmFyaWFibGUuIEVOSDogQWRkCgkgIHZhcmlhYmxlIENQQUNLX1BBQ0tBR0lOR19JTlNUQUxMX1BSRUZJWCB0byBhbGxvdyBvdmVycmlkaW5nIHRoZQoJICBDUGFjayBHZXRQYWNrYWdpbmdJbnN0YWxsUHJlZml4IGZyb20gYSBwcm9qZWN0J3MgQ01ha2VMaXN0cyBmaWxlCgkgIGlmIG5lY2Vzc2FyeS4gQ291bGQgYmUgdXNlZCB0byByZW1vdmUgdGhlIGFubm95aW5nIC91c3IgcHJlZml4CgkgIHN0aWxsIHVzZWQgYnkgZGVmYXVsdCBpbiB0aGUgTWFjIFBhY2thZ2VNYWtlciBnZW5lcmF0b3IuCgoyMDA3LTEwLTMwIDIzOjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMzAgMjM6MDIgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2UsIENQYWNrQ29uZmlnLmNtYWtlLmluLAoJICBDUGFja1NvdXJjZUNvbmZpZy5jbWFrZS5pbiwgTW9kdWxlcy9DUGFjay5jbWFrZSwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tSUE1HZW5lcmF0b3IuY3h4OiBFTkg6IGNwYWNrIGNoYW5nZXMsIHJlbW92ZQoJICB0aGUgZXNjYXBlIHZhcmlhYmxlIHN0dWZmIGFzIGl0IGlzIG5vdCBuZWVkZWQgaWYgeW91IHByb3ZpZGUgYQoJICBjb25maWcgZmlsZSBmb3IgY3BhY2sKCjIwMDctMTAtMzAgMTE6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogZml4IHVuZGVmaW5lZCBwcm9wZXJ0eSBGUkFNRVdPUksKCjIwMDctMTAtMzAgMTA6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogZml4IGJhZCBzZXQgcHJvcGVydHkgY29kZSBpbiBjbWFrZQoKMjAwNy0xMC0zMCAxMDoxNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DUGFja1JQTS5jbWFrZTogRU5IOiB1c2UgY3BhY2sgZ2VuZXJpYyB2YXJpYWJsZSBpZiBycG0KCSAgb25lIGlzIG5vdCBzZXQKCjIwMDctMTAtMzAgMTA6MTYgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2U6IEVOSDogZml4IGZvciBjeWd3aW4gcGFja2FnZQoKMjAwNy0xMC0yOSAyMjo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTI5IDIxOjEwICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvY3lnd2luLXBhY2thZ2Uuc2guaW46IEVOSDogYWRkIHBhY2thZ2Ugc2NyaXB0IGZvciBjbWFrZQoJICBwcm9qZWN0CgoyMDA3LTEwLTI5IDEyOjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5jeHg6IEVOSDogbW92ZSBsaXN0CgkgIGNvbW1hbmQgdG8gYm9vdHN0cmFwIGNvbW1hbmRzCgoyMDA3LTEwLTI5IDA4OjExICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrLmNtYWtlLCBNb2R1bGVzL0NQYWNrLmNtYWtlLCBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHg6IEVOSDogYWRkIGFiaWxpdHkgdG8gc2V0CgkgIGluc3RhbGxlciBpY29ucywgbGlua3MgdG8gd2ViIHBhZ2VzLCBuc2lzIGNvZGUgaW4gdGhlIGljb24KCSAgc2VjdGlvbiBvZiB0aGUgdGVtcGxhdGUsIGFuZCBhYmlsaXR5IHRvIGVzY2FwZSB2YXJpYWJsZXMKCSAgY29ycmVjdGx5CgoyMDA3LTEwLTI4IDIyOjU4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMjcgMjM6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0yNiAyMzoxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTI2IDIyOjU3ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IG1vdmUgY2hhbmdlcyBmcm9tIGhlYWQKCjIwMDctMTAtMjYgMTM6MzYgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogU1RZTEU6IGNoYW5nZSB3b3JkaW5nIG9mIEZJTkRfWFhYKCkgZG9jcwoJICB0byBiZSBtb3JlIGNvcnJlY3QKCgkgIEFsZXgKCjIwMDctMTAtMjYgMTI6MTMgIHNlYW5tY2JyaWRlCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogU1RZTEU6IGZpeGVkCgkgIG1pc3NwZWxsaW5ncyBvZiBNYWMgT1MgWAoKMjAwNy0xMC0yNiAwOTo1NSAgYWxleAoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4LCBTb3VyY2UvY21GaW5kQmFzZS5oLAoJICBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBUZXN0cy9GaW5kUGFja2FnZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9pbmNsdWRlL2Zvby5oOiBFTkg6IGFkZCBzdXBwb3J0IGZvcgoJICBDTUFLRV9GSU5EX1BSRUZJWF9QQVRIIGFzIGRpc2N1c3NlZCB3aXRoIEJyYWQuCgkgIENNQUtFX0ZJTkRfUFJFRklYX1BBVEggaXMgYm90aCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBhbmQgYQoJICBjbWFrZSB2YXJpYWJsZSwgd2hpY2ggaXMgYSBsaXN0IG9mIGJhc2UgZGlyZWN0b3JpZXMgd2hlcmUKCSAgRklORF9QQVRILCBGSU5EX0ZJTEUsIEZJTkRfUFJPR1JBTSBhbmQgRklORF9MSUJSQVJZIHdpbGwgc2VhcmNoCgkgIGluIHRoZSByZXNwZWN0aXZlIHN1YmRpcmVjdG9yaWVzCgoJICBBbGV4CgoyMDA3LTEwLTI1IDIyOjUzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMjUgMTQ6MDMgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluLCBNb2R1bGVzL0ZpbmRLREUzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlLCBNb2R1bGVzL0ZpbmRQeXRob25JbnRlcnAuY21ha2UsCgkgIE1vZHVsZXMvS0RFM01hY3Jvcy5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9EcmFnb25GbHkuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vR05VLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL05ldEJTRC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9Vbml4UGF0aHMuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3NQYXRocy5jbWFrZSwgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4LAoJICBTb3VyY2UvY21GaWxlQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSWZDb21tYW5kLmN4eCwgU291cmNlL2NtSWZDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuaCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZW1haW4uY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBFTkg6IG1lcmdlIGluIHN0dWZmIGZyb20gaGVhZAoKMjAwNy0xMC0yNSAxMzoyOSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBGaXggYnVnIzU1OTAuICBXaGVuIGNvbnZlcnRpbmcKCSAgYSByZWxhdGl2ZSBwYXRoIGJldHdlZW4gdHdvIGZ1bGwgcGF0aHMgb24gZGlmZmVyZW50IHdpbmRvd3MgZHJpdmUKCSAgbGV0dGVycyBkbyBub3QgY3JlYXRlIGEgLi4vLi4vZDovZm9vL2JhciBwYXRoIGFuZCBqdXN0IHJldHVybiB0aGUKCSAgZnVsbCBwYXRoIHRvIHRoZSBkZXN0aW5hdGlvbi4KCjIwMDctMTAtMjUgMTM6MjYgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2tEZWIuY21ha2UsIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eDoKCSAgQlVHOiByZW5hbWUgREVCSUFOX1BBQ0tBR0VfKiB2YXJpYWJsZXMgdG8gQ1BBQ0tfREVCSUFOX1BBQ0tBR0VfKgoJICB2YXJpYWJsZXMgdG8gbWFrZSB0aGVtIGFjdHVhbGx5IHdvcmsKCgkgIEFsZXgKCjIwMDctMTAtMjQgMjM6MjAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0yNCAxNDo0MyAgbWFydGluawoKCSogU291cmNlLzogY21HZXRQcm9wZXJ0eUNvbW1hbmQuY3h4LCBjbUdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBjbVByb3BlcnR5RGVmaW5pdGlvbi5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogYWRkIGFiaWxpdHkgdG8KCSAgZ2V0IGRvY3VtZW50YWl0b24gb2YgYSBwcm9wZXJ0eSBmcm9tIGEgc2NyaXB0CgoyMDA3LTEwLTI0IDExOjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eCwgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5oLAoJICBTb3VyY2UvY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmN4eCwKCSAgU291cmNlL2NtRG9jdW1lbnRhdGlvblNlY3Rpb24uaCwgU291cmNlL2NtYWtlbWFpbi5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHAsIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDogRU5IOgoJICBzb21lIG1vcmUgY2xlYW51cCwgZml4ZXMsIGFuZCBwYXRjaCBmb3IgSFRNTCBvdXRwdXQKCjIwMDctMTAtMjMgMjM6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0yMyAxMDo0MCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtUHJvcGVydHlEZWZpbml0aW9uTWFwLmN4eDogQ09NUDogZml4CgkgIGZvciB3aGVuIFNUUklDVCBpcyBkZWZpbmVkLCBhbmQgZml4IGZvciBwcm9wcyB0aGF0IGhhdmUgbm8gZG9jcwoKMjAwNy0xMC0yMyAxMDowOCAgbWFydGluawoKCSogU291cmNlL2NtRG9jdW1lbnRWYXJpYWJsZXMuY3h4OiBTVFlMRTogZml4IHNvbWUgbG9uZyBsaW5lcwoKMjAwNy0xMC0yMyAxMDowNyAgbWFydGluawoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IENPTVA6IGZpeCBhIHByb2JsZW0gd2l0aCBhIHNoYWRvd2VkCgkgIHZhcgoKMjAwNy0xMC0yMiAyMzoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTIyIDE3OjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IGZpeCBiaXRtYXAgZXNjYXBlcwoKMjAwNy0xMC0yMiAxNjo0MSAgbWFydGluawoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21ha2VtYWluLmN4eDogQ09NUDogZml4IHNvbWUKCSAgd2FybmluZ3MgYW5kIGFkZCBzb21lIGRvYyBzdHJpbmdzIGJhY2sgaW4KCjIwMDctMTAtMjIgMTU6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbi5oLAoJICBjbURvY3VtZW50YXRpb25TZWN0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uU2VjdGlvbi5oLAoJICBjbWFrZW1haW4uY3h4OiBDT01QOiBmaXggc29tZSB3YXJuaW5ncyBhbmQgYWRkIHNvbWUgZG9jIHN0cmluZ3MKCSAgYmFjayBpbgoKMjAwNy0xMC0yMiAxNDowMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOgoJICBmaXggc3BlbGxpbmcgZXJyb3IKCjIwMDctMTAtMjIgMTM6MjggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBjaGFuZ2UgdG8gbWFrZSB0aGUgZG9jdW1lbnRhdGlvbgoJICBjbGFzcyBtb3JlIGdlbmVyaWMsIGFib3V0IGhhbGZ3YXkgdGhlcmUsIGFsc28gcHJvdmlkZXMgc2VjaXRvbnMKCSAgZm9yIFZhcmlhYmxlcyBub3cKCjIwMDctMTAtMjIgMTI6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbURvY3VtZW50VmFyaWFibGVzLmN4eCwKCSAgY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlci5oLCBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmN4eCwKCSAgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVySFRNTC5oLCBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJNYW4uY3h4LAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJNYW4uaCwgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyVGV4dC5jeHgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlclRleHQuaCwKCSAgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyVXNhZ2UuY3h4LAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJVc2FnZS5oLCBjbUR1bXBEb2N1bWVudGF0aW9uLmN4eCwKCSAgY21FeHRyYUNvZGVCbG9ja3NHZW5lcmF0b3IuY3h4LCBjbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84V2luNjRHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtUHJvcGVydHlEZWZpbml0aW9uLmN4eCwgY21Qcm9wZXJ0eURlZmluaXRpb24uaCwKCSAgY21Qcm9wZXJ0eURlZmluaXRpb25NYXAuY3h4LCBjbVByb3BlcnR5RGVmaW5pdGlvbk1hcC5oLAoJICBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21ha2UuY3h4LCBjbWFrZS5oLCBjbWFrZW1haW4uY3h4LAoJICBjdGVzdC5jeHgsIENQYWNrL2NwYWNrLmN4eCwgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcCwgY21Eb2N1bWVudGF0aW9uU2VjdGlvbi5jeHgsCgkgIGNtRG9jdW1lbnRhdGlvblNlY3Rpb24uaDogRU5IOiBjaGFuZ2UgdG8gbWFrZSB0aGUgZG9jdW1lbnRhdGlvbgoJICBjbGFzcyBtb3JlIGdlbmVyaWMsIGFib3V0IGhhbGZ3YXkgdGhlcmUsIGFsc28gcHJvdmlkZXMgc2VjaXRvbnMKCSAgZm9yIFZhcmlhYmxlcyBub3cKCjIwMDctMTAtMjIgMTE6NDAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDUGFjay5jbWFrZSwgTlNJUy50ZW1wbGF0ZS5pbjogRU5IOiBhbGxvdwoJICBDUEFDS19QQUNLQUdFX0lDT04gdG8gYmUgbm90IHNldAoKMjAwNy0xMC0yMiAxMDoxNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2U6IEVOSDogdHJ5IHRvIGZpeCBib29zdHJhcCBvbiAxMC41CgoyMDA3LTEwLTIxIDIzOjM5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMjAgMjM6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0xOSAyMzowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTE5IDIyOjI0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6CgkgIGRvIG5vdCBhbHdheXMgYWRkIC1hcmNoIGZsYWdzCgoyMDA3LTEwLTE5IDEyOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBsaW5lIGxlbmd0aCBlcnJvcgoKMjAwNy0xMC0xOCAyMjo1OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTE4IDExOjExICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IE1lcmdlIGJ1ZyBmaXhlcyBmcm9tIEhFQUQuCgoyMDA3LTEwLTE4IDA5OjQwICBob2ZmbWFuCgoJKiBDTWFrZUNQYWNrLmNtYWtlLCBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5oOiBFTkg6IGFkZCBhYmlsaXR5IHRvIGNyZWF0ZQoJICBsaW5rcyBvbiB0aGUgc3RhcnQgbWVudQoKMjAwNy0xMC0xOCAwOTozOSAgaG9mZm1hbgoKCSogYm9vdHN0cmFwOiBFTkg6IGFkZCBuZXcgZmlsZQoKMjAwNy0xMC0xOCAwOTozOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogZG8gbm90IHJlbW92ZQoJICBleGVjdXRhYmxlcyBhbmQgZGxsJ3MgYmVmb3JlIGxpbmtpbmcgdGhlbSBzbyB0aGF0IGluY3JlbWVudGFsCgkgIGxpbmtzIHdvcmssIGluY3JlbWVudGFsIGxpbmtzIGFyZSBzdGlsbCBicm9rZW4gZm9yIHZzIDIwMDUgYW5kCgkgIGdyZWF0ZXIgYmVjYXVzZSBvZiB0aGUgbWFuaWZlc3Qgc3R1ZmYKCjIwMDctMTAtMTggMDk6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbURvY3VtZW50VmFyaWFibGVzLmN4eCwKCSAgY21Eb2N1bWVudFZhcmlhYmxlcy5oLCBjbWFrZS5jeHg6IEVOSDogYWRkIGRvY3MgZm9yIHZhcmlhYmxlcwoKMjAwNy0xMC0xNyAyMjo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTE3IDEwOjI5ICBraW5nCgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2NsaWVudC5oOiBDT01QOiBBdHRlbXB0IHRvIGZpeCB3YXJuaW5nCgkgIGFib3V0IHBvaW50ZXItPmludGVnZXIgY2FzdC4KCjIwMDctMTAtMTcgMDk6MzggIG1pZ3VlbGYKCgkqIE1vZHVsZXMvRmluZHd4V2lkZ2V0cy5jbWFrZTogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBmaW5kaW5nCgkgIHd4V2lkZ2V0cy0yLjkuIFRoYW5rcyB0byBKb3NodWEgSmVuc2VuIGFuZCBTdGV2ZW4uCgoyMDA3LTEwLTE2IDIyOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMTYgMTQ6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNvbmZpZ3VyZS5jbWFrZS5oLmluLAoJICBjbVByb3BlcnR5TWFwLmN4eDogRU5IOiBhZGRlZCBDTUFLRV9TVFJJQ1Qgb3B0aW9uIGZvciB2YXIgYW5kCgkgIHByb3BlcnR5IGNoZWNraW5nCgoyMDA3LTEwLTE2IDEwOjE5ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXhlZAoJICBsaW5lLXRvby1sb25nLgoKMjAwNy0xMC0xNSAyMjo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTE1IDE3OjM4ICBraW5nCgoJKiBTb3VyY2UvY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuY3h4OiBCVUc6IFdvcmsgYXJvdW5kIGJ1ZyB3aGVuCgkgIGNhbGxpbmcgaW5zZXJ0IG9uIGFuIGVtcHR5IHZlY3RvciBvZiBjaGFyIG9uIG1pZHdvcmxkLiBTaG91bGQKCSAgZWxpbWluYXRlIHRoZSBzcG9yYWRpYyBmYWlsdXJlIG9mIEVYRUNVVEVfUFJPQ0VTUyBkdXJpbmcgdGhlCgkgIFNpbXBsZUluc3RhbGwtU3RhZ2UyIHRlc3QuIChkYXZpZC5jb2xlIGZyb20gQnJhZCdzIGNoZWNrb3V0IG9uCgkgIG1pZHdvcmxkKQoKMjAwNy0xMC0xNSAxNDo1MCAgbWFydGluawoKCSogTW9kdWxlcy9UZXN0Rm9yU1NUUkVBTS5jbWFrZSwgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuaCwKCSAgU291cmNlL2NtV2hpbGVDb21tYW5kLmgsIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogbWlub3IgZG9jCgkgIGNsZWFudXBzIGFuZCBhbiBleGFtcGxlIG9mIGRvY3VtZW50aW5nIGEgdmFyaWFibGUKCjIwMDctMTAtMTUgMDc6MDggIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbFNjcmlwdEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxTY3JpcHRHZW5lcmF0b3IuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQzLmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQ0LmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9JbnN0YWxsU2NyaXB0My5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0luc3RhbGxTY3JpcHQ0LmNtYWtlOiBCVUc6IEZpeCAjNTg2OCAtIGFkZAoJICBDT01QT05FTlQgaGFuZGxpbmcgdG8gdGhlIFNDUklQVCBhbmQgQ09ERSBzaWduYXR1cmVzIG9mIHRoZQoJICBJTlNUQUxMIGNvbW1hbmQuCgoyMDA3LTEwLTE0IDIyOjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMTQgMDg6MTUgIGFsZXgKCgkqIFNvdXJjZS9jbUV4cG9ydENvbW1hbmQuY3h4OgoJICBCVUc6IGZpeCAjNTgwNiwgd3JvbmcgcXVvdGVzIHVzZWQgaW4gdGhlIGV4cG9ydGVkIGZpbGUKCgkgIEFsZXgKCjIwMDctMTAtMTMgMjI6NDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0xMiAyMjo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTEyIDIxOjMwICBtaWd1ZWxmCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2U6IEJVRzogQWRkZWQgc3VwcG9ydCBmb3IgdGhlIEFVSQoJICBsaWJyYXJ5IG1vZHVsZSAoYnVnIDQzMzgpLiBBbHNvIGFwcGxpZWQgc29tZSBTVFlMRSBjaGFuZ2VzCgkgIGluY2x1ZGluZzogZGVwcmVjYXRpb24gb2Ygd3hXaWRnZXRzX1VTRV9MSUJTIGluIGZhdm9yIG9mIHVzaW5nCgkgIHN0YW5kYXJkIEZJTkRfUEFDS0FHRSBDT01QT05FTlRTLCByZW1vdmVkIHNvbWUgQ01ha2UgMi40LjIKCSAgY29tcGF0aWJpbGl0eSBwYXRjaGVzLCB1c2Ugb2YgZXhlY3V0ZV9wcm9jZXNzIGluc3RlYWQgb2YKCSAgZXhlY19wcm9ncmFtLCBldGMuCgoyMDA3LTEwLTEyIDE5OjMzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NQYWNrUlBNLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDU4NzgKCjIwMDctMTAtMTIgMTE6NDMgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogRml4IHRoZSBkYXNoYm9hcmRzISBQdXQgaXQgYmFjayB0aGUgd2F5CgkgIGl0IHdhcyBzbyBpdCBhbHdheXMgY3JlYXRlcyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBhdCBjb25maWd1cmUKCSAgdGltZS4gRmlndXJlIG91dCBob3cgdG8gYXZvaWQgaXQgZm9yIHRoZSBmcmFtZXdvcmsgY2FzZSBvbiB0aGUKCSAgTWFjL1hjb2RlIGxhdGVyLi4uCgoyMDA3LTEwLTEyIDExOjM0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRGTFRLMi5jbWFrZTogRU5IOiBhZGQgZnJvbSBidWcgMDAwNDIxOQoKMjAwNy0xMC0xMiAxMTowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kQVNQRUxMLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDAwMDU4NzEKCjIwMDctMTAtMTIgMTA6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyAwMDAzNjE4ICwgYWxsb3cgb25lCgkgIGFyY2ggaW4gT1NYX0FSQ0hTIHRvIHdvcmsKCjIwMDctMTAtMTIgMDk6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IGZvciBidWcgMDAwNTc2NyBoYW5nIGZvcgoJICByZXBsYWNlIHN0cmluZyB3aXRoIGVtcHR5CgoyMDA3LTEwLTEyIDA5OjUxICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEVOSDogV2hlbiBhbiBvYmplY3QgZmlsZSByZXF1aXJlcyBhCgkgIG1vZHVsZSBhZGQgdGhlIGZpbGUtbGV2ZWwgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoZSBvYmplY3QgZmlsZSBhbmQKCSAgdGhlIG1vZHVsZSB0aW1lc3RhbXAgZmlsZS4gIENyZWF0ZSBhIGR1bW15IHRpbWVzdGFtcCBmaWxlIGluIGNhc2UKCSAgbm90aGluZyBpbiB0aGUgcHJvamVjdCBhY3R1YWxseSBjcmVhdGVzIHRoZSBtb2R1bGUuICBTZWUKCSAgYnVnIzU4MDkuCgoyMDA3LTEwLTEyIDA5OjMyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IERlcGVuZGVuY3kKCSAgc2Nhbm5lcnMgc2hvdWxkIGhhdmUgbG9jYWwgZ2VuZXJhdG9ycyBzZXQgYWx3YXlzLgoKMjAwNy0xMC0xMSAyMjo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTEwIDIyOjMyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMTAgMTc6NDcgIGFsaW4uZWxlbmEKCgkqIE1vZHVsZXMvOiBDaGVja0ZvcnRyYW5GdW5jdGlvbkV4aXN0cy5jbWFrZSwgRmluZEJMQVMuY21ha2UsCgkgIEZpbmRMQVBBQ0suY21ha2UsIFBsYXRmb3JtL0xpbnV4LWlmb3J0LmNtYWtlOgoJICBFTkg6IEZpbmRCTEFTLmNtYWtlIGFuZCBGaW5kTEFQQUNLLmNtYWtlIG1vZHVsZXMgYWRkZWQuIFRoZXkKCSAgbG9jYXRlIHZhcmlvdXMgaW1wbGVtZW50YXRpb25zIG9mIGJsYXMgYW5kIGxhcGFjayBsaWJyYXJpZXMuCgkgIENoZWNrRm9ydHJhbkZ1bmN0aW9uRXhpc3RzLmNtYWtlIHByb3ZpZGVzIGEgdGVzdCBmdW5jdGlvbiB0bwoJICBjaGVjayBpZiB0aGUgbGlicmFyeSBpcyB1c2FiYWxlLiBJIGhhdmUgYWxzbyBjaGFuZ2VkIHRoZSAtS1BJQwoJICBmbGFnIHRvIC1mUElDIGluIExpbnV4LWlmb3J0LmNtYWtlLgoKMjAwNy0xMC0xMCAxMTo0NyAgbWFydGluawoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oLAoJICBTb3VyY2UvY21BZGREZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLCBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmgsIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuaCwgU291cmNlL2NtQnVpbGRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUJ1aWxkTmFtZUNvbW1hbmQuaCwgU291cmNlL2NtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaCwKCSAgU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwKCSAgU291cmNlL2NtRGVmaW5lUHJvcGVydHlDb21tYW5kLmgsIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4LAoJICBTb3VyY2UvY21FbHNlQ29tbWFuZC5oLCBTb3VyY2UvY21FbHNlSWZDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUVuYWJsZUxhbmd1YWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBTb3VyY2UvY21FbmRGb3JFYWNoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FbmRJZkNvbW1hbmQuaCwgU291cmNlL2NtRW5kTWFjcm9Db21tYW5kLmgsCgkgIFNvdXJjZS9jbUVuZFdoaWxlQ29tbWFuZC5oLCBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmgsIFNvdXJjZS9jbUV4cG9ydENvbW1hbmQuaCwKCSAgU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5oLAoJICBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5oLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuaCwgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmgsIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0UHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldFRlc3RQcm9wZXJ0eUNvbW1hbmQuaCwgU291cmNlL2NtSWZDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUluY2x1ZGVDb21tYW5kLmgsIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwgU291cmNlL2NtTGlzdENvbW1hbmQuaCwKCSAgU291cmNlL2NtTG9hZENhY2hlQ29tbWFuZC5oLCBTb3VyY2UvY21Mb2FkQ29tbWFuZENvbW1hbmQuaCwKCSAgU291cmNlL2NtTWFjcm9Db21tYW5kLmgsIFNvdXJjZS9jbU1ha2VEaXJlY3RvcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oLCBTb3VyY2UvY21NYXRoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21NZXNzYWdlQ29tbWFuZC5oLCBTb3VyY2UvY21PcHRpb25Db21tYW5kLmgsCgkgIFNvdXJjZS9jbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmgsIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuaCwgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVJlbW92ZUNvbW1hbmQuaCwgU291cmNlL2NtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5oLCBTb3VyY2UvY21TZXRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5oLCBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtU291cmNlR3JvdXBDb21tYW5kLmgsIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5oLCBTb3VyY2UvY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oLCBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmgsCgkgIFNvdXJjZS9jbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBTb3VyY2UvY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21WYXJpYWJsZVdhdGNoQ29tbWFuZC5oLCBTb3VyY2UvY21XaGlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtV3JpdGVGaWxlQ29tbWFuZC5oLAoJICBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWFrZSBjb21tYW5kcyBsb3dlcgoJICBjYXNlIGJ5IGRlZmF1bHQKCjIwMDctMTAtMTAgMTE6MDYgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0ZyYW1ld29yay9DTWFrZUxpc3RzLnR4dDogRU5IOiBGaW5pc2ggdXAgdGhlIEZyYW1ld29yawoJICBjcmVhdGlvbiBjb2RlIHJlc3RydWN0dXJpbmcuIEZyYW1ld29ya3MgYnVpbGQgYW5kIGluc3RhbGwgbm93LgoJICBNb3JlIHdvcmsgbmVlZGVkIG9uIHRoZSBwYWNrYWdpbmcgc3RlcC4gU2VlIFRlc3RzL0ZyYW1ld29yayBmb3IKCSAgZXhhbXBsZSB1c2UuCgoyMDA3LTEwLTEwIDA5OjA5ICBraW5nCgoJKiBUZXN0cy9Gb3J0cmFuLzogQ01ha2VMaXN0cy50eHQsIHRlc3RfdXNlX2luX2NvbW1lbnRfZml4ZWRmb3JtLmYsCgkgIHRlc3RfdXNlX2luX2NvbW1lbnRfZnJlZWZvcm0uZjkwLCBpbl9pbnRlcmZhY2UvbWFpbi5mOTAsCgkgIGluX2ludGVyZmFjZS9tb2R1bGUuZjkwOiBFTkg6IEFkZGVkIHRlc3QgZm9yICd1c2UnIGtleXdvcmQgaW4gYQoJICBjb21tZW50LiAgUGF0Y2ggZnJvbSBNYWlrIEJlY2ttYW5uLiAgU2VlIGJ1ZyM1ODA5LgoKMjAwNy0xMC0xMCAwOTowNyAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBCVUc6IEZpeCBpbi1pbnRlcmZhY2UgbW9kZS4gIFBhdGNoCgkgIGZyb20gTWFpayBCZWNrbWFubi4gIFNlZSBidWcjNTgwOS4KCjIwMDctMTAtMDkgMjI6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0wOSAxNToyMCAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogYmFkIGJ1ZyBiYWQKCjIwMDctMTAtMDkgMTQ6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlckhUTUwuY3h4LAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJNYW4uY3h4LAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJUZXh0LmN4eCwKCSAgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyVXNhZ2UuY3h4LCBjbUR1bXBEb2N1bWVudGF0aW9uLmN4eCwKCSAgY21Qcm9wZXJ0eURlZmluaXRpb24uY3h4LCBjbVByb3BlcnR5RGVmaW5pdGlvbk1hcC5jeHgsCgkgIGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHgsCgkgIGN0ZXN0LmN4eCwgQ1BhY2svY3BhY2suY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHA6IEJVRzogcmV2ZXJ0CgkgIGRvYyBjaGFuZ2VzIHNpbmNlIFZTNyBjYW5ub3QgY29tcGlsZSB0aGVtLCB3aWxsIGltcGxlbWVudCB0aGVtIGluCgkgIGEgZGlmZmVyZW50IG1hbm5lcgoKMjAwNy0xMC0wOSAwOTo1NSAgbWFydGluawoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVySFRNTC5jeHgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlck1hbi5jeHgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlclRleHQuY3h4LAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJVc2FnZS5jeHgsIGNtRHVtcERvY3VtZW50YXRpb24uY3h4LAoJICBjbVByb3BlcnR5RGVmaW5pdGlvbi5jeHgsIGNtUHJvcGVydHlEZWZpbml0aW9uTWFwLmN4eCwKCSAgY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtYWtlLmN4eCwgY21ha2UuaCwgY21ha2VtYWluLmN4eCwKCSAgY3Rlc3QuY3h4LCBDUGFjay9jcGFjay5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcDogRU5IOiBtYWtlCgkgIGRvY3VtZW50YXRpb24gZW50cmllcyBhY3R1YWxseSBzdG9yZSB0aGVpciBkYXRhCgoyMDA3LTEwLTA4IDIyOjM5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMTAtMDggMTA6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcuCgoyMDA3LTEwLTA4IDEwOjAzICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IEFkZGVkIGluYWR2ZXJ0YW50bHkgcmVtb3ZlZAoJICBpbmNsdWRlLgoKMjAwNy0xMC0wNyAyMjozNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTA3IDE2OjIyICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IFNpbXBsaWZpZWQgaW5jbHVkZSBmaWxlIGxvZ2ljLgoJICBUaGUgd2luZG93cy5oIGhlYWRlciBzaG91bGQgYmUgaW5jbHVkZWQgZm9yIGFsbCBjb21waWxlcnMgb24KCSAgd2luZG93cy4KCjIwMDctMTAtMDYgMjI6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0wNSAyMjozMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTA1IDE1OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IGZpeCB0byBjb21waWxlIG9uIFZTIDgKCjIwMDctMTAtMDUgMTM6MTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgcHJlcHJvY2Vzc2VkIGZpbGVzIGluIGJvcmxhbmQKCjIwMDctMTAtMDUgMTM6MTQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9LV1N0eWxlL0NNYWtlRmlsZXMudHh0LmluOiBFTkg6IGFkZCBtb3JlIGV4Y2x1c2lvbnMgZm9yCgkgIGt3c3R5bGUKCjIwMDctMTAtMDUgMTA6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBGaXggY2FsbCB0byBTZXRGaWxlVGltZSB0byBzZXQgaXQKCSAgb24gdGhlIHByb3BlciBmaWxlLgoKMjAwNy0xMC0wNSAxMDowMiAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgQ09NUDogRGlzYWJsZSBzb21lIHdhcm5pbmdzIGluIGdlbmVyYXRlZCBjb2RlLiAgRGlzYWJsZQoJICBjb21waWxhdGlvbiBvZiB1bnVzZWQgZ290byBibG9jay4KCjIwMDctMTAtMDUgMDk6NDYgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOgoJICBFTkg6IER1cmluZyBmaWxlIGluc3RhbGxhdGlvbiB0cmVhdCB0aGUgc291cmNlIGZpbGUgYXMgYQoJICBkZXBlbmRlbmN5IG9mIHRoZSBpbnN0YWxsZWQgZmlsZS4gIEluc3RhbGwgdGhlIGZpbGUgb25seSBpZiB0aGUKCSAgZGVzdGluYXRpb24gaXMgb2xkZXIgdGhhbiB0aGUgc291cmNlLiAgU2V0IHRoZSBmaWxlIHRpbWVzIG9uIHRoZQoJICBpbnN0YWxsZWQgZmlsZSB0byBtYXRjaCB0aG9zZSBvZiB0aGUgc291cmNlIGZpbGUuICBUaGlzIHNob3VsZAoJICBncmVhdGx5IGltcHJvdmUgdGhlIHNwZWVkIG9mIHJlcGVhdGVkIGluc3RhbGxhdGlvbnMgYmVjYXVzZSBpdAoJICByZW1vdmVzIHRoZSBjb21wYXJpc29uIG9mIGZpbGUgY29udGVudHMuICBUaGlzIGFkZHJlc3NlcwoJICBidWcjMzM0OS4KCjIwMDctMTAtMDQgMjI6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0wNCAxNTozMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgRU5IOiB1cGRhdGUgLnkgZmlsZSB3aXRoIGJvcmxhbmQgZml4LCBhbmQgdXNlIGEgdGFibGUgYmFzZWQKCSAgc3RyY2FzZWNtcAoKMjAwNy0xMC0wNCAxNDo0NyAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuY3h4OiBDT01QOiBHZXQgaXQgdG8gY29tcGlsZSBvbgoJICBCb3JsYW5kIDUuNSwgdG9vLiBJbmNsdWRpbmcgc3RsIGhlYWRlcnMgaGVyZSBkb2VzIG5vdCB3b3JrLAoJICBiZWNhdXNlIHdpdGggQm9ybGFuZCA1LjUgc3RsIGhlYWRlcnMgcHVsbCBpbiB3aW5kZWYuaCB3aGljaAoJICB0eXBlZGVmcyBXT1JEIHdoaWNoIGlzIGluIHRoZSBmb3J0cmFuIHRva2VucyBsaXN0Li4uCgoyMDA3LTEwLTA0IDA5OjQ5ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHg6IFNUWUxFOiBSZW1vdmVkIHJlZmVyZW5jZSB0byBteQoJICBob21lIGRpcmVjdG9yeSBmcm9tICNsaW5lIGNhbGxzLgoKMjAwNy0xMC0wMyAyMjozNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTAzIDE3OjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLmN4eCwgY21EZXBlbmRzRm9ydHJhblBhcnNlci55OgoJICBDT01QOiBEbyBub3QgdXNlIG5vbi1wb3J0YWJsZSBzdHJjYXNlY21wLgoKMjAwNy0xMC0wMyAxNjoxOSAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBCVUc6IFdoZW4gcmVxdWlyaW5nIGEgbW9kdWxlIHRocm91Z2gKCSAgYSAucHJveHkgcnVsZSBhZGQgYW4gZW1wdHkgLnByb3h5IHJ1bGUgaW4gY2FzZSBubyBvdGhlciBzb3VyY2UgaW4KCSAgdGhlIHRhcmdldCBwcm92aWRlcyBpdC4gIFNpbmNlIGl0IGlzIG5vdCBhIGZpbGUtbGV2ZWwgZGVwZW5kZW5jeQoJICB0aGVyZSBkb2VzIG5vdCBuZWVkIHRvIGJlIGEgcnVsZSB0byBjcmVhdGUgdGhlIC5wcm94eSBhcyBhIGZpbGUuCgkgIFRoaXMgYWRkcmVzc2VzIGJ1ZyMzOTg0LgoKMjAwNy0xMC0wMyAxNTo0MSAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbi5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5MZXhlci5jeHgsCgkgIGNtRGVwZW5kc0ZvcnRyYW5MZXhlci5oLCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaW4ubCwKCSAgY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuaCwKCSAgY21EZXBlbmRzRm9ydHJhblBhcnNlci55LCBjbURlcGVuZHNGb3J0cmFuUGFyc2VyVG9rZW5zLmg6IEJVRzoKCSAgRml4IGZvciBidWcjNTgwOS4gIEFwcGxpZWQgcGF0Y2ggc3VwcGxpZWQgaW4gdGhlIGJ1ZyByZXBvcnQuCgkgIFVwZGF0ZWQgcHJlLWdlbmVyYXRlZCBsZXhlciBhbmQgcGFyc2VyIHNvdXJjZXMuICBUaGlzIHVwZGF0ZXMgdGhlCgkgIG1ha2VkZXBmOTAgdmVyc2lvbiB0byAyLjguOC4JVGhlIHBhcnNlciBhY3Rpb25zIGhhdmUgYmVlbgoJICB1cGRhdGVkIHRvIGlnbm9yZSAidXNlIiBpbiBjb21tZW50cyBwcm9wZXJseS4KCjIwMDctMTAtMDMgMTU6MjMgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGVkIENNQUtFX1JFR0VORVJBVEVfWUFDQ0xFWAoJICBvcHRpb24gdG8gc3VwcG9ydCBjbURlcGVuZHNGb3J0cmFuLiAgRml4ZWQgdG8gd29yayB3aXRoIHNwYWNlcyBpbgoJICBwYXRoLgoKMjAwNy0xMC0wMiAyMjoyNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTEwLTAyIDE1OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBzcGVlZCB1cAoJICBhY3R1YWwgcGF0aCBuYW1lIGJ5IGNhY2hlIG9uIHdpbmRvd3MKCjIwMDctMTAtMDEgMjI6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0xMC0wMSAxNTo1NyAgZGF2aWQuY29sZQoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBDT01QOiBSZW5hbWUgdGhlIGV4ZWN1dGFibGVzIGZvcgoJICB0aGUgU2ltcGxlSW5zdGFsbCB0ZXN0cyBzbyB0aGF0IHRoZSBleGVjdXRhYmxlIGZpbGVzIHRoYXQgcnVuCgkgIGR1cmluZyB0aGUgdGVzdCBkbyBub3QgaGF2ZSB0aGUgd29yZCBpbnN0YWxsIGluIHRoZWlyIGZpbGUgbmFtZXMuCgkgIFRoaXMgYWxsb3dzIHJ1bm5pbmcgdGhlIHRlc3RzIG9uIFdpbmRvd3MgVmlzdGEgd2l0aG91dCBhZG1pbgoJICBwcml2aWxlZ2VzIGFuZCB3aXRob3V0IGFkZGluZyBhIG1hbmlmZXN0IGNvbnRhaW5pbmcgdGhlIGFzSW52b2tlcgoJICByZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbCBlbGVtZW50LgoKMjAwNy0wOS0zMCAyMjoyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTI5IDIyOjM2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDktMjggMjI6NDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yNyAyMzowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTI3IDE0OjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsIFV0aWxpdGllcy9jbXRhci9saWJ0YXIuYzoKCSAgQ09NUDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA3LTA5LTI3IDE0OjIwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogc2V0ICBRVF9FRElUSU9OX0RFU0tUT1BMSUdIVCBhbmQgZG8KCSAgbm90IGRpc2FibGUgbW9kdWxlcwoKMjAwNy0wOS0yNyAxNDoxOCAgaG9mZm1hbgoKCSogRGFydExvY2FsLmNvbmYuaW46IEVOSDogZml4IHNwYWNlCgoyMDA3LTA5LTI3IDE0OjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBFTkg6IHJlbW92ZSBqdW5rIGZyb20gb3V0cHV0CgoyMDA3LTA5LTI3IDA4OjUzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBhIGNoZWNrIGZvciBiYXNlbmFtZSB0bwoJICBjbWN1cmwKCjIwMDctMDktMjYgMjI6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yNiAyMDo1MyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGxvb2sgZm9yIHF0IGluIGEgYmV0ZXIgcmVnaXN0cnkgcGxhY2UKCSAgYW5kIGRpc2FibGUgbW9kdWxlcyB0aGF0IHdvbid0IHdvcmsgd2l0aCBEZXNrdG9wTGlnaHQsIGFsc28gc2V0CgkgIFFUX0VESVRJT04gdmFyaWFibGUKCjIwMDctMDktMjUgMjM6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yNSAxMTowMSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZUdlbkRpYWxvZy5jcHA6IEVOSDogbW9yZSBnZW5lcmljIHNlYXJjaCBmb3IKCSAgdmlzdWFsIHN0dWRpbyBpbnN0YWxsYXRpb25zCgoyMDA3LTA5LTI1IDEwOjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IHByb2JsZW0gd2l0aCBzdGRvdXQgYW5kIHN0ZGVycgoJICBub3Qgc2hvd2luZyB1cCBpbiBtcyBkb3Mgc2hlbGxzCgoyMDA3LTA5LTI1IDA4OjM2ICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBpbmNyZWFzZSB0aW1lb3V0CgoyMDA3LTA5LTI1IDA4OjMwICBob2ZmbWFuCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiByZW1vdmUgZXh0cmEgc3BhY2UKCjIwMDctMDktMjQgMjM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yNCAxMzoxOSAgaG9mZm1hbgoKCSogRGFydExvY2FsLmNvbmYuaW4sIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBhZGQgbmV3CgkgIG1hY2hpbmVzCgoyMDA3LTA5LTI0IDExOjE4ICBob2ZmbWFuCgoJKiBDVGVzdEN1c3RvbS5jbWFrZS5pbjogQ09NUDogZXhjbHVkZSBzb21lIHdhcm5pbmdzIG9uIGhwCgoyMDA3LTA5LTI0IDExOjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudExleGVyLmN4eCwgY21EZXBlbmRzSmF2YUxleGVyLmN4eCwKCSAgY21FeHByTGV4ZXIuY3h4OiBDT01QOiBmaXggd2FybmluZ3Mgb24gaHAKCjIwMDctMDktMjQgMTE6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIGNtQ1Rlc3RUZXN0SGFuZGxlci5oOiBFTkg6CgkgIGZpeCBsaW5lIGxlbmd0aCBpc3N1ZXMKCjIwMDctMDktMjQgMDk6NTMgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRocmVhZHMuY21ha2U6IEJVRzogRW5hYmxlIENNQUtFX0hQX1BUSFJFQURTIG9ubHkKCSAgd2hlbiB0aGUgb2xkIENNQSB0aHJlYWRzIGFyZSBhdmFpbGFibGUuICBNb2Rlcm4gSFAgcHRocmVhZHMgYXJlCgkgIGp1c3Qgbm9ybWFsIHB0aHJlYWRzLgoKMjAwNy0wOS0yMyAyMzowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTIyIDIyOjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDktMjEgMjI6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yMSAxMzozNyAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OgoJICBTVFlMRTogdXNlICUtMTBsbGQgaW5zdGVhZCBvZiAlLTEwcWQgZm9yIHByaW50aW5nIGEgNjRiaXQgaW50LAoJICBtYXliZSB0aGlzIHNpbGVuY2VzIHRoZSB3YXJuaW5nIG9mIHRoZSBIUCBjb21waWxlcgoKCSAgQWxleAoKMjAwNy0wOS0yMSAxMTo0MiAgYWxleAoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDoKCSAgU1RZTEU6IGltcHJvdmVkIGVycm9yIG1lc3NhZ2UgZm9yIHRoZSBjYXNlIHRoYXQgbmVpdGhlcgoJICBGaW5kRm9vLmNtYWtlIG5vciBGb29Db25maWcuY21ha2Ugd2VyZSBmb3VuZAoKCSAgQWxleAoKMjAwNy0wOS0yMSAxMTo0MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9JbnN0YWxsUmVxdWlyZWRTeXN0ZW1MaWJyYXJpZXMuY21ha2U6IEVOSDogcmVtb3ZlIG1lc3NhZ2UKCjIwMDctMDktMjAgMjI6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0yMCAxNzoyMSAga2luZwoKCSogTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZTogQlVHOiBEbyBub3QgdXNlIENNQSB0aHJlYWRzIG9uIEhQIGlmCgkgIHRoZXkgZG8gbm90IGV4aXN0LgoKMjAwNy0wOS0yMCAxNjo0OCAgaG9mZm1hbgoKCSogVGVzdHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogVlYgbWFrZSB0b28gbXVjaCBkYXRhIGZvciB0aGUKCSAgZGFzaGJvYXJkCgoyMDA3LTA5LTIwIDExOjU3ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFJlZ2lzdHJ5LmN4eDogQ09NUDogcmVtb3ZlIHdhcm5pbmcgb24gbmV3IEhQVVgKCSAgY29tcGlsZXIKCjIwMDctMDktMjAgMTE6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEJVRzogZml4IHRvIHdvcmsgd2l0aCBjbWFrZSAyLjIKCjIwMDctMDktMjAgMTA6NTYgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IERpc2FibGUgcGFja2FnZSB0ZXN0IG9ubHkgb24KCSAgT1NYIDwgMTAuNC4gIEFkZGVkIGNvbW1lbnQgZXhwbGFpbmluZyByZWFzb24gZm9yIHRpbWVvdXQuCgoyMDA3LTA5LTIwIDEwOjQ3ICBraW5nCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZXN0b3JlIHNob3J0ZXIgdGltZW91dCBmb3IKCSAgU2ltcGxlSW5zdGFsbC1TdGFnZTIuCgoyMDA3LTA5LTIwIDA5OjM2ICBhbGV4CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OgoJICBDT01QOiBUSU9DR1dJTlNaIGFuZCBzdHJ1Y3Qgd2luc2l6ZSBhbHNvIGRvZXNuJ3QgZXhpc3Qgb24gQ3JheQoJICBDYXRhbW91bnQKCgkgIEFsZXgKCjIwMDctMDktMjAgMDk6MzAgIGFsZXgKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6CgkgIENPTVA6IG1ha2UgU3lzdGVtVG9vbHMuY3h4IGJ1aWxkIG9uIENyYXkgWHQzCgoJICBBbGV4CgoyMDA3LTA5LTIwIDA4OjMzICBhbGV4CgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDktMTkgMjI6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0xOSAxMzo1MSAgZGF2aWQuY29sZQoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZUxpc3RzLnR4dDogQ09NUDogT25seSB1c2UgdGhlIFZFUkJBVElNIGZsYWcKCSAgZm9yIG5vbi1WaXN1YWwgU3R1ZGlvIGJ1aWxkcyBiZWluZyBjb25maWd1cmVkIGJ5IENNYWtlIDIuNC41IG9yCgkgIGxhdGVyLgoKMjAwNy0wOS0xOSAxMzoxNCAgYWxleAoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlci5oLCBjbWFrZW1haW4uY3h4OgoJICBFTkg6IGFkZCBuZXcgaGVscCBvcHRpb24gLS1oZWxwLWN1c3RvbS1tb2R1bGVzLCB3aGljaCBnZW5lcmF0ZXMKCSAgZG9jdW1lbnRhdGlvbiBmb3IgYWxsIG1vZHVsZXMgZm91bmQgaW4gQ01BS0VfTU9EVUxFX1BBVEgsIHdoaWNoCgkgIGN1cnJlbnRseSBoYXMgdG8gYmUgc3BlY2lmaWVkIHZpYSAtRCwgdGhpcyBjYW4gbGF0ZXIgb24gYmUKCSAgaW1wcm92ZWQgZS5nLiBieSByZWFkaW5nIGEgc3BlY2lhbCAodG8tYmUtY3JlYXRlZCkgZmlsZSBsaWtlCgkgIENNYWtlRmlsZXMvTW9kdWxlUGF0aC5jbWFrZSBpbiB0aGUgYnVpbGQgdHJlZSBzbyB0aGF0IHJ1bm5pbmcKCSAgY21ha2UgaGVscCBpbiB0aGUgYnVpbGQgdHJlZSBvZiBhIHByb2plY3Qgd2lsbCBhbHdheXMgZ2l2ZSB5b3UKCSAgdGhlIGN1cnJlbnQgbW9kdWxlIHBhdGguIChUaGlzIGNvdWxkIGFjdHVhbGx5IGFsc28gaGVscCBJREVzCgkgIHdoaWNoIHdvdWxkIGxpa2UgdG8gc3VwcG9ydCBjbWFrZSBmb3IgcHJvamVjdHMuLi4pCgoJICBBbGV4CgoyMDA3LTA5LTE5IDExOjQyICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCB0ZXN0IGZvciBIQVZFX0JBU0VOQU1FCgkgIHNpbmNlIGl0IGlzIHVzZWQKCjIwMDctMDktMTkgMTE6MTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogZml4IGZhaWxpbmcgdGVzdCB3aGVuIHZhbGdyaW5kIGlzIG9uCgoyMDA3LTA5LTE5IDExOjEwICBraW5nCgoJKiBUZXN0cy86IENNYWtlTGlzdHMudHh0LCBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmUtZW5hYmxlIHBhY2thZ2luZyBwYXJ0IG9mCgkgIFNpbXBsZUluc3RhbGwtU3RhZ2UyIHRlc3Qgb24gQXBwbGUuICBHaXZlIGl0IGEgbG9uZyB0aW1lb3V0IHRvCgkgIHNlZSB3aGF0IGlzIGdvaW5nIG9uLgoKMjAwNy0wOS0xOSAxMDo0NiAgYWxleAoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlckhUTUwuY3h4OgoJICBDT01QOiBmaXggd2FybmluZyBhYm91dCB1bnVzZWQgcGFyYW1ldGVycwoKCSAgQWxleAoKMjAwNy0wOS0xOSAwOTo1OSAgYWxleAoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbkZvcm1hdHRlck1hbi5jeHg6CgkgIEJVRzogY29ycmVjdCBuYW1lIGZvciB0aGUgbWFuIHBhZ2UKCgkgIEFsZXgKCjIwMDctMDktMTkgMDk6MzUgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZToKCSAgQlVHOiBpZiBRdCBpcyBpbnN0YWxsZWQgYXMgYSBmcmFtZXdvcmssIGFkZCAtRiB0byB0aGUgY29tbWFuZAoJICBsaW5lIHNvIFFfV1NfTUFDIGNhbiBiZSBkZXRlY3RlZCBjb3JyZWN0bHkKCgkgIEFsZXgKCjIwMDctMDktMTkgMDk6MDUgIGFsZXgKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaCwKCSAgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyLmN4eCwgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlckhUTUwuY3h4LCBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJIVE1MLmgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlck1hbi5jeHgsIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlck1hbi5oLAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJUZXh0LmN4eCwgY21Eb2N1bWVudGF0aW9uRm9ybWF0dGVyVGV4dC5oLAoJICBjbURvY3VtZW50YXRpb25Gb3JtYXR0ZXJVc2FnZS5jeHgsCgkgIGNtRG9jdW1lbnRhdGlvbkZvcm1hdHRlclVzYWdlLmg6CgkgIFNUWUxFOiBtb3ZlIHRoZSBjb2RlIGZvciB0aGUgZGlmZmVyZW50IGZvcm1hdHMgb2YgdGhlIGdlbmVyYXRlZAoJICBoZWxwIGludG8gdGhlaXIgb3duIGNsYXNzZXMsIG1ha2luZyBjbURvY3VtZW50YXRpb24gc21hbGxlciBhbmQKCSAgYWxzbyBtYWtpbmcgaXQgZWFzaWVyIHRvIGV2ZW50dWFsbHkgYWRkIGFub3RoZXIgZm9ybWF0CgoJICBBbGV4CgoyMDA3LTA5LTE5IDA5OjA0ICBhbGV4CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDoKCSAgQ09NUDogcmVlbmFibGUgdGhlIGluc3RhbGxhdGlvbiBvZiB0aGUgUFVCTElDX0hFQURFUnMKCgkgIEFsZXgKCjIwMDctMDktMTggMjI6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0xOCAxNzowNSAgYWxleAoKCSogU291cmNlL2NtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDktMTggMTU6MTYgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2UsIE1vZHVsZXMvTlNJUy5JbnN0YWxsT3B0aW9ucy5pbmkuaW4sCgkgIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBhbGxvdyBmb3IgZGVza3RvcCBsaW5rIHRvIGJlIGNyZWF0ZWQgYW5kIGZpeCBjaG9wIG9mIGxhc3QKCSAgY2hhciBpbiBQQVRIIG9uIHVuaW5zdGFsbAoKMjAwNy0wOS0xOCAxNToxMyAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgQlVHOiBtYWtlIHRoZSBzdHJpbmcgc3RhdGljLCBvdGhlcndpc2UgdGhlIGNvbnRlbnRzIGFyZSBnb25lIHdoZW4KCSAgd2UgZXhpdCB0aGUgZnVuY3Rpb24gKHNhbWUgZml4IGFzIGluIFZUSy9DTWFrZS8pCgoJICBBbGV4CgoyMDA3LTA5LTE4IDExOjM1ICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBpbmNyZWFzZSB0aW1lb3V0IGZvciBsb25nIHRlc3QKCjIwMDctMDktMTggMTE6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBhbGxvdyB0ZXN0IHByb3BlcnRpZXMgdG8gc2V0IGEgdGltZW91dAoJICB0aGF0IGlzIGxvbmdlciB0aGFuIHRoZSBkZWZhdWx0IHRpbWVvdXQsIGJ1dCBub3QgbG9uZ2VyIHRoYW4KCSAgQ1RFU1RfVElNRV9MSU1JVCBmb3IgYSBzY3JpcHQKCjIwMDctMDktMTggMDk6NTQgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHg6CgkgIEVOSDogdXNlIHRoZSBvdWJqZWN0X291dHB1dCBvcHRpb24gdG8gdHJ5IHRvIHRlbGwgQ29kZUJsb2NrcwoJICB3aGVyZSB0aGUgb2JqZWN0IGZpbGVzIGFyZSBsb2NhdGVkICh0byBtYWtlICJjb21waWxlIGZpbGUiIHdvcmspLgoJICBEb2Vzbid0IHdvcmsgeWV0LCBidXQgYXQgbGVhc3QgdGhlIC5vYmpzLyBpcyBub3cgcmVtb3ZlZCBmcm9tIHRoZQoJICBwYXRoLgoKCSAgQWxleAoKMjAwNy0wOS0xNyAyMjozOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTE3IDE2OjIxICBhbGV4CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDoKCSAgQ09NUDogZGlzYWJsZSBwYWNrYWdpbmcgdGVzdCBvbiBBcHBsZSwgc2VlIGlmIHRoaXMgZml4ZXMgdGhlCgkgIHRpbWVvdXRzCgoJICBBbGV4CgoyMDA3LTA5LTE3IDE2OjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2UgbXQgY29tbWFuZCB3b3JrIHdpdGgKCSAgZ21ha2UKCjIwMDctMDktMTcgMTU6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciB2cyA4CgoyMDA3LTA5LTE3IDE1OjU1ICBhbGV4CgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DTWFrZUNDb21waWxlcklkLmMsCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlcklkLmNwcCwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1QR0ktQy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1QR0ktQ1hYLmNtYWtlLCBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eDoKCgkgIEVOSDogYWRkIHN1cHBvcnQgZm9yIHRoZSBQb3J0bGFuZCBDb21waWxlciB0byBDTWFrZSwgY2FuIGJ1aWxkCgkgIGNtYWtlIGFuZCB0aGUgdGVzdHMgcGFzcyAoZXhjZXB0IHRoZSB3cmFwcGluZyB0ZXN0cywgd2hpY2ggZmFpbAoJICB0byBsaW5rIHRvIHRoZSBnKystY29tcGlsZWQgUXQpCgoJICBBbGV4CgoyMDA3LTA5LTE3IDE1OjQwICBhbGV4CgoJKiBVdGlsaXRpZXMvY210YXIvbGlidGFyLmM6CgkgIENPTVA6IHVzZSBDLXN0eWxlIGNvbW1lbnRzIGluIEMgY29kZQoKCSAgQWxleAoKMjAwNy0wOS0xNyAxNToyNyAgaG9mZm1hbgoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogdGVzdCBpbnN0YWxsIG9mIGRlYnVnIGxpYnMKCjIwMDctMDktMTcgMTU6MjYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlOiBFTkg6IGFsbG93IGZvcgoJICBpbnN0YWxsYXRpb24gb2YgZGVidWcgbGlicwoKMjAwNy0wOS0xNyAxNToyMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVZTOEZpbmRNYWtlLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzlHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvU3RkQWZ4LmgsIFV0aWxpdGllcy9jbWN1cmwvc2VsZWN0LmgsCgkgIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvQ3VybFRlc3RzLmMsCgkgIFV0aWxpdGllcy9jbWN1cmwvUGxhdGZvcm1zL1dpbmRvd3NDYWNoZS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVZTOUZpbmRNYWtlLmNtYWtlOiBFTkg6IGFkZCBzdXBwb3J0IGZvciB2cyAyMDA4IGJldGEKCSAgMgoKMjAwNy0wOS0xNyAxNToxOCAgYWxleAoKCSogVXRpbGl0aWVzL2NtdGFyLzogQ01ha2VMaXN0cy50eHQsIGNvbmZpZy5oLmluLCBpbnRlcm5hbC5oOgoJICBDT01QOiBhZGQgYSBjaGVjayBmb3IgbWFrZWRldiwgd2hpY2ggaXNuJ3QgYXZhaWxhYmxlIHdpdGggdGhlIFBHSQoJICBjb21waWxlciBvbiBDcmF5IFhUMwoKCSAgQWxleAoKMjAwNy0wOS0xNyAxMToxNyAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGZpeCB3YXJuaW5nCgoyMDA3LTA5LTE3IDEwOjUzICBhbGV4CgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDoKCSAgU1RZTEU6IGNvcHkgdGhlIGV4ZWN1dGFibGVzIGZyb20gVFJZX1JVTigpIHRvCgkgICR7Q01BS0VfQklOQVJZX0RJUn0vQ01ha2VGaWxlcy8gaW5zdGVhZCB0byAke0NNQUtFX0JJTkFSWV9ESVJ9CgoJICBBbGV4CgoyMDA3LTA5LTE3IDEwOjUxICBraW5nCgoJKiBUZXN0cy9CdWlsZERlcGVuZHMvOiBDTWFrZUxpc3RzLnR4dCwgUHJvamVjdC9DTWFrZUxpc3RzLnR4dCwKCSAgUHJvamVjdC9kZXAuY3h4LCBQcm9qZWN0L3pvdC5jeHg6IEVOSDogQWRkaW5nIHRlc3QgZm9yCgkgIEFERF9DVVNUT01fQ09NTUFORCdzIG5ldyBJTVBMSUNJVF9ERVBFTkRTIGZlYXR1cmUuCgoyMDA3LTA5LTE3IDEwOjUwICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLCBjbUN1c3RvbUNvbW1hbmQuY3h4LAoJICBjbUN1c3RvbUNvbW1hbmQuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogQWRkZWQKCSAgSU1QTElDSVRfREVQRU5EUyBvcHRpb24gdG8gQUREX0NVU1RPTV9DT01NQU5ELiAgSXQgY3VycmVudGx5CgkgIHdvcmtzIG9ubHkgZm9yIE1ha2VmaWxlIGdlbmVyYXRvcnMuICBJdCBhbGxvd3MgYSBjdXN0b20gY29tbWFuZAoJICB0byBoYXZlIGltcGxpY2l0IGRlcGVuZGVuY2llcyBpbiB0aGUgZm9ybSBvZiBDIG9yIENYWCBzb3VyY2VzLgoKMjAwNy0wOS0xNyAxMDo0MCAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEVOSDoKCSAgZml4IGJ1aWxkIGlzc3VlIHdpdGggY29uZmlnIHR5cGUgbm90IGJlaW5nIHNwZWNpZmllZCBieSBjdGVzdAoKMjAwNy0wOS0xNiAyMjo0NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTE1IDIyOjU4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDktMTQgMjI6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0xMyAyMjo1MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTEzIDEzOjM3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LAoJICBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBPQkpFQ1RfT1VUUFVUUwoJICBzb3VyY2UgZmlsZSBwcm9wZXJ0eS4gIFVwZGF0ZWQgUHJlY29tcGlsZWRIZWFkZXIgdGVzdCB0byB1c2UgaXQKCSAgKG1ha2luZyB0aGUgdGVzdCBzaW1wbGVyKS4KCjIwMDctMDktMTMgMDk6MTQgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogRml4IHNoYWRvd2VkIGxvY2FsCgkgIHdhcm5pbmcgYnkgc2NvcGluZyB0aGUgcHJldmlvdXMgZGVjbCBwcm9wZXJseS4KCjIwMDctMDktMTIgMjI6NTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0xMSAyMjo0OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTExIDE1OjIxICBkYXZpZC5jb2xlCgoJKiBDVGVzdEN1c3RvbS5jbWFrZS5pbiwgU291cmNlL01GQ0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwTWFuaWZlc3QueG1sOiBFTkg6IEF2b2lkIHByb21wdGluZyBmb3IKCSAgYWRtaW4gcHJpdmlsZWdlcyB3aGVuIHJ1bm5pbmcgQ01ha2VTZXR1cC5leGUgb24gVmlzdGEgYnkgYWRkaW5nIGEKCSAgcmVxdWVzdGVkRXhlY3V0aW9uTGV2ZWwgZWxlbWVudCB0byBpdHMgbWFuaWZlc3QuCgoyMDA3LTA5LTExIDE0OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkQW5kVGVzdEhhbmRsZXIuY3h4OiBFTkg6IGZvciBidWlsZCBhbmQKCSAgdGVzdCBkZWZhdWx0IHRoZSBjb25maWcgdHlwZSB0byB0aGUgb25lIHRoYXQgY3Rlc3Qgd2FzIGJ1aWx0CgkgIHdpdGgsIGl0IGlzIGdvb2QgZm9yIHRoZSBjdXJyZW50IGN0ZXN0IHNldHVwLCBhbmQgb3RoZXIgcHJvamVjdHMKCSAgY2FuIGFsd2F5cyBzcGVjaWZ5IGEgdmFsdWUgb24gdGhlIGNvbW1hbmQgbGluZQoKMjAwNy0wOS0xMSAxMjoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IG9wcHMKCjIwMDctMDktMTEgMTE6MjIgIGRhdmlkLmNvbGUKCgkqIFV0aWxpdGllcy9jbXpsaWIvOiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLCBGQVEsIElOREVYLCBSRUFETUUsCgkgIFJFQURNRS5LaXR3YXJlLnR4dCwgYWRsZXIzMi5jLCBjbV96bGliX21hbmdsZS5oLCBjb21wcmVzcy5jLAoJICBjcmMzMi5jLCBjcmMzMi5oLCBkZWZsYXRlLmMsIGRlZmxhdGUuaCwgZXhhbXBsZS5jLCBnemlvLmMsCgkgIGluZmJsb2NrLmMsIGluZmJsb2NrLmgsIGluZmNvZGVzLmMsIGluZmNvZGVzLmgsIGluZmZhc3QuYywKCSAgaW5mZmFzdC5oLCBpbmZmaXhlZC5oLCBpbmZsYXRlLmMsIGluZmxhdGUuaCwgaW5mdHJlZXMuYywKCSAgaW5mdHJlZXMuaCwgaW5mdXRpbC5jLCBpbmZ1dGlsLmgsIG1ha2V0cmVlLmMsIG1pbmlnemlwLmMsCgkgIHRyZWVzLmMsIHVuY29tcHIuYywgemNvbmYuaCwgemxpYi5kZWYsIHpsaWIuaCwgemxpYi5yYywgenV0aWwuYywKCSAgenV0aWwuaDogRU5IOiBVcGRhdGUgemxpYiB0byAxLjIuMy4gQWRkcmVzc2VzIGJ1Z3MgIzU0NDUgYW5kCgkgICMzNDczLgoKMjAwNy0wOS0xMSAxMToyMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGN0ZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogRU5IOiBmaXggMiBjdGVzdCBpc3N1ZXMsCgkgIGRvIG5vdCB1c2UgdGhlIGJ1aWxkIHR5cGUgb2YgY3Rlc3QgdG8gbG9vayBmb3IgY29uZmlnIHR5cGVzLCBkbwoJICBub3QgaW5oZXJpdCBwaXBlcyBpbiBjaGlsZCBwcm9jcyBmb3IgY3Rlc3Qgc28gaXQgY2FuIGtpbGwgdGhlbQoKMjAwNy0wOS0xMSAxMDowMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWF0aENvbW1hbmQuaDogRU5IOiBpbXByb3ZlIGRvY3MKCjIwMDctMDktMTAgMjI6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0xMCAxNzozOSAgaG9mZm1hbgoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogdHVybiB0aGlzIHN0dWZmIG9mZiB0byBzZWUKCSAgaWYgaXQgZml4ZXMgdGhlIGRhc2hib2FyZCBvbiBtaWR3b3JsZAoKMjAwNy0wOS0xMCAxNzoxMCAgaG9mZm1hbgoKCSogVGVzdHMvUGx1Z2luL3NyYy9leGFtcGxlX2V4ZS5jeHg6IEVOSDogZml4IG1lbW9yeSBsZWFrCgoyMDA3LTA5LTEwIDEwOjQ5ICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvUkVBRE1FLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jcmVhdGUtY21ha2UtcmVsZWFzZS5jbWFrZSwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvdXBsb2FkX3JlbGVhc2UuY21ha2U6IEVOSDogYWRkIHRlc3QgdGhhdCBidWlsZHMKCSAgYSBuaWdodGx5IHdpbmRvd3MgY21ha2UgYmluYXJ5CgoyMDA3LTA5LTEwIDEwOjIyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IEFkZGVkCgkgIFhDT0RFX0FUVFJJQlVURV88YW4tYXR0cmlidXRlPiBwcm9wZXJ0eSB0byBhbGxvdyBkaXJlY3Qgc2V0dGluZwoJICBvZiBYY29kZSB0YXJnZXQgYXR0cmlidXRlcyBpbiBnZW5lcmF0ZWQgcHJvamVjdHMuICBGb3IgZXhhbXBsZSwKCSAgb25lIG1heSBzZXQgdGhlIHByZWZpeCBoZWFkZXIgcHJvcGVydHkgYW5kIHRoZSBjb3JyZXNwb25kaW5nCgkgIHByZWNvbXBpbGVkIG9wdGlvbiB0byBkbyBwcmVjb21waWxlZCBoZWFkZXJzLgoKMjAwNy0wOS0wOSAyMzowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTA5IDEzOjE4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgZGVidWcgcHJpbnQKCjIwMDctMDktMDggMjM6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0wNyAyMjo0OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTA3IDE3OjAwICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBNQVRIIGlzIG5vdCBpbiBib290c3RyYXAgY21ha2UKCjIwMDctMDktMDcgMTQ6MjAgIGhvZmZtYW4KCgkqIENNYWtlQ1BhY2suY21ha2UsIENNYWtlTGlzdHMudHh0OiBFTkg6IGZvciBDVlMgQ01ha2UgaGF2ZSBjcGFjawoJICB1c2UgdGhlIHZlcnNpb24gZGF0ZSBpbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZQoKMjAwNy0wOS0wNyAxMToxMCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRU5IOiBmaXggc3BlbGxpbmcgZXJyb3IKCjIwMDctMDktMDYgMjI6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOS0wNiAxNzo0NyAgZGF2aWQuY29sZQoKCSogVXRpbGl0aWVzL1JlbGVhc2UvQ01ha2VJbnN0YWxsLmJtcDogQlVHOiBQdXQgYmFjawoJICBDTWFrZUluc3RhbGwuYm1wIGluIG9yZGVyIHRvIGJ1aWxkIGEgcGFja2FnZSB3aXRoIE5TSVMgb24KCSAgV2luZG93cy4gSXQgd2FzIGluYWR2ZXJ0ZW50bHkgcmVtb3ZlZC4KCjIwMDctMDktMDYgMTA6MDYgIGhvZmZtYW4KCgkqIERhcnRMb2NhbC5jb25mLmluOiBFTkg6IGFjZGMgaXMgZGVhZAoKMjAwNy0wOS0wNSAyMzowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA5LTA0IDExOjQ1ICB6YWNrLmdhbGJyZWF0aAoKCSogU291cmNlL3RlbXAudHh0OiBFTkg6IHJlbW92aW5nIHRlbXBvcmFyeSB0ZXN0aW5nIGZpbGUKCjIwMDctMDktMDQgMTE6MDUgIHphY2suZ2FsYnJlYXRoCgoJKiBTb3VyY2UvdGVtcC50eHQ6IEVOSDogdGVzdGluZyBicmFuY2hSZXN0cmljdAoKMjAwNy0wOC0zMSAxNjo1MiAgYWxleAoKCSogU291cmNlLzogY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtSW5zdGFsbENvbW1hbmRBcmd1bWVudHMuaDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDgtMzEgMTY6MjcgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2U6CgkgIFNUWUxFOiBtYXJrIHRoZSBnZW5lcmF0b3Igb3B0aW9ucyBhcyBhZHZhbmNlZAoKCSAgQWxleAoKMjAwNy0wOC0zMSAxNTowNSAgYWxleAoKCSogVXRpbGl0aWVzL0tXU3R5bGUvQ01ha2Uua3dzLnhtbC5pbjoKCSAgU1RZTEU6IGRpc2FibGUgaGVhZGVyIGNoZWNrCgoJICBBbGV4CgoyMDA3LTA4LTMxIDE0OjUxICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ1Rlc3RDdXN0b20uY21ha2UuaW4sIENUZXN0Q3VzdG9tLmN0ZXN0LmluOiBFTkg6CgkgIENyZWF0ZSBDVGVzdEN1c3RvbS5jbWFrZSBpbnN0ZWFkIG9mIENUZXN0Q3VzdG9tLmN0ZXN0LiAgQ3JlYXRlCgkgIHRoZSBvbGQgZmlsZSB0byBpbmNsdWRlIHRoZSBuZXcgb25lIGZvciBjb21wYXRpYmlsaXR5LiAgVGhpcwoJICBzaG91bGQgcHJldmVudCB0aGUgbG9uZyBkZWxheXMgb2YgQ1Rlc3QgdHJhdmVyc2luZyB0aGUgd2hvbGUgdHJlZQoJICBsb29raW5nIGZvciBDVGVzdEN1c3RvbS5jdGVzdCBmaWxlcy4KCjIwMDctMDgtMzEgMTQ6MDcgIGFsZXgKCgkqIFV0aWxpdGllcy9LV1N0eWxlLzogQ01ha2VMaXN0cy50eHQsIENNYWtlTW9yZUNoZWNrcy5rd3MueG1sLmluOgoJICBTVFlMRTogYWRkIG1ha2VmaWxlIHRhcmdldCBNb3JlU3R5bGVDaGVja3MsIHdoaWNoIHJ1bnMgS1dTdHlsZQoJICB3aXRoIG1vcmUgY2hlY2tzIGVuYWJsZWQgYW5kIGNyZWF0ZXMgdGhlIGh0bWwgZmlsZXMuCgoJICBBbGV4CgoyMDA3LTA4LTMxIDEzOjQ1ICBhbGV4CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OgoJICBTVFlMRTogdGhlIHRlbXBvcmFyeSB2YXJpYWJsZSBpcyBub3QgbmVjZXNzYXJ5CgoJICBBbGV4CgoyMDA3LTA4LTMxIDEzOjQyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuaCwgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6CgkgIEVOSDogYWRkIHN1cHBvcnQgZm9yIEZvcnRyYW4gdG8gdGhlIEtEZXZlbG9wIGdlbmVyYXRvciAtbWlub3IKCSAgb3B0aW1pemF0aW9uIGZvciBHZXRMYW5ndWFnZUVuYWJsZWQoKQoKCSAgQWxleAoKMjAwNy0wOC0zMSAwOToxNCAga2luZwoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OiBCVUc6IEFub3RoZXIgc3BhY2UtaW4tcGF0aAoJICBmaXguCgoyMDA3LTA4LTMxIDA5OjA5ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeCBwYXRoIHRvIENNYWtlIGV4ZWN1dGFibGVzIHdoZW4gcnVuCgkgIGZyb20gYm9vdHN0cmFwIGJ1aWxkLgoKMjAwNy0wOC0zMCAxNjoyMyAgYWxleAoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6CgkgIFNUWUxFOiBhZGFwdCB0aGUgdGVzdCB0byB0aGUgY2hhbmdlIGZyb20gRklMRU5BTUUgdG8gRklMRSAtYWRkIGEKCSAgY2FsbCB0byB0aGUgRVhQT1JUKCkgY29tbWFuZAoKCSAgQWxleAoKMjAwNy0wOC0zMCAxNjoyMiAgYWxleAoKCSogU291cmNlLzogY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEV4cG9ydEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiByZW5hbWUgRklMRU5BTUUga2V5d29yZCB0byBGSUxFLCBiZWNhdXNlIEZJTEVOQU1FIGlzIHVzZWQKCSAgaW4gbm8gb3RoZXIgcGxhY2UKCgkgIEFsZXgKCjIwMDctMDgtMzAgMTM6MzUgIGFsZXgKCgkqIE1vZHVsZXMvOiBGaW5kUHl0aG9uSW50ZXJwLmNtYWtlLCBGaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgRU5IOiBhZGQgc3VwcG9ydCBmb3IgdGhlIG5leHQgcHl0aG9uIHJlbGVhc2UsIHB5dGhvbiAyLjYKCgkgIEFsZXgKCjIwMDctMDgtMzAgMTE6MzYgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiAiQnVpbGQgZmlsZSIgc3RpbGwgZG9lc24ndCB3b3JrLCBidXQgbm93IGl0IGlzIGF0IGxlYXN0IGEKCSAgYml0IGNsb3NlciwgaXQgbmVlZHMgc29tZSBtb3JlIHN1cHBvcnQgZnJvbSBDQgoKCSAgQWxleAoKMjAwNy0wOC0zMCAxMDoyNiAgYWxleAoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oOgoJICBTVFlMRTogYWRkIHRoZSB8IHRvIHRoZSBkb2NzCgoJICBBbGV4CgoyMDA3LTA4LTI5IDE2OjMyICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja0RlYkdlbmVyYXRvci5jeHg6CgkgIEJVRzogd29yayBpZiB0aGVyZSBhcmUgc3BhY2VzIGluIHRoZSBwYXRoIHRvIGNtYWtlCgoJICBBbGV4CgoyMDA3LTA4LTI5IDE2OjMxICBhbGV4CgoJKiBNb2R1bGVzL0NQYWNrUlBNLmNtYWtlOgoJICBFTkg6IGZhaWwgd2l0aCBlcnJvciBpZiB0cnlpbmcgdG8gY3JlYXRlIGEgUlBNIHN0YXRpbmcgdGhhdAoJICBycG1idWlsZCBjYW4ndCBoYW5kbGUgc3BhY2VzCgoJICBBbGV4CgoyMDA3LTA4LTI5IDE1OjE5ICBhbGV4CgoJKiBTb3VyY2UvY21FeHRyYUNvZGVCbG9ja3NHZW5lcmF0b3IuY3h4OgoJICBCVUc6IG1ha2UgcGF0aHMgd2l0aCBzcGFjZXMgd29yayBpbiBDb2RlQmxvY2tzIC1nY2MgaXMgYWx3YXlzIGdjYwoJICBhbmQgbm90IG1pbmd3CgoJICBBbGV4CgoyMDA3LTA4LTI5IDE0OjM1ICBhbGV4CgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBCVUc6IHRoaXMgc2VlbXMgdG8gZml4IHRoZSByZWdleHAKCSAgcmVzdWx0LXN0b3JhZ2UgcHJvYmxlbSwgbm93IGl0IHNlZW1zIHRoZSBhY3R1YWwgcmVzdWx0IGlzIHRvcmVkCgkgIGluc3RlYWQgb2YgIjEiICwgYXMgaXQgaGFwcGVuZWQgZm9yIFN0cmluZ0ZpbGVUZXN0IG9uIFdpbmRvd3MKCgkgIEFsZXgKCjIwMDctMDgtMjkgMTQ6MDUgIGFsZXgKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaDoKCSAgU1RZTEU6IGFkZCBkb2NzIGFib3V0IHRoZSBzdXBwb3J0ZWQgcmVnZXhwIGNoYXJhY3RlcnMgYW5kCgkgIENNQUtFX01BVENIXygwLi45KQoKCSAgQWxleAoKMjAwNy0wOC0yOSAxMjowMSAgYWxleAoKCSogVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWRkZWQgdGVzdHMgZm9yIHRoZSBDTUFLRV9NQVRDSF8oMC4uOSkgdmFyaWFibGVzLCB3aGljaCBnZXQKCSAgc2V0IGJ5IHJlZ2V4IG1hdGNoZXMgKFNUUklORyhSRUdFWCksIElGKE1BVENIRVMpKQoKCSAgQWxleAoKMjAwNy0wOC0yOSAxMTo1OCAgYWxleAoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oLCBjbVN0cmluZ0NvbW1hbmQuY3h4LAoJICBjbVN0cmluZ0NvbW1hbmQuaDoKCSAgRU5IOiBhbHNvIHN0b3JlIHRoZSBncm91cCBtYXRjaGVzIGZyb20gSUYoIE1BVENIRVMpIGluCgkgIENNQUtFX01BVENIXygwLi45KQoKCSAgQWxleAoKMjAwNy0wOC0yOSAxMTozMCAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBCVUc6IERvIG5vdCB3cml0ZSBzeW1ib2xpYyBtYWtlCgkgIGRlcGVuZGVuY2llcyBpbnRvIGRlcGVuZHMuaW50ZXJuYWwuCgoyMDA3LTA4LTI5IDEwOjEyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmg6CgkgIEVOSDogZG9uJ3QgaGFyZGNvZGUgZ2NjIC1wdXQgdGhlIGluY2x1ZGUgZGlycyBpbiB0aGUgcHJvamVjdCBmaWxlCgkgIHRvIGVuYWJsZSBhdXRvY29tcGxldGlvbiAtcHJlcGFyZSBmb3Igbm1ha2UKCgkgIEFsZXgKCjIwMDctMDgtMjggMTY6MjcgIGFsZXgKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDoKCSAgQ09NUDogZXhwbGljaXRlbHkgY2FzdCB0byBpbnQgdG8gc2lsZW5jZSB3YXJuaW5nIHdpdGggbXN2YzgKCgkgIEFsZXgKCjIwMDctMDgtMjggMTY6MTkgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6CgkgIEVOSDogYWRkIGZsYWcgc28gYSB0ZXJtaW5hdGluZyBzbGFzaCBmb3IgdGhlIGxpbmsgcGF0aCBjYW4gYmUKCSAgc3BlY2lmaWVkIChuZWVkZWQgYnkgdGhlIERpZ2l0YWwgTWFycyBEIGNvbXBpbGVyKQoKCSAgQWxleAoKMjAwNy0wOC0yOCAxNToxMyAgYWxleAoKCSogU291cmNlL2NtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IGFkZCBsaW5rcyB0byBkb2NzCgoJICBBbGV4CgoyMDA3LTA4LTI4IDEzOjQ2ICBhbGV4CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmN4eDoKCSAgU1RZTEU6IGZpeCB0eXBvCgoJICBBbGV4CgoyMDA3LTA4LTI4IDExOjAyICBhbGV4CgoJKiBDTWFrZUxpc3RzLnR4dDoKCSAgQ09NUDogZW5hYmxlIFJQQVRIIGlmIGFueSBvZiB0aGUgQ01BS0VfVVNFX1NZU1RFTV9YWFggdmFyaWFibGVzCgkgIGlzIGVuYWJsZWQgb3IgaWYgdGhlIGN1cnNlcyBsaWJyYXJ5IGlzIG5laXRoZXIgaW4gL2xpYiBub3IgaW4KCSAgL3Vzci9saWIgLiBUaGlzIG1ha2VzIGl0IGJ1aWxkIG9uIE5ldEJTRC4gRm9yIG1vcmUgY29tbWVudHMgc2VlCgkgIENNYWtlTGlzdHMudHh0CgoJICBBbGV4CgoyMDA3LTA4LTI4IDEwOjU5ICBhbGV4CgoJKiBUZXN0cy9Tb3VyY2VHcm91cHMvOiBDTWFrZUxpc3RzLnR4dCwgbWFpbi5jOgoJICBDT01QOiBlbmFibGUgQU5TSSBDLCB0aGlzIHNob3VsZCBtYWtlIGl0IHdvcmsgd2l0aCB0aGUgSFAtVVgKCSAgY29tcGlsZXIKCgkgIEFsZXgKCjIwMDctMDgtMjggMTA6NTIgIGFsZXgKCgkqIE1vZHVsZXMvOiBDaGVja0NTb3VyY2VSdW5zLmNtYWtlLCBDaGVja0NYWFNvdXJjZVJ1bnMuY21ha2U6CgkgIEVOSDogdXNlIHRoZSBzYW1lIENNQUtFX1NLSVBfUlBBVEggc2V0dGluZyBpbgoJICBDSEVDS19DL0NYWF9TT1VSQ0VfUlVOUyBhcyBpbiB0aGUgbWFpbiBwcm9qZWN0LiBJIHRoaW5rIGl0CgkgIGRvZXNuJ3QgbWFrZSBzZW5zZSBpZiBhIHByb2plY3QgZGlzYWJsZXMgUlBBVEgsIHVzZXMKCSAgQ0hFQ0tfQ19TT1VSQ0VfUlVOUygpIHRvIHNlZSBpZiBzb21ldGhpbmcgaXMgYWJsZSB0byBydW4sIGFuZAoJICB0aGlzIHN1Y2NlZWRzIGJlY2F1c2UgaXQgaGFzIGJlZW4gYnVpbHQgd2l0aCBSUEFUSCwgYnV0IGFuCgkgIGV4ZWN1dGFibGUgYnVpbHQgd2l0aGluIHRoZSBwcm9qZWN0IHdvbid0IGJlIGFibGUgdG8gcnVuIHNpbmNlIGl0CgkgIGhhcyBiZWVuIGJ1aWx0IHdpdGhvdXQgUlBBVEguCgoJICBBbGV4CgoyMDA3LTA4LTI4IDA4OjM2ICBhbGV4CgoJKiBUZXN0cy9Tb3VyY2VHcm91cHMvbWFpbi5jOgoJICBDT01QOiBtYXliZSBpdCBjb21waWxlcyB0aGlzIHdheSB3aXRoIHRoZSBIUC1VWCBjb21waWxlcgoKCSAgQWxleAoKMjAwNy0wOC0yNyAyMzoxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTI3IDE3OjA1ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oOiBCVUc6IGZpeCAjNTMyNjogc291cmNlIGZpbGVzIHdpdGgKCSAgdGhlIHNhbWUgbmFtZSBpbiBkaWZmZXJlbnQgZ3JvdXBzIGxlYWQgdG8gY29sbGlkaW5nIG9iamVjdCBmaWxlCgkgIG5hbWVzCgoJICBBbGV4CgoyMDA3LTA4LTI3IDE2OjA1ICBhbGV4CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBhZGQgdGVzdCBmb3IgaW5zdGFsbGluZyBhIGhlYWRlciBtYXJrZWQgYXMgUFVCTElDX0hFQURFUiBvZgoJICBhIGxpYnJhcnkKCgkgIEFsZXgKCjIwMDctMDgtMjcgMTY6MDQgIGFsZXgKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtSW5zdGFsbENvbW1hbmQuaCwKCSAgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmg6CgkgIEVOSDogYWRkIGluc3RhbGwgZmlsZXMgZ2VuZXJhdG9ycyBmb3IgdGFyZ2V0cyB3aGljaCBoYXZlCgkgIFBVQkxJQ19IRUFERVIsIFBSSVZBVEVfSEVBREVSIG9yIFJFU09VUkNFX0ZJTEVTIHByb3BlcnR5LCB1c2UgdGhlCgkgIGRlc3RpbmF0aW9uIGZvciB0aGUgcHVibGljIGhlYWRlcnMgYXMgaW5jbHVkZSBkaXJlY3RvcnkgcHJvcGVydHkKCSAgZm9yIGV4cG9ydGVkIGxpYnJhcmllcwoKCSAgQWxleAoKMjAwNy0wOC0yNyAxNToxNSAgYWxleAoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6CgkgIENPTVA6IGFkZCBhIHRlc3QgZm9yIGV4cG9ydGluZyBhbmQgaW1wb3J0aW5nIHRhcmdldHMKCgkgIEFsZXgKCjIwMDctMDgtMjcgMTQ6NDQgIGFsZXgKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OgoJICBDT01QOiB0aGUgU2ltcGxlSW5zdGFsbCB0ZXN0IGFsc28gc3VjY2VlZHMgb24gdGhlIE1hYywgc28gbWF5YmUKCSAgQW5keXMgY29tbWVudCBpcyBub3QgdmFsaWQgYW55bW9yZQoKCSAgQWxleAoKMjAwNy0wOC0yNyAxNDoxNyAgYWxleAoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgU291cmNlR3JvdXBzL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IGFkZCB0aGUgc291cmNlX2dyb3VwKCkgZGVtbyB0byB0aGUgdGVzdHMKCgkgIEFsZXgKCjIwMDctMDgtMjcgMTM6MjMgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHg6CgkgIENPTVA6IGRpc2FibGUgbm1ha2Ugc3VwcG9ydCB1bnRpbCBzb21lYm9keSB0ZXN0cyBpdAoKCSAgQWxleAoKMjAwNy0wOC0yNyAwOTowMSAgYWxleAoKCSogTW9kdWxlcy9GaW5kQ3Vyc2VzLmNtYWtlLCBTb3VyY2UvQ3Vyc2VzRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNTdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2NtRm9ybUNvbmZpZ3VyZS5oLmluLAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vZm9ybS5oOgoJICBDT01QOiBtYWtlIGl0IGJ1aWxkIG9uIE5ldEJTRCwgd2hpY2ggaGFzIHNlcGFyYXRlIGN1cnNlcyBhbmQKCSAgbmN1cnNlcywgc28gaXQgaGFzIHRvIGJlIGRldGVjdGVkIHRoYXQgY3Vyc2VzIGlzbid0IGdvb2QgZW5vdWdoLAoJICBidXQgbmN1cnNlcyBpcywgYW5kIHRoYXQgbmN1cnNlcy5oIGluc3RlYWQgb2YgY3Vyc2VzLmggaXMKCSAgaW5jbHVkZWQKCgkgIEFsZXgKCjIwMDctMDgtMjcgMDg6NDkgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogcmVtb3ZlIHVudXNlZCB2YXJpYWJsZQoKCSAgQWxleAoKMjAwNy0wOC0yNiAyMzoyMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTI2IDE5OjI3ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5oOgoJICBFTkg6IGFkZCBhbGwgc3ViZGlycyBvZiB0aGUgcHJvamVjdCB0byB0aGUga2RldmVsb3AgYmxhY2tsaXN0LCBzbwoJICBrZGV2ZWxvcCBkb2Vzbid0IHdhdGNoIHRoZXNlIGRpcnMgZm9yIGFkZGVkIG9yIHJlbXZlZCBmaWxlcwoJICBldmVyeXRpbWUgaXQgaXMgc3RhcnRlZAoKCSAgQWxleAoKMjAwNy0wOC0yNiAwMzoyOSAgYWxleAoKCSogTW9kdWxlcy9GaW5kS0RFNC5jbWFrZToKCSAgQlVHOiBLREVESVJTIGNvbnRhaW5zIHRoZSBrZGUgaW5zdGFsbCBsb2NhdGlvbnMsIG5vdCB0aGUgYmluYXJ5CgkgIGRpcnMsIHNvIG1ha2UgS0RFRElSUyBhY3R1YWxseSB3b3JrIGluIEZpbmRLREU0LmNtYWtlCgoJICBBbGV4CgoyMDA3LTA4LTI2IDAzOjE3ICBhbGV4CgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6CgkgIENPTVA6IHBhcmVudCBpcyBub3QgdXNlZCBhbnltb3JlIHdpdGggdGhpcyBwYXRjaCwgc2luY2Ugbm93IHRoZQoJICBuYW1lIGlzIGdpdmVuIGFzIGEgdmVjdG9yIG9mIGNvbXBvbmVudHMKCgkgIEFsZXgKCjIwMDctMDgtMjYgMDI6NDIgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFBrZ0NvbmZpZy5jbWFrZToKCSAgU1RZTEU6IGZpeCB0eXBvCgoJICBBbGV4CgoyMDA3LTA4LTI1IDIzOjM3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMjQgMjM6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0yNCAxNDozOSAgYWxleAoKCSogVGVzdHMvU291cmNlR3JvdXBzLzogQ01ha2VMaXN0cy50eHQsIGJhei5jLCBtYWluLmM6IEJVRzogZGVtbwoJICAobm90IHJlYWxseSB0ZXN0KSBmb3IgdGhlIHNvdXJjZV9ncm91cCgpIGNvbW1hbmQKCgkgIEFsZXgKCjIwMDctMDgtMjQgMTQ6MjcgIGFsZXgKCgkqIFNvdXJjZS86IGNtSW5zdGFsbENvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kQXJndW1lbnRzLmN4eCwKCSAgY21JbnN0YWxsQ29tbWFuZEFyZ3VtZW50cy5oOgoJICBTVFlMRTogZml4IE1TVkMgd2FybmluZ3MgYnkgbWFraW5nIHRoZSBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIgYQoJICBtZW1iZXIgb2YgY21JbnN0YWxsQ29tbWFuZEFyZ3VtZW50cyBpbnN0ZWFkIG9mIGRlcml2aW5nIGZyb20gaXQKCgkgIEFsZXgKCjIwMDctMDgtMjQgMTQ6MjEgIGFsZXgKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtU291cmNlR3JvdXAuY3h4LAoJICBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6IEJVRzogZml4ICM0MDU3ICh3aGljaCBoYWQgc2V2ZXJhbAoJICBkdXBsaWNhdGVzKTogaGFuZGxlIHJlY3Vyc2l2ZXcgc291cmNlIGdyb3VwcyBiZXR0ZXIsIGkuZS4KCSAgbXVsdGlwbGUgc291cmNlZ3JvdXBzIHdpdGggdGhlIHNhbWUgZW5kIGNvbXBvbmVudCB3b3JrIG5vdwoKCSAgQWxleAoKMjAwNy0wOC0yNCAxMzozMCAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgVGVzdHMvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0J1bmRsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1bmRsZVRlc3QvQnVuZGxlU3ViRGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9GcmFtZXdvcmsvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIEluc3RhbGxOYW1lRml4dXBQYXRoIHRvCgkgIHN1cHBvcnQgaW5zdGFsbGluZyBidWlsdCBmcmFtZXdvcmtzIG9uIHRoZSBNYWMuIENoYW5nZQoJICBBcHBsaWNhdGlvbiB0byBBcHBsaWNhdGlvbnMgaW4gdGhlIEJ1bmRsZVRlc3QuIEFsc28gY29ycmVjdCBzbWFsbAoJICB0eXBvICh0Y2wtPlRjbCkgbm90ZWQgaW4gYnVnIDQ1NzIuCgoyMDA3LTA4LTI0IDEwOjU4ICBhbGV4CgoJKiBTb3VyY2UvY21Tb3VyY2VHcm91cENvbW1hbmQuY3h4OiBCVUc6IGhhbmRsZSBzb3VyY2VfZ3JvdXAgbmFtZXMKCSAgd2hpY2ggY29uc2lzdCBvbmx5IG9mIHRoZSBkZWxpbWl0ZXIgdGhlIHNhbWUgd2FzIGFzIGVtcHR5IHNvdXJjZQoJICBncm91cCBuYW1lcwoKCSAgQWxleAoKMjAwNy0wOC0yNCAxMDozOSAgYWxleAoKCSogVGVzdHMvU291cmNlR3JvdXBzLzogQ01ha2VMaXN0cy50eHQsIGJhci5jLCBmb28uYywgbWFpbi5jLAoJICBzdWIxL2Zvby5jLCBzdWIxL2Zvb2Jhci5jOgoJICBFTkg6IGFkZCB0ZXN0IGZvciBzb3VyY2VfZ3JvdXAKCgkgIEFsZXgKCjIwMDctMDgtMjQgMDg6NTUgIGFsZXgKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eDoKCSAgRU5IOiB1c2UgY21Db21tYW5kQXJndW1lbnRIZWxwZXIgZm9yIElOU1RBTEwoVEFSR0VUUywgRklMRVMsCgkgIFBST0dSQU1TLCBFWFBPUlRTKSwgc2F2ZXMgYSBsb3Qgb2YgY29kZS4gSU5TVEFMTChESVJFQ1RPUlkpIGlzCgkgIHN0aWxsIGRvbmUgdGhlIG9sZCB3YXksIHNpbmNlIHRoaXMgc2VlbXMgdG8gYmUgcXVpdGUgY29tcGxpY2F0ZWQKCSAgLWZvciBJTlNUQUxMKFRBUkdFVFMgKTogYWxzbyBwYXJzZSBQVUJMSUNfSEVBREVSLCBQUklWQVRFX0hFQURFUiwKCSAgUkVTT1VSQ0UKCgkgIEFsZXgKCjIwMDctMDgtMjQgMDg6NDAgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGb3JjZUNvbXBpbGVyLmNtYWtlOgoJICBTVFlMRTogZml4IHR5cG8gaW4gdGhlIGRvY3MKCgkgIEFsZXgKCjIwMDctMDgtMjMgMjM6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0yMyAxNjoxNCAgYWxleAoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtSW5zdGFsbENvbW1hbmRBcmd1bWVudHMuY3h4LAoJICBjbUluc3RhbGxDb21tYW5kQXJndW1lbnRzLmg6CgkgIEVOSDogY2xhc3MgZm9yIHBhcnNpbmcgdGhlIGFyZ3VtZW50cyBmb3IgSU5TVEFMTCgpCgoJICBBbGV4CgoyMDA3LTA4LTIzIDE2OjEzICBhbGV4CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIuaDoKCSAgRU5IOiBhZGQgc3VwcG9ydCBmb3IgYSBkZWZhdWx0IHZhbHVlLCBmaXggY2FzZSB3aGVuIHRoZXJlIGlzIG5vCgkgIGl0ZW0gZXhjZXB0IHRoZSBvd24gZ3JvdXAKCgkgIEFsZXgKCjIwMDctMDgtMjIgMjM6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0yMiAxMTozMiAgZGF2aWQuY29sZQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUluc3RhbGxDb21tYW5kLmN4eCwgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmg6IEVOSDogSGFuZGxlIEZSQU1FV09SSyBhbmQgQlVORExFCgkgIGFyZ3VtZW50cyBpbiB0aGUgSU5TVEFMTCBUQVJHRVRTIGNvbW1hbmQuIFdvcmsgaW4gcHJvZ3Jlc3MuLi4KCSAgTW9yZSB0byBjb21lLgoKMjAwNy0wOC0yMiAwOToyNSAgYWxleAoKCSogU291cmNlL2t3c3lzL1JlZ3VsYXJFeHByZXNzaW9uLmh4eC5pbjoKCSAgQlVHOiBpZiB0aGVyZSBpcyBubyBtYXRjaCwgZG9uJ3QgY29uc3RydWN0IHRoZSBzdGwgc3RyaW5nIGZyb20gYQoJICBOVUxMIHBvaW50ZXIKCgkgIEFsZXgKCjIwMDctMDgtMjEgMjM6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0yMSAxNjo1MSAgYWxleAoKCSogTW9kdWxlcy9Vc2VRdDQuY21ha2U6CgkgIEVOSDogc3VwcG9ydCBRdFNjcmlwdAoKCSAgQWxleAoKMjAwNy0wOC0yMSAxNjo1MCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOgoJICBFTkg6IHN1cHBvcnQgUXRTY3JpcHQgKHNpbmNlIFF0IDQuMyksICM0NjMyCgoJICBBbGV4CgoyMDA3LTA4LTIxIDE2OjIyICBhbGV4CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBtb3JlIHNwYWNlIGluIHRoZSBjbWFrZV9pbnN0YWxsLmNtYWtlIHNjcmlwdCAoZWFzaWVyIHRvCgkgIHJlYWQpCgoJICBBbGV4CgoyMDA3LTA4LTIxIDE2OjIxICBhbGV4CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgRkxUS0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBGTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4LAoJICBGTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUxpc3QuY3h4OgoJICBDT01QOiBtYWtlIGl0IGJ1aWxkIG9uIExpbnV4CgoJICBBbGV4CgoyMDA3LTA4LTIxIDE1OjMwICBhbGV4CgoJKiBTb3VyY2Uva3dzeXMvR2xvYi5jeHg6CgkgIEJVRzogZml4IHNlZ2ZhdWx0IGlmIEZpbmRGaWxlcygpIGlzIGNhbGxlZCB3aXRob3V0IGFjdHVhbCBtYXRjaAoJICBwYXR0ZXJuIChlLmcuIEZJTEUoR0xPQiAvdXNyL2luY2x1ZGUpIGluc3RlYWQgb2YgRklMRShHTE9CCgkgIC91c3IvaW5jbHVkZS8qICkgIzQ2MjAKCgkgIEFsZXgKCjIwMDctMDgtMjEgMTM6NDcgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBhbHNvIGNoZWNrIGZvciAuaHBwIGFuZCAuY3h4IGZpbGVzCgoJICBBbGV4CgoyMDA3LTA4LTIxIDEyOjM0ICBhbGV4CgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmg6CgkgIENPTVA6IGhlYWRlciB3YXMgbWlzc2luZy4uLgoKCSAgQWxleAoKMjAwNy0wOC0yMSAxMjozMSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBmaXggbGVhawoKMjAwNy0wOC0yMSAxMTozMCAgYWxleAoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHg6CgkgIEVOSDogc3RvcmUgdGhlIG1hdGNoZXMgZm9yIHBhcmVuLWRlbGltaXRlZCBzdWJleHByZXNzaW9uIGluCgkgIENNQUtFX01BVENIX1swLi45XSB2YXJpYWJsZXMsIHNvIHRvIGdldCBtdWx0aXBsZSBzdWJleHByZXNzaW9ucwoJICBmcm9tIG9uZSBzdHJpbmcgU1RSSU5HKFJFR0VYIE1BVENIKSBoYXMgdG8gYmUgZXhlY3V0ZWQgb25seSBvbmNlCgoJICBBbGV4CgoyMDA3LTA4LTIxIDEwOjU2ICBhbGV4CgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmg6CgkgIFNUWUxFOiBmaXggZG9jdW1lbnRhdGlvbiBmb3IgU1RSSU5HKFJFUExBQ0UpICM1NTM2CgoJICBBbGV4CgoyMDA3LTA4LTIwIDIzOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMjAgMTY6NTkgIGFsZXgKCgkqIFNvdXJjZS86IGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IGFkZCBzb21lIG5ld2xpbmVzIHRvIGNtYWtlX2luc3RhbGwuY21ha2UsIHNvIGl0J3MgZWFzaWVyCgkgIHRvIHJlYWQgLW1vdmUgdGhlIGFycmF5IGJlaGluZCB0aGUgaWYsIGl0J3MgdW51c2VkIGJlZm9yZSBpdAoKCSAgQWxleAoKMjAwNy0wOC0yMCAxMTowMyAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBTVFlMRTogRml4IGxpbmUgbGVuZ3RoIHN0eWxlCgkgIGVycm9ycyBpbnRyb2R1Y2VkIGxhc3Qgd2Vlay4KCjIwMDctMDgtMjAgMDg6NDkgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHg6CgkgIEVOSDogYWxzbyBwcm9jZXNzICJ+IiBhbmQgcGF0aHMgcmVsYXRpdmUgdG8KCSAgQ01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSIGluIEZvb19ESVIKCgkgIEFsZXgKCjIwMDctMDgtMTkgMjM6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0xOCAyMzoxNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTE3IDIzOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMTcgMTA6NDEgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQmx1ZUdlbmVMLmNtYWtlOgoJICBDT01QOiBhbHNvIHVzZSAtV2wsLXJlbGF4IGFuZCAtbGMgLWxuc3MgZXRjLiB3aGVuIHVzaW5nIHRoZSBJQk0KCSAgY29tcGlsZXIKCgkgIEFsZXgKCjIwMDctMDgtMTcgMTA6MTQgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIENPTVA6IGluY2x1ZGUgd2luZG93cy5oIGZpcnN0LCBhcyBpdCBpcyBkb25lIGluIHRoZSBvdGhlciBzb3VyY2UKCSAgZmlsZXMKCgkgIEFsZXgKCjIwMDctMDgtMTcgMTA6MDUgIGFsZXgKCgkqIFNvdXJjZS86IGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5oOgoJICBFTkg6IHBhdGNoIGZyb20gTWlndWVsIC0gY2xlYW5pbmcgdXAgYSBiaXQ6IHN0YXRpYyBoZWxwZXIKCSAgZnVuY3Rpb25zLCByZW1vdmUgdW51c2VkIHNjYW5uZXIgcHJvZmlsZXMsIHJlbW92ZSB1bnVzZWQKCSAgdmFyaWFibGVzLCBldGMuICAtIGNvcnJlY3QgPG5hbWU+IGVudHJ5IGluIC5wcm9qZWN0IGZpbGUgLQoJICBjb252ZXJ0cyB0aGUgbWFrZSBjb21tYW5kIGFuZCBvdGhlciBwYXRocyBvYnRhaW5lZCBmcm9tIGN5Z3dpbgoJICBjbWFrZSB0byB3aW5kb3dzIHN0eWxlIHBhdGhzIC0gcHJvdmlkZSBlbnZpcm9ubWVudCBzZXR1cCBmb3IKCSAgY29tcGlsaW5nIHdpdGggbm1ha2UgLSBjcmVhdGUgbGlua2VkIHJlc291cmNlcyBhbmQgcGF0aCBlbnRyaWVzCgkgIGZvciBleGVjdXRhYmxlL2xpYnJhcnlfb3V0cHV0X3BhdGgncyBub3Qgc3ViZGlycyBvZiBiaW5hcnkgcGF0aCAtCgkgIGZpeGVzIGluY29ycmVjdCBleGNsdXNpb25zIG9mIG91dHB1dCBkaXJzIHdoZW4gbmFtZWQgdGhlIHNhbWUgYXMKCSAgc291cmNlIGRpciAtIGV4Y2x1ZGVzIHRoZSBDTWFrZUZpbGVzIHN1YmRpcnMgZnJvbSB0aGUgZGlyZWN0b3JpZXMKCSAgdG8gc2NhbiBmb3Igb3V0cHV0IHRhcmdldHMgLSByZW1vdmVzIHBvc3NpYmxlIHJlZHVuZGFudCBlbnRyaWVzCgkgIGluIDxwYXRoZW50cnkgaW5jbHVkZSAuLi4+IC0gYWRkcyB0aGUgYWxsIGFuZCBwcmVpbnN0YWxsIHRhcmdldHMKCSAgdG8gdGhlIHRhcmdldCBsaXN0IC0gcmVtb3ZlcyB0aGUgbGlua2VkIHJlc291cmNlcyBmb3Igbm9uCgkgIG91dC1vZi1zb3VyY2UgYnVpbGRzIGFuZCBjb25mbGljdGluZyBkaXJzCgoJICBBbGV4CgoyMDA3LTA4LTE3IDA5OjMzICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrUlBNR2VuZXJhdG9yLmN4eCwgY21DUGFja1JQTUdlbmVyYXRvci5oOgoJICBTVFlMRTogSW5pdGlhbGl6ZUludGVybmFsKCkgaXMgdW51c2VkCgoJICBBbGV4CgoyMDA3LTA4LTE3IDA5OjEzICBhbGV4CgoJKiBNb2R1bGVzL0NQYWNrUlBNLmNtYWtlLCBTb3VyY2UvQ1BhY2svY21DUGFja1JQTUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUlBNR2VuZXJhdG9yLmg6CgkgIEVOSDogcGF0Y2ggZnJvbSBFcmljIE5vdWxhcmQgZm9yIGFuIFJQTSBwYWNrYWdlIGdlbmVyYXRvciBJdAoJICBzZWVtcyBycG1idWlsZCBjYW4ndCBoYW5kbGUgcGF0aHMgd2l0aCBzcGFjZXMsIGl0IGNvbXBsYWlucyB0aGF0CgkgIEJ1aWxkcm9vdCB0YWtlcyBvbmx5IG9uZSB0YWcgKG9yIHNvbWV0aGluZyBsaWtlIHRoaXMpLCBxdW90aW5nCgkgIGFuZCBlc2NhcGluZyBkb24ndCBzZWVtIHRvIGhlbHAuCgoJICBBbGV4CgoyMDA3LTA4LTE3IDA5OjAwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogRU5IOiB1c2UgdGhlIGNvcnJlY3QgZmxhZyBmb3IgdGhlCgkgIGxpbmtlcgoKMjAwNy0wOC0xNiAyMzoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTE2IDE2OjUwICBhbGV4CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBxdWljayB3aW5kb3dzIG5hbWUgbWFuZ2xpbmcKCSAgZml4IChvdGhlcndpc2UgdGhlIGNvbXBpbGVyIGNvbXBsYWlucyBhYm91dAoJICBjbU1ha2VmaWxlOjpHZXRDdXJyZW50RGlyZWN0b3J5QSgpLCB3aGljaCBkb2Vzbid0IGV4aXN0KQoKCSAgQWxleAoKMjAwNy0wOC0xNiAxNTozMyAgYWxleAoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oOgoJICBFTkg6IG1vdmUgdGhlIGNvZGUgZm9yIHRoZSBOT1RGT1VORCBjaGVja2luZyBpbnRvIGl0cyBvd24KCSAgZnVuY3Rpb24sIHNvIENvbmZpZ3VyZSgpIGdldHMgZWFzaWVyIHRvIG92ZXJ2aWV3IC1pbXByb3ZlIHRoZQoJICBlcnJvciBtZXNzYWdlLCBub3cgaXQgYWxzbyBzYXlzIGluIHdoaWNoIGRpcmVjdG9yaWVzIGFuZCBmb3IKCSAgd2hpY2ggdGFyZ2V0cyB0aGUgbWlzc2luZyB2YXJpYWJsZXMgYXJlIHVzZWQgLW1pbm9yIHNwZWVkdXA6IHRoZQoJICBpbmNsdWRlIGRpcmVjdG9yaWVzIGRvbid0IGhhdmUgdG8gYmUgY2hlY2tlZCBwZXIgdGFyZ2V0LCBwZXIKCSAgZGlyZWN0b3J5IGlzIGVub3VnaAoKCSAgQWxleAoKMjAwNy0wOC0xNiAxNTowMyAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgU1RZTEU6IHRoaXMgd2Fzbid0IGludGVuZGVkIHRvIGJlIGNvbW1pdHRlZAoKCSAgQWxleAoKMjAwNy0wOC0xNiAxNTowMiAgYWxleAoKCSogTW9kdWxlcy86IEZpbmRQeXRob25MaWJzLmNtYWtlLCBQbGF0Zm9ybS9CbHVlR2VuZUwuY21ha2U6CgkgIEVOSDogYWRkIC1XbCwtcmVsYXggdG8gdGhlIGRlZmF1bHQgbGlua2VyIGZsYWdzIGZvciBCbHVlR2VuZSwKCSAgb3RoZXJ3aXNlIHlvdSBjYW4gZ2V0ICJyZWxvY2F0aW9uIHRydW5jYXRlZCB0byBmaXQiIGVycm9ycwoKCSAgQWxleAoKMjAwNy0wOC0xNiAxMDoxNCAga2luZwoKCSogRGFydExvY2FsLmNvbmYuaW46IEVOSDogQWRkZWQgZGFzaDF3aW45OCBleHBlY3RlZCBuaWdodGx5LgoKMjAwNy0wOC0xNiAwOToyMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2U6IEVOSDogbWFrZSBzdXJlIG9zeCBzZWFyY2hlcyBzdGF0aWMKCSAgYW5kIHNoYXJlZCBsaWJzIGxpa2Ugb3RoZXIgcGxhdGZvcm1zCgoyMDA3LTA4LTE2IDA4OjM3ICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtL0dlbmVyaWMtU0RDQy1DLmNtYWtlOgoJICBDT01QOiBmaXggYXJndW1lbnRzCgoJICBBbGV4CgoyMDA3LTA4LTE2IDA3OjM4ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IERpcmVjdG9yeS5oeHguaW4sIEdsb2IuaHh4LmluOiBDT01QOiBEaXJlY3RvcnkgYW5kCgkgIEdsb2IgaGF2ZSBwb2ludGVyIGRhdGEgbWVtYmVycwoKMjAwNy0wOC0xNSAyMzowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTE1IDE0OjI2ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsIENNYWtlRmluZEJpblV0aWxzLmNtYWtlLAoJICBDTWFrZVN5c3RlbS5jbWFrZS5pbiwgQ01ha2VTeXN0ZW1XaXRoVG9vbGNoYWluRmlsZS5jbWFrZS5pbjoKCSAgU1RZTEU6IGRvbid0IHVzZSBhbiBleHRyYSBmaWxlIHRvIGdlbmVyYXRlIENNYWtlU3lzdGVtLmNtYWtlIGJ1dAoJICBpbnN0ZWFkIGNvbmZpZ3VyZSB0aGUgdG9vbGNoYWluIGZpbGUgaW50byBpdCBpZiByZXF1aXJlZCAtYWxzbwoJICBzZWFyY2ggZm9yIG5tLCBvYmpkdW1wIGFuZCBvYmpjcHksIHNvIHRoZXNlIGNhbiBiZSB1c2VkIGluIG1hY3JvcwoKCSAgQWxleAoKMjAwNy0wOC0xNSAxNDoyMiAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9HZW5lcmljLVNEQ0MtQy5jbWFrZToKCSAgU1RZTEU6IGV4cGxpY2l0ZWx5IHNldCBkZWZhdWx0IG9wdGlvbnMgZm9yIHNkY2MsIHNvIGl0IGlzIHZpc2libGUKCSAgZm9yIHdoaWNoIHByb2Nlc3NvciBpdCBjdXJyZW50bHkgY29tcGlsZXMsIHVzZSAtLW91dC1mbXQtaWh4IHRvCgkgIGVuZm9yY2UgLmloeCBmaWxlcwoKCSAgQWxleAoKMjAwNy0wOC0xNSAxMTozOCAgZGF2aWQuY29sZQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oLmluOiBDT01QOiBTZWNvbmQgdHJ5CgkgIGdldHRpbmcgcmlkIG9mIE1pY3Jvc29mdCBkZXByZWNhdGlvbiB3YXJuaW5ncy4gVGhpcyB0aW1lIHRlc3RlZAoJICBmcm9tIEtXU3R5bGUgd2l0aCB2czggdG8gbWFrZSBzdXJlIHRoZSB3YXJuaW5ncyBhcmUgcmVhbGx5IGdvbmUuCgkgIFJlbW92ZSB0aGUgZGVwcmVjYXRpb24gZGVmcyBmcm9tIENNYWtlTGlzdHMgYW5kIGd1YXJkIHRoZSBkZWZzIGluCgkgIHRoZSBoZWFkZXIgc28gd2UgZG8gbm90IHJlZGVmaW5lIHRoZW0gaWYgdGhleSBhcmUgYWxyZWFkeQoJICBkZWZpbmVkLgoKMjAwNy0wOC0xNSAxMDoyNiAgYWxleAoKCSogU291cmNlL2NtTGlzdENvbW1hbmQuY3h4LCBTb3VyY2UvY21MaXN0Q29tbWFuZC5oLAoJICBUZXN0cy9DTWFrZVRlc3RzL0xpc3RUZXN0LmNtYWtlLmluOgoJICBFTkg6IGNoYW5nZSBMSVNUKENPTlRBSU5TIC4uLikgVE8gTElTVChGSU5EIC4uLiksIHdoaWNoIHJldHVybnMKCSAgdGhlIGluZGV4IGFuZCB3aGljaCBpcyBtb3JlIHVzZWZ1bCwgYmVjYXVzZSB0aGVuIHlvdSBjYW4gYWxzbwoJICBhY2Nlc3MgdGhlIGl0ZW0gYmVoaW5kIHRoZSBvbmUgeW91IHdlcmUgbG9va2luZywgdXNlZnVsIGZvcgoJICB3cml0aW5nIG1hY3JvcyB3aXRoIG9wdGlvbmFsIGtleXdvcmRzIHdpdGggcGFyYW1ldGVycwoKCSAgQWxleAoKMjAwNy0wOC0xNSAwOTo0MyAgYWxleAoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvRmluZEN1cnNlcy5jbWFrZToKCSAgQ09NUDogY2NtYWtlIHJlcXVpcmVzIG5jdXJzZXMsIGFjY29yZGluZyB0byBCZXJrIGFuZCBzaW5jZSBpdAoJICBkb2Vzbid0IGJ1aWxkIG9uIE5ldEJTRCB3aGVyZSB0aGVyZSBhcmUgc2VwYXJhdGUgY3Vyc2VzIGFuZAoJICBuY3Vyc2VzIGxpYnJhcmllcywgYW5kIHdoZXJlIHRoZSBjdXJzZXMgbGlicmFyeSBpcyBmb3VuZCwgd2hpY2gKCSAgZG9lc24ndCB3b3JrIGZvciBjY21ha2Ugd2hpbGUgdGhlIGV4aXN0aW5nIG5jdXJzZXMgbGlicmFyeSB3b3VsZAoJICB3b3JrLiAgV2l0aCB0aGlzIGNoYW5nZSBpdCBzaG91bGQgYmUgcG9zc2libGUgdG8gdGVzdCB3aGV0aGVyIHRoZQoJICBmb3VuZCBjdXJzZXMgbGliIHByb3ZpZGVzIG5jdXJzZXMgZnVuY3Rpb25hbGl0eS4KCgkgIEFsZXgKCjIwMDctMDgtMTUgMDk6MjUgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9Db25maWd1cmUuaC5pbjogQ09NUDogU3VwcHJlc3MgTWljcm9zb2Z0IGRlcHJlY2F0aW9uCgkgIHdhcm5pbmdzIHdoZW4gYnVpbGRpbmcga3dzeXMgLmMgYW5kIC5jeHggZmlsZXMuIFRoaXMgd2F5LCBvdGhlcgoJICBwcm9qZWN0cyB0aGF0IGluY2x1ZGUga3dzeXMgd2lsbCBub3Qgc2VlIHRoZSB3YXJuaW5ncyBpbiBrd3N5cyAuYwoJICBhbmQgLmN4eCBmaWxlcywgYnV0IHRoZXkgY2FuIHN0aWxsIHNlZSB0aGUgd2FybmluZ3MgaW4gdGhlaXIgb3duCgkgIHNvdXJjZSBmaWxlcyBpZiB0aGV5IHdhbnQgdG8uLi4KCjIwMDctMDgtMTUgMDg6NDcgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogZml4IHdhcm5pbmcgYWJvdXQgY29tcGFyaXNvbiBzaWduZWQgLSB1bnNpZ25lZAoKCSAgQWxleAoKMjAwNy0wOC0xNSAwODoyOCAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OgoJICBDT01QOiBmaXggYnVpbGQgb24gSFBVWCwgc25wcmludGYgYXBwYXJlbnRseSBkb2Vzbid0IHdvcmsgdGhlcmUKCgkgIEFsZXgKCjIwMDctMDgtMTQgMjM6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0xNCAxNDoxMiAgZGF2aWQuY29sZQoKCSogU291cmNlLzogY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5oOiBFTkg6IEltcHJvdmUgZnJhbWV3b3JrCgkgIHN1cHBvcnQgaW4gdGhlIG1ha2VmaWxlIGdlbmVyYXRvciB0byBtYXRjaCB0aGUgc3VwcG9ydCBqdXN0IGFkZGVkCgkgIHRvIHRoZSBYY29kZSBnZW5lcmF0b3IuIEJVRzogUmVtb3ZlIHNwdXJpb3VzIHdhcm5pbmcgYW5kCgkgIGVsaW1pbmF0ZSBlbXB0eSBMaWJyYXJpZXMgc3ViZGlyIGluc2lkZSBidWlsdCBmcmFtZXdvcmsuCgoyMDA3LTA4LTE0IDExOjU4ICBhbGV4CgoJKiBTb3VyY2UvY21VdGlsaXR5U291cmNlQ29tbWFuZC5oOgoJICBTVFlMRTogZG9jdW1lbnQgdGhlIGJlaGF2aW91ciBvZiBVVElMSVRZX1NPVVJDRSBpbiBjcm9zcwoJICBjb21waWxpbmcgbW9kZQoKCSAgQWxleAoKMjAwNy0wOC0xNCAxMTo0NSAgZGF2aWQuY29sZQoKCSogU291cmNlL2NtR2xvYmFsWENvZGUyMUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxYQ29kZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVhDb2RlMjFPYmplY3QuY3h4LAoJICBTb3VyY2UvY21YQ29kZTIxT2JqZWN0LmgsIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmN4eCwKCSAgVGVzdHMvRnJhbWV3b3JrL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9GcmFtZXdvcmsvZm9vQm90aC5oLAoJICBUZXN0cy9GcmFtZXdvcmsvZm9vTmVpdGhlci5oLCBUZXN0cy9GcmFtZXdvcmsvZm9vUHJpdmF0ZS5oLAoJICBUZXN0cy9GcmFtZXdvcmsvZm9vUHVibGljLmgsIFRlc3RzL0ZyYW1ld29yay90ZXN0Lmx1YTogRU5IOgoJICBJbXByb3ZlbWVudHMgdG8gdGhlIFhjb2RlIGdlbmVyYXRvci4gQnVpbGQgZnJhbWV3b3JrcyB1c2luZwoJICBuYXRpdmUgQ29weSBIZWFkZXJzIGFuZCBDb3B5IEJ1bmRsZSBSZXNvdXJjZXMgcGhhc2VzLiBGaXggYnVnczoKCSAgZWxpbWluYXRlIGZvbGRlcnMgd2l0aCBubyBuYW1lcywgZW5zdXJlIHNvdXJjZSBmaWxlcyBzaG93IHVwIGluCgkgIG11bHRpcGxlIHRhcmdldHMsIHJlbW92ZSBlbXB0eSB1dGlsaXR5IHRhcmdldHMgZnJvbSBTb3VyY2VzCgkgIHN1YnRyZWVzLCBlbnN1cmUgdGhhdCBmaWxlUmVmcyBvbmx5IHNob3cgdXAgb25jZSBpbiBlYWNoIGdyb3VwaW5nCgkgIGZvbGRlci4KCjIwMDctMDgtMTQgMTA6MjcgIGFsZXgKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDoKCSAgQ09NUDogcGF0Y2ggZnJvbSBNYXRoaWV1OiBmaXggd2FybmluZyBhYm91dCB1bnVzZWQgdmFyaWFibGVzIGluCgkgIGJvb3RzdHJhcCBtb2RlCgoJICBBbGV4CgoyMDA3LTA4LTE0IDEwOjI1ICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja0RlYkdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBhbm90aGVyIHBhdGNoIGZyb20gTWF0aGlldSB3aXRoIHNvbWUgY29tbWVudHMKCgkgIEFsZXgKCjIwMDctMDgtMTQgMTA6MjAgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2tEZWIuY21ha2U6CgkgIEJVRzogZml4IHR5cG8KCgkgIEFsZXgKCjIwMDctMDgtMTQgMDg6NDAgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2tEZWIuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0RlYkdlbmVyYXRvci5oOgoJICBFTkg6IGRlYiBnZW5lcmF0b3I6IGRvbid0IHVzZSB0aGUgc3lzdGVtIHByb3ZpZGVkIGFyLCBidXQgZG8gaXQKCSAgeW91cnNlbGYgdXNpbmcgdGhlIGNvZGUgZnJvbSBPcGVuQlNEIGFyIENPTVA6IGRvbid0IGJ1aWxkIGFsbAoJICBwYWNrYWdlIGdlbmVyYXRvcnMgb24gYWxsIHBsYXRmb3JtcwoKCSAgQWxleAoKMjAwNy0wOC0xMyAyMzoxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTEzIDExOjA0ICBhbGV4CgoJKiBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uY21ha2U6CgkgIEVOSDogZm9yIHVuaXZlcnNhbCBiaW5hcmllcyByZXR1cm4gdGhlIGVuZGlhbmVzcyBiYXNlZCBvbiB0aGUKCSAgcHJvY2Vzc29yCgoJICBBbGV4CgoyMDA3LTA4LTEyIDIzOjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMTIgMjE6MDggIGFsZXgKCgkqIE1vZHVsZXMvVGVzdEJpZ0VuZGlhbi5jbWFrZToKCSAgQ09NUDogdHVybiBlcnJvciBpbnRvIHdhcm5pbmcgZm9yIG5vdwoKCSAgQWxleAoKMjAwNy0wOC0xMSAyMzoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTEwIDIzOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMTAgMTY6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eDogRU5IOiBmaXggb3V0cHV0IGFuZAoJICB2YWxncmluZCB0cnVuY2F0aW9uIGlzc3VlCgoyMDA3LTA4LTEwIDE1OjAyICBhbGV4CgoJKiBTb3VyY2UvY21VdGlsaXR5U291cmNlQ29tbWFuZC5jeHg6CgkgIEVOSDogcHJpbnQgYSB3YXJuaW5nIGlmIFVUSUxJVFlfU09VUkNFIGlzIHVzZWQgaW4gY3Jvc3MgY29tcGlsaW5nCgkgIG1vZGUgLW1ha2UgaXQgcG9zc2libGUgdG8gcHJlbG9hZCB0aGUgY2FjaGUgd2l0aCB0aGUgY29tbWFuZCBpbgoJICBjcm9zcyBjb21waWxpbmcgbW9kZQoKCSAgQWxleAoKMjAwNy0wOC0xMCAxMzoxNCAgYWxleAoKCSogTW9kdWxlcy86IENoZWNrVHlwZVNpemUuYy5pbiwgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgVGVzdEJpZ0VuZGlhbi5jLCBUZXN0QmlnRW5kaWFuLmNtYWtlLCBUZXN0RW5kaWFuZXNzLmMuaW46CgkgIFNUWUxFOiByZW1vdmUgdW51c2VkIENoZWNrVHlwZVNpemUuYy5pbiBFTkg6IGNoYW5nZSB0ZXN0IGZvcgoJICBlbmRpYW5lc3MgZnJvbSBUUllfUlVOKCkgdG8gVFJZX0NPTVBJTEUoKSBieSB0ZXN0aW5nIHRoZSBiaW5hcnkKCSAgaW1hZ2Ugb2YgYSAxNmJpdCBpbnRlZ2VyIGFycmF5LCB0ZXN0ZWQgb24gTGludXggeDg2LCBJbnRlbCBNYWMKCSAgYW5kIFN1biAoYmlnIGVuZGlhbikKCgkgIEFsZXgKCjIwMDctMDgtMTAgMTM6MDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaDogQlVHOiBGaXhlZCBwYXNzaW5nIG9mCgkgIGNvbmZpZ3VyYXRpb24gbmFtZXMgdG8gR2V0UmVhbERlcGVuZGVuY3kgYW5kIENvbnN0cnVjdFNjcmlwdC4KCSAgQWRkZWQgR2V0Q29uZmlnTmFtZSBoZWxwZXIgbWV0aG9kIHRvIGRvIHRoaXMuCgoyMDA3LTA4LTEwIDExOjM3ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6CgkgIFNUWUxFOiByZW1vdmUgdW5uZWNlc3NhcnkgZGVmYXVsdCBzZWFyY2ggcGF0aHMKCgkgIEFsZXgKCjIwMDctMDgtMTAgMTE6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogZml4IG1lbW9yeSBsZWFrCgoyMDA3LTA4LTEwIDA5OjIwICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ29tcGlsZXJJZC5jbWFrZToKCSAgQlVHOiBmaXggY29tcGlsZXIgaWQgdGVzdCBvbiBjeWd3aW4KCgkgIEFsZXgKCjIwMDctMDgtMTAgMDk6MDcgIGFsZXgKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgTW9kdWxlcy9DTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6CgkgIEVOSDogc2V0IFVOSVgsIFdJTjMyIGFuZCBBUFBMRSBpbiBjbU1ha2VmaWxlLmN4eCBhcyBpdCB3YXMKCSAgYmVmb3JlLCBzbyBpdCB3b3JrcyBmb3Igc2NyaXB0cywgdGhlbiByZXNldCB0aGVtIGluCgkgIENNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jeHgsIHNvIHRoZSBwbGF0Zm9ybSBtb2R1bGVzIGNhbgoJICBzZXQgdGhlbSBhZ2FpbiBmb3IgdGhlIHRhcmdldCBzeXN0ZW0KCgkgIEFsZXgKCjIwMDctMDgtMTAgMDg6NTQgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBBSVguY21ha2UsIEJTRE9TLmNtYWtlLCBCZU9TLmNtYWtlLAoJICBNUC1SQVMuY21ha2UsIFFOWC5jbWFrZSwgUklTQ29zLmNtYWtlOgoJICBCVUc6IGFsc28gaW5jbHVkZSBVbml4UGF0aHMuY21ha2Ugb24gdGhlc2UgcGxhdGZvcm1zLCB0aGlzIGFsc28KCSAgc2V0cyBVTklYIHRvIDEKCgkgIEFsZXgKCjIwMDctMDgtMDkgMjM6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0wOSAxNjo1NCAgYWxleAoKCSogVGVzdHMvQ01ha2VMaXN0cy50eHQ6CgkgIFNUWUxFOiBtYXJrIHRoZXNlIHZhcmlhYmxlcyBhcyBhZHZhbmNlZCwgdGhleSBhcmUgb25seSB1c2VkIGZvcgoJICB0ZXN0aW5nIHdoZXRoZXIgdGhlIHRlc3RzIHNob3VsZCBiZSBhZGRlZCBvciBub3QKCgkgIEFsZXgKCjIwMDctMDgtMDkgMTY6NDcgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlOgoJICBCVUc6IHVzZSBDTUFLRV9IT1NUX1VOSVggaGVyZSBpbnN0ZWFkIG9mIFVOSVgKCgkgIEFsZXgKCjIwMDctMDgtMDkgMTU6NTcgIGFsZXgKCgkqIFNvdXJjZS86IGNtRXhwb3J0Q29tbWFuZC5jeHgsIGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5oOgoKCSAgU1RZTEU6IHVzZSBjb3JyZWN0IGNhc2UgZm9yIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMyBtYWtlCgkgIGV4cG9ydCgpIHdvcmsgd2l0aCBzcGFjZXMgaW4gdGhlIHBhdGgKCgkgIEFsZXgKCjIwMDctMDgtMDkgMTU6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuaDogRU5IOiBtZXJnZSBpbiBkb2MKCSAgY2hhbmdlIGZyb20gaGVhZAoKMjAwNy0wOC0wOSAxNDo1NSAgYWxleAoKCSogVXRpbGl0aWVzL2NtY3VybC86IENNYWtlTGlzdHMudHh0LCBDTWFrZS9DdXJsVGVzdHMuYywKCSAgQ01ha2UvT3RoZXJUZXN0cy5jbWFrZToKCSAgU1RZTEU6IEhBVkVfTE9OR19MT05HX0NPTlNUIHdhcyBjb21wbGV0ZWx5IHVudXNlZCBoZXJlIChpdCB3YXMKCSAgdXNlZCBpbiB0aGUgKHVudXNlZCkgY29weSBvZiBjdXJsIHVuZGVyIENNYWtlL0NUZXN0L0N1cmwvICkKCgkgIEFsZXgKCjIwMDctMDgtMDkgMTQ6NDUgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9CZU9TLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vUU5YLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLmNtYWtlLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHg6CgkgIEVOSDogVU5JWCwgQ1lHV0lOLCBXSU4zMiwgQVBQTEUsIFFOWE5UTyBhbmQgQkVPUyBhcmUgbm90IGxvbmdlcgoJICBzZXQgaW4gY21NYWtlZmlsZS5jeHgsIGJ1dCBub3cgaW4gdGhlIHBsYXRmb3JtIGZpbGVzIGFuZCBhcmUgbm93CgkgIHZhbGlkIGZvciB0aGUgdGFyZ2V0IHBsYXRmb3JtLCBub3QgdGhlIGhvc3QgcGxhdGZvcm0uICBOZXcKCSAgdmFyaWFibGVzIENNQUtFX0hPU1RfV0lOMzIsIENNQUtFX0hPU1RfVU5JWCwgQ01BS0VfSE9TVF9BUFBMRSBhbmQKCSAgQ01BS0VfSE9TVF9DWUdXSU4gaGF2ZSBiZWVuIGFkZGVkIGluIGNtTWFrZWZpbGUuY3h4ICguLi5hbmQgaGF2ZQoJICBub3cgdG8gYmUgdXNlZCBpbiBhbGwgY21ha2UgZmlsZXMgd2hpY2ggYXJlIGV4ZWN1dGVkIGJlZm9yZQoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UgaXMgbG9hZGVkKS4gRm9yCgkgIGNvbXBhdGliaWxpdHkgdGhlIG9sZCBzZXQgaXMgc2V0IHRvIHRoZSBuZXcgb25lIGluCgkgIENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlIGFuZCByZXNldCBiZWZvcmUgdGhlIHN5c3RlbSBwbGF0Zm9ybQoJICBmaWxlcyBhcmUgbG9hZGVkLCBzbyBjdXN0b20gbGFuZ3VhZ2Ugb3IgY29tcGlsZXIgbW9kdWxlcyB3aGljaAoJICB1c2UgdGhlc2Ugc2hvdWxkIHN0aWxsIHdvcmsuCgoJICBBbGV4CgoyMDA3LTA4LTA5IDE0OjI2ICBhbGV4CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1Rlc3QvQ01ha2VMaXN0cy50eHQ6CgkgIENPTVA6IHRoaXMgY29weSBvZiBjdXJsIGlzIHVudXNlZCwgdGhlIG9uZSBpbiBVdGlsaXRpZXMvY21jdXJsLwoJICBpcyB1c2VkCgoJICBBbGV4CgoyMDA3LTA4LTA5IDExOjA1ICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtV2l0aFRvb2xjaGFpbkZpbGUuY21ha2UuaW46CgkgIEJVRzogd29yayB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aAoKCSAgQWxleAoKMjAwNy0wOC0wOSAwOTo1NyAgYWxleAoKCSogVGVzdHMvQ01ha2VMaXN0cy50eHQ6CgkgIENPTVA6IGxldHMgc2VlIGlmIHRoaXMgc2V0cyB0aGUgdGltZW91dCBiYWNrIHRvIDU0MDAKCgkgIEFsZXgKCjIwMDctMDgtMDkgMDk6MDMgIGFsZXgKCgkqIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5oeHguaW46CgkgIFNUWUxFOiBmaXggdHlwbwoKCSAgQWxleAoKMjAwNy0wOC0wOSAwODo0OSAgYWxleAoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDoKCSAgU1RZTEU6IGZpeCB0eXBvCgoJICBBbGV4CgoyMDA3LTA4LTA5IDA4OjQ4ICBhbGV4CgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDoKCSAgQlVHOiBwcm9wZXJ0aWVzIGFuZCBtb2R1bGUgbmFtZXMgYXJlIGNhc2Ugc2Vuc2l0aXZlCgoJICBBbGV4CgoyMDA3LTA4LTA4IDIzOjE1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMDggMTU6NDQgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrUlBNR2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogc2lsZW5jZSB3YXJuaW5ncwoKCSAgQWxleAoKMjAwNy0wOC0wOCAxNDo0NCAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eDoKCSAgQlVHOiByZWdpc3RlciB0aGUgcnBtIGdlbmVyYXRvciBmb3IgUlBNCgoJICBBbGV4CgoyMDA3LTA4LTA4IDE0OjE4ICBhbGV4CgoJKiBNb2R1bGVzL0NQYWNrRGViLmNtYWtlLCBTb3VyY2UvQ1BhY2svY21DUGFja0RlYkdlbmVyYXRvci5jeHg6CgkgIEVOSDogcGF0Y2ggZnJvbSBNYXRoaWV1OiBtb3JlIGVudHJpZXMgaW4gdGhlIGRlYmlhbiBjb250cm9sIGZpbGUKCgkgIEFsZXgKCjIwMDctMDgtMDggMTM6MDUgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiByZW1vdmUgdGhlIHdhdGNoIGZvciB0aGUgdXBwZXIgY2FzZSB2YXJpYWJsZSBuYW1lLCBpdCBicmVha3MKCSAgdGhlIGZlYXR1cmUgc3VtbWFyeSwgd2hpY2ggbmVlZHMgdG8gY2hlY2sgZm9yIGJvdGggdGhlIHVwcGVyIGNhc2UKCSAgYW5kIG9yaWdpbmFsIGNhc2UgX0ZPVU5EIHZhcmlhYmxlcwoKCSAgQWxleAoKMjAwNy0wOC0wOCAxMTozMyAgYWxleAoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NQYWNrLmNtYWtlLAoJICBNb2R1bGVzL0NQYWNrUlBNLmNtYWtlLCBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1JQTUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUlBNR2VuZXJhdG9yLmg6CgkgIEVOSDogYWRkIGVtcHR5IFJQTSBwYWNrYWdlIGdlbmVyYXRvciwgRXJpYyBOb3VsYXJkIHdhbnRzIHRvIHdvcmsKCSAgb24gaXQKCgkgIEFsZXgKCjIwMDctMDgtMDggMTA6MDUgIGFsZXgKCgkqIFRlc3RzL0NNYWtlTGlzdHMudHh0OgoJICBDT01QOiBjaGFuZ2UgdGhlIG9yZGVyIG9mIHRoZSB0ZXN0cywgc28gbWF5YmUgdGhlIHRpbWVvdXQgd29ya3MKCgkgIEFsZXgKCjIwMDctMDgtMDggMDk6MzIgIGFsZXgKCgkqIFRlc3RzL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IGFsc28gc3BlY2lmeSB0aGUgQysrIGNvbXBpbGVyIGZvciBtaW5ndwoKCSAgQWxleAoKMjAwNy0wOC0wOCAwODo0MSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBFTkg6IFJlbW92ZSBleHRyYSA7CgoyMDA3LTA4LTA3IDIzOjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMDcgMTg6MDIgIGFsZXgKCgkqIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9DTWFrZUxpc3RzLnR4dDoKCSAgQlVHOiBkaXNhYmxlIHRoaXMgdGVzdCB0ZW1wb3JhcmlseQoKCSAgQWxleAoKMjAwNy0wOC0wNyAxNjoyNiAgYWxleAoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmg6CgkgIENPTVA6IGFsc28gY29tbWl0IHRoZSBoZWFkZXIuLi4KCgkgIEFsZXgKCjIwMDctMDgtMDcgMTU6NDIgIGFsZXgKCgkqIE1vZHVsZXMvRGFydC5jbWFrZToKCSAgU1RZTEU6IGZpbmQgRGFydCBxdWlldGx5IChzbyBpdCBkb2Vzbid0IGdvIGluIHRoZSBmZWF0dXJlIGxvZykKCgkgIEFsZXgKCjIwMDctMDgtMDcgMTU6NDEgIGFsZXgKCgkqIE1vZHVsZXMvRmVhdHVyZVN1bW1hcnkuY21ha2UsIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHg6CgkgIEVOSDogYWRkIGdsb2JhbCBwcm9wZXJ0aWVzIGZvciBjb2xsZWN0aW5nIGVuYWJsZWQvZGlzYWJsZWQKCSAgZmVhdHVyZXMgZHVyaW5nIHRoZSBjbWFrZSBydW4gYW5kIGFkZCBtYWNyb3MKCSAgcHJpbnRfZW5hYmxlZC9kaXNhYmxlZF9mZWF0dXJlcygpIGFuZCBzZXRfZmVhdHVyZV9pbmZvKCksIHNvCgkgIHByb2plY3RzIGNhbiBnZXQgYSBuaWNlIG92ZXJ2aWV3IGF0IHRoZSBlbmQgb2YgdGhlIGNtYWtlIHJ1biB3aGF0CgkgIGhhcyBiZWVuIGZvdW5kIGFuZCB3aGF0IGhhc24ndCBGSU5EX1BBQ0tBR0UoKSBhdXRvbWF0aWNhbGx5IGFkZHMKCSAgdGhlIHBhY2thZ2VzIHRvIHRoZXNlIGdsb2JhbCBwcm9wZXJ0aWVzLCBleGNlcHQgd2hlbiB1c2VkIHdpdGgKCSAgUVVJRVQgTWF5YmUgdGhpcyBjYW4gYWxzbyBiZSB1c2VmdWwgZm9yIHBhY2thZ2VycyB0byBmaW5kIG91dAoJICBkZXBlbmRlbmNpZXMgb2YgcHJvamVjdHMuCgoJICBBbGV4CgoyMDA3LTA4LTA3IDE1OjM2ICBob2ZmbWFuCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiBjaGFuZ2UgaWJtIG1hY2hpbmUgYWdhaW4KCjIwMDctMDgtMDcgMTU6MDkgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBJIHRoaW5rIHRoZSBjb21tZW50IChhbmQgdGhlIGJvb2spIHdlcmUgd3JvbmcgYWJvdXQgdGhlCgkgIG5hbWluZyBvZiB0aGlzIGZpbGUKCgkgIEFsZXgKCjIwMDctMDgtMDcgMTM6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6CgkgIEVOSDogUmVwbGFjZWQgZGVwZW5kZW5jeSBpbnRlZ3JpdHkgbWFwIHdpdGggYW4gZXhwbGljaXQgbWFwIGZyb20KCSAgb2JqZWN0IGZpbGUgdG8gc291cmNlIGZpbGUgZm9yIGVhY2ggbGFuZ3VhZ2UgaW4gZWFjaCB0YXJnZXQuCgkgIFRoaXMgc2ltcGxpZmllcyBjcmVhdGlvbiBvZiBpbXBsaWNpdCBkZXBlbmRlbmN5IHNjYW5uaW5nIHJ1bGVzCgkgIGFuZCBhbGxvd3MgbW9yZSB0aGFuIG9uZSBvYmplY3QgZmlsZSBpbiBhIHRhcmdldCB0byBzdGFydAoJICBkZXBlbmRlbmN5IHNjYW5uaW5nIHdpdGggdGhlIHNhbWUgc291cmNlIGZpbGUuCgoyMDA3LTA4LTA3IDEwOjEzICBhbGV4CgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDoKCSAgQlVHOiB0aGUgdGVzdCBmb3IgY2hpY2tlbiBzaG91bGQgYmUgbmFtZWQgQ2hpY2tlbiwgbm90IHBscGxvdAoKCSAgQWxleAoKMjAwNy0wOC0wNyAwMDowMCAgYWxleAoKCSogU291cmNlL2NtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBkb24ndCBjcmVhdGUgYSBDb2RlQmxvY2tzIHdvcmtzcGFjZSwgdGhlIENvZGVCbG9ja3MgcHJvamVjdHMKCSAgY292ZXIgZXZlcnl0aGluZyB3aGF0J3MgbmVlZGVkCgoJICBBbGV4CgoyMDA3LTA4LTA2IDIzOjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMDYgMjI6MDggIGFsZXgKCgkqIE1vZHVsZXMvRmluZFBhY2thZ2VIYW5kbGVTdGFuZGFyZEFyZ3MuY21ha2U6CgkgIFNUWUxFOiBmaXggdHlwbwoKCSAgQWxleAoKMjAwNy0wOC0wNiAxNzowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IGNoYW5nZSBlcnJvciB0byB3YXJuaW5nIHNvIGN0ZXN0dGVzdDMKCSAgcGFzc2VzCgoyMDA3LTA4LTA2IDE0OjQ1ICBhbGV4CgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBhZGQgcGxwbG90IGFuZCBDaGlja2VuIFNjaGVtZSBidWlsZCB0ZXN0cwoKCSAgQWxleAoKMjAwNy0wOC0wNiAxMzozMSAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OgoJICBFTkg6IGFub3RoZXIgZml4IGZvciB0aGUgZGViIGdlbmVyYXRvciBieSBNYXRoaWV1CgoJICBBbGV4CgoyMDA3LTA4LTA2IDEzOjI0ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmgsIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBmaXggbGluZSBsZW5ndGhzCgoJICBBbGV4CgoyMDA3LTA4LTA2IDExOjAyICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZE1QSS5jbWFrZSwgRmluZFRocmVhZHMuY21ha2U6CgkgIFNUWUxFOiB1c2UgRklORF9QQUNLQUdFX0hBTkRMRV9TVEFOREFSRF9BUkdTKCkgYWxzbyBpbgoJICBGaW5kTVBJLmNtYWtlIC1yZW1vdmUgdW5uZWNlc3NhcnkgRUxTRSgpIGluIEZpbmRUaHJlYWRzLmNtYWtlCgoJICBBbGV4CgoyMDA3LTA4LTA2IDEwOjQyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZMVEtDb21wYXRpYmlsaXR5LmNtYWtlOiBFTkg6IHRocmVhZHMgdXNlZCB0byBpbmNsdWRlCgkgIHRoaXMKCjIwMDctMDgtMDYgMDk6MDMgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBwYXRjaCBmcm9tIE1hdGhpZXU6IHRoZSBtZDVzdW1zIHdlcmUgbm90IGNvcnJlY3QKCgkgIEFsZXgKCjIwMDctMDgtMDUgMjM6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0wNCAyMzoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTAzIDIzOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDgtMDMgMTY6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4OiBFTkg6IG1ha2Ugc3VyZSB0aGVyZSBpcwoJICBhbiBlcnJvciBhbmQgbm90aWZ5IHVzZXIgaWYgbmlnaHRseSBzdGFydCB0aW1lIG5vdCBzZXQKCjIwMDctMDgtMDMgMTY6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBzaG93IGZpbGVzIGFzCgkgIHVudGVzdGVkIGlmIG5vIGxpbmVzIGFyZSBjb3ZlcmVkCgoyMDA3LTA4LTAzIDE2OjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IGZhdGFsIGVycm9yIGlmIGN2cwoJICB1cGRhdGUgZmFpbHMKCjIwMDctMDgtMDMgMTY6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBhZGQgYSBjaGVjayB0byBtYWtlIHN1cmUgbmlnaHRseSBzdGFydAoJICB0aW1lIHdhcyBzcGVjaWZpZWQKCjIwMDctMDgtMDMgMTY6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eDogRU5IOiBhZGQgYW5vdGhlcgoJICB2YWxncmluZCBlcnJvciB0eXBlCgoyMDA3LTA4LTAzIDE2OjMxICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbUluc3RhbGxDb21tYW5kLmgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21UYXJnZXQuY3h4OiBFTkg6IEFkZGVkIHdhcm5pbmcgd2hlbiBhbiBpbnN0YWxsIHJ1bGUgaXMgY3JlYXRlZAoJICBmcm9tIGFuIEVYQ0xVREVfRlJPTV9BTEwgdGFyZ2V0LiAgQWRkZWQgYSBmb28vcHJlaW5zdGFsbCB2ZXJzaW9uCgkgIG9mIHRhcmdldHMgdGhhdCBuZWVkIHJlbGlua2luZyBzbyB0aGF0IGV4Y2x1ZGUtZnJvbS1hbGwgdGFyZ2V0cwoJICBjYW4gYmUgbWFudWFsbHkgcmVsaW5rZWQgZm9yIGluc3RhbGxhdGlvbi4KCjIwMDctMDgtMDMgMTU6NDQgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5jeHg6CgkgIEJVRzogVGFyZ2V0IGV4Y2x1c2lvbi1mcm9tLWFsbCB0ZXN0cyBzaG91bGQgYWx3YXlzIHVzZSB0aGUgcm9vdAoJICBsb2NhbCBnZW5lcmF0b3IgYXNzb2NpYXRlZCB3aXRoIHRoZSBhbGwgdGFyZ2V0IGJlaW5nIHRlc3RlZC4KCjIwMDctMDgtMDMgMTU6NDMgIHNlYW5tY2JyaWRlCgoJKiBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBDT01QOiBmaXhlZCBjb21waWxlcgoJICB3YXJuaW5nIGluIHNwcmludGYgdXNhZ2UKCjIwMDctMDgtMDMgMTU6MjYgIGFsZXgKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIE1vZHVsZXMvQ1BhY2tEZWIuY21ha2UsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHg6CgoJICBFTkg6IGJldHRlciBlcnJvciBtZXNzYWdlcyBmcm9tIHRoZSBkZWJpYW4gcGFja2FnZSBnZW5lcmF0b3IKCSAgLWRvbid0IGRpc3BsYXkgdGhlIGNwYWNrIGhlbHAgaWYgYSBnZW5lcmF0b3IgZmFpbGVkIHdpdGggc29tZQoJICBwcm9ibGVtIC1jaGVjayBmb3IgY21TeXN0ZW1Ub29sczo6R2V0RXJyb3JPY2N1cmVkRmxhZygpCgoJICBBbGV4CgoyMDA3LTA4LTAzIDA5OjM5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBBZGRlZAoJICBjbVRhcmdldDo6R2V0TGFuZ3VhZ2VzIG1ldGhvZCB0byBjZW50cmFsaXplIGNvbXB1dGF0aW9uIG9mIHRoZQoJICBsaXN0IG9mIGxhbmd1YWdlcyBjb21waWxlZCBpbiBhIHRhcmdldC4gIFRyYW5zZm9ybWVkCgkgIE5lZWRSZXF1aXJlc1N0ZXAgdG8gdXNlIGl0LgoKMjAwNy0wOC0wMiAyMzoxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA4LTAyIDE1OjQ4ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOgoJICBFTkg6IG1ha2UgdGhlIHB5dGhvbiBtb2R1bGVzIHVzYWJsZSBmb3IgQyBhbmQgQysrIGFuZCBvbmx5IHdyaXRlCgkgIHRoZSBoZWFkZXIgaWYgaXQgaGFzIGNoYW5nZWQKCgkgIEFsZXgKCjIwMDctMDgtMDIgMTQ6MjggIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBCVUc6IFJlbW92aW5nIGFjY2lkZW50YWwKCSAgY29tbWl0LgoKMjAwNy0wOC0wMiAxNDoyOCAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogUXVpY2stZml4IGZvcgoJICBhY2NpZGVudGFsIGNvbW1pdC4KCjIwMDctMDgtMDIgMTQ6MjMgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IEFkZGVkCgkgIGNtVGFyZ2V0OjpHZXRMYW5ndWFnZXMgbWV0aG9kIHRvIGNlbnRyYWxpemUgY29tcHV0YXRpb24gb2YgdGhlCgkgIGxpc3Qgb2YgbGFuZ3VhZ2VzIGNvbXBpbGVkIGluIGEgdGFyZ2V0LgoKMjAwNy0wOC0wMiAxMzozOCAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgRU5IOiBBZGRlZCBjbVRhcmdldDo6R2V0TGFuZ3VhZ2VzIG1ldGhvZCB0byBjZW50cmFsaXplCgkgIGNvbXB1dGF0aW9uIG9mIHRoZSBsaXN0IG9mIGxhbmd1YWdlcyBjb21waWxlZCBpbiBhIHRhcmdldC4KCjIwMDctMDgtMDIgMTE6MTcgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBXaW5kb3dzLWNsLmNtYWtlLCBXaW5kb3dzLmNtYWtlLAoJICBXaW5kb3dzUGF0aHMuY21ha2U6CgkgIEVOSDogdXNlIFdpbmRvd3NQYXRocy5jbWFrZSBvbiBhbGwgV2luZG93cyBwbGF0Zm9ybXMsIG5vdCBvbmx5CgkgIGZvciBjbCwgbWFrZXMgdGhlIG1pbmd3IGNyb3NzIGNvbXBpbGVyIHdvcmsgb3V0IG9mIHRoZSBib3ggYW5kCgkgIHNob3VsZCBoZWxwIG1pbmd3IHVzZXJzIG9uIHdpbmRvd3Mgd2l0aCBhIGNvbW1vbiBpbnN0YWxsIGRpcgoKCSAgQWxleAoKMjAwNy0wOC0wMiAwOTozNyAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IFNpbXBsaWZ5IG1ha2VmaWxlIHRhcmdldAoJICBnZW5lcmF0b3IgbGlzdGluZyBvZiBvYmplY3QgZmlsZXMgdG8gY2xlYW4uCgoyMDA3LTA4LTAyIDA4OjI0ICBhbGV4CgoJKiBTb3VyY2UvY21FeHRyYUVjbGlwc2VDRFQ0R2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogZml4IHdhcm5pbmcKCgkgIEFsZXgKCjIwMDctMDgtMDEgMjM6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wOC0wMSAxNzoxMCAgYWxleAoKCSogU291cmNlLzogY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtVHJ5UnVuQ29tbWFuZC5jeHg6CgkgIEVOSDogaWYgbm8gQ09NUE9ORU5UIGlzIHNwZWNpZmllZCwgbWFrZSB0aGlzIGluc3RhbGwgaXRlbSBwYXJ0IG9mCgkgIHRoZSAiVW5zcGVjaWZpZWQiIGNvbXBvbmVudCAtPiBpZiBubyBjb21wb25lbnRzIGFyZSB1c2VkIGF0IGFsbCwKCSAgbm8gY2hhbmdlIGluIGJlaGF2aW91ciwgaWYgY29tcG9uZW50cyBhcmUgdXNlZCBjb21wbGV0ZWx5LCBubwoJICBjaGFuZ2UgaW4gYmVoYXZpb3VyLCBzaW5jZSB0aGlzIGRlZmF1bHQgd2lsbCBiZSBvdmVycmlkZGVuCgkgIGV2ZXJ5d2hlcmUsIGlmIGNvbXBvbmVudHMgd2hlcmUgdXNlZCBwYXJ0bHksIGl0IGlzIG5vdyBwb3NzaWJsZQoJICB0byBpbnN0YWxsIG9ubHkgdGhlIHVuc3BlY2lmaWVkIGl0ZW1zIChlLmcuIGV2ZXJ5dGhpbmcgd2hpY2gKCSAgd2Fzbid0IG1hcmtlZCBhcyAiRGV2ZWxvcG1lbnQiKQoKCSAgQWxleAoKCSAgQWxleAoKMjAwNy0wOC0wMSAxNjoxNSAgZGF2aWQuY29sZQoKCSogVGVzdHMvRnJhbWV3b3JrLzogYmFyLmN4eCwgZm9vLmN4eDogQlVHOiBGaXggdGVzdCB0aGF0IGJyb2tlIG9uCgkgIFdpbmRvd3MgLSBzaGFyaW5nIHNvdXJjZXMgYmV0d2VlbiBTSEFSRUQgYW5kIFNUQVRJQyBsaWJyYXJpZXMKCSAgcmVxdWlyZXMgY29ycmVjdCBleHBvcnQgYW5kIGltcG9ydCBkZWNvcmF0aW9ucyBpbiB0aGUgc291cmNlCgkgIGNvZGUuLi4KCjIwMDctMDgtMDEgMTU6NTEgIGFsZXgKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHA6IEVOSDogc2VwYXJhdGUgdGhlIGNvbW1hbmRzIGludG8KCSAgY3VycmVudCBhbmQgY29tcGF0IGFzIGluIGNtYWtlCgoJICBBbGV4CgoyMDA3LTA4LTAxIDE1OjI1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbUxvY2FsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsWENvZGVHZW5lcmF0b3IuaDogRU5IOiBNb3ZlZCBHZXRUYXJnZXREaXJlY3RvcnkgbWV0aG9kIHVwCgkgIHRvIGNtTG9jYWxHZW5lcmF0b3IuCVRoaXMgcHJvdmlkZXMgYSBjb21tb24gaW50ZXJmYWNlIHRvCgkgIHNvbWV0aGluZyB0aGF0IHdhcyBpbXBsZW1lbnRlZCBpbiBtb3N0IGxvY2FsIGdlbmVyYXRvcnMgYW55d2F5LgoKMjAwNy0wOC0wMSAxNDo1OCAgYWxleAoKCSogU291cmNlLzogY21FeHRyYUNvZGVCbG9ja3NHZW5lcmF0b3IuY3h4LCBjbWFrZS5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQlVHOiBhbHNvIG9mZmVyIHRoZSBleHRyYQoJICBnZW5lcmF0b3JzIGluIENNYWtlU2V0dXAKCgkgIEFsZXgKCjIwMDctMDgtMDEgMTM6MDQgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBUZXN0cy9GcmFtZXdvcmsvQ01ha2VMaXN0cy50eHQ6IEJVRzogT25seSBwYXkgYXR0ZW50aW9uIHRvIHRoZQoJICBGUkFNRVdPUksgdGFyZ2V0IHByb3BlcnR5IGZvciBTSEFSRUQgbGlicmFyeSB0YXJnZXRzCgoyMDA3LTA4LTAxIDExOjU5ICBhbGV4CgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDoKCSAgU1RZTEU6IHNvbWUgbW9yZSB0dW5pbmcgZm9yIHRoZSBjb21tZW50IHRleHQKCgkgIEFsZXgKCjIwMDctMDgtMDEgMTE6NTAgIGFsZXgKCgkqIFNvdXJjZS9jbUV4dHJhRWNsaXBzZUNEVDRHZW5lcmF0b3IuY3h4OgoJICBFTkg6IHdvcmtzIGFsc28gd2l0aCBubWFrZSwgdGVzdGVkIGJ5IEplZmYKCgkgIEFsZXgKCjIwMDctMDgtMDEgMTE6MzkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IHJlY29nbml6ZQoJICBwcmVwcm9jZXNzb3IgZGVmaW5pdGlvbiBmbGFncyBmb3IgdGhlIGxpbmtlciB3aGljaCBoYXMgbm8KCSAgcHJlcHJvY2Vzc29yIGJ1dCBkb2VzIGhhdmUgZmxhZ3Mgc3RhcnRpbmcgd2l0aCAvRC4KCjIwMDctMDgtMDEgMTE6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogPENPTkZJRz5fTE9DQVRJT04gcHJvcGVydHkgc2hvdWxkIHVzZQoJICB0aGUgY29uZmlnIG5hbWUgaW4gdGhlIGRpcmVjdG9yeSBhbmQgbm90ICQoT3V0RGlyKS4gIFRoaXMKCSAgYWRkcmVzc2VzIGJ1ZyM1MzYzLgoKMjAwNy0wOC0wMSAxMDo1MyAga2luZwoKCSogU291cmNlL2NtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBDT01QOiBGaXggd2FybmluZyBhYm91dCBub3QgYmVpbmcKCSAgYWJsZSB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29weSBjb25zdHJ1Y3Rvci4KCjIwMDctMDgtMDEgMTA6MDcgIGFsZXgKCgkqIFNvdXJjZS9rd3N5cy9EeW5hbWljTG9hZGVyLmN4eDoKCSAgQ09NUDogYWxzbyBidWlsZCB0aGUgc3RhdGljIGR1bW15IGxvYWRlciBvbiBDcmF5IENhdGFtb3VudAoKCSAgQWxleAoKMjAwNy0wOC0wMSAwOToxOCAgYWxleAoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5jeHgsCgkgIGNtRXh0cmFFY2xpcHNlQ0RUNEdlbmVyYXRvci5oLCBjbWFrZS5jeHg6CgkgIEVOSDogYWRkIEVjbGlwc2UgQ0RUNCBnZW5lcmF0b3IsIHBhdGNoIGZyb20gTWlndWVsIEEuCgkgIEZpZ3Vlcm9hLVZpbGxhbnVldmEKCgkgIEFsZXgKCjIwMDctMDgtMDEgMDk6MTQgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ2F0YW1vdW50LmNtYWtlOgoJICBFTkg6IGFkZCBzdXBwb3J0IGZvciBDYXRhbW91bnQsIHRoZSBPUyBydW5uaW5nIG9uIHRoZSBjb21wdXRlCgkgIG5vZGVzIG9mIENyYXkgc3VwZXIgY29tcHV0ZXJzCgoJICBBbGV4CgoyMDA3LTA3LTMxIDIzOjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMzEgMTQ6NTIgIGFsZXgKCgkqIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4LCBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IGFkZCB0ZXN0cyBmb3IgY2hlY2tfY19zb3VyY2VfcnVucygpLAoJICBjaGVja19jeHhfc291cmNlX3J1bnMoKSwgY2hlY2tfY19zb3VyY2VfY29tcGlsZXMoKSBhbmQKCSAgY2hlY2tfY3h4X3NvdXJjZV9jb21waWxlcygpIC1UUllfUlVOIGluIGNyb3NzY29tcGlsaW5nIG1vZGU6IGNvcHkKCSAgdGhlIGNyZWF0ZWQgZXhlY3V0YWJsZXMgdG8gQ01BS0VfQklOQVJZX0RJUiBzbyB0aGUgdXNlciBjYW4gcnVuCgkgIHRoZW0gbWFudWFsbHkgb24gdGhlIHRhcmdldAoKCSAgQWxleAoKMjAwNy0wNy0zMSAxMzozMCAgYWxleAoKCSogTW9kdWxlcy86IENoZWNrQ1NvdXJjZVJ1bnMuY21ha2UsIENoZWNrQ1hYU291cmNlUnVucy5jbWFrZSwKCSAgRmluZFRocmVhZHMuY21ha2U6CgkgIFNUWUxFOiBkb24ndCB1c2UgRklORF9JTkNMVURFX0ZJTEUoKSBidXQgb25seQoJICBGSU5EX0lOQ0xVREVfRklMRVMoKSBpbiBGaW5kVGhyZWFkcy5oCgoJICBCVUc6IGltcHJvdmUgQ2hlY2tDKFhYKVNvdXJjZVJ1bnMuY21ha2Ugc28gdGhhdCBpdCB3b3JrcyB3aXRoCgkgIGNyb3NzIGNvbXBpbGluZywgdGhlIHJldHVybiB2YWx1ZSBoYXMgdG8gZ28gaW4gdGhlIGNhY2hlIGJ1dAoJICBzaG91bGRuJ3Qgb3ZlcndyaXRlIHRoZSBhY3R1YWwgcmV0dXJuIHZhbHVlLCBhbmQgaXQgc2hvdWxkIGdvCgkgIG9ubHkgaW4gdGhlIGNhY2hlIGlmIHdlIGhhdmUgYSByZXN1bHQgZnJvbSB0cnlfcnVuKCkgb3RoZXJ3aXNlIHdlCgkgIHdvbid0IGdldCBoZXJlIGFnYWluIGlmIHdlIGhhdmUgYSByZXN1bHQgbGF0ZXIgb24KCgkgIEFsZXgKCjIwMDctMDctMzEgMTE6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IERMTCBhbmQgREVGCgkgIGJlaW5nIGxvc3QgYW5kIGFkZCByZWFsIHN1cHBvcnQgZm9yIC9ERUY6IC9ETEwgZG9lcyBub3QgaGF2ZSBhbgoJICBlbnRyeSBzbyBqdXN0IGxldCBpdCBwYXNzIHRvIGFkdmFuY2VkIGNvbW1hbmQgbGluZQoKMjAwNy0wNy0zMCAyMzowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTMwIDIyOjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tUYXJDb21wcmVzc0dlbmVyYXRvci5jeHg6IEVOSDogdXNlIGdudSB0YXIgZm9yCgkgIGN5Z3dpbgoKMjAwNy0wNy0zMCAyMTozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtWE1MUGFyc2VyLmN4eDogU1RZTEU6IGZpeCB3YXJuaW5nCgoyMDA3LTA3LTMwIDE1OjUyICBhbGV4CgoJKiBTb3VyY2Uva3dzeXMvRHluYW1pY0xvYWRlci5jeHg6CgkgIENPTVA6IGFkZCBhIGR5bmFtaWMgbG9hZGVyIGZvciBzeXN0ZW1zIHdoaWNoIGRvbid0IHN1cHBvcnQKCSAgZHluYW1pYyBsb2FkaW5nLCBzbyB0aGlzIGlzIGhhbmRsZWQgaW4ga3dzeXMgYW5kIG5vdCBldmVyeQoJICBwcm9qZWN0IHVzaW5nIHRoaXMgaGFzIHRvIGNhcmUgZm9yIGl0CgoJICBBbGV4CgoyMDA3LTA3LTMwIDE0OjQ2ICBhbGV4CgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDoKCSAgRU5IOiBGT1JDRSB0aGUgdmFsdWVzIGluIHRoZSBjYWNoZSwgb3RoZXJ3aXNlIHRoZSBmaWxlIGlzIHVzZWxlc3MKCgkgIEFsZXgKCjIwMDctMDctMjkgMjM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0yOCAyMzozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTI4IDAwOjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMjcgMTM6MTIgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKCSAgQWxleAoKMjAwNy0wNy0yNyAxMTo1NyAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IFVuaXhQYXRocy5jbWFrZSwgV2luZG93c1BhdGhzLmNtYWtlOgoJICBFTkg6IC1hZGQgL3Vzci9vcGVud2luL2luY2x1ZGUgYW5kIC91c3Ivb3Blbndpbi9saWIgdG8gdGhlCgkgIGRlZmF1bHQgc2VhcmNoIHBhdGhzIC1hZGQKCSAgLyR7Q01BS0VfSU5TVEFMTF9QUkVGSVh9LyhsaWJ8YmlufGluY2x1ZGUpIHRvIHRoZSBkZWZhdWx0IGNtYWtlCgkgIHNlYXJjaCBwYXRocyAtPiB0aGlzIHNob3VsZCBoZWxwIHVzZXJzIHdobyBpbnN0YWxsIHN0dWZmIGluIHRoZWlyCgkgIGhvbWUKCgkgIEFsZXgKCjIwMDctMDctMjcgMTA6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuaCwgY21Db21tYW5kQXJndW1lbnRQYXJzZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlclRva2Vucy5oLCBjbUNvbmZpZ3VyZS5jbWFrZS5oLmluLAoJICBjbUNvcmVUcnlDb21waWxlLmN4eCwgY21EZXBlbmRzRm9ydHJhbkxleGVyLmgsCgkgIGNtRGVwZW5kc0phdmFMZXhlci5oLCBjbUV4cHJMZXhlci5oLCBjbVhDb2RlT2JqZWN0LmN4eCwKCSAgY21YQ29kZU9iamVjdC5oLCBjbWFrZXRlc3QuaC5pbiwgY21ha2V4YnVpbGQuY3h4LAoJICBDUGFjay9PU1hTY3JpcHRMYXVuY2hlci5jeHgsIENQYWNrL2NtQ1BhY2tDb25maWd1cmUuaC5pbiwKCSAgQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuY3h4LCBDUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY3BhY2suY3h4LCBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdE1lbUNoZWNrSGFuZGxlci5jeHg6IFNUWUxFOiBmaXggc29tZSBrd3N0eWxlIGVycm9ycwoKMjAwNy0wNy0yNyAwODo1OSAgYWxleAoKCSogQ01ha2VDUGFjay5jbWFrZSwgU291cmNlL2NtU2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2NtYWtlLmgsIE1vZHVsZXMvQ1BhY2tEZWIuY21ha2UsCgkgIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2UsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eCwgU291cmNlL0NQYWNrL2NwYWNrLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eDoKCSAgRU5IOiBkZWIgZ2VuZXJhdG9yIGNhbiBub3cgZ2VuZXJhdGUgZGViIHBhY2thZ2VzIC1yZW1vdmUgdGhlCgkgIHVuc2NyaXB0YWJsZSBjb21tYW5kcyBhbHNvIGZyb20gdGhlIGNwYWNrIGNtYWtlIC11c2UKCSAgQ1BBQ0tfUEFDS0FHRV9DT05UQUNUIGluIENNYWtlQ1BhY2suY21ha2UsIGl0J3MgdXNlZCBpbiB0aGUgbnNpcwoJICBhbmQgdGhlIGRlYiBnZW5lcmF0b3IgLW1ha2Ugc2V0X3Byb3BlcnRpZXMoKSBzY3JpcHRhYmxlIC11c2UgYQoJICBub24tY29uc3QgY2hhciBhcnJheSBmb3IgYWRkaW5nIHRoZSBweXRob24gbW9kdWxlcwoKCSAgQWxleAoKMjAwNy0wNy0yNyAwNDoyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTI2IDE2OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdE1lbUNoZWNrSGFuZGxlci5jeHg6IEVOSDogYWRkIHRlc3Qgb3V0cHV0IHRvCgkgIHZhbGdyaW5kIG91dHB1dCBhbmQgdHJ1bmNhdGUgb3V0cHV0IGZvciB2YWxncmluZAoKMjAwNy0wNy0yNiAxNDozNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21YTUxQYXJzZXIuY3h4LCBjbVhNTFBhcnNlci5oOiBFTkg6IGZpeCB3YXJuaW5nIG9uCgkgIHdpbjY0CgoyMDA3LTA3LTI2IDExOjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMjYgMDg6NDAgIGFsZXgKCgkqIFNvdXJjZS86IGNtVHJ5UnVuQ29tbWFuZC5jeHgsIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eCwKCSAgQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHgsIENQYWNrL2NwYWNrLmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDctMjYgMDA6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0yNSAxNjozNyAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEVOSDogZml4IGJ1ZyB3aXRoIHZhbGdyaW5kCgkgIG91dHB1dCBiZWluZyB0cnVuY2F0ZWQKCjIwMDctMDctMjUgMTU6MDggIGFsZXgKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6CgkgIENPTVA6IHNhbWUgYXMgaW4gVlRLLCBidWlsZCBtb2R1bGVzIGJ5IGRlZmF1bHQgYXMgc2hhcmVkIGlmIHRoZQoJICBwbGF0Zm9ybSBzdXBwb3J0cyB0aGlzLCBkb24ndCBpbmNsdWRlIHNoYXJlZCBtb2R1bGVzIGluIHRoZQoJICBnZW5lcmF0ZWQgaGVhZGVyCgoJICBBbGV4CgoyMDA3LTA3LTI1IDEzOjA4ICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrRGViR2VuZXJhdG9yLmN4eCwgY21DUGFja0dlbmVyYXRvcnMuY3h4OgoJICBFTkg6IGFwcGx5IHBhdGNoIGZyb20gTWF0aGlldSB3aGljaCBjcmVhdGVzIGEgZGViIGZpbGUgKG5vdAoJICBmaW5pc2hzZWQgeWV0KQoKCSAgQWxleAoKMjAwNy0wNy0yNSAxMTo0MSAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuY3h4OgoJICBDT01QOiBzaWxlbmNlIHdhcm5pbmdzCgoJICBBbGV4CgoyMDA3LTA3LTI1IDEwOjU3ICBhbGV4CgoJKiBNb2R1bGVzL0NQYWNrRGViLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrRGViR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tEZWJHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eDoKCSAgRU5IOiBhZGQgYW4gZW1wdHkgZGViaWFuIHBhY2thZ2UgZ2VuZXJhdG9yLCBNYXRoaWV1IHZvbHVudGVlcmVkCgkgIHRvIGZpbGwgaXQgOi0pCgoJICBBbGV4CgoyMDA3LTA3LTI1IDA5OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVhNTFBhcnNlci5jeHgsIGNtWE1MUGFyc2VyLmg6IFNUWUxFOiBmaXggY29tcGlsZXIKCSAgd2FybmluZwoKMjAwNy0wNy0yNSAwNDoxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTI0IDE1OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBFTkg6IGZpeCByZXNvdXJjZSBsZWFrCgoyMDA3LTA3LTI0IDE1OjI3ICBob2ZmbWFuCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiBjbGVhbiB1cCBzb21lIG1pc3NpbmcgZGFzaGJvYXJkcwoKMjAwNy0wNy0yNCAxNDo1MCAgYWxleAoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6CgkgIENPTVA6IHN5bmMgd2l0aCBIRUFECgoJICBBbGV4CgoyMDA3LTA3LTI0IDE0OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eCwKCSAgY21DVGVzdE1lbUNoZWNrSGFuZGxlci5oLCBjbUNUZXN0VGVzdEhhbmRsZXIuaDogRU5IOiBhZGQgc3VwcG9ydAoJICBmb3IgYm91bmRzIGNoZWNrZXIKCjIwMDctMDctMjQgMTQ6MTQgIGFsZXgKCgkqIFNvdXJjZS9rd3N5cy9EeW5hbWljTG9hZGVyLmN4eDoKCSAgRU5IOiBkaXNhYmxlIGR5bmFtaWMgbG9hZGVyIGlmIHNoYXJlZCBsaWJyYXJpZXMgYXJlIG5vdCBzdXBwb3J0ZWQKCSAgaW5zdGVhZCBvZiBoYWNraW5nIGFyb3VuZCBpdAoKCSAgQWxleAoKMjAwNy0wNy0yNCAxMjo1MiAgYWxleAoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuaCwgTW9kdWxlcy9DUGFja1pJUC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9CbHVlR2VuZUwuY21ha2U6CgkgIEVOSDogYWRkIFJlYWRMaXN0RmlsZSgpIHRvIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLCBzbyBjbU1ha2VmaWxlCgkgIGNhbiBiZSBwcml2YXRlIGFnYWluIC1jb252ZXJ0IHRoZSBaSVAgZ2VuZXJhdG9yIHRvIHVzZSBhIGNtYWtlCgkgIHNjcmlwdCBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgZXZlcnl0aGluZyAoQ1BhY2taSVAuY21ha2UpCgoJICBBbGV4CgoyMDA3LTA3LTI0IDEwOjA1ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVOSDogZml4IHJlc291cmNlIGxlYWsKCjIwMDctMDctMjQgMTA6MDAgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLCBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OgoJICBFTkg6IGRldGVybWluZSB0aGUgY3VycmVudCBzeXN0ZW0gYWxzbyBpbiBjcGFjaywgc28gdGhlIHNlYXJjaAoJICBwYXRocyBhcmUgbG9hZGVkIEFkZGl0aW9uYWxseSB0aGUgbWFrZWZpbGUgaW4KCSAgY21DUGFja0dlbmVyaWNHZW5lcmF0b3IgaXMgbm93IHByb3RlY3RlZCBpbnN0ZWFkIG9mIHByaXZhdGUsIHNvCgkgIHdpdGggdGhlc2UgdHdvIGNoYW5nZXMgdGhlIGNwYWNrIGdlbmVyYXRvcnMgc2hvdWxkIG5vdyBiZSBhYmxlIHRvCgkgIGZpbmQgdGhlaXIgdG9vbHMgYW5kIGhvdyB0byBjYWxsIHRoZXNlIHRvb2xzIGZyb20gY21ha2Ugc2NyaXB0cywKCSAgaW5zdGVhZCBvZiBoYXJkY29kaW5nIHRoZSBzZWFyY2ggb3JkZXIgYW5kIGNvbW1hbmQgbGluZSAoYXMgZG9uZQoJICBlLmcuIGluIGNtQ1BhY2taSVBHZW5lcmF0b3IuY3h4KQoKCSAgQWxleAoKMjAwNy0wNy0yNCAwMjoyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTIzIDEzOjEzICBhbGV4CgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDoKCSAgU1RZTEU6IHB1dCBhIGxvdCBvZiBjb21tZW50cyBpbnRvIHRoZSBnZW5lcmF0ZWQgY21ha2UtY2FjaGUKCSAgcHJlbG9hZGluZyBmaWxlIHRvIGFpZCB0aGUgdXNlciB3aXRoIHVzaW5nIGl0CgoJICBBbGV4CgoyMDA3LTA3LTIzIDExOjIyICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRQeXRob25JbnRlcnAuY21ha2U6CgkgIFNUWUxFOiBtYXJrIHRoZSB2YXJpYWJsZSBhcyBhZHZhbmNlZAoKCSAgQWxleAoKMjAwNy0wNy0yMyAxMDo0NyAgYWxleAoKCSogU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHg6CgkgIEVOSDogdHJ5IHRvIGNyZWF0ZSBhIGZpbGUgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIHByZXNldHRpbmcgdGhlCgkgIGNhY2hlIHZhbHVlcyBvZiB0aGUgVFJZX1JVTigpIHJlc3VsdHMgd2hlbiBjcm9zc2NvbXBpbGluZwoKCSAgQWxleAoKMjAwNy0wNy0yMyAwOTo0OSAgYWxleAoKCSogTW9kdWxlcy86IEZpbmRBU1BFTEwuY21ha2UsIEZpbmRCWmlwMi5jbWFrZSwgRmluZEJvb3N0LmNtYWtlLAoJICBGaW5kQ1VSTC5jbWFrZSwgRmluZEN1cnNlcy5jbWFrZSwgRmluZEVYUEFULmNtYWtlLAoJICBGaW5kR251cGxvdC5jbWFrZSwgRmluZEhTUEVMTC5jbWFrZSwgRmluZEpQRUcuY21ha2UsCgkgIEZpbmRKYXNwZXIuY21ha2UsIEZpbmRMaWJYbWwyLmNtYWtlLCBGaW5kTGliWHNsdC5jbWFrZSwKCSAgRmluZE1QRUcuY21ha2UsIEZpbmRNUEVHMi5jbWFrZSwgRmluZE1vdGlmLmNtYWtlLAoJICBGaW5kT3BlbkFMLmNtYWtlLCBGaW5kUE5HLmNtYWtlLAoJICBGaW5kUGFja2FnZUhhbmRsZVN0YW5kYXJkQXJncy5jbWFrZSwgRmluZFBlcmwuY21ha2UsCgkgIEZpbmRQZXJsTGlicy5jbWFrZSwgRmluZFBoeXNGUy5jbWFrZSwgRmluZFB5dGhvbkludGVycC5jbWFrZSwKCSAgRmluZFB5dGhvbkxpYnMuY21ha2UsIEZpbmRTREwuY21ha2UsIEZpbmRUQ0wuY21ha2UsCgkgIEZpbmRUSUZGLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsIEZpbmRXZ2V0LmNtYWtlLCBGaW5kWkxJQi5jbWFrZToKCSAgRU5IOiBhZGQgc2Vjb25kIGZhaWx1cmUgbWVzc2FnZSBwYXJhbWV0ZXIgdG8KCSAgRklORF9QQUNLQUdFX0hBTkRMRV9TVEFOREFSRF9BUkdTKCksIHNvIGNtYWtlIG1vZHVsZXMgY2FuIHNwZWNpZnkKCSAgdGhlaXIgb3duIGJldHRlciBmYWlsdXJlIG1lc3NhZ2VzLiBJZiB0aGUgZGVmYXVsdCBpcyBvayB1c2UKCSAgIkRFRkFVTFRfTVNHIi4gIERvIHRoaXMgYWxzbyBmb3IgRmluZEJvb3N0LmNtYWtlICgjNTM0OSkKCgkgIEFsZXgKCjIwMDctMDctMjMgMDk6MDYgIGFsZXgKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5jeHg6CgkgIFBFUkY6IG1pY3JvIG9wdGltaXphdGlvbjogdGhlICgqcG9zMSkgJiYgKCpwb3MxPT0nLycpIHdlcmUKCSAgcmVkdW5kYW50LCBhbmQgaGFzRG91YmxlU2xhc2ggaXMgZmFsc2UgaW4gbW9zdCBjYXNlcywgc28gaW4gbW9zdAoJICBjYXNlcyAzIGNvbXBhcmlzb25zIHdlcmUgZG9uZSwgbm93IG9ubHkgb25lCgoJICBBbGV4CgoyMDA3LTA3LTIzIDAwOjQxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMjEgMjM6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0yMCAyMjo0NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTIwIDE2OjMxICBhbGV4CgoJKiBVdGlsaXRpZXMvS1dTdHlsZS9DTWFrZUZpbGVzLnR4dC5pbjoKCSAgRU5IOiBhZGQgcXVvdGVzIGFyb3VuZCB0aGUgZmlsZSBuYW1lcywgc28ga3dzdHlsZSBjYW4gaGFuZGxlIGl0CgkgIGlmIHRoZXJlIGFyZSBzcGFjZXMgaW4gdGhlIHBhdGgKCgkgIEFsZXgKCjIwMDctMDctMjAgMTQ6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZXIgbW9yZSBtZW1vcnkKCSAgZm9yIHBhcnNlciBhbmQgYWRkIHRlc3QgdG8gY29tcGxleCB0aGF0IHNldHMgYSBodWdlIHN0cmluZwoKMjAwNy0wNy0yMCAxMzowMyAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBFTkg6IGZpeCBkaXYgYnkgMAoKMjAwNy0wNy0yMCAxMjoyNSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtY3VybC9DTWFrZS9PdGhlclRlc3RzLmNtYWtlOiBFTkg6IGNoYW5nZSBvcmRlciBzbwoJICB3aW5kb3dzIGZ1bmN0aW9ucyBhcmUgZm91bmQgZmlyc3Qgc2luY2UgdHJ5IGNvbXBpbGUgaXMgc2xvdyBvbgoJICB3aW5kb3dzCgoyMDA3LTA3LTIwIDEwOjA3ICBob2ZmbWFuCgoJKiBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiBjaGFuZ2UgbmFtZQoKMjAwNy0wNy0yMCAwODo0OCAgYWxleAoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OgoJICBTVFlMRTogZXZlbiBtb3JlIG91dHB1dCB3aGVuIC0tZGVidWctb3V0cHV0IGlzIHVzZWQKCgkgIEFsZXgKCjIwMDctMDctMjAgMDg6MzYgIGFsZXgKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRXhwb3J0Q29tbWFuZC5oLAoJICBjbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5jeHgsIGNtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmgsCgkgIGNtRmlsZUNvbW1hbmQuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtSGV4RmlsZUNvbnZlcnRlci5jeHgsIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaCwKCSAgY21UcnlSdW5Db21tYW5kLmgsIGNtYWtlLmgsIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDctMTkgMjE6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0xOSAxNTozOSAgYWxleAoKCSogTW9kdWxlcy9DUGFjay5TVEdaX0hlYWRlci5zaC5pbjoKCSAgRU5IOiB0cnkgaWYgdGFpbCB3b3JrcyB3aXRoIHRoZSAtbiArPG51bWJlcj4gc3ludGF4LCBpZiBub3QgdXNlCgkgIG9ubHkgIis8bnVtYmVyPiIgKEdOVSB0YWlsIHdhcm5zIHRoYXQgdGhpcyBpcyBkZXByZWNhdGVkKQoKCSAgQWxleAoKMjAwNy0wNy0xOSAxMzo0MCAgYWxleAoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOgoJICBFTkg6IGFkZCBUS19GT1VORCBhbmQgVENMVEtfRk9VTkQgVENMX0ZPVU5EIGlzIG5vdyBUUlVFIGlmIFRjbAoJICB3YXMgZm91bmQsIGJlZm9yZSBpdCB3YXMgb25seSBUUlVFIGlmIFRjbCBhbmQgVGsgd2VyZSBmb3VuZAoKCSAgQWxleAoKMjAwNy0wNy0xOSAxMTo1OSAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgQlVHOiBmaXggdHlwbwoKCSAgQWxleAoKMjAwNy0wNy0xOSAxMTo0NyAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgRU5IOiBtYWtlIHRoZSBsaXN0IG9mIG1vZHVsZXMgZ2xvYmFsCgoJICBBbGV4CgoyMDA3LTA3LTE5IDExOjEzICBhbGV4CgoJKiBTb3VyY2UvOiBjbUZpbmRQYWNrYWdlQ29tbWFuZC5oLCBjbU1ha2VmaWxlLmN4eCwgY21ha2VtYWluLmN4eCwKCSAgQ1BhY2svY3BhY2suY3h4OgoJICBTVFlMRTogZml4IHNvbWUgdHlwb3MsIG5pY2VyIGRlYnVnIG91dHB1dAoKCSAgQWxleAoKMjAwNy0wNy0xOSAxMDoyMCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZToKCSAgRU5IOiBvbmx5IGxvYWQgdGhlIHN0YXRpYyBtb2R1bGVzIGluIHRoZSBMb2FkQWxsIGZ1bmN0aW9uCgoJICBBbGV4CgoyMDA3LTA3LTE5IDA5OjQyICBhbGV4CgoJKiBNb2R1bGVzLzogQ1BhY2suU1RHWl9IZWFkZXIuc2guaW4sIEZpbmRQSFA0LmNtYWtlOgoJICBCVUc6IGZpeCAjNTMyOSwgaWYgL3Vzci94cGc0L2Jpbi90YWlsIGV4aXN0cywgdXNlIHRoaXMgb25lIC0+IG9uCgkgIFN1bk9TIC91c3IvYmluL3RhaWwgZG9lc24ndCB1bmRlcnN0YW5kIHRoZSAtbiArPG51bWJlcj4gc3ludGF4CgkgIC1yZW1vdmUgc3RhbmRhcmQgc2VhcmNoZCBkaXJzIGZyb20gRmluZFBIUDQuY21ha2UKCgkgIEFsZXgKCjIwMDctMDctMTkgMDk6MDAgIGFsZXgKCgkqIE1vZHVsZXMvOiBGaW5kQVNQRUxMLmNtYWtlLCBGaW5kQ1VSTC5jbWFrZSwgRmluZEN1cnNlcy5jbWFrZSwKCSAgRmluZERDTVRLLmNtYWtlLCBGaW5kRVhQQVQuY21ha2UsIEZpbmRHTFVULmNtYWtlLCBGaW5kR1RLLmNtYWtlLAoJICBGaW5kR251cGxvdC5jbWFrZSwgRmluZEhTUEVMTC5jbWFrZSwgRmluZE1QRUcuY21ha2UsCgkgIEZpbmRNUEVHMi5jbWFrZSwgRmluZE1vdGlmLmNtYWtlLCBGaW5kUGVybC5jbWFrZSwKCSAgRmluZFBoeXNGUy5jbWFrZSwgRmluZFBpa2UuY21ha2UsIEZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBGaW5kU0RMLmNtYWtlLCBGaW5kVENMLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsIEZpbmRXZ2V0LmNtYWtlLAoJICByZWFkbWUudHh0OgoJICBFTkg6IHVzZSB0aGUgbmV3IEZJTkRfUEFDS0FHRV9IQU5ETEVfU1RBTkRBUkRfQVJHUygpIG1hY3JvIGluCgkgIG1vc3Qgb2YgdGhlIG5vdC10b28tY29tcGxpY2F0ZWQgbW9kdWxlcyAtcmVtb3ZlIHVubmVjZXNzYXJ5CgkgIGRlZmF1bHQgc2VhcmNoIHBhdGhzIHVzZWQgaW4gdGhlIEZJTkRfWFhYKCkgY2FsbHMKCgkgIEFsZXgKCjIwMDctMDctMTggMTQ6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0xOCAxMzo1NiAgYWxleAoKCSogTW9kdWxlcy86IEZpbmRCWmlwMi5jbWFrZSwgRmluZEN1cHMuY21ha2UsIEZpbmRKUEVHLmNtYWtlLAoJICBGaW5kSmFzcGVyLmNtYWtlLCBGaW5kTGliWHNsdC5jbWFrZSwgRmluZE9wZW5BTC5jbWFrZSwKCSAgRmluZFBORy5jbWFrZSwgRmluZFBlcmxMaWJzLmNtYWtlLCBGaW5kUHl0aG9uSW50ZXJwLmNtYWtlLAoJICBGaW5kVENMLmNtYWtlLCBGaW5kVElGRi5jbWFrZSwgRmluZFpMSUIuY21ha2U6CgkgIEVOSDogdXNlIHRoZSBuZXcgRklORF9QQUNLQUdFX0hBTkRMRV9TVEFOREFSRF9BUkdTIGluIHNvbWUgb2YgdGhlCgkgIEZpbmRYWFggbW9kdWxlcywgcmVtb3ZlIHNvbWUgb2YgdGhlIGV4dHJhIHNlYXJjaCBwYXRocyB3aGljaCBhcmUKCSAgYWxzbyBzZWFyY2hlZCBieSBkZWZhdWx0CgoJICBBbGV4CgoyMDA3LTA3LTE4IDEzOjI2ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VMaXN0cy50eHQsIEZpbmRMaWJYbWwyLmNtYWtlLAoJICBGaW5kUGFja2FnZUhhbmRsZVN0YW5kYXJkQXJncy5jbWFrZSwgRmluZFB5dGhvbkxpYnMuY21ha2U6CgkgIEVOSDogYWRkIGEgbWFjcm8gRklORF9QQUNLQUdFX0hBTkRMRV9TVEFOREFSRF9BUkdTKExpYlhtbDIKCSAgTElCWE1MMl9MSUJSQVJJRVMgTElCWE1MMl9JTkNMVURFX0RJUikgd2hpY2ggaGFuZGxlcyB0aGUgcmVxdWlyZWQKCSAgYW5kIFFVSUVUIGFyZ3VtZW50cyBhbmQgc2V0cyA8TkFNRT5fRk9VTkQKCgkgIEFsZXgKCjIwMDctMDctMTggMTA6NTIgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZToKCSAgRU5IOiBpZiBDTUFLRV8oQ3xDWFgpX0NPTVBJTEVSIGlzIHByZXNldCB0byBhIGxpc3Qgb2YgdHdvCgkgIGVsZW1lbnRzLCB1c2UgdGhlIGZpcnN0IG9uZSBhcyB0aGUgY29tcGlsZXIgYW5kIHRoZSBzZWNvbmQgb25lIGFzCgkgIEFSRzEgZm9yIHRoZSBjb21waWxlcgoKCSAgQWxleAoKMjAwNy0wNy0xOCAxMDoxOSAgYWxleAoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtRXh0cmFDb2RlQmxvY2tzR2VuZXJhdG9yLmN4eCwKCSAgY21ha2UuY3h4OgoJICBFTkg6IGJ1aWxkIGNvZGVibG9ja3MgZ2VuZXJhdG9yIGFsc28gb24gV2luZG93cwoKCSAgQWxleAoKMjAwNy0wNy0xNyAxMzo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaDogU1RZTEU6IGFkZCBtb3JlIGRvY3MKCjIwMDctMDctMTcgMTM6MTAgIGFsZXgKCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OgoJICBDT01QOiBmaXggd2FybmluZyBhYm91dCB1bnVzZWQgdmFyaWFibGUKCgkgIEFsZXgKCjIwMDctMDctMTcgMTI6MDEgIGFsZXgKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2VtYWluLmN4eDoKCSAgQ09NUDogZml4IGJ1aWxkIG9uIFdpbmRvd3MsIHdoZXJlIEdldEN1cnJlbnREaXJlY3R5KCkgaXMKCSAgcmVkZWZpbmVkIHRvIEdldEN1cnJlbnREaXJlY3RvcnlBKCkgLWNvcnJlY3QgcmV0dXJuIHZhbHVlIGZvcgoJICBtZDVzdW0KCgkgIEFsZXgKCjIwMDctMDctMTcgMTA6NDQgIGFsZXgKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbWFrZS5jeHgsIGNtYWtlbWFpbi5jeHg6CgkgIFNUWUxFOiBmaXggbGluZSBsZW5ndGhzIGFuZCBhZGQgInJlbW92ZSAtZiIgdG8gdGhlIGRvY3MKCgkgIEFsZXgKCjIwMDctMDctMTcgMDk6MjUgIGFsZXgKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1lc3NhZ2VDb21tYW5kLmN4eCwKCSAgY21ha2VtYWluLmN4eDoKCSAgRU5IOiBwcm9kdWNlIGEgbG90IG1vcmUgb3V0cHV0IHdoZW4gcnVubmluZyB3aXRoIC0tZGVidWctb3V0cHV0CgkgIC10cnkgdG8gZml4IGJ1aWxkIGVycm9yIG9uIEhQVVgKCgkgIEFsZXgKCjIwMDctMDctMTcgMDg6NTEgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93c1BhdGhzLmNtYWtlOgoJICBFTkg6IGFsc28gbG9vayBpbiB0aGUgaW5jbHVkZS8sIGxpYi8gYW5kIGJpbi8gZGlyZWN0b3JpZXMgaW4gdGhlCgkgIGNtYWtlIGluc3RhbGwgZGlyIHVuZGVyIHdpbmRvd3MsIHRoaXMgd2lsbCBoZWxwIGUuZy4gcGVvcGxlIHVzaW5nCgkgIGtkZXdpbmluc3RhbGxlciBhbmQgc2ltaWxhciBzZXR1cHMKCgkgIEFsZXgKCjIwMDctMDctMTcgMDg6NDEgIGFsZXgKCgkqIE1vZHVsZXMvOiBLREUzTWFjcm9zLmNtYWtlLCBGaW5kS0RFMy5jbWFrZToKCSAgRU5IOiBkb24ndCBoYXJkY29kZSB0aGUgL2xpYi9rZGUzLyBkaXJlY3RvcnkgZm9yIHRoZSBsaWJ0b29sCgkgIGZpbGVzLCBidXQgbWFrZSBpdCBhZGp1c3RhYmxlIGFuZCBkZXRlY3QgaWYgbGlia2RlY29yZS5zbyBpcyBhCgkgIDY0Yml0IGxpYnJhcnkKCgkgIEFsZXgKCjIwMDctMDctMTYgMTU6MTAgIGFsZXgKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDoKCSAgQlVHOiBmaXggYm9vdHN0cmFwcGluZywgbWQ1c3VtIGRpc2FibGVkIGluIGJvb3RzdHJhcHBpbmcgbW9kZQoKCSAgQWxleAoKMjAwNy0wNy0xNiAxMzoyOSAgYWxleAoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvQ01ha2VMaXN0cy50eHQ6CgkgIFNUWUxFOiByZW1vdmUgZGVidWcgb3V0cHV0CgoyMDA3LTA3LTE2IDEzOjI2ICBhbGV4CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFRlc3RzL091dE9mU291cmNlL091dE9mU291cmNlU3ViZGlyL0NNYWtlTGlzdHMudHh0OgoJICBCVUc6IEdFVF9ESVJFQ1RPUllfUFJPUEVSVFkoSU5DTFVERV9ESVJFQ1RPUklFU3xMSU5LX0RJUkVDVE9SSUVTKQoJICB3YXNuJ3Qgd29ya2luZywgZm9yIGJvdGggdGhlIHJlc3VsdCB3YXMgYWx3YXlzIGVtcHR5LCBzaW5jZQoJICBjbU1ha2VmaWxlOjpHZXRQcm9wZXJ0eSgpIHJlY29nbml6ZWQgaXQgYXMgYSBzcGVjaWFsIHByb3BlcnR5LAoJICBjb25zdHJ1Y3RlZCBhIGNvcnJlY3QgcmV0dXJuIHZhbHVlIGFuZCBjYWxsZWQKCSAgY21NYWtlZmlsZTo6U2V0UHJvcGVydHkoKSB3aXRoIHRoaXMgbGlzdCBvZiBkaXJlY3Rvcmllcywgd2hpY2gKCSAgdGhlbiBkaWRuJ3QgYWN0dWFsbHkgc2V0IHRoZSBwcm9wZXJ0eSwgYnV0IGFwcGxpZWQgaXQgdG8gdGhlCgkgIGludGVybmFsIHZlY3RvciBvZiBpbmNsdWRlL2xpbmsgZGlyZWN0b3JpZXMuIFRoZSBmb2xsb3dpbmcKCSAgZ2V0UHJvcGVydHlWYWx1ZSBpbiBjbU1ha2VmaWxlOjpHZXRQcm9wZXJ0eSgpIHRoZW4gc3RpbGwgZGlkbid0CgkgIGZpbmQgaXQgYW5kIHJldHVybmVkIG5vdGhpbmcuIE5vdyBmb3IgYWxsIHNwZWNpYWwgcHJvcGVydHkgdGhlCgkgIHN0YXRpYyBzdHJpbmcgb3V0cHV0IGlzIHVzZWQgYW5kIGl0cyBjb250ZW50IGlzIHJldHVybmVkLiBJJ20gbm90CgkgIHN1cmUgaXQgaXMgdGhlIHJpZ2h0IHdheSB0byBmaXggdGhpcyBwcm9ibGVtIGJ1dCBhdCBsZWFzdCBpdAoJICBzZWVtcyB0byB3b3JrIGFuZCBpdCBmaXhlcyB0aGUgUGFyYXZpZXczIGJ1aWxkCgoJICBBbGV4CgoyMDA3LTA3LTE2IDEwOjU5ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgUmVhZG1lLnR4dDogRU5IOiBmaW5hbCAyLjQuNwljb21taXQKCjIwMDctMDctMTYgMTA6NTQgIGFsZXgKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbVN5c3RlbVRvb2xzLmN4eDoKCSAgRU5IOiBhcHBseSBwYXRjaCBmcm9tIE1hdGhpZXUsIGFkZCBhcmd1bWVudCAtRSBtZDVzdW0gdG8gY29tcHV0ZQoJICBtZDVzdW1zIG9mIGZpbGVzLCBjb21wYXRpYmxlIHRvIG1kNXN1bSBvdXRwdXQKCgkgIEFsZXgKCjIwMDctMDctMTYgMTA6NTQgIGhvZmZtYW4KCgkqIFJlYWRtZS50eHQ6IEVOSDoKCjIwMDctMDctMTYgMTA6NTMgIGhvZmZtYW4KCgkqIFJlYWRtZS50eHQ6IEVOSDogY2xlYW4gdXAgYSBiaXQKCjIwMDctMDctMTYgMTA6MTMgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vTmV0QlNELmNtYWtlOgoJICBCVUc6IHRoZSBQbHVnaW4gdGVzdCBmYWlscyBvbiBOZXRCU0QsIGxldCdzIHNlZSBpZiB0aGlzIGZpeGVzIGl0CgoJICBBbGV4CgoyMDA3LTA3LTE2IDA5OjA4ICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZToKCSAgRU5IOiBhbHNvIGFkZCB0aGUgaW5zdGFsbCBiYXNlIGRpciBvZiB0aGUgcnVubmluZyBjbWFrZSB0byB0aGUKCSAgc2VhcmNoIGRpcmVjdG9yaWVzIGZvciB0aGUgRklORF9YWFgoKSBjb21tYW5kcywgZm9yIHRoZSBjYXNlIHRoYXQKCSAgc29tZWJvZHkgaGFzIGl0cyBvd24gaW5zdGFsbCB0cmVlCgoJICBBbGV4CgoyMDA3LTA3LTEzIDEyOjAzICBhbGV4CgoJKiBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDoKCSAgU1RZTEU6IGJldHRlciBlcnJvciBtZXNzYWdlLCBuYW1lIHRoZSBuZXcgbWFucGFnZXMgY21ha2Vjb21tYW5kcywKCSAgY21ha2Vjb21wYXQsIGNtYWtlcHJvcHMgYW5kIGNtYWtlbW9kdWxlcwoKCSAgQWxleAoKMjAwNy0wNy0xMyAxMToyMCAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EcmFnb25GbHkuY21ha2U6CgkgIEVOSDogYWRkIERyYWdvbkZseSBCU0QsIHdoaWNoIGlzIHZlcnkgY2xvc2UgdG8gRnJlZUJTRCAoIzQ1MDApCgoJICBBbGV4CgoyMDA3LTA3LTEzIDEwOjI5ICBhbGV4CgoJKiBNb2R1bGVzLzogQ2hlY2tDU291cmNlUnVucy5jbWFrZSwgQ2hlY2tDWFhTb3VyY2VSdW5zLmNtYWtlOgoJICBCVUc6IHRoZSBTRVQoIC4uLiBDQUNIRSBJTlRFUk5BTCkgZGlkbid0IHdvcmsgYXMgZXhwZWN0ZWQsIHNpbmNlCgkgIHRoZSB2YXJpYWJsZSBpcyBhbHJlYWR5IGFkZGVkIHRvIHRoZSBjYWNoZSBpbnNpZGUKCSAgY21UcnlSdW5Db21tYW5kLmN4eCwgc28gdGhlIHZhbHVlIHVzZWQgaGVyZSB3YXMgaWdub3JlZC4KCSAgQWRkaXRpb25hbGx5IHRoZSBJTlRFUk5BTCBtYWRlIGl0IGludGVybmFsLCB3aGljaCBzaG91bGRuJ3QgYmUKCSAgZG9uZSB3aGVuIGNyb3NzIGNvbXBpbGluZywgc2luY2UgaGVyZSB0aGUgdXNlciBpcyByZXF1aXJlZCB0bwoJICBlZGl0IHRoaXMgdmFyaWFibGUgbWFudWFsbHkgZS5nLiB1c2luZyBjY21ha2UuCgoJICBBbGV4CgoyMDA3LTA3LTEzIDAwOjU4ICBhbGV4CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21FeHRyYUNvZGVCbG9ja3NHZW5lcmF0b3IuY3h4LAoJICBjbUV4dHJhQ29kZUJsb2Nrc0dlbmVyYXRvci5oLCBjbWFrZS5jeHg6CgkgIEVOSDogYWRkIGEgc2ltcGxlIENvZGVCbG9ja3MgZXh0cmEgZ2VuZXJhdG9yLCBlYXJseSBhbHBoYSBzdGFnZSwKCSAgdGhlcmUgc2VlbXMgdG8gYmUgaW50ZXJlc3QgaW4gaXQKCgkgIEFsZXgKCjIwMDctMDctMTIgMTY6MTUgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQmx1ZUdlbmVMLmNtYWtlOgoJICBFTkg6IGFkZCB0aGUgc3RhdGljIGxpYnMgYWx3YXlzIHRvIHRoZSBsaW5rIGxpYnMsIGlmIHRoZXkgYXJlIG5vdAoJICB1c2VkIGl0IHNob3VsZG4ndCBodXJ0CgoJICBBbGV4CgoyMDA3LTA3LTEyIDE1OjAwICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VMaXN0cy50eHQsIENoZWNrU3RydWN0SGFzTWVtYmVyLmNtYWtlOgoJICBFTkg6IGFkZCBtYWNybyB0byB0ZXN0IGlmIGEgbWVtYmVyIGhhcyBzcGVjaWZpZWQgc3RydWN0LCBlLmcuCgkgIGNoZWNrX3N0cnVjdF9oYXNfbWVtYmVyKCJzdHJ1Y3Qgc3RhdCIgc3RfcmRldiAgICAiJHtDRkdfSEVBREVSU30iCgkgIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFVikKCgkgIEFsZXgKCjIwMDctMDctMTIgMTM6NDEgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlcklkLmMsIENNYWtlQ1hYQ29tcGlsZXJJZC5jcHAsCgkgIFBsYXRmb3JtL0dlbmVyaWMtQURTUC1BU00uY21ha2UsIFBsYXRmb3JtL0dlbmVyaWMtQURTUC1DLmNtYWtlLAoJICBQbGF0Zm9ybS9HZW5lcmljLUFEU1AtQ1hYLmNtYWtlLAoJICBQbGF0Zm9ybS9HZW5lcmljLUFEU1AtQ29tbW9uLmNtYWtlOgoJICBFTkg6IGFkZCBzdXBwb3J0IGZvciB0aGUgQURTUCB0b29sY2hhaW5zIGZvciBCbGFja2ZpbiwgU2hhcmsgYW5kCgkgIFRpZ2VyU2hhcmsgRFNQcywgcGF0Y2ggZnJvbSBSYXBoYWVsIENvdHR5CgoJICBBbGV4CgoyMDA3LTA3LTEyIDExOjU2ICBhbGV4CgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmgsCgkgIFRlc3RzL0NNYWtlVGVzdHMvTGlzdFRlc3QuY21ha2UuaW46CgkgIEVOSDogYWRkIExJU1QoQ09OVEFJTlMgLi4uKSBwYXRjaCBmcm9tICJNaWd1ZWwgQS4KCSAgRmlndWVyb2EtVmlsbGFudWV2YSwgbWlndWVsZiAoQVQpIGllZWUub3JnIGFkZGVkIHRlc3RzIGZvcgoJICBMSVNUKENPTlRBSU5TLCBTT1JULCBSRVZFUlNFKQoKCSAgQWxleAoKMjAwNy0wNy0xMiAxMTowNSAgYWxleAoKCSogTW9kdWxlcy9GaW5kQ1VSTC5jbWFrZToKCSAgQlVHOiBob25vciBSRVFVSVJFRCBhbmQgUVVJRVRMWSAoIzUzMTIpCgoJICBBbGV4CgoyMDA3LTA3LTEyIDEwOjM4ICBhbGV4CgoJKiBSZWFkbWUudHh0OgoJICBTVFlMRTogYWRkIFJlYWRtZS50eHQgd2l0aCBpbnN0cnVjdGlvbnMgaG93IHRvIGJ1aWxkIGNtYWtlLCBmaXgKCSAgIzUyOTYKCgkgIEFsZXgKCjIwMDctMDctMTIgMTA6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5jeHg6IEJVRzogZml4IHNjcmV3dXAgaW4KCSAgR2V0RGlyZWN0b3J5UHJvcC4uLgoKMjAwNy0wNy0xMiAwODozNyAgYWxleAoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIE1vZHVsZXMvQ01ha2VBU01Db21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRm9yY2VDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUphdmFDb21waWxlci5jbWFrZS5pbjogRU5IOiBzZWNvbmQgdHJ5IGZvciBoYW5kbGluZwoJICB0aGUgbGlua2VyIGxhbmd1YWdlIHdpdGggaW50ZWdlciBwcmlvcml0eSB2YWx1ZXMgKHJldHVybmluZyBhCgkgIHBvaW50ZXIgdG8gYSBzdHJpbmcgb24gdGhlIHN0YWNrIGlzIG5vIGdvb2QgaWRlYSkKCgkgIEFsZXgKCjIwMDctMDctMTEgMTc6MjkgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBNb2R1bGVzL0NNYWtlQVNNQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUZvcmNlQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VKYXZhQ29tcGlsZXIuY21ha2UuaW46IENPTVA6IHJldmVydCBsYXN0IGNvbW1pdCBmb3IKCSAgbm93LCBicm9rZSBWaXN1YWwgU3R1ZGlvCgoJICBBbGV4CgoyMDA3LTA3LTExIDE2OjIyICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlQVNNQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUZvcmNlQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VKYXZhQ29tcGlsZXIuY21ha2UuaW4sIE1vZHVsZXMvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4OgoJICBFTkg6IENNQUtFXzxMQU5HPl9MSU5LRVJfUFJFRkVSRU5DRSBpcyBub3cgYW4gaW50ZWdlciBwcmlvcml0eSwKCSAgbm90IGEgdHdvLXN0ZXAgcHJpb3JpdHkgKE5vbmUgb3IgUHJlZmVyZWQpIEN1cnJlbnQgb3JkZXI6IEFTTSAwLAoJICBDIDEwLCBGb3J0cmFuIDIwLCBDWFggMzAsIEphdmEgNDAgVGhpcyBpcyB0aGUgc2FtZSBvcmRlciBhcwoJICBhdXRvbWFrZSBjaG9zZXM6CgkgIGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9hdXRvbWFrZS9tYW51YWwvaHRtbF9ub2RlL0hvdy10aGUtTGlua2VyLWlzLUNob3Nlbi5odG1sCgoJICBUaGlzIGNoYW5nZSBzaG91bGQgYmUgYmFja3dhcmQgY29tcGF0aWJsZTogaWYgdGhlcmUgaXMgYSBwcm9qZWN0CgkgIHVzaW5nIGZvcnRyYW4gYW5kIENYWCwgdGhleSBoYWQgdG8gc2V0IHRoZSBMSU5LRVJfTEFOR1VBR0UKCSAgZXhwbGljaXRlbHksIG90aGVyd2lzZSBjbWFrZSBjb21wbGFpbmVkIChidXQgc3RpbGwgZ2VuZXJhdGVkIHRoZQoJICBwcm9qZWN0IGZpbGVzKS4gRXhwbGljaXRlbHkgc2V0dGluZyB0aGUgbGlua2VyIGxhbmd1YWdlIHN0aWxsCgkgIG92ZXJyaWRlcyBhdXRvbWF0aWMgZGV0ZWN0aW9uLiAgSWYgc29tZWJvZHkgaGFzIGEgY3VzdG9tIGxhbmd1YWdlCgkgIGZvciBjbWFrZSBhbmQgdGhlIFBSRUZFUkVOQ0Ugc3RhcnRzIHdpdGggIlAiLCBpdHMgY2hhbmdlZCB0byAxMDAsCgkgIHdoaWNoIGdpdmVzIGl0IHByZWZlcmVuY2Ugb3ZlciBhbGwgb3RoZXIgbGFuZ3VhZ2VzIChleGNlcHQgdGhlCgkgIG90aGVyIGN1c3RvbSBsYW5ndWFnZXMgd2hpY2ggaGF2ZSBhbHNvICJQcmVmZXJlZCIpLiAiTm9uZSIgaXMKCSAgY29udmVydGVkIHRvIDAuCgoJICBBbGV4CgoyMDA3LTA3LTExIDE1OjUzICBhbGV4CgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaCwKCSAgY21Qcm9wZXJ0eURlZmluaXRpb24uY3h4LCBjbVByb3BlcnR5RGVmaW5pdGlvbi5oLCBjbWFrZS5jeHgsCgkgIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHg6CgkgIFNUWUxFOiBzb3J0IHRoZSBwcm9wZXJ0eSBkb2N1bWVudGF0aW9uIGludG8KCSAgZ2xvYmFsL2RpcmVjdG9yeS90YXJnZXQvdGVzdC9zb3VyY2VmaWxlIGFuZCB2YXJpYWJsZSBzZWN0aW9ucwoKCSAgQWxleAoKMjAwNy0wNy0xMSAxNTo1MCAgYWxleAoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OgoJICBFTkg6IGNoYW5nZSB0aGUgd2F5ICNjbWFrZWRlZmluZSBpcyBjaGFuZ2VkIHRvICN1bmRlZiwgc28gaXQgaXMKCSAgc2ltaWxhciB0byB3aGF0IGF1dG9jb25mIGRvZXMuIFRoaXMgbWFrZXMgcG9ydGluZyBzb2Z0d2FyZSBmcm9tCgkgIGF1dG9jb25mIHRvIGNtYWtlIGVhc2llciwgc2luY2UgaXQncyBlYXNpZXIgdG8gZGlmZiB0aGUgcmVzdWx0aW5nCgkgIGNvbmZpZyBoZWFkZXJzLgoKCSAgTm93IHRoZSBmb2xsb3dpbmcgI2NtYWtlZGVmaW5lIEhBVkVfU1RSSU5HX0ggMSAjY21ha2VkZWZpbmUKCSAgSEFWRV9TVFJMQ0FUIDEKCgkgIHByb2R1Y2U6CgoJICAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMSAvKiAjdW5kZWYgSEFWRV9TVFJMQ0FUICovCgoJICB3aGVyZWFzIGJlZm9yZSB0aGV5IHByb2R1Y2VkOgoKCSAgI2RlZmluZSBIQVZFX1NUUklOR19IIDEgLyogI3VuZGVmIEhBVkVfU1RSTENBVCAxICovCgoJICBTaW5jZSBpdCdzIGNvbW1lbnRlZCBvdXQgYW55d2F5LCBpdCdzIG5vdyBjaGFuZ2UgaW4gYmVoYXZpb3VyLgoKCSAgQWxleAoKMjAwNy0wNy0xMSAxMzozOSAgYWxleAoKCSogTW9kdWxlcy9DTWFrZUFTTUluZm9ybWF0aW9uLmNtYWtlOgoJICBFTkg6IGFkZCBDTUFLRV9JTkNMVURFX0ZMQUdfQVNNJHtBU01fRElBTEVDVH0gYW5kIGRvbid0IGFsbG93CgkgIHByZXNldCBDTUFLRV94eHhfSU5GT1JNQVRJT04gZmlsZXMKCgkgIEFsZXgKCjIwMDctMDctMTAgMjE6MzggIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTQuY21ha2U6CgkgIFNUWUxFOiB1c2UgRVhFQ1VURV9QUk9DRVNTKCkgaW5zdGVhZCBvZiBFWEVDX1BST0dSQU0oKQoKCSAgQWxleAoKMjAwNy0wNy0xMCAxNzoxMSAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9lQ29zLmNtYWtlOgoJICBFTkg6IGFkZCB0aGUgZWNvcyBpbmNsdWRlIGRpciBhbmQgdGhlIGVjb3MgZGVmaW5pdGlvbnMgYnkgZGVmYXVsdAoKCSAgQWxleAoKMjAwNy0wNy0xMCAxNDowNSAgbWFydGluawoKCSogU291cmNlL2NtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5jeHg6IEVOSDogYWRkZWQgc29tZQoJICBkb2N1bWVudGF0aW9uIHRvIGV4cGxhaW4gYSBzZWN0aW9uIG9mIGNvZGUgYSBiaXQgYmV0dGVyCgoyMDA3LTA3LTEwIDEzOjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4OiBFTkg6CgkgIHNvbWUgY2xlYW51cCBvZiBnZXQgcHJvcGVydHkgY29tbWFuZHMKCjIwMDctMDctMDkgMTQ6MzAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmg6IFNUWUxFOiBSZW1vdmVkIHN0cmF5CgkgIGNvbW1lbnQuCgoyMDA3LTA3LTA5IDEzOjA3ICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtL2VDb3MuY21ha2U6CgkgIEVOSDogYWRkIHN1cHBvcnQgZm9yIGJ1aWxkaW5nIGVDb3MgYXBwbGljYXRpb25zIG5hdGl2ZWx5CgoJICBBbGV4CgoyMDA3LTA3LTA5IDA4OjE2ICBhbGV4CgoJKiBUZXN0cy9Bc3NlbWJsZXIvbWFpbi5jOiBDT01QOiBob3BlZnVsbHkgZml4IHRlc3QsIGZpbmFsbHkKCgkgIEFsZXgKCjIwMDctMDctMDkgMDU6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0wOSAwMDo0NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTA4IDIyOjA2ICBhbGV4CgoJKiBUZXN0cy9Bc3NlbWJsZXIvbWFpbi5jOiBDT01QOiBmaXggdGVzdAoKCSAgQWxleAoKMjAwNy0wNy0wNyAxNzoyMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTA2IDE5OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMDYgMTQ6MDIgIGFsZXgKCgkqIFRlc3RzL0Fzc2VtYmxlci9DTWFrZUxpc3RzLnR4dDoKCSAgQlVHOiBmaXggdGVzdAoKCSAgQWxleAoKMjAwNy0wNy0wNiAxMzowOCAgYWxleAoKCSogVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OgoJICBCVUc6IHRoZSBjbWFrZSBkZXBzIGRlcGVuZCBvbiBjbWFrZQoKCSAgQWxleAoKMjAwNy0wNy0wNiAwODo1MyAgYWxleAoKCSogVGVzdHMvQXNzZW1ibGVyLzogQ01ha2VMaXN0cy50eHQsIG1haW4uYzoKCSAgQ09NUDogT1BUSU9OQUwgd2FzIG1pc3NpbmcgaW4gRU5BQkxFX0xBTkdVQUdFKCkgLXRoZSBhc3NlbWJsZXIKCSAgZmlsZSBzZWVtcyB0byB3b3JrIGZvciBMaW51eCBhbmQgRnJlZUJTRCAtdHJ5IHRvIGZpeCBtYWluKCkgZm9yCgkgIEhQLVVYIGNvbXBpbGVyCgoJICBBbGV4CgoyMDA3LTA3LTA1IDE2OjM4ICBhbGV4CgoJKiBUZXN0cy9Bc3NlbWJsZXIvQ01ha2VMaXN0cy50eHQ6CgkgIFNUWUxFOiBzb21lIG1vcmUgb3V0cHV0CgoJICBBbGV4CgoyMDA3LTA3LTA1IDE2OjMyICBhbGV4CgoJKiBUZXN0cy9Bc3NlbWJsZXIvOiBDTWFrZUxpc3RzLnR4dCwgbWFpbi1saW51eC14ODYtZ2FzLnM6CgkgIENPTVA6IHNraXAgQVBQTEUsIHNpbmNlIHRoZXJlIHdpdGggdW5pdmVyc2FsIGJpbmFyaWVzIHRoZQoJICBhc3NlbWJsZXIgZmlsZSB3b3VsZCBiZSBidWlsdCBmb3IgYm90aCBhcmNoaXRlY3R1cmVzCgoJICBBbGV4CgoyMDA3LTA3LTA1IDE2OjExICBhbGV4CgoJKiBUZXN0cy9Bc3NlbWJsZXIvQ01ha2VMaXN0cy50eHQ6CgkgIENPTVA6IGxldCdzIHNlZSBpZiB0aGlzIGFzc2VtYmxlciBmaWxlIHdvcmtzIGFsc28gb24gb3RoZXIKCSAgcGxhdGZvcm1zIHRoYW4gbGludXguLi4KCgkgIEFsZXgKCjIwMDctMDctMDUgMTU6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNy0wNSAwOTowNSAgYWxleAoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgQXNzZW1ibGVyL0NNYWtlTGlzdHMudHh0LAoJICBBc3NlbWJsZXIvbWFpbi1saW51eC14ODYtZ2FzLnMsIEFzc2VtYmxlci9tYWluLmM6CgkgIEVOSDogYWRkIGEgc2ltcGxlIGFzc2VtYmxlciB0ZXN0CgoJICBBbGV4CgoyMDA3LTA3LTA0IDA4OjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDctMDMgMTY6MTAgIGFsZXgKCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50c0hlbHBlci5jeHgsCgkgIGNtRXh0ZXJuYWxNYWtlZmlsZVByb2plY3RHZW5lcmF0b3IuY3h4LCBjbWFrZS5jeHg6CgkgIFNUWUxFOiBuYW1lIHRoZSBleHRlcm5hbCBnZW5lcmF0b3IgIktEZXZlbG9wMyAtIFVuaXggTWFrZWZpbGVzIgoJICBpbnN0ZWFkIG9mICJVbml4IE1ha2VmaWxlcyAtIEtEZXZlbG9wMyIgLWluaXRpYWxpemUgSWdub3JlIHRvIDAsCgkgIGNyYXNoZXMgb3RoZXJ3aXNlCgoJICBBbGV4CgoyMDA3LTA3LTAzIDExOjQxICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6CgkgIFNUWUxFOiBkb24ndCB0ZXN0IHR3aWNlIGZvciBBUFBMRQoKCSAgQWxleAoKMjAwNy0wNy0wMyAwOTo0NSAga2luZwoKCSogRGFydExvY2FsLmNvbmYuaW46IEVOSDogQWRkaW5nIGh5dGhsb3RoIGV4cGVjdGVkIG5pZ2h0bHkKCSAgc3VibWlzc2lvbnMuCgoyMDA3LTA3LTAzIDA4OjI2ICBhbGV4CgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaDoKCSAgQ09NUDogZml4IGNvbXBpbGUgb24gSFAtVVggd2l0aCBhQ0MsIHJldXNpbmcgdGhlIHNhbWUgaWRlbnRpZmllcgoJICBmb3IgYSB2YXJpYWJsZSBhcyBmb3IgdGhlIGVudW0gdHlwZSBkb2Vzbid0IHdvcmsgaGVyZQoKCSAgQWxleAoKMjAwNy0wNy0wMyAwMzo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA3LTAyIDE2OjQ2ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIuY3h4LCBjbUV4cG9ydENvbW1hbmQuY3h4OgoJICBDT01QOiBmaXggd2FybmluZ3MKCgkgIEFsZXgKCjIwMDctMDctMDIgMTY6MDQgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVDb21tYW5kLmg6IENPTVA6IFJlbW92ZSB1bnVzZWQKCSAgYXJndW1lbnQuCgoyMDA3LTA3LTAyIDE2OjA0ICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogQ09NUDogUmVtb3ZlIHNoYWRvd2VkIGxvY2FsLgoKMjAwNy0wNy0wMiAxNTo1NCAgYWxleAoKCSogTW9kdWxlcy9DTWFrZUZpbmRCaW5VdGlscy5jbWFrZToKCSAgQ09NUDogd2l0aCB2aXN1YWwgc3R1ZGlvIGl0J3Mgbm8gZXJyb3IgaWYgbGluayBpc24ndCBmb3VuZAoKCSAgQWxleAoKMjAwNy0wNy0wMiAxNTo0MyAgYWxleAoKCSogU291cmNlLzogY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIGNtQ29tbWFuZC5oLAoJICBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIuY3h4LCBjbUNvbW1hbmRBcmd1bWVudHNIZWxwZXIuaCwKCSAgY21FeHBvcnRDb21tYW5kLmN4eCwgY21FeHBvcnRDb21tYW5kLmg6CgkgIEVOSDogYWRkIGZyYW1ld29yayBmb3IgdW5pZmllZCBoYW5kbGluZyBvZiBhcmd1bWVudHMgdG8gY21ha2UKCSAgY29tbWFuZHMsIGV4YW1wbGUgc2VlIGNtRXhwb3J0Q29tbWFuZC5jeHgKCgkgIEFsZXgKCjIwMDctMDctMDIgMTQ6NTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVDb21tYW5kLmgsCgkgIGNtSW5zdGFsbENvbW1hbmQuY3h4LCBjbUluc3RhbGxEaXJlY3RvcnlHZW5lcmF0b3IuY3h4LAoJICBjbUluc3RhbGxEaXJlY3RvcnlHZW5lcmF0b3IuaCwgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmgsIGNtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbFNjcmlwdEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oOiBFTkg6CgkgIEZ1cnRoZXIgY2xlYW51cCBvZiBpbnN0YWxsYXRpb24gc2NyaXB0IGdlbmVyYXRpb24uICBUaGUKCSAgcGVyLWNvbXBvbmVudCBhbmQgcGVyLWNvbmZpZ3VyYXRpb24gdGVzdGluZyBpcyBub3cgZG9uZSBpbiBjbWFrZQoJICBjb2RlIGluc3RlYWQgb2YgaW4gdGhlIEZJTEUoSU5TVEFMTCkgY29tbWFuZC4gIFRoZSBnZW5lcmF0aW9uIG9mCgkgIHRoZSBjbWFrZSBjb2RlIHRvIGRvIHRoZXNlIHRlc3RzIGlzIGNlbnRyYWxpemVkIGluCgkgIGNtSW5zdGFsbEdlbmVyYXRvci4gIE9sZC1zdHlsZSBzaGFyZWQgbGlicmFyeSB2ZXJzaW9uaW5nIGFuZAoJICBjb21wb25lbnQvY29uZmlnIHN1cHBvcnQgY29kZSBoYXMgYmVlbiByZW1vdmVkIGZyb20KCSAgRklMRShJTlNUQUxMKS4gIFRoaXMgY29tbWl0IGlzIHN1cnJvdW5kZWQgYnkgdGhlIHRhZ3MKCSAgQ01ha2UtSW5zdGFsbEdlbmVyYXRvckNsZWFudXAyLXByZSBhbmQKCSAgQ01ha2UtSW5zdGFsbEdlbmVyYXRvckNsZWFudXAyLXBvc3QuCgoyMDA3LTA3LTAyIDE0OjE4ICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRm9yY2VDb21waWxlci5jbWFrZToKCSAgRU5IOiBtYWtlIHN1cHBvcnRpbmcgZW1iZWRkZWQgY29tcGlsZXJzIG5lZWQgYSB1c2VyIHNwZWNpZmljCgkgIGxpbmtlciBmaWxlIGZvciBjb21waWxpbmcgYW4gZXhlY3V0YWJsZSAoYW1kIHRodXMgY2Fubm90IGJ1aWxkCgkgIHRoZSBjb21waWxlci1pZCBwcm9ncmFtKSBlYXNpZXIgYnkgcHJvdmlkaW5nIENNQUtFX0ZPUkNFX1hYWCgpCgkgIG1hY3JvcyB3aGljaCBmb3JjZSBjbWFrZSB0byB1c2UgdGhlIGdpdmVuIGNvbXBpbGVycyBhbnl3YXkKCgkgIEFsZXgKCjIwMDctMDctMDIgMTM6MzIgIGtpbmcKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcsCgkgIGZpeGVkIGluZGVudGF0aW9uLCByZW1vdmVkIHRyYWlsaW5nIHdoaXRlc3BhY2UsIGFkZGVkIGZ1bmN0aW9uCgkgIHNlcGFyYXRvciBjb21tZW50IGxpbmVzLgoKMjAwNy0wNy0wMiAxMzoyOSAgYWxleAoKCSogTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLAoJICBUZXN0cy9DTWFrZVRlc3RzL0R1bW15VG9vbGNoYWluLmNtYWtlLAoJICBUZXN0cy9DTWFrZVRlc3RzL1Rvb2xjaGFpblRlc3QuY21ha2UuaW46CgkgIEVOSDogcmVtb3ZlIHN1cHBvcnQgZm9yIHByZXNldHRpbmcgQ01BS0VfU1lTVEVNX0lORk9fRklMRSwKCSAgQ01BS0VfU1lTVEVNX0FORF9DX0NPTVBJTEVSX0lORk9fRklMRSwKCSAgQ01BS0VfU1lTVEVNX0FORF9DWFhfQ09NUElMRVJfSU5GT19GSUxFLAoJICBDTUFLRV9TWVNURU1fQU5EX0NfQ09NUElMRVJfQU5EX1BST0NFU1NPUl9JTkZPX0ZJTEUgYW5kCgkgIENNQUtFX1NZU1RFTV9BTkRfQ1hYX0NPTVBJTEVSX0FORF9QUk9DRVNTT1JfSU5GT19GSUxFCgoJICBJbnN0ZWFkIG9mIHByZXNldHRpbmcgdGhlc2UgdmFyaWFibGVzIHRvIGFyYml0cmFyeSBmaWxlbmFtZXMsCgkgIHVzZXJzIHNob3VsZCBzZXQgdXAgQ01BS0VfU1lTVEVNX05BTUUgYW5kIHRoZSBjb21waWxlcnMgY29ycmVjdGx5CgkgIGFuZCBhbHNvIGNyZWF0ZSBhIFBsYXRmb3JtLyBkaXJlY3Rvcnkgc28gdGhlc2UgZmlsZXMgd2lsbCBhbGwKCSAgZm9sbG93IHRoZSBvZmZpY2lhbCBjbWFrZSBzdHlsZSwgd2hpY2ggc2hvdWxkIG1ha2UgaXQgZWFzaWVyIHRvCgkgIHVuZGVyc3RhbmQgYW5kIGRlYnVnIHByb2plY3Qgd2hpY2ggaGF2ZSB0aGVpciBvd24KCSAgcGxhdGZvcm0vdG9vbGNoYWluIHN1cHBvcnQgZmlsZXMuCgoJICAtcmVtb3ZlIHN1cHBvcnQgZm9yIGEgc3VmZml4IHRvIE1TIGNyb3NzY29tcGlsZXJzLCBzaW5jZSB0aGlzIGlzCgkgIG5vdCAoeWV0KSBzdXBwb3J0ZWQgYnkgY21ha2UgYW5kIG1pZ2h0IGNvbmZ1c2UgdXNlcnMKCgkgIEFsZXgKCjIwMDctMDctMDIgMTI6NDYgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2U6CgkgIEJVRzogd2l0aCBNUyBWaXN1YWwgU3R1ZGlvIGN1cnJlbnRseSB0aGVyZSBpcyBubyBjb21waWxlciBpZCwgc28KCSAgY2hlY2sgdGhlIGdlbmVyYXRvciB0b28KCgkgIEFsZXgKCjIwMDctMDctMDIgMTE6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeCBpbnN0YWxsX25hbWVfdG9vbAoJICB1cGRhdGUgb2YgdGhlIGV4ZWN1dGFibGUgaW4gYW4gaW5zdGFsbGVkIGJ1bmRsZSBvbiBPU1guICBUaGlzCgkgIGFkZHJlc3NlcyBidWcjNDUzNC4KCjIwMDctMDctMDIgMTE6MjQgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uaDoKCSAgQ09NUDogZml4IGJ1aWxkIHdpdGggbXN2YyA2LCB0aGUgZW51bXMgYXJlIG5vdyBwYXJ0IG9mIGEgY2xhc3MKCSAgd2hpY2ggaXMgYWxyZWFkeSBjb21wbGV0ZWx5IHBhcnNlZAoKCSAgQWxleAoKMjAwNy0wNy0wMiAxMTowNSAgYWxleAoKCSogVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OgoJICBCVUc6IGZpeCBidWlsZCB3aXRoIGNtYWtlIDwgMi40CgoJICBBbGV4CgoyMDA3LTA3LTAyIDExOjAyICBraW5nCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxHZW5lcmF0b3IuY3h4LCBjbUluc3RhbGxHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDoKCSAgSW1wcm92ZWQgaW5kZW50YXRpb24gb2YgZ2VuZXJhdGVkIGNtYWtlX2luc3RhbGwuY21ha2UgY29kZS4KCjIwMDctMDctMDIgMDk6NTggIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEVuYWJsZSB2ZXJzaW9uZWQgZXhlY3V0YWJsZQoJICB0ZXN0IGV2ZXJ5d2hlcmUgYnV0IFhDb2RlLgoKMjAwNy0wNy0wMSAyMjo1NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oOiBDT01QOiBmaXggd2FybmluZyBpbiByZWxlYXNlCgkgIGJyYW5jaAoKMjAwNy0wNy0wMSAxNjo1MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTMwIDIyOjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMzAgMjE6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0yOSAxNjoyOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTI5IDEyOjU4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC5jbWFrZSwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0lucHV0RmlsZS5oLmluLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9TdHJpbmdGaWxlLmN4eDogRU5IOiBSQyAxMQoKMjAwNy0wNi0yOSAxMTozMCAgaG9mZm1hbgoKCSogRGFydExvY2FsLmNvbmYuaW46IEVOSDogcmVtb3ZlIG1vcmUgbWFjaGluZXMKCjIwMDctMDYtMjkgMTE6MTggIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBEYXJ0TG9jYWwuY29uZi5pbjogRU5IOiBtYWtlIERhcnRMb2NhbC5jb25mIHBhcnQKCSAgb2YgcHJvamVjdAoKMjAwNy0wNi0yOCAxNjoxMSAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuY3h4LAoJICBjbUluc3RhbGxHZW5lcmF0b3IuY3h4LCBjbUluc3RhbGxHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDoKCSAgRmlyc3Qgc3RlcCBvZiBpbnN0YWxsIHNjcmlwdCBnZW5lcmF0b3IgY2xlYW51cC4gIEVhY2gKCSAgY29uZmlndXJhdGlvbiB0byBiZSBpbnN0YWxsZWQgaXMgbm93IHNlcGFyYXRlbHkgaGFuZGxlZCBpbnN0ZWFkCgkgIG9mIHVzaW5nIHZhcmlhYmxlcyB0byBzdG9yZSBwZXItY29uZmlndXJhdGlvbiBuYW1lcy4JRm9yIHRhcmdldHMKCSAgdGhlIGNvbXBvbmVudCBhbmQgY29uZmlndXJhdGlvbiBpbnN0YWxsLXRpbWUgdGVzdHMgYXJlIG5vdyBkb25lCgkgIGluIHRoZSBpbnN0YWxsIHNjcmlwdCBpbnN0ZWFkIG9mIGluIHRoZSBGSUxFKElOU1RBTEwpIGNvbW1hbmQuCgkgIFRoaXMgY2xlYW5zIHRoaW5ncyB1cCBsaWtlIG5vdCB0cnlpbmcgdG8gc3RyaXAgYSBmaWxlIHRoYXQgd2FzCgkgIG9wdGlvbmFsbHkgbm90IGluc3RhbGxlZC4gIEl0IGFsc28gc2ltcGxpZmllcyB0aGUgY29kZSBmb3IKCSAgaW5zdGFsbF9uYW1lIGFkanVzdG1lbnQgb24gT1NYLiAgVGhpcyBjb21taXQgaXMgc3Vycm91bmRlZCBieSB0aGUKCSAgdGFncyBDTWFrZS1JbnN0YWxsR2VuZXJhdG9yQ2xlYW51cDEtcHJlIGFuZAoJICBDTWFrZS1JbnN0YWxsR2VuZXJhdG9yQ2xlYW51cDEtcG9zdC4KCjIwMDctMDYtMjggMTU6MjggIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIENPTVA6IGZpeCB3YXJuaW5nIGFib3V0IHVudXNlZCBwYXJhbWV0ZXIKCgkgIEFsZXgKCjIwMDctMDYtMjggMTU6MDQgIGFsZXgKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4LCBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmgsCgkgIFNvdXJjZS9jbWFrZW1haW4uY3h4LCBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogZ2VuZXJhdGUgc2VwYXJhdGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGNvbW1hbmRzLAoJICBjb21wYXRpYmxpdHkgY29tbWFuZHMsIG1vZHVsZXMgYW5kIHByb3BlcnRpZXMgYXMgaHRtbCwgdGV4dCBhbmQKCSAgbWFuIHBhZ2VzLiAgVGhlIG5hbWVzIG9mIHRoZSBtYW4gcGFnZXMgYXJlIGNtY29tbWFuZHMsIGNtY29tcGF0LAoJICBjbXByb3BzIGFuZCBjbW1vZHVsZXMsIHNvIHRoZXkgYXJlIGVhc3kgdG8gdHlwZS4KCgkgIEFsZXgKCjIwMDctMDYtMjggMTM6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0yOCAxMTowMCAgYWxleAoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHgsIFNvdXJjZS9jbURvY3VtZW50YXRpb24uaCwKCSAgU291cmNlL2NtRHVtcERvY3VtZW50YXRpb24uY3h4LCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jY21ha2UuY3h4LCBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogLWluIHRoZSBmdWxsIGRvY3VtZW50YXRpb24gdGhlcmUgaXMgbm93IGFuIGV4dHJhIHNlY3Rpb24gZm9yCgkgIGNvbXBhdGliaWxpdHkgY29tbWFuZHMsIHNvIHVzZXJzIHNlZSB3aGljaCBjb21tYW5kcyB0aGV5CgkgIHNob3VsZG4ndCB1c2UgLWNtYWtlIC1oIDxjb21tYW5kPiBub3cgYWxzbyB3b3JrcyB3aXRoIGxvd2VyIGNhc2UKCSAgY29tbWFuZHMgLS1oZWxwLWZ1bGxtIC0taGVscC1jb21tYW5kLCAtLWhlbHAtbW9kdWxlIGFuZAoJICAtLWhlbHAtcHJvcGVydHkgbm93IGRldGVybWluZSB0aGUgb3V0cHV0IGZvcm1hdCBmcm9tIHRoZQoJICBleHRlbnNpb24gb2YgdGhlIGdpdmVuIGZpbGVuYW1lCgoJICBMZXQgbWUga25vdyBpZiB0aGVyZSBhcmUgc29tZSB0aGluZ3MgSSBvdmVybG9va2VkLgoKCSAgQWxleAoKMjAwNy0wNi0yOCAxMDoyMiAgYWxleAoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6CgkgIENPTVA6IGZpeCB0eXBvCgoJICBBbGV4CgoyMDA3LTA2LTI4IDA5OjE0ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VBU00tQVRUSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlQVNNQ29tcGlsZXIuY21ha2UuaW4sIENNYWtlQVNNSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQVNNLUFUVENvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUFTTUNvbXBpbGVyLmNtYWtlLCBDTWFrZVRlc3RBU00tQVRUQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlVGVzdEFTTUNvbXBpbGVyLmNtYWtlLCBQbGF0Zm9ybS9nYXMuY21ha2U6CgkgIEVOSDogaW5pdGlhbCBzdXBwb3J0IGZvciBhc3NlbWJsZXIgaW4gY21ha2UsIG5lZWRzIHRlc3RpbmcgYnkgb3VyCgkgIHVzZXJzCgoJICBBbGV4CgoyMDA3LTA2LTI4IDA5OjA5ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtRW5hYmxlTGFuZ3VhZ2VDb21tYW5kLmN4eCwgY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuaCwKCSAgY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5oLCBjbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84V2luNjRHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhXaW42NEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuY3h4OgoJICBFTkg6IGFkZCBPUFRJT05BTCBrZXl3b3JkIHRvIEVOQUJMRV9MQU5HVUFHRSwgc28gaXQgd2lsbCBiZQoJICBwb3NzaWJsZSB0byBkbyBzb21ldGhpbmcgbGlrZSB0aGlzOgoKCSAgRU5BQkxFX0xBTkdVQUdFKEFTTS1BVFQpIElGKENNQUtFX0FTTS1BVFRfQ09NUElMRVJfV09SS1MpICAgLi4uCgkgIGRvIGFzc2VtYmxlciBzdHVmZmYgRUxTRShDTUFLRV9BU00tQVRUX0NPTVBJTEVSX1dPUktTKSAgIC4uLgoJICBmYWxsYmFjayB0byBnZW5lcmljIEMvQysrIEVORElGKENNQUtFX0FTTS1BVFRfQ09NUElMRVJfV09SS1MpCgoJICBBbGV4CgoyMDA3LTA2LTI3IDE2OjI4ICBhbGV4CgoJKiBTb3VyY2Uva3dzeXMvOiBEeW5hbWljTG9hZGVyLmN4eCwgUHJvY2Vzc1VOSVguYzoKCSAgRU5IOiBidWlsZCBvbiBCbHVlR2VuZS9MOiAtYWRkIHN0YXRpYyByZXNvbHYsIG5zc19maWxlcyBhbmQKCSAgbnNzX2RucyBsaWJzIHRvIHRoZSBkZWZhdWx0IHNldCBvZiBsaWJzLCBvdGhlcndpc2Ugd2UgZ2V0CgkgIHVuZGVmaW5lZCByZWZlcmVuY2VzIG91dCBvZiBsaWJjIHRvIHNldmVyYWwgZnVuY3Rpb25zIC1hZGQgYQoJICBkdW1teSBEeW5hbWljTG9hZGVyIGluIGt3c3lzIGZvciBzeXN0ZW1zIHdpdGhvdXQgc2hhcmVkIGxpYnMKCSAgLUJsdWVHZW5lIGRvZXNuJ3QgaGF2ZSBTQV9TSUdJTkZPCgoJICBBbGV4CgoyMDA3LTA2LTI3IDE2OjE0ICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHg6IEJVRzogRG8gbm90IGluc3RhbGwgdGhlIGltcG9ydAoJICBsaWJyYXJ5IGZvciBhbiBleGVjdXRhYmxlIHRoYXQgZG9lcyBub3QgaGF2ZSBFTkFCTEVfRVhQT1JUUyBzZXQuCgoyMDA3LTA2LTI3IDE2OjEwICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBCVUc6IE5lZWQgdG8gY29tcHV0ZQoJICB0aGUgY29ycmVjdCB2ZXJzaW9uZWQgbmFtZSBmb3IgZXhlY3V0YWJsZXMgb24gY3lnd2luLiAgVGhpcwoJICBhZGRyZXNzZXMgYnVnIzUyMzguCgoyMDA3LTA2LTI3IDE1OjQyICBhbGV4CgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OgoJICBFTkg6IGhlcmUgd2UgcmVhbGx5IHdhbnQgb25seSBub24taW1wb3J0ZWQgdGFyZ2V0cywgYXMgZGlzY3Vzc2VkCgkgIHdpdGggQnJhZAoKCSAgQWxleAoKMjAwNy0wNi0yNyAxNDo1NSAgYWxleAoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6CgkgIEJVRzogdXNlICR7TEFOR31fQ09NUElMRVJfQVJHMSBhbHNvIGhlcmUsIG90aGVyd2lzZSBzb21lCgkgIGNvbXBpbGVycyB3b24ndCBiZSBhYmxlIHRvIGNvbXBpbGUgZS5nLiB0aGUgQysrIHNvdXJjZSBmaWxlIChlLmcuCgkgIHRoZSBBRFNQIGNvbXBpbGVyIG5lZWRzIC1jKysgZm9yIGNvbXBpbGluZyBDKysgZmlsZXMpCgoJICBBbGV4CgoyMDA3LTA2LTI3IDEzOjIyICBraW5nCgoJKiBUZXN0cy9KYXZhL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZvciBpbi1zb3VyY2UgdmVyc2lvbiBkbyBub3QgdXNlCgkgIGEgY3VzdG9tIGNvbW1hbmQgb3V0cHV0IGFuZCBjdXN0b20gdGFyZ2V0IHdpdGggdGhlIHNhbWUgbmFtZS4KCSAgVGhpcyBhY2NpZGVudGFsbHkgd29ya2VkIGJlZm9yZSBidXQgd2l0aCBhIGNpcmN1bGFyIGRlcGVuZGVuY3kuCgoyMDA3LTA2LTI3IDEyOjA3ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZSwKCSAgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgU291cmNlL2NtYWtlLmN4eDogRU5IOiBBZGRlZAoJICBnbG9iYWwgcHJvcGVydHkgRklORF9MSUJSQVJZX1VTRV9MSUI2NF9QQVRIUyB0byBhbGxvdyBsaWI2NCBwYXRocwoJICB0byBiZSBzZWFyY2hlZCBvcHRpb25hbGx5LiAgVHVybiBvZmYgdGhlIGZlYXR1cmUgb24gZGViaWFuCgkgIHN5c3RlbXMuICBUaGlzIGFkZHJlc3NlcyBkZWJpYW4gcmVwb3J0IDQxOTAwNy4KCjIwMDctMDYtMjcgMTI6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVByb3BlcnR5RGVmaW5pdGlvbi5jeHg6IEJVRzogRml4ZWQgc3BlbGxpbmcgb2YgZ2xvYmFsbHkKCSAgaW4gZ2xvYmFsIHByb3BlcnR5IG5hbWVzLgoKMjAwNy0wNi0yNyAxMTo0MiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9HTlUuY21ha2U6IEVOSDogQWRkZWQgR05VL0h1cmQgcGxhdGZvcm0uICBUYWtlbgoJICBmcm9tIGRlYmlhbiBwYXRjaCA0MDcxNTUuCgoyMDA3LTA2LTI3IDExOjM5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQ09NUDogRml4IGZvciBwbGF0Zm9ybXMgdGhhdCBkbyBub3QKCSAgaGF2ZSBzaWdpbmZvIG9uIHRoZWlyIHNpZ25hbCBoYW5kbGVycy4KCjIwMDctMDYtMjcgMDg6NDMgIGFsZXgKCgkqIFRlc3RzL0NNYWtlTGlzdHMudHh0OgoJICBDT01QOiBmaXggdGVzdHMgd2hlcmUgdGhlIGJ1aWxkaW5nIGNtYWtlIGRvZXNuJ3QgaGF2ZQoJICBHRVRfVEVTVF9QUk9QRVJUWQoKCSAgQWxleAoKMjAwNy0wNi0yNyAwNDo0OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTI2IDE5OjU0ICBhbGV4CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OgoJICBFTkg6IHVzZSBDTUFLRV9TWVNURU0gaW5zdGVhZCBvZiBDTUFLRV9TWVNURU1fTkFNRSwgc2luY2UKCSAgQ01BS0VfU1lTVEVNX05BTUUgbWF5IGFscmVhZHkgaGF2ZSBiZWVuIHNldCB3aGVuIGNyb3NzY29tcGlsaW5nCgoJICBBbGV4CgoyMDA3LTA2LTI2IDE3OjE0ICBhbGV4CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OgoJICBDT01QOiBmaXggYnJva2VuIHRlc3RzIGZvciBub3cKCgkgIEFsZXgKCjIwMDctMDYtMjYgMTc6MDggIGFsZXgKCgkqIFNvdXJjZS86IGNtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LCBjbUNvbW1hbmRzLmN4eDoKCSAgQ09NUDogZml4IGJvb3RzdHJhcHBpbmcKCgkgIEFsZXgKCjIwMDctMDYtMjYgMTU6MzAgIGFsZXgKCgkqIFRlc3RzLzogQ01ha2VMaXN0cy50eHQsIFNpbXBsZUNPbmx5L0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVDT25seS9iYXIuYywgU2ltcGxlQ09ubHkvZm9vLmMsIFNpbXBsZUNPbmx5L21haW4uYzoKCSAgRU5IOiBhZGQgYSBTaW1wbGVDT25seSB0ZXN0LCB0aGlzIGlzIG5lZWRlZCBlLmcuIGZvciB0ZXN0aW5nIHNkY2MKCSAgc2luY2UgdGhpcyBkb2Vzbid0IHN1cHBvcnQgQysrIGFuZCBhbHNvIGRvZXNuJ3QgaGF2ZSBhIHByaW50ZigpCgkgIGltcGxlbWVudGF0aW9uIGJ5IGRlZmF1bHQgLWFkZCBhIHRlc3QgZm9yIG1pbmd3IGNyb3NzIGNvbXBpbGVyCgoJICBBbGV4CgoyMDA3LTA2LTI2IDE1OjE1ICBhbGV4CgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9QbGF0Zm9ybS9HZW5lcmljLVNEQ0MtQy5jbWFrZToKCSAgRU5IOgoKMjAwNy0wNi0yNiAxNDo0OCAgbWFydGluawoKCSogU291cmNlLzogY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIGNtQ29tbWFuZHMuY3h4OiBFTkg6IGFkZAoJICBTZXRQcm9wZXJ0aWVzIGludG8gYm9vdHN0cmFwCgoyMDA3LTA2LTI2IDEzOjUwICBhbGV4CgoJKiBTb3VyY2UvOiBjbURlZmluZVByb3BlcnR5Q29tbWFuZC5oLCBjbUdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBjbVNldFByb3BlcnRpZXNDb21tYW5kLmg6CgkgIFNUWUxFOiByZW5hbWUgY2hhaW4gdG8gaW5oZXJpdCBpbiB0aGUgZG9jcwoKCSAgQWxleAoKMjAwNy0wNi0yNiAxMzoxOSAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVySWQuYywgUGxhdGZvcm0vR2VuZXJpYy1TRENDLUMuY21ha2U6CgkgIEVOSDogYWRkIGJhc2ljIHN1cHBvcnQgZm9yIHNkY2MgKGh0dHA6Ly9zZGNjLnNvdXJjZWZvcmdlLm5ldCksCgkgIG5lZWRzIHNkY2MgKHNkY2NsaWIpIGN2cyBmb3IgY3JlYXRpbmcgbGlicmFyaWVzKQoKCSAgQWxleAoKMjAwNy0wNi0yNiAxMzowNSAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9HZW5lcmljLmNtYWtlLCBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLAoJICBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9CbHVlR2VuZUwuY21ha2U6CgkgIFNUWUxFOiBjaGFuZ2UgZ2xvYmFsIGNtYWtlIHZhcmlhYmxlCgkgIENNQUtFX1RBUkdFVF9TVVBQT1JUU19PTkxZX1NUQVRJQ19MSUJTIHRvIHRoZSBmaXJzdCBnbG9iYWwgY21ha2UKCSAgcHJvcGVydHkgVEFSR0VUX1NVUFBPUlRTX1NIQVJFRF9MSUJTCgoJICBBbGV4CgoyMDA3LTA2LTI2IDEzOjAwICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIEVOSDogY2hlY2sgZm9yIENNQUtFX0hPU1RfU1lTVEVNX05BTUUgdG8gZGVjaWRlIHdoZXRoZXIgdG8gbG9hZAoJICBDTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwgc2luY2UgQ01BS0VfU1lTVEVNX05BTUUgbWlnaHQgYWxyZWFkeQoJICBiZSBwcmVzZXQgd2hlbiB1c2luZyBjbWFrZSBmb3IgY3Jvc3MgY29tcGlsaW5nIHVzZSB0eXBlIFNUUklORwoJICBpbnN0ZWFkIG9mIEZJTEVQQVRIIHNpbmNlIG90aGVyd2lzZSBhIHN0cmFuZ2UgZmlsZW5hbWUgd2FzCgkgIGdlbmVyYXRlZAoKCSAgQWxleAoKMjAwNy0wNi0yNiAwNDo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTI1IDEyOjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdldFByb3BlcnR5Q29tbWFuZC5jeHgsIGNtU2V0UHJvcGVydGllc0NvbW1hbmQuY3h4OgoJICBDT01QOiBmaXggd2FybmluZ3MKCjIwMDctMDYtMjUgMTI6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0yNSAxMDozNCAgbWFydGluawoKCSogU291cmNlLzogY21EZWZpbmVQcm9wZXJ0eUNvbW1hbmQuY3h4LCBjbURlZmluZVByb3BlcnR5Q29tbWFuZC5oLAoJICBjbVByb3BlcnR5LmgsIGNtUHJvcGVydHlEZWZpbml0aW9uLmN4eCwgY21Qcm9wZXJ0eU1hcC5jeHgsCgkgIGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOiBhZGRlZCB0aGUgYWJpbGl0eSB0byBkb2N1bWVudCB2YXJpYWJsZXMKCSAgYW5kIGNhY2hlZF92YXJpYWJsZXMKCjIwMDctMDYtMjUgMTA6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2V0UHJvcGVydHlDb21tYW5kLmN4eCwgY21HZXRQcm9wZXJ0eUNvbW1hbmQuaDogRU5IOgoJICBhZGRlZCAgY21HZXRQcm9wZXJ0eUNvbW1hbmQKCjIwMDctMDYtMjUgMDk6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LCBTb3VyY2UvY21ha2UuY3h4LAoJICBUZXN0cy9Qcm9wZXJ0aWVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IHNvbWUgcHJvcGVydHkgY2xlYW51cCBhbmQKCSAgYWRkZWQgR2V0UHJvcGVydHkKCjIwMDctMDYtMjQgMDY6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0yMyAwMTowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTIyIDExOjMxICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvQ01ha2UubnNpLmluLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DTWFrZUluc3RhbGwuYm1wLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9NYWtlUmVsZWFzZS5jbWFrZS5pbiwgVXRpbGl0aWVzL1JlbGVhc2UvUkVBRE1FLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9SZWxlYXNlLmNtYWtlLCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9sb2dpbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaC5pbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0FJWCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0NZR1dJTl9OVC01LjEsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW4sIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19IUC1VWCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0lSSVg2NCwgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0xpbnV4LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfT1NGMSwgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX1N1bk9TLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvcmVsZWFzZV9kaXNwYXRjaC5zaDogRU5IOiByZW1vdmUgb2xkIHN0eWxlCgkgIHJlbGVhc2Ugc3R1ZmYKCjIwMDctMDYtMjIgMTA6MjIgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZUxpc3RzLnR4dCwgRmluZE1QSS5jbWFrZSwKCSAgUGxhdGZvcm0vQmx1ZUdlbmVMLmNtYWtlOgoJICBFTkg6IGFkZCBzdXBwb3J0IGZvciBCbHVlR2VuZS9MCgoJICBBbGV4CgoyMDA3LTA2LTIyIDA5OjU4ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBjbUNQbHVnaW5BUEkuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOgoJICBFTkg6IGFkZCBJTVBPUlQga2V5d29yZCB0byBBRERfTElCUkFSWSwgZGVwZW5kZW5jaWVzIGFyZSBub3QgeWV0CgkgIHdvcmtpbmcgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMgYW5kIGluZGVudGF0aW9uLCB1c2UgZW51bSBhcwoJICBhcmd1bWVudCB0byBBZGRMaWJyYXJ5KCkgaW5zdGVhZCBvZiBpbnQgKHdoaWNoIHdhcyBpbml0aWFsaXplZAoJICBmcm9tIGEgYm9vbCBpbiBzb21lIGNhc2VzKQoKCSAgQWxleAoKMjAwNy0wNi0yMiAwODo0NCAgYWxleAoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsIGNtYWtlLmN4eCwKCSAgY21ha2UuaDoKCSAgRU5IOiBwdXQgY29tcGF0aWJpbGl0eSBjb21tYW5kcyBpbiBleHRyYSBzZWN0aW9uIGFuZCBwcmVwYXJlIGZvcgoJICBjcmVhdGluZyBzZXBhcmF0ZSBtYW4gcGFnZXMgZm9yIHByb3BlcnRpZXMsIG1vZHVsZXMsIGNvbW1hbmRzIGFuZAoJICBjb21wYXRpYmlsaXR5IGNvbW1hbmRzCgoJICBBbGV4CgoyMDA3LTA2LTIxIDE2OjIzICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9HZW5lcmljLmNtYWtlLAoJICBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHg6CgkgIEVOSDogcHJpbnQgYSB3YXJuaW5nIGlmIEFERF9MSUJSQVJZKCBTSEFSRUQvTU9EVUxFICkgaXMgdXNlZCBhbmQKCSAgdGhlIHRhcmdldCBwbGF0Zm9ybSBkb2Vzbid0IHN1cHBvcnQgc2hhcmVkIGxpYnJhcmllcwoKCSAgQWxleAoKMjAwNy0wNi0yMSAxNDowNiAgYWxleAoKCSogVGVzdHMvSmF2YS9DTWFrZUxpc3RzLnR4dDoKCSAgU1RZTEU6IGFkZCBzb21lIG1vcmUgb3V0cHV0LCBzbyBpdCBpcyBlYXNpZXIgdG8gdW5kZXJzdGFuZAoKCSAgQWxleAoKMjAwNy0wNi0yMSAxMzowOCAgYWxleAoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eDoKCSAgQlVHOiBoYW5kbGUgZGVwZW5kZW5jaWVzIHRvIGltcG9ydGVkIHRhcmdldHMgYmV0dGVyOiBkb24ndCBjcmVhdGUKCSAgYSBkZXBlbmRlbmN5IGlmIHRoZSB0YXJnZXQgbmFtZSB3YXMgbm90IGxpc3RlZCBpbiBERVBFTkRTLCBpZiBpdAoJICB3YXMgbGlzdGVkIGluIERFUEVORFMsIGNyZWF0ZSBhIGRlcGVuZGVuY3kgdG8gdGhlIGZpbGUKCgkgIFNlZW1zIHRvIHdvcmssIGJ1dCBoYXZlIHRvIGNoZWNrIHdpdGggQnJhZC4KCgkgIEFsZXgKCjIwMDctMDYtMjEgMDY6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0yMSAwNDo0NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTIwIDIzOjAxICBhbGV4CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOgoJICBTVFlMRTogR2V0UHJvamVjdE5hbWUoKSBpcyBjb25zdAoKCSAgQWxleAoKMjAwNy0wNi0yMCAwMzowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTE5IDE0OjU3ICBhbGV4CgoJKiBTb3VyY2UvY21JbnN0YWxsRXhwb3J0R2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogZml4IGJ1aWxkIHVuZGVyIHdpbmRvd3MKCgkgIEFsZXgKCjIwMDctMDYtMTkgMTM6MTAgIGFsZXgKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbENvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kLmgsCgkgIGNtSW5zdGFsbEV4cG9ydEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbEV4cG9ydEdlbmVyYXRvci5oOgoJICBFTkg6IGFkZCBJTlNUQUxMKEVYUE9SVCAuLi4pIG1vZGUgYW5kIElOU1RBTEwoIFRBUkdFVFMgLi4uIEVYUE9SVAoJICA8c2V0PiApICwgdGVzdHMgc3RpbGwgaGF2ZSB0byBiZSBhZGRlZAoKCSAgQWxleAoKMjAwNy0wNi0xOSAxMToxMSAgYWxleAoKCSogU291cmNlLzogY21JbnN0YWxsQ29tbWFuZC5jeHgsIGNtSW5zdGFsbENvbW1hbmQuaCwKCSAgY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmgsCgkgIGNtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oOgoJICBTVFlMRTogcHJlcGFyYXRpb25zIGZvciB0aGUgSU5TVEFMTChFWFBPUlQgLi4uKSBnZW5lcmF0b3IgLW1vdmUKCSAgc3RkOjpzdHJpbmcgRGVzdGluYXRpb24gdG8gY21JbnN0YWxsR2VuZXJhdG9yLCBzaW5jZSBhbGwgKGV4Y2VwdAoJICB0aGUgc2NyaXB0IG9uZSkgaGF2ZSBpdCBhbmQgYWRkIGEgY29uc3QgYWNjZXNzb3Igc28gaXQgY2FuIGJlCgkgIHF1ZXJpZWQgLXVzZSB0ZW1wb3JhcnkgdmFyaWFibGVzIGluIGNtSW5zdGFsbENvbW1hbmQgZm9yIHRoZQoJICBnZW5lcmF0b3JzIHNvIHRoZXkgY2FuIGJlIHJldXNlZCBlYXNpZXIgLXNvbWUgbW9yZSBjb25zdAoKCSAgQWxleAoKMjAwNy0wNi0xOSAwOToxOCAga2luZwoKCSogU291cmNlL2NtQ1BsdWdpbkFQSS5jeHg6IENPTVA6IFdvcmstYXJvdW5kIHdhcm5pbmcgYWJvdXQgc3RhdGljCgkgIHNwZWNpZmllciBvbiBIUCBjb21waWxlci4KCjIwMDctMDYtMTggMTg6MDEgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2U6CgkgIFNUWUxFOiB1c2UgSUYoTk9UIC4uLikgYW5kIHJlbW92ZSBNQVJLX0FTX0FEVkFOQ0VEKCkgZm9yCgkgIHZhcmlhYmxlcyB3aGljaCBhcmUgbm90IGRlZmluZWQgaGVyZQoKCSAgQWxleAoKMjAwNy0wNi0xOCAxNzoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTE4IDExOjU5ICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwKCSAgU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlRGVwZW5kLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuaCwKCSAgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eCwgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LCBTb3VyY2UvY21Tb3VyY2VGaWxlLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5jeHgsIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5oLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaDogRU5IOiBNZXJnaW5nIGNoYW5nZXMgZnJvbQoJICBicmFuY2ggQ01ha2UtU291cmNlRmlsZTItYiBiZXR3ZWVuIHRhZ3MgQ01ha2UtU291cmNlRmlsZTItYnAgYW5kCgkgIENNYWtlLVNvdXJjZUZpbGUyLWItbXAxIHRvIHRydW5rLiAgVGhpcyBjb21taXQgaXMgc3Vycm91bmRlZCBieQoJICB0YWdzIENNYWtlLVNvdXJjZUZpbGUyLWItbXAxLXByZSBhbmQgQ01ha2UtU291cmNlRmlsZTItYi1tcDEtcG9zdAoJICBvbiB0aGUgdHJ1bmsuCgoJICBUaGUgY2hhbmdlcyByZS1pbXBsZW1lbnQgY21Tb3VyY2VGaWxlIGFuZCB0aGUgdXNlIG9mIGl0IHRvIGFsbG93CgkgIGluc3RhbmNlcyB0byBiZSBjcmVhdGVkIG11Y2ggZWFybGllci4gIFRoZSB1c2Ugb2YKCSAgY21Tb3VyY2VGaWxlTG9jYXRpb24gYWxsb3dzIGxvY2F0aW5nIGEgc291cmNlIGZpbGUgcmVmZXJlbmNlZCBieQoJICBhIHVzZXIgdG8gYmUgbXVjaCBzaW1wbGVyIGFuZCBtb3JlIHJvYnVzdC4gIFRoZSB0d28gU2V0TmFtZQoJICBtZXRob2RzIGFyZSBubyBsb25nZXIgbmVlZGVkIHNvIHNvbWUgZHVwbGljYXRlIGNvZGUgaGFzIGJlZW4KCSAgcmVtb3ZlZC4gIFRoZSBzdHJhbmdlICJTb3VyY2VOYW1lIiBzdHVmZiBpcyBnb25lLiAgQ29kZSB0aGF0CgkgIGNyZWF0ZWQgY21Tb3VyY2VGaWxlIGluc3RhbmNlcyBvbiB0aGUgc3RhY2sgYW5kIHRoZW4gc2VudCB0aGVtIHRvCgkgIGNtTWFrZWZpbGU6OkFkZFNvdXJjZSBoYXMgYmVlbiBzaW1wbGlmaWVkIGFuZCBjb252ZXJ0ZWQgdG8KCSAgZ2V0dGluZyBjbVNvdXJjZUZpbGUgaW5zdGFuY2VzIGZyb20gY21NYWtlZmlsZS4gIFRoZSBDUGx1Z2luQVBJCgkgIGhhcyBwcmVzZXJ2ZWQgdGhlIG9sZCBBUEkgdGhyb3VnaCBhIGNvbXBhdGliaWxpdHkgaW50ZXJmYWNlLgoKCSAgU291cmNlIGxpc3RzIGFyZSBnb25lLiAgVGFyZ2V0cyBub3cgZ2V0IHJlYWwgaW5zdGFuY2VzIG9mCgkgIGNtU291cmNlRmlsZSByaWdodCBhd2F5IGluc3RlYWQgb2Ygc3RvcmluZyBhIGxpc3Qgb2Ygc3RyaW5ncwoJICB1bnRpbCB0aGUgZmluYWwgcGFzcy4KCgkgIFRyYWNlVlNEZXBlbmRlbmNpZXMgaGFzIGJlZW4gcmUtd3JpdHRlbiB0byBhdm9pZCB0aGUgdXNlIG9mCgkgIFNvdXJjZU5hbWUuICBJdCBpcyBub3cgY2FsbGVkIFRyYWNlRGVwZW5kZW5jaWVzIHNpbmNlIGl0IGlzIG5vdAoJICBqdXN0IGZvciBWUy4JSXQgaXMgbm93IGltcGxlbWVudGVkIHdpdGggYSBoZWxwZXIgb2JqZWN0IHdoaWNoCgkgIG1ha2VzIHRoZSBjb2RlIHNpbXBsZXIuCgoyMDA3LTA2LTE4IDA5OjAwICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJhdG9ycy5jeHgsIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBOU0lTIGV4aXN0cyBhbHNvIGZvciBMaW51eCwgbm90IG9ubHkgV2luZG93cywgc28gZW5hYmxlIGl0CgkgIHRoZXJlIHRvbyBwYXRjaCBieSAgIE1pY2hhbCDEjGloYcWZIDxtaWNoYWwgKEFUKSBjaWhhci5jb20+CgoJICBBbGV4CgoyMDA3LTA2LTE3IDIwOjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMTcgMDg6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0xNiAxNzozNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTE1IDE2OjA5ICBhbGV4CgoJKiBTb3VyY2UvY21ha2UuY3h4OgoJICBDT01QOiBpbmNsdWRlIGNtRXh0ZXJuYWxNYWtlZmlsZVByb2plY3RHZW5lcmF0b3IuaAoKCSAgQWxleAoKMjAwNy0wNi0xNSAxNjowNyAgYWxleAoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlLmgsIGNtYWtlLmN4eDoKCSAgU1RZTEU6IG1pbm9yIGZpeGVzCgoJICBBbGV4CgoyMDA3LTA2LTE1IDE1OjMzICBhbGV4CgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmg6CgkgIENPTVA6IGZvcmdvdCB0byBjb21taXQgdGhpcyBvbmUKCgkgIEFsZXgKCjIwMDctMDYtMTUgMTQ6MjcgIGFsZXgKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OgoJICBTVFlMRTogcmVtb3ZlIGNvZGUgZHVwbGljYXRpb24gYmV0d2VlbiBQcmVwYXJlU2NyaXB0UmVmZXJlbmNlIGFuZAoJICBHZXRTY3JpcHRSZWZlcmVuY2UsIGFuZCBtYWtlIHRoZSBsb2dpYyBmb3IgZ2V0dGluZyB0aGUgZmlsZW5hbWUKCSAgcHVibGljLCBzbyBpdCBjYW4gYmUgdXNlZCBlLmcuIGZvciBleHBvcnRpbmcKCgkgIEFsZXgKCjIwMDctMDYtMTUgMTM6MDAgIGFsZXgKCgkqIFNvdXJjZS86IGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oOgoJICBCVUc6IGRvbid0IHN0cmlwIHN0YXRpYyBsaWJyYXJpZXMsIGl0IHJlbW92ZXMgdGhlaXIgc3ltYm9sIHRhYmxlLAoJICBkeW5hbWljIGxpYnMgaGF2ZSBhbiBleHRyYSBzeW1ib2wgdGFibGUgc28gdGhleSBzdGlsbCB3b3JrCgkgIHN0cmlwcGVkCgoJICBBbGV4CgoyMDA3LTA2LTE1IDExOjEyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBkb24ndCBydW4gc3RyaXAgb24gT1BUSU9OQUwgaW5zdGFsbCB0YXJnZXRzIGlmIHRoZSBmaWxlCgkgIGRvZXNuJ3QgZXhpc3QKCgkgIEFsZXgKCjIwMDctMDYtMTUgMTA6MzQgIGFsZXgKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmg6CgkgIFNUWUxFOiBhZGQgc29tZSBtb3JlIGxpbmUgYnJlYWtzIHNvIGl0IHNob3VsZCBiZSBlYXNpZXIgdG8gcmVhZAoKCSAgQWxleAoKMjAwNy0wNi0xNSAxMDoxMCAgYWxleAoKCSogU291cmNlLzogY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eCwKCSAgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21NYWtlZmlsZS5oLCBjbVRhcmdldC5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6CgoJICBTVFlMRTogcmVtb3ZlIGR1cGxpY2F0ZSBub24tY29uc3QgYWNjZXNzb3JzCgkgIEdldExvY2FsR2VuZXJhdG9yKGludCkgYW5kIEdldExvY2FHZW5lcmF0b3JzKGNtTG9jYWxHZW5lcmF0b3JzKQoJICBmcm9tIGNtR2xvYmFsR2VuZXJhdG9yKCkuIE5vdyB0aGVyZSBpcyBvbmUgY29uc3QgYWNjZXNzb3Igd2hpY2gKCSAgaXMgZXZlbiBmYXN0ZXIgc2luY2UgaXQgcmV0dXJucyBhIHJlZmVyZW5jZSAoaW5zdGVhZCBvZiBjb3B5aW5nIGEKCSAgdmVjdG9yKSAtbW9yZSBjb25zdCB0byBlbnN1cmUgdGhhdCB0aGlzIHRoZSByZXR1cm5lZCBsb2NhbAoJICBnZW5lcmF0b3JzIGRvbid0IGFjdHVhbGx5IGdldCBtb2RpZmllZCAtcmVtb3ZlZCBkdXBsaWNhdGVkIGNvZGUKCSAgaW4gR2V0Q1Rlc3RDb21tYW5kKCkgYW5kIEdldENQYWNrQ29tbWFuZCgpIC1hZGRlZCBzb21lIGNvbnN0CgkgIGFjY2Vzc29ycwoKCSAgQWxleAoKMjAwNy0wNi0xNSAwODo1MyAgYWxleAoKCSogVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OgoJICBTVFlMRTogdXNlIGEgbWFjcm8gZm9yIGdlbmVyYXRpbmcgdGhlIGRvY3VtZW50YXRpb24KCgkgIEFsZXgKCjIwMDctMDYtMTUgMDg6NDIgIGFsZXgKCgkqIFRlc3RzL0NNYWtlTGlzdHMudHh0OgoJICBDT01QOiBiaWcgdGltZW91dCBmb3IgYnVpbGRpbmcga2RlbGlicwoKCSAgQWxleAoKMjAwNy0wNi0xNSAwODoxOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTE0IDEzOjU3ICBhbGV4CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBmaXggdHlwbwoKCSAgQWxleAoKMjAwNy0wNi0xNCAxMzo1NSAgYWxleAoKCSogVGVzdHMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWRkIHRlc3QgZm9yIGJ1aWxkaW5nbiBrZGVsaWJzIGFscGhhMQoJICAoaHR0cDovL3dlYnN2bi5rZGUub3JnL3RhZ3MvS0RFLzMuOTAuMSkgd2l0aCBjbWFrZSByZXF1aXJlcyBRdCA+PQoJICA0LjMuMCwgREJ1cywga2Rlc3VwcG9ydCAoaHR0cDovL3dlYnN2bi5rZGUub3JnL3RydW5rL2tkZXN1cHBvcnQvKQoJICBhbmQgdGhlIEVhc3lEYXNoYm9hcmQgc2NyaXB0cy4KCgkgIEFsZXgKCjIwMDctMDYtMTQgMTM6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogYWRkIG1vcmUgdmVyYm9zZSBvdXRwdXQKCjIwMDctMDYtMTQgMTI6MDMgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2taSVBHZW5lcmF0b3IuY3h4LCBjbUNQYWNrWklQR2VuZXJhdG9yLmg6CgkgIEVOSDogc3VwcG9ydCA3emlwIGZvciBjcmVhdGluZyB6aXAgZmlsZXMgKG5vdCA3eiBmaWxlcykKCgkgIEFsZXgKCjIwMDctMDYtMTQgMTE6MTcgIGFsZXgKCgkqIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDoKCSAgU1RZTEU6IGFkZCBtYW4gcGFnZSBmb3IgY3BhY2sKCgkgIEFsZXgKCjIwMDctMDYtMTQgMDg6NDkgIGFsZXgKCgkqIFNvdXJjZS86IGNtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmgsIGNtYWtlbWFpbi5jeHg6CgkgIFNUWUxFOiBhZGQgY29tbWVudCBhYm91dCB0aGUgLUQgLVAgb3JkZXIgYW5kIGZpeCB0eXBvIGluIGRvYwoKCSAgQWxleAoKMjAwNy0wNi0xNCAwODozMyAgYWxleAoKCSogVGVzdHMvQnVpbGREZXBlbmRzL0NNYWtlTGlzdHMudHh0OgoJICBDT01QOiByZW1vdmluZyB0aGUgZGlyZWN0b3J5IGF0IHRoZSBiZWdpbm5pbmcgYnJlYWtzIHRoZSB0ZXN0IGZvcgoJICBpbi1zb3VyY2UgYnVpbGRzCgoJICBBbGV4CgoyMDA3LTA2LTE0IDA3OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMTQgMDE6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0xMyAxNzowNiAga2luZwoKCSogU291cmNlLzogY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmg6IEVOSDogTWFrZSBzdXJlCgkgIEZpbmRGdWxsUGF0aCBkb2VzIG5vdCBjb21wbGFpbiBtb3JlIHRoYW4gb25jZSBhYm91dCBub3QgZmluZGluZwoJICB0aGUgZmlsZSBpZiBpdCBmYWlscy4KCjIwMDctMDYtMTMgMTY6NTggIGtpbmcKCgkqIFNvdXJjZS86IGNtU291cmNlRmlsZS5jeHgsIGNtU291cmNlRmlsZS5oOiBFTkg6IFVzZQoJICBub24tY29uc3Q9PT5sb2NhdGUgcG9saWN5IGZvciBHZXRMYW5ndWFnZSgpIG1ldGhvZC4KCjIwMDctMDYtMTMgMTY6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5oOiBTVFlMRTogQWRkZWQgaW50ZXJmYWNlCgkgIGRvY3VtZW50YXRpb24uCgoyMDA3LTA2LTEzIDE2OjI2ICBhbGV4CgoJKiBUZXN0cy9CdWlsZERlcGVuZHMvOiBDTWFrZUxpc3RzLnR4dCwgUHJvamVjdC9iYXIuY3h4OgoJICBDT01QOiBmaXggdGVzdCwgaW4gc29tZSBjYXNlcyBzdGRvdXQgZnJvbSBiYXIgd2FzIG5vdCBjYXB0dXJlZAoJICBjb3JyZWN0bHksIHByb2JhYmx5IGJlY2F1c2UgdGhlIHByb2Nlc3Mgd2FzIGtpbGxlZCBiZWZvcmUgdGhlCgkgIGZmbHVzaCgpIHdvcmtlZCBiZWNhdXNlIHRoZSBidXN5IGxvb3AgYmxvY2tlZCB0aGUgcHJvY2Vzc29yCgkgIChmYWlsaW5nIG1pZHdvcmxkIHRlc3QpCgoJICBBbGV4CgoyMDA3LTA2LTEzIDE2OjIyICBraW5nCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eDogQlVHOiBEbyBub3QgYWJvcnQgd2hlbiBmaWxlIGNhbm5vdCBiZQoJICBmb3VuZC4KCjIwMDctMDYtMTMgMTY6MTIgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5jeHgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZS5oOiBFTkg6IEltcHJvdmVkIGNvbnN0LWNvcnJlY3RuZXNzIG9mIGNtU291cmNlRmlsZQoJICBBUEkuCU9uLWRlbWFuZCBjb21wdXRhdGlvbiBvZiB0aGUgZnVsbCBwYXRoIGlzIG5vdyBkb25lIG9ubHkgZm9yCgkgIG5vbi1jb25zdCBjbVNvdXJjZUZpbGUgaW5zdGFuY2VzLgoKMjAwNy0wNi0xMyAxNTozMiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTWFrZURlcGVuZC5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21Tb3VyY2VGaWxlLmN4eCwKCSAgY21Tb3VyY2VGaWxlLmg6IEVOSDogQ2hhbmdlZCBzaWduYXR1cmUgb2YKCSAgY21Tb3VyY2VGaWxlOjpHZXRGdWxsUGF0aCgpIGJhY2sgdG8gcmV0dXJuaW5nIGEgcmVmZXJlbmNlIHRvIGEKCSAgc3RyaW5nLgoKMjAwNy0wNi0xMyAxNToyMSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21Tb3VyY2VGaWxlLmg6IFNUWUxFOgoJICBSZW1vdmVkIGNvbW1lbnRlZC1vdXQgY29kZSB0aGF0IGlzIG5vIGxvbmdlciBuZWVkZWQuCgoyMDA3LTA2LTEzIDE1OjIxICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IEZpeGVkIGZvciBuZXcKCSAgY21Tb3VyY2VGaWxlIGludGVyZmFjZS4KCjIwMDctMDYtMTMgMTU6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4OiBCVUc6IE5ldmVyIHJldHVybiBhIG51bGwgcG9pbnRlciBmcm9tCgkgIEdldEZ1bGxQYXRoLglUb28gbWFueSBwbGFjZXMgY29uc3RydWN0IGEgc3RyaW5nIHdpdGggdGhlIHJlc3VsdC4KCjIwMDctMDYtMTMgMTQ6MzYgIGFsZXgKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmg6CgkgIFNUWUxFOiBhZGQgZG9jdW1lbnRhdGlvbiBmb3IgRklMRShSRU1PVkUgLi4uKSBhbmQKCSAgRklMRShSRU1PVkVfUkVDVVJTRSAuLi4pIEZJTEUoUkVNT1ZFIC4uLikgd29ya3Mgb25seSBmb3IgZmlsZXMsCgkgIG5vdCBmb3IgZGlyZWN0b3JpZXMsIFJFTU9WRV9SRUNVUlNFIHdvcmtzIGZvciBib3RoLCBpdCBzZWVtcwoJICBoYXZpbmcgYm90aCBpcyBub3QgbmVjZXNzYXJ5CgoJICBBbGV4CgoyMDA3LTA2LTEzIDEzOjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHg6IENPTVA6IEZpeCBmb3IgbmV3IGNtU291cmNlRmlsZQoJICBpbnRlcmZhY2UuCgoyMDA3LTA2LTEzIDEzOjQ0ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IENPTVA6IEZpeCBmb3IgYnVpbGQgb24gVlMuCgoyMDA3LTA2LTEzIDEyOjUyICBhbGV4CgoJKiBTb3VyY2UvY21FeHRlcm5hbE1ha2VmaWxlUHJvamVjdEdlbmVyYXRvci5oOgoJICBDT01QOiBpbmNsdWRlIGNtU3RhbmRhcmRJbmNsdWRlcy5oIGluc3RlYWQgb2YgPHZlY3Rvcj4gYW5kCgkgIDxzdHJpbmc+LCB0aGlzIHNob3VsZCBmaXggdGhlIGJ1aWxkIHByb2JsZW0gb24gQUlYCgoJICBBbGV4CgoyMDA3LTA2LTEzIDExOjU1ICBraW5nCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlTG9jYXRpb24uY3h4OiBCVUc6IFdoZW4gdXBkYXRpbmcgdGhlIGRpcmVjdG9yeQoJICBvciBleHRlbnNpb24gZnJvbSBhbiB1bmFtYmlndW91cyBsb2NhdGlvbiB3ZSBuZWVkIHRvIG1hcmsgdGhlIG5ldwoJICBjb3B5IGFzIHVuYW1iaWd1b3VzIHRvby4KCjIwMDctMDYtMTMgMTE6MTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ29tbWFuZHMuY3h4OiBFTkg6IEltcGxlbWVudGVkCgkgIGNvbXBhdGliaWxpdHkgaW50ZXJmYWNlIGluIGNtQ1BsdWdpbkFQSSB0byBwcmVzZXJ2ZSBvbGQgQVBJIGZvcgoJICBsb2FkZWQgY29tbWFkbnMuCgoyMDA3LTA2LTEzIDEwOjU0ICBhbGV4CgoJKiBTb3VyY2UvY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuaDoKCSAgQlVHOiBtYWtlIE1BUktfQVNfQURWQU5DRUQoKSBzY3JpcHRhYmxlLCBiZWNhdXNlIHRoaXMgaXMgdGhlIG9ubHkKCSAgcmVhc29uIG1hbnkgY21ha2UgRmluZFhYWC5jbWFrZSBtb2R1bGVzIGNhbid0IGJlIHVzZWQgaW4gc2NyaXB0CgkgIG1vZGUgYW5kIGFsc28gRmluZFVuaXhNYWtlLmNtYWtlLCB3aGljaCBpcyByZXF1aXJlZCBieSB0aGUKCSAgQ1RFU1RfQlVJTEQoKSBjb21tYW5kCgoJICBBbGV4CgoyMDA3LTA2LTEyIDE3OjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMTIgMTY6NDEgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwgQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZToKCSAgRU5IOiBmaXJzdCBpbmNsdWRlIHRoZSBwcm9jZXNzb3Igc3BlY2lmaWMgZmlsZSwgdGhlbiB0aGUgY29tcGlsZXIKCSAgZmlsZSwgdGhpcyB3YXkgdGhlIHNwZWNpZmljIGhhcmR3YXJlIGZpbGUgY2FuIHNldCB2YXJpYWJsZXMgd2hpY2gKCSAgY2FuIGJlIHVzZWQgaW4gdGhlIHRvb2xjaGFpbiBydWxlcyAobGlrZSBDTUFLRV9DX0NPTVBJTEVfT0JKRUNUCgkgIGV0Yy4pCgoJICBBbGV4CgoyMDA3LTA2LTEyIDExOjExICBkYXZpZC5jb2xlCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogTmV2ZXIgcmV0dXJuIGEgc3RyaW5nIGNvbnRhaW5pbmcgYSBzcGFjZQoJICAiICIgZnJvbSBjbUNUZXN0OjpHZXRTaG9ydFBhdGhUb0ZpbGUgLSByZXBsYWNlIHRoZW0gd2l0aCAiXyIuCgkgIERBUlQgY2Fubm90IGNvbnN0cnVjdCB2YWxpZCBmaWxlIG5hbWVzIGR1cmluZyBkYXNoYm9hcmQgcm9sbHVwCgkgIHdpdGggc3BhY2UgIiAiIGluIHRoZSBzaG9ydCBwYXRoLgoKMjAwNy0wNi0xMiAxMDo1NiAgYWxleAoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oLCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHg6CgkgIEVOSDogcmVtb3ZlIG5vbi9zY3JpcHRhYmxlIGNtYWtlIGNvbW1hbmRzIGZyb20gdGhlIHNjcmlwdCBoYW5kbGVyCgkgIGluIGN0ZXN0LCBhcyBkaXNjdXNzZWQgd2l0aCBEYXZpZC4gVGhpcyBhbHNvIGdpdmVzIGEgYmV0dGVyIGN0ZXN0CgkgIG1hbiBwYWdlIHdpdGgganVzdCB0aGUgY29tbWFuZHMgeW91IHNob3VsZCBhY3R1YWxseSB1c2UgaW4gY3Rlc3QKCSAgc2NyaXB0cy4gIFVudGlsIG5vdyB0aGVzZSBjb21tYW5kcyB3ZXJlIG1vcmUgb3IgbGVzcyBleGVjdXRlZCwKCSAgYnV0IGUuZy4gYWRkX2V4ZWN1dGFibGUoKSBkaWRuJ3QgY3JlYXRlIGFuIGV4ZWN1dGFibGUsIHByb2plY3QoKQoJICBmYWlsZWQgd2l0aCBhbiBlcnJvci4gTm93IHlvdSBnZXQgYW4gZXJyb3IgaW5zdGFudGx5IGlmIHVzaW5nIG9uZQoJICBvZiB0aGVzZSBjb21tYW5kcy4KCgkgIEFsZXgKCjIwMDctMDYtMTIgMTA6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBtYWtlIHN1cmUgd29ya2luZwoJICBkaXJlY3RvcnkgaXMgc2V0CgoyMDA3LTA2LTEyIDA5OjQwICBhbGV4CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOgoJICBTVFlMRTogcmVtb3ZlIGFyZ3VtZW50IGJvb2wgZmFzdCwgaXQgd2FzIHVudXNlZAoKCSAgQWxleAoKMjAwNy0wNi0xMiAwODoyMyAgYWxleAoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogcmVtb3ZlIHdhcm5pbmcgYWJvdXQgdW51c2VkIHZhcmlhYmxlCgoJICBBbGV4CgoyMDA3LTA2LTExIDE4OjIzICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LAoJICBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlRGVwZW5kLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuaCwKCSAgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eCwgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LCBTb3VyY2UvY21Tb3VyY2VGaWxlLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5jeHgsIFNvdXJjZS9jbVNvdXJjZUZpbGVMb2NhdGlvbi5oLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaDogRU5IOiBJbml0aWFsIHN3ZWVwIGZvcgoJICBuZXctc3l0bGUgY3JlYXRpb24gb2YgY21Tb3VyY2VGaWxlIGluc3RhbmNlcy4gIENvbW1pdHRpbmcgb24KCSAgYnJhbmNoIENNYWtlLVNvdXJjZUZpbGUyLWIuCgoyMDA3LTA2LTExIDE3OjE1ICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgdGVzdAoKMjAwNy0wNi0xMSAxNzowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTExIDE1OjQ3ICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtL0dlbmVyaWMuY21ha2UsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIFNUWUxFOiBhZGQgYSBjb21tZW50IGFib3V0IFNldExhbmd1YWdlRW5hYmxlZCgpIC1hZGQgYQoJICBHZW5lcmljLmNtYWtlIGZvciB0YXJnZXQgcGxhdGZvcm1zIHdpdGhvdXQgb3BlcmF0aW5nIHN5c3RlbQoKCSAgQWxleAoKMjAwNy0wNi0xMSAxNTozNiAgZGF2aWQuY29sZQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBCVUc6CgkgIE5ldmVyIHJldHVybiBhIHN0cmluZyBjb250YWluaW5nIGEgIjoiIGZyb20KCSAgY21DVGVzdDo6R2V0U2hvcnRQYXRoVG9GaWxlIC0gcmVwbGFjZSB0aGVtIHdpdGggIl8iLiBEQVJUIGNhbm5vdAoJICBjb25zdHJ1Y3QgdmFsaWQgZmlsZSBuYW1lcyBkdXJpbmcgZGFzaGJvYXJkIHJvbGx1cCB3aXRoICI6IiBpbgoJICB0aGUgc2hvcnQgcGF0aC4gQWxzbywgZml4IHRoZSBCdWxsc2V5ZSBjb3ZlcmFnZSBoYW5kbGVyIHNvIHRoYXQKCSAgdGhlIGZpbGUgbmFtZXMgYW5kIHBhdGhzIG1hdGNoIGluIGJvdGggdGhlIGNvdmVyYWdlIHN1bW1hcnkgYW5kCgkgIHRoZSBpbmRpdmlkdWFsIGNvdmVyYWdlIGxvZ3MuCgoyMDA3LTA2LTExIDE1OjMxICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaDoKCSAgRU5IOiBzcGxpdCBjbUdsb2JhbEdlbmVyYXRvcjo6U2V0TGFuZ3VhZ2VFbmFibGVkKCkgaW4gdHdvIHBhcnRzLAoJICB3aGVyZSB0aGUgc2Vjb25kIHBhcnQgY29waWVzIHRoZSB2YWx1ZXMgZnJvbSB0aGUgY21ha2UgdmFyaWFibGVzCgkgIGludG8gaW50ZXJuYWwgbWFwcy4gIFNvIHRoaXMgY2FuIG5vdyBiZSBkb25lIGFmdGVyIHRoZQoJICBjb21waWxlci1zcGVjaWZpYyBpbmZvcm1hdGlvbiBoYXMgYmVlbiBsb2FkZWQsIHdoaWNoIGNhbiBub3cKCSAgb3ZlcndyaXRlIG1vcmUgc2V0dGluZ3MuCgoJICBBbGV4CgoyMDA3LTA2LTExIDE1OjAyICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2U6IEJVRzogRml4ZWQgbmFtZSBvZiB2YXJpYWJsZSB1c2VkIHRvIGNoZWNrCgkgIHZlcnNpb24gb2YgdWljIGV4ZWN1dGFibGUuCgoyMDA3LTA2LTExIDE1OjAwICBob2ZmbWFuCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgQ29udkxpYiB0ZXN0IGJhY2sgZm9yIHNvbWUgdGltZQoKMjAwNy0wNi0xMSAxNDoyOCAgYWxleAoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IGRldGVybWluZUxhbmd1YWdlQ2FsbGVkIHJlbW92ZWQsIG5vdyB0aGUgY29uZGl0aW9uYWwgY29kZQoJICBpcyBkaXJlY3RseSBjYWxsZWQgaW4gdGhlIG9ubHkgcGxhY2Ugd2hlcmUgaXQgY291bGQgYmUgc2V0IHRvCgkgIHRydWUKCgkgIEFsZXgKCjIwMDctMDYtMTEgMTM6MjIgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmUtYXJyYW5nZWQgY29kZSB0byB0ZXN0CgkgIGFkZGluZyBhIGN1c3RvbSBjb21tYW5kIHRvIGdlbmVyYXRlIGEgc291cmNlIGZpbGUgYWZ0ZXIgdGhlIGZpbGUKCSAgaGFzIGJlZW4gYWRkZWQgdG8gYSB0YXJnZXQuICBUaGlzIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudAoJICBpbXBsZW1lbnRhdGlvbiBiZWNhdXNlIG9mIHRoZSB1c2Ugb2Ygc291cmNlIGxpc3RzIGluIHRoZSB0YXJnZXQKCSAgaW1wbGVtZW50YXRpb24uICBXaGVuIHdlIGxhdGVyIGNvbnZlcnQgdG8gY3JlYXRpbmcgY21Tb3VyY2VGaWxlCgkgIGluc3RhbmNlcyBpbW1lZGlhdGVseSBmb3IgdGhlIHRhcmdldCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUKCSAgbWVudGlvbmVkIGNhc2Ugc3RpbGwgd29ya3MuCgoyMDA3LTA2LTExIDEyOjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUluY2x1ZGVSZWd1bGFyRXhwcmVzc2lvbkNvbW1hbmQuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oOgoJICBTVFlMRTogUmVtb3ZlZCB1bnVzZWQgcmVmZXJlbmNlIHRvIGNtTWFrZURlcGVuZC4KCjIwMDctMDYtMTEgMTA6MjUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEJVRzogTW9yZSBwcm9ibGVtcyB3aXRoCgkgIGNtTWFrZWZpbGUgY29weS1jb25zdHJ1Y3Rvci4JSXQgc2VlbXMgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbgoJICBjbGFzcyBjYW5ub3QgYmUgYXNzaWduZWQgYnV0IGRvZXMgbm90IGVuZm9yY2UgdGhpcyBsaW1pdGF0aW9uIGF0CgkgIGNvbXBpbGUgdGltZS4KCjIwMDctMDYtMTAgMTk6NTEgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBlbmFibGUgY3ZzIG9yIHN2biBzdXBwb3J0IGlmIHRoZSBzb3VyY2UgaGFzIHRoZSBDVlMvLnN2bgoJICBzdWJkaXJzCgoJICBBbGV4CgoyMDA3LTA2LTEwIDE1OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMDkgMDI6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0wOCAxNzo0NCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IENvcHkgY29uc3RydWN0b3IgbmVlZHMgdG8gY29weQoJICByZWd1bGFyIGV4cHJlc3Npb24gbWVtYmVycy4KCjIwMDctMDYtMDggMTY6MTkgIGFsZXgKCgkqIFNvdXJjZS9jbUV4cG9ydENvbW1hbmQuY3h4OgoJICBFTkg6IGZhaWwgaWYgYW4gdW5rbm93biB0YXJnZXQgaXMgbGlzdGVkCgoJICBBbGV4CgoyMDA3LTA2LTA4IDE2OjA2ICBhbGV4CgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaDoKCSAgU1RZTEU6IGNyZWF0ZSBjb21tYW5kIGRvY3VtZW50YXRpb24gZm9yIGN0ZXN0CgoJICBJIHRoaW5rIHNvbWUgb2YgdGhlIGNtYWtlIGNvbW1hbmRzIHNob3VsZCBiZSByZW1vdmVkIGZyb20gY3Rlc3QKCSAgaWYgcG9zc2libGUsIGxpa2UgYWRkX2V4ZWN1dGFibGUgZXRjLgoKCSAgQWxleAoKMjAwNy0wNi0wOCAxNDoxNiAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IGZpeCB0aW1lb3V0IGJ1ZyB3aXRoIGdsb2JhbCB0aW1lb3V0cwoJICBzdWNoIGFzIERBUlRfVEVTVElOR19USU1FT1VUCgoyMDA3LTA2LTA4IDEzOjQzICBraW5nCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IEJVRzogRml4ZWQgc3BlbGxpbmcgYW5kIGZvcm1hdHRpbmcgb2YgbmV3CgkgIGRvY3VtZW50YXRpb24uCgoyMDA3LTA2LTA4IDEyOjQyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUV4dGVybmFsTWFrZWZpbGVQcm9qZWN0R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmg6CgkgIENPTVA6IGxlc3Mgd2FybmluZ3MKCgkgIEFsZXgKCjIwMDctMDYtMDggMTI6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IEVOSDogdXNlIG5ldyBjb3ZiciB0aGF0IGRvZXMgbm90IHN0b3AKCSAgb24gZXJyb3IKCjIwMDctMDYtMDggMTE6NTcgIGFsZXgKCgkqIFNvdXJjZS86IGNtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LCBjbUNvbW1hbmRzLmN4eCwKCSAgY21FeHBvcnRDb21tYW5kLmN4eCwgY21FeHBvcnRDb21tYW5kLmgsCgkgIGNtRXh0ZXJuYWxNYWtlZmlsZVByb2plY3RHZW5lcmF0b3IuY3h4LAoJICBjbUV4dGVybmFsTWFrZWZpbGVQcm9qZWN0R2VuZXJhdG9yLmgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtYWtlLmN4eCwgY21ha2UuaDoKCSAgRU5IOiBhZGQgY21FeHRlcm5hbE1ha2VmaWxlUHJvamVjdEdlbmVyYXRvciwgd2hpY2ggc2hvdWxkIG1ha2UgaXQKCSAgZWFzaWVyIHRvIHdyaXRlIGdlbmVyYXRvcnMgZm9yIElERSBwcm9qZWN0cywgd2hpY2ggdXNlIGFscmVhZHkKCSAgZXhpc3RpbmcgbWFrZWZpbGVzIChjdXJyZW50IHRoZSBrZGV2ZWxvcCBnZW5lcmF0b3IpIC1maXJzdCBzdGVwdAoJICBvZiB0aGUgZXhwb3J0IGludGVyZmFjZSwgaW5paXRpYWwgZXhwb3J0KCkgY29tbWFuZCAtbW9yZQoJICByZXBsYWNlbWVudHMgZm9yIHRoZSBGSU5EX1hYWCBkb2NzCgoJICBBbGV4CgoyMDA3LTA2LTA4IDEwOjI4ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6CgkgIEVOSDogbW9yZSBjb25zaXN0ZW5jZSBhbW9uZyB0aGUgWDExIGNvbXBvbmVudHMKCgkgIEFsZXgKCjIwMDctMDYtMDggMDk6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0wOCAwOToyOCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOgoJICBFTkg6IHBhdGNoIGZyb20gIzUwNTQ6IGFsc28gc2VhcmNoIGZvciBRdFVpdG9vbHNkIGxpYgoKCSAgQWxleAoKMjAwNy0wNi0wOCAwOToxOSAgYWxleAoKCSogU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmg6CgkgIFNUWUxFOiBmaXggdHlwbyAoYnVnICM1MTE1KQoKCSAgQWxleAoKMjAwNy0wNi0wNyAxNDo1NyAgYWxleAoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4OgoJICBTVFlMRTogYWRkIGRvY3VtZW50YXRpb24gZm9yIENNQUtFX0ZJTkRfUk9PVF9QQVRICgoJICBBbGV4CgoyMDA3LTA2LTA3IDE0OjMxICBhbGV4CgoJKiBTb3VyY2UvOiBjbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5jeHg6CgkgIEJVRzogZml4IEJvb3RzdHJhcCB0ZXN0CgoJICBBbGV4CgoyMDA3LTA2LTA3IDEzOjUxICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ29tcGlsZXJJZC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmg6CgkgIFNUWUxFOiByZW1vdmUgb3V0IGNvbW1lbnRlZCBjb2RlCgoJICBBbGV4CgoyMDA3LTA2LTA3IDEzOjA1ICBhbGV4CgoJKiBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIFNUWUxFOiB1c2UgR0VUX1RBUkdFVF9QUk9QRVJUWShMT0NBVElPTikgaW5zdGVhZCBvZiBtYW51YWxseQoJICBidWlsZGluZyB0aGUgcGF0aCB0byB0aGUgZXhlY3V0YWJsZXMgKHRlc3RlZCB3aXRoIGNtYWtlIDIuMi4zKQoKCSAgQWxleAoKMjAwNy0wNi0wNyAxMDo0MSAgYWxleAoKCSogU291cmNlL2NtYWtlLmN4eDoKCSAgRU5IOiBhbHNvIHJlbW92ZSB1bmluaXRpYWxpemVkIGZyb20gdGhlIGNhY2hlCgoJICBBbGV4CgoyMDA3LTA2LTA3IDA5OjM3ICBhbGV4CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OgoJICBCVUc6IGZpeCAjNTEzNywgbm93IHdpdGggdGhlIG1vZGlmaWVkIENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlCgkgIHRoZSBDTUFLRV9IT1NUX1NZU1RFTV94eHggdmFyaWFibGVzIGhhdmUgdG8gYmUgcHJlc2V0LCBub3QgdGhlCgkgIENNQUtFX1NZU1RFTV94eHggb25lcwoKCSAgQWxleAoKMjAwNy0wNi0wNyAwODoyOSAgYWxleAoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6CgkgIFNUWUxFOiByZW1vdmUgd3JvbmcgY29tbWVudHMKCgkgIEFsZXgKCjIwMDctMDYtMDYgMTY6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0lucHV0RmlsZS5oLmluLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9TdHJpbmdGaWxlLmN4eDogQlVHOiBGaXhlZCBAT05MWQoJICBjb25maWd1cmF0aW9uIHRvIG5vdCB0cnkgdG8gcGFyc2UgJHt9IHN5bnRheCBhdCBhbGwuCVRoaXMgZml4ZXMKCSAgdGhlIG9yaWdpbmFsIGZpeCB0byBidWcjNDM5MyBhbmQgYWRkcyBhIHRlc3QuCgoyMDA3LTA2LTA2IDE1OjA1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDYtMDYgMTM6NDMgIGhvZmZtYW4KCgkqIFRlc3RzL0NNYWtlVGVzdHMvOiBJbmNsdWRlVGVzdC5jbWFrZS5pbiwgVG9vbGNoYWluVGVzdC5jbWFrZS5pbjoKCSAgRU5IOiBmaXggaXQKCjIwMDctMDYtMDYgMTM6MzIgIGhvZmZtYW4KCgkqIFRlc3RzL0NNYWtlVGVzdHMvOiBJbmNsdWRlVGVzdC5jbWFrZS5pbiwgVG9vbGNoYWluVGVzdC5jbWFrZS5pbjoKCSAgRU5IOiB1c2UgbG93ZXIgY2FzZSBmb3IgZmlsZSBjb21wYXJlIG9uIHdpbmRvd3MKCjIwMDctMDYtMDYgMTE6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0wNiAxMToyNiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5jeHgsIER5bmFtaWNMb2FkZXIuaHh4LmluOiBFTkg6CgkgIHJlbW92ZSBzb21lIHN0dWZmIHRvIGltcHJvdmUgY292ZXJhZ2UKCjIwMDctMDYtMDYgMTE6MDIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHg6IEJVRzoKCSAgYmV0dGVyIHBhc3Npbmcgb2YgZ2xvYmFsIFRJTUVPVVQgdG8gaW50ZXJuYWwgY3Rlc3QgaW52b2NhaXRvbnMKCjIwMDctMDYtMDYgMTA6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogZml4IGNhc2UgcHJvYmxlbSB3aXRoIGRyaXZlCgkgIGxldHRlcnMgYW5kIGNtYWtlIHZzIENNYWtlU2V0dXAgYnVpbGQubWFrZSBjaGFuZ2luZwoKMjAwNy0wNi0wNiAxMDo0MSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6CgkgIEVOSDogbW92ZSB0byBSQyAxMAoKMjAwNy0wNi0wNiAwODo0OSAgYWxleAoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oOgoJICBFTkg6IGFkZCBJRihJU19BQlNPTFVURSBwYXRoKSwgc28gbm8gcmVnZXggbWF0Y2hpbmcgaXMgcmVxdWlyZWQKCSAgaW4gdGhlIGNtYWtlIHNjcmlwdHMKCgkgIEFsZXgKCjIwMDctMDYtMDUgMTY6MzcgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDoKCSAgU1RZTEU6IGZpeCBjb21tZW50CgoJICBBbGV4CgoyMDA3LTA2LTA1IDE2OjM1ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5oLCBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOgoJICBTVFlMRTogbW92ZSBGb3JjZVZlcmJvc2VNYWtlZmlsZXMgdG8KCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLCBzbyB0aGUga2RldmVsb3AgZ2VuZXJhdG9yIGRvZXNuJ3QKCSAgbmVlZCBpdHMgb3duIENyZWF0ZUxvY2FsR2VuZXJhdG9yKCkgYW55bW9yZQoKCSAgQWxleAoKMjAwNy0wNi0wNSAxMDoyOCAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVySWQuYywgQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsIENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBDTWFrZVN5c3RlbVdpdGhUb29sY2hhaW5GaWxlLmNtYWtlLmluOgoJICBFTkg6IGFsc28gbG9hZCBhIHByb2Nlc3Nvci1zcGVjaWZpYyBmaWxlIGlmIGV4aXN0cyAtYWxzbyB0cnkgdGhlCgkgIGJhc2VuYW1lIGZpbGUgaWYgdGhlIGNvbXBpbGVyIGlkIGZpbGUgZG9lc24ndCBleGlzdCAtZG9uJ3QgcmVseQoJICBzbyBtdWNoIG9uIHRoZSBDTUFLRV9UT09MQ0hBSU5fRklMRQoKCSAgQWxleAoKMjAwNy0wNi0wNSAxMDoyMCAgYWxleAoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplQy5jLmluOgoJICBDT01QOiBkb24ndCB1c2Ugc3RkaW8sIGl0IGNhbiBmYWlsIG9uIHNvbWUgZW1iZWRkZWQgdGFyZ2V0cwoJICAoc2RjYykKCgkgIEFsZXgKCjIwMDctMDYtMDUgMDk6MzAgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmwsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHg6IEVOSDogbWVyZ2UgaW4gY2hhbmdlcwoJICBmcm9tIG1haW4gdHJlZSB0aGF0IGZpeCBhdCBvbmx5IHBhcnNpbmcKCjIwMDctMDYtMDUgMDk6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuY3h4LCBjbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmw6CgkgIEVOSDogZml4IGZvciBhaXgKCjIwMDctMDYtMDUgMDk6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0wNSAwODozMCAgYWxleAoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplQy5jLmluOgoJICBDT01QOiBtYWtlIHRoZSBuZXcgY2hlY2tfdHlwZV9zaXplIHdvcmsgd2l0aCB0aGUgSFBVWCBjYwoJICBjb21waWxlcjogY29uc3QgZG9lc24ndCBleGlzdCB0aGVyZQoKCSAgQWxleAoKMjAwNy0wNi0wNCAxNzoxOCAgaG9mZm1hbgoKCSogVGVzdHMvRnJhbWV3b3JrL3Rlc3QubHVhOiBFTkg6IGFkZCBtaXNzaW5nIGZpbGUKCjIwMDctMDYtMDQgMTc6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogcHJldmVudCBjcmFzaAoKMjAwNy0wNi0wNCAxNzoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTA0IDE3OjA4ICBhbGV4CgoJKiBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZUMuYy5pbiwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIFNvdXJjZS9jbUNvcmVUcnlDb21waWxlLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGRldGVybWluZSB0eXBlc2l6ZSBieSBjb21waWxpbmcKCSAgYSBmaWxlIGFuZCByZWFkaW5nIHN0cmluZ3MgZnJvbSB0aGUgY29tcGlsZWQgb3V0cHV0LglUZXN0ZWQgd2l0aAoJICB2YXJpb3VzIGdjYywgWENvZGUsIE1TVkM3LCBzZGNjIEZvciBPU1ggd2hlbiBkb2luZyBUUllfQ09NUElMRSgpCgkgIENNQUtFX09TWF9BUkNISVRFQ1RVUkVTIGlzIHVzZWQsIGlmIHRoZXJlIGFyZSBkaWZmZXJlbnQgcmVzdWx0cwoJICBhbiBlcnJvciBpcyBnZW5lcmF0ZWQuIENNQUtFX09TWF9BUkNISVRFQ1RVUkVTIGNhbiBiZSBvdmVyd3JpdHRlbgoJICBmb3IgdGhlIFRSWV9DT01QSUxFUyB3aXRoIENNQUtFX1RSWV9DT01QSUxFX09TWF9BUkNISVRFQ1RVUkVTLgoKCSAgQWxleAoKMjAwNy0wNi0wNCAxNTo1NyAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuaCwKCSAgY21Db21tYW5kQXJndW1lbnRMZXhlci5pbi5sLCBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHg6CgkgIEJVRzogRml4ZWQgY21Db21tYW5kQXJndW1lbnRMZXhlciBuby1lc2NhcGUgbW9kZSB0byBub3QgbWF0Y2gKCSAgYmFja3NsYXNoLWVzY2FwZSBzZXF1ZW5jZXMgYXMgbGV4aWNhbCB0b2tlbnMgYXQgYWxsLglOZWVkZWQgdG8KCSAgY29uZmlndXJlIGZpbGVzIHdpdGggYmFja3NsYXNoZXMgcHJlY2VkaW5nIGFuIEBWQVJAIHJlcGxhY2VtZW50LgoJICBUaGlzIGZpeGVzIGJ1ZyM1MTMwLgoKMjAwNy0wNi0wNCAxNToyOCAgaG9mZm1hbgoKCSogVGVzdHMvRnJhbWV3b3JrL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBvbmUgb2YgdGhlIGhlYWRlcnMgdG8KCSAgdGhlIHJlZ3VsYXIgc291cmNlcwoKMjAwNy0wNi0wNCAxMzo1MCAgYWxleAoKCSogU291cmNlL2NtYWtlLmN4eDoKCSAgU1RZTEU6IGZpeCB0eXBvOiBub3cgZG91YmxlIHNwYWNlIGFmdGVyIC1ECgoJICBBbGV4CgoyMDA3LTA2LTA0IDEzOjQ4ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtYWtlLmN4eCwgY21ha2UuaDoKCSAgRU5IOiAtVSBmb3IgcmVtb3ZpbmcgdmFyaWFibGVzIG5vdyB1c2VzIGdsb2JiaW5nIGV4cHJlc3Npb25zCgkgIC1jbUNhY2hlTWFuYWdlcjogbm93IGFsc28gdmFyaWFibGVzIHdpdGggdHlwZSBVTklOSVRJQUxJWkVEIGFyZQoJICBzYXZlZCBpbiBDTWFrZUNhY2hlLnR4dCwgdGhlc2UgYXJlIHRoZSB2YXJzIGRlZmluZWQgdXNpbmcKCSAgLURGT089Zm9vIGJ1dCB3aXRob3V0IHR5cGUKCgkgIEFsZXgKCjIwMDctMDYtMDQgMTM6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHg6IEVOSDoKCSAgZml4IHBhc3Npbmcgb2YgdGltZSBsaW1pdCB0byBzb21lIGN0ZXN0IGludm9jYXRpb25zIHRoYXQgYWxzbyB1c2UKCSAgYnVpbGQtb3B0aW9ucwoKMjAwNy0wNi0wMyAxMDo0OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA2LTAyIDE2OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEVOSDogcmVtb3ZlIGRlYnVnIHRoYXQKCSAgY2F1c2VkIHRlc3RzIHRvIGZhaWwKCjIwMDctMDYtMDIgMDY6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNi0wMSAyMzowNiAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBFTkg6IG9wcHMKCjIwMDctMDYtMDEgMTU6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IEVOSDogaW5pdGlhbCBidWxsc2V5ZSBzdHVmZgoKMjAwNy0wNi0wMSAxNDoxNiAgYWxleAoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOgoJICBCVUc6IGFsc28gcHV0IGEgdmFyaWFibGUgaW50byB0aGUgY2FjaGUgd2hlbiBkZWZpbmVkIHVzaW5nIC1EIGlmCgkgIG5vIHR5cGUgaXMgZ2l2ZW4sIHRoZW4gU1RSSU5HIGlzIHVzZWQuIEFsc28gYWRkIGNvbW1hbmQgbGluZQoJICBvcHRpb24gLVUgYXMgc3VnZ2VzdGVkIGZvciB1bmRlZmluaW5nIGNhY2hlIHZhcmlhYmxlcy4gVGhpcyBmaXhlcwoJICAjNDg5NiBhbmQgIzQyNjQuCgoJICBBbGV4CgoyMDA3LTA2LTAxIDEzOjE3ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6CgkgIENPTVA6IGZpeCB3YXJuaW5ncyBvbiBzb21lIG1hY2hpbmVzIHdoZXJlIHNvbWUgWCBsaWJzIGFwcGFyZW50bHkKCSAgZG9uJ3QgcmVhbGx5IHdvcmsgYnkgcmV2ZXJ0aW5nIFgxMV9MSUJSQVJJRVMgYmFjayB0byB0aGUgb2xkCgkgIHZlcnNpb24gLWFkZCBzb21lIG1vcmUgWDExX3h4eF9GT1VORCB2YXJpYWJsZXMgLXJlZm9ybWF0IGNvbW1lbnRzCgkgIGF0IHRoZSB0b3AgLWFsd2F5cyB1c2UgSUYoSU5DTFVERV9ESVIgYW5kIExJQikgZm9yIHNldHRpbmcgRk9VTkQKCSAgdG8gVFJVRQoKCSAgQWxleAoKMjAwNy0wNi0wMSAxMToxOCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUFkZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBtZXJnZSBpbiBhIGZldyBtb3JlIGZpeGVzIGZyb20KCSAgdGhlIG1haW4gdHJlZQoKMjAwNy0wNi0wMSAxMToxNiAgYWxleAoKCSogTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtlLCBNb2R1bGVzL0NoZWNrQ1hYU291cmNlUnVucy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZSwgTW9kdWxlcy9UZXN0QmlnRW5kaWFuLmNtYWtlLAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5oLAoJICBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9UcnlDb21waWxlL2V4aXRfc3VjY2Vzcy5jLAoJICBUZXN0cy9UcnlDb21waWxlL2V4aXRfd2l0aF9lcnJvci5jOgoJICBFTkg6IGltcHJvdmUgVFJZX1JVTigpIGZvciBjcm9zc2NvbXBpbGluZzogaW5zdGVhZCBvZiBqdXN0CgkgIGZhaWxpbmcsIGl0IG5vdyBjcmVhdGVzIHR3byBjYWNoZSB2YXJpYWJsZXMsIG9uZSBmb3IgdGhlCgkgIFJVTl9SRVNVTFQsIG9uZSBmb3IgdGhlIFJVTl9PVVRQVVQgKGlmIHJlcXVpcmVkKSwgd2hpY2ggY2FuIGJlCgkgIHNldCBvciBwcmVzZXQgYnkgdGhlIHVzZXIuIEl0IGhhcyBub3cgYWxzbyB0d28gbmV3IGFyZ3VtZW50czoKCSAgUlVOX09VVFBVVF9WQVJJQUJMRSBhbmQgQ09NUElMRV9PVVRQVVRfVkFSSUFCTEUgKHRoZSBvbGQKCSAgT1VUUFVUX1ZBUklBQkxFIG1lcmdlcyBib3RoKSwgc28gaWYgb25seSBDT01QSUxFX09VVFBVVF9WQVJJQUJMRQoJICBpcyB1c2VkIHRoZSBydW4gdGltZSBvdXRwdXQgb2YgdGhlIFRSWV9SVU4gaXMgdW51c2VkIGFuZCB0aGUgdXNlcgoJICBkb2Vzbid0IGhhdmUgdG8gY2FyZSBhYm91dCB0aGUgb3V0cHV0IHdoZW4gY3Jvc3Njb21waWxpbmcuIFRoaXMKCSAgaXMgbm93IHVzZWQgaW4gRmluZFRocmVhZHMuY21ha2UsIENoZWNrQy9DWFhTb3VyY2VSdW5zLmNtYWtlIGFuZAoJICBUZXN0QmlnRW5kaWFuLmNtYWtlLCB3aGljaCB1c2VkIHRoZSBvdXRwdXQgb25seSBmb3IgdGhlIGxvZ2ZpbGUKCSAgKGNvbXBpbGUgb3V0cHV0IGlzIHN0aWxsIHRoZXJlKS4gVGVzdC9UcnlDb21waWxlLyBub3cgYWxzbyB0ZXN0cwoJICB0aGUgYmVoYXZpb3VyIG9mIE9VVFBVVF9WQVJJQUJMRSwgUlVOX09VVFBVVF9WQVJJQUJMRSBhbmQKCSAgQ09NUElMRV9PVVRQVVRfVkFSSUFCTEUuCgoJICBBbGV4CgoyMDA3LTA2LTAxIDExOjA2ICBhbGV4CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OgoJICBFTkg6IGFsc28gaGFuZGxlIGNvbW1lbnRzIGZvciB2YXJpYWJsZXMgd2hpY2ggY29udGFpbiBuZXdsaW5lcwoKCSAgQWxleAoKMjAwNy0wNi0wMSAwOToxOCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggY3Jhc2gsIGJ1ZyA1MTIxCgoyMDA3LTA1LTMxIDIyOjA2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMzEgMTY6MTggIGFsZXgKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtVGVzdHMuY21ha2U6CgkgIENPTVA6IHJldmVydCBzb21lIG9mIHRoZSBjaGFuZ2VzIGZvciBjcm9zc2NvbXBpbGluZywgbm90IHJlcXVpcmVkCgkgIGFueW1vcmUgd2l0aCByZWNlbnQgY2hhbmdlcyBpbiBjbWFrZQoKCSAgQWxleAoKMjAwNy0wNS0zMSAxMjowMyAgYWxleAoKCSogU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmN4eDoKCSAgRU5IOiBpZiBnZXRfdGFyZ2V0X3Byb3BlcnR5KCkgZG9lc24ndCBmaW5kIGEgdGFyZ2V0IHdpdGggdGhlCgkgIGdpdmVuIG5hbWUsIGl0IHJldHVybnMgbm93ICI8TkFNRV9PRl9WQVI+LU5PVEZPVU5EIiBpbnN0ZWFkIG9mCgkgIGp1c3QgIk5PVEZPVU5EIiwgd2hpY2ggY2FuIGhlbHAgaW4gZmluZGluZyBwcm9ibGVtcwoKCSAgQWxleAoKMjAwNy0wNS0zMSAxMDoyOSAgbWFydGluawoKCSogVGVzdHMvOiBDTWFrZUxpc3RzLnR4dCwgUHJvcGVydGllcy9DTWFrZUxpc3RzLnR4dCwKCSAgUHJvcGVydGllcy9wcm9wZXJ0aWVzLmguaW4sIFByb3BlcnRpZXMvcHJvcGVydGllczIuaCwKCSAgUHJvcGVydGllcy9TdWJEaXIvcHJvcGVydGllczMuY3h4OiBFTkg6IGFkZGVkIG5ldyB0ZXN0IGZvcgoJICBTb3VyY2VGaWxlIG9iamVjdHMgYW5kIHByb3BlcnRpZXMKCjIwMDctMDUtMzAgMTI6MDkgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFgxMS5jbWFrZToKCSAgRU5IOiBtb3N0bHkgc3luY2VkIHdpdGggRmluZFgxMS5jbWFrZSBmcm9tIEtERSBzdm46IG5vdyBhbHNvCgkgIHNlYXJjaGVzIGZvciBhIGxvdCBvZiBhZGRpdGlvbmFsIFgxMSBsaWJzLCBsaWtlIFh2LCBYYXUsIFhyYW5kcgoJICBhbmQgb3RoZXJzCgoJICBBbGV4CgoyMDA3LTA1LTMwIDEwOjQwICBhbGV4CgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybVRlc3RzLmNtYWtlOgoJICBDT01QOiBzdGFydCBjcm9zc2NvbXBpbGluZyBQYXJhdmlldzMgKHJlcXVpcmVzIGNtYWtlIGN2cywKCSAgY3VycmVudGx5IHRvIHNjcmF0Y2hib3gpCgoJICBBbGV4CgoyMDA3LTA1LTMwIDA1OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMjkgMTE6MzYgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsIE1vZHVsZXMvQ01ha2VTeXN0ZW0uY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VTeXN0ZW1XaXRoVG9vbGNoYWluRmlsZS5jbWFrZS5pbiwKCSAgVGVzdHMvQ01ha2VUZXN0cy9Ub29sY2hhaW5UZXN0LmNtYWtlLmluOgoJICBFTkg6IGFsd2F5cyBwcm92aWRlIENNQUtFX1NZU1RFTV9YWFgoKSBhbmQgTUFLRV9IT1NUX1NZU1RFTV9YWFgoKQoJICB2YXJpYWJsZXMsIHNvIHdoZW4gY3Jvc3MgY29tcGlsaW5nIHRoZSBidWlsZCBob3N0IHBsYXRmb3JtIGNhbiBiZQoJICB0ZXN0ZWQKCgkgIEFsZXgKCjIwMDctMDUtMjkgMDg6NDIgIGFsZXgKCgkqIFNvdXJjZS9jbUhleEZpbGVDb252ZXJ0ZXIuY3h4OgoJICBDT01QOiBsZXNzIHdhcm5pbmdzIHdpdGggbXN2YzgKCgkgIEFsZXgKCjIwMDctMDUtMjkgMDU6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0yOCAxNzo0OSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBCVUc6IEZpbmlzaGVkIHByZXZpb3VzIGZpeC4KCjIwMDctMDUtMjggMTM6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogRml4ZWQgc2hhZG93ZWQgbG9jYWwKCSAgd2FybmluZy4KCjIwMDctMDUtMjggMTM6MzIgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuaDogRU5IOiBSZW1vdmVkIHVudXNlZCBtZXRob2RzIHRoYXQgc2hvdWxkCgkgIG5ldmVyIGJlIHVzZWQgYW55d2F5LgoKMjAwNy0wNS0yOCAxMjoyMyAga2luZwoKCSogU291cmNlL2NtYWtlLmg6IFNUWUxFOiBGaXhlZCBjb21tZW50IGZvciBHZW5lcmF0ZSgpIG1ldGhvZC4KCjIwMDctMDUtMjggMTI6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogTW92ZWQgbGluayBsaWJyYXJ5IHJlbGF0ZWQgY29kZSBmcm9tCgkgIEdlbmVyYXRlU291cmNlRmlsZXNGcm9tU291cmNlTGlzdHMgdG8gQW5hbHl6ZUxpYkRlcGVuZGVuY2llcyB0bwoJICBtYWtlIHRoZSBmb3JtZXIgZG8gbm8gbW9yZSB0aGFuIHdoYXQgaXRzIG5hbWUgc2F5cy4KCjIwMDctMDUtMjggMTE6NDEgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIG1vcmUgaW5zdGFsbCBydWxlcyB0bwoJICBpbmNyZWFzZSBjb3ZlcmFnZSBvZiB0aGUgY29tbWFuZC4KCjIwMDctMDUtMjggMTE6MTggIGtpbmcKCgkqIFNvdXJjZS86IGNtQ3VzdG9tQ29tbWFuZC5jeHgsIGNtQ3VzdG9tQ29tbWFuZC5oLCBjbVRhcmdldC5jeHg6CgkgIEVOSDogUmVtb3ZlZCAiVXNlZCIgbWFyayBmcm9tIGN1c3RvbSBjb21tYW5kcy4gIEl0IGlzIG5vIGxvbmdlcgoJICBuZWVkZWQgb3IgY2hlY2tlZCBieSBhbnkgZ2VuZXJhdG9ycy4KCjIwMDctMDUtMjggMTE6MTYgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBSZW1vdmUgdW51c2VkIGJ1aWxkIHJ1bGVzCgkgIGZyb20gWGNvZGUuICBUaGlzIGNoYW5nZSB3YXMgbWFkZSBpbiB0aGUgVlMgZ2VuZXJhdG9ycyBvbgoJICAyMDA2LTAzLTIzIGFuZCBzaG91bGQgaGF2ZSBiZWVuIG1hZGUgZm9yIHRoZSBYY29kZSBnZW5lcmF0b3IgdG9vLgoJICBBbHNvIGNvbW1lbnRlZCBvdXQgc29tZSBkZWJ1ZyBwcmludCBzdGF0ZW1lbnRzLgoKMjAwNy0wNS0yOCAxMTowMyAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQ09NUDogRml4IGJ1aWxkCgkgIG9uIG1hYyBhZnRlciBjaGFuZ2UgdG8gR2V0U291cmNlRmlsZXMgc2lnbmF0dXJlLgoKMjAwNy0wNS0yOCAxMTowMiAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBDT01QOiBGaXggYnVpbGQgb2YgWENvZGUKCSAgZ2VuZXJhdG9yIGFmdGVyIGNoYW5nZSB0byBHZXRTb3VyY2VGaWxlcyBzaWduYXR1cmUuCgoyMDA3LTA1LTI4IDExOjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMjggMTE6MDAgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBDT01QOiBGaXggYnVpbGQgZm9yCgkgIHdpbmRvd3Mtb25seSBnZW5lcmF0b3JzIGFmdGVyIGNoYW5nZSB0byBHZXRTb3VyY2VGaWxlcyBzaWduYXR1cmUuCgoyMDA3LTA1LTI4IDEwOjI1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOiBNYWRlIGNtVGFyZ2V0OjpHZXRTb3VyY2VGaWxlcwoJICBtZXRob2QgcmV0dXJuIHJlZmVyZW5jZSB0byBjb25zdCBzbyBhZGRpdGlvbiBvZiBjbVNvdXJjZUZpbGUKCSAgcG9pbnRlcnMgbXVzdCBiZSBkb25lIHdpdGggYW4gYWNjZXNzIG1ldGhvZCBpbiBjbVRhcmdldC4KCjIwMDctMDUtMjggMTA6MTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5jeHgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LAoJICBjbVFUV3JhcENQUENvbW1hbmQuY3h4LCBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZS5oOgoJICBFTkg6IE1hZGUgY21Tb3VyY2VGaWxlOjpHZXREZXBlbmRzIHJldHVybiByZWZlcmVuY2UgdG8gY29uc3Qgc28KCSAgZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGRlZCBvbmx5IGJ5IGFuIGFjY2VzcyBtZXRob2QgaW4KCSAgY21Tb3VyY2VGaWxlLgoKMjAwNy0wNS0yOCAxMDowNyAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZFBrZ0NvbmZpZy5jbWFrZSwKCSAgTW9kdWxlcy9Vc2VQa2dDb25maWcuY21ha2UsIE1vZHVsZXMvVXNlU1dJRy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9Vbml4UGF0aHMuY21ha2UsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlzdENvbW1hbmQuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oLCBTb3VyY2UvY21YQ29kZU9iamVjdC5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW46CgkgIEVOSDogbWVyZ2UgaW4gY2hhbmdlcyBmcm9tIGJyYW5jaCBSQyA3CgoyMDA3LTA1LTI4IDA5OjU5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0Lmg6CgkgIEVOSDogTWFkZSBjbVRhcmdldDo6R2V0U291cmNlTGlzdHMgcmV0dXJuIGEgcmVmZXJlbmNlIHRvIGNvbnN0IHNvCgkgIHRoYXQgYWxsIGFkZGl0aW9ucyBvZiBzb3VyY2VzIG11c3QgZ28gdGhyb3VnaCBhY2Nlc3MgbWV0aG9kcyBpbgoJICBjbVRhcmdldC4KCjIwMDctMDUtMjggMDg6MzEgIGFsZXgKCgkqIFNvdXJjZS9jbUhleEZpbGVDb252ZXJ0ZXIuY3h4OgoJICBDT01QOiBmaXggd2FybmluZyBvbiBNU1ZDIDg6IGNvbnZlcnNpb24gZnJvbSAnc2l6ZV90JyB0bwoJICAndW5zaWduZWQgaW50JywgcG9zc2libGUgbG9zcyBvZiBkYXRhCgoJICBBbGV4CgoyMDA3LTA1LTI3IDE4OjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMjcgMTA6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmN4eDogRU5IOiBAIG11c3QgYmUgZXNjYXBlZCBpbiB4Y29kZQoJICBwcm9qZWN0cwoKMjAwNy0wNS0yNyAwNDozMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTI2IDE0OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMjUgMTY6NDYgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmg6CgkgIEVOSDogYWRkIG9wdGlvbiB0byBGSUxFKFNUUklOR1MgTk9fSEVYX0NPTlZFUlNJT04pIHRvIGRpc2FibGUKCSAgYXV0b21hdGljIGNvbnZlcnNpb24gb2YgaGV4IGFuZCBzcmVjIGZpbGVzIHRvIGJpbmFyeS4gIFdpdGhvdXQKCSAgdGhpcyBhdXRvbWF0aWMgY29udmVyc2lvbiwgZXZlcnl3aGVyZSB3aGVyZSBhIGNvbXBpbGVkIGZpbGUgaXMKCSAgcGFyc2VkIGZvciBzdHJpbmdzIHRoZSBhIGZpbGUoSEVYMkJJTiBzb21lZmlsZSBiaW5maWxlKSBjb21tYW5kCgkgIGhhcyB0byBiZSBhZGRlZCBvdGhlcndpc2UgaXQgd2lsbCBub3Qgd29yayBmb3IgdGhlc2UgY29tcGlsZXJzLiBJCgkgIHRyaWVkIHRoaXMgd2l0aCBEZXRlcm1pbmVDb21waWxlciBhbmQgQ2hlY2tUeXBlU2l6ZSBhbmQgbm9ib2R5CgkgIHdpbGwgZG8gdGhpcyBleGNlcHQgdGhlIHVzZXJzIHdobyB3b3JrIHdpdGggc3VjaCBjb21waWxlcnMuIEZvcgoJICB0aGVtIGl0IHdpbGwgYnJlYWsgaWYgdGhleSBkb24ndCBhZGQgdGhpcyBjb252ZXJzaW9uIGNvbW1hbmQgaW4KCSAgYWxsIHRoZXNlIHBsYWNlcy4gIElmIEZJTEUoU1RSSU5HUykgaXMgdXNlZCB3aXRoIGEgdGV4dCBmaWxlLCBpdAoJICB3aWxsIGluIG1vc3QgY2FzZXMgc3RpbGwgd29yayBhcyBleHBlY3RlZCwgc2luY2UgaXQgd2lsbCBvbmx5CgkgIGNvbnZlcnQgaGV4IGFuZCBzcmVjIGZpbGVzLiBJZiBhIHVzZXIgYWN0dWFsbHkgd2FudHMgdG8gZ2V0IHRleHQKCSAgb3V0IG9mIGhleCBmaWxlcywgaGUga25vd3Mgd2hhdCBoZSdzIGRvaW5nIGFuZCB3aWxsIHNlZSB0aGUgaGludAoJICBpbiB0aGUgZG9jdW1lbnRhdGlvbi4KCgkgIEFueXdheSwgaXQgc2hvdWxkIHdvcmsgd2l0aG91dCBoYXZpbmcgdG8gY3JlYXRlIGEgdGVtcG9yYXJ5IGZpbGUsCgkgIHdpbGwgd29yayBvbiB0aGlzIGxhdGVyLgoKCSAgQWxleAoKMjAwNy0wNS0yNSAxNjoyMyAgYWxleAoKCSogU291cmNlL2NtSGV4RmlsZUNvbnZlcnRlci5jeHg6CgkgIENPTVA6IGxlc3Mgd2FybmluZ3MgKHNpZ25lZCB2cy4gdW5zaWduZWQpCgoJICBBbGV4CgoyMDA3LTA1LTI1IDE1OjUxICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IE5lZWQgdG8gY3JlYXRlIGdsb2JhbCB0YXJnZXRzCgkgIGJlZm9yZSBBZGRIZWxwZXJDb21tYW5kcyBpcyBjYWxsZWQuICBXZSBzaG91bGQgaW52ZXN0aWdhdGUKCSAgY3JlYXRpbmcgZ2xvYmFsIHRhcmdldHMgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgY29uZmlndXJlIHN0ZXAKCSAgZXZlbiBpZiB0aGVpciBjb21tYW5kcyBhcmUgbm90IHBvcHVsYXRlZCBvciBpZiB0aGV5IHdpbGwgbm90CgkgIGFjdHVhbGx5IGJlIGdlbmVyYXRlZCBsYXRlci4KCjIwMDctMDUtMjUgMTU6MjIgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXJJZC5jLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ29tcGlsZXJJZC5jbWFrZSwgTW9kdWxlcy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsIFNvdXJjZS9jbUhleEZpbGVDb252ZXJ0ZXIuY3h4LAoJICBTb3VyY2UvY21IZXhGaWxlQ29udmVydGVyLmgsIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9tYWluLmloeCwgVGVzdHMvU3RyaW5nRmlsZVRlc3QvbWFpbi5zcmVjOgoJICBFTkg6IG1ha2UgdGhlIGNvbXBpbGVyIGlkIGRldGVjdGlvbiB3b3JrLCBldmVuIGlmIHRoZSBvdXRwdXQgZmlsZQoJICBuYW1lIG9mIHRoZSBjb21waWxlciBpcyBjb21wbGV0ZWx5IHVua25vd24gYW5kIGV2ZW4gaWYgaXQKCSAgcHJvZHVjZXMgaW50ZWwgaGV4IG9yIG1vdG9yb2xhIHMtcmVjb3JkIGZpbGVzLCB3aXRoIHRlc3QKCgkgIEFsZXgKCjIwMDctMDUtMjUgMTI6MDUgIGFsZXgKCgkqIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4OgoJICBCVUc6IHJlbW92ZSBkZWJ1ZyBvdXRwdXQKCgkgIEFsZXgKCjIwMDctMDUtMjUgMTE6NDEgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwgU2ltcGxlSW5zdGFsbC9pbnN0LmN4eCwKCSAgU2ltcGxlSW5zdGFsbC9zY3JpcHRzL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsIFNpbXBsZUluc3RhbGxTMi9pbnN0LmN4eCwKCSAgU2ltcGxlSW5zdGFsbFMyL3NjcmlwdHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgdGVzdGluZyBvZgoJICBSRUdFWCBvcHRpb24gdG8gSU5TVEFMTChESVJFQ1RPUlkpLiAgQWRkZWQgdGVzdHMgdG8gY292ZXIgYWxsCgkgIGZvcm1zIG9mIG9sZC1zdHlsZSBpbnN0YWxsIGNvbW1hbmRzLgoKMjAwNy0wNS0yNSAxMTowOSAga2luZwoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL2luc3QuY3h4LCBTaW1wbGVJbnN0YWxsUzIvaW5zdC5jeHg6IEVOSDoKCSAgQWRkIHRlc3QgdG8gc2VlIGlmIElOU1RBTExfRklMRVMgYWN0dWFsbHkgd29ya2VkLgoKMjAwNy0wNS0yNSAxMTowOCAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsRmlsZXNDb21tYW5kLmg6IEJVRzoKCSAgRml4IEZJTEVTIG1vZGUgYWZ0ZXIgcmVjZW50IGNoYW5nZXMuCgoyMDA3LTA1LTI1IDExOjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4OgoJICBCVUc6IEZpeGVkIElOU1RBTExfRklMRVMgYW5kIElOU1RBTExfUFJPR1JBTVMgY29tbWFuZHMgdG8gaW5zdGFsbAoJICB1bmRlciB0aGUgcHJlZml4IGxpa2UgdGhleSBkaWQgYmVmb3JlIHRoZSByZWNlbnQgY2hhbmdlcy4KCjIwMDctMDUtMjUgMDY6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0yNCAxNzowNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhZGQgY29weSBoZWFkZXIgc3R1ZmYKCjIwMDctMDUtMjQgMTY6MDMgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXJJZC5jLCBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsCgkgIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4OgoJICBTVFlMRTogcmVtb3ZlIGRlYnVnIG91dHB1dCwgZml4IGluZGVudGF0aW9uIHRoZSB0ZXN0cyBydW4gYWdhaW4KCSAgc3VjY2Vzc2Z1bGx5LCBidXQgc2luY2UgQ2hlY2tUeXBlU2l6ZSB3aWxsIHN3aXRjaCB0byBhCgkgIFRSWV9DT01QSUxFIHNvb24gSSB3aWxsIGxvb2sgYXQgaXQgYWdhaW4gYWZ0ZXIgdGhpcyBjaGFuZ2UKCgkgIEFsZXgKCjIwMDctMDUtMjQgMTQ6MzAgIGFsZXgKCgkqIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHg6CgkgIENPTVA6IHRyeSB0byBmaXggdGhlIHRlc3QgZmFpbHVyZXMgb24gZGFzaDIKCgkgIEFsZXgKCjIwMDctMDUtMjQgMTI6MDYgIGFsZXgKCgkqIFNvdXJjZS9jbUNvcmVUcnlDb21waWxlLmN4eCwgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHgsIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWRkIENPUFlfRklMRSBhcmd1bWVudCB0byBUUllfQ09NUElMRSwgc28gdGhlIGNvbXBpbGVkCgkgIGV4ZWN1dGFibGUgY2FuIGJlIHVzZWQgZS5nLiBmb3IgZ2V0dGluZyBzdHJpbmdzIG91dCBvZiBpdC4KCgkgIEFsZXgKCjIwMDctMDUtMjQgMTE6MjcgIGFsZXgKCgkqIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgU291cmNlL2NtQ29yZVRyeUNvbXBpbGUuY3h4LAoJICBTb3VyY2UvY21Db3JlVHJ5Q29tcGlsZS5oLCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmgsIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmgsIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RyeUNvbXBpbGUvZXhpdF9zdWNjZXNzLmMsCgkgIFRlc3RzL1RyeUNvbXBpbGUvZXhpdF93aXRoX2Vycm9yLmM6CgkgIEVOSDogYWRkIHR3byBzaW1wbGUgdGVzdHMgZm9yIFRSWV9SVU4oKSBTVFlMRTogY3JlYXRlIGEgbmV3IGJhc2UKCSAgY2xhc3MgY21Db3JlVHJ5Q29tcGlsZSwgZnJvbSB3aGljaCBjbVRyeUNvbXBpbGVDb21tYW5kIGFuZAoJICBjbVRyeVJ1bkNvbW1hbmQgYXJlIGRlcml2ZWQsIHNvIHRoZXJlIGFyZSBubyBwdWJsaWMgc3RhdGljCgkgIGZ1bmN0aW9ucyB3aXRoIGxvdHMgb2YgYXJndW1lbnRzIGFueW1vcmUKCgkgIEFsZXgKCjIwMDctMDUtMjQgMDk6MzUgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXJJZC5jOgoJICBFTkg6IGFkZCBjb21waWxlciBpZCBmb3Igc2RjYwoKCSAgQWxleAoKMjAwNy0wNS0yNCAwODo1NiAgYWxleAoKCSogU291cmNlLzogY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaCwKCSAgY21UcnlSdW5Db21tYW5kLmN4eDoKCSAgRU5IOiBtb3ZlIG91dHB1dCBmaWxlIHNlYXJjaCB0byBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgc28gaXQKCSAgY2FuIGJlIHVzZWQgdGhlcmUgdG9vLi4uIG1hbnkgcHVibGljIHN0YXRpYyBmdW5jdGlvbnMgd2l0aCBsb3RzCgkgIG9mIGFyZ3VtZW50cy4uLiA6LS8KCgkgIEFsZXgKCjIwMDctMDUtMjQgMDg6NDMgIGFsZXgKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4OgoJICBCVUc6IGRvbid0IHVzZSBub24taW1wb3J0ZWQgdGFyZ2V0IHdoZW4gY3Jvc3MgY29tcGlsaW5nIGFzCgkgIGNvbW1hbmRzIGluIGN1c3RvbSBjb21tYW5kcyBTVFlMRTogcmVtb3ZlIG5vdyBpbnZhbGlkIGNvbW1lbnRzLAoJICB1c2UgdGhpcy0+CgoJICBBbGV4CgoyMDA3LTA1LTI0IDA4OjMzICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgVGVzdEJpZ0VuZGlhbi5jbWFrZToKCSAgRU5IOiBhZGQgY29tcGlsZXIgaWQgZm9yIElBUiBjb21waWxlciAoaHR0cDovL3d3dy5pYXIuY29tLykgRU5IOgoJICBkb24ndCBydW4gZW5kaWFuIHRlc3QgYWdhaW4gaWYgdGhlIHZhcmlhYmxlIGlzIGFscmVhZHkgc2V0CgoJICBBbGV4CgoyMDA3LTA1LTI0IDA4OjE4ICBhbGV4CgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5oOgoJICBTVFlMRTogdXNlICJpdGVtcyIgaW5zdGVhZCBvZCAiaXRlbSIKCgkgIEFsZXgKCjIwMDctMDUtMjQgMDU6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0yMyAxODoyMiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogUmVtb3ZlZCB1bnVzZWQgY29kZSBub3cgdGhhdAoJICBJTlNUQUxMX0ZJTEVTIGFuZCBJTlNUQUxMX1BST0dSQU1TIGFyZSBub3QgdGFyZ2V0cy4KCjIwMDctMDUtMjMgMTc6NTggIGtpbmcKCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy9DTWFrZUxpc3RzLnR4dDogQlVHOiBSZXBvcnQgcHJvcGVyIGVycm9yCgkgIG1lc3NhZ2Ugd2hlbiBwcm9qZWN0IGRvZXMgbm90IGJ1aWxkIHRoZSBmaXJzdCB0aW1lLiAgQWxzbyBhZGRlZAoJICBoYWNrIHRvIHJlYnVpbGQgc3VicHJvamVjdCBzZXZlcmFsIHRpbWVzIGZvciBYY29kZS4gIFRoZQoJICBnZW5lcmF0b3Igc2hvdWxkIGJlIGZpeGVkIGFuZCB0aGUgaGFjayByZW1vdmVkLgoKMjAwNy0wNS0yMyAxNzoyMSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBCVUc6IE5lZWQgdG8gdXNlCgkgIEdldFJlYWxEZXBlbmRlbmN5IGZvciBjdXN0b20gY29tbWFuZCBmaWxlLWxldmVsIGRlcGVuZGVuY2llcy4KCjIwMDctMDUtMjMgMTc6MDEgIGtpbmcKCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy9Qcm9qZWN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEV4ZWN1dGFibGUgYmFyCgkgIHNob3VsZCByZWJ1aWxkIHdoZW4gaXRzIGdlbmVyYXRlZCBoZWFkZXIgY2hhbmdlcy4gIEl0IGRvZXMgbm90CgkgIG5lZWQgdG8gbGluayB0byB0aGUgZm9vIGxpYnJhcnkgYW55bW9yZS4KCjIwMDctMDUtMjMgMTU6NDAgIGtpbmcKCgkqIFNvdXJjZS86IGNtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsRmlsZXNDb21tYW5kLmgsCgkgIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5oLAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5jeHg6CgkgIEVOSDogRml4ZWQgSU5TVEFMTF9GSUxFUyBhbmQgSU5TVEFMTF9QUk9HUkFNUyBjb21tYW5kcyB0byBub3QKCSAgY3JlYXRlIHRhcmdldHMuICBObyB0YXJnZXRzIG9mIHR5cGUgY21UYXJnZXQ6OklOU1RBTExfRklMRVMgb3IKCSAgY21UYXJnZXQ6OklOU1RBTExfUFJPR1JBTVMgYXJlIGNyZWF0ZWQsIHNvIHdlIGRvIG5vdCBuZWVkIHRvCgkgIGNoZWNrIGZvciB0aGVtIGV2ZXJ5d2hlcmUgYW55bW9yZS4KCjIwMDctMDUtMjMgMTM6MzAgIGtpbmcKCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy9Qcm9qZWN0L2dlbmVyYXRvci5jeHg6IEJVRzogVGFyZ2V0IG5hbWVzIGluCgkgIHRoZSBDT01NQU5EIHBhcnQgb2YgYSBjdXN0b20gY29tbWFuZCBzaG91bGQgbm90IGNyZWF0ZSBhCgkgIGZpbGUtbGV2ZWwgZGVwZW5kZW5jeSB0aGF0IGZvcmNlcyB0aGUgY29tbWFuZCB0byByZXJ1biB3aGVuIHRoZQoJICBleGVjdXRhYmxlIHRhcmdldCByZWJ1aWxkcywgYnV0IHRoZSB0YXJnZXQtbGV2ZWwgZGVwZW5kZW5jeQoJICBzaG91bGQgc3RpbGwgYmUgY3JlYXRlZC4gIFRhcmdldCBuYW1lcyBpbiBhIERFUEVORFMgc2hvdWxkIGRvCgkgIGJvdGggYSB0YXJnZXQtbGV2ZWwgYW5kIGZpbGUtbGV2ZWwgZGVwZW5kZW5jeS4gIFVwZGF0ZWQgdGhlCgkgIEJ1aWxkRGVwZW5kcyB0ZXN0IHRvIGNoZWNrIHRoYXQgdGhpcyB3b3Jrcy4KCjIwMDctMDUtMjMgMTM6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBUZXN0cy9CdWlsZERlcGVuZHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1aWxkRGVwZW5kcy9Qcm9qZWN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9CdWlsZERlcGVuZHMvUHJvamVjdC9iYXIuY3h4OiBCVUc6IFRhcmdldCBuYW1lcyBpbiB0aGUKCSAgQ09NTUFORCBwYXJ0IG9mIGEgY3VzdG9tIGNvbW1hbmQgc2hvdWxkIG5vdCBjcmVhdGUgYSBmaWxlLWxldmVsCgkgIGRlcGVuZGVuY3kgdGhhdCBmb3JjZXMgdGhlIGNvbW1hbmQgdG8gcmVydW4gd2hlbiB0aGUgZXhlY3V0YWJsZQoJICB0YXJnZXQgcmVidWlsZHMsIGJ1dCB0aGUgdGFyZ2V0LWxldmVsIGRlcGVuZGVuY3kgc2hvdWxkIHN0aWxsIGJlCgkgIGNyZWF0ZWQuICBUYXJnZXQgbmFtZXMgaW4gYSBERVBFTkRTIHNob3VsZCBkbyBib3RoIGEgdGFyZ2V0LWxldmVsCgkgIGFuZCBmaWxlLWxldmVsIGRlcGVuZGVuY3kuICBVcGRhdGVkIHRoZSBCdWlsZERlcGVuZHMgdGVzdCB0bwoJICBjaGVjayB0aGF0IHRoaXMgd29ya3MuCgoyMDA3LTA1LTIzIDEyOjA1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEFkZCAuLyB0byBjdXN0b20KCSAgY29tbWFuZCBleGVjdXRhYmxlcyBpbiB0aGUgdG9wIG9mIHRoZSBidWlsZCB0cmVlIGV2ZW4gd2hlbiB0aGUKCSAgcGF0aCBpcyBnZW5lcmF0ZWQgYnkgdGFyZ2V0IG5hbWUgcmVwbGFjZW1lbnQuCgoyMDA3LTA1LTIzIDExOjAwICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBDTWFrZVBsYXRmb3JtSWQuaDogRU5IOiBVbmlmeSBkZXNpZ24gb2YgQ01ha2VDQ29tcGlsZXJJZC5jLAoJICBDTWFrZUNYWENvbXBpbGVySWQuY3BwLCBhbmQgQ01ha2VQbGF0Zm9ybUlkLmguICBCVUc6IERvIG5vdAoJICB2aW9sYXRlIHN5c3RlbS1yZXNlcnZlZCBzeW1ib2wgbmFtZXNwYWNlIF9bQS1aXS4KCjIwMDctMDUtMjMgMDg6MjQgIGFsZXgKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6CgkgIENPTVA6IGRvbid0IHVzZXIgc3RyaW5nOjpjbGVhcigpLCBmaXggd2FybmluZ3MgYWJvdXQgdW51c2VkCgkgIHZhcmlhYmxlcwoKCSAgQWxleAoKMjAwNy0wNS0yMiAxNzoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTIyIDEyOjQ4ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwKCSAgQ01ha2VQbGF0Zm9ybUlkLmgsIENNYWtlU3lzdGVtV2l0aFRvb2xjaGFpbkZpbGUuY21ha2UuaW46CgkgIEJVRzogbm93IHRoZSB0b29sY2hhaW4gZmlsZSBpcyBjb25maWd1cmVkIGludG8gdGhlIGJ1aWxkdHJlZSwKCSAgb3RoZXJ3aXNlIGUuZy4gIENNQUtFX1NPVVJDRV9ESVIgY2FuJ3QgYmUgdXNlZCB0aGVyZSBFTkg6IG1vZGlmeQoJICBDTWFrZUNDb21waWxlcklkLmMgYW5kIC5oIHNvIHRoYXQgc2RjYyBjYW4gY29tcGlsZSB0aGVtLiBBcyB0aGV5CgkgIHdlcmUgdGhlIHByZXByb2Nlc3NvciBwcm9kdWNlZDoKCgkgICA5ICJ0ZXN0LmMiCgkgIHN0YXRpYyBjaGFyIGNvbnN0IGluZm9fY29tcGlsZXJbXSA9ICJJTkZPOmNvbXBpbGVyWyIgIyA0MAoJICAidGVzdC5jIiAiIgoKCSAgIl0iOwoKCSAgYW5kIHRoZSBtaXhpbmcgb2YgdGhlIHByZXByb2Nlc3NpbmcgZGlyZWN0aXZlcyBhbmQgdGhlIHN0cmluZwoJICBjb25zdGFudHMgZGlkbid0IHdvcmsuCgoJICBBbGV4CgoyMDA3LTA1LTIyIDExOjA1ICBhbGV4CgoJKiBTb3VyY2UvY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eDogQ09NUDogY29tcGlsZSBmaXgKCgkgIEFsZXgKCjIwMDctMDUtMjIgMTA6NDIgIGFsZXgKCgkqIFNvdXJjZS86IGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDoKCSAgQ09NUDogY29tcGlsZSBmaXggYW5kIHJlbW92ZSB3YXJuaW5nCgoJICBBbGV4CgoyMDA3LTA1LTIyIDEwOjI0ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21HZXRUYXJnZXRQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgRU5IOiBhZGQgdGhlIElNUE9SVCBrZXl3b3JkIHRvIEFERF9FWEVDVVRBQkxFKCksIHdoaWNoIGdlbmVyYXRlcwoJICBhbiAiaW1wb3J0ZWQiIGV4ZWN1dGFibGUgdGFyZ2V0LiBUaGlzIGNhbiB0aGVuIGJlIHVzZWQgZS5nLiB3aXRoCgkgIEFERF9DVVNUT01fQ09NTUFORCgpIHRvIGdlbmVyYXRlIHN0dWZmLiBJdCBhZGRzIGEgc2Vjb25kCgkgIGNvbnRhaW5lciBmb3IgImltcG9ydGVkIiB0YXJnZXRzLCBhbmQgRmluZFRhcmdldCgpIG5vdyB0YWtlcyBhbgoJICBhZGRpdGlvbmFsIGFyZ3VtZW50IGJvb2wgdXNlSW1wb3J0ZWRUYXJnZXRzIHRvIHNwZWNpZnkgd2hldGhlcgoJICB5b3UgYWxzbyB3YW50IHRvIHNlYXJjaCBpbiB0aGUgaW1wb3J0ZWQgdGFyZ2V0cyBvciBvbmx5IGluIHRoZQoJICAibm9ybWFsIiB0YXJnZXRzLgoKCSAgQWxleAoKMjAwNy0wNS0yMiAwOToxNSAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwgUGxhdGZvcm0vZ2NjLmNtYWtlOgoJICBTVFlMRTogbW92ZSB0aGUgdHdvIENNQUtFX1NIQVJFRF9MSUJSQVJZQy9DWFhfRkxBR1MgZm9yIGdjYyBmcm9tCgkgIENNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSB0byBnY2MuY21ha2UKCgkgIEFsZXgKCjIwMDctMDUtMjIgMDQ6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0yMSAxMToyNiAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwgQ01ha2VMaXN0cy50eHQsIENNYWtlU3lzdGVtLmNtYWtlLmluLAoJICBDTWFrZVN5c3RlbVdpdGhUb29sY2hhaW5GaWxlLmNtYWtlLmluOgoJICBTVFlMRTogdXNlIGEgc2VwYXJhdGUgc291cmNlIGZpbGUgZm9yIGdlbmVyYXRpbmcKCSAgQ01ha2VTeXN0ZW0uY21ha2UgaWYgQ01BS0VfVE9PTENIQUlOX0ZJTEUgaXMgdXNlZAoKCSAgQWxleAoKMjAwNy0wNS0yMSAxMDo1OCAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlOgoJICBCVUc6IGRvbid0IGZhaWwgaWYgYSBjb21waWxlciBpcyBnaXZlbiBpbiBDTUFLRV9DL0NYWF9DT01QSUxFUgoJICBidXQgaXQgY2FuJ3QgYmUgZm91bmQgaW4gdGhlIHBhdGgKCgkgIEFsZXgKCjIwMDctMDUtMjEgMTA6MTUgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2UsIFRlc3RzL0NNYWtlTGlzdHMudHh0OgoJICBCVUc6IGFsd2F5cyBzZWFyY2ggZm9yIGFyLCByYW5saWIsIGV0Yy4gZXhjZXB0IHVuZGVyIE1TVkMgLT4gdGhpcwoJICBzaG91bGQgZml4IHRoZSBtaW5ndyBmb3J0cmFuIHRlc3QgLWFsc28gZ2VuZXJhdGUgdGhlIGZvcnRyYW4gdGVzdAoJICB3aXRoIHRoZSBrZGV2ZWxvcCBnZW5lcmF0b3IKCgkgIEFsZXgKCjIwMDctMDUtMjEgMDU6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0yMCAxMDoxMSAga2luZwoKCSogVGVzdHMvQ01ha2VMaXN0cy50eHQ6IEJVRzogRml4IG5hbWUgb2YgcHJvamVjdCB0byBidWlsZCBmb3IKCSAgTG9hZENvbW1hbmRPbmVDb25maWcgbm93IHRoYXQgaXQgaGFzIGJlZW4gcmVuYW1lZCBmb3IgbmV3IG5hbWUgb2YKCSAgTG9hZENvbW1hbmQgdGVzdC4KCjIwMDctMDUtMjAgMTA6MDggIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6IEJVRzogVXNlIEBPTkxZIHN1YnN0aXR1dGlvbgoJICB0byBjb25maWd1cmUgQ01ha2VTeXN0ZW0uY21ha2UuCgoyMDA3LTA1LTIwIDAyOjM5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMTkgMTA6MTUgIGtpbmcKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZpbmlzaCBmaXhpbmcgdGVzdCBmb3IKCSAgbmV3IG5hbWUuCgoyMDA3LTA1LTE5IDEwOjExICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvS1dTdHlsZS9DTWFrZS5rd3MueG1sLmluOiBFTkg6IHRyeSB0byB0b25lIGRvd24ga3dzdHlsZQoKMjAwNy0wNS0xOSAxMDoxMCAgaG9mZm1hbgoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQ6IEJVRzogZml4IHByb2plY3QgbmFtZSBmb3IKCSAgdGVzdAoKMjAwNy0wNS0xOSAwOTo1NSAga2luZwoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBDT01QOiBGaXggZm9yIGJvcmxhbmQgbm93IHRoYXQKCSAgY29tcG9uZW50cyBsaXN0IGNoZWNrIGlzIGNvbnN0LgoKMjAwNy0wNS0xOCAyMDo1MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTE4IDE1OjExICBtYXJ0aW5rCgoJKiBUZXN0cy86IENNYWtlTGlzdHMudHh0LCBFeHRlcm5hbE9CSi9DTWFrZUxpc3RzLnR4dCwKCSAgTGlua0xpbmUvQ01ha2VMaXN0cy50eHQsIE1hY3JvVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBzb21lCgkgIGNsZWFudXAsIGNvbmRlbnNpbmcgc29tZSB0ZXN0cywgcmVtb3ZpbmcgYXJndW1lbnRzIHRoYXQgd2VyZSBub3QKCSAgbmVlZGVkIGJ1dCByYXRoZXIgd2VyZSBjdXQgYW5kIHBhc3RlIGNvcGllcyBldGMKCjIwMDctMDUtMTggMTQ6NDEgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay86IGJpbGxzLWNvbW1lbnRzLnR4dCwgY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4OgoJICBFTkg6IDJuZCB0cnkgdG8gbW92ZSBzdHJpcHBpbmcgb3V0IG9mIGNwYWNrIGFuZCB0byBpbnN0YWxsIHRpbWUsCgkgIG5vdyBpZiBDUEFDS19TVFJJUF9GSUxFUyBpcyB0cnVlIChvciBjb250YWlucyBhIGxpc3Qgb2YgZmlsZXMpLAoJICBldmVyeXRoaW5nIHdpbGwgYmUgc3RyaXBwZWQsIGlmIGl0J3MgZW1wdHkgb3IgZmFsc2UgdGhleSB3b24ndCBiZQoJICBzdHJpcHBlZAoKCSAgQWxleAoKMjAwNy0wNS0xOCAxMzo0MyAgYWxleAoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OgoJICBFTkg6IGFkZCBpbnN0YWxsL3N0cmlwIHRhcmdldCBmb3IgbWFrZWZpbGUgZ2VuZXJhdG9ycyBpZiBzdHJpcAoJICB3YXMgZm91bmQKCgkgIEFsZXgKCjIwMDctMDUtMTggMTE6NTcgIGFsZXgKCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBtb3ZlIGhhY2sgdG8gZml4ICJuZXcKCSAgY21ha2Ugb24gb2xkIGJ1aWxkIHRyZWUgb24gT1NYIGRvZXNuJ3QgaGF2ZQoJICBDTUFLRV9JTlNUQUxMX05BTUVfVE9PTCBpbiB0aGUgY2FjaGUiIGZyb20KCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCB0byBEYXJ3aW4uY21ha2UKCgkgIEFsZXgKCjIwMDctMDUtMTggMTE6NDUgIGFsZXgKCgkqIFNvdXJjZS9DUGFjay9jcGFjay5jeHg6CgkgIENPTVA6IGZvcmNlIGEgcmVjb21waWxlIG9uIFZTNzEKCgkgIEFsZXgKCjIwMDctMDUtMTggMTE6MzYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vVW5peFBhdGhzLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6CgkgIEVOSDogVXNlIENNQUtFX1BMQVRGT1JNX0lNUExJQ0lUX0xJTktfRElSRUNUT1JJRVMgZnJvbSBwbGF0Zm9ybQoJICBmaWxlcyB0byBibG9jayBsaW5rIGRpcmVjdG9yaWVzLgoKMjAwNy0wNS0xOCAxMDo1NSAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlRmluZEJpblV0aWxzLmNtYWtlLCBQbGF0Zm9ybS9jbC5jbWFrZTogQ09NUDogaWYgYQoJICBuZXcgY21ha2UgcnVucyBvbiBhbiBvbGQgYnVpbGQgdHJlZSwgc2V0IENNQUtFX0xJTktFUiB0byBsaW5rIHRvCgkgIG1ha2UgaXQgbGluawoKCSAgQWxleAoKMjAwNy0wNS0xOCAxMDozMiAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9jbC5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXgKCSAgbGluayBydWxlcyB3aXRoIG5tYWtlLCB0aGUgbGlua2VyIGNvbW1hbmQgaGFzIHRvIGJlIGNvbnZlcnRlZCB0bwoJICBzaG9ydHBhdGggZm9ybSBmb3Igbm1ha2UKCgkgIEFsZXgKCjIwMDctMDUtMTggMDk6MzMgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEJVRzogUmVwbGFjZSAid2l0aCBzcGFjZSIgaW4KCSAgY3VzdG9tIGNvbW1hbmQgYXJndW1lbnQgdGVzdHMgd2l0aCAidyBzIiB0byBzdGlsbCBoYXZlIHdoaXRlc3BhY2UKCSAgYnV0IGJlIHNob3J0ZXIuICBUaGUgdGVzdCB3YXMgZmFpbGluZyBiZWNhdXNlIHRoZSBjdXN0b20gY29tbWFuZAoJICBsaW5lIGxlbmd0aCB3YXMgc2ltcGx5IHRvbyBsb25nIGZvciB0aGUgVlMgSURFLgoKMjAwNy0wNS0xOCAwOTozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2N1bWVudGF0aW9uIGZvcgoJICBjb21tYW5kCgoyMDA3LTA1LTE4IDA5OjE4ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsIGNoZWNrX2NvbW1hbmRfbGluZS5jLmluOgoJICBFTkg6IEFkZGVkIHF1aWNrIG1lYW5zIHRvIHR1cm4gb24gdmVyYm9zZSBvdXRwdXQgZm9yIGRlYnVnZ2luZwoJICB0aGlzIHRlc3QuCgoyMDA3LTA1LTE4IDA5OjE3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtLmM6IEJVRzogQWRkZWQgY2Fycm90ICheKSB0byBjaGFyYWN0ZXJzIHRoYXQKCSAgbmVlZCBxdW90aW5nLiAgVGhlIHNvbGFyaXMgc2hlbGwgbmVlZHMgaXQuCgoyMDA3LTA1LTE4IDA5OjE2ICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlOiBTVFlMRTogZn9kf2NvcnJlY3QKCSAgY29tbWVudHMgYWJvdXQgRkMvQ0MKCgkgIEFsZXgKCjIwMDctMDUtMTggMDk6MDggIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlOiBCVUc6IElmIHRoZSBGb3J0cmFuCgkgIENvbXBpbGVySWQgc291cmNlIGZhaWxzIHRvIGNvbXBpbGUgaXQgc2hvdWxkIG5vdCBiZSBhIGZhaWx1cmUuCgkgIEl0IGlzIG9ubHkgZXhwZWN0ZWQgdG8gd29yayBmb3IgRm9ydHJhbjkwIGNvbXBpbGVycy4KCjIwMDctMDUtMTggMDg6NDkgIGFsZXgKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRCYXNlLmN4eCwgY21GaW5kQmFzZS5oLAoJICBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbVRyeVJ1bkNvbW1hbmQuY3h4OgoJICBTVFlMRTogZml4IGxpbmUgbGVuZ3RocwoKCSAgQWxleAoKMjAwNy0wNS0xNyAxNzo0MyAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byB1c2UKCSAgR2V0U2FmZURlZmluaXRpb24gd2hlbiBhc3NpZ25pbmcgdG8gYSBzdHJpbmcuCgoyMDA3LTA1LTE3IDE3OjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUlmQ29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtVmFyaWFibGVXYXRjaC5oOiBCVUc6IEFsbCB2YXJpYWJsZSBhY2Nlc3NlcyBzaG91bGQgcHJvZHVjZQoJICB3YXRjaCBjYWxsYmFja3MsIGluY2x1ZGluZyBJRihERUZJTkVEIDx2YXI+KSBvbmVzLiAgSW5zdGVhZCB3ZQoJICBkZWZpbmUgYSBuZXcgYWNjZXNzIHR5cGUgZm9yIElGKERFRklORUQpIHNvIHRoYXQgdGhlIGVycm9yIGRvZXMKCSAgbm90IHNob3cgdXAgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgdmFyaWFibGVzLgoKMjAwNy0wNS0xNyAxNzoyMSAgYWxleAoKCSogU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6IFNUWUxFOiBmaXggaW5kZW50YXRpb24gRU5IOgoJICBhZGQgaGFjayB0byBtYWtlIG5ldyBjbWFrZSB3b3JrIHdpdGggb2xkZXIgZXhpc3RpbmcgY21ha2UgYnVpbGQKCSAgdHJlZXMKCgkgIEFsZXgKCjIwMDctMDUtMTcgMTY6NTAgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IHVzZSBicmFjZXMKCgkgIEFsZXgKCjIwMDctMDUtMTcgMTY6NDkgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2U6IEVOSDogZmFpbCBpZiBpbnN0YWxsX25hbWVfdG9vbAoJICB3YXNuJ3QgZm91bmQKCgkgIEFsZXgKCjIwMDctMDUtMTcgMTU6MTcgIGtpbmcKCgkqIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZS9DaGVja1R5cGVTaXplLmNtYWtlOiBFTkg6IFVzZSBJRihOT1QKCSAgREVGSU5FRCkgY2hlY2sgdG8gc2hvcnQtY2lyY3VpdCBzaXplIHRlc3QuCgoyMDA3LTA1LTE3IDE1OjEyICBraW5nCgoJKiBTb3VyY2UvOiBjbUlmQ29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEJVRzogRG8KCSAgbm90IGNvbXBsYWluIGFib3V0IG1pc3Npbmcgd2F0Y2hlZCB2YXJpYWJsZXMgd2hlbiB0aGV5IGFyZQoJICBhY2Nlc3NkIHdpdGggSUYoREVGSU5FRCBWQVIpLgoKMjAwNy0wNS0xNyAxNDo0NyAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBDT01QOiBHQ0MgMi45NSBkb2VzIG5vdCBoYXZlCgkgIHN0ZDo6c3RyaW5nOjpjbGVhcigpIG1ldGhvZC4KCjIwMDctMDUtMTcgMTQ6NDEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUlmQ29tbWFuZC5oLCBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eDogRU5IOiBtZXJnZSBpbgoJICBjaGFuZ2VzIGZyb20gbWFpbiB0cmVlCgoyMDA3LTA1LTE3IDE0OjMyICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCB0ZXN0aW5nIG9mICogYW5kIC8KCSAgY2hhcmFjdGVyIGFyZ3VtZW50cyBleGNlcHQgb24gTWluR1cuCgoyMDA3LTA1LTE3IDE0OjAzICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIHRlc3QgZm9yIGN1c3RvbQoJICBjb21tYW5kIGxpbmVzIHdpdGggc3BlY2lhbCBzaW5nbGUtY2hhcmFjdGVyIGFyZ3VtZW50cy4KCjIwMDctMDUtMTcgMTQ6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW0uYzogQlVHOiBTb21lIHNpbmdsZS1jaGFyYWN0ZXIgYXJndW1lbnRzIG5lZWQKCSAgcXVvdGluZyBvbiB3aW5kb3dzLgoKMjAwNy0wNS0xNyAxMzoyOCAga2luZwoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dDogQlVHOiBEaXNhYmxlIHRlc3Qgb2YgYW5nbGUKCSAgYnJhY2tldCBlc2NhcGVzIHVudGlsIGl0IHdvcmtzIGV2ZXJ5d2hlcmUuCgoyMDA3LTA1LTE3IDEzOjIwICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRmluZEJpblV0aWxzLmNtYWtlLCBNb2R1bGVzL0NNYWtlTGlzdHMudHh0LAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvQ1Rlc3QuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL2NsLmNtYWtlLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRCYXNlLmN4eCwKCSAgU291cmNlL2NtRmluZEJhc2UuaCwgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21VdGlsaXR5U291cmNlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsCgkgIFRlc3RzL0NNYWtlVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NNYWtlVGVzdHMvRHVtbXlUb29sY2hhaW4uY21ha2UsCgkgIFRlc3RzL0NNYWtlVGVzdHMvRmluZEJhc2VUZXN0LmNtYWtlLmluLAoJICBUZXN0cy9DTWFrZVRlc3RzL0luY2x1ZGVUZXN0LmNtYWtlLmluLAoJICBUZXN0cy9DTWFrZVRlc3RzL1Rvb2xjaGFpblRlc3QuY21ha2UuaW4sCgkgIFRlc3RzL0NNYWtlVGVzdHMvaW5jbHVkZS9jbWFrZV9pX2RvX25vdF9leGlzdF9pbl90aGVfc3lzdGVtLmg6CgkgIEVOSDogbWVyZ2UgQ01ha2UtQ3Jvc3NDb21waWxlQmFzaWMgdG8gSEVBRCAtYWRkIGEgUkVTVUxUX1ZBUklBQkxFCgkgIHRvIElOQ0xVREUoKSAtYWRkIENNQUtFX1RPT0xDSEFJTl9GSUxFIGZvciBzcGVjaWZpeWluZyB5b3VyCgkgIChwb3RlbnRpYWxseSBjcm9zc2NvbXBpbGluZykgdG9vbGNoYWluIC1oYXZlIFRSWV9SVU4oKSBjb21wbGFpbgoJICBpZiB5b3UgdHJ5IHRvIHVzZSBpdCBpbiBjcm9zc2NvbXBpbGluZyBtb2RlICh3aGljaCB3ZXJlIGNvbXBpbGVkCgkgIGJ1dCBjYW5ub3QgcnVuIG9uIHRoaXMgc3lzdGVtKSAtdXNlIENNQUtFX0VYRUNVVEFCTEVfU1VGRklYIGluCgkgIFRSWV9SVU4oKSwgcHJvYmFibHkgVFJZX1JVTiB3b24ndCBiZSBhYmxlIHRvIHJ1biB0aGUgZXhlY3V0YWJsZXMKCSAgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IHN1ZmZpeCBiZWNhdXNlIHRoZXkgYXJlIHByb2JhYmx5CgkgIGNyb3NzY29tcGlsZWQsIGJ1dCBuZXZlcnRoZWxlc3MgaXQgc2hvdWxkIGJlIGFibGUgdG8gZmluZCB0aGVtCgkgIC1tYWtlIHNldmVyYWwgY21ha2UgdmFyaWFibGVzIHByZXNldHRhYmxlIGJ5IHRoZSB1c2VyOgoJICBDTUFLRV9DL0NYWF9DT01QSUxFUiwgQ01BS0VfQy9DWFhfT1VUUFVUX0VYVEVOU0lPTiwKCSAgQ01BS0VfU1lTVEVNX05BTUUsIENNQUtFX1NZU1RFTV9JTkZPX0ZJTEUgLXN1cHBvcnQgcHJlZml4IGZvciBHTlUKCSAgdG9vbGNoYWlucyAoYXJtLWVsZi1nY2MsIGFybS1lbGYtYXIsIGFybS1lbGYtc3RyaXAgZXRjLikgLW1vdmUKCSAgcmFubGliIG9uIE9TWCBmcm9tIHRoZSBmaWxlIGNvbW1hbmQgdG8gYSBjb21tYW5kIGluIGV4ZWN1dGVkIGluCgkgIGNtYWtlX2luc3RhbGwuY21ha2UgLWFkZCBzdXBwb3J0IGZvciBzdHJpcHBpbmcgZHVyaW5nIGluc3RhbGwgaW4KCSAgY21ha2VfaW5zdGFsbC5jbWFrZSAtc3BsaXQgb3V0IGNsLmNtYWtlIGZyb20gV2luZG93cy1jbC5jbWFrZSwKCSAgZmlyc3QgKHZlcnkgaW5jb21wbGV0ZSkgc3RlcCB0byBzdXBwb3J0IE1TIGNyb3NzY29tcGlsaW5nIHRvb2xzCgkgIC1yZW1vdmUgc3RkaW8uaCBmcm9tIHRoZSBzaW1wbGUgQyBwcm9ncmFtIHdoaWNoIGNoZWNrcyBpZiB0aGUKCSAgY29tcGlsZXIgd29ya3MsIHNpbmNlIHRoaXMgbWF5IG5vdCBleGlzdCBmb3Igc29tZSBlbWJlZGRlZAoJICBwbGF0Zm9ybXMgLWNyZWF0ZSBhIG5ldyBDTWFrZUZpbmRCaW5VdGlscy5jbWFrZSB3aGljaCBjb2xsZWN0cwoJICB0aGUgc2VhcmNoIGZybyBhciwgcmFubGliLCBzdHJpcCwgbGQsIGxpbmssIGluc3RhbGxfbmFtZV90b29sIGFuZAoJICBvdGhlciB0b29scyBsaWtlIHRoZXNlIC1hZGQgc3VwcG9ydCBmb3IgQ01BS0VfRklORF9ST09UX1BBVEggZm9yCgkgIGFsbCBGSU5EX1hYWCBjb21tYW5kcywgd2hpY2ggaXMgYSBsaXN0IG9mIGRpcmVjdG9yaWVzIHdoaWNoIHdpbGwKCSAgYmUgcHJlcGVuZGVkIHRvIGFsbCBzZWFyY2ggZGlyZWN0b3JpZXMsIHJpZ2h0IG5vdyBhcyBhIGNtYWtlCgkgIHZhcmlhYmxlLCB0dXJuaW5nIGl0IGludG8gYSBnbG9iYWwgY21ha2UgcHJvcGVydHkgbWF5IG5lZWQgc29tZQoJICBtb3JlIHdvcmsgLXJlbW92ZSBjbVRlc3RUZXN0SGFuZGxlcjo6VHJ5RXhlY3V0YWJsZSgpLCBpdCdzIHVudXNlZAoJICAtc3BsaXQgY21GaWxlQ29tbWFuZDo6SGFuZGxlSW5zdGFsbCgpIGludG8gc2xpZ2h0bHkgc21hbGxlcgoJICBmdW5jdGlvbnMKCgkgIEFsZXgKCjIwMDctMDUtMTcgMTE6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBGaXggRXhwYW5kTGlzdEFyZ3VtZW50IHdoZW4gdGhlCgkgIHN0cmluZyBlbmRzIGluIGEgYmFja3NsYXNoLgoKMjAwNy0wNS0xNyAxMToxOCAga2luZwoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBBbiBlbXB0eSBjb25maWd1cmF0aW9uIG5hbWUgaXMKCSAgZXF1aXZhbGVudCB0byBubyBjb25maWd1cmF0aW9uLgoKMjAwNy0wNS0xNyAxMToxMiAgYWxleAoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5oLCBjbUluY2x1ZGVDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogQ09NUDogbGVzcyB3YXJuaW5ncyB3aXRoIG1zdmM3CgoJICBBbGV4CgoyMDA3LTA1LTE3IDExOjA5ICBhbGV4CgoJKiBUZXN0cy9DTWFrZVRlc3RzLzogRmluZEJhc2VUZXN0LmNtYWtlLmluLCBUb29sY2hhaW5UZXN0LmNtYWtlLmluOgoJICBCVUc6IGNvcnJlY3QgcXVvdGluZyBpbiB0aGUgdGVzdHMgc28gdGhhdCB0aGUgbmV3IHRlc3RzIHBhc3MKCgkgIEFsZXgKCjIwMDctMDUtMTcgMTA6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIHRlc3RpbmcgZm9yIGN1c3RvbQoJICBjb21tYW5kIGxpbmUgYXJndW1lbnRzIGNvbnRhaW5pbmcgYWxsIHNwZWNpYWwgY2hhcmFjdGVycyBvbiB0aGUKCSAgVVMga2V5Ym9hcmQuCUZpeGVkIGN1cmx5IGJyYWNlIGFyZ3VtZW50cyBvbiBib3JsYW5kIGFuZCAlCgkgIGFyZ3VtZW50cyBpbiBtaW5ndzMyLW1ha2UuCgoyMDA3LTA1LTE3IDEwOjUzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW0uYywgU3lzdGVtLmguaW46IEVOSDogQWRkZWQgbW9yZSBzcGVjaWFsCgkgIHVuaXggc2hlbGwgY2hhcmFjdGVycyB0aGF0IHJlcXVpcmUgcXVvdGluZy4gIEFkZGVkIGVzY2FwaW5nIG9mICUKCSAgYXMgJSUgZm9yIHNoZWxscyBpbnNpZGUgbWluZ3czMi1tYWtlLgoKMjAwNy0wNS0xNyAxMDoyNCAgYWxleAoKCSogTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwgTW9kdWxlcy9DTWFrZUNDb21waWxlcklkLmMsCgkgIE1vZHVsZXMvQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGaW5kQmluVXRpbHMuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9DVGVzdC5jbWFrZSwgTW9kdWxlcy9EYXJ0LmNtYWtlLAoJICBNb2R1bGVzL0RhcnRDb25maWd1cmF0aW9uLnRjbC5pbiwgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9jbC5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kQmFzZS5jeHgsCgkgIFNvdXJjZS9jbUZpbmRCYXNlLmgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluY2x1ZGVDb21tYW5kLmgsIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuaCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmgsIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmgsIFNvdXJjZS9jbVZlcnNpb24uY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmMsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW0uYywgVGVtcGxhdGVzL0RMTEhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL0VYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL1V0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlc3RzL0NNYWtlVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NNYWtlVGVzdHMvRHVtbXlUb29sY2hhaW4uY21ha2UsCgkgIFRlc3RzL0NNYWtlVGVzdHMvRmluZEJhc2VUZXN0LmNtYWtlLmluLAoJICBUZXN0cy9DTWFrZVRlc3RzL0luY2x1ZGVUZXN0LmNtYWtlLmluLAoJICBUZXN0cy9DTWFrZVRlc3RzL1Rvb2xjaGFpblRlc3QuY21ha2UuaW4sCgkgIFRlc3RzL0NNYWtlVGVzdHMvaW5jbHVkZS9jbWFrZV9pX2RvX25vdF9leGlzdF9pbl90aGVfc3lzdGVtLmg6CgkgIEVOSDogbWVyZ2UgY2hhbmdlcyBmcm9tIEhFQUQgaW50byB0aGUgYnJhbmNoIC1jaGFuZ2UgSU5DTFVERShmaWxlCgkgIFtPUFRJT05BTF0gW1ZBUl0pIHRvIElOQ0xVREUoZmlsZSBbT1BUSU9OQUxdIFtSRVNVTFRfVkFSSUFCTEUKCSAgVkFSXSkgLWFkZCB0ZXN0cyBmb3IgSU5DTFVERSgpLCBDTUFLRV9UT09MQ0hBSU5fRklMRSBhbmQKCSAgRklORF9YWFgoKSAta2VlcCB0aGUgc3RyaXBwaW5nIGluIENQYWNrIGZvciBub3cgLXN1cHBvcnQgYSBNUwoJICB0b29sY2hhaW4gc3VmZml4CgoJICBBbGV4CgoyMDA3LTA1LTE3IDEwOjA3ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6IEVOSDogZml4IHVwIGNvbXBpbGVyIGlkIHRvIGJlCgkgIG1vcmUgcm9idXN0CgoyMDA3LTA1LTE3IDA4OjM4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXJJZC5jcHA6IEJVRzogbWFrZSBzdXJlIHRoaXMgdGhpbmcKCSAgY29tcGlsZXMgb24gNjQgYml0IG1hY2hpbmVzCgoyMDA3LTA1LTE3IDA3OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMTYgMTk6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0xNiAxNjoxOSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbS5jOiBCVUc6IFNoZWxsIGVzY2FwaW5nIG5lZWRzIHRvIHdyaXRlICUgYXMgJSUKCSAgZm9yIFZTIElERS4KCjIwMDctMDUtMTYgMTM6MjYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy13Y2wzODYuY21ha2U6IEVOSDogRW5hYmxlZCBwcmVwcm9jZXNzb3IKCSAgbWFrZSBydWxlcyBmb3IgV2F0Y29tLgoKMjAwNy0wNS0xNiAxMzoyNCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OgoJICBCVUc6IFdhdGNvbSBXTWFrZSBuZWVkcyBlbXB0eSBydWxlIGNvbW1hbmRzIGV2ZW4gZm9yIHN5bWJvbGljCgkgIHRhcmdldHMuICBUaGlzIGZpeGVzIHRoZSBjbWFrZV9mb3JjZSB0YXJnZXQuCgoyMDA3LTA1LTE2IDEzOjEwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBEbyBub3Qgc2VuZCBib3RoIFNJR1NUT1AgYW5kCgkgIFNJR0tJTEwgd2hlbiBraWxsaW5nIGEgcHJvY2Vzcy4gIFRoZSBTSUdTVE9QIHNlZW1zIHRvIGJlIGFibGUgdG8KCSAgYmxvY2sgdGhlIFNJR0tJTEwgb2NjYXNpb25hbGx5LiAgQWxzbyB0aGUgU0lHS0lMTCBpcyBzdWZmaWNpZW50CgkgIHNpbmNlIHRoZSBwcm9jZXNzIHRhYmxlIGVudHJ5IHdpbGwgc3RpbGwgZXhpc3QgdW50aWwgaXQgaXMgcmVhcGVkCgkgIHdpdGggd2FpdHBpZC4KCjIwMDctMDUtMTYgMTE6NDAgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IERpc2FibGUgdGVzdCBvZgoJICBmZWF0dXJlIHRoYXQgaXMgbm90IGRvY3VtZW50ZWQgb3IgaW1wbGVtZW50ZWQgZXZlcnl3aGVyZS4KCjIwMDctMDUtMTYgMTA6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0xNiAwOTowNyAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IERvIG5vdCBlbWl0IC91c3IvbGliMzIgb3IKCSAgL3Vzci9saWI2NCBhcyBsaW5rZXIgcGF0aHMuICBTdWJtaXR0ZWQgYnkgRGF2aWQgRmF1cmUuCgoyMDA3LTA1LTE2IDA3OjU2ICBhbmR5CgoJKiBUZXN0cy9CdWlsZERlcGVuZHMvUHJvamVjdC9DTWFrZUxpc3RzLnR4dDogQlVHOiBjaGVjayBpbiB0aGUgcmVzdAoJICBvZiB0aGUgY2hhbmdlcyB0byBtb3ZlIGZyb20gYyB0byBjeHgKCjIwMDctMDUtMTYgMDc6NTQgIGFuZHkKCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy86IENNYWtlTGlzdHMudHh0LCBQcm9qZWN0L2Jhci5jLAoJICBQcm9qZWN0L2Jhci5jeHg6IEJVRzogZml4IHRlc3QgZm9yIGhwIG1vdmUgdG8gYysrIHRvIGF2b2lkIGFuc2kKCSAgaXNzdWVzIGFuZCBwcm9kdWNlIGEgbWVzc2FnZSBpZiB0aGUgY29tcGlsZSBmYWlscywgKHJlYWxseQoJICBjaGVja2VkIGluIGJ5IEJpbGwgSC4pCgoyMDA3LTA1LTE1IDE2OjU1ICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogbGV0IElOQ0xVREUoKSBhY3R1YWxseQoJICBmaW5kIGNsLmNtYWtlCgoJICBBbGV4CgoyMDA3LTA1LTE1IDE2OjUzICBhbGV4CgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogV2luZG93cy1jbC5jbWFrZSwgY2wuY21ha2U6CgkgIEVOSDogY3JlYXRlIGEgc2VwYXJhdGUgY2wuY21ha2UgYXMgcHJlcGFyYXRpb24gZm9yIHN1cHBvcnRpbmcgdGhlCgkgIGNyb3NzLWNvbXBpbGluZyBjbCdzCgoJICBBbGV4CgoyMDA3LTA1LTE1IDE2OjA2ICBhbGV4CgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OgoJICBCVUc6IGZpeCBzZWdmYXVsdCB3aGVuIHRyeWluZyB0byBnZXQgdGhlIG9iamVjdCBmaWxlIGZvciBhCgkgIHNvdXJjZWZpbGUgaW4gYW4gdW5rbm93biBsYW5ndWFnZSB2aWEgR0VUX1RBUkdFVF9QUk9QRVJUWSgpLCBhcwoJICByZXBvcnRlZCBieSBUcmV2b3IgS2VsbGF3YXkKCgkgIEFsZXgKCjIwMDctMDUtMTUgMTM6MzAgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZpbmRCaW5VdGlscy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9nY2MuY21ha2UsCgkgIFNvdXJjZS9jbUluY2x1ZGVDb21tYW5kLmN4eCwgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaDoKCSAgRU5IOiBzb21lIGFkanVzdG1lbnRzIGFzIHN1Z2dlc3RlZCBieSBCcmFkOiBvbmx5IGNoZWNrIGZvciB0aGUKCSAgdmFyaW91cyAiYmludXRpbHMiIG9uIHRoZSByZXNwZWN0aXZlIHBsYXRmb3JtLCBoYXJkY29kZSB0aGUgc3RyaXAKCSAgY29tbWFuZCwgbWFrZSB0aGUgcmV0dXJuIHZhcmlhYmxlIG9mIGluY2x1ZGUoKSBhdmFpbGFibGUgYWxzbwoJICB3aXRob3V0IE9QVElPTkFMLCBob25vciBERVNURElSIGZvciBzdHJpcCBhbmQgcmFubGliIC11c2UKCSAgRklORF9QUk9HUkFNKENNQUtFX0xJTktFUiBsaW5rKSBmb3IgdGhlIE1TVkMgbGlua2VyCgoJICBBbGV4CgoyMDA3LTA1LTE1IDEwOjIzICBraW5nCgoJKiBNb2R1bGVzLzogQ1Rlc3QuY21ha2UsIERhcnQuY21ha2U6IFNUWUxFOiBBZGRlZCBiYXNpYyB1c2FnZQoJICBkb2N1bWVudGF0aW9uLgoKMjAwNy0wNS0xNSAwMzo1OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTE0IDE3OjAyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmg6CgkgIEVOSDogbW92ZSByYW5saWIgaGFuZGxpbmcgb24gX0FQUExFX0NDXyBmcm9tIHRoZSBmaWxlIGNvbW1hbmQgdG8KCSAgdGhlIEluc3RhbGxUYXJnZXRHZW5lcmF0b3IKCgkgIEFsZXgKCjIwMDctMDUtMTQgMTY6MjggIGFsZXgKCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9nY2MuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBtb3ZlIHN0cmlwcGluZyBmcm9tIGNwYWNrIHRvIGNtYWtlL2luc3RhbGwgdGltZSwgZnVsbHkKCSAgY29uZmlndXJhYmxlIHZpYSB0aGUgQ01BS0VfU1RSSVBfRklMRSBydWxlLCBjdXJyZW50bHkgb25seQoJICBpbXBsZW1lbnRlZCBmb3IgdGhlIEdOVSB0b29sY2hhaW4uICBOb3cgY3BhY2sgc2hvdWxkIHdvcmsgYWxzbwoJICBmb3IgY3Jvc3MgY29tcGlsaW5nIChzaW5jZSBpdCBkb2Vzbid0IGhhdmUgdG8ga25vdyB0aGUgZXhlY3V0YWJsZQoJICBzdWZmaXggYW55bW9yZSkuCgoJICBzdHJpcHBpbmcgY2FuIGJlIGVuYWJsZWQvZGlzYWJsZWQgdmlhIHRoZSBjYWNoZSB2YXJpYWJsZQoJICBDTUFLRV9JTlNUQUxMX0RPX1NUUklQLgoKCSAgRXZlbiBpZiB0aGlzIGlzIGRpc2FibGVkLCB0aGUgY21ha2VfaW5zdGFsbC5jbWFrZSBmaWxlcyBzdGlsbAoJICBjb250YWluIHRoZSBzdHJpcCBydWxlcywgc28gYnkgcnVubmluZyBjbWFrZQoJICAtRENNQUtFX0lOU1RBTExfRE9fU1RSSVA9MSBjbWFrZV9pbnN0YWxsLmNtYWtlIHlvdSBjYW4gaW5zdGFsbAoJICB3aXRoIHN0cmlwcGluZyBhbHNvIGluIHRoaXMgY2FzZS4KCgkgIEFsZXgKCjIwMDctMDUtMTQgMTM6NDYgIGFsZXgKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVDb21tYW5kLmg6CgkgIFNUWUxFOiBzcGxpdCB0aGUgSGFuZGxlSW5zdGFsbENvbW1hbmQoKSBpbnRvIHNob3J0ZXIgZnVuY3Rpb25zCgkgICh3aGljaCBhcmUgc3RpbGwgcXVpdGUgbG9uZykKCgkgIEFsZXgKCjIwMDctMDUtMTQgMTE6MjMgIGFsZXgKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eDoKCSAgU1RZTEU6IGZpeCBsaW5lIGxlbmd0aHMKCgkgIEFsZXgKCjIwMDctMDUtMTQgMTE6MDcgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZpbmRCaW5VdGlscy5jbWFrZSwgTW9kdWxlcy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6CgkgIEVOSDogLWFkZGVkIG5ldyBDTWFrZUZpbmRCaW5VdGlscy5jbWFrZSB0byBoYXZlIGxlc3MgY29kZQoJICBkdXBsaWNhdGlvbiBpbiBDTWFrZURldGVybWluZUMvQysrP0ZvcnRyYW5Db21waWxlci5jbWFrZSwgLWFkZGVkCgkgIENNQUtFX0lOU1RBTExfTkFNRV9UT09MIHZhcmlhYmxlLCBvbmx5IHJ1biBpbnN0YWxsX25hbWVfdG9vbAoJICBoYW5kbGluZyBpZiB0aGlzIHdhcyBmb3VuZAoKCSAgQWxleAoKMjAwNy0wNS0xNCAwOTo0NiAgYWxleAoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgY21DVGVzdFRlc3RIYW5kbGVyLmg6CgkgIEVOSDogdXNlIEdldENUZXN0Q29uZmlndXJhdGlvbigiRXhlY3V0YWJsZVN1ZmZpeCIpIGluc3RlYWQKCSAgaW5zdGVhZCBvZiBjbVN5c3RlbVRvb2xzOjpHZXRFeGVjdXRhYmxlRXh0ZW5zaW9uKCkgLXJtb3ZlIHRoZQoJICB1bnVzZWQgVHJ5RXhlY3V0YWJsZSgpCgoJICBBbGV4CgoyMDA3LTA1LTE0IDA4OjU5ICBtYXJ0aW5rCgoJKiBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiByZXZlcnQgYmFjayB0byBTVUJESVJTIHNvIHRoYXQgQ01ha2UKCSAgY2FuIGJlIGJ1aWx0IHdpdGggMi4yCgoyMDA3LTA1LTE0IDA4OjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMTMgMTA6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0xMyAwOToxMSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogcmV2ZXJ0IHRvIFNVQkRJUlMgdG8gbWFrZSBzdXJlIGNtYWtlIGNhbiBiZQoJICBidWlsdCB3aXRoIDIuMgoKMjAwNy0wNS0xMyAwNzoxNiAga2luZwoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZHMuY3h4OiBDT01QOiBOZWVkIENNYWtlIDIuNCBvciBhIGJvb3RzdHJhcCBjbWFrZQoJICB0aGF0IGhhcyBBRERfU1VCRElSRUNUT1JZIHRvIGJ1aWxkLgoKMjAwNy0wNS0xMiAwMjo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTExIDE2OjI1ICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsIFNvdXJjZS9jbUZpbmRCYXNlLmN4eCwKCSAgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmg6CgkgIEVOSDogLXNlYXJjaCBDTUFLRV9UT09MQ0hBSU5fRklMRSBhdCBmaXJzdCByZWxhdGl2ZSB0byB0aGUKCSAgQ01BS0VfQklOQVJZX0RJUiAtaWYgaW4gQ01BS0VfQ19DT01QSUxFUiBvbmx5IHRoZSBiYXNlbmFtZSBvZiB0aGUKCSAgY29tcGlsZXIgd2l0aG91dCBwYXRoIHdhcyBnaXZlbiB0aGVuIGZpbmQgdGhlIHBhdGgKCSAgLUNNQUtFX0ZJTkRfUFJFRklYIGNhbiBub3cgYmUgYSBsaXN0IG9mIGRpcmVjdG9yaWVzIC12aWEKCSAgQ01BS0VfUFJPR1JBTV9GSU5EX1BSRUZJWF9NT0RFLCBDTUFLRV9MSUJSQVJZX0ZJTkRfUFJFRklYX01PREUKCSAgYW5kIENNQUtFX0lOQ0xVREVfRklORF9QUkVGSVhfTU9ERSB0aGUgZGVmYXVsdCBiZWhhdmlvdXIgZm9yCgkgIHRoZXNlIDMgdHlwZXMgY2FuIGJlIGFkanVzdGVkOiAqYXQgZmlyc3QgdGhlIGRpcmVjdG9yaWVzIHdpdGggdGhlCgkgIHByZWZpeGVzLCB0aGVuIHdpdGhvdXQgcHJlZml4ZXMgKGRlZmF1bHQsIHVuc2V0KSAqb25seSB0aGUKCSAgcHJlZml4ZXMgKHVzZWZ1bCBmb3IgbGlicyBhbmQgaGVhZGVycywgIk9OTFkiKSAqb25seSB3aXRob3V0IHRoZQoJICBwcmVmaXhlcyAodXNlZnVsIGZvciBwcm9ncmFtcywgIk5FVkVSIikKCgkgIEFsZXgKCjIwMDctMDUtMTEgMTQ6MDMgIGFsZXgKCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVDYWNoZS5oLCBjbVRyeVJ1bkNvbW1hbmQuY3h4LAoJICBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eDoKCSAgQlVHOiBzYW1lIGFzIEhFQUQ6IHVzZSBhIHN0ZDo6c3RyaW5nIGluc3RlYWQgYSBjb25zdCBjaGFyKiBmb3IKCSAgc3RvcmluZyB0aGUgZmlsZW5hbWUKCgkgIEVOSDogdXNlIENNQUtFX0VYRUNVVEFCTEVfU1VGRklYKCkgaW4gdHJ5X3J1biBhbmQgdXRpbGl0eV9zb3VyY2UsCgkgIGFsdGhvdWdoIHVzdWFsbHkgdGhleSB3b24ndCBiZSBhYmxlIHRvIHJ1biB0aGUgZXhlY3V0YWJsZXMgKGJ1dAoJICBJTU8gdGhleSBzaG91bGRuJ3QgY29tcGxhaW4gdGhleSBjYW4ndCBmaW5kIHRoZSBleGVjdXRhYmxlcykKCgkgIEVOSDogdHJ5X3J1biBub3cgZmFpbHMgd2l0aCAiY2FudCBydW4gZXhlY3V0YWJsZXMgaWYgdXNlZCB3aXRoCgkgIHRoaXMgdG9vbGNoYWluIiBpZiB1c2VkIHdpdGggYSB1c2VyIGRlZmluZWQgdG9vbGNoYWluIHdoaWNoCgkgIGRpZG4ndCByZXNldCB0aGUgQ01BS0VfQUxJRU5fRVhFQ1VUQUJMRVMgZmxhZwoKCSAgQWxleAoKMjAwNy0wNS0xMSAxMzo1MiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgQlVHOiBGaXhlZCBnZW5lcmF0aW9uIG9mIFhDT0RFX0RFUEVORF9IRUxQRVIubWFrZSBpbnRvIHByb3BlcgoJICBkaXJlY3RvcnkuICBDbGVhbmVkIHVwIGR1cGxpY2F0ZSBjb2RlIGNyZWF0ZWQgYnkgcmVjZW50IGNoYW5nZXMuCgoyMDA3LTA1LTExIDEzOjQ2ICBhbGV4CgoJKiBNb2R1bGVzL0NUZXN0LmNtYWtlLCBNb2R1bGVzL0RhcnRDb25maWd1cmF0aW9uLnRjbC5pbiwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6CgkgIEVOSDogYWxsb3cgaXQgdG8gc2V0IFVQREFURV9UWVBFIHZpYSBDVEVTVF9VUERBVEVfVFlQRSBmcm9tCgkgIENUZXN0Q29uZmlnLmNtYWtlIC1hZGQgRVhFQ1VUQUJMRV9TVUZGSVggdG8gRGFydENvbmZpZy50Y2wgc28gaXQKCSAgY2FuIGJlIHVzZWQgaW4gY3Rlc3QgLXVzZSBDUEFDS19FWEVDVVRBQkxFX1NVRkZJWCBmb3IgY3BhY2sKCSAgKHN0cmlwLCB3aGljaCBkb2Vzbid0IHdvcmsgYmVjYXVzZSBvZiB0aGUgaW5zdGFsbCBkaXIpCgoJICBBbGV4CgoyMDA3LTA1LTExIDEzOjA2ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwgQ1BhY2suY21ha2U6CgkgIEVOSDogYWxzbyB1c2UgdGhlIHRhcmdldCBwbGF0Zm9ybSBzdHJpcCBhbmQgZXhlY3V0YWJsZSBzdWZmaXggaW4KCSAgY3BhY2sgdXNlIHRoZSBuZXcgaW5jbHVkZSgpIHBhcmFtZXRlciB0byBoYW5kbGUgYm90aCBmdWxsLXBhdGgKCSAgYW5kIG1vZHVsZS1uYW1lLW9ubHkgU1lTVEVNX0lORk8gZmlsZXMKCgkgIEFsZXgKCjIwMDctMDUtMTEgMTI6MTcgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0LCBUZXN0cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBtaW5vciBmaXhlcwoKMjAwNy0wNS0xMSAxMTo1NSAgYWxleAoKCSogU291cmNlLzogY21JbmNsdWRlQ29tbWFuZC5jeHgsIGNtSW5jbHVkZUNvbW1hbmQuaDoKCSAgRU5IOiBpZiBPUFRJT05BTCBpcyB1c2VkLCBnaXZlIHRoZSB1c2VyIGEgd2F5IHRvIGNoZWNrIHdoZXRoZXIKCSAgdGhlIGZpbGUgd2FzIGluY2x1ZGVkIG9yIG5vdCAoYnkgc2V0dGluZyBhIHZhcmlhYmxlIHRvIHRoZSBmdWxsCgkgIHBhdGggb3IgTk9URk9VTkQpIEFkZGl0aW9uYWxseSBub3cgZmFpbCBpZiBhIHNlY29uZCBhcmd1bWVudCBpcwoJICB1c2VkIGFuZCB0aGlzIGlzIG5vdCAiT1BUSU9OQUwiCgoJICBBbGV4CgoyMDA3LTA1LTExIDEwOjM0ICBhbGV4CgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsIENNYWtlU3lzdGVtLmNtYWtlLmluLAoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsIENoZWNrVHlwZVNpemUuY21ha2U6CgkgIEVOSDogb25seSBjaGVjayBmb3IgdGhlIHR5cGUgc2l6ZSBpZiBpdCBoYXNuJ3QgYWxyZWFkeSBiZWVuIHNldCwKCSAgcHV0IGEgYml0IG1vcmUgaW5mb3JtYXRpb24gaW4gdGhlIENNYWtlU3lzdGVtSW5mb3JtYXRpb24uY21ha2UKCSAgZmlsZSBpZiBpdCBoYXMgYmVlbiB1c2VkIHdpdGggYSB0b29sY2hhaW4gZmlsZSwgdXNlIHRoZSBmaWxlCgkgIGdpdmVuIGluIHRoZSB0b29sY2hhaW4gZmlsZSBhcyBDTWFrZV9TWVNURU1fSU5GT19GSUxFCgoJICBBbGV4CgoyMDA3LTA1LTExIDEwOjIyICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NPbmx5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9DeHhPbmx5L0NNYWtlTGlzdHMudHh0LCBUZXN0cy9NYXRoVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTmV3bGluZUFyZ3MvQ01ha2VMaXN0cy50eHQsIFRlc3RzL09iakMrKy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvUHJlT3JkZXIvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NldExhbmcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RhclRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogc29tZSBtb3JlIENNYWtlTGlzdCBjbGVhbnVwcwoKMjAwNy0wNS0xMSAwOTowMiAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ01ha2VMaXN0cy50eHQ6IEVOSDoKCSAgbW9yZSBjbGVhbnVwIG9mIHNvbWUgQ01ha2VMaXN0cyBmaWxlcwoKMjAwNy0wNS0xMSAwODozNiAgYWxleAoKCSogU291cmNlL2NtTGlzdEZpbGVDYWNoZS5oOgoJICBCVUc6IGNvbnN0IGNoYXIqIEZpbGVQYXRoIGNvdWxkIHBvaW50IHRvIGEgbm9uLWV4aXN0ZW50CgkgIHN0ZDo6c3RyaW5nIGZvciBjb21tYW5kcyB1c2VkIGluIGEgbWFjcm8sIHVzaW5nIGEgc3RkOjpzdHJpbmcKCSAgaW5zdGVhZCBjb3BpZXMgdGhlIGNvbnRlbnRzIHNvIHRoaXMgd29ya3MgKGNvcnJlY3QgZXJyb3IgbWVzc2FnZSkKCgkgIEFsZXgKCjIwMDctMDUtMTEgMDg6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0xMCAxNToxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTEwIDE1OjEzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvOiBDTWFrZUxpc3RzLnR4dCwgS1dTdHlsZS9DTWFrZS5rd3MueG1sLmluLAoJICBLV1N0eWxlL0NNYWtlRmlsZXMudHh0LmluLCBLV1N0eWxlL0NNYWtlTGlzdHMudHh0LAoJICBLV1N0eWxlL0NNYWtlT3ZlcndyaXRlLnR4dCwgS1dTdHlsZS9IZWFkZXJzL0NNYWtlSGVhZGVyLmg6IEVOSDoKCSAgYWRkIEtXU3R5bGUgc3VwcG9ydAoKMjAwNy0wNS0xMCAxNDo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBCVUc6IGZpeCAtRCBlc2NhcGVkIHF1b3RlcyBmb3IKCSAgd2F0Y29tCgoyMDA3LTA1LTEwIDE0OjA4ICBtYXJ0aW5rCgoJKiBDTWFrZUNQYWNrLmNtYWtlLCBDTWFrZUxpc3RzLnR4dCwgQ29tcGlsZUZsYWdzLmNtYWtlOiBFTkg6IHN0YXJ0CgkgIHRyeWluZyB0byBjbGVhbnVwIENNYWtlTGlzdHMgZmlsZXMKCjIwMDctMDUtMTAgMTM6MDMgIGFsZXgKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgRU5IOiByZXR1cm4gdGhlIGRlZmF1bHQgbG9jYXRpb24gZm9yIGltcG9ydGVkIHRhcmdldHMgaWYgdGhlCgkgIGNvbmZpZy1kZXBlbmRlbnQgbG9jYXRpb25zIGFyZSBub3Qgc2V0CgoJICBBbGV4CgoyMDA3LTA1LTEwIDExOjQxICBhbGV4CgoJKiBTb3VyY2UvOiBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21HZXRUYXJnZXRQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6CgkgIEVOSDogZmlyc3QgdHJ5IGF0ICJpbXBvcnRpbmciIHRhcmdldHMgKGZyb20gb3RoZXIgYnVpbGQgdHJlZXMpLAoJICBub3cgZG9uZSB1c2luZyBhIHNlcGFyYXRlIGNvbnRhaW5lciBmb3IgdGhlIGltcG9ydGVkIHRhcmdldHMgLWFzCgkgIGluIEhFQUQ6IG1vdmUgVHJhY2VWU0RlcGVuZGVuY2llcygpIHRvIG9uZSBjZW50cmFsIHBsYWNlLAoJICBHbG9iYWxHZW5lcmF0b3I6OkdlbmVyYXRlKCkKCgkgIEFsZXgKCjIwMDctMDUtMTAgMTE6MzggIGFsZXgKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4OgoJICBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgoJICBBbGV4CgoyMDA3LTA1LTEwIDExOjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBzdXJlIGVzY2FwaW5nIGlzCgkgIGRvbmUgZm9yIHN0cmluZ3Mgb24gdGhlIGNvbW1hbmQgbGluZQoKMjAwNy0wNS0xMCAxMDozMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCB0ZXN0IGZvciBhIHNpbXBsZSBkZXBlbmQgdGVzdCwKCSAgZG9lcyBhbiBleGUgcmUtbGluayBpZiBhIGxpYnJhcnkgdGhhdCBpdCB1c2VzIGNoYW5nZXMKCjIwMDctMDUtMTAgMTA6MDUgIGhvZmZtYW4KCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy86IENNYWtlTGlzdHMudHh0LCBQcm9qZWN0L2Jhci5jOiBFTkg6IGFkZCB0ZXN0CgkgIGZvciBidWlsZCBkZXBlbmRzCgoyMDA3LTA1LTEwIDEwOjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBtb3ZlIG9mIHRyYWNlCgkgIGRlcGVuZHMKCjIwMDctMDUtMDkgMTU6MTAgIGhvZmZtYW4KCgkqIFRlc3RzL0J1aWxkRGVwZW5kcy86IENNYWtlTGlzdHMudHh0LCBQcm9qZWN0L0NNYWtlTGlzdHMudHh0LAoJICBQcm9qZWN0L2Jhci5jOiBFTkg6IGFkZCBhIHRlc3QgdG8gbWFrZSBzdXJlIFhjb2RlIGRvZXMgbm90IGJyZWFrCgkgIGFnYWluCgoyMDA3LTA1LTA5IDE0OjQxICBhbGV4CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6CgkgIEJVRzogZml4IHByb2JsZW0gZm9yIG5vbi1DL0NYWCBsYW5ndWFnZXMgd2l0aCBWaXN1YWwgU3R1ZGlvLCB0aGUKCSAgZGVwZW5kZW5jaWVzIGZvciB0aGUgY3VzdG9tIGNvbW1hbmRzIGFkZGVkIGZvciBqYXZhIHdlcmUgbm90CgkgIGhhbmRsZWQgY29ycmVjdGx5LiBOZWVkcyBtb3JlIHdvcmsuCgoJICBBbGV4CgoyMDA3LTA1LTA5IDExOjQ0ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOgoJICBFTkg6IGluaXRpYWwgdHJ5IGZvciBzdXBwb3J0IGZvciAiaW1wb3J0aW5nIiB0YXJnZXRzIGludG8gY21ha2UsCgkgIHNvIGUuZy4gdGhlIHN1cHBvcnQgZm9yIGxpYnMgaW4gcmVsZWFzZS0gYW5kIGRlYnVnIG1vZGUgY2FuIGJlCgkgIGRvbmUgbXVjaCBiZXR0ZXIgYW5kIGltcG9ydGVlZCBleGVjdXRhYmxlIHRhcmdldHMgY2FuIGJlIHVzZWQgaW4KCSAgY3VzdG9tIGNvbW1hbmRzICgtPiBjcm9zcyBjb21waWxpbmcpCgoJICBBbGV4CgoyMDA3LTA1LTA5IDEwOjI4ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBvbGRlciB4Y29kZSBhbmQKCSAgZnJhbWV3b3JrIGNyZWF0ZQoKMjAwNy0wNS0wOSAxMDoxOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IEZpeGVkCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yIHRvIGRlYWwgd2l0aCBxdW90ZXMgaW4gbWFjcm8KCSAgZGVmaW5pdGlvbnMgcHJvcGVybHkuICBUaGlzIGFkZHJlc3NlcyBidWcjNDk4My4KCjIwMDctMDUtMDkgMDk6MzUgIGFsZXgKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgU1RZTEU6IGZ1bmN0aW9ucyB1c2UgdXBwZXIgY2FzZSBmb3IgdGhlIGZpcnN0IGxldHRlcgoKCSAgQWxleAoKMjAwNy0wNS0wOSAwOToxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA1LTA5IDA4OjI1ICBhbGV4CgoJKiBTb3VyY2UvY21DdXN0b21Db21tYW5kLmgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9VdGlsaXR5SGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9DdXN0b21Db21tYW5kL21haW4uY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0dlbmVyYXRvckluRXh0cmFEaXIvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogbm93IHRhcmdldCBuYW1lcyBjYW4gYmUgdXNlZCBpbiBhZGRfY3VzdG9tX2NvbW1hbmQoKSBhbmQKCSAgYWRkX2N1c3RvbV90YXJnZXQoKSBhcyBDT01NQU5ELCBhbmQgY21ha2Ugd2lsbCByZWNvZ25pemUgdGhlbSBhbmQKCSAgcmVwbGFjZSB0aGVtIHdpdGggdGhlIGFjdHVhbCBvdXRwdXQgcGF0aCBvZiB0aGVzZSBleGVjdXRhYmxlcy4KCSAgQWxzbyB0aGUgZGVwZW5kZW5jeSB3aWxsIGJlIGFkZGVkIGF1dG9tYXRpY2FsbHkuIFRlc3QgaW5jbHVkZWQuCgkgIEVOSDogbW92ZWQgVHJhY2VWU0RlcGVuZGVuY2llcygpIHRvIHRoZSBlbmQgb2YKCSAgR2xvYmFsR2VuZXJhdG9yOjpDb25maWd1cmUoKSwgc28gaXQgaXMgZG9uZSBub3cgaW4gb25lIGNlbnRyYWwKCSAgcGxhY2UKCgkgIEFsZXgKCjIwMDctMDUtMDggMTY6NTggIGFsZXgKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvOiBDTWFrZUxpc3RzLnR4dCwKCSAgR2VuZXJhdG9ySW5FeHRyYURpci9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBhbHNvIHRlc3QgaWYgdGhlIGRlcGVuZGVuY3kgdG8gYSB0YXJnZXQgd29ya3Mgd2l0aCBQT1NUQlVJTEQKCgkgIEFsZXgKCjIwMDctMDUtMDggMTY6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBnZXR0aW5nIGNsb3NlcgoKMjAwNy0wNS0wOCAxNTo0OSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBpbml0aWFsIHhjb2RlCgkgIGZyYW1ld29yayBzdHVmZgoKMjAwNy0wNS0wOCAxNToyOSAgYWxleAoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogYSBjbG9zaW5nIGJyYWNlCgkgIHdhcyBtaXNzaW5nCgoJICBBbGV4CgoyMDA3LTA1LTA4IDE0OjQ3ICBhbGV4CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OgoJICBFTkg6IG1vdmUgVHJhY2VWU0RlcGVuZGVuY2llcygpIGZyb20gZXZlcnkgZ2VuZXJhdG9yIHRvIHRoZSBlbmQKCSAgb2YgR2xvYmFsR2VuZXJhdG9yOjpDb25maWd1cmUoKSwgcmVtb3ZlcyBzb21lIGNvZGUgZHVwbGljYXRpb24KCSAgYW5kIG1ha2VzIGl0IGVhc2llciB0byBhZGQgc3VwcG9ydCBmb3IgImltcG9ydGluZyIgdGFyZ2V0cwoKCSAgQWxleAoKMjAwNy0wNS0wOCAxNDoyOCAgYWxleAoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IHN0YW5kYXJkIGZvci1sb29wLWluaXRpYWxpemF0aW9uIGluIHRoZSBNU1ZDIGdlbmVyYXRvciwKCSAgb25lIGxldmVsIGxlc3MgZGVlcCBpZi1zdGF0ZW1lbnQgaW4gWENvZGUgZ2VuZXJhdG9yLCBvbmUgbGV2ZWwKCSAgbGVzcyBkZWVwIGZ1bmN0aW9uIGNhbGwgaW4gdGhlIGdsb2JhbCBnZW5lcmF0b3IgLT4gbWFrZXMgaXQKCSAgZWFzaWVyIHRvIHVuZGVyc3RhbmQgSU1PCgoJICBBbGV4CgoyMDA3LTA1LTA4IDE0OjEwICBhbGV4CgoJKiBTb3VyY2UvY21UYXJnZXQuaDoKCSAgU1RZTEU6IEdldE5hbWUoKSBpcyBjb25zdCwgY29tbWVudCB1cGRhdGVkCgoJICBBbGV4CgoyMDA3LTA1LTA4IDEyOjQzICBob2ZmbWFuCgoJKiBUZXN0cy9GcmFtZXdvcmsvOiBiYXIuY3h4LCBmb28uY3h4OiBFTkg6IG1ha2UgaXQgd29yayBvbiBub24KCSAgd2luZG93cwoKMjAwNy0wNS0wOCAxMTo1MyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBUZXN0cy9GcmFtZXdvcmsvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0ZyYW1ld29yay9iYXIuY3h4LCBUZXN0cy9GcmFtZXdvcmsvZm9vLmN4eDogRU5IOiBmaXggaXQgc28KCSAgdGhhdCB0aGUgRlJBTUVXT1JLIHByb3BlcnR5IGRvZXMgbm90IGJyZWFrIHRoZSBidWlsZGluZyBvZiBub3JtYWwKCSAgc2hhcmVkIGxpYnMgb24gbm9uLW1hYyBwbGF0Zm9ybXMKCjIwMDctMDUtMDggMTE6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0wOCAxMDo1OCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9GcmFtZXdvcmsvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0ZyYW1ld29yay9iYXIuY3h4LCBUZXN0cy9GcmFtZXdvcmsvZm9vLmN4eCwKCSAgVGVzdHMvRnJhbWV3b3JrL2Zvby5oLCBUZXN0cy9GcmFtZXdvcmsvZm9vMi5oOiBFTkg6IGFkZCBhIHZlcnkKCSAgc2ltcGxlIGZyYW1ld29yayB0ZXN0CgoyMDA3LTA1LTA4IDEwOjMyICBob2ZmbWFuCgoJKiBNb2R1bGVzL01hY09TWEZyYW1ld29ya0luZm8ucGxpc3QuaW4sCgkgIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5oLCBTb3VyY2UvY21UYXJnZXQuY3h4OgoJICBFTkg6IGluaXRpYWwgc3VwcG9ydCBmb3IgY3JlYXRpb24gb2YgZnJhbWV3b3JrcyBvbiBNYWMKCjIwMDctMDUtMDggMTA6MDUgIGFsZXgKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5jeHg6CgkgIEVOSDogYWxzbyBkZXRlY3QgdGFyZ2V0bmFtZXMtdXNlZC1hcy1jb21tYW5kcyBmb3IKCSAgUFJFQlVJTEQvUFJFTElOSy9QT1NUQlVJTEQgY3VzdG9tIGNvbW1hbmRzCgoJICBBbGV4CgoyMDA3LTA1LTA3IDE4OjE3ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlOiBCVUc6IERldGVjdCBkZWJpYW4gd2l0aCBleGlzdGVuY2UKCSAgb2YgL2V0Yy9kZWJpYW5fdmVyc2lvbiBzbyB0aGluZ3Mgd29yayBpbiBhIGNocm9vdCBpbnN0YWxsLiAgVGhpcwoJICBpcyBzdWdnZXN0ZWQgaW4gYnVnIzQ4MDUuCgoyMDA3LTA1LTA3IDE0OjUwICBhbGV4CgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsCgkgIEdlbmVyYXRvckluRXh0cmFEaXIvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWxzbyB0ZXN0IHRoZSBhdXRvbWF0aWMgZGVwZW5kZW5jeS4gVG8gbWFrZSBpdCBhIGJpdCBoYXJkZXIKCSAgYWxzbyB1c2UgU0VUX1RBUkdFVF9QUk9QRVJUSUVTKE9VVFBVVF9OQU1FKSBmb3IgdGhlIGdlbmVyYXRvcgoJICBleGVjdXRhYmxlCgoJICBBbGV4CgoyMDA3LTA1LTA3IDE0OjQyICBhbGV4CgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIGNtVGFyZ2V0LmN4eDoKCSAgRU5IOiBpZiBhIHRhcmdldCBuYW1lIGlzIHVzZWQgYXMgY29tbWFuZCBpbiBhZGRfY3VzdG9tX2NvbW1hbmQsCgkgIGF1dG9tYXRpY2FsbHkgYWRkIHRoZSBkZXBlbmRlbmN5IHRvIHRoaXMgdGFyZ2V0CgoJICBBbGV4CgoyMDA3LTA1LTA3IDE0OjI3ICBhbGV4CgoJKiBTb3VyY2UvY21DdXN0b21Db21tYW5kLmg6CgkgIFNUWUxFOiBJc1VzZWQoKSBpcyBjb25zdCwgc2VtaWNvbG9ucyBhcmUgbm90IHJlcXVpcmVkCgoJICBBbGV4CgoyMDA3LTA1LTA3IDExOjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMDcgMDk6NDggIGFsZXgKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWRkIHRlc3QgZm9yIHRoZSB0YXJnZXQtdG8tbG9jYXRpb24gdHJhbnNsYXRpb24gZm9yCgkgIEFERF9DVVNUT01fVEFSR0VUCgoJICBBbGV4CgoyMDA3LTA1LTA3IDA4OjQ4ICBhbGV4CgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvVXRpbGl0eUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZToKCSAgRU5IOiBhbHNvIHN1cHBvcnQgdGFyZ2V0LWFzLWNvbW1hbmQgd2l0aCB0aGUgTVNWQzYgZ2VuZXJhdG9yCgoJICBBbGV4CgoyMDA3LTA1LTA2IDA5OjA1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMDUgMDg6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0wNCAxNzoxNyAgYWxleAoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oOgoJICBFTkg6IGFkZCBjb25maWdOYW1lIGFyZ3VtZW50IHRvIENyZWF0ZVRhcmdldFJ1bGVzIHNvIGl0IGNhbgoJICBjcmVhdGUgdGhlIHJ1bGVzIGNvcnJlY3RseSBmb3IgdGhlIGRpZmZlcmVudCBjb25maWd0eXBlcy4gSGFzIHRvCgkgIGJlIHVzZWQgZm9yIGNvbmZpZ3VyaW5nIHRoZSBwcm9qZWN0IGZpbGUgdGVtcGxhdGVzLgoKCSAgQWxleAoKMjAwNy0wNS0wNCAxNzowOSAgYWxleAoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDoKCSAgU1RZTEU6IHJlbW92ZSB0aGUgY29tbWVudGVkIGNvZGUsIHdhc24ndCBpbnRlbmRlZCB0byBiZSBjb21taXR0ZWQKCgkgIEFsZXgKCjIwMDctMDUtMDQgMTY6NDMgIGFsZXgKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0N1c3RvbUNvbW1hbmQvbWFpbi5jeHgsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvR2VuZXJhdG9ySW5FeHRyYURpci9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiB5b3UgY2FuIG5vdyB1c2UgdGhlIHRhcmdldCBuYW1lIG9mIGEgZXhlY3V0YWJsZSB0YXJnZXQgaW4KCSAgY21ha2UgYXMgY29tbWFuZCBpbiBhZGRfY3VzdG9tX2NvbW1hbmQsIGl0IHNob3VsZCBhbHNvIGhvbm9yIHRoZQoJICBidWlsZHR5cGVzLiBBIHRlc3RjYXNlIGluIFRlc3RzL0N1c3RvbUNvbW1hbmQvIGlzIGFsc28gY29taW5nCgkgIHNvb24uIFRlc3RlZCBvbiBMaW51eCB3aXRoIE1ha2VmaWxlcywgT1NYIHdpdGggWENvZGUgYW5kIE1TVkMgNy4KCSAgTVNWQyA2IGFuZCA4IGFyZSBub3QgdGVzdGVkLiBOZXh0IHdpbGwgYmUgdG8gYWxzbyBhdXRvbWF0aWNhbGx5CgkgIGFkZCB0aGUgZGVwZW5kZW5jaWVzIHRvIHRoaXMgdGFyZ2V0IGF1dG9tYXRpY2FsbHkuCgoJICBBbGV4CgoyMDA3LTA1LTA0IDE0OjA4ICBhbGV4CgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBDT01QOiByZW1vdmVkIHVudXNlZAoJICB2YXJpYWJsZSB0ZW1wCgoJICBBbGV4CgoyMDA3LTA1LTA0IDA5OjUwICBhbGV4CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6CgkgIENPTVA6IGZpeCB3YXJuaW5nIG9uIFZTODogY29udmVyc2lvbiB1bnNpZ25lZCBpbnQgLT4gc2l6ZV90CgoJICBBbGV4CgoyMDA3LTA1LTAzIDIwOjQyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMDMgMTU6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4OiBFTkg6IGxvb2sgYXQKCSAgQ01BS0VfVFJZX0NPTVBJTEVfQ09ORklHVVJBVElPTiB2YXIgZm9yIFRyeVJ1biBhcyB3ZWxsCgoyMDA3LTA1LTAzIDEzOjAzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYywgVXRpbGl0aWVzL2NtY3VybC91cmwuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19jdXJsX3RyYW5zcG9ydC5jOiBDT01QOiBGaXgKCSAgY29kZS1ub3QtcmVhY2hlZCB3YXJuaW5ncyBmb3IgU3VuQ0MuCgoyMDA3LTA1LTAzIDA4OjI0ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLCBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBDTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbiwgQ01ha2VGb3J0cmFuQ29tcGlsZXJJZC5GOTAsCgkgIENNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLCBQbGF0Zm9ybS9MaW51eC1TdW5Qcm8tQy5jbWFrZSwKCSAgUGxhdGZvcm0vTGludXgtU3VuUHJvLUNYWC5jbWFrZSwKCSAgUGxhdGZvcm0vTGludXgtU3VuUHJvLUZvcnRyYW4uY21ha2U6IEVOSDogTWVyZ2luZyBDb21waWxlcklkCgkgIHVwZGF0ZXMgZnJvbSBicmFuY2ggQ01ha2UtTW9kdWxlcy1Db21waWxlcklkIHRvIHRoZSBtYWluIHRyZWUuCgkgIENoYW5nZXMgYmV0d2VlbiBDTWFrZS1Nb2R1bGVzLUNvbXBpbGVySWQtbXAxIGFuZAoJICBDTWFrZS1Nb2R1bGVzLUNvbXBpbGVySWQtbXAyIGFyZSBpbmNsdWRlZC4KCjIwMDctMDUtMDMgMDc6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNS0wMiAxNDoxMyAgYWxleAoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZToKCSAgQlVHOiBmaXggdHlwbywgdXNlIFRPT0xDSEFJTl9QUkVGSVggYXMgcHJlZml4IGluc3RlYWQgb2YgbG9jYXRpb24KCgkgIEFsZXgKCjIwMDctMDUtMDIgMTE6NTYgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlci5jbWFrZS5pbiwgQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6CgkgIEVOSDogbWFrZSBpdCBwb3NzaWJsZSB0byBzZXQgdGhlIG9iamVjdCBmaWxlIGV4dGVuc2lvbgoJICBpbmRlcGVuZGVudCBmcm9tIHRoZSBidWlsZCBwbGF0Zm9ybSBhdCBidWlsZCB0aW1lCgoJICBBbGV4CgoyMDA3LTA1LTAyIDAxOjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDUtMDEgMTg6MjggIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sIENNYWtlRm9ydHJhbkNvbXBpbGVySWQuRjkwLAoJICBDTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZTogRU5IOiBVc2luZwoJICBDTUFLRV9ERVRFUk1JTkVfQ09NUElMRVJfSUQgdG8gZGV0ZXJtaW5lIHRoZSBGb3J0cmFuIGNvbXBpbGVyLgoJICBUaGlzIHdvcmtzIG9ubHkgZm9yIEZvcnRyYW45MCsgY29tcGlsZXJzIHRoYXQgcnVuIHRoZQoJICBwcmVwcm9jZXNzb3IuICBPdGhlcndpc2Ugd2UgZmFsbCBiYWNrIHRvIHRoZSBvbGQgYmVoYXZpb3IuCgoyMDA3LTA1LTAxIDE4OjI3ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsIENNYWtlRGV0ZXJtaW5lQ29tcGlsZXJJZC5jbWFrZToKCSAgRU5IOiBBZGRlZCBmbGFndmFyIGFyZ3VtZW50IHRvIENNQUtFX0RFVEVSTUlORV9DT01QSUxFUl9JRCB0bwoJICBjaG9vc2UgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGZyb20gd2hpY2ggdG8gZ2V0IGZsYWdzLiAgTWFkZQoJICBwYXJzaW5nIG9mIElORk8gYmxvY2tzIHJvYnVzdCB0byBoYXZpbmcgbW9yZSB0aGFuIG9uZSBpbiBhIHNpbmdsZQoJICBzdHJpbmcuCgoyMDA3LTA1LTAxIDE4OjI2ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2U6CgkgIEVOSDogQWRkZWQgY29kZSB0byBsb2FkIENvbXBpbGVySWQgdmVyc2lvbiBvZiBwbGF0Zm9ybSBmaWxlIGlmIGl0CgkgIGV4aXN0cy4gIFNldCBDTUFLRV9TSEFSRURfTElCUkFSWV9MSU5LX0NYWF9GTEFHUyBvbmx5IGlmIGl0IGlzCgkgIG5vdCBhbHJlYWR5IGRlZmluZWQuCgoyMDA3LTA1LTAxIDE4OjI0ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogTGludXgtU3VuUHJvLUMuY21ha2UsIExpbnV4LVN1blByby1DWFguY21ha2UsCgkgIExpbnV4LVN1blByby1Gb3J0cmFuLmNtYWtlOiBFTkg6IEFkZGluZyBwbGF0Zm9ybSBmaWxlIGZvciBTdW4KCSAgU3R1ZGlvIEV4cHJlc3Mgb24gTGludXguCgoyMDA3LTA1LTAxIDE4OjIyICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBDTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2UsIENNYWtlTGlzdHMudHh0LCBGaW5kTVBJLmNtYWtlLAoJICBQbGF0Zm9ybS9Vbml4UGF0aHMuY21ha2U6IEVOSDogTWVyZ2luZyBtb2R1bGVzIGNoYW5nZXMgaW4gcmFuZ2UKCSAgQ01ha2UtTW9kdWxlcy1Db21waWxlcklkLW1wMS1wb3N0IHRvCgkgIENNYWtlLU1vZHVsZXMtQ29tcGlsZXJJZC10cnVuay1tcDEgZnJvbSB0cnVuayB0bwoJICBDTWFrZS1Nb2R1bGVzLUNvbXBpbGVySWQgYnJhbmNoLgoKMjAwNy0wNS0wMSAxNzowMiAgYWxleAoKCSogU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5oOgoJICBTVFlMRTogZml4IHR5cG8KCgkgIEFsZXgKCjIwMDctMDUtMDEgMTc6MDAgIGFsZXgKCgkqIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmg6CgkgIFNUWUxFOiBhY2NvcmRpbmcgdG8gQnJhZCB0aGlzIG9uZSBpcyBhbmNpZW50IGFuZCBzaG91bGRuJ3QgYmUKCSAgdXNlZCBmb3IgYW55IG5ldyBzdHVmZgoKCSAgQWxleAoKMjAwNy0wNS0wMSAxNjozNyAgYWxleAoKCSogTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2U6CgkgIEJVRzogZG9uJ3QgdXNlIHN0ZGlvIGluIHRoZSB0ZXN0IGZvciBhIHNpbXBsZSBleGVjdXRhYmxlLCBmb3IKCSAgc29tZSBlbWJlZGRlZCB0YXJnZXRzL3Rvb2xjaGFpbnMvcGxhdGZvcm1zIHRoaXMgbWlnaHQgYWxyZWFkeSBiZQoJICB0b28gbXVjaAoKCSAgQWxleAoKMjAwNy0wNS0wMSAxNjoyNSAgYWxleAoKCSogU291cmNlLzogY21GaW5kQmFzZS5jeHgsIGNtRmluZEJhc2UuaDoKCSAgRU5IOiBhZGQgc3VwcG9ydCBmb3IgQ01BS0VfRklORF9QUkVGSVgsIGZvciBwcmVwZW5kaW5nIGEgcHJlZml4CgkgIGJlZm9yZSBhbGwgZGlyZWN0b3JpZXMgc2VhcmNoZWQgYnkgRklORF9YWFgoKSwgdXNlZnVsIGZvcgoJICBkZWZpbmluZyBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeSBmb3IgdGhlIGJhc2UgZGlyZWN0b3J5IG9mIHRoZQoJICB0YXJnZXQgcGxhdGZvcm0KCgkgIEFsZXgKCjIwMDctMDUtMDEgMTQ6MzUgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlcklkLmMsIENNYWtlQ1hYQ29tcGlsZXJJZC5jcHA6IEVOSDoKCSAgQ2hhbmdlZCBHTlVDIGNvbXBpbGVyIGlkIG5hbWUgdG8gR05VLgoKMjAwNy0wNS0wMSAxNDoyMyAgYWxleAoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlOgoJICBFTkg6IGFkZCB0d28gbmV3IHZhcmlhYmxlczogQ01BS0VfVE9PTENIQUlOX1BSRUZJWDogd2lsbCBiZQoJICBwcmVwZW5kZWQgdG8gZ2NjLCBhciwgZysrLCBjYywgYysrIGFuZCByYW5saWIgaWYgZGVmaW5lZCAoZ2l2ZXMKCSAgZS5nLiBhcm0tZWxmLWdjYyBldGMuKSBDTUFLRV9UT09MQ0hBSU5fTE9DQVRJT046IGlmIGRlZmluZWQsIHRoZQoJICBjb21waWxlcnMgd2lsbCBiZSBzZWFyY2hlZCBvbmx5IHRoZXJlLCB0aGUgb3RoZXIgdG9vbHMgYXQgZmlyc3QKCSAgdGhlcmUsIGFmdGVyIHRoYXQgaW4gb3RoZXIgbG9jYXRpb25zCgoJICBJZiBub3QgYWxyZWFkeSBkZWZpbmVkLCBib3RoIG9mIHRoZW0gd2lsbCBiZSBzZXQgYnkKCSAgQ01ha2VEZXRlcm1pbmVYWFhDb21waWxlci5jbWFrZSBhbmQgdXNlZCBieSB0aGUgb3RoZXIgb25lLiBJZgoJICBtaXhpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIENDL0NYWCBhbmQgdGhlc2UgdmFyaWFibGVzIHRoaXMKCSAgY2FuIGdpdmUgd2VpcmQgbWl4dHVyZXMuCgoJICBjaGFuZ2Ugb3JkZXIgb2YgY29tcGlsZXIgbmFtZXMgZm9yIENYWDogZnJvbSBjKyssIGcrKyB0byBnKyssIGMrKwoJICAoc2FtZSBvcmRlciBhcyBmb3IgQykKCgkgIEFsZXgKCjIwMDctMDUtMDEgMTQ6MTIgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvOiBDTWFrZUxpc3RzLnR4dCwgY2hlY2tfbWFyay5jbWFrZTogRU5IOgoJICBBZGRlZCB0ZXN0IHRvIG1ha2Ugc3VyZSBjdXN0b20gY29tbWFuZHMgYXJlIG5vdCBidWlsdCBtb3JlIHRoYW4KCSAgb25jZSBpbiBhIHNpbmdsZSBidWlsZC4gIFRoaXMgdGVzdHMgZm9yIGEgYnVnIGludHJvZHVjZWQgYnkgb25lCgkgIGZpeCBhbmQgZml4ZWQgYnkgYW5vdGhlciBmaXggZm9yIGJ1ZyM0Mzc3LgoKMjAwNy0wNS0wMSAxMzo1MSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBBIHV0aWxpdHkgdGFyZ2V0CgkgIHNob3VsZCBub3QgcnVuIHRoZSBjdXN0b20gY29tbWFuZHMgZnJvbSBpdHMgc291cmNlIGZpbGVzCgkgIGRpcmVjdGx5LiAgVGhlIHRhcmdldC1sZXZlbCBydWxlIG11c3QgYWRkIGRlcGVuZGVuY2llcyBvbiB0aGUKCSAgZmlsZS1sZXZlbCBjdXN0b20gY29tbWFuZHMgdG8gZHJpdmUgdGhlbS4gIFRoaXMgYnVnIHdhcwoJICBpbnRyb2R1Y2VkIGJ5IHRoZSAiZml4IiB0byBidWcgNDM3Ny4JVGhpcyBhbHNvIHJlc3RvcmVzIHRoZQoJICBkb2N1bWVudGVkIGJlaGF2aW9yIHRoYXQgUFJFX0JVSUxEIHJ1bGVzIGFyZSB0cmVhdGVkIGFzIFBSRV9MSU5LCgkgIHJ1bGVzIG9uIG5vbi1WUyBnZW5lcmF0b3JzLiAgQWxzbyBmaXhlZCBjdXN0b20gY29tbWFuZAoJICBkZXBlbmRlbmNpZXMgb24gdGhlIHJ1bGUgZmlsZSBidWlsZC5tYWtlIHNvIHRoYXQgY3VzdG9tIGNvbW1hbmRzCgkgIHJlLXJ1biB3aGVuIHRoZSBjb21tYW5kcyB0aGVtc2VsdmVzIGNoYW5nZS4KCjIwMDctMDUtMDEgMTM6MTMgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6CgkgIFNUWUxFOiB0aGUgc2Vjb25kIGNoZWNrIGZvciB1bmFtZSB3YXNuJ3QgaW50ZW5kZWQgdG8gYmUgY29tbWl0dGVkCgoJICBBbGV4CgoyMDA3LTA1LTAxIDEzOjExICBhbGV4CgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlOgoJICBFTkg6IG5ldyB2YXJpYWJsZSBDTUFLRV9UT09MQ0hBSU5fRklMRSB3aGljaCBjYW4gYmUgdXNlZCB0bwoJICBzcGVjaWZ5IGEgY21ha2UgZmlsZSB3aGljaCB3aWxsIGJlIGxvYWRlZCBldmVuIGJlZm9yZSBjbWFrZSB0cmllcwoJICB0byBkZXRlY3QgdGhlIHN5c3RlbSwgc28gcGVvcGxlIGNhbiBzZXQgZS5nLiBDTUFLRV9TWVNURU0gdG8gdGhlCgkgIHZhbHVlIGZvciB0aGVpciB0YXJnZXQgcGxhdGZvcm0uICBPbmx5IGRldGVjdCBDTUFLRV9TWVNURU0gaWYgaXQKCSAgaXNuJ3Qgc2V0IHlldC4KCgkgIEFsZXgKCjIwMDctMDUtMDEgMTM6MDcgIGFsZXgKCgkqIE1vZHVsZXMvOiBDTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwgQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZToKCSAgRU5IOiB1c2UgQ01BS0VfU1lTVEVNX0FORF9DW1hYXV9DT01QSUxFUl9JTkZPX0ZJTEUgZm9yIGxvYWRpbmcKCSAgdGhlIGZpbGUgaW5mbyBmaWxlLCBidXQgZG9uJ3Qgb3ZlcndyaXRlIGl0IGlmIGl0IGhhcyBhbHJlYWR5IGJlZW4KCSAgc3BlY2lmaWVkLiBUaGlzIGlzIG5lZWRlZCBmb3IgY3Jvc3MgY29tcGlsaW5nIHNvIHBlb3BsZSBjYW4KCSAgZXhwbGljaXRlbHkgc2F5IHdoaWNoIGZpbGUgdG8gdXNlIGRlcGVuZGluZyBvbiB0aGVpciB0YXJnZXQKCSAgcGxhdGZvcm0KCgkgIEFsZXgKCjIwMDctMDUtMDEgMTE6NDYgIGFsZXgKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDoKCSAgQlVHOiBmaXggY21ha2UgbGlzdGZpbGUgc3RhY2s6IGlmIGEgZmlsZSBjb3VsZCBub3QgYmUgb3BlbmVkLAoJICByZW1vdmUgaXQgZnJvbSB0aGUgc3RhY2sgKHVzdWFsbHkgQ01ha2VDSW5mb3JtYXRpb24uY21ha2UgYW5kCgkgIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2Ugd2hpY2ggYm90aCBwdXQgTGludXgtZ2NjLmNtYWtlIG9uIHRoZQoJICBzdGFjayB3aXRob3V0IHJlbW92aW5nIGl0IGFnYWluOiBJTkNMVURFKC4uLiBPUFRJT05BTCkgKSBTVFlMRToKCSAgYmV0dGVyIHJlYWRhYmxlIG91dHB1dCBmb3JtYXR0aW5nIG9mIHRoZSBsaXN0ZmlsZSBzdGFjaywgbm93IGluCgkgIHRoZSBzYW1lIG9yZGVyIGFzIGluIGdkYiBvciB3aXRoIGluY2x1ZGUgZmlsZXMKCgkgIEFsZXgKCjIwMDctMDUtMDEgMDQ6MjAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0zMCAxODoxMCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVySWQuY3BwOiBTVFlMRTogQWRkZWQgY29tbWVudCBleHBsYWluaW5nCgkgIGNob2ljZSBvZiBmaWxlIGV4dGVuc2lvbi4KCjIwMDctMDQtMzAgMTg6MDkgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byBpbnN0YWxsCgkgIENNYWtlQ1hYQ29tcGlsZXJJZC5jcHAgc28gdGhhdCBDKysgY29tcGlsZXIgaWRlbnRpZmljYXRpb24gd29ya3MKCSAgaW4gYW4gaW5zdGFsbCB0cmVlLgoKMjAwNy0wNC0zMCAxNzowNSAgYWxleAoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6CgkgIFNUWUxFOiBjb21tZW50IHdoaWNoIHNheXMgd2hpY2ggdmFyaWFibGVzIHRoaXMgbWFjcm8gc2V0cwoKCSAgQWxleAoKMjAwNy0wNC0zMCAxNzowMyAgYWxleAoKCSogTW9kdWxlcy9GaW5kTVBJLmNtYWtlOgoJICBTVFlMRTogdXNlIHRoZSBuZXdlciBGSU5EX1hYWCBzeW50YXgsIHdoaWNoIHNob3VsZCBmaW5kIE1QSSBpbgoJICBldmVuIG1vcmUgZGlyZWN0b3JpZXMgYW5kIGRvZXNuJ3QgcmVxdWlyZSB0byBsaXN0IHN0YW5kYXJkCgkgIGRpcmVjdG9yaWVzIGxpa2UgL3Vzci9saWIsIGV0Yy4KCgkgIEFsZXgKCjIwMDctMDQtMzAgMTY6MDUgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEJVRzogYWxzbyBpbnN0YWxsIENNYWtlUGxhdGZvcm1JZC5oLCBvdGhlcndpc2UgdGhlIGNoZWNrIGZvciB0aGUKCSAgY29tcGlsZXIgaWQgd29ya3Mgb25seSB3aGVuIGJ1aWxkaW5nIGNtYWtlIGl0c2VsZiwgYnV0IG5vdCB3aXRoCgkgIGFuIGluc3RhbGxlZCBjbWFrZQoKCSAgQWxleAoKMjAwNy0wNC0zMCAxMDo1NyAgYWxleAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9Vbml4UGF0aHMuY21ha2U6CgkgIEJVRzogaWYgL29wdC9saWIgYW5kIC9vcHQvY3N3L2xpYiBhcmUgc2VhcmNoZWQgZm9yIGxpYnMsIHRoZW4KCSAgL29wdC9pbmNsdWRlIGFuZCAvb3B0L2Nzdy9pbmNsdWRlIHNob3VsZCBhbHNvIGJlIHNlYXJjaGVkIGZvcgoJICBoZWFkZXJzIChhY2NvcmRpbmcgdG8gZ29vZ2xlIHRoZXkgYWxzbyBleGlzdCkKCgkgIEFsZXgKCjIwMDctMDQtMjkgMjM6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0yOSAwMzowNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTI4IDEyOjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMjggMDk6MzUgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlci5jbWFrZS5pbiwgQ01ha2VDQ29tcGlsZXJJZC5jLAoJICBDTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlLCBDTWFrZVBsYXRmb3JtSWQuaDogRU5IOiBNZXJnaW5nCgkgIENvbXBpbGVySWQgaW1wbGVtZW50YXRpb24gZnJvbSBicmFuY2ggQ01ha2UtTW9kdWxlcy1Db21waWxlcklkIHRvCgkgIHRoZSBtYWluIHRyZWUuICBDaGFuZ2VzIGJldHdlZW4gQ01ha2UtTW9kdWxlcy1Db21waWxlcklkLWJwIGFuZAoJICBDTWFrZS1Nb2R1bGVzLUNvbXBpbGVySWQtbXAxIGFyZSBpbmNsdWRlZC4KCjIwMDctMDQtMjggMDg6MjUgIGtpbmcKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogU1RZTEU6IEZpeGVkIGxpbmUgdG9vCgkgIGxvbmcuCgoyMDA3LTA0LTI3IDEwOjQ0ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEVOSDogSGFyZC1jb2RlZCBwbGF0Zm9ybSBmb3IKCSAgVmlzdWFsIFN0dWRpbyBnZW5lcmF0b3JzLiAgQWRkZWQgVE9ETyBjb21tZW50IGFib3V0IHNldHRpbmcgdGhlCgkgIGNvbXBpbGVyIGlkLgoKMjAwNy0wNC0yNyAxMDoyOSAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6IEJVRzogV2hlbiBwYXNzaW5nIHRoZQoJICBjb21waWxlciBpZCBzb3VyY2UgZmlsZSB0byB0aGUgY29tcGlsZXIsIHRoZSBuYXRpdmUgZmlsZSBwYXRoCgkgIGZvcm1hdCBzaG91bGQgYmUgdXNlZCBvbiB0aGUgY29tbWFuZCBsaW5lLgoKMjAwNy0wNC0yNyAxMDoyNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTI3IDEwOjE5ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXJJZC5jLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwOiBFTkg6IEFkZGVkCgkgIFdhdGNvbSBjb21waWxlciBpZGVudGlmaWVyLgoKMjAwNy0wNC0yNyAwOTo0NiAga2luZwoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVySWQuYywgQ01ha2VDWFhDb21waWxlcklkLmNwcDogQlVHOiBGaXhlZAoJICBmb3IgSFAgY29tcGlsZXJzLgoKMjAwNy0wNC0yNyAwOToyMCAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNvbXBpbGVySWQuY21ha2U6IEJVRzogTmVlZCB0byBzdHJpcCBhbGwKCSAgdGV4dCBiZWZvcmUgYW5kIGFmdGVyIHRoZSBJTkZPIGJsb2NrIGJlY2F1c2UgdGhlIGJpbmFyeSBtYXkKCSAgY29udGFpbiBzdHJpbmcgZGF0YSBsZWFkaW5nIHVwIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHN0cmluZ3MuCgoyMDA3LTA0LTI3IDA5OjA5ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEJVRzogU3RpbGwgbmVlZCB0byBpZGVudGlmeQoJICBjb21waWxlciB1c2luZyBjb21tYW5kIGxpbmUgZm9yIFhjb2RlIGdlbmVyYXRvci4KCjIwMDctMDQtMjcgMDk6MDEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IFNUWUxFOiBBZGQgc29tbWUgY29tbWVudHMKCjIwMDctMDQtMjcgMDg6NTcgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlci5jbWFrZS5pbiwgQ01ha2VDQ29tcGlsZXJJZC5jLAoJICBDTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLCBDTWFrZUNYWENvbXBpbGVySWQuY3BwLAoJICBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDb21waWxlcklkLmNtYWtlLCBDTWFrZVBsYXRmb3JtSWQuaDogRU5IOiBJbml0aWFsCgkgIGNoZWNraW4gb2YgQ29tcGlsZXJJZCBmZWF0dXJlIG9uIENNYWtlLU1vZHVsZXMtQ29tcGlsZXJJZCBicmFuY2guCgkgIFRoaXMgaGVscHMgaWRlbnRpZnkgY29tcGlsZXJzIGFuZCBwbGF0Zm9ybXMgYnkgYWN0dWFsbHkgYnVpbGRpbmcKCSAgYSBzb3VyY2UgZmlsZSBhbmQgdXNpbmcgdGhlIHByZXByb2Nlc3NvciBkZWZpbml0aW9ucyB0byByZWNvZ25pemUKCSAga25vd24gY29tcGlsZXJzLgoKMjAwNy0wNC0yNiAyMzoyMCAgYW5keQoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuaDogRU5IOiBJbml0aWFsIGF0dGVtcHQgdG8gZG8gcHl0aG9uCgkgIGNvdmVyYWdlLiBIb3BlZnVsbHkgd2lsbCBub3QgYnJlYWsgY292ZXJhZ2Ugb24gR0NvdgoKMjAwNy0wNC0yNiAyMTo1MCAgYW5keQoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIFNUUklORyBTVFJJUAoJICBjb21tYW5kCgoyMDA3LTA0LTI2IDA5OjU2ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IENPTVA6IEF2b2lkIHdhcm5pbmcuCgoyMDA3LTA0LTI2IDA3OjU4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMjUgMTc6NDggIGtpbmcKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcuCgoyMDA3LTA0LTI1IDE3OjIyICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIEZJTEUoU1RSSU5HUykKCSAgY29tbWFuZC4KCjIwMDctMDQtMjUgMTY6MjIgIGFsZXgKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZToKCSAgU1RZTEU6IGZpeCB0eXBvICJDQ0MiIC0+ICJDQyIsIGFkZCBjb21tZW50cyB3aGljaCB2YXJpYWJsZXMgaXQKCSAgc2V0cwoKCSAgQWxleAoKMjAwNy0wNC0yNSAwNTowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTI0IDE0OjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuaDogRU5IOiBmaXggZG9jcwoKMjAwNy0wNC0yNCAxMjozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggc2VnIGZhdWx0IGluIGNjbWFrZSB3aGVuCgkgIGhpdHRpbmcgY29uZmlndXJlIHR3aWNlCgoyMDA3LTA0LTI0IDAxOjUyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMjMgMTY6NDggIGtpbmcKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuY3h4OiBDT01QOiBBZGRlZCBtaXNzaW5nIGluY2x1ZGUgZm9yIHRpbWUuCgoyMDA3LTA0LTIzIDExOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVN0cmluZ0NvbW1hbmQuY3h4LCBjbVN0cmluZ0NvbW1hbmQuaDogRU5IOiBBZGQgY29tbWFuZAoJICB0byBnZW5lcmF0ZSByYW5kb20gc3RyaW5ncwoKMjAwNy0wNC0yMiAyMzo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTIxIDE4OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMjAgMTE6NTMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtVGVzdHNDWFguY3h4OiBDT01QOiBNYWtlIHN1cmUgZ2NjIDIuOTYKCSAgc3N0cmVhbSBoZWFkZXIgaXMgbm90IHVzZWQuCgoyMDA3LTA0LTIwIDA5OjUwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogQ09NUDogQWRkZWQKCSAgaXN0cmluZ3N0cmVhbTo6Y2xlYXIoKSBtZXRob2QgdG8gZGlzYW1iaWd1YXRlIHRoZSBjYWxsIGZyb20gdXNpbmcKCSAgc3RyaW5nOjpjbGVhciBvciBpc3Ryc3RyZWFtOjpjbGVhci4KCjIwMDctMDQtMjAgMDk6NDkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEJVRzogUmV2ZXJ0aW5nIHByZXZpb3VzIGNoYW5nZS4KCSAgSXQgZGlkIG5vdCBhY2NvdW50IGZvciB0aGUgcG9zc2liaWxpdHkgdGhhdCB0aGUgbG9hZGVkIGNvbW1hbmQKCSAgd2FzIGJ1aWx0IHdpdGggYSBkaWZmZXJlbnQgY29tcGlsZXIuCgoyMDA3LTA0LTIwIDA0OjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMTkgMTI6NTYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0SU9TLmN4eDogQlVHOiBOZWVkIHRvIGNsZWFyIHJlYWQgZmFpbHVyZSB3aGVuCgkgIHN0cmluZyBpcyByZXNldC4KCjIwMDctMDQtMTkgMTI6NTMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0SU9TLmN4eDogRU5IOiBBZGRlZCB0ZXN0aW5nIGZvciBpc3RyaW5nc3RyZWFtCgkgIGFuZCBzdHJpbmdzdHJlYW0uCgoyMDA3LTA0LTE5IDEyOjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfc3RsX3N0cmluZy5oeHguaW46IEJVRzogRml4IHN0cmVhbSBzdGF0ZSBvbgoJICBzdWNjZXNzZnVsbHkgcmVhZGluZyBhIHN0cmluZy4KCjIwMDctMDQtMTkgMTI6MTIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFN0cmluZy5oeHguaW4sIGt3c3lzX2lvc19zc3RyZWFtLmguaW46IENPTVA6IEZpeGVzCgkgIGZvciBXYXRjb20uCgoyMDA3LTA0LTE5IDEyOjExICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IENPTVA6IFNraXAgdGVzdEF1dG9QdHIgYW5kCgkgIHRlc3RIYXNoU1RMIG9uIFdhdGNvbS4gIFRoZXkgYXJlIGhvcGVsZXNzLgoKMjAwNy0wNC0xOSAxMjoxMSAga2luZwoKCSogU291cmNlL2t3c3lzL0VuY29kZUV4ZWN1dGFibGUuYzogQ09NUDogTmVlZCB0byBpbmNsdWRlIGhlYWRlciBmb3IKCSAgdW5saW5rIGZ1bmN0aW9uLgoKMjAwNy0wNC0xOSAxMTozMiAga2luZwoKCSogVGVzdHMvUGx1Z2luL3NyYy86IGV4YW1wbGVfZXhlLmN4eCwgZXhhbXBsZV9tb2RfMS5jOiBFTkg6IEFkZGVkCgkgIGZ1bmN0aW9uIGNhbGwgYXJndW1lbnQgdG8gbW9kdWxlIGZ1bmN0aW9uIHRvIG1ha2Ugc3VyZSBjYWxsaW5nCgkgIGNvbnZlbnRpb24gbWF0Y2hlcyBvbiBsb29rdXAuICBGaXhlZCBmb3IgV2F0Y29tLgoKMjAwNy0wNC0xOSAxMTozMSAga2luZwoKCSogU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yIFdhdGNvbQoJICBjb21waWxlci4gIEFkZGVkIFRPRE8gY29tbWVudCBhYm91dCBjYWxsaW5nIGNvbnZlbnRpb25zLgoKMjAwNy0wNC0xOSAxMToyMyAga2luZwoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogRU5IOiBSZW1vdmVkIGNvZGUgdW5uZWNlc3NhcnkKCSAgbm93IHRoYXQgRHluYW1pY0xvYWRlciBpcyBpbXBsZW1lbnRlZCBiZXR0ZXIuCgoyMDA3LTA0LTE5IDExOjIxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwga3dzeXNfc3RsX3N0cmluZy5oeHguaW46IEVOSDoKCSAgRml4ZWQgc3RsIHN0cmluZyBzdHJlYW1pbmcgb3BlcmF0b3JzIGZvciBXYXRjb20uCgoyMDA3LTA0LTE5IDA0OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMTggMDk6NTYgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbi4KCSAgV2hlbiB1c2luZyBhIGxvYWRlcl9mbGFnIGxpbmsgaXRlbSB0aGUgZnVsbCBwZXItY29uZmlndXJhdGlvbgoJICBwYXRoIHNob3VsZCBiZSB1c2VkLglUaGUgZnVsbFBhdGhMaWJzIHJldHVybmVkIHNob3VsZCByZWZlciB0bwoJICB0aGUgaW1wb3J0IGxpYnJhcnkgaWYgaXQgd2FzIHVzZWQuICBTaW5jZSB0aGUgZnVsbCBwYXRocyBhcmUgdXNlZAoJICBmb3IgZGVwZW5kZW5jaWVzIHRoZSBleGVjdXRhYmxlIHVzZWQgd2l0aCBsb2FkZXJfZmxhZyBzaG91bGQgYmUKCSAgcmV0dXJuZWQgYWxzby4KCjIwMDctMDQtMTggMDQ6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0xOCAwMDoxMiAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IFBsdWdpbiB0ZXN0IHNob3VsZCBub3cgd29yayBvbiBRTlguCgoyMDA3LTA0LTE4IDAwOjExICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1FOWC5jbWFrZTogRU5IOiBBZGQgQ01BS0VfRVhFX0VYUE9SVFNfQ19GTEFHIGFuZAoJICBDTUFLRV9FWEVfRVhQT1JUU19DWFhfRkxBRyB0byBzdXBwb3J0IGV4ZWN1dGFibGVzIHRoYXQgZXhwb3J0CgkgIHN5bWJvbHMuCgoyMDA3LTA0LTE4IDAwOjA0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogQ2Fubm90IGVzY2FwZSBsaW5rIGl0ZW1zCgkgIGJlY2F1c2Ugc29tZSBuZWVkIHRoZSBzcGFjZXMgdG8gc2VwYXJhdGUgYXJndW1lbnRzLiAgSW5zdGVhZCBqdXN0CgkgIGVzY2FwZSB0aGUgYXJndW1lbnQgdG8gdGhlIGxvYWRlciBmbGFnLgoKMjAwNy0wNC0xNyAyMzo0MCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IExpbnV4LmNtYWtlLCBGcmVlQlNELmNtYWtlOiBFTkg6IEFkZGVkCgkgIENNQUtFX0VYRV9FWFBPUlRTX0NfRkxBRyBhbmQgQ01BS0VfRVhFX0VYUE9SVFNfQ1hYX0ZMQUcgdG8KCSAgc3VwcG9ydCBleGVjdXRhYmxlcyB0aGF0IGV4cG9ydCBzeW1ib2xzLgoKMjAwNy0wNC0xNyAyMzozOSAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZAoJICBwbGF0Zm9ybSB2YXJpYWJsZSBDTUFLRV9FWEVfRVhQT1JUU188bGFuZz5fRkxBRyB0byBhZGQgYSBsaW5rZXIKCSAgZmxhZyB3aGVuIGJ1aWxkaW5nIGV4ZWN1dGFibGVzIHRoYXQgaGF2ZSB0aGUgRU5BQkxFX0VYUE9SVFMKCSAgcHJvcGVydHkgc2V0LgoKMjAwNy0wNC0xNyAyMzoyNyAga2luZwoKCSogVGVzdHMvUGx1Z2luL0NNYWtlTGlzdHMudHh0OiBDT01QOiBOZWVkIHRvIGVuYWJsZSBhbnNpIEMKCSAgZmVhdHVyZXMuCgoyMDA3LTA0LTE3IDIzOjE2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogRml4IENvbXB1dGVMaW5rSW5mb3JtYXRpb24gZm9yCgkgIG5vbi1saW5rZWQgdGFyZ2V0cy4gIFdoeSBpcyBpdCBjYWxsZWQgZm9yIHV0aWxpdHkgdGFyZ2V0cyBhbnl3YXk/CgoyMDA3LTA0LTE3IDE4OjE4ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1BsdWdpbi9pbmNsdWRlL2V4YW1wbGUuaDogRU5IOiBGaXhlZAoJICBQbHVnaW4gdGVzdCBvbiBDeWd3aW4uCgoyMDA3LTA0LTE3IDE2OjQyICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEJVRzogRGlzYWJsZSBQbHVnaW4gdGVzdCBvbiBDeWd3aW4gdW50aWwKCSAgaXQgaXMgaW1wbGVtZW50ZWQuCgoyMDA3LTA0LTE3IDE2OjM0ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmUtZW5hYmxpbmcgUGx1Z2luIHRlc3Qgbm93IHRoYXQgaXQKCSAgc2hvdWxkIHdvcmsgb24gTWFjT1NYLiAgSSB3aWxsIGxldCBpdCBydW4gb25lIG5pZ2h0IHRvIHNlZSB3aGF0CgkgIHBsYXRmb3JtcyBhcmUgc3RpbGwgbm90IGltcGxlbWVudGVkLglDdXJyZW50bHkgaXQgaXMgbm90IHJ1biBvbgoJICBRTlggYmVjYXVzZSBpdCBpcyBrbm93biB0byBub3QgYmUgaW1wbGVtZW50ZWQgdGhlcmUuCgoyMDA3LTA0LTE3IDE2OjE5ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogRU5IOiBBZGRlZAoJICBDTUFLRV9TSEFSRURfTU9EVUxFX0xPQURFUl9DX0ZMQUcgYW5kCgkgIENNQUtFX1NIQVJFRF9NT0RVTEVfTE9BREVSX0NYWF9GTEFHIHRvIHN1cHBvcnQgbGlua2luZyBwbHVnaW5zIHRvCgkgIGV4ZWN1dGFibGVzLgoKMjAwNy0wNC0xNyAxNjoxMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZGVkIHVzZSBvZiBwbGF0Zm9ybSB2YXJpYWJsZQoJICBDTUFLRV9TSEFSRURfTU9EVUxFX0xPQURFUl88bGFuZz5fRkxBRyB0byBhZGQgYSBzcGVjaWFsIGZsYWcgd2hlbgoJICBsaW5raW5nIGEgcGx1Z2luIHRvIGFuIGV4ZWN1dGFibGUgdGhhdCBsb2FkcyBpdC4KCjIwMDctMDQtMTcgMTU6MDYgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBEaXNhYmxlIFBsdWdpbiB0ZXN0IHVudGlsIGl0IHdvcmtzCgkgIGV2ZXJ5d2hlcmUuCgoyMDA3LTA0LTE3IDE0OjA4ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgdGVzdCBmb3IgZXhlY3V0YWJsZXMgd2l0aAoJICBwbHVnaW5zIHRoYXQgdXNlIGFuIEFQSSBleHBvcnRlZCBieSB0aGUgZXhlY3V0YWJsZSBpdHNlbGYuCgoyMDA3LTA0LTE3IDEzOjUyICBraW5nCgoJKiBUZXN0cy9QbHVnaW4vOiBDTWFrZUxpc3RzLnR4dCwgc3JjL2V4YW1wbGVfZXhlLmN4eCwKCSAgc3JjL2V4YW1wbGVfZXhlLmguaW46IEVOSDogQ29uZmlndXJlIGxvY2F0aW9uIG9mIHBsdWdpbiBmaWxlcyBzbwoJICB0aGF0IHRoZSBleGVjdXRhYmxlIGNhbiBydW4gd2l0aCBhbnkgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KCjIwMDctMDQtMTcgMTM6NDMgIGtpbmcKCgkqIFRlc3RzL1BsdWdpbi86IENNYWtlTGlzdHMudHh0LCBpbmNsdWRlL2V4YW1wbGUuaCwKCSAgc3JjL2V4YW1wbGVfZXhlLmN4eCwgc3JjL2V4YW1wbGVfbW9kXzEuYzogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBleGVjdXRhYmxlcyB3aXRoIHBsdWdpbnMgdGhhdCB1c2UgYW4gQVBJIGV4cG9ydGVkIGJ5IHRoZQoJICBleGVjdXRhYmxlIGl0c2VsZi4KCjIwMDctMDQtMTcgMDQ6NDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0xNiAwNDowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTE1IDExOjU2ICBhbmR5CgoJKiBVdGlsaXRpZXMvY21jdXJsL1Rlc3Rpbmcvc2VwaGVhZGVycy5jOiBFTkg6IEZpeCBvbGQgYXBpCgoyMDA3LTA0LTE1IDAzOjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMTQgMDI6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0xMyAxMDoyMiAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogYmV0dGVyIHByb2dyZXNzCgkgIGZvciBhbnkgZGlyZWN0b3J5IHRoYXQgaXMgYSBwcm9qZWN0CgoyMDA3LTA0LTEzIDAxOjA2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMTIgMTU6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZhcmlhYmxlV2F0Y2hDb21tYW5kLmN4eDogU1RZTEU6IEZpeCBsaW5lIGxlbmd0aHMKCjIwMDctMDQtMTIgMTU6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogc29tZSBjb2RlIGNvbnNvbGlkYXRpb24KCSAgYW5kIGNsZWFudXAKCjIwMDctMDQtMTIgMTQ6MjEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCBwcm9ncmVzcyBmb3IKCSAgRU5DTFVERV9GT1JNX0FMTCBjYXNlcyB1c2luZyBuZXcgcHJvamVjdCB0byB0YXJnZXQgbWFwLiBPbmx5CgkgIGZpeGVzIGl0IGZvciB0aGUgdG9wIGxldmVsIGFsbCB0YXJnZXQKCjIwMDctMDQtMTIgMTA6NTYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBBZGRlZCBLV1NZU1BFX0RFQlVHIG1hY3JvIHRvCgkgIHByaW50IGRlYnVnZ2luZyB0cmFjZSBpbmZvcm1hdGlvbi4gIEFkZGVkIFRPRE8gY29tbWVudCBleHBsYWluaW5nCgkgIHdoeSBwcm9jZXNzIGV4ZWN1dGlvbiBjYW4gc3RpbGwgaGFuZyB3aGVuIGEgZ3JhbmRjaGlsZCBrZWVwcyB0aGUKCSAgb3V0cHV0IHBpcGVzIG9wZW4uCgoyMDA3LTA0LTExIDE3OjIyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMTEgMTU6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21WYXJpYWJsZVdhdGNoLmN4eCwKCSAgU291cmNlL2NtVmFyaWFibGVXYXRjaC5oLCBTb3VyY2UvY21WYXJpYWJsZVdhdGNoQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZhcmlhYmxlV2F0Y2hDb21tYW5kLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFRlc3RzL0NNYWtlVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NNYWtlVGVzdHMvVmFyaWFibGVXYXRjaFRlc3QuY21ha2UuaW46IEVOSDogQWRkIHZhcmlhYmxlCgkgIHdhdGNoIGNvbW1hbmQKCjIwMDctMDQtMTEgMTA6MDAgIGtpbmcKCgkqIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lLXRvby1sb25nLgoKMjAwNy0wNC0xMCAyMTo0NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTEwIDE3OjEyICB1dGthcnNoMQoKCSogVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dDogRU5IOiBNZXJnaW5nIGJyYW5jaAoJICBQVkVFLUVSREMtU2V0dXAtNC0zLTIwMDcgdG8gbWFpbiB0cmVlLiBDaGFuZ2VzIGJldHdlZW4KCSAgUFZFRS1FUkRDLVNldHVwLTQtMy0yMDA3LWJwIGFuZCBQVkVFLUVSREMtU2V0dXAtNC0zLTIwMDctbXAxIGFyZQoJICBpbmNsdWRlZC4KCjIwMDctMDQtMTAgMTY6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5oOiBCVUc6IFdoZW4gYSBub24tY2FjaGUgdmFyaWFibGUgaXMgbWFya2VkCgkgIGFzIGFkdmFuY2UgZG8gbm90IHVzZSB0aGUgY21NYWtlZmlsZSBpbXBsZW1lbnRhdGlvbiBvZgoJICBBZGRDYWNoZURlZmluaXRpb24gdG8gYXZvaWQgcmVtb3ZpbmcgdGhlIG1ha2VmaWxlIGRlZmluaXRpb24uCgoyMDA3LTA0LTEwIDE1OjU1ICBraW5nCgoJKiBTb3VyY2UvY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuY3h4OiBCVUc6IFdoZW4gYSBub24tY2FjaGUKCSAgdmFyaWFibGUgaXMgbWFya2VkIGFzIGFkdmFuY2UgZG8gbm90IHVzZSB0aGUgY21NYWtlZmlsZQoJICBpbXBsZW1lbnRhdGlvbiBvZiBBZGRDYWNoZURlZmluaXRpb24gdG8gYXZvaWQgcmVtb3ZpbmcgdGhlCgkgIG1ha2VmaWxlIGRlZmluaXRpb24uCgoyMDA3LTA0LTEwIDE0OjU0ICBiYXJyZQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBFTkg6IHRoaXMgdmFyaWFibGUgb3ZlcnJpZGVzIGFsbCBQUk9KRUNUX1VSTC4KCSAgQ2hlY2sgdGhlIGRhc2hib2FyZCwgYWxsIHByb2plY3RzIGhhdmUgdGhlIHdyb25nIFVSTCBpbiB0aGVpcgoJICAiSG9tZSIgYnV0dG9uLiBPdGhlciB2YXJpYWJsZXMgKGxpa2UgUk9MTFVQX1VSTCkgd2VyZSBtb3ZlZCBhCgkgIHdoaWxlIGFnbywgZm9yIHNvbWUgcmVhc29ucyB0aGlzIG9uZSBpcyBzdGlsbCBoZXJlLgoKMjAwNy0wNC0xMCAxMzowOSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oOiBCVUc6IFRoZSBBTExfQlVJTEQgdGFyZ2V0IHNob3VsZAoJICBub3QgaGF2ZSBhbnkgY29tbWFuZCBsaW5lcyBzbyB0aGF0IGl0IGlzIG5vdCBhbHdheXMgY29uc2lkZXJlZAoJICBvdXQgb2YgZGF0ZS4JTW92ZWQgdGhlICdCdWlsZCBhbGwgcHJvamVjdHMnIG1lc3NhZ2UgaW50byB0aGUKCSAgZGVzY3JpcHRpb24gZmllbGQgaW5zdGVhZCBvZiBhbiBlY2hvIGluIHRoZSBjb21tYW5kIGZpZWxkLiAgTW92ZWQKCSAgY29tbW9uIGltcGxlbWVudGF0aW9uIG9mIEdlbmVyYXRlIGZvciBWUzYgYW5kIFZTNyBpbnRvIHRoZQoJICBzdXBlcmNsYXNzIHRvIGF2b2lkIGR1cGxpY2F0ZSBjb2RlIGZvciB0aGUgQUxMX0JVSUxEIHRhcmdldC4KCSAgVGhpcyBhZGRyZXNzZXMgYnVnIzQ1NTYuCgoyMDA3LTA0LTEwIDExOjI2ICBhbmR5CgoJKiBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBFTkg6IE5vIHJlYXNvbiB0byBzZWFyY2ggZm9yCgkgIFVDQi4gTGV0IG1lIGtub3cgaWYgYW55Ym9keSBzdGlsbCBoYXMgdWNiCgoyMDA3LTA0LTEwIDExOjIyICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZCBvcHRpb24KCSAgQ01BS0VfSU5TVEFMTF9TT19OT19FWEUgb24gbGludXggdG8gY2hvb3NlIHdoZXRoZXIgdGhlIGRlZmF1bHQKCSAgcGVybWlzc2lvbnMgZm9yIHNoYXJlZCBsaWJyYXJpZXMgaW5jbHVkZSB0aGUgZXhlY3V0YWJsZSBiaXQuCgkgIFRoaXMgaXMgbmVjZXNzYXJ5IHRvIHN1cHBvcnQgdGhlIGNvbmZsaWN0aW5nIHBvbGljaWVzIG9mIERlYmlhbgoJICBhbmQgRmVkb3JhLiAgVGhlc2UgY2hhbmdlcyBhZGRyZXNzIGJ1ZyM0ODA1LgoKMjAwNy0wNC0xMCAwOTo1NCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21UYXJnZXQuY3h4OiBFTkg6IGFkZGVkCgkgIGludGVybmFsIHRhcmdldCBwcm9wZXJ0eSBmb3IgdGhlIG5hbWUgb2YgdGhlIHByb2plY3QgZmlsZQoKMjAwNy0wNC0xMCAwODo0OSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IFNUWUxFOiBBZGRlZCBjb21tZW50CgkgIGFib3V0IHdoeSBkZXBlbmRlbmNpZXMgbmVlZCB0byBiZSBjaGFpbmVkIHRvIGNsYXJpZnkgY29kZS4KCjIwMDctMDQtMTAgMDg6MzYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vTmV0QlNELmNtYWtlOiBFTkg6IEVuYWJsZWQgdXNlIG9mIHNvbmFtZSBhbmQKCSAgdGhlcmVmb3JlIHZlcnNpb25pbmcgc3ltbGlua3MuICBQYXRjaCBpcyBmcm9tIGJ1ZyM0NTU4LgoKMjAwNy0wNC0wOSAyMToyNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTA4IDIxOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMDcgMjE6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0wNiAyMTo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTA1IDIxOjU3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMDUgMDk6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogU1RZTEU6IEZpeCBsaW5lLXRvby1sb25nLgoKMjAwNy0wNC0wNCAxNzowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTA0IDE2OjI4ICBhbmR5CgoJKiBVdGlsaXRpZXMvRG94eWdlbi9kb3h5ZmlsZS5pbjogU1RZTEU6IERvIGRveHlnZW4gZm9yIENQYWNrCgoyMDA3LTA0LTA0IDE1OjU4ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlOiBCVUc6IFJldmVydCBiYWNrIHRvIDEuMTQKCjIwMDctMDQtMDQgMTU6NTcgIGFuZHkKCgkqIE1vZHVsZXMvOiBDaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwgQ2hlY2tDU291cmNlUnVucy5jbWFrZToKCSAgQlVHOiBSZXZlcnQgYmFjayB0byAxLjQKCjIwMDctMDQtMDQgMTQ6NDkgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oLAoJICBUZXN0cy9EZXBlbmRlbmN5L1R3by9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9Ud28vVHdvU3JjLmMsCgkgIFRlc3RzL0RlcGVuZGVuY3kvVHdvL1R3b0N1c3RvbVNyYy5jLAoJICBUZXN0cy9EZXBlbmRlbmN5L1R3by90d28tdGVzdC5oLmluOiBCVUc6IEZpeCB1dGlsaXR5IGRlcGVuZGVuY2llcwoJICBmb3Igc3RhdGljIGxpYnJhcmllcyBpbiBWUyBnZW5lcmF0b3JzLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzQ3ODkuCgoyMDA3LTA0LTA0IDEzOjQzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IEJVRzogZml4IGZvciBidWcgNDYwNQoKMjAwNy0wNC0wNCAxMzo0MSAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEZpeCBjb3B5cmlnaHQgeWVhcgoKMjAwNy0wNC0wNCAxMzowNiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBDT01QOiBGaXgga3dzdHlsZQoKMjAwNy0wNC0wNCAxMzowNiAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLCBDaGVja0NTb3VyY2VSdW5zLmNtYWtlOgoJICBDT01QOiBGaXgga3dzdHlsZVNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eAoKMjAwNy0wNC0wNCAxMjowNSAgYW5keQoKCSogU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4OiBCVUc6IE5vIG5lZWQgZm9yIHRoZSBiYWNrd2FyZAoJICBjb21wYXRpYmlsaXR5IHZhcmlhYmxlIHdhcm5pbmcKCjIwMDctMDQtMDQgMTI6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGQgdmFyaWFibGUgZm9yIHRoZSBjdXJyZW50IGxpc3QKCSAgZmlsZQoKMjAwNy0wNC0wNCAxMToyMiAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oOiBFTkg6IEFkZGVkCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yIGFzIHN1cGVyY2xhc3MgdG8gYWxsIFZTIGdsb2JhbAoJICBnZW5lcmF0b3JzLgoKMjAwNy0wNC0wMyAyMzoxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTA0LTAzIDAzOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDQtMDIgMDI6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wNC0wMSAwMjo0MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTMxIDAyOjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMzAgMTA6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBzdXJlIGRlZmF1bHQgL1N5c3RlbQoJICBmcmFtZXdvcmsgaXMgbm90IGFkZGVkIHdpdGggLUYKCjIwMDctMDMtMzAgMDI6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yOSAwMjo0MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTI4IDExOjA2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogQlVHOiBldmVuIHNhZmVyIGNoZWNraW5nCgkgIG9mIHJldHVybiB2YWx1ZQoKMjAwNy0wMy0yOCAxMDo1OCAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBCVUc6IGZpeCBjaGVja2luZyBvZiB0aGUKCSAgcmV0dXJuIHZhbHVlIGZvciBhIGJ1aWxkCgoyMDA3LTAzLTI4IDAyOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMjcgMjM6MTUgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogUmVzdG9yZWQgc2hhcmVkIGxvY2FsCgkgIHZhcmlhYmxlIHJlbW92ZWQgYnkgcHJldmlvdXMgY2hhbmdlLgoKMjAwNy0wMy0yNyAyMzoxMyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6IENyZWF0ZWQgbWV0aG9kCgkgIGNtVGFyZ2V0OjpHZXRFeHBvcnRNYWNybyB0byBjZW50cmFsaXplIGNvbXB1dGF0aW9uIG9mIHRoZSBleHBvcnQKCSAgc3ltYm9sIG5hbWUuCVRoaXMgcmVtb3ZlcyBkdXBsaWNhdGUgY29kZSBmcm9tIGFsbCB0aGUKCSAgZ2VuZXJhdG9ycy4gIEFsc28gZW5hYmxlZCB0aGUgZXhwb3J0IGRlZmluaXRpb24gZm9yIGV4ZWN1dGFibGUKCSAgdGFyZ2V0cyB3aXRoIHRoZSBFTkFCTEVfRVhQT1JUUyBwcm9wZXJ0eSBzZXQuCgoyMDA3LTAzLTI3IDAyOjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMjYgMDI6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yNSAwMjo1MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTI0IDE0OjEyICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogbmVlZAoJICBrd3N5cycgR2xvYiBpbiBWVEsgNS4wCgoyMDA3LTAzLTI0IDE0OjA0ICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIEdsb2IuY3h4LCBHbG9iLmh4eC5pbjogRU5IOiBuZWVkCgkgIGt3c3lzJyBHbG9iIGluIFZUSyA1LjAKCjIwMDctMDMtMjQgMDI6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yMyAxNjozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IGZpeCBwcm9ibGVtIHdpdGggbmV3IGN1cmxfZ2V0ZGF0ZSBhbmQKCSAgY3Rlc3QKCjIwMDctMDMtMjMgMDI6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yMiAwOTo0NSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLXdjbDM4Ni5jbWFrZTogRU5IOiBBZGRlZCB0YXJnZXQgcHJvcGVydHkKCSAgRU5BQkxFX0VYUE9SVFMgZm9yIGV4ZWN1dGFibGUgdGFyZ2V0cy4gIEl0IGVuYWJsZXMgdGhlCgkgIGV4ZWN1dGFibGVzIGZvciBsaW5raW5nIGJ5IGxvYWRhYmxlIG1vZHVsZXMgdGhhdCBpbXBvcnQgc3ltYm9scwoJICBmcm9tIHRoZSBleGVjdXRhYmxlLglUaGlzIGZpbmlzaGVzIHRoZSBleGVjdXRhYmxlIGltcG9ydCBsaWJyYXJ5CgkgIHN1cHBvcnQgbWVudGlvbmVkIGluIGJ1ZyAjNDIxMC4KCjIwMDctMDMtMjIgMDI6MzQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yMSAxMzo0OSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IHR5cG8gaW4gaWYgdGVzdAoKMjAwNy0wMy0yMSAwNzoxNiAga2luZwoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvOiBDTWFrZUxpc3RzLnR4dCwgc2ltcGxlLmN4eDoKCSAgQlVHOiBEaXNhYmxlIGRlZXAtc291cmNlIHRlc3Qgb24gV2F0Y29tIHVudGlsIGl0IGNhbiBiZSBmaXhlZC4KCSAgVGhpcyBpcyBhIG5ldyBmZWF0dXJlIGZvciBvdGhlciBnZW5lcmF0b3JzIGFueXdheS4KCjIwMDctMDMtMjEgMDI6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0yMCAxNTo1MSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtY3VybC9zdHJlcXVhbC5jOiBFTkg6IHNlY29uZCB0cnkgdG8gZml4IHFueCBidWlsZAoJICBwcm9ibGVtCgoyMDA3LTAzLTIwIDE1OjQ5ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21jdXJsL3N0cmVxdWFsLmM6IEVOSDogdHJ5IHRvIGZpeCBxbnggYnVpbGQgcHJvYmxlbQoKMjAwNy0wMy0yMCAxNDo1MiAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IHRyeSBtYXJraWduIG5vbiB6ZXJvCgkgIHJldHVybiB2YWx1ZXMgYXMgd2FybmluZ3MgZm9yIG1ha2UgcHJvZ3JhbXMKCjIwMDctMDMtMjAgMTQ6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiB0cnkgbWFya2lnbiBub24gemVybwoJICByZXR1cm4gdmFsdWVzIGFzIHdhcm5pbmdzIGZvciBtYWtlIHByb2dyYW1zCgoyMDA3LTAzLTIwIDE0OjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogYWRkIGFub3RoZXIgZXJyb3IKCSAgcmVnZXhwCgoyMDA3LTAzLTIwIDEzOjM0ICBraW5nCgoJKiBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dDogQlVHOiBSZWR1Y2UKCSAgbG9uZyBzb3VyY2UgZmlsZSBuYW1lIGxlbmd0aCBmb3IgV01ha2UuCgoyMDA3LTAzLTIwIDEyOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggY292ZXJpdHkKCSAgZXJyb3IsIG51bGwgY2hlY2sgYWZ0ZXIgdXNhZ2UgZml4CgoyMDA3LTAzLTIwIDEyOjMyICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogQUlYLmNtYWtlLCBRTlguY21ha2U6IEVOSDogYWRkIGMrKyBmbGFnIHdoZW4KCSAgY29tcGlsaW5nIGMrKyBjb2RlIG1lcmdlIGZyb20gbWFpbiB0cmVlCgoyMDA3LTAzLTIwIDExOjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogbWlub3IgYWRkaXRpb25hbCBlcnJvciBvdXRwdXQKCjIwMDctMDMtMjAgMDk6NTEgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9jbWN1cmwvOiBDTWFrZUxpc3RzLnR4dCwgY29uZmlnLmguaW4sCgkgIFBsYXRmb3Jtcy9XaW5kb3dzQ2FjaGUuY21ha2U6IEJVRzogd2FzIG5vdCBzZXR0aW5nIEhBVkVfUFJPQ0VTU19ICgkgIHByb3Blcmx5CgoyMDA3LTAzLTIwIDA5OjE0ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IEJVRzogRGlzYWJsZSBjcmVhdGlvbiBvZgoJICBpbXBvcnQgbGlicmFyaWVzIGZvciBleGVjdXRhYmxlcyBvbiBCb3JsYW5kIHVudGlsIGl0IGNhbiBiZSBtYWRlCgkgIG9wdGlvbmFsLiAgT3RoZXJ3aXNlIGFsbCBleGVjdXRhYmxlcyBnZXQgYSAubGliIHdpdGggdGhlIHNhbWUKCSAgbmFtZSB3aGljaCBpcyB1bmV4cGVjdGVkIGJlaGF2aW9yIGZvciB1c2Vycy4KCjIwMDctMDMtMjAgMDg6MTYgIGtpbmcKCgkqIFRlc3RzL091dE9mU291cmNlL091dE9mU291cmNlU3ViZGlyL0NNYWtlTGlzdHMudHh0OiBCVUc6IFdvcmsKCSAgYXJvdW5kIFZTOCBjb252ZXJzaW9uIHRvIGEgcmVsYXRpdmUgcGF0aCBmb3IgdGhlIGxvbmcgc291cmNlCgkgIG5hbWUuICBJdCB0YWtlcyB0aGUgbmljZSBmdWxsIHBhdGggd2UgZ2l2ZSBpdCwgY29udmVydHMgdG8KCSAgcmVsYXRpdmUsIGFuZCB0aGVuIHJlcGFja3MgcmVsYXRpdmUgb24gdG9wIG9mIHRoZSBidWlsZCBkaXJlY3RvcnkKCSAgcmVzdWx0aW5nIGluIGEgcGF0aCBsb25nZXIgdGhhbiBpdHMgb3duIG1heHBhdGggZXZlbiB0aG91Z2ggdGhlCgkgIG9yaWdpbmFsIHBhdGggZ2l2ZW4gd2FzIHNob3J0IGVub3VnaC4gIEV2ZW4gVlM2IGRlYWx0IHdpdGggaXQKCSAgYmV0dGVyLgoKMjAwNy0wMy0yMCAwMjo1MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTE5IDEzOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY3Rlc3QuY3h4LAoJICBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5oOiBFTkg6IHN1cHBvcnQgZm9yCgkgIC0tYnVpbGQtY29uZmlnLXNhbXBsZSBmZWF0dXJlICMxMDIyCgoyMDA3LTAzLTE5IDEwOjAwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2UsIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IEFkZGVkCgkgIHN1cHBvcnQgZm9yIGltcG9ydCBsaWJyYXJpZXMgY3JlYXRlZCBieSBleGVjdXRhYmxlIGFuZCBtb2R1bGUKCSAgdGFyZ2V0cy4gIFRoZSBtb2R1bGUgaW1wb3J0IGxpYnJhcmllcyBzaG91bGQgbmV2ZXIgYmUgdXNlZCBidXQKCSAgc29tZSB3aW5kb3dzIGNvbXBpbGVycyBhbHdheXMgY3JlYXRlIHRoZW0gZm9yIC5kbGwgZmlsZXMgc2luY2UKCSAgdGhlcmUgaXMgbm8gZGlzdGluY3Rpb24gZnJvbSBzaGFyZWQgbGlicmFyaWVzIG9uIHRoYXQgcGxhdGZvcm0uCgkgIFRoZSBleGVjdXRhYmxlIGltcG9ydCBsaWJyYXJpZXMgbWF5IGJlIHVzZWQgdG8gY3JlYXRlIG1vZHVsZXMKCSAgdGhhdCB3aGVuIGxvYWRlZCBiaW5kIHRvIHN5bWJvbHMgZnJvbSB0aGUgZXhlY3V0YWJsZXMuICBUaGlzIGlzCgkgIGFuIGVuaGFuY2VtZW50IHJlbGF0ZWQgdG8gYnVnIzQyMTAgdGhvdWdoIG5vdCByZXF1ZXN0ZWQgYnkgaXQKCSAgZXhwbGljaXRseS4KCjIwMDctMDMtMTkgMDI6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0xOCAxNjoxOCAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC86IHRmdHAuYywgdHJhbnNmZXIuYzogQ09NUDogUmVtb3ZlIHNvbWUgd2FybmluZ3MKCjIwMDctMDMtMTggMDI6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMy0xNyAxMzoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogRU5IOiBmaXggZm9yIGNyYXNoIGZyb20KCSAgbWFpbiB0cmVlCgoyMDA3LTAzLTE3IDEzOjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSBzZWcgZmF1bHQgSQoJICBob3BlCgoyMDA3LTAzLTE3IDAwOjIwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMTYgMTg6NDQgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWN1cmwvY3VybC9jdXJsLmg6IENPTVA6IERvIG5vdCAjaW5jbHVkZSBmaWxlcyBpbnNpZGUKCSAgZXh0ZXJuICJDIiB7fSBibG9ja3MuCgoyMDA3LTAzLTE2IDE4OjA1ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOFdpbjY0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvUHJlY29tcGlsZWRIZWFkZXIvZm9vMS5jLCBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9mb28yLmMsCgkgIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL2Zvb19wcmVjb21waWxlLmMsCgkgIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL2luY2x1ZGUvZm9vLmgsCgkgIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL2luY2x1ZGUvZm9vX3ByZWNvbXBpbGVkLmgsCgkgIFRlc3RzL1NldExhbmcvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NldExhbmcvYmFyLmMsCgkgIFRlc3RzL1NldExhbmcvZm9vLmM6IEVOSDogY2hlY2sgaW4gZml4ZXMgZnJvbSBtYWluIHRyZWUgdG8gY3JlYXRlCgkgIDIuNC43IFJDIDUKCjIwMDctMDMtMTYgMTY6NDggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogTmVlZCB0byBpbmNsdWRlCgkgIHJlbGF0aXZlIHBhdGggdG9wIGluZm9ybWF0aW9uIGluIGRpcmVjdG9yeSBpbmZvcm1hdGlvbiBzbyB0aGF0CgkgIHJlbGF0aXZlIHBhdGggY29udmVyc2lvbiBkdXJpbmcgZGVwZW5kZW5jeSBnZW5lcmF0aW9uIHdvcmtzIHdpdGgKCSAgdGhlIHNhbWUgcnVsZXMgYXMgcHJvamVjdCBnZW5lcmF0aW9uLgoKMjAwNy0wMy0xNiAxNjoyOCAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogVXNlIEdldEV4ZWN1dGFibGVOYW1lcwoJICBpbnN0ZWFkIG9mIEdldExpYnJhcnlOYW1lcyB0byBjb21wdXRlIHRoZSBpbnN0YWxsYXRpb24gZmlsZSBuYW1lCgkgIGZvciBleGVjdXRhYmxlIHRhcmdldHMuCgoyMDA3LTAzLTE2IDE2OjA0ICBraW5nCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IENPTVA6IEZpeCBiYWQgZXNjYXBlCgkgIHNlcXVlbmNlLgoKMjAwNy0wMy0xNiAxNDo1MSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IE1vcmUgcmVndWxhcgoJICBleHByZXNzaW9ucyBmb3IgdmlzdWFsIHN0dWRpbyA2CgoyMDA3LTAzLTE2IDE0OjI4ICBraW5nCgoJKiBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBDT01QOiBJZ25vcmUgd2luZG93cyBzb2NrZXRzIG9uCgkgIGN5Z3dpbi4gIFJlbW92ZSBkdXBsaWNhdGUgc291cmNlIGVudHJ5LgoKMjAwNy0wMy0xNiAxMDozNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eC5pbjogRU5IOiBBZGRlZAoJICBjb21wdXRhdGlvbiBvZiBvYmplY3QgZmlsZSBuYW1lcyB0aGF0IGFyZSBhbG1vc3QgYWx3YXlzIHNob3J0CgkgIGVub3VnaCB0byBub3QgZXhjZWVkIHRoZSBmaWxlc3lzdGVtIHBhdGggbGVuZ3RoIGxpbWl0YXRpb24uICBUaGlzCgkgIGlzIHVzZWZ1bCB3aGVuIGEgc291cmNlIGZpbGUgZnJvbSBvdXRzaWRlIHRoZSB0cmVlIGlzIHJlZmVyZW5jZWQKCSAgd2l0aCBhIGxvbmcgZnVsbCBwYXRoLiAgVGhlIG9iamVjdCBmaWxlIG5hbWUgcHJldmlvdXNseSB3b3VsZAoJICBjb250YWluIHRoZSBlbnRpcmUgcGF0aCB3aGljaCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIGJ1aWxkIG91dHB1dAoJICBkaXJlY3RvcnkgY291bGQgZXhjZWVkIHRoZSBmaWxlc3lzdGVtIGxpbWl0LglOb3cgQ01ha2UKCSAgcmVjb2duaXplcyB0aGlzIGNhc2UgYW5kIHJlcGxhY2VzIGVub3VnaCBvZiB0aGUgYmVnaW5uaW5nIG9mIHRoZQoJICBmdWxsIHBhdGggdG8gdGhlIHNvdXJjZSBmaWxlIHdpdGggYW4gbWQ1c3VtIG9mIHRoZSByZXBsYWNlZAoJICBwb3J0aW9uIHRvIG1ha2UgdGhlIG5hbWUgZml0IG9uIGRpc2suICBUaGlzIGFkZHJlc3NlcyBidWcjNDUyMC4KCjIwMDctMDMtMTYgMDk6MzQgIGFuZHkKCgkqIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvOiBDTWFrZUNvbmZpZ3VyYWJsZUZpbGUuaW4sCgkgIENoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLCBDaGVja0NTb3VyY2VSdW5zLmNtYWtlOiBDT01QOiBGaXgKCSAgc3VwcG9ydCBmb3Igb2xkIENNYWtlICgyLjAgYW5kIDIuMikKCjIwMDctMDMtMTUgMTc6MjIgIGFuZHkKCgkqIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvQ2hlY2tDU291cmNlUnVucy5jbWFrZTogRU5IOiBVbmlmeSB3aXRoCgkgIHRoZSBjb21waWxlIG9uZQoKMjAwNy0wMy0xNSAxNToyMiAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC86IENNYWtlTGlzdHMudHh0LCBhbWlnYW9zLmMsIGFtaWdhb3MuaCwKCSAgYXJwYV90ZWxuZXQuaCwgYmFzZTY0LmMsIGJhc2U2NC5oLCBjb25maWcuaC5pbiwgY29ubmVjdC5jLAoJICBjb25uZWN0LmgsIGNvbnRlbnRfZW5jb2RpbmcuYywgY29udGVudF9lbmNvZGluZy5oLCBjb29raWUuYywKCSAgY29va2llLmgsIGN1cmwuY29weXJpZ2h0LCBjdXJsX21lbW9yeS5oLCBjdXJseC5oLCBkaWN0LmMsIGRpY3QuaCwKCSAgZWFzeS5jLCBlYXN5aWYuaCwgZXNjYXBlLmMsIGVzY2FwZS5oLCBmaWxlLmMsIGZpbGUuaCwgZm9ybWRhdGEuYywKCSAgZm9ybWRhdGEuaCwgZnRwLmMsIGZ0cC5oLCBnZXRkYXRlLmMsIGdldGRhdGUuaCwgZ2V0ZW52LmMsCgkgIGdldGluZm8uYywgZ2V0aW5mby5oLCBndGxzLmMsIGd0bHMuaCwgaGFzaC5jLCBoYXNoLmgsIGhvc3RhcmVzLmMsCgkgIGhvc3Rhc3luLmMsIGhvc3RpcC5jLCBob3N0aXAuaCwgaG9zdGlwNC5jLCBob3N0aXA2LmMsIGhvc3RzeW4uYywKCSAgaG9zdHRocmUuYywgaHR0cC5jLCBodHRwLmgsIGh0dHBfY2h1bmtzLmMsIGh0dHBfY2h1bmtzLmgsCgkgIGh0dHBfZGlnZXN0LmMsIGh0dHBfZGlnZXN0LmgsIGh0dHBfbmVnb3RpYXRlLmMsIGh0dHBfbmVnb3RpYXRlLmgsCgkgIGh0dHBfbnRsbS5jLCBodHRwX250bG0uaCwgaWYyaXAuYywgaWYyaXAuaCwgaW5ldF9udG9hX3IuaCwKCSAgaW5ldF9udG9wLmMsIGluZXRfbnRvcC5oLCBpbmV0X3B0b24uYywgaW5ldF9wdG9uLmgsIGtyYjQuYywKCSAga3JiNC5oLCBsZGFwLmMsIGxkYXAuaCwgbGxpc3QuYywgbGxpc3QuaCwgbWQ1LmMsIG1kNS5oLAoJICBtZW1kZWJ1Zy5jLCBtZW1kZWJ1Zy5oLCBtZW1vcnkuaCwgbXByaW50Zi5jLCBtdWx0aS5jLCBtdWx0aWlmLmgsCgkgIG5ldHJjLmMsIG5ldHJjLmgsIG53bGliLmMsIHBhcnNlZGF0ZS5jLCBwYXJzZWRhdGUuaCwgcHJvZ3Jlc3MuYywKCSAgcHJvZ3Jlc3MuaCwgc2VjdXJpdHkuYywgc2VjdXJpdHkuaCwgc2VsZWN0LmMsIHNlbGVjdC5oLCBzZW5kZi5jLAoJICBzZW5kZi5oLCBzZXR1cC5oLCBzZXR1cF9vbmNlLmgsIHNoYXJlLmMsIHNoYXJlLmgsIHNvY2thZGRyLmgsCgkgIHNvY2tzLmMsIHNvY2tzLmgsIHNwZWVkY2hlY2suYywgc3BlZWRjaGVjay5oLCBzcGxheS5jLCBzcGxheS5oLAoJICBzc2guYywgc3NoLmgsIHNzbGdlbi5jLCBzc2xnZW4uaCwgc3NsdXNlLmMsIHNzbHVzZS5oLCBzdHJkdXAuYywKCSAgc3RyZHVwLmgsIHN0cmVxdWFsLmMsIHN0cmVxdWFsLmgsIHN0cmVycm9yLmMsIHN0cmVycm9yLmgsCgkgIHN0cnRvay5jLCBzdHJ0b2suaCwgc3RydG9vZmZ0LmMsIHN0cnRvb2ZmdC5oLCB0ZWxuZXQuYywgdGVsbmV0LmgsCgkgIHRmdHAuYywgdGZ0cC5oLCB0aW1ldmFsLmMsIHRpbWV2YWwuaCwgdHJhbnNmZXIuYywgdHJhbnNmZXIuaCwKCSAgdXJsLmMsIHVybC5oLCB1cmxkYXRhLmgsIHZlcnNpb24uYywKCSAgQ01ha2UvQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsIENNYWtlL0NoZWNrQ1NvdXJjZVJ1bnMuY21ha2UsCgkgIENNYWtlL090aGVyVGVzdHMuY21ha2UsIFBsYXRmb3Jtcy9XaW5kb3dzQ2FjaGUuY21ha2UsCgkgIGN1cmwvY3VybC5oLCBjdXJsL2N1cmx2ZXIuaCwgY3VybC9lYXN5LmgsIGN1cmwvbXByaW50Zi5oLAoJICBjdXJsL211bHRpLmgsIGN1cmwvc3RkY2hlYWRlcnMuaDogRU5IOiBVcGRhdGUgQ3VybCB0byA3LjE2LjEKCjIwMDctMDMtMTUgMTM6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBjaGFuZ2UgaW4gaG93IHNldCBjYWNoZSBvdmVycmlkZXMKCSAgbG9jYWwgZGVmaW5pdGlvbnMuIFNob3VsZCBtYWlubHkgYmUgYSBOT1AgY2hhbmdlIGZvciBtb3N0IGNhc2VzCgoyMDA3LTAzLTE0IDIxOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMTQgMTY6MzAgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IEVuYWJsZSB1c2Ugb2Yga3dzeXMgTUQ1IGltcGxlbWVudGF0aW9uLgoKMjAwNy0wMy0xNCAxNjoyOSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IFJldmVydGluZyBwcmV2aW91cwoJICBjaGFuZ2VzIHJlbGF0ZWQgdG8gdXNpbmcgYW4gZW1wdHkgc3RyaW5nIGZvciBhIHJlbGF0aXZlIHBhdGggdG8KCSAgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAgVG9vIG1hbnkgcGxhY2VzIHdhbnQgdGhlIC4gdmVyc2lvbi4KCSAgSW5zdGVhZCB3ZSBjYW4ganVzdCBjb252ZXJ0IHRoZSAuIHRvIGFuIGVtcHR5IHN0cmluZyBpbiB0aGUgb25lCgkgIHBsYWNlIHRoYXQgbW90aXZpYXRlZCB0aGUgb3JpZ2luYWwgY2hhbmdlLgoKMjAwNy0wMy0xNCAxNTozNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBXaGVuIHRoZSBjdXJyZW50CgkgIG91dHB1dCBkaXJlY3RvcnkgaXMgYSBsaW5rIGRpcmVjdG9yeSB3ZSBuZWVkIHRvIHJlZmVyZW5jZSBpdCB3aXRoCgkgIHRoZSByZWxhdGl2ZSBwYXRoICIuIiBpbnN0ZWFkIG9mIGFuIGVtcHR5IHJlbGF0aXZlIHBhdGguCgoyMDA3LTAzLTE0IDE1OjEyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgTUQ1LmMsIE1ENS5oLmluLCB0ZXN0RW5jb2RlLmM6CgkgIEVOSDogQWRkZWQgTUQ1IGltcGxlbWVudGF0aW9uIHRvIEtXU3lzLgoKMjAwNy0wMy0xNCAxMzozNiAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IER1cmluZyByZWxhdGl2ZSBwYXRoIGNvbnZlcnNpb24KCSAgaWYgdGhlIHJlbW90ZSBhbmQgdGFyZ2V0IHBhdGhzIGFyZSB0aGUgc2FtZSByZXR1cm4gdGhlIGVtcHR5CgkgIHN0cmluZyBpbnN0ZWFkIG9mICIuIi4KCjIwMDctMDMtMTQgMDk6MzQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogQWxsIGV4ZWN1dGFibGUgYW5kCgkgIGxpYnJhcnkgcHJvamVjdCB0eXBlcyBzaG91bGQgc3BlY2lmeSBhIHByb2dyYW0gZGF0YWJhc2UgZmlsZSBuYW1lCgkgIGZvciBhbGwgY29uZmlndXJhdGlvbnMuICBFdmVuIHdoZW4gZGVidWcgaW5mb3JtYXRpb24gaXMgbm90IHVzZWQKCSAgdGhlIC5wZGIgZmlsZSBzcGVjaWZpZWQgaXMgdXNlZCB0byBjb25zdHJ1Y3QgdGhlIG5hbWUgb2YgYSAuaWRiCgkgIGZpbGUgdGhhdCBleGlzdHMgZm9yIGFsbCBjb25maWd1cmF0aW9ucyB3aGVuIGJ1aWxkaW5nIHdpdGggdGhlIFZTCgkgIElERS4KCjIwMDctMDMtMTMgMTU6MTggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsIGNtQ1BsdWdpbkFQSS5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBFTkg6IHNvbWUgbW9yZSBjbGVhbnVwCgoyMDA3LTAzLTEzIDE0OjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVByb3BlcnR5TWFwLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IGFkZCBwcm9qZWN0CgkgIHRvIHRhcmdldCBtYXAsIG5vdCB1c2VkIHlldCwgYnV0IGNyZWF0ZWQKCjIwMDctMDMtMTMgMTE6NTggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggY2hlY2sgb2YgRVhDTFVERV9GUk9NX0FMTAoJICBwcm9wZXJ0eSB0byB1c2UgYm9vbGVhbiB0eXBlLiAgVGhpcyBpcyByZXF1aXJlZCBmb3IgaW5zdGFsbGF0aW9uCgkgIG9mIHN1YmRpcmVjdG9yaWVzIHRvIHdvcmsuCgoyMDA3LTAzLTEzIDAzOjU3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMTIgMjM6MzYgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IFJlbW92ZSBzcGFjZXMgZnJvbSB0ZXN0CgkgIG91dHB1dCBwYXRocy4gIE5vdCBhbGwgbWFrZSB0b29scyBjYW4gaGFuZGxlIGl0LiAgVGhzCgkgIFN1YkRpclNwYWNlcyB0ZXN0IGlzIG1lYW50IGZvciB0aGF0IHB1cnBvc2UgYW55d2F5LgoKMjAwNy0wMy0xMiAxNjoxMCAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBhZGRlZCByZW1vdmVfZGlyZWN0b3J5IGJ1ZyAyOTM3CgoyMDA3LTAzLTEyIDE0OjE1ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogUHJlc2VydmUgc3ltbGlua3MgZHVyaW5nCgkgIGluc3RhbGxhdGlvbi4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyM0Mzg0LgoKMjAwNy0wMy0xMiAxMzo1MCAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkZWQga3dzeXMKCSAgU3lzdGVtVG9vbHM6OkNyZWF0ZVN5bWxpbmsgYW5kIFN5c3RlbVRvb2xzOjpSZWFkU3ltbGluay4KCjIwMDctMDMtMTIgMTM6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgTUZDRGlhbG9nL0NNYWtlU2V0dXAucmM6IEVOSDogdHlwbwoKMjAwNy0wMy0xMiAxMzoyOCAga2luZwoKCSogVGVzdHMvUHJlY29tcGlsZWRIZWFkZXIvQ01ha2VMaXN0cy50eHQ6IEJVRzogRG8gbm90IHVzZSAvSSBtb2RlCgkgIGluIFZTNi4KCjIwMDctMDMtMTIgMTI6NDQgIGtpbmcKCgkqIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL0NNYWtlTGlzdHMudHh0OiBCVUc6IENsZWFuIHRoZSBwY2ggZHVyaW5nCgkgIG1ha2UgY2xlYW4gc28gdGhhdCB0aGUgdGVzdCBwYXNzZXMgd2hlbiBydW4gbW9yZSB0aGFuIG9uY2UuCgoyMDA3LTAzLTEyIDEyOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IHNtYWxsIGVuY2hhbmNlbWVudCBmb3IgYnVnIDM3NzYuCgoyMDA3LTAzLTEyIDEyOjM1ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhXaW42NEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9DTWFrZUxpc3RzLnR4dDogQlVHOiBTcGxpdCBwcmVjb21waWxlZAoJICBoZWFkZXIgZmxhZ3MgaW50byBhIHNlcGFyYXRlIHBlci1nbG9iYWwtZ2VuZXJhdG9yIGZsYWcgbWFwLiAgVGhpcwoJICBpcyBuZWVkZWQgYmVjYXVzZSB0aGUgZmxhZyBtYXBwaW5ncyBkaWZmZXIgYWNyb3NzIFZTIElERQoJICB2ZXJzaW9ucy4gIFRoaXMgZml4ZXMgYnVnIzM1MTIgZm9yIFZTOCB3aGVyZSBhcyB0aGUgcHJldmlvdXMgZml4CgkgIG9ubHkgd29ya2VkIGZvciBWUzcuCgoyMDA3LTAzLTEyIDExOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IFhDb2RlIGZpeAoKMjAwNy0wMy0xMiAxMDoyNiAgbWFydGluawoKCSogU291cmNlLzogY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbVN1YmRpckNvbW1hbmQuY3h4LCBjbVRhcmdldC5oOiBFTkg6IHNvbWUgY29kZSBjbGVhbnVwCgoyMDA3LTAzLTEyIDEwOjIzICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBUZXN0aW5nIG5ldyB0YXJnZXQgcHJvcGVydGllcyBSVU5USU1FX09VVFBVVF9ESVJFQ1RPUlksCgkgIExJQlJBUllfT1VUUFVUX0RJUkVDVE9SWSwgYW5kIEFSQ0hJVkVfT1VUUFVUX0RJUkVDVE9SWS4gIFRoaXMgaXMKCSAgYW4gaW5jcmVtZW50YWwgZml4IGZvciBidWcjMjI0MCBhbmQgYnVnIzQyMTAuCgoyMDA3LTAzLTExIDAxOjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMTAgMDc6NDkgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy13Y2wzODYuY21ha2U6IEJVRzogRG8gbm90IGNyZWF0ZSBpbXBvcnQKCSAgbGlicmFyeSBmb3IgTU9EVUxFcy4JVGhpcyBpcyBhbiBpbmNyZW1lbnRhbCBmaXggZm9yIGJ1ZyM0MjEwLgoKMjAwNy0wMy0xMCAwNzozNyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBCVUc6IEZpeGVkIE1TVkM4IG1vZHVsZSBidWlsZAoJICBydWxlIHRvIG5vdCB1c2UgL2ltcGxpYiBvcHRpb24uICBUaGlzIGlzIGFuIGluY3JlbWVudGFsIGZpeCBmb3IKCSAgYnVnIzQyMTAuCgoyMDA3LTAzLTEwIDA2OjU2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBTVFlMRTogRml4CgkgIGxpbmUtdG9vLWxvbmcuCgoyMDA3LTAzLTEwIDAxOjMxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDkgMTc6MTUgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBVc2UgcmVhbCBwYXRoIHN1YmRpcmVjdG9yeQoJICBjaGVjayBpbnN0ZWFkIG9mIHN1YnN0cmluZyBjb21wYXJpc29uIHRvIGlkZW50aWZ5IHdoZW4gcGF0aHMgYXJlCgkgIGJlbG93IHRoZSByZWxhdGl2ZSBwYXRoIHRvcHMuICBPdGhlcndpc2Ugd2hlbiB0aGUgYnVpbGQgdHJlZSBpcwoJICBuZXh0IHRvIHRoZSBzb3VyY2UgdHJlZSB3aXRoIHRoZSBzYW1lIG5hbWUgcGx1cyBhIHN1ZmZpeCB0aGUKCSAgcmVsYXRpdmUgcGF0aCBmcm9tIHRoZSBiaW5hcnkgdG8gc291cmNlIHRyZWUgaXMgYWxsb3dlZCBldmVuCgkgIHRob3VnaCBpdCBnb2VzIG91dHNpZGUgY21ha2UtbWFuYWdlZCBkaXJlY3Rvcmllcy4KCjIwMDctMDMtMDkgMTY6NTggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9hdXRvX3B0ci5oeHguaW46IENPTVA6IEZpeCB3YXJuaW5nIGFib3V0IGJpbmRpbmcKCSAgcmVmZXJlbmNlLXRvLW5vbi1jb25zdCB0byBhbiBydmFsdWUgb24gVlM2LiAgSXQgZG9lcyBub3Qgc2VlbSB0bwoJICBiZSBkb2luZyB0aGUgcHJvcGVyIGF1dG9fcHRyX3JlZiBjb252ZXJzaW9ucy4gIEluc3RlYWQgdXNlIHRoZQoJICBjb25zdF9jYXN0IHdvcmstYXJvdW5kIG9uIHRoaXMgcGxhdGZvcm0uCgoyMDA3LTAzLTA5IDE2OjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvaGFzaHRhYmxlLmh4eC5pbjogQ09NUDogRml4ZWQgdW5yZWZlcmVuY2VkIHBhcmFtZXRlcgoJICB3YXJuaW5nIGZvciBWUzYgd2l0aCAvVzQuCgoyMDA3LTAzLTA5IDE2OjI2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IFJlLWVuYWJsZSBiYWNrd2FyZAoJICBjb21wYXRpYmlsaXR5IHJlcGxhY2VtZW50cyBpbiB1c2VyLXByb3ZpZGVkIFZTNiBEU1AgdGVtcGxhdGUKCSAgZmlsZXMuCgoyMDA3LTAzLTA5IDE2OjI1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvVXRpbGl0eUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRU5IOiBJbXBsZW1lbnRlZCB1c2Ugb2YKCSAgY21UYXJnZXQ6OkdldERpcmVjdG9yeSgpIGluIFZpc3VhbCBTdHVkaW8gNiBnZW5lcmF0b3IuICBUaGlzIGlzCgkgIGFuIGluY3JlbWVudGFsIGZpeCBmb3IgYnVnIzQyMTAuCgoyMDA3LTAzLTA5IDE1OjE0ICBraW5nCgoJKiBTb3VyY2UvOiBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDogQWRkZWQgdGFyZ2V0IHByb3BlcnRpZXMKCSAgQVJDSElWRV9PVVRQVVRfRElSRUNUT1JZLCBMSUJSQVJZX09VVFBVVF9ESVJFQ1RPUlksIGFuZAoJICBSVU5USU1FX09VVFBVVF9ESVJFQ1RPUlkuICBJZiBzZXQgdGhlc2Ugb3ZlcnJpZGUKCSAgRVhFQ1VUQUJMRV9PVVRQVVRfUEFUSCBhbmQgTElCUkFSWV9PVVRQVVRfUEFUSCBmb3IgYSBzcGVjaWZpYwoJICB0YXJnZXQuICBUaGV5IGNhbiBiZSB1c2VkIHRvIGRpc3RyaWJ1dGUgdGFyZ2V0IGZpbGVzIGluIHRoZSBidWlsZAoJICB0cmVlIHdpdGggdGhlIHNhbWUgZ3JhbnVsYXJpdHkgdGhhdCB0aGUgSU5TVEFMTCBjb21tYW5kIHByb3ZpZGVzCgkgIGZvciB0aGUgaW5zdGFsbCB0cmVlLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzIyNDAgYW5kIGJ1ZyM0MjEwLgoKMjAwNy0wMy0wOSAxNDo1MCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCBPU1gKCSAgYnVuZGxlcyB0byBiZSBidWlsdCBpbiB0aGUgZGlyZWN0b3J5IHNwZWNpZmllZCBieQoJICBjbVRhcmdldDo6R2V0RGlyZWN0b3J5KCkuICBUaGlzIGlzIGFuIGluY3JlbWVudGFsIHN0ZXAgZm9yCgkgIGJ1ZyMyMjQwLgoKMjAwNy0wMy0wOSAxMzo1OSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBCVUc6IFNoYXJlZCBsaWJyYXJ5IGNyZWF0aW9uCgkgIHNob3VsZCB1c2UgL2ltcGxpYiBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbmFtZSBvZiB0aGUgaW1wb3J0CgkgIGxpYnJhcnkgZXhwbGljaXRseS4gIFRoaXMgaXMgYW4gaW5jcmVtZW50YWwgc3RlcCBmb3IgYnVnICM0MjEwLgoKMjAwNy0wMy0wOSAxMzo1NiAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBEbyBub3QgY29tcHV0ZQoJICBhIHBhdGggbmFtZSBmb3IgdGhlIGltcG9ydCBsaWJyYXJ5IGlmIHRoZXJlIGlzIG5vIGltcG9ydCBsaWJyYXJ5LgoJICBUaGlzIHNpbXBsaWZpZXMgdHJhY2tpbmcgZG93biBwcm9ibGVtcyB3aXRoIHRyeWluZyB0byBjcmVhdGUKCSAgaW1wb3J0IGxpYnJhcmllcyBmb3IgTU9EVUxFcy4KCjIwMDctMDMtMDkgMTE6MzUgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IFByZXBhcmUgZm9yIHRoZSBuZXcgY3VybC4gQ3VybCBpcyBidWlsZAoJICBzdGF0aWMsIHNvIHNldCBkZWZpbmUgdG8gb24KCjIwMDctMDMtMDkgMTE6MzUgIGFuZHkKCgkqIFV0aWxpdGllcy9jbWN1cmwvOiBDTWFrZUxpc3RzLnR4dCwgc2V0dXAuaCwKCSAgQ01ha2UvT3RoZXJUZXN0cy5jbWFrZSwgUGxhdGZvcm1zL1dpbmRvd3NDYWNoZS5jbWFrZTogRU5IOgoJICBTZXZlcmFsIHdpbmRvd3MgZml4ZXMKCjIwMDctMDMtMDkgMTE6MjkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaDogRU5IOgoJICBBZGRlZCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yOjpHZW5lcmF0ZUV4dHJhT3V0cHV0IHRvIHdyYXAgdXAKCSAgY3JlYXRpb24gb2YgcnVsZXMgdG8gZHJpdmUgY3JlYXRpb24gb2YgZXh0cmEgb3V0cHV0cyBnZW5lcmF0ZWQgYXMKCSAgc2lkZSBlZmZlY3RzIG9mIGFub3RoZXIgcnVsZS4gIFJlaW1wbGVtZW50ZWQgZ2VuZXJhdGlvbiBvZiBjdXN0b20KCSAgY29tbWFuZCBtdWx0aXBsZSBvdXRwdXQgcnVsZXMgdG8gdXNlIGl0LiAgUmVpbXBsZW1lbnRlZCBzb25hbWUKCSAgc3ltbGluayBvdXRwdXQgZGVwZW5kZW5jaWVzIHRvIHVzZSBpdC4gIE5vdyBpZiBhIHN5bWxpbmsgaXMKCSAgZGVsZXRlZCB0aGUgbGlicmFyeSB3aWxsIGJlIHJlY3JlYXRlZCB3aXRoIHRoZSBzeW1saW5rLgoKMjAwNy0wMy0wOSAxMToyNiAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBOZWVkIHRvIGFjY291bnQKCSAgZm9yIGltcG9ydCBsaWJyYXJ5IGRpcmVjdG9yeSB3aGVuIGNvbnN0cnVjdGluZyB0aGUgY2xlYW4gcnVsZSBmb3IKCSAgdGhlIGltcG9ydCBsaWJyYXJ5LiAgVGhpcyBpcyBhbiBpbmNyZW1lbnRhbCBmaXggZm9yIGJ1ZyAjNDIxMC4KCjIwMDctMDMtMDkgMTA6MzAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBJbXBsZW1lbnRlZCBuZXcgcG9saWN5IHRvCgkgIGNob29zZSB0aGUgZGlyZWN0b3J5IHBhcnQgb2YgdGhlIG9iamVjdCBmaWxlIG5hbWUuICBUaGlzIHNob3VsZAoJICBrZWVwIHRoZSBuYW1lcyBsb29raW5nIGFzIG5pY2UgYW5kIHNob3J0IGFzIHBvc3NpYmxlLiAgVGhpcwoJICBwYXJ0aWFsbHkgYWRkcmVzc2VzIGJ1ZyM0NTIwLgoKMjAwNy0wMy0wOSAwOTozMCAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6CgkgIEVOSDogQWRkZWQgaW1wbGliIG9wdGlvbiB0byBjbVRhcmdldDo6R2V0RGlyZWN0b3J5IHRvIHN1cHBvcnQgYQoJICBzZXBhcmF0ZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgaW1wb3J0IGxpYnJhcnkuICBUaGlzIGlzIGFuCgkgIGluY3JlbWVudGFsIHN0ZXAgZm9yIGJ1ZyM0MjEwLgoKMjAwNy0wMy0wOCAyMzo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTA4IDE1OjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIENvbWJpbmVkIGNtVGFyZ2V0OjpHZXREaXJlY3RvcnkgYW5kIGNtVGFyZ2V0OjpHZXRPdXRwdXREaXIgc2luY2UKCSAgdGhleSBhcmUgbmVhcmx5IHRoZSBzYW1lLiAgVGhpcyBpcyBhbm90aGVyIHN0ZXAgZm9yIGJ1ZyMyMjQwLgoKMjAwNy0wMy0wOCAxNToyNCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBSZW1vdmVkIHVudXNlZCB2YXJpYWJsZXMgTGlicmFyeU91dHB1dFBhdGggYW5kCgkgIEV4ZWN1dGFibGVPdXRwdXRQYXRoLiAgRWFjaCB0YXJnZXQgaXMgYXNrZWQgZm9yIGl0cyBvd24gb3V0cHV0CgkgIGRpcmVjdG9yeS4gIFRoaXMgaXMgYSBzdGVwIHRvd2FyZHMgYnVnIzIyNDAuCgoyMDA3LTAzLTA4IDE1OjEwICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBDT01QOiBGaXhlZCBlbnVtZXJhdGlvbi1ub3QtdXNlZCB3YXJuaW5nIGluCgkgIHN3aXRjaC4KCjIwMDctMDMtMDggMTQ6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOgoJICBSZXBsYWNlZCBMaWJyYXJ5T3V0cHV0UGF0aCBhbmQgRXhlY3V0YWJsZU91dHB1dFBhdGggdmFyaWFibGVzIGluCgkgIE1ha2VmaWxlIGFuZCBWUyBnZW5lcmF0b3JzIHRvIGluc3RlYWQgYXNrIGVhY2ggdGFyZ2V0IGZvciBpdHMKCSAgb3V0cHV0IHBhdGguCVRoaXMgc2lnbmlmaWNhbnRseSByZWR1Y2VzIHRvdGFsIGNvZGUgc2l6ZSBhbmQKCSAgY2VudHJhbGl6ZXMgcHJldmlvdXNseSBkdXBsaWNhdGUgY29kZS4gIEl0IGlzIGFsc28gYSBzdGVwIHRvd2FyZHMKCSAgYnVnIzIyNDAuCgoyMDA3LTAzLTA4IDE0OjE1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IEFzayB0aGUgdGFyZ2V0IGZvcgoJICBpdHMgb3duIGRpcmVjdG9yeSBpbiBjYXNlIG9mIGJ1bmRsZSBpbnN0ZWFkIG9mIGRpcmVjdGx5IHVzaW5nCgkgIEV4ZWN1dGFibGVPdXRwdXRQYXRoLgoKMjAwNy0wMy0wOCAxNDoxMSAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC86IENNYWtlTGlzdHMudHh0LCBDTWFrZS9PdGhlclRlc3RzLmNtYWtlOiBFTkg6CgkgIEFkZCBzb21lIG1pc3NpbmcgaGVhZGVycyBhbmQgZml4IE90aGVyVGVzdHMuY21ha2UgbWFjcm9zCgoyMDA3LTAzLTA4IDEzOjE5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IENvbXB1dGUKCSAgSG9tZVJlbGF0aXZlT3V0cHV0UGF0aCBmb2xsb3dpbmcgdGhlIHJ1bGVzIG9mCgkgIFJlbGF0aXZlUGF0aFRvcEJpbmFyeSBieSBnb2luZyB0aHJvdWdoIHRoZSBDb252ZXJ0KCkgbWV0aG9kLgoJICBUaGlzIHN1cHBvcnRzIG91dC1vZi1iaW5hcnkgYnVpbGQgdHJlZXMgd2l0aG91dCB1c2luZyByZWxhdGl2ZQoJICBwYXRocyB0aGF0IGdvIG91dHNpZGUgdHJlZXMgbWFuYWdlZCBieSBDTWFrZS4KCjIwMDctMDMtMDggMTM6MTMgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgU3ViRGlyU3BhY2VzIHRlc3Qgd2hlbgoJICBidWlsZGluZyB3aXRoIGJvb3RzdHJhcHBlZCBjbWFrZS4KCjIwMDctMDMtMDggMTM6MDUgIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBGaXhlZCByZWN1cnNpdmUgbWFrZSBjYWxsCgkgIHRhcmdldCBlc2NhcGluZyBmb3IgQm9ybGFuZCB0byBzdXBwb3J0IFN1YkRpclNwYWNlcyB0ZXN0LgoKMjAwNy0wMy0wOCAxMTo0OSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBVcGRhdGVkCgkgIEdldFJlY3Vyc2l2ZU1ha2VDYWxsIHRvIHVzZSBFc2NhcGVGb3JTaGVsbCBpbnN0ZWFkIG9mIE1BS0VGSUxFCgkgIGNvbnZlcnNpb24uICBUaGlzIGNvZGUgaXMgc3BlY2lhbCBiZWNhdXNlIGl0IGlzIHRoZSBvbmx5IHBsYWNlCgkgIHRoYXQgYSBtYWtlIHRhcmdldCBuYW1lIGlzIHBhc3NlZCBvbiBhIGNvbW1hbmQgbGluZS4KCjIwMDctMDMtMDggMTE6NDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkZWQKCSAgQ29udmVydFRvT3V0cHV0U2xhc2hlcyBtZXRob2QgdG8gY29udmVydCBzbGFzaGVzIHdpdGggdGhlIHNhbWUKCSAgcG9saWN5IGFzIENvbnZlcnRUb091dHB1dFBhdGggYnV0IHdpdGhvdXQgZXNjYXBpbmcuCgoyMDA3LTAzLTA4IDExOjEwICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogUmVtb3ZlZCB1c2VsZXNzIG1ldGhvZAoJICBDb252ZXJ0VG9NYWtlVGFyZ2V0IGFuZCBhbGwgY2FsbHMgdG8gaXQuICBJdCBoYWQgYSBidWdneQoJICBpbXBsZW1lbnRhdGlvbiB0aGF0IGNhdXNlZCBpdCB0byBkbyBub3RoaW5nLgoKMjAwNy0wMy0wOCAxMDozMSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBTb21lIGNhbGxzIHRvIENvbnZlcnQoKSB3ZXJlCgkgIGNvbnZlcnRpbmcgZm9yIE1BS0VGSUxFIGJ1dCB0aGVuIHBhc3NpbmcgdGhlIG91dHB1dCB0byB0aGUgYnVpbGQKCSAgc2hlbGwuICBUaGUgY2FsbHMgaGF2ZSBub3cgYmVlbiBjb252ZXJ0ZWQgdG8gY2FsbCBDb252ZXJ0KCkgd2l0aAoJICBTSEVMTC4KCjIwMDctMDMtMDggMTA6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IFNUWUxFOiBSZW1vdmVkIHVudXNlZAoJICBjYWxscyB0byBDb252ZXJ0LgoKMjAwNy0wMy0wOCAwOTo0OCAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogU1RZTEU6IFJlbW92aW5nCgkgIHVudXNlZCBtZXRob2RzIENvbnZlcnRUb1NoZWxsUGF0aCBhbmQgRXNjYXBlRm9yVW5peFNoZWxsLgoKMjAwNy0wMy0wOCAwODo1MCAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC86IENNYWtlTGlzdHMudHh0LCBhbWlnYW9zLmMsIGFtaWdhb3MuaCwKCSAgYXJwYV90ZWxuZXQuaCwgYmFzZTY0LmMsIGJhc2U2NC5oLCBjb25maWcuaC5pbiwgY29ubmVjdC5jLAoJICBjb25uZWN0LmgsIGNvbnRlbnRfZW5jb2RpbmcuYywgY29udGVudF9lbmNvZGluZy5oLCBjb29raWUuYywKCSAgY29va2llLmgsIGN1cmwuY29weXJpZ2h0LCBjdXJseC5oLCBkaWN0LmMsIGRpY3QuaCwgZWFzeS5jLAoJICBlYXN5aWYuaCwgZXNjYXBlLmMsIGVzY2FwZS5oLCBmaWxlLmMsIGZpbGUuaCwgZm9ybWRhdGEuYywKCSAgZm9ybWRhdGEuaCwgZnRwLmMsIGZ0cC5oLCBnZXRlbnYuYywgZ2V0aW5mby5jLCBnZXRpbmZvLmgsIGd0bHMuYywKCSAgZ3Rscy5oLCBoYXNoLmMsIGhhc2guaCwgaG9zdGFyZXMuYywgaG9zdGFzeW4uYywgaG9zdGlwLmMsCgkgIGhvc3RpcC5oLCBob3N0aXA0LmMsIGhvc3RpcDYuYywgaG9zdHN5bi5jLCBob3N0dGhyZS5jLCBodHRwLmMsCgkgIGh0dHAuaCwgaHR0cF9jaHVua3MuYywgaHR0cF9jaHVua3MuaCwgaHR0cF9kaWdlc3QuYywKCSAgaHR0cF9kaWdlc3QuaCwgaHR0cF9uZWdvdGlhdGUuYywgaHR0cF9uZWdvdGlhdGUuaCwgaHR0cF9udGxtLmMsCgkgIGh0dHBfbnRsbS5oLCBpZjJpcC5jLCBpZjJpcC5oLCBpbmV0X250b2Ffci5oLCBpbmV0X250b3AuYywKCSAgaW5ldF9udG9wLmgsIGluZXRfcHRvbi5jLCBpbmV0X3B0b24uaCwga3JiNC5jLCBrcmI0LmgsIGxkYXAuYywKCSAgbGRhcC5oLCBsbGlzdC5jLCBsbGlzdC5oLCBtZDUuYywgbWQ1LmgsIG1lbWRlYnVnLmMsIG1lbWRlYnVnLmgsCgkgIG1lbW9yeS5oLCBtcHJpbnRmLmMsIG11bHRpLmMsIG11bHRpaWYuaCwgbmV0cmMuYywgbmV0cmMuaCwKCSAgbndsaWIuYywgcGFyc2VkYXRlLmMsIHBhcnNlZGF0ZS5oLCBwcm9ncmVzcy5jLCBwcm9ncmVzcy5oLAoJICBzZWN1cml0eS5jLCBzZWxlY3QuYywgc2VsZWN0LmgsIHNlbmRmLmMsIHNlbmRmLmgsIHNldHVwLmgsCgkgIHNldHVwX29uY2UuaCwgc2hhcmUuYywgc2hhcmUuaCwgc29ja2FkZHIuaCwgc29ja3MuYywgc29ja3MuaCwKCSAgc3BlZWRjaGVjay5jLCBzcGVlZGNoZWNrLmgsIHNwbGF5LmMsIHNwbGF5LmgsIHNzaC5jLCBzc2guaCwKCSAgc3NsZ2VuLmMsIHNzbGdlbi5oLCBzc2x1c2UuYywgc3NsdXNlLmgsIHN0cmR1cC5jLCBzdHJkdXAuaCwKCSAgc3RyZXF1YWwuYywgc3RyZXF1YWwuaCwgc3RyZXJyb3IuYywgc3RyZXJyb3IuaCwgc3RydG9rLmMsCgkgIHN0cnRvay5oLCBzdHJ0b29mZnQuYywgc3RydG9vZmZ0LmgsIHRlbG5ldC5jLCB0ZWxuZXQuaCwgdGZ0cC5jLAoJICB0ZnRwLmgsIHRpbWV2YWwuYywgdGltZXZhbC5oLCB0cmFuc2Zlci5jLCB0cmFuc2Zlci5oLCB1cmwuYywKCSAgdXJsLmgsIHVybGRhdGEuaCwgdmVyc2lvbi5jLCBDTWFrZS9DaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgQ01ha2UvQ2hlY2tDU291cmNlUnVucy5jbWFrZSwgQ01ha2UvT3RoZXJUZXN0cy5jbWFrZSwKCSAgY3VybC9jdXJsLmgsIGN1cmwvY3VybHZlci5oLCBjdXJsL2Vhc3kuaCwgY3VybC9tcHJpbnRmLmgsCgkgIGN1cmwvbXVsdGkuaCwgY3VybC9zdGRjaGVhZGVycy5oOiBFTkg6IFVwZGF0ZSB0byA3LjE2LjEKCjIwMDctMDMtMDggMDg6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eDogU1RZTEU6IEZpeCBsaW5lLXRvby1sb25nLgoKMjAwNy0wMy0wOCAwODozOCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21ha2UuY3h4OiBFTkg6CgkgIFNldHVwUGF0aENvbnZlcnNpb25zIGlzIG5vdyBjYWxsZWQgYXV0b21hdGljYWxseSBvbiBkZW1hbmQuCgoyMDA3LTAzLTA3IDIyOjEyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDcgMTc6MzkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBNb2RpZmllZAoJICBHZXRPYmplY3RGaWxlTmFtZVdpdGhvdXRUYXJnZXQgdG8gdXNlIHJlbGF0aXZlIHBhdGhzIGZvciBvYmplY3QKCSAgZmlsZSBuYW1lcyB3aXRoIHNvdXJjZXMgYWJvdmUgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHNvIGxvbmcgYXMKCSAgdGhlIHJlbGF0aXZlIHBhdGggY29udmVyc2lvbiB3b3Jrcy4KCjIwMDctMDMtMDcgMTc6MzIgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IEVOSDogSW1wcm92ZWQKCSAgY29tcHV0YXRpb24gb2YgUmVsYXRpdmVQYXRoVG9wU291cmNlIGFuZCBSZWxhdGl2ZVBhdGhUb3BCaW5hcnkgdG8KCSAgdXNlIGhpZ2hlciByZWxhdGl2ZSBwYXRoIHRvcHMgd2hlbiB0aGUgc291cmNlIGRpcmVjdG9yaWVzIGp1bXAKCSAgYXJvdW5kIGluIGEgdHJlZSBiZWxvdyB0aGUgb3JpZ2luYWwgc291cmNlIHRvcC4KCjIwMDctMDMtMDcgMTY6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBTZXQgUmVsYXRpdmVQYXRoVG9wU291cmNlIGFuZAoJICBSZWxhdGl2ZVBhdGhUb3BCaW5hcnkgaW5kZXBlbmRlbnRseSBmb3IgZWFjaCBsb2NhbCBnZW5lcmF0b3IuCgkgIFJlbGF0aXZlIHBhdGggY29udmVyc2lvbiBpcyBzYWZlIHdpdGhpbiBhIHRyZWUgYXMgbG9uZyBhcyBpdCBkb2VzCgkgIG5vdCBnbyBhYm92ZSB0aGUgaGlnaGVzdCBwYXJlbnQgZGlyZWN0b3J5IHN0aWxsIG1hbmFnZWQgYnkgQ01ha2UuCgoyMDA3LTAzLTA3IDE2OjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oOiBDT01QOgoJICBGaXggQ29udmVydFRvUmVsYXRpdmVQYXRoIGNoYW5nZSBmb3IgWGNvZGUgZ2VuZXJhdG9yLgoKMjAwNy0wMy0wNyAxNjowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW46IFNUWUxFOiBNb3ZlIHdhcm5pbmcgZGlzYWJsZSBwcmFnbWEKCSAgaW50byBwdXNoL3BvcCBibG9jay4KCjIwMDctMDMtMDcgMTU6NTcgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBHZXQgcmlkIG9mIGFuY2llbnQKCSAgdmFyaWFibGVzIENNQUtFX0NYWF9XQVJOSU5HX0xFVkVMLCBDTUFLRV9DWFhfVVNFX1JUVEksCgkgIENNQUtFX0NYWF9TVEFDS19TSVpFIHdoaWNoIGFyZSBvbmx5IHBhcnRpYWxseSBpbXBsZW1lbnRlZCBhbmQgbm93CgkgIHRha2VuIGNhcmUgb2YgYnkgZmxhZyBtYXBwaW5nIGFueXdheS4KCjIwMDctMDMtMDcgMTU6MzYgIG1hcnRpbmsKCgkqIE1vZHVsZXMvVXNlUGtnQ29uZmlnLmNtYWtlOiBCVUc6IHVudGVzdGVkIGZpeCBmb3IgbmV3bGluZXMgaW4gdGhlCgkgIG91dHB1dCBvZiBwa2cgY29uZmlnCgoyMDA3LTAzLTA3IDE1OjMwICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IENPTVA6IEFkZCBtaXNzaW5nIGluY2x1ZGUgZm9yCgkgIGFzc2VydC4KCjIwMDctMDMtMDcgMTU6MTUgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaDogRU5IOiBNb3ZlZAoJICBDb252ZXJ0VG9SZWxhdGl2ZVBhdGggZnJvbSBjbUdsb2JhbEdlbmVyYXRvciB0byBjbUxvY2FsR2VuZXJhdG9yLgoJICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBzZXR0aW5nIHVwIGVhY2ggbG9jYWwgZ2VuZXJhdG9yIHRvCgkgIGhhdmUgaXRzIG93biBSZWxhdGl2ZVBhdGhUb3BTb3VyY2UgYW5kIFJlbGF0aXZlUGF0aFRvcEJpbmFyeQoJICBiYXNlZCBvbiBpdHMgYW5jZXN0b3IgZGlyZWN0b3JpZXMuCgoyMDA3LTAzLTA3IDEzOjUyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiB0ZXN0RHluYW1pY0xvYWRlci5jeHgsIHRlc3RTeXN0ZW1Ub29scy5jeHg6IEJVRzoKCSAgVXNlIGFuZ2xlLWJyYWNrZXRzIHRvIGluY2x1ZGUgdGVzdFN5c3RlbVRvb2xzLmggdG8gYXZvaWQgcHJvYmxlbXMKCSAgd2l0aCBpbi1zb3VyY2UgYnVpbGRzLgoKMjAwNy0wMy0wNyAxMzowMSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IG9vcHMgYmFkIGFyZyBmb3IgbmV3IHRlc3QKCjIwMDctMDMtMDcgMTE6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5jeHgsCgkgIFRlc3RzL05ld2xpbmVBcmdzL0NNYWtlTGlzdHMudHh0OiBCVUc6IGltcHJvdmUgYmFkIGFyZ3VtZW50CgkgIGhhbmRsaW5nIGZvciBJTkNMVURFX0RJUkVDVE9SSUVTIGFuZCBBRERfREVGSU5JVElPTlMgYnVnIDQzNjQKCjIwMDctMDMtMDcgMDk6MjYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IGF1dG9fcHRyLmh4eC5pbiwgdGVzdEF1dG9QdHIuY3h4OiBFTkg6IEVuYWJsZWQKCSAgc3VwcG9ydCBmb3IgdXNlX2F1dG9fcHRyKGdldF9hdXRvX3B0cigpKSBzeW50YXggb24gSFAgY29tcGlsZXIuCgoyMDA3LTAzLTA2IDIxOjIyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDYgMTQ6NTIgIG1hcnRpbmsKCgkqIFRlc3RzL05ld2xpbmVBcmdzLzogQ01ha2VMaXN0cy50eHQsIGN4eG9ubHkuY3h4LCBsaWJjeHgxLmN4eCwKCSAgbGliY3h4MS5oLCBsaWJjeHgyLmguaW46IEVOSDogYWRkZWQgYSB0ZXRzIGZvciBuZXdsaW5lcyBpbiBzb21lCgkgIGNvbW1hbmRzCgoyMDA3LTAzLTA2IDEwOjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2Uva3dzeXMvaGFzaHRhYmxlLmh4eC5pbjogQ09NUDogc2h1dCB1cCB3NCB3YXJuaW5nCgoyMDA3LTAzLTA2IDA5OjE2ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluOiBTVFlMRTogRGVmYXV0bCBhbnN3ZXIgZm9yIHRoZQoJICBsaWNlbnNlIGlzIG5vCgoyMDA3LTAzLTA1IDIxOjIzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDUgMTU6MjEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvVXNlU1dJRy5jbWFrZTogRU5IOiBwYXRjaCBhcHBsaWVkIGZvciBidWcgNDUxNwoKMjAwNy0wMy0wNSAxMzowMSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IFJlbW92ZWQgbGVnYWN5CgkgIFNldHVwVGVzdHMgbWV0aG9kIHRoYXQgd2FzIGNhdXNpbmcgUlVOX1RFU1RTIHRvIHRlc3QgdHdpY2UuCgoyMDA3LTAzLTA1IDEwOjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuY3h4LAoJICBjbURlcGVuZHNKYXZhUGFyc2VyLmN4eCwgY21FeHByUGFyc2VyLmN4eDogQ09NUDogc2h1dCB1cCB3YXJuaW5ncwoKMjAwNy0wMy0wNSAwOTo1MSAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3BwLCBQYXRoRGlhbG9nLmNwcCwKCSAgUHJvcGVydHlMaXN0LmNwcDogRU5IOiBmaXggY29tcGlsZXIgd2FybmluZ3MKCjIwMDctMDMtMDUgMDk6NTAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogU1RZTEU6IGxvbmcgbGluZQoKMjAwNy0wMy0wNCAyMTozMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTAzIDIzOjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdEF1dG9QdHIuY3h4OiBDT01QOiBEaXNhYmxlIGZ1bmN0aW9uIGNhbGwgd2l0aAoJICBmdW5jdGlvbiByZXR1cm4gdGVzdCBmb3IgSFAgdW50aWwgaXQgaXMgaW1wbGVtZW50ZWQuCgoyMDA3LTAzLTAzIDIxOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDMgMTU6NDMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBhdXRvX3B0ci5oeHguaW46IENPTVA6IEFsbCBrd3N5cwoJICAuaHh4IGhlYWRlcnMgc2hvdWxkIGluY2x1ZGUgQ29uZmlndXJlLmh4eC4gIFJlLWVuYWJsaW5nCgkgIHRlc3RBdXRvUHRyLgoKMjAwNy0wMy0wMyAxNTozMiAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBDT01QOiBEaXNhYmxlIGF1dG9fcHRyIHRlc3QgZm9yIG5vdy4KCjIwMDctMDMtMDMgMTU6MDUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IGF1dG9fcHRyLmh4eC5pbiwgdGVzdEF1dG9QdHIuY3h4OiBFTkg6IEltcGxlbWVudGVkCgkgIGF1dG9fcHRyX3JlZiBpbiBhIHdheSB0aGF0IGFsbG93cyBjb252ZXJzaW9uIG9mIHRoZSBwb2ludGVkLXRvCgkgIHR5cGUuCgoyMDA3LTAzLTAzIDE0OjUxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdEF1dG9QdHIuY3h4OiBDT01QOiBSZW1vdmUgb25lIGNvbnZlcnNpb24gdGVzdAoJICB1bnRpbCBpdCBpcyBpbXBsZW1lbnRlZC4KCjIwMDctMDMtMDMgMTQ6NDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBhdXRvX3B0ci5oeHguaW4sIHRlc3RBdXRvUHRyLmN4eDoKCSAgRU5IOiBBZGRlZCB0ZXN0IGZvciBhdXRvX3B0ci4gIERvY3VtZW50ZWQgYXV0X3B0ciB0ZW1wbGF0ZQoJICBpbXBsZW1lbnRhdGlvbi4KCjIwMDctMDMtMDMgMTI6MTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LCBjbUNvbW1hbmRzLmN4eDogQlVHOgoJICBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0IGNvbW1hbmQgaXMgbmVlZGVkIGF0IGJvb3N0cmFwIHRpbWUgYmVjYXVzZQoJICBLV1N5cyBub3cgdXNlcyB0ZXN0IGRyaXZlcnMuCgoyMDA3LTAzLTAzIDEwOjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBrd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAga3dzeXMvdGVzdENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAga3dzeXMvdGVzdENvbW1hbmRMaW5lQXJndW1lbnRzMS5jeHgsIGt3c3lzL3Rlc3REeW5hbWljTG9hZGVyLmN4eCwKCSAga3dzeXMvdGVzdEZhaWwuYywga3dzeXMvdGVzdEhhc2hTVEwuY3h4LCBrd3N5cy90ZXN0SU9TLmN4eCwKCSAga3dzeXMvdGVzdFJlZ2lzdHJ5LmN4eCwga3dzeXMvdGVzdFN5c3RlbVRvb2xzLmN4eCwKCSAga3dzeXMvdGVzdFRlcm1pbmFsLmMsIENNYWtlTGlzdHMudHh0OiBFTkg6IENsZWFuZWQgdXAgS1dTeXMgdGVzdHMKCSAgdG8gdXNlIHRlc3QgZHJpdmVycy4KCjIwMDctMDMtMDMgMTA6MDkgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogQlVHOiBEbyBub3QgY3JlYXRlIGltcG9ydAoJICBsaWJyYXJ5IGZvciBNT0RVTEVzLglUaGUgVEFSR0VUX0lNUExJQiBuYW1lIGlzIG5vdCBzZXQgY29ycmVjdGx5CgkgIGZvciBNT0RVTEUgcnVsZXMgYW55d2F5LgoKMjAwNy0wMy0wMiAyMToxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAzLTAyIDE0OjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmg6IEJVRzogZml4IGZvciBidWlsZCBvcmRlcgoKMjAwNy0wMy0wMiAxMTozMyAgYW5keQoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDoKCSAgQlVHOiBQcm9wYWdhdGUgcGxhdGZvcm0gc2V0dGluZ3Mgc3VjaCBhcyBDTUFLRV9PU1hfQVJDSElURUNUVVJFUwoJICB0byB0aGUgdHJ5IGNvbXBpbGUKCjIwMDctMDMtMDIgMTA6NTcgIG1hcnRpbmsKCgkqIE1vZHVsZXMvU3lzdGVtSW5mb3JtYXRpb24uY21ha2U6IEVOSDogbGltaXQgdGhlIG91dHB1dCBvZiBzeXN0ZW0KCSAgaW5mb3JtYXRpb24gdG8gbm8gbW9yZSB0aGFuIDUwSyBwZXIgZmlsZQoKMjAwNy0wMy0wMiAxMDo1MCAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IENPTVA6IGZpeCBzb21lIHc0IHdhcm5pbmdzCgoyMDA3LTAzLTAyIDEwOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IGZpeCBjb21waWxlciB3YXJuaW5nCgoyMDA3LTAzLTAyIDEwOjQ4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBrd3N5cy9TeXN0ZW1Ub29scy5jeHgsIGNtRmlsZUNvbW1hbmQuY3h4OiBDT01QOiBmaXgKCSAgd2FybmluZ3MKCjIwMDctMDMtMDEgMjM6MjggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9hdXRvX3B0ci5oeHguaW46IENPTVA6IE1vcmUgd29ya2Fyb3VuZHMgZm9yIEJvcmxhbmQuCgoyMDA3LTAzLTAxIDIxOjE1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDMtMDEgMTY6NDQgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQlVHOiBGaXggYnVnIGludHJvZHVjZWQgYnkgcmV2aXNpb24gMS42Ny4KCSAgVGhlIHFtYWtlIHF1ZXJ5IG1vZGUgcHJpbnRzIGluZm9ybWF0aW9uIHRvIHN0ZGVyciBvbiBzb21lCgkgIHBsYXRmb3Jtcy4gIFRoZSBPVVRQVVRfVkFSSUFCTEUgYW5kIEVSUk9SX1ZBUklBQkxFIG11c3QgYmUgdGhlCgkgIHNhbWUgdmFyaWFibGUgdG8gZ2V0IGFsbCB0aGUgb3V0cHV0LgoKMjAwNy0wMy0wMSAxNjoyMyAgbWFydGluawoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBDT01QOiBmaXggYSBjb21waWVsIHdhcm5pbmcKCjIwMDctMDMtMDEgMTU6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVDb21tYW5kLmg6IEVOSDogYWRkZWQgTElNSVQgb24KCSAgZmlsZSByZWFkCgoyMDA3LTAzLTAxIDE0OjUyICBtYXJ0aW5rCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNy0wMy0wMSAxNDozMCAgbWFydGluawoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogYWRkZWQgYQoJICBsaW1pdCB0byB0aGUgZ2V0bGluZSBtZXRob2QKCjIwMDctMDMtMDEgMTA6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogYSBjb3VwbGUgYnVncyBpbiBzeXN0ZW0gaW5mb3JtYWl0b24KCjIwMDctMDMtMDEgMTA6MzMgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0OiBCVUc6IGJhZCBjb21tYW5kIGxpbmUKCjIwMDctMDItMjggMjE6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0yOCAxNzoyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSBxbnggc3BlY2lhbCBzdHVmZiB0aGF0CgkgIGRvZXMgbm90IHdvcmsKCjIwMDctMDItMjggMTQ6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBjbGVhbnVwIHBhdGhzIGluIEdldFNvdXJjZUZpbGUgdG8KCSAgaGFuZGxlIGJ1ZyAyNzI0CgoyMDA3LTAyLTI4IDE0OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OgoJICBFTkg6IG9uZSBtb3JlIHBhc3MgYXQgcGF0aHMgd2l0aCBzcGFjZXMgYW5kIHBhcmVucwoKMjAwNy0wMi0yOCAxMjoyNSAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtYWtlLmN4eDogQlVHOgoJICBhbGxvdyBzeXN0ZW0gaW5mb3JtYXRpb24gdG8gYWNjZXB0IHRoZSAtRyBvcHRpb24KCjIwMDctMDItMjggMDk6MzYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9hdXRvX3B0ci5oeHguaW46IEJVRzogQXNzaWdubWVudCBzaG91bGQgYWx3YXlzIHVzZQoJICByZXNldCgpLgoKMjAwNy0wMi0yOCAwOTozNSAga2luZwoKCSogU291cmNlL2t3c3lzL2F1dG9fcHRyLmh4eC5pbjogQ09NUDogRml4IGZvciBhdXRvX3B0cl9yZWYgb24KCSAgQm9ybGFuZCA1LjguCgoyMDA3LTAyLTI4IDA5OjMzICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEZpeCBmb3IKCSAgY21ha2VfZm9yY2UgdGFyZ2V0IGluIEJvcmxhbmQgTWFrZWZpbGVzLgoKMjAwNy0wMi0yNyAxNjo0MSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBmaXggdG8gbmFtaW5nIG9mIHJlc3VsdHMgZmlsZQoKMjAwNy0wMi0yNyAxNToxMSAgaG9mZm1hbgoKCSogVGVzdHMvU3ViRGlyU3BhY2VzLzogQ01ha2VMaXN0cy50eHQsCgkgIFRoaXJkU3ViRGlyL3Rlc3Rmcm9tYXV4c3ViZGlyLmM6IEVOSDogd2F0Y29tIHdtYWtlIGNhbiBub3QgaGFuZGxlCgkgICgpIGluIHRoZSBwYXRoIHdpdGggY2QgY29tbWFuZAoKMjAwNy0wMi0yNyAxMzozNCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBhZGQgYSBmaXggZm9yCgkgIHNwYWNlcyBpbiB0aGUgcGF0aCBhZ2Fpbi4uLgoKMjAwNy0wMi0yNyAxMzowNCAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBwb3NzaWJsZSBmaXggZm9yIG5ldwoJICBTeXN0ZW1JbmZvIHRlc3QKCjIwMDctMDItMjcgMTI6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogZml4IGZvciB1bnVzZWQgdmFyaWFibGUKCjIwMDctMDItMjcgMTI6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZml4IGZvciBzcGFjZXMgaW4KCSAgdGhlIHBhdGggYW5kIG1pbmd3CgoyMDA3LTAyLTI3IDExOjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEJVRzogcG9zc2libGUgZml4IGZvciBuZXcgU3lzdGVtSW5mbyB0ZXN0CgoyMDA3LTAyLTI3IDEwOjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21ha2UuY3h4LCBjbWFrZS5oLCBjbWFrZW1haW4uY3h4OiBFTkg6CgkgIGFkZGVkIC0tc3lzdGVtLWluZm9ybWF0aW9uIG9wdGlvbiB0byBDTWFrZQoKMjAwNy0wMi0yNyAwOTo0MyAgbWFydGluawoKCSogTW9kdWxlcy86IFN5c3RlbUluZm9ybWF0aW9uLmNtYWtlLCBTeXN0ZW1JbmZvcm1hdGlvbi5pbjogRU5IOgoJICBpbXByb3ZlbWVudHMKCjIwMDctMDItMjYgMTM6NDAgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBTeXN0ZW1JbmZvcm1hdGlvbi5jbWFrZSwgU3lzdGVtSW5mb3JtYXRpb24uaW46IEVOSDoKCSAgYWRkZWQgZm9yIHN5c3RlbSBpbmZvcm1hdGlvbiBjb21tYW5kIGxpbmUgb3B0aW9uCgoyMDA3LTAyLTI2IDEyOjA4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvYXV0b19wdHIuaHh4LmluOiBDT01QOiBBZGRlZCBsaW5lIGFjY2lkZW50YWxseQoJICByZW1vdmVkLgoKMjAwNy0wMi0yNiAxMjowNiAga2luZwoKCSogU291cmNlL2t3c3lzL2F1dG9fcHRyLmh4eC5pbjogQlVHOiBGaXhlZCBpbXBsZW1lbnRhdGlvbiBvZgoJICBhdXRvX3B0cl9yZWYuCgoyMDA3LTAyLTI2IDExOjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogZ28gYmFjayB0byBcIGVzY2FwZXMgZm9yIHFueAoKMjAwNy0wMi0yNiAxMTo0MSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGdvIGJhY2sgdG8gRXNjYXBlRm9yU2hlbGwKCSAgdmVyc2lvbgoKMjAwNy0wMi0yNiAxMDo0NiAga2luZwoKCSogVGVzdHMvU3ViRGlyU3BhY2VzL0NNYWtlTGlzdHMudHh0OiBDT01QOiBEaXNhYmxlIHJwYXRoIHdpdGgKCSAgc3BhY2VzIG9uIHNvbWUgc3lzdGVtcy4KCjIwMDctMDItMjUgMjE6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0yNSAxOToyMiAgYWxleAoKCSogTW9kdWxlcy9GaW5kR2V0dGV4dC5jbWFrZTogQlVHOiBmaXggdHlwbyByZXBvcnRlZCBieSBEdW5jYW4gTWFjCgkgIFZpY2FyCgoJICBBbGV4CgoyMDA3LTAyLTI1IDE2OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogdHJ5IGFuZCB1c2UgXCBmb3Igc3BhY2UgYW5kICgpCgkgIGVzY2FwZXMKCjIwMDctMDItMjMgMjA6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiB0cnkgYW5vdGhlciB0aGluZyAzCgoyMDA3LTAyLTIzIDE3OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogdHJ5IGFub3RoZXIgdGhpbmcKCjIwMDctMDItMjMgMTc6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgc29tZSBkZWJ1ZyBzdHVmZgoKMjAwNy0wMi0yMyAxNjo0NCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBzb21lIGRlYnVnIHN0dWZmCgoyMDA3LTAyLTIzIDE0OjM3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IERpc2FibGUgdGVzdCB1bnRpbCBnZW5lcmF0b3JzIGFyZQoJICBmaXhlZAoKMjAwNy0wMi0yMyAxMTozMCAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IFRyeSB0byBmaXggc3BhY2VzIGluIHRoZSBwYXRoIHByb2JsZW0KCjIwMDctMDItMjMgMTE6MTcgIGFuZHkKCgkqIFRlc3RzL1NpbXBsZUV4Y2x1ZGUvcnVuLmNtYWtlLmluOiBFTkg6IFRyeSB0byBmaXggc3BhY2VzIGluIHRoZQoJICBwYXRoIHByb2JsZW0KCjIwMDctMDItMjMgMTA6MzEgIGFuZHkKCgkqIFRlc3RzL1NpbXBsZUV4Y2x1ZGUvOiBkaXJDL2RpckEvQ01ha2VMaXN0cy50eHQsCgkgIGRpckMvZGlyQi9DTWFrZUxpc3RzLnR4dCwgZGlyRC9DTWFrZUxpc3RzLnR4dDogRU5IOiBGb3JjZQoJICBsaWJyYXJpZXMgdG8gYmUgc3RhdGljCgoyMDA3LTAyLTIzIDA5OjU0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HZXRUZXN0UHJvcGVydHlDb21tYW5kLmg6IEVOSDogYWRkZWQgc29tZSBkb2N1bWVudGF0aW9uCgkgIG9uIGhvdyB0byBmaW5kIHRoZSBkZWZhdWx0IHByb3BlcnRpZXMgb2YgYSB0ZXN0CgoyMDA3LTAyLTIzIDA5OjQ2ICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgRU5IOiBNYWtlIEVYQ0xVREVfRlJPTV9BTEwgYSB0YXJnZXQgYW5kIGRpcmVjdG9yeSBwcm9wZXJ0aWVzLgoJICBBbHNvLCBtYWtlIElzSW5BbGwgdXNlIEVYQ0xVREVfRlJPTV9BTEwuIEFsc28sIGVuYWJsZSB0aGUgdGVzdAoJICB0aGF0IHRlc3RzIHRoaXMKCjIwMDctMDItMjMgMDk6NDUgIGFuZHkKCgkqIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eDogQlVHOiBQcm9kdWNlIGVycm9yIHdoZW4KCSAgaW5jbHVkZSBkaXJlY3RvcmllcyBpcyBpbnZva2VkIHdpdGggYW4gZW1wdHkgbGlzdAoKMjAwNy0wMi0yMiAxNzozNCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGhhY2sgcHV0IHRoZSBoYWNrIGJhY2sgZm9yIHFueAoJICB0byB0cnkgYW5kIGZpeCBzcGFjZXMgaW4gdGhlIHBhdGgKCjIwMDctMDItMjIgMTc6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiB1bmRvIGhhY2sgYW5kIHRyeSB0byBnZXQKCSAgZGFzaGJvYXJkIGJhY2sKCjIwMDctMDItMjIgMTc6MTUgIGhvZmZtYW4KCgkqIFRlc3RzL1N1YkRpclNwYWNlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgYSBjb21tZW50CgoyMDA3LTAyLTIyIDE2OjIzICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogSGFjayB0byB0cnkgd29ya2luZyBhcm91bmQgYQoJICBwcm9ibGVtIHdpdGggc3BhY2VzIGluIGFuIHJwYXRoIG9uIFFOWC4KCjIwMDctMDItMjIgMTU6NDMgIGhvZmZtYW4KCgkqIFRlc3RzL1N1YkRpclNwYWNlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBzaG93IG1ha2UgcmVzdWx0cyBvbiB0aGUKCSAgZGFzaGJvYXJkCgoyMDA3LTAyLTIyIDE1OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogYWRkIG5ldyBlc2NhcGUgc3R1ZmYKCjIwMDctMDItMjIgMTU6MjcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogRml4IGJ1ZyM0NDgyLgoKMjAwNy0wMi0yMiAxNToxNiAgYW5keQoKCSogVGVzdHMvU2ltcGxlRXhjbHVkZS9ydW4uY21ha2UuaW46IENPTVA6IFVzZSBleGVjX3Byb2dyYW0gaW5zdGVhZAoJICBvZiBleGVjdXRlX3Byb2Nlc3MKCjIwMDctMDItMjIgMTE6NDIgIGFuZHkKCgkqIFRlc3RzL1NpbXBsZUV4Y2x1ZGUvOiBDTWFrZUxpc3RzLnR4dCwgcnVuLmNtYWtlLmluOiBFTkg6IEltcHJvdmUKCSAgdGVzdAoKMjAwNy0wMi0yMiAxMDozMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFjdHVhbGx5IGtlZXAgdGhlIG91dHB1dAoKMjAwNy0wMi0yMiAxMDowNSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2Ugc3VyZSBFWEVDVVRFX1BST0NFU1MgaXMgdGhlcmUKCSAgYmVjYXVzZSBpbiBib290c3RyYXAgaXQgaXMgbm90CgoyMDA3LTAyLTIyIDA5OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiByZW1vdmUgd2FybmluZwoKMjAwNy0wMi0yMiAwOTo0NCAgbWFydGluawoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tPU1hYMTFHZW5lcmF0b3IuY3h4OiBTVFlMRTogZml4IHNvbWVvbmVzIGxpbmUKCSAgbGVuZ3RoCgoyMDA3LTAyLTIyIDA5OjEwICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IFByb2R1Y2UgYW4gZXJyb3Igd2hlbiB0aGUgc2NyaXB0IGlzIG5vdAoJICBmb3VuZAoKMjAwNy0wMi0yMiAwODozOSAgYW5keQoKCSogVGVzdHMvU2ltcGxlRXhjbHVkZS86IENNYWtlTGlzdHMudHh0LCBkaXJDL0NNYWtlTGlzdHMudHh0LAoJICBkaXJDL2RpckEvQ01ha2VMaXN0cy50eHQsIGRpckMvZGlyQS90MS5jLCBkaXJDL2RpckEvdDIuYywKCSAgZGlyQy9kaXJBL3QzLmMsIGRpckMvZGlyQS90NC5jLCBkaXJDL2RpckEvdDUuYywKCSAgZGlyQy9kaXJCL0NNYWtlTGlzdHMudHh0LCBkaXJDL2RpckIvdDYuYywgZGlyQy9kaXJCL3Q3LmMsCgkgIGRpckQvQ01ha2VMaXN0cy50eHQsIGRpckQvdDguYywgZGlyRC90OS5jOiBFTkg6IEFkZCBzaW1wbGUKCSAgZXhjbHVzaW9uIHRlc3QgZm9yIHN1YmRpcmVjdG9yaWVzCgoyMDA3LTAyLTIxIDIxOjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBUZXN0cy9TdWJEaXJTcGFjZXMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N1YkRpclNwYWNlcy9Tb21lKHg4NikgU291cmNlcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3ViRGlyU3BhY2VzL1NvbWUoeDg2KSBTb3VyY2VzL3Rlc3QuYywKCSAgVGVzdHMvU3ViRGlyU3BhY2VzL1RoaXJkU3ViRGlyL3Rlc3Rmcm9tYXV4c3ViZGlyLmM6IEVOSDogZml4CgkgIHBhcmVucyBpbiB0aGUgcGF0aCB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aAoKMjAwNy0wMi0yMSAxNDo1OCAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHR1cm4gb24gc3BhY2VzIHRlc3QgZm9yIG1vcmUKCSAgcGxhdGZvcm1zCgoyMDA3LTAyLTIxIDE0OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGdldCByaWQgb2Ygc29tZSBleHRyYSBlcmFzZQoJICBjYWxscwoKMjAwNy0wMi0yMSAxNDowNyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNy0wMi0yMSAxNDowMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtWENvZGVPYmplY3QuY3h4OiBCVUc6IGZpeAoJICBmb3IgcXVvdGVzIGluIHN0cmluZ3MgZm9yIGZsYWdzICM0MDIyCgoyMDA3LTAyLTIxIDEzOjMzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IENPTVA6IERpc2FibGUgTEZTIG9uIEFJWC4KCjIwMDctMDItMjEgMTI6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgdW51c2VkCgkgIHZhcmlhYmxlCgoyMDA3LTAyLTIxIDExOjU4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogdHVybiBvbiBzcGFjZXMgdGVzdCBmb3IgbW9yZQoJICBwbGF0Zm9ybXMKCjIwMDctMDItMjEgMTE6NDUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IGZvcmNlIGMrKyB3aGVuIGJ1aWxkaW5nIGMrKwoJICBvYmplY3RzCgoyMDA3LTAyLTIxIDEwOjI5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlOiBFTkg6IGJldHRlciBwcm9jZXNzb3IKCSAgZGV0ZWN0aW9uIG9uIGxpbnV4CgoyMDA3LTAyLTIxIDEwOjAzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlOiBFTkg6IHJlbW92ZSBkZgoJICBiZWNhdXNlIGRmIGlzIGEgdW5peCB1dGlsaXRpeQoKMjAwNy0wMi0yMCAxNjo0MyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBQbGF0Zm9ybS9XaW5kb3dzLWRmLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDM5NTAgYWRkIHN1cHBvcnQgZm9yCgkgIGRmIGNvbXBpbGVyIG9uIHdpbmRvd3MKCjIwMDctMDItMjAgMTY6MzUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyAjIDM5NTQgZ2xpYiB3aXRoIHF0CgoyMDA3LTAyLTIwIDE2OjA1ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlOiBTVFlMRTogZml4IGRvY3MgZm9yIEZpbmRLREU0LmNtYWtlCgoJICBBbGV4CgoyMDA3LTAyLTIwIDE2OjAyICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZEtERTMuY21ha2UsIEtERTNNYWNyb3MuY21ha2U6IEJVRzogcmVtb3ZlCgkgIEtERTNfRU5BQkxFX0ZJTkFMICgjNDE0MCk6IGl0IGRvZXNuJ3Qgd29yayBjdXJyZW50bHkgYW5kIEkgZG9uJ3QKCSAgaGF2ZSB0aGUgdGltZSB0byBmaXggdGhpcyBzaW5jZSBpdCB3b3VsZCByZXF1aXJlIGJpZ2dlciBjaGFuZ2VzLgoJICBNYXliZSBJJ2xsIGRvIHRoaXMgaWYgdGhlIEtERTMgc3VwcG9ydCBvZiBDTWFrZSBiZWNvbWVzIG1vcmUKCSAgd2lkZWx5IHVzZWQuCgoJICBBbGV4CgoyMDA3LTAyLTIwIDE2OjAwICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRMaWJYbWwyLmNtYWtlOiBTVFlMRTogZG9uJ3QgcHV0IHRoZSBjb3B5cmlnaHQgbm90aWNlCgkgIHR3aWNlIGluIHRoZSBmaWxlCgoJICBBbGV4CgoyMDA3LTAyLTIwIDE1OjE1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogZml4IGZvciBidWcgNDE4NyBmaXggdHlwbyBpbiBkb2NzCgoyMDA3LTAyLTIwIDE1OjE0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVW5peEZpbmRNYWtlLmNtYWtlOiBCVUc6IGZpeCBmb3IgNDE4OCBsb29rIGZvciBzbWFrZQoJICBhcyB3ZWxsIGFzIGdtYWtlIGFuZCBtYWtlCgoyMDA3LTAyLTIwIDE1OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5oOiBFTkg6IGZpeCBzcGVsbGluZyBlcnJvciBidWcgIyA0MjMzCgoyMDA3LTAyLTIwIDE1OjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogb25seSBhZGQgdGhlIHRlc3QgZm9yIHNvbWUgcGxhdGZvcm1zCgoyMDA3LTAyLTIwIDEzOjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IHNvdXJjZSBleHRlbnNpb25zCgkgIGZyb3IgdHh0IG9uIHhjb2RlCgoyMDA3LTAyLTIwIDEyOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBXYXRjb20KCjIwMDctMDItMjAgMTE6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vUU5YLmNtYWtlOiBFTkg6IHRyeSB0byBmb3JjZSBjKysgb24gcW54CgoyMDA3LTAyLTIwIDExOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBmb3JjZSBsYW5ndWFnZQoJICBzdHVmZgoKMjAwNy0wMi0yMCAxMDo1NyAgaG9mZm1hbgoKCSogVGVzdHMvU2V0TGFuZy9DTWFrZUxpc3RzLnR4dDogRU5IOiB2ZXJib3NlCgoyMDA3LTAyLTIwIDEwOjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBjcmFzaAoKMjAwNy0wMi0yMCAwOTo1NCAgaG9mZm1hbgoKCSogTW9kdWxlcy9JbnN0YWxsUmVxdWlyZWRTeXN0ZW1MaWJyYXJpZXMuY21ha2U6IEJVRzogZml4IGZvciBidWcKCSAgNDQyMCBhZGQgbGFuZ3VhZ2UgZGxsJ3MgdG8gbWZjIGluc3RhbGwKCjIwMDctMDItMjAgMDk6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvU2V0TGFuZy9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2V0TGFuZy9iYXIuYywKCSAgVGVzdHMvU2V0TGFuZy9mb28uYzogQlVHOiBmaXggZm9yIGJ1ZyA0NDIzIHNldCBsYW5ndWFnZSBmaXhlcwoKMjAwNy0wMi0xOSAxNjozNCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHJlbW92ZSBDb252TGliIHRlc3QgZm9yIG5vdwoKMjAwNy0wMi0xOSAxNToxMiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSBjb3JyZWN0IG5hbWUKCjIwMDctMDItMTkgMTU6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiB1c2UgcHJvamVjdCBub3QgdGFyZ2V0CgkgIG5hbWUKCjIwMDctMDItMTkgMTQ6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU3ViRGlyU3BhY2VzL0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIG1ha2UgdGhlIHRlc3QgcmVhbGx5IHRlc3QgdGFyZ2V0cyB3aXRoIHNwYWNlcwoKMjAwNy0wMi0xOSAxNDozMiAgbWFydGluawoKCSogU291cmNlLzogY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBCVUc6IGZpeCBhY2NpZGVudGFsIGNoZWNraW4KCjIwMDctMDItMTkgMTQ6MjYgIG1hcnRpbmsKCgkqIFRlc3RzL1N1YkRpclNwYWNlcy9FeGVjdXRhYmxlIFNvdXJjZXMvOiBDTWFrZUxpc3RzLnR4dCwgdGVzdC5jeHg6CgkgIEVOSDogYWRkZWQgdXNlZCBzb3VyY2VzIHdpdGggYSBwYXRoIHRoYXQgaGFzIHNwYWNlcwoKMjAwNy0wMi0xOSAxNDoyNSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBmaXhlZCBtb3JlIGJ1Z3Mgd2l0aCBzcGFjZXMKCSAgaW4gdGhlIHBhdGgKCjIwMDctMDItMTkgMTM6NTMgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vZ2NjLmNtYWtlOiBCVUc6IEFwcGxpZWQgcGF0Y2ggZnJvbSBidWcjNDQ2Mi4KCjIwMDctMDItMTkgMTM6NDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA0NDY0IGhhbmRsZSBxbWFrZSBlcnJvcnMKCSAgYmV0dGVyCgoyMDA3LTAyLTE5IDEzOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NvbnZMaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZAoJICB0ZXN0IGZvciBjb252IGxpYnJhcmllcwoKMjAwNy0wMi0xOSAxMzoyMCAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOiB0dXJuIG9uCgkgIHNwYWNlcyBpbiBwYXRoIHRlc3QKCjIwMDctMDItMTkgMTI6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZml4IGZvciBzcGFjZXMgaW4gcGF0aAoJICBmb3Igbm1ha2UKCjIwMDctMDItMTkgMTI6MjEgIG1hcnRpbmsKCgkqIFRlc3RzL1N1YkRpclNwYWNlcy86IENNYWtlTGlzdHMudHh0LAoJICB2Y2xfYWxnb3JpdGhtK3ZjbF9wYWlyK2RvdWJsZS5mb28uYywKCSAgdmNsX2FsZ29yaXRobV92Y2xfcGFpcl9kb3VibGUuZm9vLmMsIEFub3RoZXIKCSAgU3ViZGlyL3BhaXIraW50LmludC5jLCBBbm90aGVyIFN1YmRpci9wYWlyX2ludC5pbnQuYywgQW5vdGhlcgoJICBTdWJkaXIvc2Vjb25kb25lLmMsIEFub3RoZXIgU3ViZGlyL3Rlc3Rmcm9tc3ViZGlyLmMsCgkgIEV4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsIEV4ZWN1dGFibGUvdGVzdC5jeHgsIFNvbWUKCSAgRXhhbXBsZXMvQ01ha2VMaXN0cy50eHQsIFNvbWUgRXhhbXBsZXMvZXhhbXBsZTEvQ01ha2VMaXN0cy50eHQsCgkgIFNvbWUgRXhhbXBsZXMvZXhhbXBsZTEvZXhhbXBsZTEuY3h4LCBTb21lCgkgIEV4YW1wbGVzL2V4YW1wbGUyL0NNYWtlTGlzdHMudHh0LCBTb21lCgkgIEV4YW1wbGVzL2V4YW1wbGUyL2V4YW1wbGUyLmN4eCwgVGhpcmRTdWJEaXIvcGFpcitpbnQuaW50MS5jLAoJICBUaGlyZFN1YkRpci9wYWlyX2ludC5pbnQxLmMsIFRoaXJkU3ViRGlyL3BhaXJfcF9pbnQuaW50MS5jLAoJICBUaGlyZFN1YkRpci90ZXN0ZnJvbWF1eHN1YmRpci5jLCBUaGlyZFN1YkRpci90aGlyZG9uZS5jOiBFTkg6IG5ldwoJICB0ZXN0IGZvciBzcGFjZXMgaW4gdGhlIHRyZWUgc3RydWN0dXJlCgoyMDA3LTAyLTE5IDExOjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBCVUc6IGZpeCBmb3Igc2hyaW5raW5nCgkgIGNtYWtlIG9oIG5vCgoyMDA3LTAyLTE4IDIxOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDItMTggMDk6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IFNUWUxFOiBmaXggd2FybmluZwoKMjAwNy0wMi0xNyAyMjo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTE3IDExOjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBleHRlcm5hbCBvYmplY3QKCSAgdGVzdAoKMjAwNy0wMi0xNyAwODo0NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21UYXJnZXQuY3h4LAoJICBDUGFjay9jbUNQYWNrT1NYWDExR2VuZXJhdG9yLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aCBpc3N1ZXMKCjIwMDctMDItMTcgMDg6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOgoJICByZW1vdmUgd2FybmluZ3MgYW5kIGRlYnVnIHN0YXRlbWVudAoKMjAwNy0wMi0xNiAxNjo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFRlc3RzL0NvbnZMaWJyYXJ5L2JhcnRlc3QuY3h4OiBFTkg6IGZpeCBmb3IgdnMgaWRlCgoyMDA3LTAyLTE2IDE2OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFhDb2RlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBUZXN0cy9Db252TGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29udkxpYnJhcnkvYmFyLmMsIFRlc3RzL0NvbnZMaWJyYXJ5L2JhcnRlc3QuY3h4LAoJICBUZXN0cy9Db252TGlicmFyeS9mb28uY3h4LCBUZXN0cy9Db252TGlicmFyeS9zdWIxL2Nhci5jeHg6IEVOSDoKCSAgY2hlY2sgaW4gaW5pdGlhbCBjb252IGxpYnJhcnkgc3R1ZmYKCjIwMDctMDItMTYgMTU6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0xNSAxNTowNyAgYW5keQoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBPdmVyd3JpdGUgdGhlIHN5bWxpbmsgaWYgaXQgYWxyZWFkeQoJICBleGlzdHMuIENsb3NlIEJ1ZyAjNDQxOCAtIGNtYWtlIC1jcmVhdGUtc3ltbGluayBkb2Vzbid0IG92ZXJ3cml0ZQoJICBleGlzdGluZyBzeW1saW5rcwoKMjAwNy0wMi0xNSAxMzozNiAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHg6CgkgIEVOSDogbW92ZSBAQCBmaXggZnJvbSBtYWluIHRyZWUKCjIwMDctMDItMTUgMTI6NDUgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlLAoJICBTb3VyY2UvY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwgU291cmNlL2NtSWZDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSWZDb21tYW5kLmgsIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eC5iYWs6CgkgIEVOSDogbWVyZ2UgaW4gY2hhbmdlcyBmcm9tIG1haW4gdHJlZSwgaW5jbHVkaW5nIGZpeCBmb3IgZXhjZXB0aW9uCgkgIHN0dWZmIGluIHZzIDcKCjIwMDctMDItMTUgMTI6MjMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IGhhY2sgdGhlCgkgIGV4Y2VwdGlvbiBoYW5kbGluZyBkZWZhdWx0IGZvciBsaW5rZXIgZmxhZ3Mgb3IgZm9yCgkgIHBlci1zb3VyY2UtZmlsZSBmbGFncy4KCjIwMDctMDItMTQgMjI6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0xMyAyMjo0NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTEzIDE0OjEyICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja09TWFgxMUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrT1NYWDExR2VuZXJhdG9yLmgsIE1vZHVsZXMvQ1BhY2suRFNfU3RvcmUuaW4sCgkgIE1vZHVsZXMvQ1BhY2suVm9sdW1lSWNvbi5pY25zLmluLAoJICBNb2R1bGVzL0NQYWNrLmJhY2tncm91bmQucG5nLmluLCBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IE1vcmUKCSAgd29yayBvbiB0aGUgcGFja2FnaW5nLiBBZGQgQXBwbGljYWl0b25zLCBhZGQgaWNvbnMsIGV0YwoKMjAwNy0wMi0xMiAyMzoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTEyIDEyOjA2ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNyZWF0ZS1jbWFrZS1yZWxlYXNlLmNtYWtlLAoJICByZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IGFkZCBjeWd3aW4gY3BhY2sgc3R1ZmYgdG8gcmVsZWFzZQoJICBzY3JpcHRzCgoyMDA3LTAyLTEyIDA5OjE1ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS92b2dvbl9jeWd3aW4uY21ha2U6IEVOSDogYWRkIGN5Z3dpbiBvbiB2b2dvbgoKMjAwNy0wMi0xMSAyMjozNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTEwIDIyOjIzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDItMTAgMDk6NTIgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFBORy5jbWFrZTogU1RZTEU6IHJlbW92ZSBlbXB0eSBsaW5lLCBzbyB0aGUKCSAgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIG1vZHVsZSBpcyBjb21wbGV0ZSBhZ2FpbgoKCSAgQWxleAoKMjAwNy0wMi0wOSAyMjoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTA5IDEzOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmgsIGNtTWFrZWZpbGUuY3h4OiBFTkg6IGFkZCBhdG9ubHkKCSAgc3VwcG9ydCB0byBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHggYW5kIHJlbW92ZSBvbGQKCSAgbm9uLXlhY2MgcGFyc2VyIGNvZGUgZnJvbSBjbU1ha2VmaWxlLmN4eAoKMjAwNy0wMi0wOCAyMjowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTA4IDE2OjE4ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9QcmVjb21waWxlZEhlYWRlci9mb28xLmMsIFRlc3RzL1ByZWNvbXBpbGVkSGVhZGVyL2ZvbzIuYywKCSAgVGVzdHMvUHJlY29tcGlsZWRIZWFkZXIvZm9vX3ByZWNvbXBpbGUuYywKCSAgVGVzdHMvUHJlY29tcGlsZWRIZWFkZXIvaW5jbHVkZS9mb28uaCwKCSAgVGVzdHMvUHJlY29tcGlsZWRIZWFkZXIvaW5jbHVkZS9mb29fcHJlY29tcGlsZWQuaDogRU5IOiBBZGRlZAoJICBQcmVjb21waWxlZEhlYWRlciB0ZXN0IGZvciBNU1ZDIGNvbXBpbGVycy4KCjIwMDctMDItMDcgMjI6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0wNyAxNDo1MCAgYWxleAoKCSogTW9kdWxlcy86IFVzZUVjb3MuY21ha2UsIGVjb3NfY2xlYW4uY21ha2U6IEVOSDogbm93IGFsc28gdGhlCgkgICJlY29zY2xlYW4iIHRhcmdldCB3b3JrcyB3aXRoIE1TIG5tYWtlCgoJICBBbGV4CgoyMDA3LTAyLTA3IDExOjUwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogZml4IGZvciBidWcgNDM5OQoKMjAwNy0wMi0wNyAxMTo0OSAgaG9mZm1hbgoKCSogU291cmNlLzogY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHg6IEJVRzogZml4IGZvciBidWcgNDQxNCwgZmluZAoJICB0YXJnZXRzIGluIHRoZSBnbG9iYWwgZ2VuZXJhdG9yIGZvciBzZXRfdGFyZ2V0X3Byb3BlcnRpZXMgYW5kCgkgIGFkZF9kZXBlbmRlbmNpZXMKCjIwMDctMDItMDcgMTA6MjYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlOiBCVUc6IGZpeCBmb3IgNDQyMAoJICBVbmljb2RlIGFuZCBNQkMgdmVyc2lvbnMgb2YgdGhlIE1GQwoKMjAwNy0wMi0wNyAwOToyMyAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0MuY3h4OiBTVFlMRTogRml4ZWQgbGluZS10b28tbG9uZy4KCjIwMDctMDItMDYgMjE6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0wNiAxNjowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IGZpeAoJICBkb2N1bWVudGF0aW9uIHRvIGluY2x1ZGUgc291cmNlIGxhbmd1YWdlIHByb3BlcnR5CgoyMDA3LTAyLTA2IDE1OjA1ICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogQlVHOiBQYXRjaCBmcm9tIEFsZXggdG8gZml4CgkgIHNpbmdsZS1jb21tYW5kIGhlbHAgYnJva2VuIGJ5IHByZXZpb3VzIHBhdGNoLgoKMjAwNy0wMi0wNiAxMDowMSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHg6IEVOSDogZml4CgkgIHJlbGVhc2UgdHJlZSB0byBidWlsZCBvbiBtYWMKCjIwMDctMDItMDUgMjE6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0wNSAxNDowNSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogbWVyZ2UgY2hhbmdlcyBmcm9tCgkgIG1haW4gdHJ1bmsKCjIwMDctMDItMDUgMTM6MjEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBjbWFrZV91bmluc3RhbGwuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ1BhY2suY21ha2UsIE1vZHVsZXMvRmluZEtERTQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFhNTFJQQy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQlppcDJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckJaaXAyR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuaCwgU291cmNlL2t3c3lzL1N5c3RlbS5oLmluLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvQ3lnd2luL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DeWd3aW4vUkVBRE1FLmN5Z3dpbi5pbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvQ3lnd2luL2N5Z3dpbi1wYWNrYWdlLnNoLmluLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DeWd3aW4vY3lnd2luLXBhdGNoLmRpZmYuaW4sCgkgIFV0aWxpdGllcy9SZWxlYXNlL0N5Z3dpbi9jeWd3aW4tc2V0dXAuaGludC5pbiwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tDeWd3aW5CaW5hcnlHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpbkJpbmFyeUdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpblNvdXJjZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrQ3lnd2luU291cmNlR2VuZXJhdG9yLmg6IEVOSDogbWVyZ2UgaW4KCSAgY2hhbmdlcyBmcm9tIGJyYW5jaAoKMjAwNy0wMi0wNSAxMToxMyAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBhZGQKCSAgbW9yZSB0aW1lIHRvIGJvb3RzdHJhcCB0ZXN0CgoyMDA3LTAyLTA1IDA5OjQ4ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNDLmN4eCwgY21EZXBlbmRzQy5oOiBCVUc6IFBhdGNoIGZyb20gQWxleCB0bwoJICByZWNvbXB1dGUgZGVwZW5kZW5jaWVzIHdoZW4gdGhlIGluY2x1ZGUgcmVnZXggY2hhbmdlcy4gIFRoaXMKCSAgYWRkcmVzc2VzIGJ1ZyM0MTY4LgoKMjAwNy0wMi0wNCAyMTo0NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAyLTAzIDIxOjQxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDItMDIgMjE6MjggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0wMiAxNjo1MiAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0N5Z3dpblNvdXJjZUdlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tUYXJCWmlwMkdlbmVyYXRvci5jeHg6IFNUWUxFOiBmaXggd2FybmluZ3MKCjIwMDctMDItMDIgMTY6NTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBmaXggZGVwZW5kIGJ1ZyBpbiBxdAoKMjAwNy0wMi0wMiAxNDo0MCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ1BhY2suY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0NQYWNrL2JpbGxzLWNvbW1lbnRzLnR4dCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tDeWd3aW5CaW5hcnlHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpbkJpbmFyeUdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0N5Z3dpblNvdXJjZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrQ3lnd2luU291cmNlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tPU1hYMTFHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQlppcDJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckJaaXAyR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuaCwgU291cmNlL0NQYWNrL2N5Z3dpbi5yZWFkbWUsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NyZWF0ZS1jbWFrZS1yZWxlYXNlLmNtYWtlLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2NtYWtlLmNtYWtlLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DeWd3aW4vQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL0N5Z3dpbi9SRUFETUUuY3lnd2luLmluLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DeWd3aW4vY3lnd2luLXBhY2thZ2Uuc2guaW46IEVOSDogYWRkIHN1cHBvcnQKCSAgZm9yIGN5Z3dpbiBzb3VyY2UgYW5kIGJpbmFyeSBwYWNrYWdpbmcKCjIwMDctMDItMDIgMTQ6MTMgIGtpbmcKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uaDogQ09NUDogRml4IHZvaWQgcmV0dXJuIGZhaWx1cmUuCgoyMDA3LTAyLTAyIDEyOjQ2ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRHZXR0ZXh0LmNtYWtlOiBCVUc6IGFkZCBnZXR0ZXh0IG1vZHVsZSBmb3Igd29ya2luZwoJICB3aXRoIEdOVSBnZXR0ZXh0ICgjNDA4MSkKCgkgIEFsZXgKCjIwMDctMDItMDIgMTA6MTQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhbGxvdyB0aGUgZGFzaGJvYXJkIHRvIG92ZXJyaWRlIHRoZQoJICB0aW1lb3V0cyBmb3IgQ1Rlc3RUZXN0CgoyMDA3LTAyLTAyIDA5OjExICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmg6IFNUWUxFOiBGaXhlZCBsaW5lIGxlbmd0aCBhbmQgdGhpcy0+CgkgIGNvbnZlbnRpb24gdmlvbGF0aW9ucyBmcm9tIHllc3RlcmRheSdzIHBhdGNoLgoKMjAwNy0wMi0wMiAwOToxMSAga2luZwoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuY3h4OiBTVFlMRTogRml4ZWQgbGluZS10b28tbG9uZy4KCjIwMDctMDItMDEgMjA6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMi0wMSAxNzowNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNy0wMi0wMSAxNjo1NiAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IFVzZSB0aGUgZXhlL2xpYiBvdXRwdXQKCSAgcGF0aCBmb3IgLnBkYiBmaWxlIGxvY2F0aW9uLglUaGlzIGFkZHJlc3NlcyBidWcjMzI3NyBhbmQKCSAgYnVnIzQyODcuCgoyMDA3LTAyLTAxIDE2OjU0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXQuaDogRU5IOiBBZGRlZCBjbVRhcmdldDo6R2V0UERCTmFtZSBtZXRob2QgdG8gc2ltcGxpZnkKCSAgY29tcHV0YXRpb24gb2YgLnBkYiBmaWxlIG5hbWUgZm9yIGEgdGFyZ2V0LgoKMjAwNy0wMi0wMSAxNjo1MiAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IGNsZWFuIHRoZSAucGRiCgkgIGZpbGUgZm9yIGEgdGFyZ2V0IGp1c3QgYmVmb3JlIGl0IGlzIGxpbmtlZCEgIFRoaXMgZmluaXNoZXMKCSAgYWRkcmVzc2luZyBidWcjNDM0MS4KCjIwMDctMDItMDEgMTY6MDcgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogQ2xlYW4gcnVsZQoJICBmb3IgZXhlIHBkYiBmaWxlIHNob3VsZCB1c2UgZnVsbCBwYXRoLgoKMjAwNy0wMi0wMSAxNTo0NCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBEbyBub3QgdXNlIGJpdHdpc2UKCSAgT1Igb24gYm9vbC4KCjIwMDctMDItMDEgMTU6MjIgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBTVFlMRTogUmVtb3ZlZCB1bnVzZWQKCSAgbWV0aG9kIGRlY2xhcmF0aW9ucy4KCjIwMDctMDItMDEgMTU6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogQWRkZWQgYSBzcGVjaWFsCgkgIGZsYWdzIGludGVnZXIgZmllbGQgdG8gdGhlIGZsYWcgbWFwIGVudHJpZXMuCUFkZGVkIGZsYWdzIGZvcgoJICB1c2VyIHZhbHVlcyBhbmQgb3RoZXIgc3BlY2lhbCBjYXNlcy4JQWRkZWQgcHJlY29tcGlsZWQgaGVhZGVyCgkgIGZsYWcgdHJhbnNsYXRpb24gZW50cmllcy4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMzNTEyLgoKMjAwNy0wMi0wMSAxNDo0NSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogU1RZTEU6IFJlbW92ZWQgb25lIG1vcmUgc3RyYXkKCSAgY29tbWVudC4KCjIwMDctMDItMDEgMTQ6NDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IFNUWUxFOiByZW1vdmVkIGNvZGUgYWNjaWRlbnRseQoJICBjaGVja2VkIGluCgoyMDA3LTAyLTAxIDE0OjExICBtYXJ0aW5rCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIG51bWJlciAzMzIwCgoyMDA3LTAyLTAxIDEzOjA0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBDT01QOiBSZW1vdmVkIHVudXNlZAoJICB2YXJpYWJsZS4KCjIwMDctMDItMDEgMTI6MDIgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgc21va2UKCSAgdGVzdCBmb3IgdXNlci12YWx1ZSBmbGFnIG1hcHBpbmcgZm9yIFZTIElERS4KCjIwMDctMDItMDEgMTI6MDAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogQWRkZWQgbWFwcGluZyBvZgoJICAvTk9ERUZBVUxUTElCIGZsYWcgd2hlbiBubyB2YWx1ZXMgYXJlIHByb3ZpZGVkLgoKMjAwNy0wMi0wMSAxMTo0OSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBFTkg6IFJlaW1wbGVtZW50ZWQgcGFyc2luZyBhbmQKCSAgbWFwcGluZyBvZiBmbGFncyBpbnRvIHZjcHJvaiBmaWxlIGF0dHJpYnV0ZSBvcHRpb25zLglUaGlzIGNsZWFucwoJICB1cCBhbmQgY2VudHJhbGl6ZXMgYSBmZXcgdGhpbmdzLiAgSXQgaXMgaW4gcHJlcGFyYXRpb24gZm9yCgkgIGRlYWxpbmcgd2l0aCBwcmVjb21waWxlZCBoZWFkZXIgZmxhZ3MgZm9yIGJ1ZyAjMzUxMiBzaW5jZSB0aGV5CgkgIHJlcXVpcmUgc29tZSBzcGVjaWFsIGhhbmRsaW5nLgoKMjAwNy0wMi0wMSAxMTo0NSAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGRlZAoJICBFc2NhcGVXaW5kb3dzU2hlbGxBcmd1bWVudCBhbmQgUGFyc2VXaW5kb3dzQ29tbWFuZExpbmUgbWV0aG9kcyB0bwoJICBjbVN5c3RlbVRvb2xzLgoKMjAwNy0wMi0wMSAxMTozMyAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIG51bWJlcgoJICAzOTY0CgoyMDA3LTAyLTAxIDEwOjM4ICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaDogRU5IOiBQYXRjaCBmcm9tCgkgIEFsZXggdG8gaW1wcm92ZSBpbXBsZW1lbnRhdGlvbiBhbmQgcHJlcGFyZSBmb3Igc3BsaXR0aW5nIHRoZSBtYW4KCSAgcGFnZSBpbnRvIG1vcmUgc2VjdGlvbnMuCgoyMDA3LTAyLTAxIDA5OjU3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDoKCSAgQlVHOiBUaGUgLnBkYiBmaWxlIGdlbmVyYXRlZCBmb3IgYSBsaWJyYXJ5IG9yIGV4ZWN1dGFibGUgc2hvdWxkCgkgIG1hdGNoIHRoZSByZWFsIGZpbGUgbmFtZSB1c2VkIGZvciB0aGUgdGFyZ2V0LiAgVGhpcyBhZGRyZXNzZXMKCSAgYnVnIzMyNzcuCgoyMDA3LTAxLTMxIDIwOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMzEgMTY6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tDeWd3aW5Tb3VyY2VHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrQ3lnd2luU291cmNlR2VuZXJhdG9yLmg6IEVOSDogY29tbWl0IGN5Z3dpbiBzb3VyY2UKCSAgZ2VuZXJhdG9yIGZpbGVzLCBub3QgdXNlZCB5ZXQKCjIwMDctMDEtMzEgMTY6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBkbyBub3QgdXNlIGNyYXp5IGxvbmcgcGF0aHMgdG8KCSAgb2JqZWN0IGZpbGVzIGZvciB0cnkgY29tcGlsZQoKMjAwNy0wMS0zMSAxNjo0OCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvQ3lnd2luLzogQ01ha2VMaXN0cy50eHQsIFJFQURNRS5jeWd3aW4uaW4sCgkgIGN5Z3dpbi1wYWNrYWdlLnNoLmluLCBjeWd3aW4tcGF0Y2guZGlmZi5pbiwgY3lnd2luLXNldHVwLmhpbnQuaW46CgkgIEVOSDogYWRkIHN1cHBvcnQgZmlsZXMgZm9yIGNwYWNrIGN5Z3dpbiBzZXR1cCBwYWNrYWdlIHN0dWZmCgoyMDA3LTAxLTMxIDE1OjA2ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogZmluYWxseSBmaXggIzQzMzEsIHRoZSBwcmV2aW91cwoJICB2ZXJzaW9uIGp1c3QgY2F1Z2h0IHRoZSB0YWcsIHRoZSBmaWxlbmFtZSBub3QgYXQgYWxsCgoJICBBbGV4CgoyMDA3LTAxLTMxIDE0OjAwICBob2ZmbWFuCgoJKiBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBtb3JlIG91dHB1dCB3aGVuIHRlc3QKCSAgZmFpbHMKCjIwMDctMDEtMzEgMTM6NTQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogUmVtb3ZlIG9zeCBidW5kbGUgZnJvbQoJICBPU1hTY3JpcHRMYXVuY2hlcgoKMjAwNy0wMS0zMSAxMzo1MyAgYW5keQoKCSogU291cmNlL0NQYWNrL09TWFNjcmlwdExhdW5jaGVyLmN4eDogQ09NUDogVXNlIG5ldyBBUEkKCjIwMDctMDEtMzEgMTM6MzcgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogQWRkIG1pc3NpbmcgZmlsZSBpbiB0aGUgaW5zdGFsbGF0aW9uCgoyMDA3LTAxLTMxIDEzOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IEJVRzogbWFrZSBzdXJlIGV4dGVybmFsIHZzCgkgIHByb2plY3RzIHVzZSB0aGUgR1VJRCBpbiB0aGUgcHJvamVjdCBpZiBpdCBoYXMgb25lLgoKMjAwNy0wMS0zMCAyMDoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTMwIDE1OjQzICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlOiBTVFlMRTogS0RFRElSIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkLAoJICBzbyBhbHNvIGRvY3VtZW50IHRoYXQgS0RFRElSUyBpcyB1c2VkIGluc3RlYWQKCgkgIEFsZXgKCjIwMDctMDEtMzAgMTE6NDggIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eDogRU5IOiBBbGxvdyB0byBzcGVjaWZ5IGJ1aWxkCgkgIHRhcmdldAoKMjAwNy0wMS0zMCAxMTo0OCAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBDT01QOiBGaXggYm9vdHN0cmFwCgoyMDA3LTAxLTMwIDExOjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5oLCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eDogQlVHOiBmaXhlcyBzbyB0aGF0CgkgIC0tYnVpbGQtYW5kLXRlc3Qgd2lsbCBob25vciB0aW1lb3V0cwoKMjAwNy0wMS0zMCAxMTozMiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBhbGxvdyBjb3B5IGlmIGRpZmZlcmVudCBmcm9tIGEKCSAgZmlsZSB0byBhIGRpcmVjdG9yeSB0byB3b3JrCgoyMDA3LTAxLTI5IDIwOjMwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMjkgMTI6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBmaXggaW4gdGhlIHRpbWVvdXQgY29kZQoKMjAwNy0wMS0yOCAyMDowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTI3IDIwOjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMjcgMTU6MjkgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL1N5c3RlbS5oLmluOiBTVFlMRTogRml4IHR5cG8KCjIwMDctMDEtMjYgMjA6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0yNiAxNTowNiAgbWFydGluawoKCSogU291cmNlL2NtSWZDb21tYW5kLmg6IFNUWUxFOiBpbXByb3ZlIElGIGRvY3VtZW50YXRpb24gdG8gY292ZXIKCSAgZWxzZWlmCgoyMDA3LTAxLTI2IDE0OjI2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogQWRkZWQgdXNlIG9mCgkgIEtXU1lTX0lOU1RBTExfQ09NUE9ORU5UX05BTUVfREVWRUxPUE1FTlQgZm9yIGhlYWRlciBmaWxlIGluc3RhbGwKCSAgcnVsZXMuCgoyMDA3LTAxLTI2IDA5OjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDctMDEtMjUgMTc6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaDogQlVHOiByZW1vdmUgZWFybHkgOwoKMjAwNy0wMS0yNSAxNTo0NCAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4LCBjbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBmaXggZm9yIDQxODYsIGtkZXZlbG9wCgkgIGFkZGluZyBmaWxlIHR3aWNlCgoyMDA3LTAxLTI1IDExOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjbVRlc3QuY3h4LCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkQW5kVGVzdEhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IEVOSDogYWRkZWQgcGVyIHRlc3QgdGltZW91dCBzdXBwb3J0CgoyMDA3LTAxLTI0IDEzOjQ1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuaCwKCSAgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmgsIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbVJlbW92ZUNvbW1hbmQuaCwgY21TdWJkaXJDb21tYW5kLmgsIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuaCwKCSAgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oLCBjbVdyaXRlRmlsZUNvbW1hbmQuaDogRU5IOiBQYXRjaAoJICBmcm9tIEFsZXggdG8gbWFrZSBkZXByZWNhdGVkIGNvbW1hbmQgZG9jdW1lbnRhdGlvbiBtb3JlCgkgIGNvbnNpc3RlbnQuCgoyMDA3LTAxLTI0IDEzOjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLCBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmg6CgkgIEVOSDogUGF0Y2ggZnJvbSBBbGV4IHRvIGRvY3VtZW50IHRoaXMgY29tbWFuZCBhcyBkaXNjb3VyYWdlZC4KCjIwMDctMDEtMjQgMDc6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0yMyAxNDoyOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IHRoaXMgZG9lcyBub3QgbmVlZCB0byBiZSBzYWZlCgkgIGFzIHRoZSB2YWx1ZSBpcyBjaGVja2VkCgoyMDA3LTAxLTIzIDE0OjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMjMgMTM6NDEgIGFsZXgKCgkqIE1vZHVsZXMvVXNlRWNvcy5jbWFrZTogQlVHOiByZWVudC5jIHdhc24ndCBpbnRlbmRlZCB0byBiZQoJICBjb21taXR0ZWQsIHRvbyBzcGVjaWFsCgoJICBBbGV4CgoyMDA3LTAxLTIzIDEzOjI5ICBhbGV4CgoJKiBNb2R1bGVzL1VzZUVjb3MuY21ha2U6IFNUWUxFOiB1c2UgZXZlbiBtb3JlIGFic29sdXRlIHBhdGhzLCBjYW4ndAoJICBodXJ0IGZvciBvdXQtb2Ytc291cmNlIGJ1aWxkcyBTVFlMRTogdXNlCgkgIFNFVF9TT1VSQ0VfRklMRVNfUFJPUEVSVElFUygpIG9uIG11bHRpcGxlIGZpbGVzIGF0IG9uY2UgaW5zdGVhZAoJICBvZiBpbnRlcmF0aW5nIG92ZXIgZWFjaCBvbmUgb2YgdGhlbSBTVFlMRTogbm8gbmVlZCB0byBhZGQKCSAgdGFyZ2V0LmxkIHRvIHRoZSBjbGVhbi1maWxlcywgdGhpcyBpcyBkb25lIG5vdyBhdXRvbWF0aWNhbGx5IGJ5CgkgIGFkZF9jdXN0b21fY29tbWFuZCgpIEVOSDogbm93IGFsc28gTVMgbm1ha2UgY2FuIGJlIHVzZWQgdG8gYnVpbGQKCSAgZWNvcyBhcHBzCgoJICBBbGV4CgoyMDA3LTAxLTIzIDEzOjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogYXZvaWQgY3Jhc2gsIGJ1dCBkbyBub3QgbWFrZSBpdAoJICBhbiBlcnJvciBpZiBpbmNsdWRlIGZsYWdzIGlzIG1pc3NpbmcgZnJvbSBhIGxhbmd1YWdlCgoyMDA3LTAxLTIzIDExOjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSB0aGUgaW5jbHVkZSBmbGFnIHJlcXVpcmVkCgkgIGZvciBhIGxhbmd1YWdlIGF2b2lkcyBzZWcgZmF1bHQKCjIwMDctMDEtMjMgMTE6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEVOSDogdW5kbyBidWcgZml4CgkgIGJlY2F1c2Ugb2YgZmFpbGVkIHRlc3QKCjIwMDctMDEtMjMgMTA6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEVOSDogYWRkIGxpbmsgZmxhZ3MgZm9yCgkgIGRlYnVnL3JlbGVhc2UgZXRjCgoyMDA3LTAxLTIyIDIwOjE0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMjIgMTA6NTIgIGtpbmcKCgkqIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuaDogRU5IOiBQYXRjaCBmcm9tIEFsZXggdG8gZG9jdW1lbnQKCSAgV1JJVEVfRklMRSBhcyBhIGRpc2NvdXJhZ2VkIGNvbW1hbmQuCgoyMDA3LTAxLTIyIDEwOjUyICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaDogQ09NUDogUGF0Y2ggZnJvbQoJICBBbGV4IGZvciBjb25zdCBjb3JyZWN0bmVzcy4KCjIwMDctMDEtMjIgMTA6MzkgIGtpbmcKCgkqIGNtYWtlX3VuaW5zdGFsbC5jbWFrZS5pbjogQlVHOiBQYXRjaCBmcm9tIGJ1ZyM0MzEyIHRvIG1ha2UKCSAgdW5pbnN0YWxsIHdvcmsgd2l0aCBERVNURElSLgoKMjAwNy0wMS0yMSAyMDowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTIwIDIxOjA1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMjAgMTA6MDUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQ09NUDogRml4IHR5cG8gdGhhdCBtYWtlcyBhbGwgUXQ0IGJ1aWxkcwoJICBicmVhawoKMjAwNy0wMS0xOSAyMDoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTE5IDExOjU1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogZml4IGZvciBidWcgNDMzMQoKMjAwNy0wMS0xOCAyMDozNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDQzMzEKCjIwMDctMDEtMTggMjA6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0xOCAxNjoxMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4OiBFTkg6IGRvIG5vdCB1c2UgcmVsYXRpdmUKCSAgcGF0aHMgZm9yIGN1c3RvbSBjb21tYW5kIGNvbW1hbmRzIGlmIHRoZXkgd29ya2luZyBkaXJlY3RvcnkgaXMKCSAgdXNlZAoKMjAwNy0wMS0xNyAxNDowNiAgYWxleAoKCSogTW9kdWxlcy9Vc2VFY29zLmNtYWtlOiBFTkg6IHRoZSBlY29zIGhlYWRlcnMgYXJlIGFsd2F5cyBpbiB0aGUKCSAgYmluYXJ5IGRpcgoKCSAgQWxleAoKMjAwNy0wMS0xNyAxMzo1NyAgYWxleAoKCSogTW9kdWxlcy9Vc2VFY29zLmNtYWtlOiBFTkg6IGJ1aWxkaW5nIGVjb3MgYXBwcyBub3cgc2VlbXMgdG8gd29yawoJICBhbHNvIG91dC1vZi1zb3VyY2UKCgkgIEFsZXgKCjIwMDctMDEtMTcgMTM6NDUgIGFsZXgKCgkqIE1vZHVsZXMvVXNlRWNvcy5jbWFrZTogQlVHOiBhbHNvIGNoZWNrIHRoYXQgdGNsc2ggaXMgYXZhaWxhYmxlLAoJICBvdGhlcndpc2UgeW91IGNhbid0IGJ1aWxkIGFueSBlQ29zIHN0dWZmIEVOSDogbWFrZSB0aGUgbmFtZSBvZgoJICB0aGUgY29uZmlnIGZpbGUgZWNvcy5lY2MgYWRqdXN0YWJsZSB2aWEgdGhlIG5ldyB2YXJpYWJsZQoJICBFQ09TX0NPTkZJR19GSUxFCgoJICBBbGV4CgoyMDA3LTAxLTE2IDE0OjM3ICBjbGludG9uCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEFkZCBzdXBwb3J0IGZvciAifm90aGVydXNlci8iCgoyMDA3LTAxLTE1IDEyOjMxICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4OiBTVFlMRTogRml4IGt3c3R5bGUKCjIwMDctMDEtMTUgMTI6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IFNUWUxFOiBmaXggbGluayBsZW5naHQKCSAgaXNzdWUKCjIwMDctMDEtMTQgMjA6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0xMyAyMDoxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTEyIDIwOjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMTIgMTY6NDcgIGNsaW50b24KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogIEhhbmRsZSAifiIgaW4gU3BsaXRQYXRoLgoKMjAwNy0wMS0xMiAwOTo1MyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY3lnd2luLXBhY2thZ2Uuc2guaW46IEVOSDogYnJlYWsgaXQgYWdhaW4KCjIwMDctMDEtMTIgMDk6NDYgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2N5Z3dpbi1wYWNrYWdlLnNoLmluOiBFTkg6IGZpeCBmb3IgbmV3ZXIgY3lnd2luCgoyMDA3LTAxLTEyIDA5OjE4ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IGNoYW5nZSB2ZXJzaW9uIG9mIGN1cnNlcwoKMjAwNy0wMS0xMSAyMTowMiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBCVUc6IGZpeCBmb3IgYnVnIDQyMzksCgkgIE5PREVGQVVMVExJQiBmbGFnIHN1cHBvcnQgaW4gaWRlCgoyMDA3LTAxLTExIDIwOjU0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMTEgMTA6NDkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuaDogU1RZTEU6IEZpeCBrd3N0eWxlIGlzc3VlcwoKMjAwNy0wMS0xMCAyMDo1NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTEwIDE5OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svT1NYU2NyaXB0TGF1bmNoZXIuY3h4OiBFTkg6IGZpeCB3YXJuaW5nIGFuZCBjb2RlCgkgIHN0eWxlCgoyMDA3LTAxLTEwIDE4OjMzICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLlJ1bnRpbWVTY3JpcHQuaW46IEVOSDogQ2hhbmdlIHBlcm1pc3Npb24gZm9yCgkgIGdldGRpc3BsYXkuc2ggdG8gbWFrZSB0aGUgcnVudGltZXNjcmlwdCB3b3JrCgoyMDA3LTAxLTEwIDE1OjQxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbjogRU5IOiByZW1vdmUgb2xkIGRvY3MKCjIwMDctMDEtMTAgMTU6MzAgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suT1NYU2NyaXB0TGF1bmNoZXIuaW4sCgkgIE1vZHVsZXMvQ1BhY2suT1NYWDExLkluZm8ucGxpc3QuaW4sCgkgIE1vZHVsZXMvQ1BhY2suUnVudGltZVNjcmlwdC5pbiwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvQ1BhY2svT1NYU2NyaXB0TGF1bmNoZXIuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tPU1hYMTFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja09TWFgxMUdlbmVyYXRvci5oOiBFTkg6IEZpcnN0IHBhc3MgYXQgQ1BhY2sKCSAgZ2VuZXJhdG9yIGZvciBPU1ggWDExIGFwcGxpY2F0aW9ucy4gVGhpcyBhcmUgYXBwbGljYXRpb25zIHRoYXQKCSAgcmVxdWlyZSBYMTEgdG8gd29yay4gVGhpcyBpcyBub3QgcmVhbGx5IGluc3RhbGxlZCBidXQgYSBidW5kbGUKCSAgcGFja2FnZXIKCjIwMDctMDEtMTAgMTQ6MjcgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogY3JlYXRlIGN5Z3dpbgoKMjAwNy0wMS0xMCAxMjozOSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogbWFrZSB0aGlzIHRoZSBmaW5hbCAyLjQuNgoKMjAwNy0wMS0wOSAyMTowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTA4IDIxOjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMDggMTU6MTIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW46IFNUWUxFOiBGaXhlZCBkb2N1bWVudGF0aW9uIG9mCgkgIGhvdyB0byBwcm9kdWNlIGZvcndhcmRpbmcgZXhlY3V0YWJsZXMgZm9yIG11bHRpLWNvbmZpZ3VyYXRpb24KCSAgYnVpbGRzIHdpdGggQ01BS0VfSU5URElSLgoKMjAwNy0wMS0wNyAyMTowNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTA2IDIyOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMDYgMDA6NDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0wNCAxNzoyOSAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGlmIGEgd3JvbmcgcW1ha2UgaGFzIGJlZW4gZm91bmQsIG1hcmsKCSAgaXQgYXMgaW52YWxpZCBpbiB0aGUgY2FjaGUsIHNvIHRoYXQgaXQgaXMgc2VhcmNoZWQgYWdhaW4gdGhlIG5leHQKCSAgdGltZSBjbWFrZSBydW5zIFRlc3RlZCBpbiBLREUgc2luY2UgSnVsIDV0aDoKCSAgaHR0cDovL3dlYnN2bi5rZGUub3JnL3RydW5rL0tERS9rZGVsaWJzL2NtYWtlL21vZHVsZXMvRmluZFF0NC5jbWFrZT9yZXY9NTU4MzE4JnZpZXc9cmV2CgoJICBBbGV4CgoyMDA3LTAxLTA0IDE2OjUwICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZFF0NC5jbWFrZSwgVXNlUXQ0LmNtYWtlOiBFTkg6IGFkZCBRVF9VU0VfUVREQlVTIGFzCgkgIGl0IGV4aXN0cyBmb3IgYWxsIG90aGVyIG1vZHVsZXMgdG9vCgoJICBBbGV4CgoyMDA3LTAxLTA0IDE2OjM1ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogYWxzbyBsb29rIGZvciBxbWFrZTQsIGFzIGl0IGlzIG5hbWVkCgkgIG9uIE9wZW5CU0QKCgkgIEFsZXgKCjIwMDctMDEtMDQgMTY6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUFkZExpYnJhcnlDb21tYW5kLmN4eDogQlVHOiBmaXggZm9yIGJhZCBhcmd1bWVudAoJICBoYW5kbGluZwoKMjAwNy0wMS0wNCAxNDo1NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTA0IDEzOjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Qcm9wZXJ0eU1hcC5jeHg6IEVOSDogY2hhbmdlIFNUUklDVCB0byBDTUFLRV9TVFJJQ1QKCjIwMDctMDEtMDQgMTA6MTggIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBSQyBzdHVmZiB0byBtYWluIHRyZWUKCjIwMDctMDEtMDQgMDM6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNy0wMS0wMyAxODoyMCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IHBhcnRseSBzeW5jIHdpdGggS0RFIHN2bjogYWRkIHRoZQoJICBtYWNyb3MgZm9yIGdlbmVyYXRpbmcgdGhlIGRidXMgZmlsZXMKCgkgIEFsZXgKCjIwMDctMDEtMDMgMTc6NTAgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBtYXJrIG1vcmUgdmFyaWFibGVzIEFEVkFOQ0VECgoJICBBbGV4CgoyMDA3LTAxLTAzIDE3OjMyICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogcGFydGx5IHN5bmMgd2l0aCBLREUgc3ZuOiBoYW5kbGUKCSAgUXRNYWluIG1vcmUgbGlrZSB0aGUgb3RoZXIgbGlicwoKCSAgQWxleAoKMjAwNy0wMS0wMyAxNzowMCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6IGFyZ3VtZW50IG5hbWVzIGluIG1hY3JvcyBhcmUgbm90IHJlYWwKCSAgdmFyaWFibGVzLCB3aGljaCBjYW4gbGVhZCB0byBwcm9ibGVtcywgd2hpY2ggd2UgZml4ZWQgZm9yIEtERSBpbgoJICBUcnlzaWw6CgkgIGh0dHA6Ly93ZWJzdm4ua2RlLm9yZy90cnVuay9LREUva2RlbGlicy9jbWFrZS9tb2R1bGVzL0ZpbmRRdDQuY21ha2U/cmV2PTU1NzQ3MCZyMT01NTcyNDEmcjI9NTU3NDcwCgoJICBBbGV4CgoyMDA3LTAxLTAzIDE2OjQ4ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IFNUWUxFOiBzb21lIG1vcmUgc3BhY2UgdG8gbWFrZSBpdCBlYXNpZXIKCSAgdG8gcmVhZAoKCSAgQWxleAoKMjAwNy0wMS0wMyAxNjozOCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IHBhcnRseSBzeW5jIHdpdGggS0RFIHN2bjogYWxzbyBmaW5kCgkgIHRoZSBRdERCdXMgYW5kIHRoZSBRdERlc2lnbmVyQ29tcG9uZW50cyBsaWJyYXJpZXMKCgkgIEFsZXgKCjIwMDctMDEtMDMgMTY6MDkgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluLCBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRKTkkuY21ha2UsIE1vZHVsZXMvRmluZFJ1YnkuY21ha2UsCgkgIFNvdXJjZS9jbUZpbmRCYXNlLmN4eCwgU291cmNlL2NtRmluZEJhc2UuaCwKCSAgVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluLAoJICBUZXN0cy9DdXN0Q29tRGVwZW5kL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9DdXN0Q29tRGVwZW5kL2Jhci5oLAoJICBUZXN0cy9DdXN0Q29tRGVwZW5kL2Zvby5jeHg6IEVOSDogbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDctMDEtMDMgMTY6MDEgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBwYXJ0bHkgc3luYyB3aXRoIHRoZSBLREUgdmVzaW9uOiBmaW5kCgkgIHRoZSBkYnVzIHRvb2xzIGNvbWluZyB3aXRoIFF0IHNpbmNlIDQuMgoKCSAgQWxleAoKMjAwNy0wMS0wMyAxMDoxOSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eDoKCSAgRU5IOiBtZXJnZSBpbiBmaXhlcyBmcm9tIG1haW4gdHJlZQoKMjAwNy0wMS0wMyAwNDoyMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA3LTAxLTAyIDAwOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDctMDEtMDEgMDQ6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0zMSAwMzoyOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTMwIDAzOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMjkgMTk6MjAgIGhvZmZtYW4KCgkqIFRlc3RzL0N1c3RDb21EZXBlbmQvOiBDTWFrZUxpc3RzLnR4dCwgYmFyLmgsIGZvby5jeHg6IEVOSDogdHJ5IHRvCgkgIGZpeCB0ZXN0IG9uIHdhdGNvbQoKMjAwNi0xMi0yOSAwMzoyOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTI4IDE1OjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbmRCYXNlLmN4eCwgY21GaW5kQmFzZS5oOiBCVUc6IGZpeCBwcm9ibGVtIHdpdGggcGF0aAoJICBzdWZmaXggYW5kIG1hYyBmcmFtZXdvcmtzIGFuZCBmaW5kIHN0dWZmLCBzaG93ZWQgdXAgaW4KCSAgRmluZFB5dGhvbkxpYnMuY21ha2UKCjIwMDYtMTItMjggMDM6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0yNyAwMzoyNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTI2IDA4OjQ3ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IEVOSDogU3VwcG9ydCBKVk0gb24gTWFjCgoyMDA2LTEyLTI2IDAzOjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMjUgMDM6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0yNCAwMzoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTIzIDAzOjM4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMjIgMDM6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0yMSAxMDoyNCAgdXRrYXJzaAoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eDogQlVHOiByZXZlcnRpbmcgcHJldmlvdXMKCSAgY2hhbmdlLgoKMjAwNi0xMi0yMSAwOTo1MiAgdXRrYXJzaAoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eDogQlVHOiBXaGVuIGEgIndyb25nCgkgIGFyZ3VtZW50IiB3YXMgZGV0ZWN0ZWQsIHdlIGNhbGwgdGhlIFdyb25nQXJndW1lbnQgaGFuZGxlci4gSWYgdGhlCgkgIGhhbmRsZXIgcmV0dXJucyBzdWNjZXNzLCB0aGUgYXJndW1lbnQgcGFyc2luZyBzaG91bGQgY29udGludWUuCgkgIEN1cnJlbnRseSwgaXQgd2FzIHN0b3BwaW5nIHBhcnNpbmcgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIHdyb25nCgkgIGFyZ3VtZW50IHdhcyBwcm9jZXNzZWQsIGlycmVzcGVjdGl2ZSBvZiB0aGUgV3JvbmdBcmd1bWVudCBoYW5kbGVyCgkgIHN0YXR1cy4gRml4ZWQgdGhhdC4KCjIwMDYtMTItMjEgMDQ6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0yMCAwMzoyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTE5IDAzOjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMTggMTE6MzAgIHV0a2Fyc2gKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogRmlsZUlzRGlyZWN0b3J5IHdvdWxkIHJlbW92ZQoJICB0aGUgdHJhaWxpbmcgJy8nIGV2ZW4gd2hlbiB0aGUgcGF0aCBpcyBpbmRlZWQgdGhlIHJvb3QgaS5lLiAnLycuCgkgIEhlbmNlIHRoZSB0ZXN0IHdvdWxkIGJlIGluY29ycmVjdCBmb3Igcm9vdCBkaXJlY3RvcnkuIEZpeGVkIHRoYXQuCgoyMDA2LTEyLTE4IDExOjA0ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19pb3Nfc3N0cmVhbS5oLmluOiBDT01QOiBGaXggY29tcGlsYXRpb24gd2hlbgoJICBWUzYgaXMgdXNpbmcgdGhlIG5ldyBBTlNJIHN0ZGxpYgoKMjAwNi0xMi0xOCAwMzoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTE3IDAzOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMTYgMDM6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0xNSAxMDozMCAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogQ09NUDogVHJ5IHRvIGdldAoJICBzdHJpbmdzdHJlYW0gZW11bGF0aW9uIHdvcmtpbmcKCjIwMDYtMTItMTUgMDM6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0xNCAxNDozMCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDoKCSAgTWFkZSBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yOjpHbG9iYWxHZW5lcmF0b3IgaGF2ZSBmdWxsIHR5cGUKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzIHRvIGdpdmUgYWNjZXNzIHRvIGFsbCBtZXRob2RzLgoJICBGaXhlZCBicm9rZW4gY3VzdG9tIHRhcmdldHMgd2l0aCBubyBjb21tYW5kcyBmb3IgQm9ybGFuZAoJICBtYWtlZmlsZXMgd2hlbiBDTUFLRV9TS0lQX1JVTEVfREVQRU5ERU5DWSBpcyBzZXQuCgoyMDA2LTEyLTE0IDEzOjE4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogRU5IOiBBZGRpbmcgc3RyaW5nc3RyZWFtCgkgIGNvbXBhdGliaWxpdHkgaW1wbGVtZW50YXRpb24uICBJdCBpcyBjdXJyZW50bHkgaWRlbnRpY2FsIHRvCgkgIG9zdHJpbmdzdHJlYW0uICBGaXhlZCBsb2NhbCB2YXJpYWJsZSBwY291bnQgaGlkaW5nIG1ldGhvZAoJICB3YXJuaW5nLgoKMjAwNi0xMi0xNCAxMTo0MSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBrd3N5c19pb3Nfc3N0cmVhbS5oLmluLCB0ZXN0SU9TLmN4eDogQlVHOiBSZW1vdmUKCSAgc3RyaW5nc3RyZWFtIGltcGxlbWVudGF0aW9uLCB0aGlzIHdhcyBhIHdyb25nIGludGVyZmFjZSBhbnl3YXkuCgoyMDA2LTEyLTE0IDExOjAyICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy90ZXN0SU9TLmN4eDogQlVHOiBkaXNhYmxlIHRlc3QgZm9yIG5vdwoKMjAwNi0xMi0xNCAxMDowMyAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IENoYW5nZXMgZnJvbSBSeWFuIEMuIEdvcmRvbiB0byBmaXgKCSAgb2xkIHByb2Nlc3MgZXhlY3V0aW9uIG9uIEJlT1MuCgoyMDA2LTEyLTE0IDAzOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMTMgMTY6NDQgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suU1RHWl9IZWFkZXIuc2guaW46IEJVRzogRml4ZXMgZm9yIGRhc2gKCjIwMDYtMTItMTMgMTM6MjQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVByb3BlcnR5TWFwLmN4eDogQ09NUDogb29wcyByZWFsbHkgZGlkIG5vdCBtZWFuIHRvIGNoZWNrCgkgIGluIHRoYXQgY2hhbmdlCgoyMDA2LTEyLTEzIDEyOjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUNQbHVnaW5BUEkuY3h4LAoJICBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVByb3BlcnR5TWFwLmN4eCwgY21Tb3VyY2VGaWxlLmN4eCwKCSAgY21Tb3VyY2VGaWxlLmg6IEVOSDogYWxsb3cgc291cmNlIGZpbGUgcHJvcGVydGllcyB0byBjaGFpbiB0bwoJICBEaXJlY3RvcmllcyBhbmQgdXAKCjIwMDYtMTItMTMgMTI6MTEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZTogRU5IOiBmaXggZm9yIGJhY2sgVlRLIGVycm9yCgkgIG1lc3NhZ2UKCjIwMDYtMTItMTMgMDg6NTIgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzoga3dzeXNfaW9zX3NzdHJlYW0uaC5pbiwgdGVzdElPUy5jeHg6IEVOSDogcHJvdmlkZQoJICBzdHJpbmdzdHJlYW0gdG9vLiBGSVg6IHdhcm5pbmcgc2hhZG93IHZhcgoKMjAwNi0xMi0xMyAwMzoyMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTEyIDE0OjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuaCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5oLCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5oLCBjbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5oOiBFTkg6IHJlbW92ZSBvbGQgY29tbWFuZHMKCjIwMDYtMTItMTIgMTM6NTkgIG1hcnRpbmsKCgkqIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZTogRU5IOiBwdXQgaW4gYSBiZXR0ZXIgZXJyb3IKCSAgbWVzc2FnZSBmb3IgVlRLIDQuMAoKMjAwNi0xMi0xMiAxMzo1OSAgbWFydGluawoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlZCBvbGQgVlRLIHRlc3RzCgoyMDA2LTEyLTEyIDExOjE3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1ZUS0NvbXBhdGliaWxpdHkuY21ha2U6IEVOSDogbWlub3IgY2xlYW51cAoKMjAwNi0xMi0xMiAxMTowNiAgaG9mZm1hbgoKCSogVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBFTkg6IGRvIG5vdCB1c2Ugc3ZuIHVudGlsIGl0IGlzCgkgIHdvcmtpbmcgYWdhaW4KCjIwMDYtMTItMTIgMTA6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHg6IEVOSDogZml4IGEgd2FybmluZyBhbmQgYSBuaWNlIGZpeCB0bwoJICB0aGUgSUYgY29tbWFuZAoKMjAwNi0xMi0xMiAwMzoyOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTExIDEwOjI2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNldFByb3BlcnRpZXNDb21tYW5kLmN4eCwgY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBjbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuaCwgY21ha2UuY3h4OiBFTkg6IGltcHJvdmUKCSAgU2V0UHJvcGVydGllcyBhbmQgZml4IGEgY291cGxlIHdhcm5pbmdzCgoyMDA2LTEyLTExIDAzOjIwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMTAgMDM6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0wOSAxNTowMiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRQa2dDb25maWcuY21ha2UsIFVzZVBrZ0NvbmZpZy5jbWFrZTogRU5IOiBiZXR0ZXIKCSAgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGFuZCBkZXByZWNhdGUgUEtHQ09ORklHCgoyMDA2LTEyLTA5IDExOjI1ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBEeW5hbWljTG9hZGVyLmN4eCwKCSAgRHluYW1pY0xvYWRlci5oeHguaW46IEJVRzogcmV2ZXJ0IHllc3RlcmRheSBwYXRjaC4gVGhlCgkgIGltcGxlbWVudGF0aW9uIHdhcyBjb3JyZWN0LiBUaGUgcHJvYmxlbSB3YXMgdGhhdCBfV0lOMzIgd2FzCgkgIGZvcmNlZCB0byBiZSAjZGVmaW5lIG9uIGN5Z3dpbiB3aGVuIGluY2x1ZGVkIGZyb20gSVRLLCB3aGljaCB3YXMKCSAgbWlzcyBtYXRjaGluZyB0aGUgaW1wbGVtZW50YXRpb24gZnJvbSB0aGUgZGVjbGFyYXRpb24uIFB1dCBleHRyYQoJICBjb25kaXRpb24gZm9yIENZR1dJTiBzeXN0ZW0KCjIwMDYtMTItMDkgMDM6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0wOCAxNTo1MiAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgRHluYW1pY0xvYWRlci5jeHgsCgkgIER5bmFtaWNMb2FkZXIuaHh4LmluOiBCVUc6IE1ha2Ugc3VyZSB0byB1c2UgdGhlIFdpbjMyIGludGVyZmFjZQoJICAoSElOU1RBTkNFKSBmb3IgaGFuZGxpbmcgc2hhcmVkIGxpYiBvbiBjeWd3aW4gYW5kIG1pbmd3IHN5c3RlbQoKMjAwNi0xMi0wOCAwOToyNyAgbWFydGluawoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIGNtVGFyZ2V0LmN4eCwgY21ha2UuY3h4OiBDT01QOiBmaXggc29tZSB3YXJuaW5ncyBhbmQgc3R5bGUgaXNzdWVzCgoyMDA2LTEyLTA4IDAzOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMDcgMTc6MzcgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFJ1YnkuY21ha2U6IEJVRzogZml4IDQxNjQsIGFsc28gc2VhcmNoIGZvcgoJICBsaWJydWJ5MS44LnNvLCBJIGd1ZXNzIGl0IHNob3VsZCBiZSBzeW5jZWQgd2l0aCB0aGUgS0RFIHZlcnNpb24KCSAgb2YgRmluZFJVQlkuY21ha2UKCgkgIEFsZXgKCjIwMDYtMTItMDcgMTY6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuY3h4OiBCVUc6IGZpeCBiYWQgY29tcGFyaXNvbgoKMjAwNi0xMi0wNyAxNjoxNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9CZU9TLmNtYWtlOiBFTkg6IGFkZCBiZW9zIGZpbGUKCjIwMDYtMTItMDcgMTU6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuY3h4OiBDT01QOiBmaXggYSB3YXJuaW5nCgoyMDA2LTEyLTA3IDE0OjU0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNldFByb3BlcnRpZXNDb21tYW5kLmN4eCwgY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuY3h4LCBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuaDoKCSAgRU5IOiBpbXBsZW1lbnRzIFNldFByb3BlcnRpZXMgZm9yIFRFU1QKCjIwMDYtMTItMDcgMTE6MzggIGhvZmZtYW4KCgkqIFRlc3RzL0N1c3RDb21EZXBlbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDogZml4IHRlc3QgZm9yIGNvbmZpZyBkaXIKCSAgYmFzZWQgc3R1ZmYKCjIwMDYtMTItMDcgMTA6NDggIG1hcnRpbmsKCgkqIGJvb3RzdHJhcDogQ09NUDogZml4IGJvb3RzdHJhcCBtYXliZQoKMjAwNi0xMi0wNyAxMDozMyAgbWFydGluawoKCSogU291cmNlLzogY21Qcm9wZXJ0eU1hcC5jeHgsIGNtU2V0UHJvcGVydGllc0NvbW1hbmQuY3h4OiBDT01QOiBmaXgKCSAgd2FybmluZwoKMjAwNi0xMi0wNyAxMDoyNiAgbWFydGluawoKCSogU291cmNlL2NtU2V0UHJvcGVydGllc0NvbW1hbmQuY3h4OiBDT01QOiBmaXggd2FybmluZyByaWdodCBub3cKCjIwMDYtMTItMDcgMTA6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRlc3QuY3h4OiBCVUc6IGZpeCBtaXNzaW5nIHJldHVybiB2YWx1ZQoKMjAwNi0xMi0wNyAxMDoxNSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCB0ZXN0IEkgcmVtb3ZlZCBieSBtaXN0YWtlCgoyMDA2LTEyLTA3IDA5OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DUGx1Z2luQVBJLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDYtMTItMDcgMDk6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4LCBTb3VyY2UvY21DUGx1Z2luQVBJLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LAoJICBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eCwgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5oLAoJICBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtSWZDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtUHJvcGVydHlNYXAuY3h4LAoJICBTb3VyY2UvY21TZXREaXJlY3RvcnlQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgU291cmNlL2NtU291cmNlRmlsZS5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGUuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFNvdXJjZS9jbVRlc3QuY3h4LCBTb3VyY2UvY21UZXN0LmgsCgkgIFNvdXJjZS9jbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVdoaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgU291cmNlL2NtRGVmaW5lUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRGVmaW5lUHJvcGVydHlDb21tYW5kLmg6IEVOSDogbWFrZSBwcm9wZXJ0aWVzIGEgYml0IG1vcmUKCSAgZm9ybWFsIHdpdGggZG9jdW1lbnRhdGlvbiBhbmQgY2hhaW5pbmcKCjIwMDYtMTItMDcgMDI6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMi0wNiAyMzowNSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFRlc3RzL0N1c3RDb21EZXBlbmQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0N1c3RDb21EZXBlbmQvZm9vLmN4eDogRU5IOiBmaXggYnVnIGluIGZ1bGwgcGF0aCB0byB0YXJnZXQKCSAgZGVwZW5kcyBzdHVmZgoKMjAwNi0xMi0wNiAwMDo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEyLTA1IDEwOjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVByb3BlcnR5RGVmaW5pdGlvbi5jeHg6IEVOSDogZml4IGNvbXBpbGVyIHdhcm5pbmcKCjIwMDYtMTItMDUgMDk6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBDVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHg6IENPTVA6CgkgIGZpeCBsaW5lIGxlbmd0aCBzdHlsZSBlcnJvcgoKMjAwNi0xMi0wNSAwOTowMiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IENPTVA6IHJlbW92ZSB3YXJuaW5nCgoyMDA2LTEyLTA1IDA4OjQ3ICBob2ZmbWFuCgoJKiBib290c3RyYXA6IEVOSDogZml4IGJvb3RzdHJhcCBmb3IgbWFjCgoyMDA2LTEyLTA1IDA4OjM5ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRU5IOiBmaXggYnVpbGQgZXJyb3Igb24gSVJJWAoKMjAwNi0xMi0wNCAxOTozNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRG94eWdlbi5jbWFrZTogRU5IOiBmaXggZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CgoyMDA2LTEyLTA0IDE3OjI2ICBob2ZmbWFuCgoJKiBib290c3RyYXAsIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0ZvclB0aHJlYWRzLmMsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0phdmFMZXhlci5jeHgsIFNvdXJjZS9jbURlcGVuZHNKYXZhTGV4ZXIuaCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9EeW5hbWljTG9hZGVyLmN4eCwKCSAgU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuaHh4LmluLCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2Uva3dzeXMvdGVzdER5bmFtaWNMb2FkZXIuY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL2NtdGFyL2VuY29kZS5jLAoJICBVdGlsaXRpZXMvY210YXIvZXh0cmFjdC5jLCBVdGlsaXRpZXMvY210YXIvbGlidGFyLmMsCgkgIFV0aWxpdGllcy9jbXRhci91dGlsLmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogRU5IOiBtZXJnZSBpbiBjaGFuZ2VzCgkgIGZvciBiZW9zIHN1cHBvcnQKCjIwMDYtMTItMDQgMTQ6NDIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3NVTklYLmMsIHRlc3RQcm9jZXNzLmM6IEVOSDogQ2hhbmdlcyBiYXNlZAoJICBvbiBwYXRjaCBmcm9tIFJ5YW4gQy4gR29yZG9uIHRvIGVuYWJsZSBwcm9jZXNzIGV4ZWN1dGlvbiBvbiBCZU9TLgoJICBUaGVyZSBzZWVtcyB0byBiZSBubyB3YXkgdG8gaW1wbGVtZW50IGl0IHdpdGhvdXQgcG9sbGluZyAob3IKCSAgdGhyZWFkcykuCgoyMDA2LTEyLTA0IDEzOjU0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IHByaW50IGVtcHR5IGluc3RhbGwKCSAgY29uZmlndXJhdGlvbiByZXBlYXRlZGx5LgoKMjAwNi0xMi0wNCAxMTo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRG94eWdlbi5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA0MTAyCgoyMDA2LTEyLTA0IDExOjQ0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRYTUxSUEMuY21ha2U6IEJVRzogZml4IGZvciBidWcgNDEyMywgZmluZCB4bWxycGMgaW4KCSAgc3RhbmRhcmQgbG9jYXRpb25zCgoyMDA2LTEyLTA0IDExOjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkZWQgcHJvcGVydGllcyBpbnRvIHRoZSBjb21waWxlLAoJICBidXQgbm90IHRoYXQgbWFueQoKMjAwNi0xMi0wNCAxMTowNSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZGVkIHByb3BlcnRpZXMgaW50byB0aGUgY29tcGlsZQoKMjAwNi0xMi0wNCAxMTowNCAgbWFydGluawoKCSogU291cmNlL2NtUHJvcGVydHlEZWZpbml0aW9uTWFwLmg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMTItMDQgMDk6NTggIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IG1vdmUgdG8gYWN0dWFsIHJlbGVhc2UKCjIwMDYtMTItMDIgMTM6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHg6IEVOSDogcHV0IGNoZWNrcyBvbiB2ZWN0b3IKCSAgYmVmb3JlIHJlZmVyZW5jaW5nIGJlZ2luIGl0ZXJhdG9yCgoyMDA2LTEyLTAxIDIyOjU0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTItMDEgMTU6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDYtMTItMDEgMTU6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDYtMTItMDEgMTM6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtUHJvcGVydHkuY3h4LCBjbVByb3BlcnR5LmgsIGNtUHJvcGVydHlEZWZpbml0aW9uLmN4eCwKCSAgY21Qcm9wZXJ0eURlZmluaXRpb24uaCwgY21Qcm9wZXJ0eURlZmluaXRpb25NYXAuY3h4LAoJICBjbVByb3BlcnR5RGVmaW5pdGlvbk1hcC5oLCBjbVByb3BlcnR5TWFwLmN4eCwgY21Qcm9wZXJ0eU1hcC5oLAoJICBjbVNldFByb3BlcnRpZXNDb21tYW5kLmN4eCwgY21TZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6CgkgIGdldHRpbmcgc29tZSBvZiB0aGUgcHJvcGVydHkgY2hhbmdlZCBjaGV3Y2tlZCBpbnRvIENWUyBhdCBsZWFzdAoKMjAwNi0xMi0wMSAxMTowNCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IEVOSDoKCSAgbWVyZ2UgaW4gZml4IGZvciBzZWcgZmF1bHQgYW5kIG1vdmUgdG8gUkMgNAoKMjAwNi0xMi0wMSAxMDozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eDogQlVHOiBmaXggZm9yIDM4MTUgc2VnIGZhdWx0CgoyMDA2LTEyLTAxIDAxOjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMzAgMTg6MjcgIGliYW5legoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5jeHgsIER5bmFtaWNMb2FkZXIuaHh4LmluOiBCVUc6CgkgIDQxMDAuIEZpeGluZyB0aGUgTWFjIE9TL1ggdmVyc2lvbiBpbiB0aGUgRHluYW1pYyBsb2FkZXIgaW4ga3dzeXMsCgkgIGFuZCByZXBsYWNpbmcgY29weS9wYXN0ZWQgY29kZSBpbiB0aGUgaXRrRHluYW1pY0xvYWRlciB3aXRoCgkgIHVzYWdlICAgICAgb2YgdGhlIGt3c3lzIGxvYWRlci4gVGhpcyB3YXMgZml4ZWQgaW4gdGhlIEhFQUQgYnkKCSAgTWF0aGlldSBNYWxhdGVycmUJIGFuZCBOZWlsIFdlaXNlbmZlbGQuIFRoaXMgY2hhbmdlcyBpbiB0aGUKCSAgYnJhbmNoIGFyZSBqdXN0IHRoZSBwb3J0CW9mIHRoZSBidWcgZml4IGZyb20gdGhlIEhFQUQuCgoyMDA2LTExLTMwIDE4OjEzICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBUZXN0cy9MaWJOYW1lL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1vdmUgdG8gUkMgMyBhbmQgYWRkIGEgZml4IGZvcgoJICAtTC9wYXRoIGluIGxpbmsgY29tbWFuZHMgdGhhdCB3YXMgYnJva2VuIGJ5IHRoZSAuZGxsLmxpYiBmaXgKCjIwMDYtMTEtMzAgMTc6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogRU5IOiBjbGVhbiB1cCBjb21tZW50IGFuZAoJICBhdm9pZCBzb21lIHZlY3RvciBhY2Nlc3MgY2FsbGVzCgoyMDA2LTExLTMwIDE3OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFRlc3RzL0xpYk5hbWUvQ01ha2VMaXN0cy50eHQ6IEJVRzogYmV0dGVyIGZpeCBmb3IgLmRsbC5saWIKCSAgcHJvYmxlbQoKMjAwNi0xMS0zMCAxNjoyMyAgYWxleAoKCSogTW9kdWxlcy9GaW5kQ3Vwcy5jbWFrZTogRU5IOiBhZGQgYSBtb2R1bGUgdG8gZmluZCBDdXBzICgjMzA4MSksCgkgIHRha2VuIGZyb20gS0RFIHN2bgoKCSAgQWxleAoKMjAwNi0xMS0zMCAxMDoxMiAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LCBUZXN0cy9MaWJOYW1lL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9MaWJOYW1lL2Jhci5jLCBUZXN0cy9MaWJOYW1lL2Zvby5jLCBUZXN0cy9MaWJOYW1lL2Zvb2Jhci5jOgoJICBFTkg6IHB1dCBmaXggZm9yIGZvby5kbGwubGliIHByb2JsZW0gb24gYnJhbmNoIHdpdGggdGVzdAoKMjAwNi0xMS0zMCAwOTo1MSAgaG9mZm1hbgoKCSogVGVzdHMvTGliTmFtZS9mb29iYXIuYzogRU5IOiBtYWtlIGl0IHdvcmsgZm9yIGhwCgoyMDA2LTExLTMwIDAxOjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMjkgMjE6NTMgIGhvZmZtYW4KCgkqIFRlc3RzL0xpYk5hbWUvOiBiYXIuYywgZm9vLmMsIGZvb2Jhci5jOiBFTkg6IGFkZCBleHRlcm4gZm9yIGhwIGMKCSAgY29tcGlsZXIKCjIwMDYtMTEtMjkgMjE6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvTGliTmFtZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXgKCSAgdGVzdCB0byBydW4gd2l0aCBkZWJ1ZyBvciByZWxlYXNlIGFuZCBwdXQgdGhlIGV4ZSBuZXh0IHRvIHRoZQoJICBkbGwsIHN0aWxsIHNob3dzIHRoZSBidWcgdGhpcyBpcyB0ZXN0aW5nIGZvcgoKMjAwNi0xMS0yOSAxNzo0NSAgaG9mZm1hbgoKCSogYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFRlc3RzL0xpYk5hbWUvYmFyLmMsIFRlc3RzL0xpYk5hbWUvZm9vLmMsIFRlc3RzL0xpYk5hbWUvZm9vYmFyLmM6CgkgIEVOSDogZml4IGVycm9ycyBmb3IgdW5peCBidWlsZHMKCjIwMDYtMTEtMjkgMTc6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4OiBFTkg6IGZpeCB3YXJuaW5nCgoyMDA2LTExLTI5IDE3OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4LAoJICBjbUN1cnNlc01haW5Gb3JtLmN4eDogRU5IOiB0aGVyZSBjYW4gYmUgb25seSBvbmUgdmVyc2lvbgoKMjAwNi0xMS0yOSAxNzoxMCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eDogQ09NUDogZml4IGNvbXBpbGUgaXNzdWUgb24KCSAgU3VuIGhvcGVmdWxseQoKMjAwNi0xMS0yOSAxNzowMiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGZpeCB0ZXN0IGZvciBjb25maWd1cmF0aW9uIHR5cGUKCSAgYnVpbGRzCgoyMDA2LTExLTI5IDE2OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEVOSDogZml4IGNvbXBpbGUgZXJyb3Igb24gbWFjCgoyMDA2LTExLTI5IDE2OjEyICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFBrZ0NvbmZpZy5jbWFrZSwgVXNlUGtnQ29uZmlnLmNtYWtlOiBFTkg6IG1haW50YWluCgkgIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGluIFVzZVBrZ0NvbmZpZwoKMjAwNi0xMS0yOSAxNTo1OSAgaG9mZm1hbgoKCSogU291cmNlLzogY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsIGNtQ1BsdWdpbkFQSS5jeHgsCgkgIGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbWFrZS5jeHgsIGNtYWtlLmgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiB1bmlmeQoJICB2ZXJzaW9uIHN0dWZmLCBnZXQgcmlkIG9mIGl0IG91dCBvZiBjbWFrZSBhbmQgY21NYWtlZmlsZSBhbmQgb25seQoJICB1c2UgY21WZXJzaW9uCgoyMDA2LTExLTI5IDE1OjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIFRlc3RzL0xpYk5hbWUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xpYk5hbWUvYmFyLmMsIFRlc3RzL0xpYk5hbWUvZm9vLmMsIFRlc3RzL0xpYk5hbWUvZm9vYmFyLmMsCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBmaXggYSBwcm9ibGVtIHdoZXJlIGl0IHRyaWVkIHRvIGxpbmsKCSAgLmRsbC5saWIgZmlsZXMKCjIwMDYtMTEtMjkgMTU6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5jeHg6IENPTVA6IGZpeCBjb21waWxlIGlzc3VlIG9uCgkgIFN1bgoKMjAwNi0xMS0yOSAxMjo1NiAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBEeW5hbWljTG9hZGVyLmN4eCwgRHluYW1pY0xvYWRlci5oeHguaW46IEJVRzogRml4CgkgIHByb2JsZW0gd2l0aCBsb2FkaW5nIGR5bGliIG9uIFRpZ2VyICgxMC40KSB4ODYuIFdlIG5lZWQgdG8gYmUKCSAgdXNpbmcgdGhlIGRsb3Blbi9kbGNsb3NlIGluc3RlYWQgb2YgdGhlIG9sZCBOU01vZHVsZQoKMjAwNi0xMS0yOSAxMTowMCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuaDoKCSAgRU5IOiB1cGRhdGVkIGhhbmRsaW5nIG9mIGRlYnVnIGFuZCBvcHRpbWl6ZWQgdGFyZ2V0IGxpbmsKCSAgbGlicmFyaWVzCgoyMDA2LTExLTI4IDE2OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZS5jbWFrZS5oLmluLCBjbU1ha2VmaWxlLmN4eCwgY21WZXJzaW9uLmN4eDoKCSAgRU5IOiBhZGQgcmMgdG8gdmVyc2lvbiBzdHVmZgoKMjAwNi0xMS0yOCAxNjowMyAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUNvbmZpZ3VyZS5jbWFrZS5oLmluLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBFTkg6IGFkZCByZWxlYXNlCgkgIGNhbmRpZGF0ZSB0byB2ZXJzaW9ucwoKMjAwNi0xMS0yOCAxNDo0NSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjcmVhdGUtY21ha2UtcmVsZWFzZS5jbWFrZSwKCSAgcjE1bjY1X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IHVzZSBvbGRlciBvcyBmb3IgQUlYIHJlbGVhc2UKCjIwMDYtMTEtMjggMTQ6MTkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZEtERTQuY21ha2UsIE1vZHVsZXMvRmluZFF0My5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgVGVzdHMvU2ltcGxlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9UYXJnZXROYW1lL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UYXJnZXROYW1lL2V4ZWN1dGFibGVzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UYXJnZXROYW1lL2V4ZWN1dGFibGVzL2hlbGxvX3dvcmxkLmMsCgkgIFRlc3RzL1RhcmdldE5hbWUvc2NyaXB0cy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVGFyZ2V0TmFtZS9zY3JpcHRzL2hlbGxvX3dvcmxkLAoJICBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBtZXJnZSBpbiBjaGFuZ2VzIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwNi0xMS0yOCAwOTo0OSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSB0aGUgYnVpbHQgY21ha2UgZm9yIGZpbGUgY29tcGFyZQoJICBhcyBvbGRlciB2ZXJzaW9ucyBvZiBjbWFrZSBtYXkgbm90IHN1cHBvcnQgdGhpcwoKMjAwNi0xMS0yOCAwMDowNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTI3IDE2OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIGNvcnJlY3QgcHJvamVjdCBuYW1lCgoyMDA2LTExLTI3IDE2OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFRlc3RzL1NpbXBsZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBtYWtlIHN1cmUgdGhpbmdzIGRvIG5vdCBkZXBlbmQKCSAgb24gb3B0aW1pemVkIGxpYnJhcmllcyBpZiB0aGV5IGFyZSBkZWJ1ZywgYW5kIHRoZSBvdGhlciB3YXkKCSAgYXJvdW5kIGFzIHdlbGwKCjIwMDYtMTEtMjcgMTU6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvVGFyZ2V0TmFtZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVGFyZ2V0TmFtZS9leGVjdXRhYmxlcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVGFyZ2V0TmFtZS9leGVjdXRhYmxlcy9oZWxsb193b3JsZC5jLAoJICBUZXN0cy9UYXJnZXROYW1lL3NjcmlwdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RhcmdldE5hbWUvc2NyaXB0cy9oZWxsb193b3JsZDogRU5IOiBhZGQgYSB0ZXN0IGZvciBhCgkgIHRhcmdldCBuYW1lIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUgb3V0cHV0IG9mIGEgY3VzdG9tIGNvbW1hbmQKCjIwMDYtMTEtMjcgMTI6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogZml4IGxpbmUgbGVuZ3RoIHByb2JsZW0KCjIwMDYtMTEtMjcgMTI6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogZml4IGNyYXNoIGluIHBscGxvdCBidWlsZAoKMjAwNi0xMS0yNyAxMDo0MiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dDogRU5IOiBzYXZlIGxvZ3Mgb2YgcGFzc2VkIHRyeQoJICBjb21waWxlIHN0dWZmIGFzIHdlbGwKCjIwMDYtMTEtMjYgMDc6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0yNSAyMTo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTI1IDIxOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMjUgMTA6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHg6IEJVRzogZml4IHByb2JsZW0KCSAgd2hlbiBhIHRhcmdldCBuYW1lIGlzIHRoZSBzYW1lIGFzIHRoZSBvdXRwdXQgb2YgYSBjdXN0b20gY29tbWFuZAoKMjAwNi0xMS0yNSAwNzo1OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTIzIDA3OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMjIgMTk6MjggIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTQuY21ha2U6IEVOSDoga2RlLWNvbmZpZyBoYXMgYmVlbiByZW5hbWVkIHRvCgkgIGtkZTQtY29uZmlnIHNldmVyYWwgd2Vla3MgYWdvLCBzbyBpdCdzIG5vdCBuZWNlc3NhcnkgYW55bW9yZSB0bwoJICB1c2UgImtkZS1jb25maWciIGFzIGZhbGxiYWNrLCBzaW5jZSB0aGlzIHdpbGwgc3VyZWx5IGJlIGEgd3JvbmcKCSAgdmVyc2lvbgoKCSAgQWxleAoKMjAwNi0xMS0yMiAxNDoyNiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2Ugc3VyZSBpdCBpcyBxdDMgYmVmb3JlIHJ1bm5pbmcKCSAgdGVzdAoKMjAwNi0xMS0yMiAxNDoyMiAgaG9mZm1hbgoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWFrZSBzdXJlIGl0IGlzIHF0MyBiZWZvcmUKCSAgcnVubmluZyB0ZXN0CgoyMDA2LTExLTIyIDEzOjQ0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFBrZ0NvbmZpZy5jbWFrZSwgVXNlUGtnQ29uZmlnLmNtYWtlOiBFTkg6IGNoZWNrIGluCgkgIG5ldyBwa2djb25maWcgc3R1ZmYgZnJvbSBFbnJpY28gU2Nob2x6CgoyMDA2LTExLTIyIDEzOjMwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2UsIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2UKCSAgc3VyZSBmaW5kcXQzIGZpbmRzIHF0MyBhbmQgbm90IHF0NAoKMjAwNi0xMS0yMiAwOTo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTIxIDEzOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMjEgMDc6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0yMCAxNDoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGZpeCBmcm9tIG1haW4gdHJlZQoKMjAwNi0xMS0yMCAxMzo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGZpeCBmb3Igd2hlbiBhIGxpYnJhcnkgaXMgdGFnZ2VkIGJvdGgKCSAgZGVidWcgYW5kIG9wdGltaXplZAoKMjAwNi0xMS0yMCAwODoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTE5IDA4OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMTggMDg6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0xNyAxNTo1NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIENQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDogRU5IOgoJICBtb3ZlIGZpeCBmb3IgcmVwbGFjZSBvZiBAdmFyQCBpbiBjbWFrZSBmaWxlcyBmcm9tIG1haW4gdHJlZSBhbmQgYQoJICBiZXR0ZXIgbWVzc2FnZSBmb3IgY3BhY2sgYW5kIG5zaXMKCjIwMDYtMTEtMTcgMTU6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiB1bmRvIGJ1ZyBmaXggMjcyMiwgc3RpbGwgcmVwbGFjZQoJICBAZm9vQCBpbiBjbWFrZSBmaWxlcwoKMjAwNi0xMS0xNyAxMToxNCAgbWFydGluawoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDogU1RZTEU6IGZpeCBhIGxvbmcgbGluZQoKMjAwNi0xMS0xNyAwODoxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTE2IDE1OjU3ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogbW92ZSBmaXggZnJvbSBtYWluCgkgIHRyZWUKCjIwMDYtMTEtMTYgMTU6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEVOSDogcmVtb3ZlIG9sZCBoYWNrIG5vdyB0aGF0IHByb2plY3QKCSAgbGV2ZWwgY29tcGF0aWJpbGl0eSBmaWxlcyBhcmUgc3VwcG9ydGVkCgoyMDA2LTExLTE2IDE1OjI5ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1ZUS0NvbXBhdGliaWxpdHkuY21ha2U6IEVOSDogYWRkZWQgdG8gaGFuZGxlIGNhc2UgaW4gdmVyeQoJICBvbGQgb2RkIHZlcnNpb25zIG9mIFZUSwoKMjAwNi0xMS0xNiAxNToyOCAgbWFydGluawoKCSogTW9kdWxlcy9JVEtDb21wYXRpYmlsaXR5LmNtYWtlOiBFTkg6IGFkZGVkIHRvIGhhbmRsZSBjYXNlIGluIElUSwoJICAyLjggYW5kIGVhcmxpZXIKCjIwMDYtMTEtMTYgMTA6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5jeHg6IEVOSDogZml4IGEgYnVnIHdpdGggdXNlaW5nCgkgIGRlYnVmIG9wdGltaXplZCBsaWJzIGZyb20gb3RoZXIgYnVpbGRzCgoyMDA2LTExLTE2IDA4OjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMTUgMDg6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0xNCAwOTowMyAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogdHJ5IGFnYWluIGZvciAyLjQuNAoKMjAwNi0xMS0xNCAwODowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTEzIDIyOjA4ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4OiBFTkg6IEV4cGFuZCBjb21tZW50CgoyMDA2LTExLTEzIDE1OjI1ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogbW92ZSBmcm9tIG1haW4gdHJlZQoKMjAwNi0xMS0xMyAxNDoyMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGFkZCBkZXBlbmQgaW5mb3JtYXRpb24gZnJvbSBxcmMgZmlsZXMKCjIwMDYtMTEtMTMgMTI6NTkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvQ01ha2VWQ01hbmlmZXN0RXhlLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTdWJ2ZXJzaW9uLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIFNvdXJjZS9jbUZpbmRCYXNlLmN4eCwgU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBFTkg6CgkgIG1lcmdlIGNoYW5nZXMgaW4gZnJvbSBtYWluIHRyZWUKCjIwMDYtMTEtMTMgMDg6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0xMiAwODowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTExIDE0OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHA6IEJVRzogZml4IGZvciA0MDI4IGZpeCBzY3JvbGwKCSAgYWZ0ZXIgZGVsZXRlCgoyMDA2LTExLTExIDE0OjA2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IEJVRzogZml4IGZvciA0MDA5IGxpYjY0IHNob3VsZCB3b3JrIHdpdGgKCSAgcGF0aCBzdWZmaXgKCjIwMDYtMTEtMTEgMTQ6MDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZVZDTWFuaWZlc3RFeGUuY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6CgkgIEJVRzogdXNlIGRpZmZlcmVudCBjb21tYW5kcyBmb3Igc2hhcmVkIGxpYnJhcmllcyBhbmQgZXhlIGZvcgoJICBtYW5pZmVzdCBzdHVmZiBmaXggZm9yIGJ1ZyM0MDM5CgoyMDA2LTExLTExIDA4OjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMTAgMTA6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogbW92ZSBmcm9tIG1haW4gdHJlZQoKMjAwNi0xMS0xMCAxMDoxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kTVBJLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsIE1vZHVsZXMvcmVhZG1lLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL2NtYWtlLmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWVyZ2UgZnJvbSBtYWluCgkgIHRyZWUgZml4IGZvciB2cyBhbGwgYnVpbGQgcXQgYW5kIG1waTIKCjIwMDYtMTEtMTAgMDk6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDYtMTEtMTAgMDg6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBicm9rZW4gYm9ybGFuZAoJICBjb21waWxlcgoKMjAwNi0xMS0xMCAwODowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTA5IDE2OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogZml4IGl0IHRvIHdvcmsgd2l0aAoJICBzdGwgZGVidWcgbW9kZSBvbiBtYWMKCjIwMDYtMTEtMDkgMDk6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLCBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6CgkgIEVOSDogY29tbWl0IGZpeCBmb3IgcHV0dGluZyBldmVyeXRoaW5nIGluIHRoZSBidWlsZCBvbiB2cwoKMjAwNi0xMS0wOSAwODowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTA4IDA4OjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMDcgMDg6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0wNiAwODowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTA1IDA4OjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTEtMDQgMDg6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0wMyAwODowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTExLTAyIDE5OjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRNUEkuY21ha2U6IEVOSDogYWRkIHN1cHBvcnQgZm9yIGZpbmRpbmcgbXBpY2gyIG9uCgkgIHdpbmRvd3MKCjIwMDYtMTEtMDIgMTc6NTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBsb29rIGZvciBRdEFzc2lzdGFudENsaWVudDQKCjIwMDYtMTEtMDIgMTc6MTYgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGFib3J0IDIuNC40IGZvciBub3cKCjIwMDYtMTEtMDIgMDg6MDkgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IHRoaXMgaXMgMi40LjQKCjIwMDYtMTEtMDIgMDg6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMS0wMSAwOTowNiAga2luZwoKCSogTW9kdWxlcy9yZWFkbWUudHh0OiBFTkg6IEFkZGVkIFhYWF9SVU5USU1FX0xJQlJBUllfRElSUyBhcyBhCgkgIHN1Z2dlc3RlZCB2YXJpYWJsZS4KCjIwMDYtMTEtMDEgMDg6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMC0zMSAxNDoyOCAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogQ2xlYW51cCBvZiBpbnN0YWxsIGNvbXBvbmVudCBsaXN0LiBUaGVyZQoJICB3YXMgYWxyZWFkeSB0aGUgbGlzdCBpbiB0aGUgZ2xvYmFsIGdlbmVyYXRvci4gVXNlIHRoYXQgb25lCgoyMDA2LTEwLTMxIDA2OjQzICBhbmR5CgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogU1RZTEU6IEZpeCBrd3N0eWxlCgoyMDA2LTEwLTMwIDE1OjU5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOiBBZGQgc3VwcG9ydCBmb3IgZGlzcGxheWluZyB0aGUgbGlzdCBvZgoJICBjb21wb25lbnRzCgoyMDA2LTEwLTMwIDE1OjMwICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRTdWJ2ZXJzaW9uLmNtYWtlOiBFTkg6IEFkZGluZyBGaW5kU3VidmVyc2lvbiBtb2R1bGUKCSAgZnJvbSBUcmlzdGFuIENhcmVsLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzM5ODcuCgoyMDA2LTEwLTMwIDExOjM2ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LCBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1RhckJaaXAyR2VuZXJhdG9yLmN4eCwgY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBtZXJnZSBmaXggZm9yIGNwYWNrIGNyYXNoIGludG8gbWFpbiB0cmVlCgoyMDA2LTEwLTMwIDExOjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LCBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1RhckJaaXAyR2VuZXJhdG9yLmN4eCwgY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBtYWtlIHN1cmUgbnVsbCBjb25zdCBjaGFyKiBpcyBub3QgcHV0IGludG8gb3NzdHRyaW5nc3RyZWFtCgkgIHRvIGF2b2lkIHNlZyBmYXVsdHMKCjIwMDYtMTAtMzAgMTA6MzggIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgdGVzdCBjYXNlIGZvcgoJICBidWcjMzk2Ni4KCjIwMDYtMTAtMzAgMDk6NTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMC0zMCAwOToxNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kSk5JLmNtYWtlOiBFTkg6IG1vdmUgZnJvbSBtYWluIHRyZWUKCjIwMDYtMTAtMjcgMTc6MzAgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogRU5IOiBNb3JlIGRvY3VtZW50YXRpb24KCjIwMDYtMTAtMjcgMTc6MjkgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogRU5IOiBBZGQgc3VwcG9ydCBmb3IgbGlianZtCgoyMDA2LTEwLTI3IDE2OjAzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21UaGlyZFBhcnR5LmguaW4sIFV0aWxpdGllcy9jbV9jdXJsLmgsCgkgIFV0aWxpdGllcy9jbV9leHBhdC5oLCBVdGlsaXRpZXMvY21feG1scnBjLmgsIFV0aWxpdGllcy9jbV96bGliLmgsCgkgIE1vZHVsZXMvQ01ha2VEZXBlbmRlbnRPcHRpb24uY21ha2UsIE1vZHVsZXMvRmluZENVUkwuY21ha2UsCgkgIE1vZHVsZXMvRmluZEVYUEFULmNtYWtlLCBNb2R1bGVzL0ZpbmRYTUxSUEMuY21ha2UsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvUGFja2FnZVNjcmlwdC5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1BhY2thZ2VTY3JpcHQuY21ha2U6IEVOSDogbW92ZSBmcm9tIG1haW4KCSAgdHJlZQoKMjAwNi0xMC0yNyAxNjowMSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENUZXN0Q3VzdG9tLmN0ZXN0LmluLCBDaGFuZ2VMb2cubWFudWFsLAoJICBib290c3RyYXAsIGRveHlnZW4uY29uZmlnLCBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9DVGVzdFRhcmdldHMuY21ha2UsCgkgIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2UsIE1vZHVsZXMvRmluZEpOSS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kSmF2YS5jbWFrZSwgTW9kdWxlcy9GaW5kS0RFMy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUGVybC5jbWFrZSwgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRUY2xzaC5jbWFrZSwgTW9kdWxlcy9GaW5kV2lzaC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlLCBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIE1vZHVsZXMvVXNld3hXaWRnZXRzLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNUZXN0LmN4eCwgU291cmNlL2NtQ1Rlc3QuaCwgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHgsCgkgIFNvdXJjZS9jbUV4ZWN1dGVQcm9jZXNzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUV4ZWN1dGVQcm9jZXNzQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kQmFzZS5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmN4eCwKCSAgU291cmNlL2NtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwgU291cmNlL2NtWE1MUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgU291cmNlL0NQYWNrL2NwYWNrLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2t3c3lzL1N5c3RlbS5jLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtLmguaW4sIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHguYmFrLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eCwKCSAgVGVtcGxhdGVzL0RMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVzdHMvQ1Rlc3RUZXN0Mi90ZXN0LmNtYWtlLmluLCBUZXN0cy9DVGVzdFRlc3QzL3Rlc3QuY21ha2UuaW4sCgkgIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9NYWNyb1Rlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL091dE9mU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9jbXRhci9jb25maWcuaC5pbiwKCSAgVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5jLCBVdGlsaXRpZXMvY214bWxycGMveG1scnBjLmgsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfZXhwYXQuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19zZXJ2ZXIuaDogRU5IOiBtb3ZlIGNoYW5nZXMgZnJvbSBtYWluCgkgIHRyZWUKCjIwMDYtMTAtMjcgMTU6NTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogRU5IOiByZW1vdmUgSmF2YUVtYmVkZGluZwoKMjAwNi0xMC0yNyAxNTo1NSAgaG9mZm1hbgoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogZml4IHdhcm5pbmdzIG9uIHdpbmRvd3MgcGF0aHMKCjIwMDYtMTAtMjYgMTE6MzkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGFja2FnZUNvbW1hbmQuaDogRU5IOgoJICBBZGRlZCBOT19NT0RVTEUgYW5kIENPTVBPTkVOVFMgb3B0aW9ucyB0byBpbXByb3ZlIGZsZXhpYmlsaXR5IG9mCgkgIHRoZSBjb21tYW5kLglSZS1pbXBsZW1lbnRlZCBhcmd1bWVudCBwYXJzaW5nIHRvIGJlIHNpbXBsZXIgYW5kCgkgIG1vcmUgcm9idXN0LgoKMjAwNi0xMC0yNiAxMTowMSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDogU1RZTEU6IEZpeCB0eXBvCgoyMDA2LTEwLTI2IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IFdoZW4gd3JpdGluZwoJICBuZXdsaW5lcyBiZXR3ZWVuIHNjcmlwdCBwb3J0aW9ucyBpbiBwcmVidWlsZCwgcHJlbGluaywgYW5kCgkgIHBvc3RidWlsZCBjb21tYW5kIGxpbmVzIHRoZXkgbXVzdCBiZSBlc2NhcGVkIGZvciBYTUwgc28gdGhhdCB0aGUKCSAgSURFIHJlY2VpdmVzIHRoZW0uICBUaGlzIGZpeGVzIHRoZSBmaXggZm9yIGJ1ZyAjMzk3Ny4KCjIwMDYtMTAtMjUgMTQ6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSB1bnVzZWQKCSAgdmFyaWFibGUuCgoyMDA2LTEwLTI1IDEyOjQ5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBBZGp1c3QKCSAgcHJlYnVpbGQvcHJlbGluay9wb3N0YnVpbGQgc2NyaXB0IGNvbnN0cnVjdGlvbiB0byBhY2NvdW50IGZvcgoJICBDb25zdHJ1Y3RTY3JpcHQgbm8gbG9uZ2VyIHByb2R1Y2luZyB0cmFpbGluZyBuZXdsaW5lcy4gIFRoaXMKCSAgYWRkcmVzc2VzIGJ1ZyMzOTc3LgoKMjAwNi0xMC0yNSAxMjoyNyAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4OiBCVUc6IEF2b2lkIGxlYWRpbmcgYW5kCgkgIHRyYWlsaW5nIG5ld2xpbmVzIGluIGN1c3RvbSBjb21tYW5kIHNjcmlwdHMgYmVjYXVzZSBzb21lIFZTNgoJICB2ZXJzaW9ucyBkbyBub3QgbGlrZSB0aGUgdHJhaWxpbmcgYmFja3NsYXNoIHRoaXMgcHJvZHVjZXMuICBUaGlzCgkgIGFkZHJlc3NlcyBidWcjMzk3Ny4KCjIwMDYtMTAtMjUgMTE6MjMgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmUtZW5hYmxpbmcgIyBlc2NhcGUKCSAgdGVzdCBub3cgdGhhdCBpdCBpcyBpbXBsZW1lbnRlZCBldmVyeXdoZXJlLgoKMjAwNi0xMC0yNSAxMToyMyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGt3c3lzL1N5c3RlbS5jLCBrd3N5cy9TeXN0ZW0uaC5pbjogRU5IOiBBZGRpbmcgc3VwcG9ydCBmb3IgIwoJICBlc2NhcGUgaW4gV2F0Y29tIFdNYWtlLgoKMjAwNi0xMC0yNSAxMDo1OCAga2luZwoKCSogVGVzdHMvTWFjcm9UZXN0L0NNYWtlTGlzdHMudHh0OiBCVUc6IEVRVUFMIC0+IFNUUkVRVUFMIGZvciBzdHJpbmcKCSAgY29tcGFyaXNvbi4KCjIwMDYtMTAtMjUgMTA6NTcgIGtpbmcKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEJVRzogSXQgY2Fubm90IGJlIGFuIGVycm9yIGlmIHRoZSB2YWx1ZXMKCSAgZG8gbm90IGNvbnZlcnQuICBUaGUgZG9jcyBzYXkgdGhhdCBpZiB0aGUgdmFsdWVzIGRvIG5vdCBjb252ZXJ0CgkgIHRoZSB0ZXN0IGlzIGZhbHNlLgoKMjAwNi0xMC0yNSAxMDozMSAga2luZwoKCSogU291cmNlL2NtSWZDb21tYW5kLmN4eDogQlVHOiBGb3IgTEVTUywgR1JFQVRFUiwgYW5kIEVRVUFMIGNoZWNrCgkgIHRoYXQgdGhlIGFyZ3VtZW50cyBjYW4gYWN0dWFsbHkgYmUgY29udmVydGVkIHRvIG51bWJlcnMuICBBbHNvCgkgIGZvcmNlIHRoZSBjb252ZXJzaW9uIHJlc3VsdHMgdG8gYmUgc3RvcmVkIGluIG1lbW9yeSB0byBtYWtlIHN1cmUKCSAgdGhleSBib3RoIHVzZSB0aGUgc2FtZSBwcmVjaXNpb24uICBUaGlzIGFkZHJlc3NlcyBidWcjMzk2Ni4KCjIwMDYtMTAtMjUgMDk6NTQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogUmVtb3ZlIHVubmVjZXNzYXJ5IHByb3ZvY2F0aW9uCgoyMDA2LTEwLTI1IDA5OjU0ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QzL3Rlc3QuY21ha2UuaW46IEJVRzogQXR0ZW1wdCB0byBmaXggdGhlIHRlc3QKCjIwMDYtMTAtMjUgMDg6NTYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogU1RZTEU6IEZpeCBsaW5lIGxlbmd0aAoKMjAwNi0xMC0yNCAxNzo1NiAgYWxleAoKCSogTW9kdWxlcy9GaW5kUGVybC5jbWFrZTogQlVHOiBob25vciB0aGUgUkVRVUlSRUQgZmxhZyBmb3IgUGVybCwKCSAgcGxlYXNlIGJhY2twb3J0IHRvIDIuNCBicmFuY2ggc28gdGhhdCBpdCB3aWxsIGJlIGluIDIuNC40CgoJICBBbGV4CgoyMDA2LTEwLTI0IDEyOjQ0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEJVRzogTG9va3MgbGlrZSBnY292CgkgIHByb2R1Y2VzIGxpbmVzIHdpdGggc3RyaW5nIC8qRU9GKi8gb24gdGhlbSBpZiB0aGVyZSBpcyBubyBsaW5lIGF0CgkgIHRoZSBlbmQgb2YgdGhlIGZpbGUuIFRoaXMgd2lsbCBmaXggdGhlIGNvdmVyYWdlIGNvZGUgY29tcGxhaW5pbmcKCSAgYWJvdXQgaXQKCjIwMDYtMTAtMjQgMTE6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgZmFpbGluZyB0ZXN0CgoyMDA2LTEwLTI0IDEwOjAzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlOiBFTkg6IGZpeCBtb3JlIGRveHlnZW4gaXNzdWVzCgoyMDA2LTEwLTI0IDEwOjAzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IEVOSDogcmVtb3ZlIEphdmFFbWJlZGRpbmcgZnJhbWV3b3JrCgoyMDA2LTEwLTI0IDA5OjQ3ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBCVUc6IERpc2FibGUgdGVzdGluZyBvZiAjCgkgIGVzY2FwZXMgdW50aWwgaXQgY2FuIGJlIGltcGxlbWVudGVkIGZvciBXYXRjb20gV01ha2UuCgoyMDA2LTEwLTIzIDE5OjA0ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREUzLmNtYWtlOiBCVUc6IGZpeCAjMzk1NTogYWRkIC1PMiBieSBkZWZhdWx0IGJ1dAoJICBvbmx5IGlmIG5vIHNwZWNpYWwgYnVpbGR0eXBlIGlzIHNldAoKCSAgQWxleAoKMjAwNi0xMC0yMyAxNzoyMCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbS5jLCBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIEFkZGVkICMgY2hhcmFjdGVyIGZvciBzaGVsbCBlc2NhcGluZy4KCjIwMDYtMTAtMjMgMTc6MTQgIGtpbmcKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUlmQ29tbWFuZC5oLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZW1vdmUgb2xkCgkgIElGKEZJTEVfSVNfTkVXRVIpIHN5bnRheC4gIEl0IHdhcyBuZXZlciBpbiBhIHJlbGVhc2UgYW55d2F5LgoKMjAwNi0xMC0yMyAxNjoxNiAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBEbyBub3QgZGlzcGxheSBjbWFrZSAtRSB1c2FnZSB3aGVuIGFueSBvbGQKCSAgY29tbWFuZCBsaW5lIGVycm9yIG9jY3Vycy4KCjIwMDYtMTAtMjMgMTQ6NTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2U6IEVOSDogcHV0IGluIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CgkgIGZvciBvbGRlciBjbWFrZQoKMjAwNi0xMC0yMyAxMzozNiAga2luZwoKCSogVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUlmQ29tbWFuZC5oOiBFTkg6IFBhdGNoIGZyb20gQWxleCB0byBwcm92aWRlIG5pY2VyCgkgIHN5bnRheCBmb3IgRklMRV9JU19ORVdFUi4gIFVzaW5nIG5hbWUgSVNfTkVXRVJfVEhBTiBzbyBvbGQgc3ludGF4CgkgIHdpbGwgY29udGludWUgdG8gd29yay4KCjIwMDYtMTAtMjIgMTk6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgYnJva2VuIHRlc3QKCjIwMDYtMTAtMjIgMTE6NTcgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IENPTVA6IEZpeGVkIHR5cG86CgkgIENNQUtFX1RFU1RfQ01BS0VMSUIgLT4gQ09NUExFWF9URVNUX0NNQUtFTElCLgoKMjAwNi0xMC0xOSAxNTo0NSAga2luZwoKCSogVXRpbGl0aWVzL2NtdGFyL0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlbW92ZSBvbGQgaW5jbHVkZSBkaXJzLgoKMjAwNi0xMC0xOSAxNTozOSAga2luZwoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19zZXJ2ZXIuaDogQ09NUDogRml4IGZvciBidWlsZGluZwoJICB3aXRob3V0IHN5c3RlbSB4bWxycGMgaW5zdGFsbGVkLgoKMjAwNi0xMC0xOSAxNToxNyAga2luZwoKCSogYm9vdHN0cmFwOiBFTkg6IEFkZGluZyBvcHRpb24gdG8gdXNlIHN5c3RlbS1pbnN0YWxsZWQgdGhpcmQtcGFydHkKCSAgbGlicmFyaWVzLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzM2NTMuCgoyMDA2LTEwLTE5IDE1OjAwICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVhNTFBhcnNlci5jeHgsIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgVXRpbGl0aWVzL2NtVGhpcmRQYXJ0eS5oLmluLCBVdGlsaXRpZXMvY21fY3VybC5oLAoJICBVdGlsaXRpZXMvY21fZXhwYXQuaCwgVXRpbGl0aWVzL2NtX3htbHJwYy5oLCBVdGlsaXRpZXMvY21femxpYi5oLAoJICBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9jbXRhci9jb25maWcuaC5pbiwKCSAgVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5jLCBVdGlsaXRpZXMvY214bWxycGMveG1scnBjLmgsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfZXhwYXQuYzogRU5IOiBBZGQgb3B0aW9ucyB0byBidWlsZCB3aXRoCgkgIHN5c3RlbSB1dGlsaXR5IGxpYnJhcmllcy4gIE9yZ2FuaXplIGluY2x1c2lvbiBvZiB0aGlyZCBwYXJ0eQoJICBsaWJyYXJpZXMgaW50byBhIHNpbmdsZSBoZWFkZXIgcGVyIGxpYnJhcnkuICBUaGlzIGFkZHJlc3NlcwoJICBidWcjMzY1My4KCjIwMDYtMTAtMTkgMTQ6NDggIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VEZXBlbmRlbnRPcHRpb24uY21ha2U6IEVOSDogQWRkaW5nCgkgIENNQUtFX0RFUEVOREVOVF9PUFRJT04gbWFjcm8uCgoyMDA2LTEwLTE5IDE0OjQ1ICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IEFkZGVkIGV4cGxpY2l0CgkgIG5hbWUgZm9yIG9wdGlvbiB0byB0ZXN0IENNYWtlTGliLiAgQWRkZWQgb3B0aW9uIHRvIGRpc2FibGUKCSAgdGVzdGluZyBvZiBDTWFrZUxpYiBpZiBzeXN0ZW0gdXRpbGl0eSBsaWJyYXJpZXMgYXJlIHVzZWQgdW50aWwKCSAgbGlua2luZyBtYWRlIGVhc2llci4KCjIwMDYtMTAtMTkgMTI6NTggIGtpbmcKCgkqIE1vZHVsZXMvRmluZFhNTFJQQy5jbWFrZTogRU5IOiBGaW5kIG1vZHVsZSBmb3IgWE1MUlBDIGxpYnJhcmllcy4KCjIwMDYtMTAtMTkgMTI6NTcgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEVYUEFULmNtYWtlOiBFTkg6IEZpbmQgbW9kdWxlIGZvciBFWFBBVCBsaWJyYXJ5LgoKMjAwNi0xMC0xOSAxMjo1NSAga2luZwoKCSogTW9kdWxlcy9GaW5kQ1VSTC5jbWFrZTogRU5IOiBGaW5kIG1vZHVsZSBmb3IgQ1VSTCBsaWJyYXJ5LgoKMjAwNi0xMC0xOSAxMDo0NSAgbWFydGluawoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEVOSDoKCSAgYWRkZWQgdG90YWwgdGltZSBsaW1pdCBmb3IgYSBDVGVzdCBydW4gYnVnIDEyMDcKCjIwMDYtMTAtMTkgMTA6MDcgIGtpbmcKCgkqIE1vZHVsZXMvOiBGaW5kd3hXaWRnZXRzLmNtYWtlLCBVc2V3eFdpZGdldHMuY21ha2U6IEVOSDogUGF0Y2gKCSAgZnJvbSBKYW4gZm9yIGJ1ZyMzNDUzLiAgQ2xlYW5zIHVwIGZpbmQgc2NyaXB0IGFuZCBlbmFibGVzCgkgIC1pc3lzdGVtIGZlYXR1cmUgZm9yIHVzZSBzY3JpcHQuCgoyMDA2LTEwLTE5IDA5OjE4ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IEVOSDogQ2xhcmlmaWVkIHNlYXJjaCBiZWhhdmlvciB3aGVuIHRoZQoJICBvYmplY3RpdmUgaXMgbm90IGZvdW5kLgoKMjAwNi0xMC0xOCAyMzoyNyAgZGF2aWQuY29sZQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBDb3JyZWN0IHRoZQoJICBTeXN0ZW1SZXBvcnREZWJ1Z0hvb2sgZnVuY3Rpb24uIEl0IHNob3VsZCBub3QgY2FsbCBleGl0LiBJdCBnZXRzCgkgIGNhbGxlZCBtdWx0aXBsZSB0aW1lcyBhdCBzaHV0ZG93biBpbiBhIG1lbW9yeSBsZWFrIHJlcG9ydGluZwoJICBzY2VuYXJpby4uLiBUaGlzIGlzIHRoZSBzb3VyY2Ugb2YgdGhlIGxvbmcgc3RhbmRpbmcgS1dXaWRnZXRzVG91cgoJICBkZWJ1ZyBidWlsZCBkYXNoYm9hcmQgZmFpbHVyZS4KCjIwMDYtMTAtMTcgMDk6MzQgIGtpbmcKCgkqIFNvdXJjZS9DUGFjay9jcGFjay5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lLXRvby1sb25nLgoKMjAwNi0xMC0xNiAxODoxNyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9DWUdXSU4uY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmgsIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogQWRkaW5nIGltYWdlIHZlcnNpb24gbnVtYmVyCgkgIChtYWpvci5taW5vcikgcHJvcGVydHkgdG8gd2luZG93cyBiaW5hcmllcy4gIERlZmF1bHQgaXMgMC4wLCBidXQKCSAgdGhlIFZFUlNJT04gdGFyZ2V0IHByb3BlcnR5IG1heSBjaGFuZ2UgdGhlIHZhbHVlLiAgV2luZG93cyBub3cKCSAgaGFzIGZpcnN0LWNsYXNzIHN1cHBvcnQgZm9yIGRsbCBhbmQgZXhlIHZlcnNpb25pbmcuICBUaGlzCgkgIGFkZHJlc3NlcyBidWcjMTIxOS4KCjIwMDYtMTAtMTYgMTU6MTggIGtpbmcKCgkqIFNvdXJjZS9jbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFRlc3RzL091dE9mU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IE5lZWQgdG8gY29sbGFwc2UgcGF0aAoJICBhcmd1bWVudCB0byBnZXRfZGlyZWN0b3J5X3Byb3BlcnR5LiAgVGhpcyBhZGRyZXNzZXMgYnVnIzM4NDcuCgoyMDA2LTEwLTE2IDE0OjUyICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRU5IOiBNYWtlIGh5cGVybGlua3MgaW4gZG9jdW1lbnRhdGlvbgoJICBhY3RpdmUgd2hlbiBnZW5lcmF0ZWQgaW50byBIVE1MIGRvY3VtZW50cy4gIFRoaXMgYWRkcmVzc2VzCgkgIGJ1ZyMzOTA2LgoKMjAwNi0xMC0xNiAxMzo1OCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2U6IEVOSDogQWxsb3cgdXNlciBwcm9qZWN0IGNvZGUgdG8KCSAgZGlzdGluZ3Vpc2ggYmV0d2VlbiBhbiBpbnN0YWxsIHByZWZpeCBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSBhbmQKCSAgb25lIHNldCBieSBDTWFrZSBhcyBhIGRlZmF1bHQuICBUaGlzIGlzIHVzZWZ1bCBmb3IgY2hhbmdpbmcgdGhlCgkgIGRlZmF1bHQgcHJlZml4IHdoaWxlIHN0aWxsIGFsbG93aW5nIHRoZSB1c2VyIHRvIG92ZXJyaWRlIGl0LgoKMjAwNi0xMC0xNiAxMjo0OSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBwYXJ0aWFsIGZpeCBmb3IgdGhlIHByb2dyZXNzIGFmdGVyIGluc3RhbGwKCSAgYnVnCgoyMDA2LTEwLTE2IDEyOjQ3ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNyZWF0ZS1jbWFrZS1yZWxlYXNlLmNtYWtlLAoJICBtYWdyYXRoZWFfcmVsZWFzZS5jbWFrZSwgcjM2bjExX2FpeF9yZWxlYXNlLmNtYWtlLAoJICByZWxlYXNlX2NtYWtlLnNoLmluLCB1cGxvYWRfcmVsZWFzZS5jbWFrZTogRU5IOiB1cGRhdGUgZm9yCgkgIHJlbGVhc2UKCjIwMDYtMTAtMTYgMTE6MzIgIGtpbmcKCgkqIFNvdXJjZS86IGNtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eCwgY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuaDoKCSAgRU5IOiBBZGRlZCBPVVRQVVRfU1RSSVBfVFJBSUxJTkdfV0hJVEVTUEFDRSBhbmQKCSAgRVJST1JfU1RSSVBfVFJBSUxJTkdfV0hJVEVTUEFDRSBvcHRpb25zIHRvIEVYRUNVVEVfUFJPQ0VTUwoJICBjb21tYW5kLiAgVGhlc2UgYWxsb3cgaXQgdG8gYmVoYXZlIG1vcmUgbGlrZSB0aGUgb2xkIEVYRUNfUFJPR1JBTQoJICBjb21tYW5kIHRoYXQgaXQgaXMgc3VwcG9zZWQgdG8gcmVwbGFjZS4KCjIwMDYtMTAtMTYgMTA6NDcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2U6IEJVRzogZml4IGZvciBidWcjIDMzMTAKCjIwMDYtMTAtMTUgMDc6NTQgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBDUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBTVFlMRTogRml4IGt3c3R5bGUKCjIwMDYtMTAtMTMgMTc6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eCwgU291cmNlL2NtQ1Rlc3QuaCwKCSAgVGVzdHMvQ1Rlc3RUZXN0Mi90ZXN0LmNtYWtlLmluOiBFTkg6IFByb3Blcmx5IHByb3BhZ2F0ZSBjb25maWcKCSAgdHlwZSB0byB0ZXN0CgoyMDA2LTEwLTEzIDE2OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIzM5MDgKCSAgaWYgaGVhZGVyX2ZpbGVfb25seSBpcyBzZXQgb24gY3h4IGZpbGVzIGluIHZpc3VhbCBzdHVkaW8gZG8gbm90CgkgIGNvbXBpbGUgdGhlbQoKMjAwNi0xMC0xMyAxNTowNCAga2luZwoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOiBCVUc6IENvbXByZXNzaW9uIG11c3QgYmUgc2V0IGJlZm9yZSBhbnkKCSAgb3V0cHV0IGlzIGNyZWF0ZWQuCgoyMDA2LTEwLTEzIDE0OjQ0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IENPTVA6IEZpeCBTdW4gYnVpbGQKCjIwMDYtMTAtMTMgMTM6NTkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogV2hlbiB1c2luZyBsaW5rCgkgIHNjcmlwdHMgdXNlIG5hdGl2ZSBzaGVsbCBlc2NhcGVzIGluc3RlYWQgb2YgbWFrZWZpbGUgc2hlbGwKCSAgZXNjYXBlcyBiZWNhdXNlIHRoZSBzY3JpcHQgaXMgbm90IGludGVycHJldGVkIGJ5IGEgbWFrZSB0b29sLgoKMjAwNi0xMC0xMyAxMTo1MyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFsbG93IGZvciAtZ2R3YXJmLTIgdG8gYmUKCSAgaW4gY2ZsYWdzIG9yIGN4eGZsYWdzIGZvciB4Y29kZQoKMjAwNi0xMC0xMyAxMToyNiAgaG9mZm1hbgoKCSogZG94eWdlbi5jb25maWc6IEJVRzogZml4IGZvciBidWcjIDM5MjEgSU5QVVQgd3JvbmcKCjIwMDYtMTAtMTMgMTE6MjUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kVGNsc2guY21ha2UsIEZpbmRXaXNoLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnICMzODQ2CgkgIG1vcmUgYWR2YW5jZWQgc3R1ZmYKCjIwMDYtMTAtMTMgMTE6MjMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyMzODk4IGZpbmQgcXQgcGx1Z2luIGRpcgoKMjAwNi0xMC0xMyAxMDo1NyAgaG9mZm1hbgoKCSogQ01ha2UucGRmLCBDTWFrZS5ydGYsIERvY3MvQ01ha2UxMnAyLnJ0ZiwgRG9jcy9DTWFrZTE0LnJ0ZiwKCSAgRG9jcy9DTWFrZTE2LnJ0ZiwgTW9kdWxlcy9DTWFrZVZDTWFuaWZlc3QuY21ha2UsCgkgIE1vZHVsZXMvQ09QWUlORy1DTUFLRS1TQ1JJUFRTLCBNb2R1bGVzL0NoZWNrQ0NvbXBpbGVyRmxhZy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYQ29tcGlsZXJGbGFnLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYU291cmNlUnVucy5jbWFrZSwgTW9kdWxlcy9GaW5kQVNQRUxMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRCWmlwMi5jbWFrZSwgTW9kdWxlcy9GaW5kSFNQRUxMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRKYXNwZXIuY21ha2UsIE1vZHVsZXMvRmluZExpYlhtbDIuY21ha2UsCgkgIE1vZHVsZXMvRmluZExpYlhzbHQuY21ha2UsIE1vZHVsZXMvRmluZE9wZW5TU0wuY21ha2UsCgkgIFNvdXJjZS9jbUVsc2VJZkNvbW1hbmQuY3h4LCBTb3VyY2UvY21FbHNlSWZDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUVuZE1hY3JvQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUVuZE1hY3JvQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbERpcmVjdG9yeUdlbmVyYXRvci5oLCBTb3VyY2UvY21TdGFuZGFyZExleGVyLmgsCgkgIFNvdXJjZS9rd3N5cy9DTWFrZUVtcHR5SW5wdXRGaWxlLmluLAoJICBTb3VyY2Uva3dzeXMvQ2hlY2tDWFhTb3VyY2VSdW5zLmNtYWtlLCBTb3VyY2Uva3dzeXMvSU9TdHJlYW0uY3h4LAoJICBTb3VyY2Uva3dzeXMvSU9TdHJlYW0uaHh4LmluLCBTb3VyY2Uva3dzeXMvU3lzdGVtLmMsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW0uaC5pbiwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eC5iYWssCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW4uYmFrLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlLmJhaywKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHguYmFrLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybVRlc3RzLmNtYWtlLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybVRlc3RzQy5jLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybVRlc3RzQ1hYLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0EuY3h4LmJhaywgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0EuaCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0EuaGgsIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9BLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL25vdEluQWxsRXhlLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL3Rlc3RTeXN0ZW1EaXIuY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvVGVzdExpbmsuYywKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L25vdEluQWxsTGliLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L3Rlc3RfcHJlcHJvY2Vzcy5jbWFrZSwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L1N5c3RlbURpci90ZXN0U3lzdGVtRGlyLmgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9BLmN4eC5iYWssCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9BLmgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9BLmhoLAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9ub3RJbkFsbEV4ZS5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS90ZXN0U3lzdGVtRGlyLmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L1Rlc3RMaW5rLmMsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9ub3RJbkFsbExpYi5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0X3ByZXByb2Nlc3MuY21ha2UsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9TeXN0ZW1EaXIvdGVzdFN5c3RlbURpci5oLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0EuY3h4LmJhaywKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9BLmgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQS5oaCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9BLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9ub3RJbkFsbEV4ZS5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvdGVzdFN5c3RlbURpci5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvVGVzdExpbmsuYywKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9ub3RJbkFsbExpYi5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdF9wcmVwcm9jZXNzLmNtYWtlLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L1N5c3RlbURpci90ZXN0U3lzdGVtRGlyLmgsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvY2hlY2tfY29tbWFuZF9saW5lLmMuaW4sCgkgIFRlc3RzL091dE9mQmluYXJ5L0NNYWtlTGlzdHMudHh0LCBUZXN0cy9PdXRPZkJpbmFyeS9vdXRsaWIuYywKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9zY3JpcHRzL3NhbXBsZV9zY3JpcHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvc2NyaXB0cy9zYW1wbGVfc2NyaXB0LmJhdCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL3NjcmlwdHMvc2FtcGxlX3NjcmlwdCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL3NjcmlwdHMvc2FtcGxlX3NjcmlwdC5iYXQsCgkgIFV0aWxpdGllcy9jbWNvbXByZXNzL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY21jb21wcmVzcy9jbWNvbXByZXNzLmMsCgkgIFV0aWxpdGllcy9jbWNvbXByZXNzL2NtY29tcHJlc3MuaDogRU5IOiBtZXJnZSBmaWxlcyBmcm9tIG1haW4KCSAgdHJlZSB0byAyLjQKCjIwMDYtMTAtMTMgMTA6NTIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBib290c3RyYXAsCgkgIERvY3MvY21ha2UtaW5kZW50LnZpbSwgRG9jcy9jbWFrZS1tb2RlLmVsLCBEb2NzL2NtYWtlLXN5bnRheC52aW0sCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lUkNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tDWFhTb3VyY2VDb21waWxlcy5jbWFrZSwgTW9kdWxlcy9GaW5kRG94eWdlbi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kR0xVVC5jbWFrZSwgTW9kdWxlcy9GaW5kS0RFMy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUE5HLmNtYWtlLCBNb2R1bGVzL0ZpbmRQeXRob25JbnRlcnAuY21ha2UsCgkgIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2UsIE1vZHVsZXMvRmluZFF0My5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLCBNb2R1bGVzL0ZpbmRSdWJ5LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTREwuY21ha2UsIE1vZHVsZXMvRmluZFRDTC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlLAoJICBNb2R1bGVzL0luc3RhbGxSZXF1aXJlZFN5c3RlbUxpYnJhcmllcy5jbWFrZSwKCSAgTW9kdWxlcy9LREUzTWFjcm9zLmNtYWtlLCBNb2R1bGVzL1VzZUVjb3MuY21ha2UsCgkgIE1vZHVsZXMvVXNlUXQ0LmNtYWtlLCBNb2R1bGVzL1VzZVNXSUcuY21ha2UsCgkgIE1vZHVsZXMva2RlM3VpYy5jbWFrZSwgTW9kdWxlcy9yZWFkbWUudHh0LAoJICBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9DWUdXSU4uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0ZyZWVCU0QuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9JUklYNjQuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vUU5YLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1N1bk9TLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwgU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmN4eCwgU291cmNlL2NtQWRkVGVzdENvbW1hbmQuaCwKCSAgU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5oLCBTb3VyY2UvY21DUGx1Z2luQVBJLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZC5oLCBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmwsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci55LAoJICBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuaCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21DdXN0b21Db21tYW5kLmN4eCwgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5oLAoJICBTb3VyY2UvY21EZXBlbmRzQy5jeHgsIFNvdXJjZS9jbURlcGVuZHNDLmgsCgkgIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmwsCgkgIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueSwgU291cmNlL2NtRGVwZW5kc0phdmFMZXhlci5jeHgsCgkgIFNvdXJjZS9jbURlcGVuZHNKYXZhTGV4ZXIuaW4ubCwgU291cmNlL2NtRGVwZW5kc0phdmFQYXJzZXIuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzSmF2YVBhcnNlci55LCBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eCwKCSAgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmgsIFNvdXJjZS9jbUV4cHJMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUV4cHJMZXhlci5pbi5sLCBTb3VyY2UvY21FeHByUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtRXhwclBhcnNlci55LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlzdENvbW1hbmQuaCwgU291cmNlL2NtTGlzdEZpbGVDYWNoZS5jeHgsCgkgIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuYywgU291cmNlL2NtTGlzdEZpbGVMZXhlci5pbi5sLAoJICBTb3VyY2UvY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oLCBTb3VyY2UvY21NYWNyb0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oLCBTb3VyY2UvY21NZXNzYWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwgU291cmNlL2NtUmVtb3ZlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaCwKCSAgU291cmNlL2NtU3ViZGlyRGVwZW5kc0NvbW1hbmQuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oLAoJICBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LCBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuaCwKCSAgU291cmNlL2NtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwgU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuaCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL2NtYWtlLmgsIFNvdXJjZS9jbWFrZW1haW4uY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUYXJDb21wcmVzc0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEhhbmRsZXJDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jY21ha2UuY3h4LAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHAsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluLCBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eCwKCSAgU291cmNlL2t3c3lzL0dsb2IuY3h4LCBTb3VyY2Uva3dzeXMvR2xvYi5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzLmguaW4sIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jLAoJICBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmMsIFNvdXJjZS9rd3N5cy9SZWdpc3RyeS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW4sIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW4sIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jLAoJICBTb3VyY2Uva3dzeXMvdGVzdENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgU291cmNlL2t3c3lzL3Rlc3RDb21tYW5kTGluZUFyZ3VtZW50czEuY3h4LAoJICBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYywgU291cmNlL2t3c3lzL3Rlc3RTeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9BLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0EuY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQS5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL091dE9mU291cmNlL091dE9mU291cmNlU3ViZGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9zaW1wbGUuY3h4LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9TdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL1N5c3RlbUluZm9ybWF0aW9uLmluLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9SRUFETUUsIFV0aWxpdGllcy9jbWN1cmwvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbXRhci9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2N1cmxfdHJhbnNwb3J0LmMsCgkgIFV0aWxpdGllcy9jbXpsaWIvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWVyZ2UgY2hhbmdlcyBmcm9tIHRoZSBtYWluCgkgIHRyZWUgdG8gdGhlIDIuNCBicmFuY2gKCjIwMDYtMTAtMTMgMTA6MjcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LAoJICBjbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEJVRzogUmVwbGFjZSBzb21lIGVycm9ycyB3aXRoIHdhcm5pbmdzCgoyMDA2LTEwLTEzIDEwOjIyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEJVRzogSnVzZSB1c2UgY21ha2UgLUUgZWNobwoJICBpbnN0ZWFkIG9mIHRoZSBuYXRpdmUgZWNobyBvbiBNaW5HVyBtYWtlZmlsZXMuICBUaGUgZWNobzsgaGFjawoJICBkaWQgbm90IHdvcmsgd2hlbiBydW5uaW5nIGZyb20gY3Rlc3QuCgoyMDA2LTEwLTEzIDEwOjAzICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IHRyeSB0byBjb21wdXRlIHRoZQoJICBsb2NhdGlvbiBvZiBhIG5vbi1saWJyYXJ5IHRhcmdldCBmb3IgbGlua2luZy4KCjIwMDYtMTAtMTMgMDk6MzAgIGFuZHkKCgkqIFNvdXJjZS86IENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5oLCBrd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZXBvcnQKCSAgY29tbWFuZCBsaW5lIGFzIGEgbWVhc3VyZW1lbnQgYW5kIGFsbG93IHVzZXIgdG8gYWRkIGN1c3RvbQoJICBtZWFzdXJlbWVudHMKCjIwMDYtMTAtMTIgMTc6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiB1bmRvIGJhZCBjaGFuZ2VzCgoyMDA2LTEwLTEyIDE2OjMxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEJVRzogVXNlCgkgIEJ1aWxkRGlyZWN0b3J5IGZyb20gdGhlIERhcnRDb25maWd1cmF0aW9uIGluZm9ybWF0aW9uLiBBbHNvLCBNYWtlCgkgIG1pc3NpbmcgY292ZXJhZ2UgaW5mb3JtYXRpb24gbm90IG1ha2UgY3Rlc3QgZmFpbAoKMjAwNi0xMC0xMiAxNTozMCAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBVc2UgdmFyaWFibGUgaW5zdGVhZCBvZgoJICByZXRyaWV2aW5nIGFnYWluLiBGaXhlcyBidWc6IEJ1ZyAjMzQ3NgoKMjAwNi0xMC0xMiAxNToxMCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eDogQlVHOiBSZXBvcnQgYW5kIGVycm9yIHdoZW4KCSAgY3Rlc3QgLVMgc2NyaXB0IGZhaWxzLi4uIEZpeGVzOiBCdWcgIzM1NDAKCjIwMDYtMTAtMTIgMTQ6NTkgIGFuZHkKCgkqIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBBZGQgTlNJUyBjb21wcmVzc2lvbgoKMjAwNi0xMC0xMiAxNDo0NyAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IEhhbmRsZSBtb3JlIHJlZ3VsYXIKCSAgZXhwcmVzc2lvbnMKCjIwMDYtMTAtMTIgMTM6MzAgIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9QYWNrYWdlU2NyaXB0LmNtYWtlLAoJICBTaW1wbGVJbnN0YWxsUzIvUGFja2FnZVNjcmlwdC5jbWFrZTogRU5IOiBTZXZlcmFsIENQYWNrIGZpeGVzLgoJICBGaXJzdCwgYWxsb3cgdXNlciB0byBzZXQgQ01BS0VfTU9EVUxFX1BBVEggZm9yIENQYWNrOyBtYWtlCgkgIFNldE9wdGlvbklmTm90U2V0IG1vcmUgcm9idXN0IHRvIGhhbmRsZSBlbXB0eSBvcHRpb25zOyBkbyB0ZXN0CgkgIFRHWiwgU1RHWiwgYW5kIFRaLCBBZGQgaGFuZGxpbmcgKGFuZCB0ZXN0KSBvZiBJbnN0YWxsIFNjcmlwdDsgc2V0CgkgIGVudmlyb25tZW50IHZhcmlhYmxlIENNQUtFX0lOU1RBTExfUFJFRklYCgoyMDA2LTEwLTEyIDEzOjE1ICBhbmR5CgoJKiBNb2R1bGVzL0NUZXN0VGFyZ2V0cy5jbWFrZTogRU5IOiBPbiBWaXN1YWwgU3R1ZGlvIGFuZCBYY29kZQoJICBoYW5kbGUgY29uZmlnIHR5cGUKCjIwMDYtMTAtMTIgMTM6MTIgIGFuZHkKCgkqIE1vZHVsZXMvOiBGaW5kSk5JLmNtYWtlLCBGaW5kSmF2YS5jbWFrZTogRU5IOiBNb3JlIGxvY2F0aW9ucyBmb3IKCSAgSmF2YQoKMjAwNi0xMC0xMiAxMzowNSAgYW5keQoKCSogTW9kdWxlcy9DUGFjay5jbWFrZSwgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBTZXZlcmFsIENQYWNrIGZpeGVzLgoJICBGaXJzdCwgYWxsb3cgdXNlciB0byBzZXQgQ01BS0VfTU9EVUxFX1BBVEggZm9yIENQYWNrOyBtYWtlCgkgIFNldE9wdGlvbklmTm90U2V0IG1vcmUgcm9idXN0IHRvIGhhbmRsZSBlbXB0eSBvcHRpb25zOyBkbyB0ZXN0CgkgIFRHWiwgU1RHWiwgYW5kIFRaLCBBZGQgaGFuZGxpbmcgKGFuZCB0ZXN0KSBvZiBJbnN0YWxsIFNjcmlwdDsgc2V0CgkgIGVudmlyb25tZW50IHZhcmlhYmxlIENNQUtFX0lOU1RBTExfUFJFRklYCgoyMDA2LTEwLTEyIDEyOjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IHNvbWUgY2xlYW51cCBhbmQgY29tbWVudGluZwoJICBvZiBjb2RlCgoyMDA2LTEwLTEyIDEwOjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBidWcgLWdkd2FyZgoJICBnZXR0aW5nIHJlbW92ZWQKCjIwMDYtMTAtMTEgMTI6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBEbyBub3QgY29sbGFwc2UgdGhlCgkgIElOU1RBTExfTkFNRV9ESVIgc2V0dGluZyBiZWNhdXNlIHVzZXJzIG1heSBpbnRlbmQgdG8gaGF2ZSAuLiBpbgoJICB0aGUgcGF0aC4gIFRoaXMgbWFrZXMgdGhlIG1ha2VmaWxlIGdlbmVyYXRvciBjb25zaXN0ZW50IHdpdGggdGhlCgkgIGFscmVhZHkgd29ya2luZyBYY29kZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIGZlYXR1cmUuICBBbHNvIGFkZGVkCgkgIGEgdGVzdCBmb3IgQGV4ZWN1dGFibGVfcGF0aC8uLiBzdHlsZSBzZXR0aW5ncyBmb3IgdGhpcyBwcm9wZXJ0eS4KCjIwMDYtMTAtMTEgMTI6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBTaW1wbGlmeSBjb2RlIGJ5IHJlbW92aW5nCgkgIHJlZHVuZGFudCBjaGVjayBhZ2FpbnN0IEJVSUxEX1dJVEhfSU5TVEFMTF9SUEFUSC4KCjIwMDYtMTAtMTAgMTY6MDMgIGtpbmcKCgkqIE1vZHVsZXMvcmVhZG1lLnR4dDogU1RZTEU6IEZpeGVkIHR5cG86IElOQ0xVREVfRElSLT5JTkNMVURFX0RJUlMuCgoyMDA2LTEwLTEwIDE0OjEzICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogVEFSR0VUX1FVT1RFRCBzaG91bGQgYWx3YXlzIGJlCgkgIHJlcGxhY2VkIGlmIFRhcmdldCBpcyBzZXQgaW4gdGhlIHJ1bGUgdmFyaWFibGVzLgoKMjAwNi0xMC0xMCAxMzo0NyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEF2b2lkIGR1cGxpY2F0ZQoJICBjb252ZXJzaW9uIHRvIG91dHB1dCBwYXRoLgoKMjAwNi0xMC0xMCAxMjoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEwLTA5IDIxOjQ4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IEJVRzogRml4ZWQgcmVmZXJlbmNlcyB0bwoJICBwcm9qZWN0cyBvdXRzaWRlIHRoZSBidWlsZCB0cmVlIGFuZCBpbiBvdGhlciBsb2NhdGlvbnMgd2l0aAoJICBzcGFjZXMgaW4gdGhlIHBhdGguICBUaGlzIGlzIG5lZWRlZCBmb3IKCSAgb3V0LW9mLXNvdXJjZS9vdXQtb2YtYmluYXJ5IHN1YmRpcmVjdG9yaWVzIGluIHRoZSBidWlsZC4KCjIwMDYtMTAtMDkgMjE6MjUgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvT3V0T2ZCaW5hcnkvQ01ha2VMaXN0cy50eHQsIFRlc3RzL091dE9mQmluYXJ5L291dGxpYi5jLAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvU3ViRGlyL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZpeGVkIG91dC1vZi1zb3VyY2UKCSAgc3ViZGlyZWN0b3JpZXMgdG8gd29yayB3aGVuIHRoZXkgYXJlIGFsc28gb3V0LW9mLWJpbmFyeS4gIFVwZGF0ZWQKCSAgdGhlIE91dE9mU291cmNlIHRlc3QgdG8gdGVzdCB0aGlzIGZlYXR1cmUuCgoyMDA2LTEwLTA5IDExOjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTAtMDkgMTA6MDYgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQ09NUDogRml4IG9yIHN1cHByZXNzIHdhcm5pbmdzIG9uCgkgIEJvcmxhbmQgYW5kIE1hYyBkYXNoYm9hcmRzLiBEZWZpbml0ZWx5IGZpeCAibWF5IGJlIHVzZWQKCSAgdW5pbml0aWFsaXplZCIgd2FybmluZ3MuCgoyMDA2LTEwLTA4IDA5OjIzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTAtMDcgMDY6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMC0wNiAxNTozMyAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogRU5IOiByZW1vdmUgb2xkIHVudXNlZAoJICBjb2RlCgoyMDA2LTEwLTA2IDE0OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogQlVHOiBwb3RlbnRpYWwgc2VnZmF1bHQKCjIwMDYtMTAtMDYgMTE6MTMgIGRhdmlkLmNvbGUKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogU1RZTEU6IE1ha2UgdGhlIHNldCBvZiBzdXBwb3J0ZWQgU1RMCgkgIGhlYWRlcnMgdGhlIHNhbWUgaW4gdnRrc3RkIGFuZCB2dGtzeXMvc3RsLiAoVGhlIHVuaW9uIG9mIHRoZQoJICBwcmVzZW50IHZhbHVlcyBvZiB0aGUgdHdvIHNldHMuKQoKMjAwNi0xMC0wNiAxMToxMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21NZXNzYWdlQ29tbWFuZC5jeHgsIGNtYWtlLmN4eCwgY21ha2UuaCwgY21ha2VtYWluLmN4eDoKCSAgRU5IOiBkbyBub3QgcHJpbnQgYSBjYWxsIHN0YWNrIGlmIHRoZSB1c2VyIGRvZXMgYSBtZXNzYWdlIGVycm9yCgkgIHVubGVzcyAtLWRlYnVnLW91dHB1dCBpcyB1c2VkCgoyMDA2LTEwLTA2IDA5OjE2ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogQlVHOiBEbyBub3QgZW5hYmxlIC1pc3lzdGVtCgkgIHN1cHBvcnQgZm9yIFhjb2RlIGdlbmVyYXRvciB1bnRpbCBpdCBpcyBpbXBsZW1lbnRlZC4KCjIwMDYtMTAtMDYgMDM6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0xMC0wNSAxNzo1MyAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIGNtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEJVRzogZml4IGJ1ZyB3aGVyZSBjb252ZXJhZ2Ugd2FzIHJlcXVpcmVkCgkgIHRvIGdldCB2YWxncmluZCBvdXRwdXQgYmVjYXVzZSBvZiBiYWQgY3VycmVudCBkaXJlY3RvcnkKCjIwMDYtMTAtMDUgMTY6NTkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogQlVHOgoJICBOZWVkIHRvIG1hdGNoIHNoYXJlZCBsaWJyYXJ5IG5hbWVzIGJlZm9yZSBzdGF0aWMgYmVjYXVzZSBzb21lCgkgIHBsYXRmb3JtcyBoYXZlIHN0YXRpYyBuYW1lIHBhdHRlcm5zIHRoYXQgbWF0Y2ggdGhlaXIgc2hhcmVkCgkgIHBhdHRlcm5zIGJ1dCBub3QgdmljZSB2ZXJzYS4JVGhpcyBpcyBuZWVkZWQgZm9yIGltcGxlbWVudGluZwoJICBidWcjMTY0NCBvbiBjeWd3aW4uCgoyMDA2LTEwLTA1IDE2OjMwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwgU291cmNlL2NtVGFyZ2V0LmN4eDogRU5IOiBBZGRpbmcKCSAgdmVyc2lvbiBudW1iZXIgdG8gdGhlIG5hbWUgb2YgYSBETEwgYnVpbHQgaW4gY3lnd2luIGJ1dCBub3QgdGhlCgkgIGltcG9ydCBsaWJyYXJ5LiAgVGhpcyBhZGRyZXNzZXMgYnVnIzM1NzEuCgoyMDA2LTEwLTA1IDE1OjA4ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogQ1lHV0lOLmNtYWtlLCBXaW5kb3dzLWdjYy5jbWFrZTogRU5IOiBFbmFibGluZwoJICBsaW5rLXR5cGUgc2VsZWN0aW9uIGZsYWdzIG9uIEN5Z3dpbiwgTVNZUywgYW5kIE1pbkdXLiAgVGhpcwoJICBhZGRyZXNzZXMgYnVnIzE2NDQgb24gdGhlc2UgcGxhdGZvcm1zLgoKMjAwNi0xMC0wNSAxNTowOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IEZpeCBsaW5rCgkgIGZsYWdzIG9uIGN5Z3dpbiBzaGFyZWQgbGlicmFyaWVzLiAgVGhpcyByZXF1aXJlcyB0aGF0IHRoZSBzaGFyZWQKCSAgbGlicmFyeSBwcmVmaXggYmUgc3VwcG9ydGVkIGluIHRoZSBsaW5rIGxpYnJhcnkgcmVnZXguCgoyMDA2LTEwLTA1IDE0OjUxICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEJVRzogSGFjayB0byBtYWtlIGVjaG8gY29tbWFuZAoJICB3b3JrIHByb3Blcmx5IGluIG1pbmd3MzItbWFrZS4KCjIwMDYtMTAtMDUgMTM6NDMgIGtpbmcKCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEJVRzogUm9idXN0bHkgaGFuZGxlIGZhaWx1cmUKCSAgb2YgRm9ybWF0TWVzc2FnZS4gIFNlZSBidWcjMzQ3MS4KCjIwMDYtMTAtMDUgMTI6MDQgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9MaWJyYXJ5L3Rlc3RTeXN0ZW1EaXIuaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L3Rlc3RTeXN0ZW1EaXIuaCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdFN5c3RlbURpci5oLAoJICBDb21wbGV4L0xpYnJhcnkvU3lzdGVtRGlyL3Rlc3RTeXN0ZW1EaXIuaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L1N5c3RlbURpci90ZXN0U3lzdGVtRGlyLmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvU3lzdGVtRGlyL3Rlc3RTeXN0ZW1EaXIuaDogQlVHOiBUZXN0CgkgIC1pc3lzdGVtIHdpdGhvdXQgYWZmZWN0aW5nIG90aGVyIHRlc3RzLiAgTWFkZSBzZXBhcmF0ZQoJICBMaWJyYXJ5L1N5c3RlbURpciBmb3IgdGhpcyBwdXJwb3NlLgoKMjAwNi0xMC0wNSAxMTozMSAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIE9QVElPTkFMIG9wdGlvbgoJICB0byBJTlNUQUxMIGNvbW1hbmQgdG8gYWxsb3cgaW5zdGFsbGF0aW9uIG9mIGZpbGVzIGlmIHRoZXkgZXhpc3QKCSAgd2hpbGUgaWdub3JpbmcgdGhlbSBvdGhlcndpc2UuICBUaGlzIGFkZHJlc3NlcyBidWcjMjkyMi4KCjIwMDYtMTAtMDUgMTE6MzAgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IEJVRzogUnVuCgkgIHRlc3RTeXN0ZW1EaXIgdGVzdCBvbmx5IGlmIC1pc3lzdGVtIGZsYWcgaXMgYXZhaWxhYmxlLgoKMjAwNi0xMC0wNSAxMDo1NSAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IEVOSDogQWRkaW5nIGxpbmtzIHRvIHdlYiByZXNvdXJjZXMKCSAgYW5kIEZBUSB0byBTRUUgQUxTTyBzZWN0aW9uLglUaGlzIGFkZHJlc3NlcyBidWcgIzM3NTcuCgoyMDA2LTEwLTA1IDA5OjMzICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1FOWC5jbWFrZTogQlVHOiBRTlggR0NDIGRvZXMgbm90IGhhdmUgLWlzeXN0ZW0uCgoyMDA2LTEwLTA1IDA4OjU1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZSwgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvdGVzdFN5c3RlbURpci5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS90ZXN0U3lzdGVtRGlyLmgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL3Rlc3RTeXN0ZW1EaXIuY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdFN5c3RlbURpci5oLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS90ZXN0U3lzdGVtRGlyLmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0U3lzdGVtRGlyLmg6IEVOSDogQWRkaW5nCgkgIFNZU1RFTSBvcHRpb24gdG8gSU5DTFVERV9ESVJFQ1RPUklFUyBjb21tYW5kLiAgVGhpcyBhZGRyZXNzZXMgYnVnCgkgICMzNDYyLgoKMjAwNi0xMC0wNSAwMzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEwLTA0IDE5OjIxICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IEJVRzogVGhlIC0taGVscCBvcHRpb24gc2hvdWxkCgkgIGxpc3QgZ2VuZXJhdG9ycy4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyAjMjQ5NC4KCjIwMDYtMTAtMDQgMTg6NTcgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkaW5nIHRlc3Qgb2Ygc3BlY2lhbAoJICBjaGFyYWN0ZXJzIGluIGN1c3RvbSBjb21tYW5kIGFuZCBjdXN0b20gdGFyZ2V0IGNvbW1lbnRzLgoKMjAwNi0xMC0wNCAxODo1MiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBCVUc6IEZpeGVkIGRpc3BsYXkgb2YgY3VzdG9tCgkgIGNvbW1hbmQgY29tbWVudHMgd2l0aCBxdW90ZXMsIGRvbGxhcnMsIGFuZCBvdGhlciBzcGVjaWFsCgkgIGNoYXJhY3RlcnMgaW4gdGhlbS4KCjIwMDYtMTAtMDQgMTg6NTIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbS5jLCBTeXN0ZW0uaC5pbjogRU5IOiBBZGRpbmcKCSAgU2hlbGxfRmxhZ19FY2hvV2luZG93cyBvcHRpb24gdG8gc2V0dXAgZXNjYXBlcyBmb3IgYXJndW1lbnRzIHRvCgkgIHRoZSBuYXRpdmUgZWNobyBjb21tYW5kIGluIGEgc2hlbGwuICBUaGlzIHNwZWNpYWwgY2FzZSBpcyBuZWVkZWQKCSAgdG8gYXZvaWQgYWRkaW5nIHF1b3RlcyB3aGVuIHBhc3NpbmcgdGV4dCB0byBlY2hvIGluIGEgbmF0aXZlCgkgIHdpbmRvd3Mgc2hlbGwgd2hpY2ggZG9lcyBubyBjb21tYW5kIGxpbmUgcGFyc2luZyBhdCBhbGwuCgoyMDA2LTEwLTA0IDE4OjEwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEVOSDoKCSAgQWRkZWQgQ09NTUVOVCBvcHRpb24gdG8gQUREX0NVU1RPTV9UQVJHRVQuICBUaGlzIGFkZHJlc3NlcwoJICBidWcjMzQ2MS4KCjIwMDYtMTAtMDQgMTg6MDkgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmg6IEJVRzogQ09NTUVOVCB3YXMgbWlzc2luZyBmcm9tCgkgIGRvY3MuCgoyMDA2LTEwLTA0IDE3OjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgUHJvY2Vzc1VOSVguYywKCSAga3dzeXNQbGF0Zm9ybVRlc3RzQy5jOiBFTkg6IEFkZGluZyB0ZXN0cyBLV1NZU19DX0hBU19QVFJESUZGX1QKCSAgYW5kIEtXU1lTX0NfSEFTX1NTSVpFX1QgdG8gaGVscCBQcm9jZXNzVU5JWC5jIGJ1aWxkIGV2ZXJ5d2hlcmUKCSAgd2l0aG91dCB3YXJuaW5ncy4KCjIwMDYtMTAtMDQgMTc6MjQgIGtpbmcKCgkqIGJvb3RzdHJhcDogRU5IOiBSZW5hbWVkIGt3c3lzUGxhdGZvcm1DeHhUZXN0cyB0bwoJICBrd3N5c1BsYXRmb3JtVGVzdHMgYW5kIGdlbmVyYWxpemVkIGl0IGZvciBtdWx0aXBsZSBsYW5ndWFnZSB0ZXN0cwoJICAoQyBhbmQgQ1hYKS4KCjIwMDYtMTAtMDQgMTc6MDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtVGVzdHMuY21ha2U6IEJVRzogTmFtZSBvZiBDIHRlc3QgZmlsZQoJICBlbmRzIGluIC5jIG5vdCAuY3h4LgoKMjAwNi0xMC0wNCAxNjo1NiAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jbWFrZSwKCSAga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eCwga3dzeXNQbGF0Zm9ybVRlc3RzLmNtYWtlLAoJICBrd3N5c1BsYXRmb3JtVGVzdHNDLmMsIGt3c3lzUGxhdGZvcm1UZXN0c0NYWC5jeHg6IEVOSDogUmVuYW1lZAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMgdG8ga3dzeXNQbGF0Zm9ybVRlc3RzIGFuZCBnZW5lcmFsaXplZCBpdAoJICBmb3IgbXVsdGlwbGUgbGFuZ3VhZ2UgdGVzdHMgKEMgYW5kIENYWCkuCgoyMDA2LTEwLTA0IDE2OjMxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlOiBFTkg6IHJlbW92ZSBwYXRocyB0aGF0IGNtYWtlIGFscmVhZHkKCSAgbG9va3MgYXQKCjIwMDYtMTAtMDQgMTU6NTQgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFJ1YnkuY21ha2U6IEVOSDogYXBwbHkgcGF0Y2ggc28gdGhhdCB0aGUgY29uZmlnCgkgIHZhbHVlcyBmcm9tIHJ1YnkgYXJlIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBhZGRpdGlvbmFsIGxvY2F0aW9ucwoJICAoc2VlICMzMjk3KQoKCSAgQWxleAoKMjAwNi0xMC0wNCAxNToyNCAga2luZwoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLCBTb3VyY2UvY21DdXN0b21Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5oLCBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IEFkZGVkIEFQUEVORCBvcHRpb24gdG8gQUREX0NVU1RPTV9DT01NQU5EIHRvIGFsbG93IGV4dHJhCgkgIGRlcGVuZGVuY2llcyB0byBiZSBjb25uZWN0ZWQgbGF0ZXIuICBUaGlzIGlzIHVzZWZ1bCB0byBjcmVhdGUgb25lCgkgIHJ1bGUgYW5kIHRoZW4gaGF2ZSBhIG1hY3JvIGFkZCB0aGluZ3MgdG8gaXQgbGF0ZXIuICBUaGlzCgkgIGFkZHJlc3NlcyBidWcjMjE1MS4KCjIwMDYtMTAtMDQgMTQ6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci55LAoJICBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBCVUc6IERvCgkgIG5vdCByZXBsYWNlIEBWQVJAIHN5bnRheCBpbiBsaXN0IGZpbGVzLiAgVGhpcyBhZGRyZXNzZXMgYnVnCgkgICMyNzIyLgoKMjAwNi0xMC0wNCAxNDowMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGZhdCBmaWxlCgkgIHN5c3RlbXMgYW5kIHZzOCAjMjYxNwoKMjAwNi0xMC0wNCAxNDowMCAga2luZwoKCSogTW9kdWxlcy9Vc2VRdDQuY21ha2U6IEJVRzogUGF0Y2ggZnJvbSBDbGludG9uIHRvIHJlc3RvcmUgcHJvcGVyCgkgIFFUM19TVVBQT1JUIG1hY3JvIGRlZmluaXRpb24uCgoyMDA2LTEwLTA0IDEzOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIzMzNjIKCSAgeG1sIGVzY2FwZXMgb24gLUQgc3R1ZmYgZm9yIHZpc3VhbCBzdHVkaW8KCjIwMDYtMTAtMDQgMTM6MDUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyMgMzMxMyBzYW1lIGFkdmFuY2VkIGZvcgoJICB0Y2wgd2luIGFuZCB1bml4CgoyMDA2LTEwLTA0IDExOjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIyAzNjY0CgoyMDA2LTEwLTA0IDExOjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnICMzNTE3IHNlZyBmYXVsdAoJICB3aXRoIGVuYWJsZSBsYW5ndWFnZSBiZWZvcmUgcHJvamVjdCBjb21tYW5kCgoyMDA2LTEwLTA0IDExOjA0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIzM1MjAgLSBiZXR0ZXIgZmluZAoJICBkb3h5Z2VuCgoyMDA2LTEwLTA0IDEwOjU0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyMgMzU4NCBtaXNzaW5nCgkgIFNPTkFNRSBmb3IgZm9ydHJhbiBvbiBkYXJ3aW4KCjIwMDYtMTAtMDQgMTA6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBtYWtlIHFtYWtlLXF0NCByZWFsbHkgd29yayBpZiBxbWFrZQoJICBpcyBxdDMgYWxzbyBmaXggaW5kZW50IGluIGZpbGUsIGZvciBkaWZmIHVzZSBjdnMgZGlmZiAtdwoKMjAwNi0xMC0wNCAwNToyMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTEwLTAzIDE3OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBkYXNoYmFvcmQgZXJyb3IgZG8gbm90CgkgIGV4Y2x1ZGUgcm9vdCBwcm9qZWN0IGZyb20gaXRzZWxmLgoKMjAwNi0xMC0wMyAxNjoxOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kR0xVVC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyMzNjQ2IEdMVVQgbm90IEdsdXQgZm9yCgkgIGZyYW1ld29yayBuYW1lCgoyMDA2LTEwLTAzIDE2OjEyICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogZml4IGZvciBidWcjMzY1MiB1c2UgbGluawoJICAvbGliIGluc3RlYWQgb2YgbGliCgoyMDA2LTEwLTAzIDE1OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIGNvcmUgYW5kIG5vdCBhbGwgb2YgY2FyYm9uCgoyMDA2LTEwLTAzIDE1OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIzM3MTQKCSAgZXhlY2x1ZGVfZnJvbV9hbGwgbm90IHdvcmtpbmcgb24gdnMKCjIwMDYtMTAtMDMgMTQ6NDAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUVuZE1hY3JvQ29tbWFuZC5jeHgsCgkgIGNtRW5kTWFjcm9Db21tYW5kLmg6IEVOSDogYWRkZWQgZW5kbWFjcm8gY29tbWFuZAoKMjAwNi0xMC0wMyAxNDozOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIzM3MjAKCjIwMDYtMTAtMDMgMTQ6MDMgIGFsZXgKCgkqIE1vZHVsZXMvS0RFM01hY3Jvcy5jbWFrZTogQlVHOiBmaXggIzM4MjcsIHRoZSBuYW1lIG9mIHRoZSB2YXIgaXMKCSAgX3RtcF9GSUxFIGluc3RlYWQgb2YgdG1wX0ZJTEUsIHNvIHRoZSBkY29wIHN0dWZmIHNob3VsZCB3b3JrIG5vdwoKCSAgQWxleAoKMjAwNi0xMC0wMyAxNDowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyMzNzM4CgoyMDA2LTEwLTAzIDEzOjQ4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRTREwuY21ha2U6IEJVRzogZml4IGZvciAzNzY1CgoyMDA2LTEwLTAzIDEzOjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5oOiBCVUc6IGZpeCBmb3IgYnVnIzM3NzUKCjIwMDYtMTAtMDMgMTM6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogY2hlY2sgZm9yIGVtcHR5IHBhdGgKCjIwMDYtMTAtMDMgMTM6MzUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IGRpc2FibGUgc3RhdGljIHNoYXJlZCBzdHVmZiBvbgoJICBBSVgsIHNlZSBjb21tZW50CgoyMDA2LTEwLTAzIDEzOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGJ1ZyMzNzg5IGFkZCBtc3lzCgkgIGZvciB0aGUgbXN5cyBnZW5lcmF0b3IKCjIwMDYtMTAtMDMgMTM6MjIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogRU5IOiBtYWtlIHN1cmUgZmlsZSBpcyBjbG9zZWQKCjIwMDYtMTAtMDMgMTI6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogRU5IOiBhbGxvdyBlZGl0IG9mIGZpbGUgdGV4dAoJICBkaXJlY3RseQoKMjAwNi0xMC0wMyAxMjowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eDogRU5IOiBmaXggY29tcGlsZSBlcnJvcgoKMjAwNi0xMC0wMyAxMTo1NSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBkbyBub3QgYWxsb3cgbnVsbCBwb2ludGVyIGFjY2VzcwoKMjAwNi0xMC0wMyAxMTo1NSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogRU5IOiBtYWtlIHN1cmUgdmFsdWUgaXMgc2V0IGJlZm9yZQoJICB1c2luZyBpdAoKMjAwNi0xMC0wMyAxMDo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eDogQlVHOiBmaXggZm9yIHNlZyBmYXVsdCBidWcgIzM4MTUKCjIwMDYtMTAtMDMgMTA6MjYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBCVUc6IE5lZWQgdG8gaW5pdGlhbGl6ZSB0byBub3QgdXNlCgkgIG5hdGl2ZSBwaXBlcy4KCjIwMDYtMTAtMDMgMDk6MTIgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcKCSAgd2FybmluZy4KCjIwMDYtMTAtMDMgMDk6MTAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmM6IEVOSDoKCSAgQWRkZWQgUHJvY2Vzc19TZXRQaXBlTmF0aXZlIG1ldGhvZCB0byBhbGxvdyB1c2VyIGNvZGUgdG8gb3ZlcnJpZGUKCSAgdGhlIHBpcGVzIGNvbm5lY3RlZCB0byB0aGUgY2hpbGQgcGlwZWxpbmUuCgoyMDA2LTEwLTAzIDA1OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTAtMDIgMTI6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwgU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmVuYW1lZAoJICBOT1RfSU5fQUxMIHRvIEVYQ0xVREVfRlJPTV9BTEwuCgoyMDA2LTEwLTAyIDExOjEzICBraW5nCgoJKiBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsIFNvdXJjZS9jbUFkZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9ub3RJbkFsbEV4ZS5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L25vdEluQWxsTGliLmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvbm90SW5BbGxFeGUuY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9ub3RJbkFsbExpYi5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvbm90SW5BbGxFeGUuY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L25vdEluQWxsTGliLmN4eDogRU5IOiBBZGRlZAoJICBOT1RfSU5fQUxMIG9wdGlvbiBmb3IgQUREX0xJQlJBUlkgYW5kIEFERF9FWEVDVVRBQkxFIHRvIGF2b2lkCgkgIGJ1aWxkaW5nIHRoZSB0YXJnZXRzIGJ5IGRlZmF1bHQuCgoyMDA2LTEwLTAyIDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IEVOSDogUGF0Y2ggZnJvbSBBbGV4IHRvCgkgIGhlbHAgd2l0aCBLRGV2ZWxvcCBjb2RlIGNvbXBsZXRpb24gaW4gZ2VuZXJhdGVkIHByb2plY3RzLgoKMjAwNi0xMC0wMiAxMDoyMCAga2luZwoKCSogU291cmNlLzogY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IEFkZGVkIFNZTUJPTElDIHNvdXJjZQoJICBmaWxlIHByb3BlcnR5IHRvIG1hcmsgY3VzdG9tIGNvbW1hbmQgb3V0cHV0cyB0aGF0IGFyZSBuZXZlcgoJICBhY3R1YWxseSBjcmVhdGVkIG9uIGRpc2suICBUaGlzIGlzIHVzZWQgYnkgdGhlIFdhdGNvbSBXTWFrZQoJICBnZW5lcmF0b3IgdG8gZ2VuZXJhdGUgdGhlIC5TWU1CT0xJQyBtYXJrIG9uIHRoZSBmaWxlcyBpbiB0aGUgbWFrZQoJICBzeXN0ZW0uCgoyMDA2LTEwLTAyIDEwOjE3ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsIGNoZWNrX2NvbW1hbmRfbGluZS5jLmluOgoJICBDT01QOiBGaXggY29tbWFuZCBsaW5lIGNoZWNrIHRlc3QgaW1wbGVtZW50YXRpb24gZm9yIFdhdGNvbS4KCjIwMDYtMTAtMDIgMDk6MDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBmaXggZnJvbSBjbGludG9uCgoyMDA2LTEwLTAyIDA0OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMTAtMDEgMDQ6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0zMCAwMzo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTI5IDE2OjQyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oLCBjbVRhcmdldC5jeHg6IEVOSDogQWRkZWQKCSAgc3VwcG9ydCBmb3IgZ2V0dGluZyBhIHRhcmdldCdzIGxvY2F0aW9uIG9uIGEgcGVyLWNvbmZpZ3VyYXRpb24KCSAgYmFzaXMgKGV4LiBERUJVR19MT0NBVElPTikuICBUaGlzIGRvZXMgbm90IGZpeCBidXQgaGVscHMgd2l0aAoJICBidWcjMzI1MC4KCjIwMDYtMDktMjkgMTY6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggZmFpbGluZyB0ZXN0cyBvbiBtYWMKCjIwMDYtMDktMjkgMDk6MTEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4ZWQgaW5jbHVzaW9uIG9mCgkgIHByb2dyZXNzLm1ha2UgZnJvbSBzdWJkaXJlY3RvcnkgbWFrZWZpbGVzLgoKMjAwNi0wOS0yOSAwMzo1MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTI4IDE3OjM1ICBraW5nCgoJKiBTb3VyY2UvY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eDogQlVHOiBNb3ZlIGhhY2sgZnJvbQoJICBvbGQgY21NYWtlZmlsZTo6QWRkVXRpbGl0eVRhcmdldCB0byB0aGlzIGNvbW1hbmQgZGlyZWN0bHkuICBUaGVyZQoJICByZWFsbHkgbmVlZHMgdG8gYmUgYSBiZXR0ZXIgd2F5IHRvIHJlcHJlc2VudCBleHRlcm5hbCBwcm9qZWN0CgkgIHRhcmdldHMuCgoyMDA2LTA5LTI4IDE3OjIxICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IE1vdmVkCgkgIHByb2dyZXNzLm1ha2UgZmlsZSBpbnRvIENNYWtlRmlsZXMgc3ViZGlyZWN0b3J5IHRvIGtlZXAgdGhpbmdzCgkgIGNsZWFuLgoKMjAwNi0wOS0yOCAxNjo0MCAga2luZwoKCSogU291cmNlLzogY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsIGNtQ3VzdG9tQ29tbWFuZC5jeHgsCgkgIGNtQ3VzdG9tQ29tbWFuZC5oLCBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaDogQlVHOgoJICBGaXgvY2xlYW51cCBjdXN0b20gY29tbWFuZHMgYW5kIGN1c3RvbSB0YXJnZXRzLiAgTWFrZSBlbXB0eQoJICBjb21tZW50IHN0cmluZ3Mgd29yay4gIEZpeCBaRVJPX0NIRUNLIHRhcmdldCBhbHdheXMgb3V0IG9mIGRhdGUKCSAgZm9yIGRlYnVnZ2luZy4gIEZpeCBNYWtlZmlsZSBkcml2aW5nIG9mIGN1c3RvbSBjb21tYW5kcyBpbiBhCgkgIGN1c3RvbSB0YXJnZXQuICBGaXggZGVwZW5kZW5jaWVzIG9uIGN1c3RvbSB0YXJnZXRzIG5vdCBpbiBBTEwgaW4KCSAgVlMgZ2VuZXJhdG9ycy4KCjIwMDYtMDktMjggMTM6NTUgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsIGNtQ1BsdWdpbkFQSS5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eDogRU5IOiBDbGVhbmVkIHVwIHNpZ25hdHVyZQoJICBvZiBjbU1ha2VmaWxlOjpBZGRVdGlsaXR5Q29tbWFuZC4gIEl0IGlzIG5vdCB2YWxpZCB0byBoYXZlIGFuCgkgIG91dHB1dCBmcm9tIGEgdXRpbGl0eSBydWxlIGFuZCBubyBjYWxscyB0byB0aGUgbWV0aG9kIGFza2VkIGZvcgoJICBhbiBvdXRwdXQgYW55d2F5LiAgVGhlIGFyZ3VtZW50IGhhcyBiZWVuIHJlbW92ZWQuCgoyMDA2LTA5LTI4IDExOjQyICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZTogQlVHOiBIZWFkZXIgYW5kIGxpYnJhcnkgc2VhcmNoCgkgIHBhdGggb3JkZXJpbmcgc2hvdWxkIGJlIGNvbnNpc3RlbnQuCgoyMDA2LTA5LTI4IDExOjMwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC9jaGVja19jb21tYW5kX2xpbmUuYy5pbjogRU5IOiBBZGRlZCBWRVJCQVRJTQoJICBvcHRpb24gdG8gQUREX0NVU1RPTV9DT01NQU5EIGFuZCBBRERfQ1VTVE9NX1RBUkdFVCBjb21tYW5kcy4KCSAgVGhpcyBvcHRpb24gZW5hYmxlcyBmdWxsIGVzY2FwaW5nIG9mIGN1c3RvbSBjb21tYW5kIGFyZ3VtZW50cyBvbgoJICBhbGwgcGxhdGZvcm1zLiAgU2VlIGJ1ZyMzNzg2LgoKMjAwNi0wOS0yOCAxMDo0MSAga2luZwoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZS1lbmFibGluZyAuaQoJICBydWxlIHRlc3Qgb24gTVNZUyBub3cgdGhhdCBpdCB3b3Jrcy4KCjIwMDYtMDktMjggMTA6MzcgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBNU1lTCgkgIG1ha2VmaWxlIHNoZWxsIG5lZWRzIHBvc2l4IHBhdGhzIHRvIGV4ZWN1dGFibGVzIGluIHNvbWUgY2FzZXMgYW5kCgkgIGl0IGRvZXMgbm90IGh1cnQgdG8gZG8gaXQgYWx3YXlzLgoKMjAwNi0wOS0yOCAwOTo0OSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IERvIG5vdCBmaWx0ZXIgc3lzdGVtCgkgIGRpcmVjdG9yaWVzIGZvciBpbmNsdWRlIGZpbGUgZGVwZW5kZW5jaWVzLgoKMjAwNi0wOS0yOCAwMjozMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTI3IDE2OjIwICBraW5nCgoJKiBTb3VyY2UvY21DdXN0b21Db21tYW5kLmN4eDogQ09NUDogRml4IGluaXQgb3JkZXIuCgoyMDA2LTA5LTI3IDE2OjE0ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4OiBCVUc6IE9uZSBzaG91bGQgYmUgYWJsZQoJICB0byBlc2NhcGUgdGhlIEAgc3ltYm9sLgoKMjAwNi0wOS0yNyAxNToyNiAga2luZwoKCSogU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5jeHg6IEJVRzogVGhlIGNvcHkgY29uc3RydWN0b3Igc2hvdWxkIGNvcHkKCSAgdGhlIGVzY2FwZSBzZXR0aW5ncy4KCjIwMDYtMDktMjcgMTQ6MjcgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmUtZW5hYmxlCgkgIHByZXByb2Nlc3NpbmcgdGFyZ2V0IHRlc3QgYnV0IHNwZWNpZmljYWxseSBkaXNhYmxlIGl0IG9uIGJyb2tlbgoJICBwbGF0Zm9ybXMuCgoyMDA2LTA5LTI3IDEzOjQzICBraW5nCgoJKiBTb3VyY2UvOiBjbUN1c3RvbUNvbW1hbmQuY3h4LCBjbUN1c3RvbUNvbW1hbmQuaCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LCBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmgsCgkgIGt3c3lzL1Byb2Nlc3NXaW4zMi5jLCBrd3N5cy9TeXN0ZW0uYywga3dzeXMvU3lzdGVtLmguaW46IEVOSDoKCSAgUmUtaW1wbGVtZW50ZWQgY29tbWFuZCBsaW5lIGFyZ3VtZW50IHNoZWxsIHF1b3RpbmcgdG8gc3VwcG9ydAoJICBzZXZlcmFsIHBsYXRmb3JtcyB3aXRoIG9uZSBjb2RlIGJhc2UuCgoyMDA2LTA5LTI3IDEzOjMwICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZFB5dGhvbkludGVycC5jbWFrZSwgRmluZFB5dGhvbkxpYnMuY21ha2U6CgkgIEVOSDogYXBwbHkgcGF0Y2ggZnJvbSBEaXJrIE11ZWxsZXIgdG8gc3VwcG9ydCBQeXRob24gMi41CgoJICBBbGV4CgoyMDA2LTA5LTI3IDEyOjU1ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzQy5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lLXRvby1sb25nLgoKMjAwNi0wOS0yNiAwODowNCAgYW5keQoKCSogU291cmNlL2NtRGVwZW5kc0MuY3h4OiBCVUc6IEhhbmRsZSBoZWFkZXIgZmlsZSBkZXBlbmRlbmNpZXMgZm9yCgkgIG9iamVjdGl2ZSBDCgoyMDA2LTA5LTI2IDAyOjMwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMjUgMTg6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmN4eDogQ09NUDogUmVtb3ZlZCB5eXVucHV0IGZ1bmN0aW9uCgkgIHRvIGF2b2lkIHdhcm5pbmcuCgoyMDA2LTA5LTI1IDE0OjAxICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHg6IENPTVA6IFJlc3RvcmluZyBwcmV2aW91cyBBSVgKCSAgZml4LgoKMjAwNi0wOS0yNSAxMDoyMiAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OgoJICBCVUc6IERpc2FibGUgbmV3IHNoZWxsIGVzY2FwZSBjb2RlIHVudGlsIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkKCSAgY2FuIGJlIGVzdGFibGlzaGVkIGluIHRoZSBuZXcgaW1wbGVtZW50YXRpb24uCgoyMDA2LTA5LTI1IDEwOjA1ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmwsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBCVUc6IENoYXJhY3RlciArIHNob3VsZCBiZQoJICB2YWxpZCBpbiBhIHZhcmlhYmxlIG5hbWUuCgoyMDA2LTA5LTI1IDAyOjM5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMjQgMTA6MjggIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEJVRzogRGlzYWJsZSBuZXcKCSAgdGVzdF9wcmVwcm9jZXNzIHRhcmdldCB1bnRpbCBpdCBpcyBmaXhlZCBvbiBPU1ggdW5pdmVyc2FsCgkgIGJpbmFyaWVzIGFuZCBtaW5ndy4KCjIwMDYtMDktMjQgMDI6NDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0yMyAxNzowOSAga2luZwoKCSogRG9jcy86IGNtYWtlLWluZGVudC52aW0sIGNtYWtlLXN5bnRheC52aW06IEVOSDogQWRkaW5nIGVsc2VpZiB0bwoJICBWSU0gc3ludGF4IGFuZCBpbmRlbnRhdGlvbiBmaWxlcy4gIFNlZSBidWcgIzM3ODEuCgoyMDA2LTA5LTIzIDE2OjU1ICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9MaWJyYXJ5L3Rlc3RfcHJlcHJvY2Vzcy5jbWFrZSwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdF9wcmVwcm9jZXNzLmNtYWtlLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L3Rlc3RfcHJlcHJvY2Vzcy5jbWFrZTogRU5IOiBBZGRpbmcKCSAgdGVzdCBmb3IgcnVubmluZyBwcmVwcm9jZXNzb3IgcnVsZXMuCgoyMDA2LTA5LTIzIDE2OjMyICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogQWRkaW5nIGVsc2VpZiBpbmRlbnRhdGlvbi4gIFNlZQoJICBidWcjMzc4MS4KCjIwMDYtMDktMjMgMTQ6NDEgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmN4eDogQlVHOiBBdHRlbXB0IHRvIGZpeCB3aW56aXAKCSAgcHJvYmxlbXMKCjIwMDYtMDktMjMgMDI6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0yMiAxMTo0OSAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGFkZGVkIHRlc3QgZm9yCgkgIGVsc2VpZgoKMjAwNi0wOS0yMiAxMToyMyAgbWFydGluawoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtRWxzZUlmQ29tbWFuZC5jeHgsIGNtRWxzZUlmQ29tbWFuZC5oLAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmg6IEVOSDogYWRkZWQgZWxzZWlmCgoyMDA2LTA5LTIyIDA4OjQyICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBDT01QOiBOZWVkIEFOU0kgQyBmbGFncyB0bwoJICBidWlsZCBjaGVja19jb21tYW5kX2xpbmUuYy4KCjIwMDYtMDktMjIgMDI6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0yMSAxNzoyMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogRml4IHNoYWRvd2VkCgkgIGxvY2FsIHZhcmlhYmxlIGNyZWF0ZWQgYnkgcHJldmlvdXMgY21ha2VfZm9yY2UgY2hhbmdlLgoKMjAwNi0wOS0yMSAxNjoxMSAga2luZwoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC86IENNYWtlTGlzdHMudHh0LCBjaGVja19jb21tYW5kX2xpbmUuYy5pbjoKCSAgRU5IOiBBZGRpbmcgdGVzdCBmb3Igbm9uLXRyaXZpYWwgY3VzdG9tIGNvbW1hbmQgbGluZSBhcmd1bWVudHMuCgkgIFRoaXMgaXMgZm9yIGJ1ZyMzNzg2LgoKMjAwNi0wOS0yMSAxNjoxMCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaDogQlVHOgoJICBFbmFibGVkIHVzZSBvZiBFc2NhcGVGb3JTaGVsbCB0byBwcm9wZXJseSBlc2NhcGUgY3VzdG9tIGNvbW1hbmQKCSAgbGluZXMuICBUaGlzIGFkZHJlc3NlcyBidWcjMzc4NiBmb3IgWGNvZGUuCgoyMDA2LTA5LTIxIDE1OjM1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byBlc2NhcGUgc3BhY2VzIGluIGN1c3RvbQoJICBjb21tYW5kIGxpbmUgYXJndW1lbnRzLgoKMjAwNi0wOS0yMSAxNTozMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IERvIG5vdCBlc2NhcGUgcGFyZW5zIGJlY2F1c2Ugd2UKCSAgbmVlZCB0byBiZSBhYmxlIHRvIHJlZmVyZW5jZSBtYWtlIHZhcmlhYmxlcyBpbiB0aGUgc2NyaXB0cy4KCjIwMDYtMDktMjEgMTU6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LCBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmg6CgkgIEJVRzogQ2VudHJhbGl6ZWQgZ2VuZXJhdGlvbiBvZiBjb21tYW5kIGxpbmUgYXJndW1lbnRzIGluIGVzY2FwZWQKCSAgZm9ybS4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMzNzg2IGZvciBzZXZlcmFsIHBsYXRmb3Jtcy4KCjIwMDYtMDktMjEgMTU6MDkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmN4eDogRU5IOiBIYW5kbGUgemlwIChjb21tYW5kCgkgIGxpbmUgd2FzIHRvbyBsb25nKQoKMjAwNi0wOS0yMSAxNDo0NiAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbS5jOiBCVUc6IFdpbmRvd3NfU2hlbGxBcmd1bWVudDogbmVlZCB0byBlc2NhcGUKCSAgaWYgdGhlIHN0cmluZyBjb250YWlucyBvbmUgb2YgYSBzZXQgb2Ygc3BlY2lhbCBjaGFyYWN0ZXJzIGFzIHdlbGwKCSAgYXMgc3BhY2VzLiAgTW92ZWQgdGVzdCBmb3IgbmVlZGluZyBlc2NhcGVzIHRvIGEgc2VwYXJhdGUgbWV0aG9kCgkgIGt3c3lzU3lzdGVtV2luZG93c1NoZWxsQXJndW1lbnROZWVkc0VzY2FwZS4KCjIwMDYtMDktMjEgMTM6NDcgIGtpbmcKCgkqIGJvb3RzdHJhcDogRU5IOiBBZGRlZCBTeXN0ZW0gY29tcG9uZW50IG9mIGt3c3lzLgoKMjAwNi0wOS0yMSAxMTo0OSAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIFByb2Nlc3NXaW4zMi5jLCBTeXN0ZW0uYywKCSAgU3lzdGVtLmguaW46IEVOSDogQWRkaW5nICdTeXN0ZW0nIGNvbXBvbmVudCBvZiBDIHNvdXJjZXMgdG8gaG9sZAoJICBzeXN0ZW0gdG9vbHMgd3JpdHRlbiBpbiBDLiAgTW92ZWQgd2luZG93cyBzaGVsbCBjb21tYW5kIGxpbmUKCSAgYXJndW1lbnQgZXNjYXBpbmcgY29kZSB0byBrd3N5c1N5c3RlbV9XaW5kb3dzX1NoZWxsQXJndW1lbnQgYW5kCgkgIGt3c3lzU3lzdGVtX1dpbmRvd3NfU2hlbGxBcmd1bWVudFNpemUuCgoyMDA2LTA5LTIxIDEwOjA0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU2hhcmVkRm9yd2FyZC5oLmluOiBFTkg6IEFkZGVkCgkgIEtXU1lTX1NIQVJFRF9GT1JXQVJEX09QVElPTl9DT01NQU5EIG9wdGlvbiB0byBhbGxvdyB1c2VycyB0bwoJICByZXBsYWNlIHRoZSBjb21tYW5kIGV4ZWN1dGVkLiAgRXh0ZW5kZWQgZG9jdW1lbnRhdGlvbiBhdCB0b3Agb2YKCSAgZmlsZS4KCjIwMDYtMDktMjEgMDI6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0yMCAxMjoxMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBjbWFrZV9mb3JjZSBuZWVkcwoJICB0byBiZSB3cml0dGVuIGludG8gYnVpbGQubWFrZSBhcyB3ZWxsIGFzIE1ha2VmaWxlLgoKMjAwNi0wOS0yMCAwMjoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTE5IDE2OjExICBhbGV4CgoJKiBNb2R1bGVzLzogQ09QWUlORy1DTUFLRS1TQ1JJUFRTLCBGaW5kQVNQRUxMLmNtYWtlLAoJICBGaW5kQlppcDIuY21ha2UsIEZpbmRIU1BFTEwuY21ha2UsIEZpbmRKYXNwZXIuY21ha2UsCgkgIEZpbmRMaWJYbWwyLmNtYWtlLCBGaW5kTGliWHNsdC5jbWFrZSwgRmluZE9wZW5TU0wuY21ha2U6IEVOSDogYWRkCgkgIGNtYWtlIG1vZHVsZXMgZm9yIHNvbWUgY29tbW9uIGxpYnJhcmllczogYXNwZWxsLCBoc3BlbGwsIGJ6aXAyLAoJICBqYXNwZXIgKGpwZWcyMDAwKSwgbGlieG1sMiBhbmQgbGlieHNsdCBhbmQgb3BlbnNzbCBhbmQgdGhlCgkgIGFjY29tcGFueWluZyBsaWNlbnNlIChCU0QpCgoJICBBbGV4CgoyMDA2LTA5LTE5IDAyOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMTggMTc6NTUgIGFsZXgKCgkqIE1vZHVsZXMvOiBDaGVja0NDb21waWxlckZsYWcuY21ha2UsIENoZWNrQ1hYQ29tcGlsZXJGbGFnLmNtYWtlOgoJICBFTkg6IHR3byBtYWNyb3MgdG8gY2hlY2sgd2hldGhlciB0aGUgQy9DWFggY29tcGlsZXIgc3VwcG9ydHMgYQoJICBnaXZlbiBmbGFnOiBDSEVDS19DWFhfQ09NUElMRVJfRkxBRygiLVdhbGwiCgkgIENPTVBJTEVSX1NVUFBPUlRTX1dBTEwpCgoJICBBbGV4CgoyMDA2LTA5LTE4IDA5OjQwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1FOWC5jbWFrZTogRU5IOiBFbmFibGluZyBsaW5rIHR5cGUgc2VsZWN0aW9uCgkgIGZsYWdzIGZvciB0aGlzIHBsYXRmb3JtLiAgU2VlIGJ1ZyMxNjQ0IGZvciBkZXRhaWxzLgoKMjAwNi0wOS0xOCAwMjozNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTE3IDA5OjI0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMTYgMTE6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNDLmN4eDogU1RZTEU6IEZpeGVkIGxpbmUtdG9vLWxvbmcuCgoyMDA2LTA5LTE2IDExOjUyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IGxvb2sgZm9yIGxpbmtlciBsYW5ndWFnZQoJICB1bmxlc3MgaXQgaXMgbmVlZGVkLgoKMjAwNi0wOS0xNiAxMTo0NyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZTogQlVHOiBOZWVkIC1XbCwgdG8gcGFzcyBsaW5rZXIgZmxhZ3MKCSAgd2hlbiB1c2luZyBnY2Mgb24gU3VuLgoKMjAwNi0wOS0xNiAwOToxOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTE1IDE1OjE5ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZTogRU5IOiBFbmFibGluZyBsaW5rIHR5cGUgc2VsZWN0aW9uCgkgIGZsYWdzIGZvciB0aGlzIHBsYXRmb3JtLiAgU2VlIGJ1ZyMxNjQ0IGZvciBkZXRhaWxzLgoKMjAwNi0wOS0xNSAxNToxOCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZTogU1RZTEU6IFVwZGF0ZWQgY29tbWVudCBhYm91dCBsaW5rCgkgIHR5cGUgZmxhZ3MgYW5kIHBhc3NpbmcgZGlyZWN0bHkgdG8gbGQuCgoyMDA2LTA5LTE1IDE1OjE0ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlOiBCVUc6IEZpeAoJICBDTUFLRV9TSEFSRURfKl9MSU5LXypfQ19GTEFHUyB0byBwYXNzIGxpbmsgdHlwZSBzZWxlY3Rpb24gZmxhZ3MKCSAgZGlyZWN0bHkgdG8gdGhlIGxpbmtlci4KCjIwMDYtMDktMTUgMTU6MDUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2U6IEVOSDogRW5hYmxpbmcgbGluayB0eXBlIHNlbGVjdGlvbgoJICBmbGFncyBmb3IgdGhpcyBwbGF0Zm9ybS4gIFNlZSBidWcjMTY0NCBmb3IgZGV0YWlscy4KCjIwMDYtMDktMTUgMTQ6NTggIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBGcmVlQlNELmNtYWtlLCBIUC1VWC5jbWFrZTogRU5IOiBFbmFibGluZyBsaW5rCgkgIHR5cGUgc2VsZWN0aW9uIGZsYWdzIGZvciB0aGlzIHBsYXRmb3JtLiAgU2VlIGJ1ZyMxNjQ0IGZvcgoJICBkZXRhaWxzLgoKMjAwNi0wOS0xNSAxNDozMSAga2luZwoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9MaWJyYXJ5L1Rlc3RMaW5rLmMsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L1Rlc3RMaW5rLmMsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvVGVzdExpbmsuYzogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBsaW5raW5nIHRvIGEgc3RhdGljIGxpYnJhcnkgdGhhdCBpcyBuZXh0IHRvIGEgc2hhcmVkIGxpYnJhcnkuCgkgIFNlZSBidWcjMTY0NCBmb3IgcmVsYXRlZCBjaGFuZ2VzLgoKMjAwNi0wOS0xNSAxNDowOCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsCgkgIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL1N5c3RlbUluZm9ybWF0aW9uLmluOiBFTkg6IEFkZGluZyBzdXBwb3J0CgkgIHRvIGxpbmsgc3BlY2lmaWNhbGx5IHRvIGFuIGFyY2hpdmUgb3IgYSBzaGFyZWQgbGlicmFyeSBiYXNlZCBvbgoJICB0aGUgZmlsZSBuYW1lIHNwZWNpZmllZC4gIFRoaXMgZml4ZXMgdGhlIHByb2JsZW0gb2YgaGF2aW5nIC1sZm9vCgkgIGxpbmtpbmcgdG8gbGliZm9vLnNvIGV2ZW4gd2hlbiBpdCBjYW1lIGZyb20gbGliZm9vLmEgYmVpbmcKCSAgc3BlY2lmaWVkLgoKMjAwNi0wOS0xNSAxNDowMiAga2luZwoKCSogTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZTogU1RZTEU6IFJlbW92aW5nIHVudXNlZAoJICBwbGF0Zm9ybSB2YXJpYWJsZSBDTUFLRV9TSEFSRURfTU9EVUxFX0xJTktfRm9ydHJhbl9GTEFHUy4gIEl0CgkgIGRvZXMgbm90IG1ha2Ugc2Vuc2UgYmVjYXVzZSBub3RoaW5nIGxpbmtzIHRvIHNoYXJlZCBtb2R1bGVzLgoKMjAwNi0wOS0xNSAwOToyMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTE0IDA5OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMTMgMTI6NDMgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmg6IEVOSDogUGF0Y2ggZnJvbSBBbGV4IHRvCgkgIHNwZWVkIGRlcGVuZGVuY3kgc2Nhbm5pbmcgYXBwcm94aW1hdGVseSAyeC4KCjIwMDYtMDktMTMgMTE6MzkgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGRpYWdub3NpcyBvZiBiYWQKCSAgdGFyZ2V0IG5hbWVzLgoKMjAwNi0wOS0xMyAxMToyMiAga2luZwoKCSogTW9kdWxlcy9GaW5kd3hXaWRnZXRzLmNtYWtlOiBCVUc6IFBhdGNoIGZyb20gUGV0ZXIgVmlzc2VyIHRvIHJ1bgoJICB3eC1jb25maWcgZnJvbSBhbiBNU1lTIHByb21wdC4KCjIwMDYtMDktMTMgMDg6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0xMiAxMDoyMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IHB1dCB0aGUgaWYgaW4gdGhlCgkgIHJpZ2h0IHBsYWNlCgoyMDA2LTA5LTEyIDEwOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBCVUc6ICM3MzkKCSAgYWdhaW4sIG1ha2VmaWxlcyBkaWQgbm90IGRlcGVuZCBvbiBleHRlcm5hbCBmdWxsIHBhdGggbGlicmFyaWVzCgoyMDA2LTA5LTEyIDA5OjE4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMTAgMjI6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0wOSAyMTowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTA4IDIyOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMDggMTA6NDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6CgkgIEJVRzogRml4ZWQgb3JkZXJpbmcgb2YgY29kZSBnZW5lcmF0ZWQgaW4gTWFrZWZpbGUgYW5kIGJ1aWxkLm1ha2UKCSAgZmlsZXMgdG8gbWFrZSBzdXJlIC5TVUZGSVhFUyBydWxlIGNvbWVzIGFzIGVhcmx5IGFzIHBvc3NpYmxlLgoJICBBbHNvIGNsZWFuZWQgdXAgZG9jdW1lbnRhdGlvbiBpbiBnZW5lcmF0ZWQgZmlsZXMuCgoyMDA2LTA5LTA4IDEwOjM5ICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lLXRvby1sb25nLgoKMjAwNi0wOS0wOCAwOTo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTA3IDEwOjA1ICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHg6IEVOSDogUGF0Y2ggZnJvbSBUb25pIFRpbW9uZW4gdG8KCSAgYWxsb3cgY3Jvc3MtY29tcGlsaW5nIG9mIERMTHMuCgoyMDA2LTA5LTA3IDA4OjU4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMDYgMDk6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0wNiAwODozMSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdDQuY21ha2UsIFVzZVF0NC5jbWFrZTogRU5IOiBmaXhlcyBmcm9tIENsaW50b24gdG8KCSAgYWxsb3cgcXQgdG8gd29yayB3aXRoIHN0YXRpYyBsaWJzCgoyMDA2LTA5LTA1IDA5OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMDQgMDk6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOS0wMyAwOTowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA5LTAyIDEwOjUxICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IFBhdGNoIGZyb20gQWxleCB0bwoJICBmaXggbmFtZSBvZiBpbmNsdWRlY2FjaGUgZmlsZXMgdG8gbm90IGxvb2sgbGlrZSBzb3VyY2UgZmlsZXMuCgoyMDA2LTA5LTAyIDA5OjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDktMDEgMDk6NTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtQnVpbGROYW1lQ29tbWFuZC5oLCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwKCSAgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtUmVtb3ZlQ29tbWFuZC5oLCBjbVN1YmRpckNvbW1hbmQuaCwgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwgY21WVEtXcmFwVGNsQ29tbWFuZC5oOiBTVFlMRTogRml4ZWQKCSAgbGluZS10b28tbG9uZyB3YXJuaW5nLgoKMjAwNi0wOS0wMSAwODo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTMxIDE2OjQwICBraW5nCgoJKiBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmN4eDogQlVHOiBGaXggYXV0b21hdGljCgkgIGNvbXB1dGF0aW9uIG9mIGJpbmFyeSBwYXRoIHRvIHdvcmsgZm9yIHN1YmRpcmVjdG9yaWVzIG9mIG91dCBvZgoJICBzb3VyY2UgZGlyZWN0b3JpZXMuICBUaGlzIGFkZHJlc3NlcyBidWcjMzU5Mi4KCjIwMDYtMDgtMzEgMTQ6MDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6CgkgIEVOSDogTWFrZSBzdXJlIGFsbCBjdXN0b20gY29tbWFuZCBvdXRwdXRzIGFyZSB1cCB0byBkYXRlIGJlZm9yZQoJICBzY2FubmluZyBkZXBlbmRlbmNpZXMuICBUaGlzIGF2b2lkcyB0aGUgbmVlZCB0byBwYXNzIGEgbGlzdCBvZgoJICBnZW5lcmF0ZWQgZmlsZXMgdG8gdGhlIGRlcGVuZGVuY3kgc2Nhbm5pbmcgY29kZSBhbmQgdG8gcmVzY2FuCgkgIGFmdGVyIHRoZSBmaWxlcyBoYXZlIGJlZW4gZ2VuZXJhdGVkLglDdXJyZW50bHkgdGhlcmUgaXMgbm8KCSAgbm90aW9uIG9mIGltcGxpY2l0IGRlcGVuZGVuY2llcyBvZiB0aGUgY3VzdG9tIGNvbW1hbmRzIHRoZW1zZWx2ZXMKCSAgc28gdGhpcyBkZXNpZ24gaXMgc2FmZS4gIFdlIG9ubHkgbmVlZCB0byBtYWtlIHN1cmUgaW1wbGljaXQKCSAgZGVwZW5kZW5jaWVzIGFyZSB1cCB0byBkYXRlIGJlZm9yZSB0aGUgbWFrZSBwcm9jZXNzIGZvciB0aGUKCSAgL2J1aWxkIHBhcnQgb2YgYSB0YXJnZXQgaXMgZXhlY3V0ZWQgYmVjYXVzZSBvbmx5IHRoaXMgcHJvY2VzcwoJICBsb2FkcyB0aGVtLiAgVGhpcyBpcyBhIHN0ZXAgdG93YXJkcyBmaXhpbmcgYnVnIzM2NTguCgoyMDA2LTA4LTMxIDEzOjIwICBraW5nCgoJKiBTb3VyY2UvOiBjbUJ1aWxkTmFtZUNvbW1hbmQuaCwgY21Db21tYW5kLmgsCgkgIGNtRXhlY1Byb2dyYW1Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwKCSAgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtUmVtb3ZlQ29tbWFuZC5oLCBjbVN1YmRpckNvbW1hbmQuaCwgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwgY21WVEtXcmFwVGNsQ29tbWFuZC5oOiBFTkg6IFBhdGNoIGZyb20KCSAgQWxleCB0byBhZGQgSXNEaXNjb3VyYWdlZCBtZXRob2QgZm9yIGZ1dHVyZSB1c2UgaW4gZ2VuZXJhdGluZwoJICBzZXBhcmF0ZSBkb2N1bWVudGF0aW9uIGZvciBvbGQgY29tbWFuZHMuICBBbHNvIG1vZGlmaWVkCgkgIGRvY3VtZW50YXRpb24gb2YgTUFLRV9ESVJFQ1RPUlkgYW5kIFJFTU9WRSBjb21tYW5kcyB0byBpbmRpY2F0ZQoJICB0aGV5IHNob3VsZCBub3QgYmUgdXNlZC4KCjIwMDYtMDgtMzEgMTI6MDQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogRU5IOiBmaXggcG9zc2libGUKCSAgZnJlZSBtZW1vcnkgdXNlCgoyMDA2LTA4LTMxIDEwOjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtSW5zdGFsbENvbW1hbmQuY3h4LCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHg6IEVOSDoKCSAgRG8gbm90IGdlbmVyYXRlIGluc3RhbGwgdGFyZ2V0IHVubGVzcyBzb21lIElOU1RBTEwgb3IgSU5TVEFMTF8qCgkgIGNvbW1hbmRzIGhhdmUgYmVlbiB1c2VkLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzI4MjcuCgoyMDA2LTA4LTMxIDEwOjQ2ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lUkNDb21waWxlci5jbWFrZTogQlVHOiBOZWVkIHRvIHNlYXJjaCBmb3IKCSAgcmMgYnkgZGVmYXVsdCwgbm90IGMrKyBjb21waWxlcnMuCgoyMDA2LTA4LTMxIDA5OjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMzAgMTM6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2U6IENPTVA6CgkgIEZpeCB0cnktY29tcGlsZSB0byBmYWlsIHByb3Blcmx5IG9uIEhQLgoKMjAwNi0wOC0zMCAxMzo1MSAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQzLmNtYWtlOiBFTkg6IGF1dG9tYXRpY2FsbHkgZmluZCBRdDMgb24gU1VTRSwgcGF0Y2gKCSAgZnJvbSBEaXJrIE11ZWxsZXIgYW5kIFN0ZXBoYW4gS3Vsb3cKCgkgIEFsZXgKCjIwMDYtMDgtMzAgMTM6NDcgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFBORy5jbWFrZTogRU5IOiBhbHNvIGxvb2sgaW4KCSAgL3Vzci9sb2NhbC9pbmNsdWRlL2xpYnBuZyAoT3BlbkJTRCkgRU5IOiBlcnJvciBvdXQgd2l0aAoJICBGQVRBTF9FUlJPUiBpZiBSRVFVSVJFRCB3YXMgZ2l2ZW4gYnV0IHBuZyBoYXNuJ3QgYmVlbiBmb3VuZAoKCSAgQWxleAoKMjAwNi0wOC0zMCAxMDowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTI5IDE2OjA4ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IEVOSDogUGF0Y2ggZnJvbSBBbGV4IHRvIGZpeAoJICBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHdoZW4gcnVubmluZyBleGVjdXRhYmxlcyBidWlsdCBpbgoJICBLRGV2ZWxvcC4KCjIwMDYtMDgtMjkgMTU6MDggIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmg6IEVOSDogQWRkIHN1cHBvcnQgdG8gSU5TVEFMTChESVJFQ1RPUlkpCgkgIHRvIGluc3RhbGwgYW4gZW1wdHkgZGlyZWN0b3J5LiAgVGhpcyBhZGRyZXNzZXMgYnVnIzM1NzIuCgoyMDA2LTA4LTI5IDE1OjA0ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBzdXBwb3J0IHRvCgkgIElOU1RBTEwoRElSRUNUT1JZKSB0byBpbnN0YWxsIGFuIGVtcHR5IGRpcmVjdG9yeS4gIFRoaXMgYWRkcmVzc2VzCgkgIGJ1ZyMzNTcyLgoKMjAwNi0wOC0yOSAxMzo1OSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlOiBCVUc6IFNlYXJjaCBmb3IgdGhlIGNvbXBpbGVyIG9ubHkKCSAgb25jZSBhbmQgc3RvcmUgYSBmdWxsIHBhdGggdG8gaXQgaW4gdGhlIGNhY2hlLiAgVGhpcyBhdm9pZHMKCSAgcHJvYmxlbXMgd2l0aCB0aGUgY2FzZSBvZiBsb2NhdGlvbnMgaW4gdGhlIFBBVEggdmFyaWFibGUgb24KCSAgV2luZG93cyB0aGF0IGNoYW5nZSB0aGUgY29tcGlsZXIgbmFtZSB3aGVuIENNYWtlIGlzIHJlLXJ1bi4KCSAgQ01ha2VGaWxlcy9DTWFrZSpDb21waWxlci5jbWFrZSBmaWxlcyBzaG91bGQgaG9sZCB0aGUgZnVsbCBwYXRoCgkgIHRvIHRoZSBjb21waWxlciBhbHdheXMuCgoyMDA2LTA4LTI5IDEyOjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBiYWQgcHJvZ3Jlc3MgZm9yIG5hbWVkIHRvcAoJICBsZXZlbCB0YXJnZXRzCgoyMDA2LTA4LTI5IDEwOjI3ICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IENPTVA6IEZpeCB3YXJuaW5ncyBpbiBzeXN0ZW0gaGVhZGVycwoJICBvbiBWUzYuCgoyMDA2LTA4LTI5IDEwOjAzICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IEFkZGluZyBpbnN0YWxsL2xvY2FsCgkgIGdsb2JhbCB0YXJnZXQgZm9yIE1ha2VmaWxlIGdlbmVyYXRvcnMuICBUaGlzIHJ1bnMgaW5zdGFsbGF0aW9uCgkgIG9ubHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFuZCBub3Qgc3ViZGlyZWN0b3JpZXMuCgoyMDA2LTA4LTI5IDA5OjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMjggMDg6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0yNyAxNTo1MiAgYWxleAoKCSogTW9kdWxlcy86IEtERTNNYWNyb3MuY21ha2UsIGtkZTN1aWMuY21ha2U6IEJVRzogZml4ICMzMzI0OgoJICBLREUzTWFjcm9zLmNtYWtlIGRpZG4ndCBmaW5kIFF0IGRlc2lnbmVyIHBsdWdpbnMgd2hlbiBydW5uaW5nIHVpYwoJICAodGhlIGtkZSBwbHVnaW4gZGlyIHdhc24ndCB1c2VkKQoKCSAgQWxleAoKMjAwNi0wOC0yNyAxNTozNCAgYWxleAoKCSogTW9kdWxlcy9GaW5kS0RFMy5jbWFrZTogU1RZTEU6IHJlbW92ZSB1bm5lY2Vzc2FyeQoJICAvdXNyL2xvY2FsL2luY2x1ZGUgc2VhcmNoIHBhdGgKCgkgIEFsZXgKCjIwMDYtMDgtMjcgMTM6NTkgIGFsZXgKCgkqIE1vZHVsZXMvRmluZFF0My5jbWFrZTogQlVHOiAjMzUxNDogcXQtbXQzLmxpYiB3YXNuJ3QgZm91bmQgb24KCSAgd2luZG93cyBTVFlMRTogcmVtb3ZlIHNvbWUgKG5vdykgdW5uZWNlc3NhcnkgL3Vzci9saWIsCgkgIC91c3IvbG9jYWwvbGliLCAvdXNyL2luY2x1ZGUgYW5kIC91c3IvbG9jYWwvaW5jbHVkZSBzZWFyY2ggcGF0aHMKCgkgIEFsZXgKCjIwMDYtMDgtMjcgMTM6MjMgIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogQ09NUDogVXNlIG5ldyBLV1N5cyBJT1N0cmVhbQoJICBjb21wb25lbnQgdG8gaGVscCBwcmludCBsYXJnZSBmaWxlIHNpemUgaW50ZWdlciB0eXBlcyB0byBzdHJlYW1zLgoKMjAwNi0wOC0yNyAxMzoxNyAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIElPU3RyZWFtLmN4eCwgSU9TdHJlYW0uaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBFTkg6IEFkZGluZyBLV1N5cyBjb21wb25lbnQgSU9TdHJlYW0KCSAgdG8gcHJvdmlkZSBoZWxwIHdpdGggYnJva2VuIEMrKyBzdHJlYW0gbGlicmFyaWVzLgoKMjAwNi0wOC0yNyAxMzoxNSAga2luZwoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIENQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDogQ09NUDoKCSAgTmVlZCB0byB1c2UgY21zeXNfc3RsIHdoZW4gaW4gQ01ha2UgY29kZSwgbm90IGt3c3lzX3N0bC4KCjIwMDYtMDgtMjcgMTI6MzUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9HbG9iLmh4eC5pbjogQlVHOiBOZWVkIHRvIHVuZGVmaW5lIHRlbXBvcmFyeSBtYWNyb3MKCSAgZGVmaW5lZCBhdCB0b3Agb2YgZmlsZS4KCjIwMDYtMDgtMjcgMTE6MjUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2U6IEJVRzogV2hlbiBhIHRyeS1ydW4KCSAgZmFpbHMgdG8gY29tcGlsZSBjcmVhdGUgdGhlIHJ1biByZXN1bHQgY2FjaGUgZW50cnkgd2l0aCBhIGJvZ3VzCgkgIG5vbi16ZXJvIHJldHVybiB2YWx1ZSB0byBhdm9pZCBydW5uaW5nIHRoZSB0ZXN0IGFnYWluLgoKMjAwNi0wOC0yNyAxMToxOSAgYWxleAoKCSogTW9kdWxlcy86IENoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBDaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlOiBTVFlMRTogZml4ICMzNTE5IChpbmNvcnJlY3QKCSAgY29tbWVudCkKCgkgIEFsZXgKCjIwMDYtMDgtMjcgMTE6MTQgIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTMuY21ha2U6IEJVRzogZml4IGNvbW1lbnQgKCMzNTExKQoKCSAgQWxleAoKMjAwNi0wOC0yNyAxMDoxOSAgYWxleAoKCSogTW9kdWxlcy9LREUzTWFjcm9zLmNtYWtlOiBCVUc6IGFwcGx5IHBhdGNoIGZyb20gYmVybyAoIzM1MTgpIHNvCgkgIHRoYXQgREVTVERJUiBpcyBzdXBwb3J0ZWQgZm9yIGluc3RhbGxpbmcgaWNvbnMKCgkgIEFsZXgKCjIwMDYtMDgtMjcgMDk6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0yNyAwOTozNCAgYWxleAoKCSogTW9kdWxlcy9GaW5kS0RFMy5jbWFrZTogRU5IOiAjMzIyNTogZmlyc3QgY2hlY2sgdGhlIHNwZWNpYWwKCSAgcGF0aHMsIHRoZSB0aGUgZGVmYXVsdCBwYXRoLCBhbHNvIGZvciBzZWFyY2hpbmcga2RlLWNvbmZpZwoKCSAgQWxleAoKMjAwNi0wOC0yNiAxNjoxNCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBHZXRMaW5lRnJvbVN0cmVhbSBzaG91bGQKCSAgcmVtb3ZlIGNhcnJpYWdlIHJldHVybiBjaGFyYWN0ZXJzIHRvIG1ha2Ugc3VyZSBuZXdsaW5lcyBkbyBub3QKCSAgZ2V0IGR1cGxpY2F0ZXMuCgoyMDA2LTA4LTI2IDE1OjE3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlOiBCVUc6IEZpeCBsb2NhdGlvbiBvZgoJICBDTWFrZU91dHB1dC5sb2cgYW5kIENNYWtlRXJyb3IubG9nLgoKMjAwNi0wOC0yNiAxNDo0MyAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IFJldmVydGluZyBwcmV2aW91cyBjaGFuZ2UgdW50aWwgaXQgaXMKCSAgZnVydGhlciB0ZXN0ZWQuCgoyMDA2LTA4LTI2IDE0OjM3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogQ29uZmlndXJlRmlsZSBtdXN0IHJlYWQvd3JpdGUgaW4KCSAgYmluYXJ5IG1vZGUgdG8gYXZvaWQgd2luZG93cyBuZXdsaW5lIHRyb3VibGUuICBUaGUgcHJvYmxlbQoJICBvY2N1cnJlZCB3aGVuIGNvbmZpZ3VyaW5nIGEgZmlsZSBpbiBjeWd3aW4gZnJvbSBhIHBhdGggc3RhcnRpbmcKCSAgd2l0aCBhIHdpbmRvd3MgZHJpdmUgbGV0dGVyIGluc3RlYWQgb2YgYSBwb3NpeCBwYXRoLgoKMjAwNi0wOC0yNiAxMDoyOCAga2luZwoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUxpc3RDb21tYW5kLmN4eDogU1RZTEU6IEZpeGVkCgkgIGxpbmUtdG9vLWxvbmcuCgoyMDA2LTA4LTI2IDEwOjIyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBTVFlMRTogRml4ZWQKCSAgbGluZS10b28tbG9uZy4KCjIwMDYtMDgtMjYgMDk6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0yNSAyMjo1NiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBCVUc6IEZpeCBmb3IgVlMuTkVUIDIwMDMgU1AxIHRvCgkgIG1ha2Ugc3VyZSBnbG9iYWwgdGFyZ2V0IGFuZCB1dGlsaXR5IHRhcmdldCBydWxlcyBydW4gZXZlcnkgdGltZS4KCjIwMDYtMDgtMjUgMjI6NTYgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogTWFrZSBzdXJlIHRhcmdldHMgb2YgdHlwZQoJICBHTE9CQUxfVEFSR0VUIGhhdmUgYSBtYWtlZmlsZSBzZXQuCgoyMDA2LTA4LTI1IDIxOjIxICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgYm9vdHN0cmFwOiBFTkg6IENoYW5naW5nIGRlZmF1bHQgZGF0YSBhbmQgZG9jCgkgIGRpcmVjdG9yaWVzIHRvIHNoYXJlL2NtYWtlLVYudiBhbmQgZG9jL2NtYWtlLVYudiBpbnN0ZWFkIG9mCgkgIHNoYXJlL0NNYWtlIGFuZCBkb2MvQ01ha2UgZm9yIGNvbnNpc3RlbmN5IHdpdGggbWFueSBsaW51eAoJICBkaXN0cmlidXRpb24gY29udmVudGlvbnMuCgoyMDA2LTA4LTI1IDIwOjUyICBraW5nCgoJKiBib290c3RyYXA6IENPTVA6IEZpeCBmb3IgbmV3IGt3c3lzIENvbmZpZ3VyZS5oLmluLgoKMjAwNi0wOC0yNSAxNjozMiAga2luZwoKCSogU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluOiBDT01QOiBEaXNhYmxlIF9GSUxFX09GRlNFVF9CSVRTCgkgIGNoZWNrIHVudGlsIHN5cy90eXBlcy5oIGNoZWNrIGlzIGVuYWJsZWQuCgoyMDA2LTA4LTI1IDE2OjMxICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LCBTb3VyY2UvY21JZkNvbW1hbmQuaCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogUGF0Y2ggZnJvbSBBbGV4IGZvcgoJICBhZGRpbmcgSUYoRklMRV9JU19ORVdFUikuICBJIGFsc28gYWRkZWQgYSB0ZXN0LgoKMjAwNi0wOC0yNSAxNjowNyAga2luZwoKCSogU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluOiBFTkg6IFNlcGFyYXRlIHRoZSBub3Rpb24gb2YgYQoJICByZXF1ZXN0IGZvciBMRlMgYW5kIGl0cyBhdmFpbGFiaWxpdHkuICBBbGxvdyB1c2VyIGNvZGUgdG8gYmxvY2sKCSAgZGVmaW5pdGlvbnMgb2YgTEZTIG1hY3Jvcy4gIEFkZGVkIGZyYW1ld29yayB0byBnaXZlIGVycm9yIGlmCgkgIHN5cy90eXBlcy5oIGlzIGluY2x1ZGVkIGJlZm9yZSB0aGlzIGhlYWRlciB3aGVuIExGUyBpcyByZXF1ZXN0ZWQKCSAgKGN1cnJlbnRseSBkaXNhYmxlZCkuCgoyMDA2LTA4LTI1IDE2OjAwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29uZmlndXJlLmguaW4sCgkgIFJlcXVpcmVMYXJnZUZpbGVzU3VwcG9ydC5jeHgsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IEVOSDoKCSAgTW92ZWQgdGVzdCBmb3IgbGFyZ2UgZmlsZSBzdXBwb3J0IGludG8ga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eAoJICB3aXRoIG5hbWUgS1dTWVNfTEZTX1dPUktTLgoKMjAwNi0wOC0yNSAxNTo1MyAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IEVOSDoKCSAgU3dpdGNoaW5nIEtXU1lTX0NIQVJfSVNfU0lHTkVEIHRlc3QgdG8gdXNlCgkgIEtXU1lTX1BMQVRGT1JNX0NYWF9URVNUX1JVTiBtYWNyby4KCjIwMDYtMDgtMjUgMTU6NTAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2U6IEVOSDogQWRkZWQKCSAgS1dTWVNfUExBVEZPUk1fQ1hYX1RFU1RfUlVOIG1hY3JvLgoKMjAwNi0wOC0yNSAxMjoxMyAga2luZwoKCSogU291cmNlL2t3c3lzL0dsb2IuY3h4OiBFTkg6IEdsb2JiaW5nIHBhdHRlcm5zIHNob3VsZCBub3QgbWF0Y2ggYQoJICBzbGFzaCBpbnNpZGUgYSBmaWxlbmFtZSBjb21wb25lbnQuCgoyMDA2LTA4LTI1IDEyOjExICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogQXZvaWQgcHV0dGluZyBkb3VibGUtc2xhc2hlcyBpbgoJICBmcm9tRmlsZSBkdXJpbmcgaW5zdGFsbGF0aW9uLiAgQWxzbyBhZGRlZCByZWdleCBkZWJ1Z2dpbmcgY29weSBvZgoJICB0aGUgZXhwcmVzc2lvbiBpbiBzdHJpbmcgZm9ybS4KCjIwMDYtMDgtMjUgMDk6MTQgIGtpbmcKCgkqIE1vZHVsZXMvVXNlU1dJRy5jbWFrZTogRU5IOiBBZGRlZCBpbnRlcmZhY2UgdG8gYWRkIGV4dHJhCgkgIGRlcGVuZGVuY2llcy4KCjIwMDYtMDgtMjUgMDU6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0yNCAxNDo1OCAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRQYXJzZXIuY3h4LCBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci55OgoJICBDT01QOiBBZGRlZCBtaXNzaW5nIGluY2x1ZGUgZm9yIG1hbGxvYyBvbiBRTlguCgoyMDA2LTA4LTI0IDEwOjU3ICBhbmR5CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBbHdheXMgZG8gdGFyLlogc2luY2Ugd2UgZG8KCSAgaGF2ZSBjb21wcmVzcyBub3cgYnVpbHRpbgoKMjAwNi0wOC0yNCAwOTo0NyAga2luZwoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgY29kZSB0byByZW1vdmUgYW55IGJhZAoJICBpbnN0YWxsYXRpb25zIG9mIENWUyBkaXJlY3RvcmllcyBiZWZvcmUgcnVubmluZyB0aGUgdGVzdCBzbyB0aGF0CgkgIG9uZSBmYWlsdXJlIGRvZXMgbm90IG5lZWQgbWFudWFsIGFkanVzdG1lbnQgdG8gZ2V0IGl0IHRvIHBhc3MKCSAgYWdhaW4uCgoyMDA2LTA4LTI0IDA5OjM0ICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZExleGVyLmg6IENPTVA6IEFkZCBtaXNzaW5nIG1hbGxvYy5oIGluY2x1ZGUgZm9yCgkgIFFOWC4KCjIwMDYtMDgtMjQgMDk6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0yMyAxODoxMSAgYWxleAoKCSogTW9kdWxlcy9Vc2VFY29zLmNtYWtlOiBFTkg6IGFkZCBpMzg2IHRvb2xjaGFpbiBhbmQgc29tZSBtaW5vcgoJICBpbXByb3ZlbWVudCBvZiB0aGUgY29tbWVudHMKCjIwMDYtMDgtMjMgMTI6MDIgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuY3h4LCBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLnksIGNtRGVwZW5kc0phdmFMZXhlci5jeHgsCgkgIGNtRXhwckxleGVyLmN4eDogQ09NUDogQXR0ZW1wdCB0byBmaXggYWl4IGJ1aWxkCgoyMDA2LTA4LTIzIDEwOjIxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IEVOSDogZml4IGJhZCBlcnJvcgoJICByZXBvcnRpbmcgd2l0aCBub3QgZm91bmQgcGF0aHMKCjIwMDYtMDgtMjMgMTA6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogQ09NUDogQWRkIGxhcmdlIGZpbGVzIHN1cHBvcnQgdG8KCSAgQ01ha2UKCjIwMDYtMDgtMjMgMDk6NDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jOiBFTkg6IEFkZGVkICcyNTZjb2xvcicgdGVybWluYWwgbmFtZXMuCgkgIFBhdGNoIGFwcGxpZWQgZnJvbSBidWcjMzY1MS4KCjIwMDYtMDgtMjMgMDk6NDUgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBDZW50cmFsaXplZCBnZW5lcmF0aW9uIG9mCgkgIHRhcmdldHMgbGlzdGVkIGluIHRoZSBoZWxwIHRvIGJlIGRvbmUgYnkgdGhlIGNvZGUgdGhhdCBhY3R1YWxseQoJICB3cml0ZXMgdGhlIHRhcmdldHMuCgoyMDA2LTA4LTIzIDA5OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMjMgMDg6MDcgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQ09NUDogU3VwcG9ydCBjbWFrZSBvbGRlciB0aGFuIDIuNAoKMjAwNi0wOC0yMiAxODozMyAgYWxleAoKCSogTW9kdWxlcy9Vc2VFY29zLmNtYWtlOiBTVFlMRTogZG9uJ3QgdXNlIHRoZSBoYWNrIHRvIGNvcHkgYW5kCgkgIHJlbmFtZSB0aGUgY3JlYXRlZCBleGVjdXRhYmxlIHVuZGVyIGN5Z3dpbiBidXQgaW5zdGVhZCB1c2UgdGhlCgkgIFNVRkZJWCB0YXJnZXQgcHJvcGVydHkgKEknbGwgcHVibGlzaCBhIHNob3J0IGFydGljbGUgYWJvdXQKCSAgZWNvcytjbWFrZSBSU04pCgoJICBBbGV4CgoyMDA2LTA4LTIyIDE2OjA3ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogSGFuZGxlIG1vcmUgd2FybmluZ3MKCSAgcHJvcGVybHkgb24gQUlYCgoyMDA2LTA4LTIyIDE1OjUxICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ2hlY2tDWFhTb3VyY2VSdW5zLmNtYWtlOiBDT01QOiBPbiBzb21lIHByb2plY3QKCSAgY29uZmlndXJlIG1heSBub3QgY29weSByaWdodCBhd2F5CgoyMDA2LTA4LTIyIDE1OjQ2ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ2hlY2tDWFhTb3VyY2VSdW5zLmNtYWtlLAoJICBDTWFrZUVtcHR5SW5wdXRGaWxlLmluOiBDT01QOiBBZGQgbWlzc2luZyBjbWFrZSBmaWxlCgoyMDA2LTA4LTIyIDE1OjM0ICBhbmR5CgoJKiBib290c3RyYXAsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluLAoJICBTb3VyY2Uva3dzeXMvUmVxdWlyZUxhcmdlRmlsZXNTdXBwb3J0LmN4eDogRU5IOiBTdXBwb3J0IGxhcmdlCgkgIGZpbGUgc3lzdGVtcyBpbiBrd3N5cwoKMjAwNi0wOC0yMiAxMDozOCAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5oOiBCVUc6IEZpeGVkIG1hbgoJICBwYWdlIGZvcm1hdHRpbmcgZm9yIElOU1RBTEwgY29tbWFuZCBkb2N1bWVudGF0aW9uLiAgRml4ZWQKCSAgbGluZS10b28tbG9uZyB3YXJuaW5nLgoKMjAwNi0wOC0yMiAxMDoxNiAgYW5keQoKCSogU291cmNlLzogY21MaXN0Q29tbWFuZC5jeHgsIGNtTGlzdENvbW1hbmQuaDogQlVHOiBBZGQgbWlzc2luZyBBUEkKCjIwMDYtMDgtMjIgMDk6NTIgIGFuZHkKCgkqIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eDogQlVHOiBGaXggZXJyb3IgbWVzc2FnZXMgYW5kIGZpeCByZW1vdmUKCSAgaXRlbSB0byBhY3R1YWxseSByZW1vdmUgYWxsIGluc3RhbmNlcyBvZiB0aGUgaXRlbQoKMjAwNi0wOC0yMiAwOToyMCAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tUYXJDb21wcmVzc0dlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZQoJICB3YXJuaW5ncwoKMjAwNi0wOC0yMiAwODo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTIxIDIyOjM5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvR2xvYi5jeHg6IEJVRzogRml4ZWQgI2lmIHRlc3QgZm9yIGNhc2UtaW5zZW5zaXRpdmUKCSAgZ2xvYiBvbiBPU1guCgoyMDA2LTA4LTIxIDE3OjUyICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBjaGVjayBmb3IgYmFkCgkgIGluc3RhbGxhdGlvbiBvZiBhIENWUyBkaXJlY3RvcnkgdG8gdGVzdC4KCjIwMDYtMDgtMjEgMTc6NDcgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kLmN4eDogQlVHOiBEaXJlY3RvcnkKCSAgaW5zdGFsbGF0aW9uIHBhdHRlcm4gbWF0Y2hpbmcgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUgb24gc29tZQoJICBwbGF0Zm9ybXMuCgoyMDA2LTA4LTIxIDE3OjM3ICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBOZWVkIHRvIGV4ZWN1dGUKCSAgc2FtcGxlX3NjcmlwdC5iYXQgb24gd2luZG93cyBhbmQgc2FtcGxlX3NjcmlwdCBvdGhlcndpc2UuCgoyMDA2LTA4LTIxIDE3OjM0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpbGVJc0RpcmVjdG9yeSBzaG91bGQgd29yawoJICB3aGVuIHRoZSBuYW1lIGNvbnRhaW5zIGEgdHJhaWxpbmcgc2xhc2guCgoyMDA2LTA4LTIxIDE2OjU1ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbERpcmVjdG9yeUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxEaXJlY3RvcnlHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5zdGFsbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvc2NyaXB0cy9zYW1wbGVfc2NyaXB0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL3NjcmlwdHMvc2FtcGxlX3NjcmlwdC5iYXQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL3NjcmlwdHMvc2FtcGxlX3NjcmlwdCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL3NjcmlwdHMvc2FtcGxlX3NjcmlwdC5iYXQ6IEVOSDogSW1wbGVtZW50ZWQKCSAgSU5TVEFMTChESVJFQ1RPUlkpIGNvbW1hbmQgYW5kIGFkZGVkIGEgdGVzdC4JUmUtb3JnYW5pemVkCgkgIGNtRmlsZUNvbW1hbmQncyBpbXBsZW1lbnRhdGlvbiBvZiBGSUxFKElOU1RBTEwpIGEgYml0IHRvIGhlbHAKCSAgb3V0LglUaGlzIGFkZHJlc3NlcyBidWcjMTY5NCBhbmQgcGFydGlhbGx5IGFkZHJlc3NlcyBidWcjMjY5MS4KCjIwMDYtMDgtMjEgMTQ6MTcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IEdsb2IuY3h4LCBHbG9iLmh4eC5pbjogRU5IOiBFeHBvc2VkIHBhdHRlcm4tPnJlZ2V4CgkgIEFQSS4JQ2xlYW5lZCB1cCBhbmQgY29tbWVudGVkIGltcGxlbWVudGF0aW9uIG9mIHBhdHRlcm4tPnJlZ2V4CgkgIGNvbnZlcnNpb24uCgoyMDA2LTA4LTIxIDEyOjM3ICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmg6IEVOSDogSW1wbGVtZW50IFRhckNvbXByZXNzCgkgIGdlbmVyYXRvciB1c2luZyBjb21wcmVzcyBsaWJyYXJ5CgoyMDA2LTA4LTIxIDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogUkVOQU1FIG9wdGlvbiBzaG91bGQgYmUgYWxsb3dkIGZvcgoJICBJTlNUQUxMKFBST0dSQU1TKSB0b28uCgoyMDA2LTA4LTIxIDEwOjEwICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsIENoZWNrQ1NvdXJjZVJ1bnMuY21ha2UsCgkgIENoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsIENoZWNrQ1hYU291cmNlUnVucy5jbWFrZTogRU5IOiBmaXhzCgkgIGZvciBjaGVjayBjb21waWxlIHN0dWZmIGZyb20gT3N3YWxkIEIuCgoyMDA2LTA4LTIxIDA4OjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMjAgMDY6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0xOSAwNjo1MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTE4IDA4OjU3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgY21TdGFuZGFyZExleGVyLmg6IFNUWUxFOgoJICBGaXhlZCBsaW5lLXRvby1sb25nIHN0eWxlIGVycm9ycy4KCjIwMDYtMDgtMTggMDg6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0xNyAxNjo0MCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGZpeCBwcm9qZWN0IG5hbWVzIHRvIGJlIGNhc2UKCSAgc2Vuc2l0aXZlIGFuZCBjaGFuZ2UgbmFtZSB0byBsaW5rbGluZSBmcm9tIGlua2xpbmUKCjIwMDYtMDgtMTcgMTU6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogQlVHOiBCdW5kbGUgaW5zdGFsbGF0aW9uIG5lZWRzIGFsbCBmaWxlCgkgIHBlcm1pc3Npb25zIHRvIGJlIHByZXNlcnZlZCBmcm9tIHRoZSBidWlsZCB0cmVlLgoKMjAwNi0wOC0xNyAxNTowNiAga2luZwoKCSogU291cmNlL2NtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oOiBFTkg6IE1ha2luZyBkb2N1bWVudGF0aW9uIGV2ZW4KCSAgbGVzcyBhbWJpZ3VvdXMgc2luY2Ugc29tZSB1c2VycyBzdGlsbCB0aGluayB0aGlzIGNvbW1hbmQgY2FuCgkgIGdlbmVyYXRlIGEgZmlsZSB3aXRoIGRlcGVuZGVuY2llcy4KCjIwMDYtMDgtMTcgMTQ6NDggIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUZpbGVDb21tYW5kLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbENvbW1hbmQuaCwgY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRGlyZWN0b3J5R2VuZXJhdG9yLmgsIGNtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oOiBFTkg6IFN0YXJ0ZWQgaW1wbGVtZW50aW5nCgkgIElOU1RBTEwoRElSRUNUT1JZKSBjb21tYW5kIG1vZGUuICBUaGlzIGlzIG5vdCB5ZXQgZmluaXNoZWQgc28gaXQKCSAgaXMgdW5kb2N1bWVudGVkIGFuZCB0aGVyZSBpcyBubyB0ZXN0LiAgVGhlc2UgY2hhbmdlcyBhbHNvCgkgIHNlcGFyYXRlIHRoZSBub3Rpb25zIG9mIGZpbGUgYW5kIGRpcmVjdG9yeSBwZXJtaXNzaW9ucy4KCjIwMDYtMDgtMTcgMTI6MDcgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiBGaXggZGlyZWN0b3J5IGluc3RhbGxhdGlvbiB0bwoJICBwcm9wZXJseSBkZWFsIHdpdGggdHJhaWxpbmcgc2xhc2ggbmFtZXMgKHVzaW5nIHRoZSByc3luYwoJICBjb252ZW50aW9uIGZvciB3aGV0aGVyIHRoZSBsYXN0IGRpcmVjdG9yeSBuYW1lIGlzIGluY2x1ZGVkIGluCgkgIG5hbWluZyB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5KS4KCjIwMDYtMDgtMTcgMTI6MDQgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9jbWNvbXByZXNzL2NtY29tcHJlc3MuYzogRU5IOiByZW9yZGVyIGNvZGUgdG8gcmVtb3ZlCgkgIGZvcndhcmQgZGVjbGFyYXRpb25zCgoyMDA2LTA4LTE3IDEyOjAyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGRlZAoJICBKb2luUGF0aCBvdmVybG9hZCB0aGF0IGFjY2VwdHMgYW4gaXRlcmF0b3IgcmFuZ2UuCgoyMDA2LTA4LTE3IDA5OjQ1ICBraW5nCgoJKiBVdGlsaXRpZXMvY21jb21wcmVzcy9jbWNvbXByZXNzLmM6IENPTVA6IEZpeGVkIGxpbmthZ2Ugc3BlY2lmaWVyCgkgIGNvbnNpc3RlbmN5IHdhcm5pbmcuCgoyMDA2LTA4LTE3IDA5OjM2ICBraW5nCgoJKiBNb2R1bGVzL0luc3RhbGxSZXF1aXJlZFN5c3RlbUxpYnJhcmllcy5jbWFrZTogRU5IOiBJbXBsZW1lbnRlZAoJICBzdXBwb3J0IGZvciBpbnN0YWxsaW5nIFZDOCBydW50aW1lIGxpYnJhcmllcy4KCjIwMDYtMDgtMTcgMDk6MzUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL1JlbGVhc2UuY21ha2U6IEJVRzogUmVtb3ZlZCBjb2RlIHRoYXQgaXMgbm93IGluCgkgIE1vZHVsZXMvSW5zdGFsbFJlcXVpcmVkU3lzdGVtTGlicmFyaWVzLmNtYWtlLgoKMjAwNi0wOC0xNyAwNzoyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTE2IDE0OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaCwKCSAgY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmw6IEVOSDogcmV2ZXJ0IGNoYW5nZSBpbiBwYXJzZXIgYXMgaXQKCSAgc2VudCB0aGUgcGFyc2VyIGludG8gYW4gaW5maW5pdGUgbG9vcAoKMjAwNi0wOC0xNiAwODoxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTE1IDE1OjMzICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlVkNNYW5pZmVzdC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZGluZyBmbGFncyB0bwoJICBmb3JjZSBnZW5lcmF0aW9uIG9mIG1hbmlmZXN0IGZpbGVzIHdoZW4gYnVpbGRpbmcgd2l0aCBWQyA4LgoKMjAwNi0wOC0xNSAxNToyOCAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byBjbGVhbiBtYW5pZmVzdAoJICBmaWxlcyB0aGF0IG1heSBoYXZlIGJlZW4gZ2VuZXJhdGVkIGZvciAuZXhlIGFuZCAuZGxsIGZpbGVzLgoKMjAwNi0wOC0xNSAxMjowMCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBBZGRlZCBvYmplY3QgbGFuZ3VhZ2UgdG8gbGlzdCBvZiBvYmplY3QgZmlsZXMgaW4gYSBsb2NhbAoJICBnZW5lcmF0b3IncyBkaXJlY3RvcnkuICBGaXhlZCBnZW5lcmF0aW9uIG9mIHByZXByb2Nlc3NpbmcgYW5kCgkgIGFzc2VtYmx5IHJ1bGVzIHRvIGJlIGRvbmUgb25seSBmb3IgQyBhbmQgQysrIG9iamVjdHMuCgoyMDA2LTA4LTE1IDEwOjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaCwKCSAgY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmw6IEVOSDogY2hhbmdlIGNvbW1lbnQgZm9yIGZvcnRyYW4KCSAgZGVwZW5kIHBhcnNpbmcKCjIwMDYtMDgtMTUgMDc6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0xNCAxNzozMCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtY29tcHJlc3MvY21jb21wcmVzcy5jOiBFTkg6IHJlbW92ZSBjKysgY29tbWVudHMgZnJvbQoJICBjIGNvZGUKCjIwMDYtMDgtMTQgMTc6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBkbyBub3QgdXNlIE9CSlJPT1Qgb3IgeW91CgkgIGNhbiBnZXQgdHdvIGNvcGllcyBvZiBleGVjdXRhYmxlcwoKMjAwNi0wOC0xNCAxNDoxNiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBhZGQgbmV3bGluZSBmb3IKCSAgc29tZSB2ZXJzaW9ucyBvZiBtYWtlCgoyMDA2LTA4LTE0IDExOjMyICBhbmR5CgoJKiBVdGlsaXRpZXMvY21jb21wcmVzcy9jbWNvbXByZXNzLmM6IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwNi0wOC0xNCAxMDo1OSAgYW5keQoKCSogVXRpbGl0aWVzL2NtY29tcHJlc3MvY21jb21wcmVzcy5jOiBDT01QOiBSZW1vdmUgbW9yZSB3YXJuaW5ncwoKMjAwNi0wOC0xNCAxMDo1MSAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHg6CgkgIEVOSDogZml4IGZvciBubyBuZXdsaW5lIG9uIHNvbWUgbWFrZXMgIGZpeCBmb3IgY3Rlc3QgYW5kIHNvbWUKCSAgc3ltbGlua3MKCjIwMDYtMDgtMTQgMDk6NTggIGFuZHkKCgkqIFV0aWxpdGllcy9jbWNvbXByZXNzLzogY21jb21wcmVzcy5jLCBjbWNvbXByZXNzLmg6IENPTVA6IFJlbW92ZQoJICBzb21lIHdhcm5pbmdzIGFuZCBtYWtlIGxpYnJhcnkgcmVwb3J0IGFuIGVycm9yIGluc3RlYWQgb2YgY2FsbAoJICBleGl0CgoyMDA2LTA4LTE0IDA5OjUwICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHN0aWxsIGVzY2FwZSAoKSBidXQgZG8gbm90CgkgIGVzY2FwZQoKMjAwNi0wOC0xNCAwODo1NCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogU3RhcnQgYnVpbGRpbmcgY29tcHJlc3MgbGlicmFyeQoKMjAwNi0wOC0xNCAwNzo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTEzIDA3OjUyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMTIgMDc6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0xMSAxMDo1NCAgbWFydGluawoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBmaXggZm9yIEFkZEtlZXBQYXRoIG5vdAoJICBjYWxsaW5nIHJlYWxwYXRoCgoyMDA2LTA4LTExIDA5OjU2ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGVzY2FwZSAoIGFuZCApIGluIHVuaXggcGF0aHMKCjIwMDYtMDgtMTEgMDc6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0xMCAyMzoyMCAgaG9mZm1hbgoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogZml4IGVycm9yIGluIGlmIHN0YXRlbWVudAoKMjAwNi0wOC0xMCAxNToxNyAgZGF2aWQuY29sZQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBzdHJsZW4gbG9naWMgd2FzIGJhY2t3YXJkcwoJICByZXN1bHRpbmcgaW4gZnVuY3Rpb24gYm9keSBuZXZlciBhY3R1YWxseSBleGVjdXRpbmcuLi4gd2hlbgoJICBjYWxsZWQgd2l0aCB2YWxpZCBzdHJpbmdzLCBpdCB3YXMgYWx3YXlzIGRvaW5nIG5vdGhpbmcgYW5kCgkgIHJldHVybmluZyBmYWxzZS4uLiBub3cgaXQgd29ya3MgYXMgZXhwZWN0ZWQuCgoyMDA2LTA4LTEwIDExOjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBFTkg6IG9ubHkgY2hhbmdlIHRoZQoJICBjYWNoZSBpZiB0aGUgdmFsdWUgd2FzIHJlYWxseSBjaGFuZ2VkCgoyMDA2LTA4LTEwIDA5OjM4ICBob2ZmbWFuCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggZmFpbGluZyB0ZXN0cwoKMjAwNi0wOC0xMCAwODowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTA5IDEzOjU5ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZTogRU5IOiBFbmFibGluZyBwcmVwcm9jZXNzZWQgc291cmNlIGFuZAoJICBhc2VtYmx5IHNvdXJjZSBnZW5lcmF0aW9uIHJ1bGVzIG9uIEFJWCBjb21waWxlcnMuCgoyMDA2LTA4LTA5IDEzOjQ1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogRW5hYmxlZCBnZW5lcmF0aW9uIG9mCgkgIHByZXByb2Nlc3NlZCBhbmQgYXNzZW1ibHkgc291cmNlIHJ1bGVzIGZvciBNU1ZDIHdpdGggTk1ha2UuCgoyMDA2LTA4LTA5IDEzOjE0ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogSVJJWC5jbWFrZSwgSVJJWDY0LmNtYWtlOiBFTkg6IEVuYWJsaW5nCgkgIHByZXByb2Nlc3NlZCBzb3VyY2UgYW5kIGFzZW1ibHkgc291cmNlIGdlbmVyYXRpb24gcnVsZXMgb24gU0dJCgkgIE1JUFNwcm8gY29tcGlsZXJzLgoKMjAwNi0wOC0wOSAxMzoxMCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZTogRU5IOiBFbmFibGluZyBwcmVwcm9jZXNzZWQgc291cmNlCgkgIGFuZCBhc2VtYmx5IHNvdXJjZSBnZW5lcmF0aW9uIHJ1bGVzIG9uIEhQIGFDQyBhbmQgY2MuCgoyMDA2LTA4LTA5IDExOjQ4ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1N1bk9TLmNtYWtlOiBFTkg6IEVuYWJsaW5nIHByZXByb2Nlc3NlZCBzb3VyY2UKCSAgYW5kIGFzZW1ibHkgc291cmNlIGdlbmVyYXRpb24gcnVsZXMgb24gU3VuIENDLgoKMjAwNi0wOC0wOSAxMTo0MyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9nY2MuY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBDaGFuZ2VkIHByZXByb2Nlc3NlZAoJICBzb3VyY2UgZXh0ZW5zaW9uIHRvIC5pIGFuZCBhc3NlbWJseSBleHRlbnNpb24gdG8gLnMgZm9yIG1vcmUKCSAgcG9ydGFiaWxpdHkuCgoyMDA2LTA4LTA5IDExOjMyICBob2ZmbWFuCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiB0cnkgdG8gZml4IGNvbXByZXNzIGZhaWx1cmUKCjIwMDYtMDgtMDkgMDk6NTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBBZGRlZCBvcHRpb25zCgkgIENNQUtFX1NLSVBfUFJFUFJPQ0VTU0VEX1NPVVJDRV9SVUxFUyBhbmQKCSAgQ01BS0VfU0tJUF9BU1NFTUJMWV9TT1VSQ0VfUlVMRVMgdG8gYWxsb3cgcHJvamVjdHMgdG8gZGlzYWJsZQoJICBnZW5lcmF0aW9uIG9mIC5FIGFuZCAuUyBydWxlcy4KCjIwMDYtMDgtMDkgMDk6NDUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVMZXhlci5jLCBjbUxpc3RGaWxlTGV4ZXIuaW4ubCwKCSAgY21TdGFuZGFyZExleGVyLmg6IENPTVA6IEZpeCB3YXJuaW5ncyBwcm9kdWNlZCBieSB0aGUgY2hhbmdlIGluCgkgIGluY2x1ZGUgb3JkZXIgZnJvbSB0aGUgcmUtb3JnYW5pemF0aW9uIG9mIGxleGVyIGNvZGUuCgoyMDA2LTA4LTA5IDA3OjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMDggMTU6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHg6IEVOSDogYWRkIGNtYWtlCgkgIG91dHB1dCB0byBidWlsZCBhbmQgdGVzdAoKMjAwNi0wOC0wOCAxNDowMCAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuaW4ubCwKCSAgY21EZXBlbmRzRm9ydHJhbkxleGVyLmN4eCwgY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmwsCgkgIGNtRGVwZW5kc0phdmFMZXhlci5jeHgsIGNtRGVwZW5kc0phdmFMZXhlci5pbi5sLCBjbUV4cHJMZXhlci5jeHgsCgkgIGNtRXhwckxleGVyLmluLmwsIGNtTGlzdEZpbGVMZXhlci5jLCBjbUxpc3RGaWxlTGV4ZXIuaW4ubCwKCSAgY21TdGFuZGFyZExleGVyLmg6IENPTVA6IE1vdmVkIGR1cGxpY2F0ZSBmbGV4LWdlbmVyYXRlZCBsZXhlcgoJICB3YXJuaW5nIHN1cHByZXNzaW9uIGFuZCBjcm9zcy1wbGF0Zm9ybSBzdXBwb3J0IGNvZGUgdG8gYSBzaW5nbGUKCSAgY21TdGFuZGFyZExleGVyLmggaW5jbHVkZWQgYnkgYWxsIGxleGVyIHNvdXJjZXMuICBBZGRlZCBmaXggZm9yCgkgIG1hY3JvIHJlZGVmaW5pdGlvbnMgb24gQm9ybGFuZCA1LjggY29tcGlsZXIuCgoyMDA2LTA4LTA4IDEzOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IG1ha2Ugc3VyZQoJICBSdWxlVmFyaWFibGUgc3RydWN0IGlzIGluaXRpYWxpemVkIGNvcnJlY3RseSwgYWxzbyBtYWtlIHN1cmUKCSAgY3VzdG9tIGNvbW1hbmQgdGFyZ2V0cyBkbyBub3QgY3Jhc2ggY21ha2UKCjIwMDYtMDgtMDggMTM6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHg6IFNUWUxFOiBGaXhlZCBsaW5lCgkgIGxlbmd0aC4KCjIwMDYtMDgtMDggMTE6MjYgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eDogQlVHOiBEdXBsaWNhdGUgb2JqZWN0CgkgIG5hbWUgZGV0ZWN0aW9uIHNob3VsZCBub3QgYmUgY2FzZSBzZW5zaXRpdmUgc2luY2UgdGhpcyBjb2RlIGlzCgkgIHVzZWQgb24gV2luZG93cyBmaWxlIHN5c3RlbXMuICBUaGlzIGFkZHJlc3NlcyBidWcjMzU4OS4KCjIwMDYtMDgtMDggMDc6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0wNyAyMzoyNSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9nY2MuY21ha2UsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZCBnZW5lcmF0aW9uIG9mCgkgIHJ1bGVzIHRvIG1hbnVhbGx5IHJlcXVlc3QgcHJlcHJvY2Vzc2VkIG9yIGdlbmVyYXRlZCBhc3NlbWJseQoJICBzb3VyY2VzLgoKMjAwNi0wOC0wNyAxNzoyMiAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBBZGRlZCB1bmRvY3VtZW50ZWQgb3B0aW9uIC1FCgkgIGNtYWtlX3VuaW1wbGVtZW50ZWRfdmFyaWFibGUgdG8gaGVscCBwcmludCB1c2VmdWwgZXJyb3IgbWVzc2FnZXMKCSAgZm9yIHVuaW1wbGVtZW50ZWQgZmVhdHVyZXMgb24gYSBnaXZlbiBwbGF0Zm9ybS4KCjIwMDYtMDgtMDcgMTA6MTAgIGhvZmZtYW4KCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IGZpbmFsbHkgZml4IHRoZSBmYWlsaW5nIHRlc3QKCSAgb24gdGhlIGRhc2hib2FyZCBmb3IgdGhlIHBhc3QgbW9udGggb3Igc28KCjIwMDYtMDgtMDcgMDg6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0wNiAwNzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTA1IDA4OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMDQgMTA6MzUgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbXRhci9DTWFrZUxpc3RzLnR4dDogRU5IOiBnaXZlIHVwIG9uIHRyeSBydW4KCjIwMDYtMDgtMDQgMDg6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wOC0wMyAxNToyMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DaGVja0NYWFNvdXJjZVJ1bnMuY21ha2U6IEVOSDogYWRkIGEgdHJ5IHJ1biBzb3VyY2UgY29kZQoJICBtYWNybwoKMjAwNi0wOC0wMyAxNDozOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtlOiBFTkg6IGZpeCBlcnJvcgoKMjAwNi0wOC0wMyAxNDozNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtlLCBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogZml4IGZvciBtYWtlZGV2IHRocmVlIGFyZ3MgdGVzdAoKMjAwNi0wOC0wMyAxMzo1MSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtdGFyL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSB0cnkgcnVuIHNvdXJjZQoKMjAwNi0wOC0wMyAxMzo0MSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtdGFyL0NNYWtlTGlzdHMudHh0OiBFTkg6IGNoYW5nZSB0byBhIHRyeSBydW4gc28gdGhhdAoJICBpdCB3aWxsIGZhaWwgb24gdGhlIHN1bgoKMjAwNi0wOC0wMyAxMzo0MSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLCBDaGVja0NTb3VyY2VSdW5zLmNtYWtlOgoJICBFTkg6IGFkZCBhIGNydW4gbWFjcm8gYW5kIGZpeCB0aGUgb3V0cHV0IGxvZyBmb3IgY29tcGlsZSBjCgoyMDA2LTA4LTAzIDA5OjQyICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgY21UYXJnZXQuY3h4OiBFTkg6IEFkZGVkIHRhcmdldAoJICBwcm9wZXJ0eSBDTEVBTl9ESVJFQ1RfT1VUUFVUIHRvIG5vdCBjbGVhbiBhbGwgZm9ybXMgb2YgYSBsaWJyYXJ5CgkgIG5hbWUgc28gdGhhdCBzdGF0aWMgYW5kIHNoYXJlZCBsaWJyYXJpZXMgb2YgdGhlIHNhbWUgbmFtZSBjYW4KCSAgY29leGlzdCBpbiBhIHNpbmdsZSBidWlsZCBkaXJlY3RvcnkuCgoyMDA2LTA4LTAzIDA5OjI2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9BLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9BLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBNYWtlCgkgIHN1cmUgc291cmNlcyB3aXRoIHVua25vd24gZXh0ZW5zaW9ucyBhcmUgbm90IGNvbXBpbGVkIGJ5IFZTLgoKMjAwNi0wOC0wMyAwOToyNiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IE1vdmVkIEdldFNvdXJjZUZpbGVMYW5ndWFnZQoJICB1cCB0byBjbUxvY2FsR2VuZXJhdG9yLgoKMjAwNi0wOC0wMyAwODoxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA4LTAyIDIxOjMwICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogU1RZTEU6IEZpeGVkIGxvbmcgbGluZS4KCjIwMDYtMDgtMDIgMjE6MjQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbXRhci9DTWFrZUxpc3RzLnR4dDogRU5IOiB1c2UgZGV2X3QgaW5zdGVhZCBvZiBtYWpvcl90CgkgIGFuZCBtaW5vcl90CgoyMDA2LTA4LTAyIDEyOjUxICBkYXZpZC5jb2xlCgoJKiBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQ6IENPTVA6IGxpYnRhciBzaG91bGQgYnVpbGQgd2hlbgoJICBpbmNsdWRlZCBpbiBub24tQ01ha2UgcHJvamVjdHMuLi4KCjIwMDYtMDgtMDIgMTE6MDYgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBSZXN0b3JpbmcgcHJldmlvdXMgY2hhbmdlCgkgIHdpdGggYSBmaXguCgoyMDA2LTA4LTAyIDA3OjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDgtMDEgMTk6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiB1bmRvIGNoYW5nZSB0aGF0IGJyb2tlCgkgIGJvcmxhbmQgNS42IGNvbnQKCjIwMDYtMDgtMDEgMTY6MTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBNb3ZlZCBnZW5lcmF0aW9uIG9mCgkgIGRpcmVjdG9yeS1sZXZlbCBvYmplY3QgY29udmVuaWVuY2UgcnVsZXMgdG8gYSBzZXBhcmF0ZSBtZXRob2QuCgkgIFRoaXMgd2lsbCBhaWQgZ2VuZXJhdGlvbiBvZiBtb3JlIHN1Y2ggcnVsZXMgbGF0ZXIuCgoyMDA2LTA4LTAxIDE2OjAxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWFrZSBjbWFrZSBidWlsZCB3aXRoIG9sZGVyCgkgIHZlcnNpb25zIG9mIGNtYWtlCgoyMDA2LTA4LTAxIDE1OjQ4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogZml4IGZvciBxdG1haW4KCjIwMDYtMDgtMDEgMTU6MzYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIHNoYXJlZCBsaWJyYXJ5CgkgIHZlcnNpb24gc3VwcG9ydCBmb3IgRm9ydHJhbi4JVGhpcyBhZGRyZXNzZXMgYnVnIzM1NTguCgoyMDA2LTA4LTAxIDE1OjI2ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGEgdHJ5IGNvbXBpbGUgdGVzdCBmb3IKCSAgbWFrZWRldl90aHJlZV9hcmdzCgoyMDA2LTA4LTAxIDE1OjI0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsIEZpbmRRdDQuY21ha2U6IEVOSDogZml4IGZvcgoJICBsb2NhdGlvbiBvZiBlcnJvciBsb2cKCjIwMDYtMDgtMDEgMTU6MTYgIGdsZWhtYW5uCgoJKiBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eDogQlVHOiAjMzU2My4gU2VnbWVudGF0aW9uIGZhdWx0IHdpdGgKCSAgbm9uIGluaXRpYWxpemVkIGlucHV0IG9yIE5VTEwgcG9pbnRlcnMuCgoyMDA2LTA4LTAxIDE0OjQ1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBSZWdpc3RyeS5jeHgsIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50cy5jeHgsCgkgIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50czEuY3h4LCB0ZXN0U3lzdGVtVG9vbHMuY3h4OiBDT01QOiBBZGRlZAoJICBtaXNzaW5nIGhlYWRlcnMuICBUaGlzIHBhcnRpYWxseSBhZGRyZXNzZXMgYnVnIzM1NTYuCgoyMDA2LTA4LTAxIDE0OjM0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogYWRkIFF0Q29yZWQgYXMgYSBwb3NzaWJsZSBuYW1lIGZvcgoJICBxdGNvcmUgZGVidWcKCjIwMDYtMDgtMDEgMTQ6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGRlZCBwbGF0Zm9ybSBpZGVudGlmaWVyIGZvciBRTlhOVE8uCgkgIFRoaXMgcGFydGlhbGx5IGFkZHJlc3NlcyBidWcjMzU1Ni4KCjIwMDYtMDgtMDEgMTQ6MzEgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5jeHgsIGNtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogQ09NUDogQWRkZWQKCSAgbWlzc2luZyBpbmNsdWRlcy4gIFRoaXMgcGFydGlhbGx5IGFkZHJlc3NlcyBidWcjMzU1Ni4KCjIwMDYtMDgtMDEgMTQ6MjggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBDT01QOiBVc2UgU0FfUkVTVEFSVCBvbmx5IGlmIGl0IGlzCgkgIGRlZmluZWQgZm9yIHRoZSBjdXJyZW50IHBsYXRmb3JtLiAgVGhpcyBwYXJ0aWFsbHkgYWRkcmVzc2VzCgkgIGJ1ZyMzNTU2LgoKMjAwNi0wOC0wMSAxNDoxMCAga2luZwoKCSogTW9kdWxlcy9GaW5kS0RFMy5jbWFrZTogQlVHOiBGaXggdXNhZ2Ugb2YgRklORF9QUk9HUkFNIGNvbW1hbmQuCgoyMDA2LTA4LTAxIDEyOjI3ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFF0NC5jbWFrZSwgVXNlUXQ0LmNtYWtlOiBFTkg6IGZpeCBmb3Igb3B0aW1pemVkCgkgIGRlYnVnIHN0dWZmCgoyMDA2LTA4LTAxIDExOjM4ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmwsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlci55LAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbkxleGVyLmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW5MZXhlci5pbi5sLAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsCgkgIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuUGFyc2VyLnksIFNvdXJjZS9jbURlcGVuZHNKYXZhTGV4ZXIuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzSmF2YUxleGVyLmluLmwsIFNvdXJjZS9jbURlcGVuZHNKYXZhUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0phdmFQYXJzZXIueSwgU291cmNlL2NtRXhwckxleGVyLmN4eCwKCSAgU291cmNlL2NtRXhwckxleGVyLmluLmwsIFNvdXJjZS9jbUV4cHJQYXJzZXIuY3h4LAoJICBTb3VyY2UvY21FeHByUGFyc2VyLnksIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4LAoJICBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmMsIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuaW4ubCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21TZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jLAoJICBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NtemxpYi9DTWFrZUxpc3RzLnR4dDogQ09NUDogRml4IGFuZC9vciBkaXNhYmxlCgkgIHdhcm5pbmdzIGZvciBCb3JsYW5kIDUuNiBidWlsZC4KCjIwMDYtMDgtMDEgMTE6MjYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kUXQ0LmNtYWtlLCBVc2VRdDQuY21ha2U6IEVOSDogZml4IHF0bWFpbiBmb3IKCSAgcmVsZWFzZQoKMjAwNi0wOC0wMSAxMDo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdDQuY21ha2UsIFVzZVF0NC5jbWFrZTogRU5IOiBmaXggcXRtYWluIGZvcgoJICByZWxlYXNlCgoyMDA2LTA4LTAxIDEwOjQ5ICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9BLmN4eCwgQ29tcGxleC9FeGVjdXRhYmxlL0EuaCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0EuaGgsIENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0EuY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS5oLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS5oaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0EuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0EuaCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9BLmhoLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGluZyB0ZXN0CgkgIGZvciBzb3VyY2UgZmlsZXMgYW5kIGhlYWRlciBmaWxlcyB3aXRoIHRoZSBzYW1lIGJhc2UgbmFtZSBpbiB0aGUKCSAgc2FtZSB0YXJnZXQuCgoyMDA2LTA4LTAxIDEwOjQ4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eDogRU5IOiBBZGRpbmcgLmhoCgkgIGZpbGUgYXMgYSBDKysgaGVhZGVyIGZpbGUgZXh0ZW5zaW9uLglSZW1vdmUgZHVwbGljYXRlIGNvZGUgZnJvbQoJICBpbXBsZW1lbnRhdGlvbiBvZiB1bmlxdWUgb2JqZWN0IG5hbWUgY29tcHV0YXRpb24gZm9yIFZTCgkgIGdlbmVyYXRvcnMuICBUaGlzIGFkZHJlc3NlcyBidWcjMzU2NS4KCjIwMDYtMDgtMDEgMDk6MTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBwdXQgYmFjayBmaW5kIHF0bWFpbgoKMjAwNi0wOC0wMSAwNzo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTMxIDE2OjU5ICBhbmR5CgoJKiBVdGlsaXRpZXMvY21jb21wcmVzcy86IENNYWtlTGlzdHMudHh0LCBjbWNvbXByZXNzLmMsCgkgIGNtY29tcHJlc3MuaCwgY29tcHJlc3MuYy5vcmlnaW5hbDogRU5IOiBJbml0aWFsIGltcG9ydAoKMjAwNi0wNy0zMSAxMzo1MCAgbWFydGluawoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuaHh4LmluLCB0ZXN0U3lzdGVtVG9vbHMuY3h4OiBFTkg6CgkgIGJldHRlciBjb3ZlcmFnZQoKMjAwNi0wNy0zMSAxMTowMCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBtb3ZlIHJlbGVhc2UgYnJhbmNoCgoyMDA2LTA3LTMxIDEwOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBFTkg6IGZpeCBsaW5lIGxlbmd0aHMKCjIwMDYtMDctMzEgMDc6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0zMCAwNzoxNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTI5IDA3OjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMjggMTQ6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy90ZXN0U3lzdGVtVG9vbHMuY3h4OiBCVUc6IGZpeCBzb21lIGJhZCBjb2RlIGFuZCBhZGQKCSAgYSBjb3VwbGUgbW9yZSB0ZXN0cwoKMjAwNi0wNy0yOCAxNDoyMCAgbWFydGluawoKCSogRG9jcy86IENNYWtlMTJwMi5ydGYsIENNYWtlMTQucnRmLCBDTWFrZTE2LnJ0ZjogRU5IOiByZW1vdmUgb2xkCgkgIGZpbGVzCgoyMDA2LTA3LTI4IDEyOjAwICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6CgkgIG1vdmUgc3R1ZmYgZnJvbSBtYWluIHRyZWUKCjIwMDYtMDctMjggMTE6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciAzNTU3CgkgIFRhcmdldEVudmlyb25tZW50IGZvciBNSURMIENvbXBpbGVyIHNldCBjb3JyZWN0bHkgZm9yIDY0IGJpdAoKMjAwNi0wNy0yOCAxMToxMyAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbDogRU5IOiBjaGFuZ2VzIG9uIGJyYW5jaAoKMjAwNi0wNy0yOCAwOToyMiAgYW5keQoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIHRlc3QgZm9yIGJ6MiBhbmQgY2hlY2sKCSAgZm9yIGNvbXByZXNzCgoyMDA2LTA3LTI4IDA5OjE0ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IG1vdmUgZnJvbSBtYWluIHRyZWUKCjIwMDYtMDctMjggMDk6MTQgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jcGFjay5jeHg6IEJVRzogQmFpbCBvdXQgb24gZ2VuZXJhdG9yIGluaXRpYWxpemF0aW9uCgkgIGZhaWx1cmUKCjIwMDYtMDctMjggMDg6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBtb3ZlIGZyb20gbWFpbiB0cmVlCgoyMDA2LTA3LTI4IDA4OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMjcgMTU6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQlVHOiBTZXQKCSAgR0NDX1NZTUJPTFNfUFJJVkFURV9FWFRFUk4gYW5kIEdDQ19JTkxJTkVTX0FSRV9QUklWQVRFX0VYVEVSTgoJICBhdHRyaWJ1dGVzIG9uIGFsbCBwcm9qZWN0cyB0byBwcmV2ZW50IC1mdmlzaWJpbGl0eT1oaWRkZW4gZmxhZ3MuCgkgIFRoaXMgaXMgbmVlZGVkIHRvIG1ha2UgUlRUSSB3b3JrIGJ5IGRlZmF1bHQuCgoyMDA2LTA3LTI3IDExOjU1ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBCVUc6IEZpeCBleGVjdXRpbmcgYW5kIGhlbHAKCjIwMDYtMDctMjcgMTE6MjcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogRG8gbm90IGJsb2NrIHNpZ25hbHMgZHVyaW5nCgkgIHNsZWVwLiAgTGVhdmUgdGhhdCB1cCB0byB0aGUgYXBwbGljYXRpb24uCgoyMDA2LTA3LTI3IDExOjI2ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBCVUc6IFByZXZlbnQgY3Jhc2ggd2hlbiBubyBpbnB1dCBmaWxlIG9yCgkgIGdlbmVyYXRvciBzcGVjaWZpZWQKCjIwMDYtMDctMjcgMTA6MzcgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIGJvb3RzdHJhcCwKCSAgTW9kdWxlcy9DTWFrZUNvbW1vbkxhbmd1YWdlSW5jbHVkZS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgVGVzdHMvTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmN4eCwKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IEVOSDoKCSAgbW92ZSBjaGFuZ2VzIGZyb20gbWFpbiB0cmVlIHRvIGJyYW5jaAoKMjAwNi0wNy0yNyAwOTo0MCAga2luZwoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5jeHg6IEJVRzogRml4IGVycm9yIG1lc3NhZ2UKCSAgd2hlbiBoYW5kbGVyIGNhbm5vdCBiZSBjcmVhdGVkLgoKMjAwNi0wNy0yNyAwODoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTI2IDE0OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBmaXggY29tbWVudAoKMjAwNi0wNy0yNiAxNDoxMCAgYW5keQoKCSogYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZTogQ09NUDogTW9yZSB3YXJuaW5ncwoJICBhbmQgaHAgaXNzdWVzCgoyMDA2LTA3LTI2IDEzOjE5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ29tbW9uTGFuZ3VhZ2VJbmNsdWRlLmNtYWtlOiBCVUc6IGZpeCBmb3IgMzU1MAoJICBhZ2FpbgoKMjAwNi0wNy0yNiAxMTo0NiAgYW5keQoKCSogYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZSwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6CgkgIENPTVA6IEhhbmRsZSBib3RoIGFuc2kgYW5kIG5vbi1hbnNpIEMKCjIwMDYtMDctMjYgMTE6MTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyAzNTUwLCBmb3IKCSAgcmVsZWFzZSBidWlsZHMgZG8gbm90IGJ1aWxkIGluY3JlbWVudGFsCgoyMDA2LTA3LTI2IDEwOjExICBob2ZmbWFuCgoJKiBib290c3RyYXA6IEVOSDogcHV0IGJhY2sgc28gaXQgd29ya3Mgb24gaHAKCjIwMDYtMDctMjYgMDk6MTEgIGhvZmZtYW4KCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBFTkg6IGRvIG5vdAoJICB1c2UgYysrIGNvbW1lbnRzIGluIGMgY29kZQoKMjAwNi0wNy0yNiAwODozNSAgaG9mZm1hbgoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW4sIENoYW5nZUxvZy5tYW51YWwsIGJvb3RzdHJhcCwKCSAgTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL3Rlc3RTeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogRU5IOgoJICBtb3ZlIGNoYW5nZXMgZnJvbSBtYWluIHRyZWUKCjIwMDYtMDctMjYgMDc6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0yNSAxNToxOCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBNYXNrIHNpZ25hbHMgZHVyaW5nCgkgIFN5c3RlbVRvb2xzOjpEZWxheSB0byBhdm9pZCBpbnRlcnJ1cHRlZCBzbGVlcC4KCjIwMDYtMDctMjUgMTQ6MzIgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBCVUc6IHJlbW92ZQoJICBjb21tYW5kIGNhdXNpbmcgaXNzdWVzIHdpdGggbWlkIGJ1aWxkIHJlcnVucyBvZiBjbWFrZSBvbiB2czcwCgoyMDA2LTA3LTI1IDE0OjE1ICBtYXJ0aW5rCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFN5c3RlbVRvb2xzLmN4eDogQ09NUDogZml4IGNvbXBpbGUgaXNzdWUKCjIwMDYtMDctMjUgMTI6MzggIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBFTkg6IHRyeWluZyBhCgkgIHNsaWdodCBjaGFuZ2UKCjIwMDYtMDctMjUgMTI6MDggIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluLAoJICB0ZXN0U3lzdGVtVG9vbHMuY3h4OiBCVUc6IHNvbWUgYnVnIGZpeGVzLCBiZXR0ZXIgZG9jcywgYW5kIG1vcmUKCSAgY292ZXJhZ2UKCjIwMDYtMDctMjUgMTE6MDAgIGFuZHkKCgkqIGJvb3RzdHJhcDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDctMjUgMTA6NDYgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBCVUc6IHJlbW92ZQoJICBjKytjb21tZW50cwoKMjAwNi0wNy0yNSAxMDowMSAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eDogRU5IOiByZW1vdmUgdW5jb21waWxlZCBoZWFkZXIKCjIwMDYtMDctMjUgMDg6MjcgIGhvZmZtYW4KCgkqIENUZXN0Q3VzdG9tLmN0ZXN0LmluOiBFTkg6IHRyeSB0byBnZXQgcmlkIG9mIGNsb2NrIHNrZXcgd2FybmluZwoKMjAwNi0wNy0yNSAwODoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTI0IDE2OjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlSW1wb3J0QnVpbGRTZXR0aW5ncy5jbWFrZTogRU5IOiBmaXggZm9yIGNhc2UKCSAgZGlmZmVyZW5jZSB3aXRoIG5tYWtlCgoyMDA2LTA3LTI0IDE2OjM1ICBtYXJ0aW5rCgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogQlVHOiB0ZW1wIGZpeAoKMjAwNi0wNy0yNCAxNjoxMyAgbWFydGluawoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBCVUc6IGZpeCBmb3IgQ1hYIG9ubHkgcHJvamVjdHMKCjIwMDYtMDctMjQgMTU6NDAgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBFTkg6IGFkZAoJICBtb3JlIGNvdmVyYWdlCgoyMDA2LTA3LTI0IDExOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBhbGxvdyBmb3Igc291cmNlIHRyZWUgdG8gYmUgaW4gcm9vdAoJICBkaXJlY3RvcnkKCjIwMDYtMDctMjQgMTE6MTkgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sIE1vZHVsZXMvQ1BhY2suY21ha2UsCgkgIE1vZHVsZXMvRmluZEJvb3N0LmNtYWtlLCBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsIE1vZHVsZXMvRmluZHd4V2lkZ2V0cy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlLCBNb2R1bGVzL1VzZV93eFdpbmRvd3MuY21ha2UsCgkgIE1vZHVsZXMvVXNld3hXaWRnZXRzLmNtYWtlLCBNb2R1bGVzL3JlYWRtZS50eHQsCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQnVpbGRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21GaW5kQmFzZS5jeHgsIFNvdXJjZS9jbUZpbmRCYXNlLmgsCgkgIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL1dYRGlhbG9nL2Jpbi9GaW5kVVBYLmNtYWtlLAoJICBTb3VyY2UvV1hEaWFsb2cvYmluL0ZpbmR3eFcuY21ha2UsCgkgIFNvdXJjZS9XWERpYWxvZy9iaW4vRmluZHd4V2luLmNtYWtlLAoJICBTb3VyY2UvV1hEaWFsb2cvYmluL1VzZXd4Vy5jbWFrZSwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluLCBTb3VyY2Uva3dzeXMvR2xvYi5jeHgsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYywgU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1Rlcm1pbmFsLmMsCgkgIFNvdXJjZS9rd3N5cy9rd3N5c19pb3NfaW9zdHJlYW0uaC5pbiwKCSAgU291cmNlL2t3c3lzL3Rlc3RDb21tYW5kTGluZUFyZ3VtZW50cy5jeHgsCgkgIFNvdXJjZS9rd3N5cy90ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMxLmN4eCwKCSAgVGVzdHMvQnVuZGxlVGVzdC9CdW5kbGVMaWIuY3h4LCBUZXN0cy9CdW5kbGVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9CdW5kbGVUZXN0L0J1bmRsZVN1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW4sIFRlc3RzL0N4eE9ubHkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0N4eE9ubHkvY3h4b25seS5jeHgsIFRlc3RzL0N4eE9ubHkvbGliY3h4MS5jeHgsCgkgIFRlc3RzL0N4eE9ubHkvbGliY3h4MS5oLCBUZXN0cy9DeHhPbmx5L2xpYmN4eDIuY3h4LAoJICBUZXN0cy9DeHhPbmx5L2xpYmN4eDIuaCwgVGVzdHMvTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuY3h4LmluLAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4LmluLAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgVGVzdHMvT3V0T2ZTb3VyY2Uvc2ltcGxlLmN4eCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL091dE9mU291cmNlL091dE9mU291cmNlU3ViZGlyL3NpbXBsZS5jeHgsCgkgIFRlc3RzL1VzZVdYL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9Vc2VXWC9XWC5jeHgsCgkgIFV0aWxpdGllcy9jbWN1cmwvVGVzdGluZy9mdHBnZXQuYywKCSAgVXRpbGl0aWVzL2NtY3VybC9UZXN0aW5nL2Z0cGdldHJlc3AuYywKCSAgVXRpbGl0aWVzL2NtY3VybC9UZXN0aW5nL2Z0cHVwbG9hZC5jLCBVdGlsaXRpZXMvY210YXIvYmxvY2suYywKCSAgVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5jLCBVdGlsaXRpZXMvY210YXIvY29tcGF0L3N0cmxjcHkuYywKCSAgVXRpbGl0aWVzL2NtdGFyL2xpc3RoYXNoL2xpc3QuYy5pbjogRU5IOiBtb3ZlIGNoYW5nZXMgZnJvbSBtYWluCgkgIHRyZWUgdG8gcmVsZWFzZSBicmFuY2gKCjIwMDYtMDctMjQgMDk6NDMgIG1hcnRpbmsKCgkqIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluOiBFTkg6IG1vcmUgY292ZXJhZ2UKCjIwMDYtMDctMjQgMDg6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0yMyAwNzo0OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTIyIDA4OjExICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEJVRzogQ01BS0VfQVIgc2hvdWxkIGJlCgkgIGFkdmFuY2VkLgoKMjAwNi0wNy0yMiAwODowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTIxIDE1OjQzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2UsIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZSwKCSAgTW9kdWxlcy9Vc2Vfd3hXaW5kb3dzLmNtYWtlLCBNb2R1bGVzL1VzZXd4V2lkZ2V0cy5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9XWERpYWxvZy9iaW4vRmluZFVQWC5jbWFrZSwKCSAgU291cmNlL1dYRGlhbG9nL2Jpbi9GaW5kd3hXLmNtYWtlLAoJICBTb3VyY2UvV1hEaWFsb2cvYmluL0ZpbmR3eFdpbi5jbWFrZSwKCSAgU291cmNlL1dYRGlhbG9nL2Jpbi9Vc2V3eFcuY21ha2UsIFRlc3RzL1VzZVdYL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Vc2VXWC9XWC5jeHg6IEVOSDogQXBwbHlpbmcgcGF0Y2ggZnJvbSBidWcjMzQ0MyB0bwoJICBpbXBsZW1lbnQgRmluZHd4V2lkZ2V0cy5jbWFrZSBwcm9wZXJseS4gIEl0IGFsc28gdXBkYXRlcyB0aGUKCSAgVXNlV1ggdGVzdCBhbmQgV1hEaWFsb2cgc291cmNlcyB0byB1c2UgdGhlIG5ldyBmaW5kIHNjcmlwdC4KCjIwMDYtMDctMjEgMTU6MjAgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW46IEVOSDogRG8gbm90IGluY2x1ZGUgZXhwZXJpbWVudGFsCgkgIFdYRGlhbG9nIGluIHJlbGVhc2UuCgoyMDA2LTA3LTIxIDE1OjE2ICBraW5nCgoJKiBNb2R1bGVzL3JlYWRtZS50eHQ6IEVOSDogQWRkZWQgZG9jdW1lbnRhdGlvbiBhYm91dAoJICBYWFhfRklORF9DT01QT05FTlRTIGZvciBGSU5EX1BBQ0tBR0UuCgoyMDA2LTA3LTIxIDE0OjU4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21ha2UuY3h4OiBFTkg6IGZpeCBjb2xvciBvdXRwdXQgaW5zaWRlIG9mCgkgIGN0ZXN0IHJ1bnMKCjIwMDYtMDctMjEgMTQ6MDIgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuY3h4LmluLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvTG9hZGVkQ29tbWFuZC5jeHguaW4sCgkgIExvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmN4eCwKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBCVUc6IHdvcmsKCSAgYXJvdW5kIFhDb2RlIGlzc3VlCgoyMDA2LTA3LTIxIDEzOjA1ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IENsZWFudXAuIFJlcGxhY2UgYy1zdHlsZSBjYXN0IHdpdGgKCSAgc3RhdGljX2Nhc3QgYW5kIHJlcGxhY2Ugc3ByaW50ZiB3aXRoIGNtT1N0cmluZ1N0cmVhbQoKMjAwNi0wNy0yMSAxMjowNCAga2luZwoKCSogTW9kdWxlcy9GaW5kQm9vc3QuY21ha2U6IEVOSDogQWRkaW5nIEZpbmRCb29zdC5jbWFrZSBtb2R1bGUgZnJvbQoJICBBbmRyZXcgTWFjbGVhbi4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMzNDQ3LgoKMjAwNi0wNy0yMSAxMTo1MyAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6CgkgIEJVRzogRml4ZWQgYnVpbGRpbmcgb2YgQysrLW9ubHkgcHJvamVjdHMgYW5kIGFkZGVkIGEgdGVzdC4KCjIwMDYtMDctMjEgMTE6NDMgIGtpbmcKCgkqIFRlc3RzL0N4eE9ubHkvOiBDTWFrZUxpc3RzLnR4dCwgY3h4b25seS5jeHgsIGxpYmN4eDEuY3h4LAoJICBsaWJjeHgxLmgsIGxpYmN4eDIuY3h4LCBsaWJjeHgyLmg6IEVOSDogQWRkaW5nIEMrKy1vbmx5IHRlc3QuCgoyMDA2LTA3LTIxIDEwOjI2ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENUZXN0VGVzdC90ZXN0LmNtYWtlLmluLCBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogRU5IOiBpbmNyZWFzZQoJICBjb3ZlcmFnZSBpbiBhIGNvdXBsZSBwbGFjZXMKCjIwMDYtMDctMjEgMDg6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0yMCAwOTozNSAga2luZwoKCSogU291cmNlL2t3c3lzL1Rlcm1pbmFsLmM6IEJVRzogRG8gbm90IGRpc3BsYXkgVlQxMDAgZXNjYXBlcyBpbnNpZGUKCSAgZW1hY3MgZXZlbiBpZiBURVJNIGlzIHNldCB0byB4dGVybS4KCjIwMDYtMDctMjAgMDg6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0xOSAwODoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTE4IDE1OjIxICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRCYXNlLmN4eCwgY21GaW5kQmFzZS5oLCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmN4eCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4OiBCVUc6IElmIHRoZSB1c2VyCgkgIHNwZWNpZmllcyBhIGNhY2hlIGVudHJ5IG9uIHRoZSBjb21tYW5kIGxpbmUgd2l0aG91dCBhIHR5cGUsIHRoZQoJICBGSU5EXyogY29tbWFuZHMgc2hvdWxkIGFkZCB0aGUgdHlwZSBhbmQgZG9jc3RyaW5nIHRvIHRoZSBnaXZlbgoJICB2YWx1ZSBhbmQgcHV0IGl0IGJhY2sgaW4gdGhlIGNhY2hlLgoKMjAwNi0wNy0xOCAxMzoxNiAga2luZwoKCSogTW9kdWxlcy9yZWFkbWUudHh0OiBTVFlMRTogQWRkZWQgbm90ZSBhYm91dCBzaW5ndWxhciB2ZXJzdXMKCSAgcGx1cmFsIG5hbWUgZm9yIFhYWF9JTkNMVURFX0RJUlMuICBBZGRlZCBYWFhfTElCUkFSWV9ESVJTIGFuZAoJICBYWFhfWVlfSU5DTFVERV9ESVIgY29udmVudGlvbnMuCgoyMDA2LTA3LTE4IDEzOjAyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX2lvc3RyZWFtLmguaW46IENPTVA6IEZpeCByZWZlcmVuY2VzIHRvCgkgIGNpbiwgY291dCwgY2VyciwgYW5kIGNsb2cgaW4gY2FzZSBvZiBIUCBhQ0MgY29tcGlsZXIgd2l0aCAtbXQKCSAgZmxhZy4KCjIwMDYtMDctMTggMDk6MzIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW9HZW5lcmF0b3IuY3h4OiBTVFlMRTogZml4IGxvbmcgbGluZXMKCjIwMDYtMDctMTggMDg6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0xNyAxMzozNCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IFdoZW4gaGFuZGluZyB0aGUgY2hpbGQgc3RkaW4KCSAgcGlwZSBhIGZpbGUsIGFsbG93IGFub3RoZXIgcHJvY2VzcyB0byBiZSB3cml0aW5nIHRvIHRoZSBmaWxlIGF0CgkgIHRoZSBzYW1lIHRpbWUuICBUaGlzIGFsbG93cyBjaGlsZHJlbiBzdWNoIGFzIHRhaWwgLWYgdG8gZnVuY3Rpb24KCSAgcHJvcGVybHkuCgoyMDA2LTA3LTE3IDExOjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDYtMDctMTcgMDk6MTUgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy90ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMxLmN4eDogQ09NUDogT25seSBkZWxldGUKCSAgb25jZQoKMjAwNi0wNy0xNyAwODoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTE2IDIxOjExICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiB0ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICB0ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMxLmN4eDogQ09NUDogUmVtb3ZlIHNvbWUgd2FybmluZ3MKCjIwMDYtMDctMTYgMDg6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0xNSAwODoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTE0IDE1OjAyICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBDb21tYW5kTGluZUFyZ3VtZW50cy5oeHguaW4sIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50cy5jeHgsCgkgIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50czEuY3h4OiBFTkg6IEFkZCBhIHdheSB0byBnZXQgdW51c2VkCgkgIGFyZ3VtZW50cyBhbmQgYWRkIGEgdGVzdAoKMjAwNi0wNy0xNCAxMzo1OSAgYW5keQoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmh4eC5pbjogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDctMTQgMTM6MzIgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFTkg6IEl0IGRvZXMgbm90IHJlYWxseSBtYWtlcyBzZW5zZQoJICB0byBoYXZlIEJvb2xlYW4gQXJndW1lbnQgTGlzdAoKMjAwNi0wNy0xNCAwOToxMyAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluLCBTeXN0ZW1Ub29scy5jeHgsCgkgIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50cy5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yCgkgIG11bHRpLWFyZ3VtZW50czogLWYgYXJnMSBhcmcyIGFyZzMgLi4uIGFuZCBzdXBwb3J0IGZvciBsaXN0czogLWYKCSAgYXJnMSAtZiBhcmcyIC1mIGFyZzMgLi4uIGFuZCBmb3IgYm9vbGVhbiB0byBiZSBzdG9yZWQgYXMgc3RyaW5ncwoJICBhbmQgZG91YmxlcwoKMjAwNi0wNy0xNCAwODowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTEzIDE0OjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogYWRkZWQgcHJvZ3Jlc3MgdG8KCSAgY3VzdG9tIGNvbW1hbmRzIHdpdGggY29tbWVudHMKCjIwMDYtMDctMTMgMTE6MzAgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci9saXN0aGFzaC9saXN0LmMuaW46IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA2LTA3LTEzIDA5OjI2ICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvbGlidGFyLmMsIFV0aWxpdGllcy9jbXRhci9jb21wYXQvc3RybGNweS5jLAoJICBVdGlsaXRpZXMvY210YXIvbGlzdGhhc2gvbGlzdC5jLmluLCBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwNi0wNy0xMyAwOToxMyAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IFNUWUxFOiBGaXgga3dzdHlsZQoKMjAwNi0wNy0xMyAwOTowNyAgYW5keQoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmdzCgoyMDA2LTA3LTEzIDA3OjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMTIgMTY6MzAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBjbUNUZXN0VGVzdEhhbmRsZXIuY3h4OgoJICBFTkg6IFJlbW92ZSBkZWJ1ZwoKMjAwNi0wNy0xMiAxNjoyMSAgYW5keQoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogQlVHOiBGaXggZXJyb3IgY29uZGl0aW9ucwoKMjAwNi0wNy0xMiAxNDo0MSAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IGZpeCBvbGQgY29tcGlsZXIKCSAgaXNzdWUKCjIwMDYtMDctMTIgMTQ6MTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEJVRzogcmVkdWNlIHRoZSBudW1iZXIgb2YgZmlsZQoJICBoYW5kbGVzIGtlcHQgb3BlbgoKMjAwNi0wNy0xMiAxMzoxMSAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGFkZGVkIHByb2dyZXNzIGZvciBzdWJkaXIKCSAgYWxsIHRhcmdldHMgYW5kIGZpeGVkIGNvbXBpbGVyIHdhcmluZwoKMjAwNi0wNy0xMiAwOToyMSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IFNUWUxFOiBSZW1vdmUgZGVidWcKCjIwMDYtMDctMTIgMDk6MjAgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHgsIFNvdXJjZS9rd3N5cy9HbG9iLmN4eCwKCSAgU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVXRpbGl0aWVzL2NtdGFyL2Jsb2NrLmMsIFV0aWxpdGllcy9jbXRhci9saWJ0YXIuYywKCSAgVXRpbGl0aWVzL2NtdGFyL2NvbXBhdC9zdHJsY3B5LmMsCgkgIFV0aWxpdGllcy9jbXRhci9saXN0aGFzaC9saXN0LmMuaW46IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwNi0wNy0xMiAwODowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTExIDE3OjEwICBraW5nCgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGNyZWF0aW9uIG9mCgkgIFhYWF9GSU5EX0NPTVBPTkVOVFMgbGlzdCBvZiBhbGwgY29tcG9uZW50cyByZXF1ZXN0ZWQgd2l0aAoJICBSRVFVSVJFRCBvcHRpb24uICBUaGlzIGFkZHJlc3NlcyB0aGUgZmVhdHVyZSByZXF1ZXN0IGluIGJ1ZyMzNDk0LgoKMjAwNi0wNy0xMSAxNjowOCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBDT01QOiBGaXggc3RsIHN0cmluZyBhY2Nlc3MKCjIwMDYtMDctMTEgMTU6NTggIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0Q29uZmlndXJlQ29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VXBkYXRlQ29tbWFuZC5jeHg6CgkgIEJVRzogVHJ5IHRvIGZpeCB0aGUgcHJvYmxlbSBvZiBiYWQgdGVzdCBuYW1lcwoKMjAwNi0wNy0xMSAxMzoyMyAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oOiBFTkg6IE1hZGUKCSAgY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvciBhIHN1cGVyY2xhc3Mgb2YKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuICBJbXBsZW1lbnRlZCBvYmplY3QgZmlsZSB1bmlxdWUKCSAgbmFtaW5nIHdoZW4gbXVsdGlwbGUgc291cmNlcyBzaGFyZSB0aGUgc2FtZSBuYW1lLgoKMjAwNi0wNy0xMSAxMTo0MSAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFZpc3VhbFN0dWRpb0dlbmVyYXRvci5oOgoJICBFTkg6IE1vdmVkIHVuaXF1ZSBvYmplY3QgZmlsZSBuYW1lIGNvbXB1dGF0aW9uIGZyb20KCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMgdXAgdG8gY21Mb2NhbEdlbmVyYXRvciBmb3IgdXNlIGJ5CgkgIGFsbCBnZW5lcmF0b3JzLiAgQ3JlYXRlZCBjbUxvY2FsVmlzdWFsU3R1ZGlvR2VuZXJhdG9yIGFzCgkgIHN1cGVyY2xhc3MgZm9yIGFsbCBWUyBnZW5lcmF0b3JzLiAgSW1wbGVtZW50ZWQgb24tZGVtYW5kIHVuaXF1ZQoJICBvYmplY3QgZmlsZSBuYW1lIGNvbXB1dGF0aW9uIGZvciBWUyA3IGdlbmVyYXRvciB0byBhdm9pZCBzbG93CgkgIGNvbXBpbGVzIHdoZW4gYWxsIHNvdXJjZXMgYXJlIGluIHN1YmRpcmVjdG9yaWVzLgoKMjAwNi0wNy0xMSAxMTowOCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBjb21waWxlIHdhcm5pbmcKCjIwMDYtMDctMTEgMDk6NTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEJVRzogY2hhbmdlZCB0byBwcm9ncmVzcyB0byBtYWtlIGl0CgkgIG1vcmUgZmxleGlibGUgYW5kIHRvIG5vIHJlbGluayB0YXJnZXRzIGFzIG9mdGVuCgoyMDA2LTA3LTExIDA3OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMTAgMDc6NTkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoJICBhbmQgc3R5bGUgcHJvYmxlbXMKCjIwMDYtMDctMTAgMDc6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0xMCAwNzo1MiAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIENQYWNrL2NwYWNrLmN4eDogU1RZTEU6CgkgIEZpeCBzb21lIHN0eWxlIGVycm9ycwoKMjAwNi0wNy0wOSAxMzo0OCAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC9UZXN0aW5nLzogZnRwZ2V0LmMsIGZ0cGdldHJlc3AuYywgZnRwdXBsb2FkLmM6CgkgIENPTVA6IFJlbW92ZSBlcnJvcnMKCjIwMDYtMDctMDkgMTM6MjAgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLCBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OgoJICBFTkg6IFNldmVyYWwgY2xlYW51cHMgYW5kIHN1cHBvcnQgZm9yIG11bHRpcGxlIGdlbmVyYXRvcnMKCjIwMDYtMDctMDkgMTM6MTkgIGFuZHkKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEVOSDogQWRkIGEgY29weQoJICBjb25zdHJ1Y3RvciB0byBjb3B5IHRoZSB2YWx1ZXMKCjIwMDYtMDctMDkgMTM6MTggIGFuZHkKCgkqIFNvdXJjZS86IGNtQnVpbGRDb21tYW5kLmN4eCwgY21DVGVzdC5jeHg6IEVOSDogUGFzcyAtQyBmbGFnIHRvCgkgIGNtYWtlIHRvIGdlbmVyYXRlIHRoZSBhcHJvcHJpYXRlIGJ1aWxkIGNvbW1hbmQKCjIwMDYtMDctMDkgMDc6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0wOCAwNzo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTA3IDEzOjU5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBFTkg6IEJlIG1vcmUgdmVyYm9zZQoKMjAwNi0wNy0wNyAwOTo1NCAga2luZwoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvOiBzaW1wbGUuY3h4LCBPdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwKCSAgT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eDogRU5IOiBBZGRpbmcgdGVzdCBmb3IgbXVsdGlwbGUKCSAgc291cmNlIGZpbGVzIHdpdGggdGhlIHNhbWUgbmFtZSBidXQgZGlmZmVyZW50IGZ1bGwgcGF0aHMuCgoyMDA2LTA3LTA3IDA4OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMDYgMTY6MDUgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQnVuZGxlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQnVuZGxlVGVzdC9CdW5kbGVTdWJEaXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wcm92ZSB0aGUKCSAgdGVzdCB0byBjcmVhdGUgYSBidW5kbGUgaW4gdGhlIHN1YmRpcmVjdG9yeQoKMjAwNi0wNy0wNiAxNjowNCAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eDogQlVHOiBTZXZlcmFsIGZpeGVzIHRvCgkgIGhhbmRsZSBidW5kbGUgY29udGVudCBvbiBNYWMgT1NYCgoyMDA2LTA3LTA2IDEzOjUyICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IE1ha2UgdGhlIHBhdGgKCSAgY2hhbmdlIG1vcmUgbG9jYWxpemVkIHRvIGJ1bmRsZXMgb25seQoKMjAwNi0wNy0wNiAxMTozNSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBSZXZlcnQgdGhlIGNoYW5nZQoJICAxLjE1MgoKMjAwNi0wNy0wNiAwNzo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTA1IDE2OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1bmRsZVRlc3QvQnVuZGxlTGliLmN4eCwgVGVzdHMvQnVuZGxlVGVzdC9DTWFrZUxpc3RzLnR4dDoKCSAgQlVHOiBJZiB0aGUgc291cmNlIGZpbGUgc3BlY2lmaWVkIGlzIG5vdCBpbiBhIHNvdXJjZSB0cmVlLCBkbyBub3QKCSAgdXNlIGZ1bGwgcGF0aCB0byB0aGUgZmlsZQoKMjAwNi0wNy0wNSAxNjoyMSAgYW5keQoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBFTkg6IE9uIGFwcGxlIGRvIG5vdCBsb29rIGZvciBYMTEKCjIwMDYtMDctMDUgMTA6MDYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGVkIGluc3RhbGxhdGlvbiBvcHRpb25zCgkgIGFuZCBpbXBsZW1lbnRhdGlvbiB0byB1c2UgSU5TVEFMTCBjb21tYW5kIGlmIGl0IGlzIGF2YWlsYWJsZS4KCSAgVGhpcyB3aWxsIGFsbG93IGluc3RhbGxhdGlvbiBjb21wb25lbnQgYXNzaWdubWVudCBhbmQgc2VwYXJhdGUKCSAgaW5zdGFsbGF0aW9uIG9mIHRoZSAuZGxsIGFuZCAubGliIG9uIHdpbmRvd3MuCgoyMDA2LTA3LTA1IDA4OjI2ICBiZXJrCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkaW5nIGNtYWtlIDIuNCBzdHlsZQoJICBpbnN0YWxsYXRpb24uIE5PVEU6IFRoZXNlIGNoYW5nZXMgd2lsbCB3b3JrIG9uIGEgcGFyYXZpZXcgYnVpbGQKCSAgb25seS4gVGhpcyBmaWxlIGhhcyB0byB1cGRhdGVkIHRvIGJlIGdlbmVyYWwKCjIwMDYtMDctMDUgMDc6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0wNCAxMTowNiAgYW5keQoKCSogTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbjogRU5IOiBNZXJnZSBkZWJpYW4gY2hhbmdlcy4KCSAgU3VwcG9ydCBtb3JlIGZvcnRyYW4gZXh0ZW5zaW9ucwoKMjAwNi0wNy0wNCAwODozOCAgYWxleAoKCSogTW9kdWxlcy9GaW5kS0RFNC5jbWFrZToKCSAgRU5IOiBwcmVmZXIga2RlNC1jb25maWcgb3ZlciBrZGUtY29uZmlnLCBzaW5jZSBmb3IgS0RFIDQKCSAga2RlLWNvbmZpZyB3aWxsIGJlIHJlbmFtZWQgdG8ga2RlLWNvbmZpZywgYW5kIHNvIGNtYWtlIGhhcyB0bwoJICBwcmVmZXIgdGhpcyBvbmUgb3ZlciB0aGUgb2xkIHZlcnNpb24KCgkgIEFsZXgKCjIwMDYtMDctMDQgMDc6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNy0wMyAwNzoyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA3LTAyIDA3OjMwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDctMDEgMDc6MjcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0zMCAxMzo1MSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgRUhhIG9wdGlvbgoKMjAwNi0wNi0zMCAxMzo1MCAgaG9mZm1hbgoKCSogTW9kdWxlcy9NYWNyb0FkZEZpbGVEZXBlbmRlbmNpZXMuY21ha2UsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvY29uZmlnLmguaW46IEVOSDogYWRkIGZpbGVzIGZyb20gbWFpbiB0cmVlCgoyMDA2LTA2LTMwIDEzOjQ4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgY21ha2VfdW5pbnN0YWxsLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Rm9ydHJhbkNvbXBpbGVyLmNtYWtlLCBNb2R1bGVzL0NQYWNrLmNtYWtlLAoJICBNb2R1bGVzL0NUZXN0LmNtYWtlLCBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlLmMuaW4sCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlQ1hYLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwgTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrVmFyaWFibGVFeGlzdHMuY21ha2UsIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLCBNb2R1bGVzL0ZpbmRTRExfc291bmQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFRocmVhZHMuY21ha2UsIE1vZHVsZXMvRmluZFZUSy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kWkxJQi5jbWFrZSwgTW9kdWxlcy9LREUzTWFjcm9zLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uY21ha2UsIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2UsIE1vZHVsZXMvVGVzdEZvclNTVFJFQU0uY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwgTW9kdWxlcy9rZGUzdWljLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwKCSAgU291cmNlL2NtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsIFNvdXJjZS9jbURlcGVuZHMuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzLmgsIFNvdXJjZS9jbURlcGVuZHNDLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHgsIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwgU291cmNlL2NtV2hpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtV2hpbGVDb21tYW5kLmgsIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLAoJICBTb3VyY2UvY21ha2VtYWluLmN4eCwgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2Zvcm0ucHJpdi5oLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eCwgU291cmNlL2t3c3lzL0RpcmVjdG9yeS5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzLmguaW4sIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jLAoJICBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmMsIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlLAoJICBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYywKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9DdXN0b21Db21tYW5kL2Zvby5pbiwKCSAgVGVzdHMvTWFrZUNsZWFuL1RvQ2xlYW4vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1dyYXBwaW5nL1dyYXAuYywKCSAgVGVzdHMvV3JhcHBpbmcvZmFrZWZsdWlkLmN4eCwgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NtY3VybC9tcHJpbnRmLmMsCgkgIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgVXRpbGl0aWVzL2NtdGFyL0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvY210YXIvYXBwZW5kLmMsCgkgIFV0aWxpdGllcy9jbXRhci9jb25maWcuaC5pbiwgVXRpbGl0aWVzL2NtdGFyL2V4dHJhY3QuYywKCSAgVXRpbGl0aWVzL2NtdGFyL2hhbmRsZS5jLCBVdGlsaXRpZXMvY210YXIvY29tcGF0L2ZubWF0Y2guYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlL1RyeUNvbXBpbGVGcm9tU291cmNlLmNtYWtlOiBFTkg6IG1lcmdlCgkgIG1haW4gdHJlZSBpbnRvIGJyYW5jaAoKMjAwNi0wNi0zMCAwNzoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTI5IDA3OjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMjggMTc6MTUgIGtpbmcKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZS9UcnlDb21waWxlRnJvbVNvdXJjZS5jbWFrZTogQlVHOiBGaXgKCSAgdXNhZ2Ugb2YgRklMRShBUFBFTkQpIG1vZGUuCgoyMDA2LTA2LTI4IDE3OjAwICBraW5nCgoJKiBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZS9UcnlDb21waWxlRnJvbVNvdXJjZS5jbWFrZTogQlVHOiBNYWtlCgkgIHN1cmUgdHJ5LWNvbXBpbGUgc291cmNlIGVuZHMgaW4gYSBuZXdsaW5lLgoKMjAwNi0wNi0yOCAxNjoxNiAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgY2VyciBvdXRwdXQKCjIwMDYtMDYtMjggMTU6MTUgIG1hcnRpbmsKCgkqIE1vZHVsZXMvQ1Rlc3QuY21ha2U6IEJVRzogZml4IHR5cG8KCjIwMDYtMDYtMjggMDc6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0yNyAxNDoyNiAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogd2FybmluZyBmaXgKCjIwMDYtMDYtMjcgMTA6MjQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZml4IGZvciBzdWJkaXIgYWxsCgkgIHRhcmdldCBhZnRlciBjb250cm9sIGMKCjIwMDYtMDYtMjcgMDk6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mb3JtLnByaXYuaDogRU5IOiBmaXggaWE2NCBidWlsZCB3aXRoCgkgIGFDQwoKMjAwNi0wNi0yNyAwOTo1NiAgaG9mZm1hbgoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBFTkg6IGZpeCBjcmFzaCB3aGVuIGdsb2IgaGFzIHdyb25nCgkgIG51bWJlciBvZiBhcmd1bWVudHMKCjIwMDYtMDYtMjcgMDc6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0yNiAxNToyNyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBXaGVuIHVzaW5nIGEKCSAgd29ya2luZyBkaXJlY3RvcnkgZm9yIHRoZSBjdXN0b20gY29tbWFuZCBkbyBub3QgY29udmVydCBwYXRocyB0bwoJICBiZSByZWxhdGl2ZSB0byB0aGUgYnVpbGQgZGlyZWN0b3J5LgoKMjAwNi0wNi0yNiAxMjowNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyAzNDQ0LAoJICByZW1vdmUgdHJhaWxpbmcgLiBpbiBsaWIgbmFtZXMKCjIwMDYtMDYtMjYgMTE6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBmaXggc3ViZGlyIGlzc3VlCgoyMDA2LTA2LTI2IDEwOjU3ICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuaDogRU5IOiBDbGFyaWZpZWQgZG9jdW1lbnRhdGlvbiBvZiBFWElTVFMgYW5kCgkgIElTX0RJUkVDVE9SWSBtb2Rlcy4KCjIwMDYtMDYtMjYgMDk6NDYgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL1JFQURNRTogQlVHOiBBZGRlZCBtaXNzaW5nIHJlbGVhc2Ugc3RlcHMuCgoyMDA2LTA2LTI2IDA3OjE1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMjUgMTU6MTggIGthcnRoaWsKCgkqIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHg6IEJVRzogVGhlIG9wZXJhdG9yCgkgIHByZWNlZGVuY2UgaXMgW10gZm9sbG93ZWQgYnkgKi4gQ2FsbGluZyB0aGlzIG1ldGhvZCB3YXMgY2F1c2luZwoJICBvdXQgb2YgYXJyYXkgaW5kZXggc2VnZmF1bHRzIGJvdW5kcwoKMjAwNi0wNi0yNSAwNzoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTI0IDA3OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMjMgMDc6MDggIGFuZHkKCgkqIE1vZHVsZXMvQ1Rlc3QuY21ha2U6IEVOSDogRGVmYXVsdCBkcm9wIG1ldGhvZCBodHRwCgoyMDA2LTA2LTIyIDE1OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21NZXNzYWdlQ29tbWFuZC5jeHg6IEVOSDogVXNlIENNYWtlJ3MgZXJyb3IgcmVwb3J0aW5nCgkgIG1lY2hhbmlzbQoKMjAwNi0wNi0yMiAxNTozMSAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBESXNwbGF5IHRoZSBsaXN0IGZpbGUKCSAgc3RhY2sgd2hlbiBkaXNwbGF5aW5nIGVycm9ycwoKMjAwNi0wNi0yMiAxMDozNSAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBrd3N5cy9EaXJlY3RvcnkuY3h4LCBrd3N5cy9EaXJlY3RvcnkuaHh4LmluOgoJICBFTkg6IGFkZCBhIGhpZ2hlciBwZXJmb3JtYW5jZSBtZXRob2QgdG8gZ2V0IHRoZSBudW1iZXIgb2YgZmlsZXMKCSAgaW4gYSBkaXJlY3RvcnkKCjIwMDYtMDYtMjIgMDg6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0yMSAwNzo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTIwIDEzOjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBhdm9pZAoJICBjcmFzaCBpbiBzcHJpbnRmCgoyMDA2LTA2LTIwIDA5OjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBmaXggbGluZSBsZW5ndGgKCSAgYW5kIHdhcm5pbmcKCjIwMDYtMDYtMTkgMTQ6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaDogQlVHOiBEZWxheQoJICByZWxhdGl2ZSBwYXRoIGNvbmZpZ3VyYXRpb24gdW50aWwgYXMgbGF0ZSBhcyBwb3NzaWJsZSB0byBtYWtlCgkgIHN1cmUgdGhlIHNvdXJjZS9iaW5hcnkgZGlyIGFyZSBzZXQuICBUaGlzIGlzIGEgd29yay1hcm91bmQgZm9yCgkgIGxhY2sgb2YgYSBtb3JlIHN0cnVjdHVyZWQgd2F5IG9mIGNyZWF0aW5nIHRoZSBnbG9iYWwgZ2VuZXJhdG9yLgoKMjAwNi0wNi0xOSAxMTozNCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogZml4IGZvciBkZXBlbmRlbnQgdGFyZ2V0cwoKMjAwNi0wNi0xOSAxMDowNyAga2luZwoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBFTkg6IERvIG5vdCBzZWFyY2ggZm9yIFgxMSBpZiBpdCBpcwoJICBhbHJlYWR5IGZvdW5kLgoKMjAwNi0wNi0xOSAwOTo0OSAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBDT01QOiBGaXggY29udmVyc2lvbiB3YXJuaW5nLgoKMjAwNi0wNi0xOCAyMDowNSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZG8gbm90IHVzZSB0aGUKCSAgbGluayBzY3JpcHQgb24gd2luZG93cwoKMjAwNi0wNi0xOCAxMTo1MCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBEbyBub3Qgd3JpdGUKCSAgbGluayBzY3JpcHQgbGluZXMgdGhhdCB1c2UgdGhlICc6JyBjb21tYW5kIHdoaWNoIGlzIHN1cHBvc2VkIHRvCgkgIGJlIGEgbm8tb3AgYW55d2F5LgoKMjAwNi0wNi0xOCAwOToyMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTE3IDE5OjMyICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IE5lZWQgdG8gdXNlCgkgIGRpZmZlcmVudCBsaW5rIHNjcmlwdCBuYW1lIHdoZW4gcmVsaW5raW5nLgoKMjAwNi0wNi0xNyAwNzo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTE2IDE2OjI5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiB3YXJuaW5nIGZpeAoKMjAwNi0wNi0xNiAxNToyOSAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogY2xlYW51cCBob3cKCSAgcHJvZ3Jlc3MgaXMgcmVwb3J0ZWQgZm9yIGluZGl2aWR1YWwgdGFyZ2V0cyB0byBmaXggYW4gaW50ZWdlcgoJICBtYXRoIGlzc3VlCgoyMDA2LTA2LTE2IDE0OjQ1ICBhbmR5CgoJKiBNb2R1bGVzLzogRmluZFF0NC5jbWFrZSwgTWFjcm9BZGRGaWxlRGVwZW5kZW5jaWVzLmNtYWtlOiBFTkg6CgkgIFVwZGF0ZXMgZnJvbSBLREUKCjIwMDYtMDYtMTYgMTQ6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6IEVOSDogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA2LTE2IDE0OjAyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBidWcgMzQxNwoKMjAwNi0wNi0xNiAwNzo0NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTE1IDIxOjQzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IGFkZCBhIGNvbW1lbnQKCjIwMDYtMDYtMTUgMTY6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBQcm92aWRlIGFjY2VzcyB0byBDTUFLRV9QQVRDSF9WRVJTSU9OCgkgIGluIENNYWtlIGNvZGUuCgoyMDA2LTA2LTE1IDE2OjM3ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBQcmUtaW5zdGFsbCBydWxlcwoJICBmb3IgYSB0YXJnZXQgc2hvdWxkIG5vdCBoYXZlIHRhcmdldC1sZXZlbCBkZXBlbmRlbmNpZXMuICBFYWNoCgkgIHRhcmdldCBjYW4gYmUgcmUtbGlua2VkIGluZGVwZW5kZW50bHkgYXMgbG9uZyBhcyB0aGUgb3JpZ2luYWwKCSAgdGFyZ2V0cyBhcmUgdXAgdG8gZGF0ZS4KCjIwMDYtMDYtMTUgMTY6MTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YgbGluayBydWxlcyBpbnRvCgkgIHNjcmlwdCBmaWxlcyBleGVjdXRlZCBieSBhIGNtYWtlIC1FIGNvbW1hbmQgaW4gb3JkZXIgdG8gc3VwcG9ydAoJICBsb25nZXIgbGluayBsaW5lcy4gIFRoaXMgaXMgbmVlZGVkIG9ubHkgb24gcGxhdGZvcm1zIHdpdGhvdXQKCSAgcmVzcG9uc2UgZmlsZSBzdXBwb3J0IGFuZCB0aGF0IG1heSBoYXZlIHdlYWsgc2hlbGxzLgoKMjAwNi0wNi0xNSAxNDo0MCAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOgoJICBBZGRlZCBPcHRpb25fVmVyYmF0aW0gdG8gcnVuIHdob2xlIGNvbW1hbmQgbGluZXMgZGlyZWN0bHkuCgoyMDA2LTA2LTE1IDExOjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbWFrZS5oOiBFTkg6IGZpeCBsaW5lbGVuZ3RoCgoyMDA2LTA2LTE1IDEwOjUxICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oOgoJICBCVUc6IENsYXJpZmllZCBkb2N1bWVudGF0aW9uIGFib3V0IGN1c3RvbSBjb21tYW5kIG91dHB1dHMgYW5kCgkgIGN1c3RvbSB0YXJnZXQgZGVwZW5kZW5jaWVzLgoKMjAwNi0wNi0xNSAxMDoyNCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IFVua25vd24gY29tbWFuZCBpbnZvY2F0aW9ucyBzaG91bGQgYmUKCSAgZmF0YWwgZXJyb3JzLgoKMjAwNi0wNi0xNSAxMDoxMiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgY21UYXJnZXQuY3h4OiBFTkg6IEFkZGVkIHRhcmdldCBwcm9wZXJ0eQoJICBJTlNUQUxMX1JQQVRIX1VTRV9MSU5LX1BBVEggdG8gYXBwZW5kIHRoZSBsaW5rZXIgc2VhcmNoIHBhdGgKCSAgZGlyZWN0b3JpZXMgbm90IGluc2lkZSB0aGUgcHJvamVjdCB0byB0aGUgSU5TVEFMTF9SUEFUSAoJICBhdXRvbWF0aWNhbGx5LiAgVGhlIHByb3BlcnR5IGlzIGluaXRpYWxpemVkIGJ5IHRoZSB2YXJpYWJsZQoJICBDTUFLRV9JTlNUQUxMX1JQQVRIX1VTRV9MSU5LX1BBVEggd2hlbiB0aGUgdGFyZ2V0IGlzIGNyZWF0ZWQuCgoyMDA2LTA2LTE1IDA5OjQ1ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEFsd2F5cyBjaGVjayBkZXBlbmRlbmN5IGludGVncml0eSB3aGV0aGVyCgkgIG9yIG5vdCBDTWFrZSB3aWxsIHJlLXJ1biBiZWNhdXNlIHRoZSBnZW5lcmF0b3Igbm8gbG9uZ2VyIGNoZWNrcwoJICBpbnRlZ3JpdHkgZHVyaW5nIGdlbmVyYXRpb24uCgoyMDA2LTA2LTE1IDA3OjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMTQgMTM6NDEgIGhvZmZtYW4KCgkqIERhcnRDb25maWcuY21ha2U6IEVOSDogaGFuZGxlIHRoZSBmYWN0IHRoZSBwdWJsaWMgY2FuIG5vIGxvbmdlcgoJICBkbyBmdHAKCjIwMDYtMDYtMTQgMTI6MjggIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tDWFhTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF9zb3VuZC5jbWFrZSwgTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0QmlnRW5kaWFuLmNtYWtlLCBNb2R1bGVzL1Rlc3RDWFhBY2NlcHRzRmxhZy5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLCBNb2R1bGVzL1Rlc3RGb3JTU1RSRUFNLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JTVEROYW1lc3BhY2UuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtYWtlLmgsIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2UsCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY21jdXJsL0NNYWtlL0NoZWNrVHlwZVNpemUuY21ha2UsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZS9UcnlDb21waWxlRnJvbVNvdXJjZS5jbWFrZTogRU5IOgoJICBjZW50cmFsaXplZCBsb2NhaXRvbiBvZiBDTWFrZUZpbGVzIHNldHRpbmcKCjIwMDYtMDYtMTMgMTA6MjggIG1hcnRpbmsKCgkqIENNYWtlLnBkZiwgQ01ha2UucnRmOiBFTkg6IHJlbW92ZWQgb2xkIG91dCBvZiBkYXRlIGZpbGVzLCBvbmxpbmUKCSAgYW5kIGNvbW1hbmQgbGluZSBoZWxwIGlzIGJldHRlcgoKMjAwNi0wNi0xMyAwOTo0NiAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDYtMTMgMDg6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0xMiAxNTo0NCAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA2LTEyIDE0OjIxICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IEFkZCBzdXBwb3J0IGZvciBvdmVyd3JpdGluZyB0aGUgbmFtZSBvZgoJICB0aGUgZmlsZSBDUGFja0NvbmZpZy5jbWFrZSBhbmQgQ1BhY2tTb3VyY2VDb25maWcuY21ha2UKCjIwMDYtMDYtMTIgMTM6MTcgIG1hcnRpbmsKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiByZW1vdmVkIGxvZ28gaW5mbyBmcm9tCgkgIHRoZSBtYW5pZmVzdCB0b29sCgoyMDA2LTA2LTEyIDEzOjA1ICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuaDogQlVHOiBQYXRjaCBmcm9tIE1pZ3VlbCBBLgoJICBGaWd1ZXJvYS1WaWxsYW51ZXZhIGZvciBmaXhpbmcgZG9jdW1lbnRhdGlvbi4KCjIwMDYtMDYtMTIgMTI6MTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBjbGVhbnVwCgoyMDA2LTA2LTEyIDExOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4OiBFTkg6IHNvbWUgY2xlYW51cCB0bwoJICBwcm9ncmVzcwoKMjAwNi0wNi0xMiAxMDoyMiAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBTd2l0Y2ggdG8gaHR0cCBzdWJtaXNzaW9uCgoyMDA2LTA2LTEyIDA3OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMTEgMDc6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0xMCAwODoxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTA5IDE1OjQ5ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRaTElCLmNtYWtlOiBCVUc6IGRvbid0IGFwcGVuZCB0byBaTElCX05BTUVTIEVOSDogYWxzbwoJICBjaGVjayBmb3IgemRsbCBvbiB3aW5kb3dzIEVOSDogaG9ub3IgUkVRVUlSRUQgYW5kIFFVSUVUTFkKCgkgIEFsZXgKCjIwMDYtMDYtMDkgMTM6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DUGFjay86IGJpbGxzLWNvbW1lbnRzLnR4dCwKCSAgY21DUGFja0N5Z3dpbkJpbmFyeUdlbmVyYXRvci5jeHgsIGNtQ1BhY2tDeWd3aW5CaW5hcnlHZW5lcmF0b3IuaCwKCSAgY21DUGFja0dlbmVyYXRvcnMuY3h4LCBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIGN5Z3dpbi5yZWFkbWU6IEVOSDogY2hlY2sgaW4gcGFydGlhbAoJICBjeWd3aW4gZ2VuZXJhdG9yCgoyMDA2LTA2LTA5IDA4OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMDggMDc6NDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0wNyAwODo0NyAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlbWFpbi5jeHg6IEVOSDogYWRkIGRvY3MgZm9yIGRlYnVnIHRyeWNvbXBpbGUKCjIwMDYtMDYtMDYgMTI6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IC9UUCBmb3IgYyBjb2RlCgoyMDA2LTA2LTA2IDA5OjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogZml4IGZvciByZXBsYWNlbWVudCBvZiBAdmFyIEAgb25seQoJICBsZWdhbCB2YXJpYWJsZSBuYW1lcyBzaG91bGQgYmUgcmVwbGFjZWQKCjIwMDYtMDYtMDYgMDc6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNi0wNSAxNToyOCAga2luZwoKCSogU291cmNlL2NtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHg6IENPTVA6IFJlbW92ZWQgdW51c2VkCgkgIHZhcmlhYmxlLgoKMjAwNi0wNi0wNSAxNDozOCAga2luZwoKCSogU291cmNlL2NtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHg6IEJVRzogQWx3YXlzIGNoZWNrIHdoZXRoZXIgYQoJICBzdWJkaXJlY3RvcnkgaXMgYmVsb3cgdGhlIHRvcCBvZiB0aGUgc291cmNlIGJlZm9yZSBjb21wdXRpbmcgdGhlCgkgIGJpbmFyeSB0cmVlIGF1dG9tYXRpY2FsbHkuICBFdmVuIHdoZW4gdGhlIHNvdXJjZSBpcyBhIHJlbGF0aXZlCgkgIHBhdGggaXQgbWF5IGNvbnRhaW4gLi4vIHdoaWNoIHdvdWxkIGFsbG93IGl0IHRvIGJlIG91dHNpZGUgdGhlCgkgIHNvdXJjZSB0cmVlLgoKMjAwNi0wNi0wNSAxNDozMiAgbWFydGluawoKCSogU291cmNlLzogY21EZXBlbmRzQy5jeHgsIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IGxpbmUgbGVuZ3RocwoKMjAwNi0wNi0wNSAxNDoxMyAga2luZwoKCSogY21ha2VfdW5pbnN0YWxsLmNtYWtlLmluOiBCVUc6IFVzZSBwcm9wZXIgc2lnbmF0dXJlIGZvcgoJICBFWEVDX1BST0dSQU0gdG8gZ2V0IHJldHVybiB2YWx1ZSBvZiBjbWFrZSAtRSByZW1vdmUuCUFsc28gZml4ZWQKCSAgc3BlbGxpbmcgZXJyb3IgaW4gbWVzc2FnZSwgYW5kIG1hZGUgbm9uLWV4aXN0aW5nIGZpbGVzIG5vdCBhCgkgIGZhdGFsIGVycm9yIHNvIHRoYXQgdGhlIHJlc3Qgb2YgdGhlIGZpbGVzIGFyZSByZW1vdmVkLgoKMjAwNi0wNi0wNSAxMzo0NSAga2luZwoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtRmlsZUNvbW1hbmQuaCwgY21UYXJnZXQuY3h4OiBFTkg6CgkgIENoYW5naW5nIHNoYXJlZCBsaWJyYXJ5IHZlcnNpb25lZCBmaWxlIG5hbWVzIG9uIE9TWCB0byBjb25mb3JtIHRvCgkgIHRoYXQgcGxhdGZvcm0ncyBjb252ZW50aW9uLgoKMjAwNi0wNi0wNSAxMToyMiAga2luZwoKCSogU291cmNlL2t3c3lzL1Rlcm1pbmFsLmM6IEVOSDogQWRkZWQgcnh2dC11bmljb2RlIGFuZCBjeWd3aW4KCSAgdGVybWluYWxzIGZvciBjb2xvciBzdXBwb3J0LgoKMjAwNi0wNi0wNSAwNzoyNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA2LTA0IDA3OjIyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMDMgMTg6NDMgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jOiBFTkg6IEhhbmRsZSAnc2NyZWVuJyB0ZXJtaW5hbC4gVGhhbmsgeW91CgkgIFRob21hcyBaLgoKMjAwNi0wNi0wMyAxODo0MyAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDYtMDMgMDk6NDggIGtpbmcKCgkqIFRlc3RzL1dyYXBwaW5nL1dyYXAuYzogQ09NUDogTW9yZSBmaXhlcyBmb3Igbm9uLUFOU0kgQyBjb21waWxlcnMuCgoyMDA2LTA2LTAzIDA5OjQyICBraW5nCgoJKiBUZXN0cy9XcmFwcGluZy9XcmFwLmM6IENPTVA6IEZpeCBmb3Igbm9uLUFOU0kgQyBjb21waWxlcnMuCgoyMDA2LTA2LTAzIDA3OjIyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDYtMDIgMTI6MTkgIGtpbmcKCgkqIFRlc3RzL1dyYXBwaW5nLzogV3JhcC5jLCBmYWtlZmx1aWQuY3h4OiBCVUc6IEN1c3RvbSBjb21tYW5kcwoJICBzaG91bGQgYWN0dWFsbHkgZ2VuZXJhdGUgdGhlIGZpbGVzIHRoZXkgY2xhaW0gdG8gZ2VuZXJhdGUuCgoyMDA2LTA2LTAyIDExOjI2ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmg6IEVOSDogRGlzcGxheSBjbWFrZSBpbnN0YWxsIGluZm9ybWF0aW9uCgkgIHdoZW4gaW4gdmVyYm9zZSBtb2RlCgoyMDA2LTA2LTAxIDE1OjUxICBraW5nCgoJKiBTb3VyY2UvOiBjbUJ1aWxkQ29tbWFuZC5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuaCwgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuY3h4OiBCVUc6IGNtR2xvYmFsR2VuZXJhdG9yOjpCdWlsZAoJICBzaG91bGQgbm90IGFsd2F5cyB1c2UgdGhlIC9mYXN0IHRhcmdldCBuYW1lIGJlY2F1c2UgZGVwZW5kZW5jeQoJICBjaGVja2luZyBpcyBvZnRlbiByZXF1aXJlZC4gIEl0IG5vdyB0YWtlcyBhbiBhcmd1bWVudCBzcGVjaWZ5aW5nCgkgIHdoZXRoZXIgdG8gdXNlIHRoZSAvZmFzdCB0YXJnZXQgbmFtZSwgYW5kIHRoZSBhcmd1bWVudCBpcwoJICBjdXJyZW50bHkgb25seSB0cnVlIGZvciB0cnktY29tcGlsZXMuCgoyMDA2LTA2LTAxIDE1OjA4ICBraW5nCgoJKiBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBBZGp1c3RtZW50IG9mCgkgIGluc3RhbGxfbmFtZSB3aXRoIGluc3RhbGxfbmFtZV90b29sIHNob3VsZCBhY2NvdW50IGZvciBERVNURElSCgkgIHdoZW4gc3BlY2lmeWluZyB0aGUgZmlsZSB0byBiZSBjaGFuZ2VkLgoKMjAwNi0wNi0wMSAxNDo0MyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IE1vdmVkIGdlbmVyYXRpb24gb2YgdGhlCgkgIC9mYXN0IHZlcnNpb24gb2YgR0xPQkFMX1RBUkdFVCB0YXJnZXRzIHRvIHRoZSBwcm9wZXIgcGxhY2UgaW4gdGhlCgkgIGxvY2FsIGdlbmVyYXRvciBpbnN0ZWFkIG9mIGluIHRoZSBnbG9iYWwgZ2VuZXJhdG9yLiAgQWxzbyBtYWRlCgkgIHRoZSBpbnN0YWxsL2Zhc3QgdGFyZ2V0IG5vdCBkZXBlbmQgb24gdGhlIGFsbCB0YXJnZXQuCgoyMDA2LTA2LTAxIDE0OjA5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogQWRkZWQgL2Zhc3QgdGFyZ2V0cyBpbgoJICBzdWJkaXJlY3RvcnkgbWFrZWZpbGVzLiAgUmVtb3ZlZCBib2d1cyBJTlNUQUxMXyovZmFzdCB0YXJnZXRzLgoJICBBbHNvIGZpeGVkIHByZWluc3RhbGwvZmFzdCB0YXJnZXQuCgoyMDA2LTA2LTAxIDEzOjAxICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsIGNvbmZpZy5oLmluLCBmb28uaW46IEVOSDoKCSAgQWRkZWQgdGVzdCBmb3IgZ2VuZXJhdGlvbiBvZiBmaWxlcyBsaXN0ZWQgZXhwbGljaXRseSBhcyBzb3VyY2VzCgkgIGJ1dCBub3QgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mIGEgdGFyZ2V0LgoKMjAwNi0wNi0wMSAxMTo0NSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBDdXN0b20gY29tbWFuZCBvdXRwdXRzCgkgIGxpc3RlZCBleHBsaWNpdGx5IGFzIHNvdXJjZSBmaWxlcyBpbiBhIHRhcmdldCBzaG91bGQgYmUgZ2VuZXJhdGVkCgkgIHdoZXRoZXIgb3Igbm90IGFuIG9iamVjdCBmaWxlIGluIHRoZSB0YXJnZXQgbmVlZHMgdGhlbS4gIFRoaXMKCSAgdXNlZnVsIGFuZCBtYWtlcyBNYWtlZmlsZSBidWlsZHMgbW9yZSBjb25zaXN0ZW50IHdpdGggVlMgSURFCgkgIGJ1aWxkcy4KCjIwMDYtMDYtMDEgMDk6MzggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogY2hhbmdlIHRoZSB2ZXJzaW9uCgkgIG51bWJlciB0byBtYXRjaCB0aGUgcmVsZWFzZSBmb3IgY3lnd2luCgoyMDA2LTA2LTAxIDA4OjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMzEgMTE6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRm9yRWFjaENvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHgsCgkgIGNtTWFjcm9Db21tYW5kLmN4eCwgY21XaGlsZUNvbW1hbmQuY3h4OiBFTkg6IHJlZHVjZSBzdHJpbmcKCSAgY29uc3RydWN0IGRlbGV0ZSBvcHMKCjIwMDYtMDUtMzEgMDg6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0zMCAxNjoyMyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEZpeCBwcm9ncmVzcyB3aGVuIHRvdGFsCgkgIG51bWJlciBvZiBzb3VyY2UgZmlsZXMgaXMgbGVzcyB0aGFuIDEwMC4KCjIwMDYtMDUtMzAgMTE6MTUgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogRml4ZWQgY21ha2UgLUUgcmVtb3ZlIHJldHVybiBjb2RlLgoKMjAwNi0wNS0zMCAwODowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTI5IDA4OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMjggMDc6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0yNyAwNzo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTI2IDA3OjMyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMjUgMTQ6MTYgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlOiBFTkg6IEFkZGluZyBhZHZhbmNlZCBvcHRpb24KCSAgQ01BS0VfQ09MT1JfTUFLRUZJTEUgZm9yIG1ha2VmaWxlIGdlbmVyYXRvcnMgd2l0aCBkZWZhdWx0IE9OLgoKMjAwNi0wNS0yNSAxNDoxNiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IFNsaWdodCBpbXByb3ZlbWVudCBpbgoJICBnZW5yZWF0aW9uIHRpbWUgYnkgcmVjb3JkaW5nIHRoZSBzZXR0aW5nIG9mIENNQUtFX0NPTE9SX01BS0VGSUxFCgkgIGluIGFuIGl2YXIgb2YgZWFjaCBsb2NhbCBnZW5lcmF0b3IgYXQgdGhlIGJlZ2lubmluZyBvZgoJICBnZW5lcmF0aW9uLiAgVGhpcyBhdm9pZHMgbWFueSByZXBlYXRlZCB0YWJsZSBsb29rdXBzLgoKMjAwNi0wNS0yNSAxMTo1NiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGFkZCBxdG1haW4gdG8gZmluZHF0CgoyMDA2LTA1LTI1IDEwOjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCB0byBwcm9ncmVzcyBmb3Igc21hbGwKCSAgcHJvamVjdHMKCjIwMDYtMDUtMjUgMTA6MjEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvQ1Rlc3QuY21ha2U6IEVOSDogcmVtb3ZlIGRlYnVnZ2luZyBvdXRwdXQKCjIwMDYtMDUtMjUgMDk6NDcgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kcy5jeHgsIGNtRGVwZW5kcy5oLCBjbURlcGVuZHNDLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtYWtlLmN4eDogQlVHOiBVcGRhdGVkIE1ha2VmaWxlIGRlcGVuZGVuY3kgc2Nhbm5pbmcgdG8gcHJvdmlkZSBhCgkgIGZ1bGwgbG9jYWwgZ2VuZXJhdG9yIHRvIHRoZSBkZXBlbmRlbmN5IHNjYW5uZXIgdG8gZG8gcHJvcGVyIHBhdGgKCSAgY29udmVyc2lvbnMuCVRoaXMgYWxsb3dzIHRoZSBydWxlcyB3cml0dGVuIGludG8gdGhlIGRlcGVuZC5tYWtlCgkgIGZpbGVzIHRvIHVzZSB0aGUgc2FtZSByZWxhdGl2ZSBwYXRoIGNvbnZlcnNpb24gYXMgdGhvc2Ugd3JpdHRlbgoJICBpbnRvIHRoZSBidWlsZC5tYWtlIGZpbGVzLiAgU2V2ZXJhbCBwcmV2aW91cyBjaGFuZ2VzIGFkZGVkIG1vcmUKCSAgYW5kIG1vcmUgaW5mb3JtYXRpb24gZm9yIHVzZSBieSB0aGUgZGVwZW5kZW5jeSBzY2FubmVyIGFuZCBpdCB3YXMKCSAgY29udmVyZ2luZyB0byBoYXZpbmcgdGhlIGZ1bGwgbG9jYWwgZ2VuZXJhdG9yIGFueXdheS4KCjIwMDYtMDUtMjUgMDc6MzQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0yNCAxMDoxMyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogRG8gbm90IGxlYWsgZ2xvYmFsIHRhYmxlIG9mCgkgIHByb2Nlc3Nlcy4KCjIwMDYtMDUtMjQgMTA6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGZpeCBjb21waWxlciB3YXJuaW5ncyBhbmQKCSAgcG9zaWJseSBqYXZhIHRlc3QKCjIwMDYtMDUtMjQgMDc6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0yMyAxNToyNyAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogQWRkZWQgbWlzc2luZwoJICBpbmNsdWRlIGZvciBpc3NwYWNlLgoKMjAwNi0wNS0yMyAxNTowMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBGaXggcGFyc2luZyBvZgoJICBkZWZpbml0aW9ucyB0byBzdXBwb3J0IFJFTU9WRV9ERUZJTklUSU9OUy4KCjIwMDYtMDUtMjMgMTI6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IEZpeAoJICBSRU1PVkVfREVGSU5JVElPTlMgY29tbWFuZCB0byBub3QgcmVtb3ZlIHN1YnN0cmluZ3MuCgoyMDA2LTA1LTIzIDEyOjM4ICBkYXZpZC5jb2xlCgoJKiBVdGlsaXRpZXMvY210YXIvOiBDTWFrZUxpc3RzLnR4dCwgYXBwZW5kLmMsIGNvbmZpZy5oLmluLAoJICBleHRyYWN0LmMsIGhhbmRsZS5jLCBjb21wYXQvZm5tYXRjaC5jOiBDT01QOiBGaXggd2FybmluZ3Mgb24KCSAgQm9ybGFuZCBkYXNoYm9hcmRzLi4uCgoyMDA2LTA1LTIzIDExOjQ4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRU5IOiBSZS1lbmFibGluZyBTSUdDSExEIGhhbmRsaW5nCgkgIGltcGxlbWVudGF0aW9uIHdpdGggYSBmaXggZm9yIEN5Z3dpbi4KCjIwMDYtMDUtMjMgMTA6NDAgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogRU5IOiBBZGQgYWJpbGl0eSB0byBmaW5kIFZUSyA1IHdpdGhvdXQKCSAgdXNlciBoZWxwLgoKMjAwNi0wNS0yMyAwOTo1OCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBGaW5pc2hlZCBmaXgKCSAgdG8gYnVnIzMyMjkgYW5kIGJ1ZyMzMjcyLgoKMjAwNi0wNS0yMyAwOTo1OCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBGaXggZm9yIHNwYWNlcyBpbiBwYXRoIHRvIGJ1aWxkIGRpcmVjdG9yeSB3aXRoIG5ldyBwcm9ncmVzcwoJICBzdHVmZi4KCjIwMDYtMDUtMjMgMDk6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtTWFjcm9Db21tYW5kLmN4eCwKCSAgY21NYWNyb0NvbW1hbmQuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIGNtYWtlLmN4eDogRU5IOgoJICBhbHdheXMgY29tcGlsZSBwcm9ncmVzcwoKMjAwNi0wNS0yMyAwNzo0MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTIyIDE2OjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBDT01QOiBmaXggYm9vdHN0cmFwCgoyMDA2LTA1LTIyIDE2OjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBDT01QOiBmaXggbWFjIHdhcm5pbmcKCjIwMDYtMDUtMjIgMTU6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogcGFydCBvZiB0aGUgcHJvZ3Jlc3MgcmVwb3J0aW5nIGNoZWNraW4KCjIwMDYtMDUtMjIgMTU6MTEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBCVUc6IFJldmVydGluZyBwcmV2aW91cyBjaGFuZ2UgdW50aWwKCSAgaXQgY2FuIGJlIGZpeGVkIG9uIEN5Z3dpbi4KCjIwMDYtMDUtMjEgMTQ6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMjEgMTA6MjggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFTkg6IEFkZGVkIHRlc3QgOCB0byB0ZXN0CgkgIGdyYW5kY2hpbGRyZW4gcnVubmluZyBhZnRlciBjaGlsZHJlbiBleGl0LgoKMjAwNi0wNS0yMSAxMDoyNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTIxIDEwOjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEJVRzogRml4ZWQgZGVhZGxvY2sgY29uZGl0aW9uIHdoZW4KCSAgZ3JhbmRjaGlsZHJlbiBhcmUgcnVubmluZyBhZnRlciB0aGUgY2hpbGRyZW4gZXhpdC4KCjIwMDYtMDUtMjEgMTA6MjYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFTkg6IEltcGxlbWVudGVkIGhhbmRsaW5nIG9mIFNJR0NITEQKCSAgdG8gZGV0ZWN0IHRoZSB0ZXJtaW5hdGlvbiBvZiBpbW1lZGlhdGUgY2hpbGRyZW4uICBUaGlzIGFsbG93cwoJICBncmFuZGNoaWxkcmVuIHRvIHJlbWFpbiBydW5uaW5nIGFmdGVyIHRoZSBjaGlsZHJlbiBleGl0LgoKMjAwNi0wNS0yMCAxODo1MCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEVOSDogRW5hYmxpbmcgcHJvY2VzcyB0cmVlIGtpbGxpbmcgb24KCSAgQ3lnd2luLgoKMjAwNi0wNS0yMCAwODowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTE5IDE2OjU3ICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZFF0NC5jbWFrZSwgS0RFM01hY3Jvcy5jbWFrZSwga2RlM3VpYy5jbWFrZTogQlVHOgoJICBrZGUzOiB1c2UgUVRfVUlDX0VYRUNVVEFCTEUgaW5zdGVhZCBvZiBzaW1wbHkgdWljIEJVRzogdXNlCgkgIHFvdXRpbmcgZm9yIHRoZSBwYXRoIHRvIFF0NCBtb2MgYW5kIHVpYywgc2hvdWxkIGhlbHAgd2l0aCBwYXRocwoJICB3aXRoIHNwYWNlcwoKCSAgQWxleAoKMjAwNi0wNS0xOSAxNTo1MyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjcmVhdGUtY21ha2UtcmVsZWFzZS5jbWFrZSwKCSAgZGFzaG1hY21pbmkyX3JlbGVhc2UuY21ha2U6IEVOSDogcmVsZWFzZSBzY3JpcHRzCgoyMDA2LTA1LTE5IDE1OjUxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21jdXJsL21wcmludGYuYzogRU5IOiBmaXggZm9yIHVjbGliYwoKMjAwNi0wNS0xOSAxMzowMiAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOiBmaXggZm9yCgkgIHZ0ayA0LjQgYW5kIG90aGVyIHByb2plY3RzIHRoYXQgbWF5IHRyeSB0byBsaW5rIHRvIGEgbW9kdWxlCgoyMDA2LTA1LTE5IDA5OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNi0wNS0xOSAwODoxNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTE4IDIzOjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlbWFpbi5jeHg6IEVOSDogZml4IGNyYXNoZXMgd2hlbiBjb21tYW5kCgkgIGxpbmUgYXJndW1lbnRzIGFyZSBub3QgZm9sbG93ZWQgYnkgdGhlIGNvcnJlY3QgbnVtYmVyIG9mCgkgIGFyZ3VtZW50cwoKMjAwNi0wNS0xOCAxNDozNSAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZml4IGlzc3VlIHdpdGgKCSAgdG9vIG1hbnkgZmFzdCB0YXJnZXRzIGJlaW5nIGxpc3RlZAoKMjAwNi0wNS0xOCAxMzo1MCAgbWFydGluawoKCSogU291cmNlLzogY21Gb3JFYWNoQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuaCwKCSAgY21JZkNvbW1hbmQuY3h4LCBjbVdoaWxlQ29tbWFuZC5jeHgsIGNtV2hpbGVDb21tYW5kLmg6IEVOSDogYWxsb3cKCSAgbG9vc2UgbG9vcCBjb25zdHJ1Y3RzCgoyMDA2LTA1LTE4IDEwOjI4ICBraW5nCgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuYy5pbjogQlVHOiBGaXggc2lnbmF0dXJlIG9mIG1haW4gdG8gd29yawoJICBvbiBib3RoIHN0cmljdCBBTlNJIGFuZCBub24tQU5TSSBDIGNvbXBpbGVycy4KCjIwMDYtMDUtMTggMDg6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0xNyAwODowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTE2IDE0OjA0ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlzdENvbW1hbmQuaCwgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBtb3ZlIGNoYW5nZXMKCSAgZnJvbSBtYWluIHRyZWUgdG8gYnJhbmNoCgoyMDA2LTA1LTE2IDEzOjQxICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IEFkZGVkCgkgIG1pc3NpbmcgY2QgY29tbWFuZCBiZWZvcmUgcnVubmluZyBleGVjdXRhYmxlIHZlcnNpb24gc3ltbGluawoJICBydWxlLiAgVGhpcyBhZGRyZXNzZXMgYnVnIzMyMjkuCgoyMDA2LTA1LTE2IDEzOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDYtMDUtMTYgMDk6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6CgkgIEVOSDogZml4IHJlYnVpbGQgcHJvYmxlbSB3aXRoIHhjb2RlIGFuZCB1bml2ZXJzYWwgYmluYXJpZXMKCjIwMDYtMDUtMTYgMDg6NDIgIGFuZHkKCgkqIFNvdXJjZS86IGNtTGlzdENvbW1hbmQuY3h4LCBjbUxpc3RDb21tYW5kLmg6IFNUWUxFOiBGaXggc3R5bGUKCjIwMDYtMDUtMTYgMDg6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0xNSAxODowNSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuaCwKCSAgU291cmNlL2NtRGVwZW5kc0phdmFQYXJzZXIuY3h4LCBTb3VyY2UvY21FeHByUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwgU291cmNlL2NtTGlzdENvbW1hbmQuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5oLCBTb3VyY2UvY21ha2UuY3h4LAoJICBUZXN0cy9DTWFrZVRlc3RzL0xpc3RUZXN0LmNtYWtlLmluOiBFTkg6IG1lcmdlIGZyb20gbWFpbiB0cmVlCgoyMDA2LTA1LTE1IDEzOjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogUEVSRjogcGVyZm9ybWFuY2UKCSAgaW1wcm92ZW1lbnQKCjIwMDYtMDUtMTUgMTM6MDIgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21ha2UuY3h4OiBFTkg6IEFkZCBzaW1wbGUKCSAgcHJvZ3Jlc3MgcmVwb3J0aW5nIGR1cmluZyBtYWtlCgoyMDA2LTA1LTE1IDEwOjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLmgsIGNtRGVwZW5kc0phdmFQYXJzZXIuY3h4LAoJICBjbUV4cHJQYXJzZXIuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5oOiBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA1LTE1IDEwOjE0ICBhbmR5CgoJKiBTb3VyY2UvY21MaXN0Q29tbWFuZC5jeHgsIFRlc3RzL0NNYWtlVGVzdHMvTGlzdFRlc3QuY21ha2UuaW46CgkgIEVOSDogRml4IElOU0VSVCB0byBhbGxvdyBpbnNlcnRpbmcgdG8gZW1wdHkgbGlzdAoKMjAwNi0wNS0xNSAwOTo1NyAgYW5keQoKCSogU291cmNlL2NtTGlzdENvbW1hbmQuY3h4LCBTb3VyY2UvY21MaXN0Q29tbWFuZC5oLAoJICBUZXN0cy9DTWFrZVRlc3RzL0xpc3RUZXN0LmNtYWtlLmluOiBFTkg6IENoYW5nZSBSRU1PVkUgYW5kCgkgIFJFTU9WRV9JVEVNIHRvIFJFTU9WRV9BVCBhbmQgUkVNT1ZFX0lURU0KCjIwMDYtMDUtMTUgMDk6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwgU291cmNlL2NtTGlzdENvbW1hbmQuaCwKCSAgVGVzdHMvQ01ha2VUZXN0cy9MaXN0VGVzdC5jbWFrZS5pbjogRU5IOiBSZW1vdmUgc29tZSBlcnJvcnMsIGZpeAoJICBhcHBlbmQgdG8gd29yayBvbiBub25leGlzdGluZyBsaXN0cwoKMjAwNi0wNS0xNCAyMDoyMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZVN5c3RlbS5jbWFrZTogRU5IOiBmaXggbW9kdWxlCgoyMDA2LTA1LTE0IDIwOjE3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlOiBFTkg6IGNoZWNrIHJldHVybiB2YWx1ZSBmb3IKCSAgdW5hbWUgLXAKCjIwMDYtMDUtMTQgMTk6MTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6IEVOSDogbW92ZSBmcm9tIG1haW4gdHJlZQoJICBoYW5kbGUgdW5hbWUgd2l0aG91dCAtcCBjb3JyZWN0bHkKCjIwMDYtMDUtMTQgMTc6NDIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6IEVOSDogY2hlY2sgcmV0dXJuIHZhbHVlIGZvcgoJICB1bmFtZSAtcAoKMjAwNi0wNS0xNCAxNToyNCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLmNtYWtlLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGV4dHJhIHBhdGgKCjIwMDYtMDUtMTQgMTU6MjIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0ZpbmRKUEVHLmNtYWtlLCBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlzdEZpbGVDYWNoZS5jeHgsIFNvdXJjZS9jbUxvYWRDYWNoZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2FkQ29tbWFuZENvbW1hbmQuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eCwgU291cmNlL2NtTWFrZURlcGVuZC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eCwgU291cmNlL2NtTWF0aENvbW1hbmQuaCwKCSAgU291cmNlL2NtT2JqZWN0LmgsIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsCgkgIFNvdXJjZS9jbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUHJvamVjdENvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXRUZXN0c1Byb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlLmgsIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmgsCgkgIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21YQ29kZTIxT2JqZWN0LmN4eCwKCSAgU291cmNlL2NtWENvZGUyMU9iamVjdC5oLCBTb3VyY2UvY21YQ29kZU9iamVjdC5jeHgsCgkgIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmgsIFNvdXJjZS9jbVhNTFBhcnNlci5oLCBTb3VyY2UvY21ha2UuY3h4LAoJICBTb3VyY2UvY21ha2UuaCwgU291cmNlL2NtYWtlbWFpbi5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUYXJDb21wcmVzc0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1lcmdlIGZyb20gbWFpbgoJICB0cmVlCgoyMDA2LTA1LTE0IDA5OjM2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMTMgMTI6MjggIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogTWFrZSBzdXJlIFJVTl9URVNUUyB0YXJnZXQKCSAgcGFzc2VzIHRoZSBkZXNpcmVkIGNvbmZpZ3VyYXRpb24gdG8gY3Rlc3QuCgoyMDA2LTA1LTEzIDA4OjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMTIgMTQ6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LCBjbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LCBjbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuY3h4LAoJICBjcGFjay5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTIgMTQ6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtWENvZGUyMU9iamVjdC5jeHgsIGNtWENvZGUyMU9iamVjdC5oLAoJICBjbVhDb2RlT2JqZWN0LmN4eCwgY21YQ29kZU9iamVjdC5oLCBjbVhNTFBhcnNlci5oLCBjbWFrZS5jeHgsCgkgIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTIgMTQ6MTIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBjbVRyeUNvbXBpbGVDb21tYW5kLmgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwKCSAgY21VdGlsaXR5U291cmNlQ29tbWFuZC5jeHgsIGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwgY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uaCwKCSAgY21Xcml0ZUZpbGVDb21tYW5kLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMiAxMzo1MyAgbWFydGluawoKCSogU291cmNlLzogY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuY3h4LAoJICBjbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5oLAoJICBjbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LCBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsIGNtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZS5jeHgsIGNtU291cmNlRmlsZS5oLAoJICBjbVNvdXJjZUdyb3VwQ29tbWFuZC5oLCBjbVN0cmluZ0NvbW1hbmQuY3h4LCBjbVN1YmRpckNvbW1hbmQuY3h4LAoJICBjbVN1YmRpckNvbW1hbmQuaCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogU1RZTEU6IGZpeAoJICBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMiAxMzo0NCAgbWFydGluawoKCSogU291cmNlLzogY21Qcm9qZWN0Q29tbWFuZC5jeHgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsCgkgIGNtUVRXcmFwVUlDb21tYW5kLmN4eCwgY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuY3h4OiBTVFlMRTogZml4CgkgIGxpbmUgbGVuZ3RoCgoyMDA2LTA1LTEyIDEzOjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU9iamVjdC5oLCBjbU9wdGlvbkNvbW1hbmQuY3h4LAoJICBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwgY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLAoJICBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMiAxMjoyOSAgbWFydGluawoKCSogU291cmNlLzogY21NYWNyb0NvbW1hbmQuY3h4LCBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LCBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsCgkgIGNtTWF0aENvbW1hbmQuaDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMiAxMTo1NiAgbWFydGluawoKCSogU291cmNlLzogY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmN4eCwKCSAgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtTGlzdENvbW1hbmQuY3h4LAoJICBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LAoJICBjbUxvYWRDb21tYW5kQ29tbWFuZC5oLCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTIgMTE6MDMgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCB0aGUgcHJvY2Vzc29yIHRvIHRoZSBzeXN0ZW0gbmFtZSBmb3IKCSAgY3BhY2sKCjIwMDYtMDUtMTIgMTA6NTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiByZW1vdmUgYmFkIHF1b3RlZWQgY29kZQoKMjAwNi0wNS0xMiAxMDo1NCAga2luZwoKCSogU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogQlVHOgoJICBJTkNMVURFX0RJUkVDVE9SSUVTIHNob3VsZCBpbnRlcnByZXQgcmVsYXRpdmUgcGF0aCBhcmd1bWVudHMgd2l0aAoJICByZXNwZWN0IHRvIHRoZSBjdXJyZW50IHNvdXJjZSBkaXJlY3RvcnkuCgoyMDA2LTA1LTEyIDEwOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmg6CgkgIFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTIgMTA6MDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIGJvZ3VzCgkgIG1hY2hpbmUgc2V0dGluZwoKMjAwNi0wNS0xMiAwOTo0NyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGZpeCBwYXRoIHByb2JsZW0gd2l0aCBxdAoKMjAwNi0wNS0xMiAwNzo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA1LTExIDE4OjMyICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRKUEVHLmNtYWtlOiBFTkg6IGhvbm9yIFJFUVVJUkVEIGZsYWcKCgkgIEFsZXgKCjIwMDYtMDUtMTEgMTg6MjcgIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTQuY21ha2U6IEVOSDogdXNlIHRoZSBuZXcgRklMRShUT19DTUFLRV9QQVRIIC4uLikKCSAgY29tbWFuZCBpbnN0ZWFkIG9mIHJlZ2V4cHMgQlVHOiBhcHBlbmQgdGhlIGtkZSA0IGNtYWtlIG1vZHVsZQoJICBwYXRoIGluc3RlYWQgb2YgcHJlcGVuZGluZyBpdAoKCSAgQWxleAoKMjAwNi0wNS0xMSAxNjowNyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBkYXNobWFjbWluaTJfcmVsZWFzZS5jbWFrZSwKCSAgZGVzdGlueV9yZWxlYXNlLmNtYWtlLCByZWxlYXNlX2NtYWtlLmNtYWtlLCByZWxlYXNlX2NtYWtlLnNoLmluLAoJICB2b2dvbl9yZWxlYXNlLmNtYWtlOiBFTkg6IHdvcmtpbmcgcGFja2FnZSBjcmVhdG9yCgoyMDA2LTA1LTExIDE2OjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUV4cHJQYXJzZXIuY3h4LAoJICBjbUV4cHJQYXJzZXJIZWxwZXIuY3h4LCBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwKCSAgY21GaWxlQ29tbWFuZC5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84V2luNjRHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhXaW42NEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZTIxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxYQ29kZTIxR2VuZXJhdG9yLmgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21JbmNsdWRlQ29tbWFuZC5jeHgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmN4eCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbENvbW1hbmQuaCwKCSAgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLAoJICBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsIGNtTGlzdENvbW1hbmQuY3h4LCBjbUxpc3RDb21tYW5kLmgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IG1lcmdlIGNoYW5nZXMgZnJvbSBtYWluIHRyZWUKCjIwMDYtMDUtMTEgMTU6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiBmaXggZXJyb3IgbWVzc2FnZQoKMjAwNi0wNS0xMSAxNTo1MCAgbWFydGluawoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oLCBjbUluY2x1ZGVDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5oLAoJICBjbUluY2x1ZGVSZWd1bGFyRXhwcmVzc2lvbkNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVSZWd1bGFyRXhwcmVzc2lvbkNvbW1hbmQuaCwgY21JbnN0YWxsQ29tbWFuZC5oLAoJICBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxHZW5lcmF0b3IuY3h4LAoJICBjbUluc3RhbGxHZW5lcmF0b3IuaCwgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLCBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHg6IFNUWUxFOgoJICBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTEgMTU6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6CgkgIFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTEgMTM6NTYgIGFuZHkKCgkqIFNvdXJjZS86IGNtTGlzdENvbW1hbmQuY3h4LCBjbUxpc3RDb21tYW5kLmg6IEVOSDogU29tZQoJICBkb2N1bWVudGF0aW9uIGFuZCBhZGQgQVBQRU5ECgoyMDA2LTA1LTExIDEyOjAwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEJVRzogRml4IHNlZ2ZhdWx0CgoyMDA2LTA1LTExIDExOjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhXaW42NEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOFdpbjY0R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuaCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IFNUWUxFOgoJICBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTEgMTA6NTYgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBtZXJnZSBjaGFuZ3MgZnJvbQoJICBtYWluIHRyZWUKCjIwMDYtMDUtMTEgMTA6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRXhwclBhcnNlci5jeHgsIGNtRXhwclBhcnNlckhlbHBlci5jeHgsCgkgIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA1LTExIDEwOjQxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogZml4IGZvciBidWcgIDMyMTYgYWxsb3cgZnVsbCBwYXRoIHRvCgkgIHF0IGlucHV0IGZpbGVzCgoyMDA2LTA1LTExIDEwOjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHg6CgkgIFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTEgMTA6MzMgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9DUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmN4eDogRU5IOgoJICBtZXJnZSBjaGFuZ2VzIGZyb20gbWFpbiB0cmVlCgoyMDA2LTA1LTExIDA5OjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHg6IEVOSDogdXNlIEAgZmlsZSBmb3Igd2luemlwCgkgIG9uIHdpbmRvd3MKCjIwMDYtMDUtMTEgMDg6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0xMCAyMjoxNSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ1BhY2suY21ha2UsCgkgIE1vZHVsZXMvTlNJUy5JbnN0YWxsT3B0aW9ucy5pbmkuaW4sIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmN4eCwgU291cmNlL2NtQWRkVGVzdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oLCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VyVG9rZW5zLmgsCgkgIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwgU291cmNlL2NtRGVwZW5kcy5jeHgsCgkgIFNvdXJjZS9jbURlcGVuZHMuaCwgU291cmNlL2NtRGVwZW5kc0MuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHgsIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuUGFyc2VyLmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0phdmFQYXJzZXJIZWxwZXIuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzSmF2YVBhcnNlckhlbHBlci5oLCBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eCwKCSAgU291cmNlL2NtRHVtcERvY3VtZW50YXRpb24uY3h4LCBTb3VyY2UvY21FbHNlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUVuYWJsZUxhbmd1YWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUVuZEZvckVhY2hDb21tYW5kLmN4eCwgU291cmNlL2NtRW5kSWZDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRW5kV2hpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4LAoJICBTb3VyY2UvY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmgsIFNvdXJjZS9jbUV4cHJMZXhlci5jeHgsCgkgIFNvdXJjZS9jbUV4cHJMZXhlci5oLCBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtRmlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRmlsZVRpbWVDb21wYXJpc29uLmN4eCwgU291cmNlL2NtRmluZEJhc2UuY3h4LAoJICBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LAoJICBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuaCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwgU291cmNlL0NQYWNrL2NwYWNrLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0SGFuZGxlckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFJlYWRDdXN0b21GaWxlc0NvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlQ29tbWFuZC5jeHg6IEVOSDogbW92ZSBjaGFuZ2VzIGZyb20KCSAgbWFpbiB0cmVlCgoyMDA2LTA1LTEwIDE3OjI2ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DUGFjay5jbWFrZTogQlVHOiBQcmV2ZW50IHN0cmlwcGluZyBvZgoJICBzb3VyY2VzCgoyMDA2LTA1LTEwIDE2OjQ0ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jcmVhdGUtY21ha2UtcmVsZWFzZS5jbWFrZTogRU5IOiByZW1vdmUgcHMKCSAgdGhpbmcKCjIwMDYtMDUtMTAgMTY6NDMgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY3JlYXRlLWNtYWtlLXJlbGVhc2UuY21ha2UsCgkgIHZvZ29uX3JlbGVhc2UuY21ha2U6IEVOSDogaXQgd29ya3MKCjIwMDYtMDUtMTAgMTU6NTYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsCgkgIGNtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLAoJICBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA1LTEwIDE1OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5jeHgsCgkgIGNtRmlsZUNvbW1hbmQuaCwgY21GaWxlVGltZUNvbXBhcmlzb24uY3h4LCBjbUZpbmRCYXNlLmN4eCwKCSAgY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuY3h4OiBTVFlMRTogZml4IGxpbmUKCSAgbGVuZ3RoCgoyMDA2LTA1LTEwIDE1OjI5ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS92b2dvbl9yZWxlYXNlLmNtYWtlOiBFTkg6IGFkZCB2b2dvbgoKMjAwNi0wNS0xMCAxNTowNiAgbWFydGluawoKCSogU291cmNlLzogY21FbHNlQ29tbWFuZC5jeHgsIGNtRW5hYmxlTGFuZ3VhZ2VDb21tYW5kLmN4eCwKCSAgY21FbmRGb3JFYWNoQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmN4eCwKCSAgY21FbmRXaGlsZUNvbW1hbmQuY3h4LCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIGNtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eCwgY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuaCwKCSAgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eCwgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmgsCgkgIGNtRXhwckxleGVyLmN4eCwgY21FeHByTGV4ZXIuaDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMCAxNTowMSAgbWFydGluawoKCSogU291cmNlLzogY21EZXBlbmRzSmF2YVBhcnNlckhlbHBlci5jeHgsCgkgIGNtRGVwZW5kc0phdmFQYXJzZXJIZWxwZXIuaCwgY21Eb2N1bWVudGF0aW9uLmN4eCwKCSAgY21EdW1wRG9jdW1lbnRhdGlvbi5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTAgMTQ6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRGVwZW5kcy5oLCBjbURlcGVuZHNDLmN4eCwgY21EZXBlbmRzRm9ydHJhbi5jeHgsCgkgIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuZ3RoCgoyMDA2LTA1LTEwIDE0OjEzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgY21Db21tYW5kQXJndW1lbnRQYXJzZXJUb2tlbnMuaCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwgY21EZXBlbmRzLmN4eDogU1RZTEU6IGZpeCBsaW5lIGxlbmd0aAoKMjAwNi0wNS0xMCAxNDowNyAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuY3h4OiBTVFlMRTogaG1tCgoyMDA2LTA1LTEwIDE0OjAzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNyZWF0ZS1jbWFrZS1yZWxlYXNlLmNtYWtlLAoJICBkYXNoc2dpMV9yZWxlYXNlLmNtYWtlLCBkYXNoc2dpMV9yZWxlYXNlNjQuY21ha2UsCgkgIHJlbGVhc2VfY21ha2Uuc2guaW46IEVOSDoKCjIwMDYtMDUtMTAgMTQ6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudExleGVyLmN4eDogU1RZTEU6IGhtbQoKMjAwNi0wNS0xMCAxMzo1NiAgbWFydGluawoKCSogU291cmNlLzogY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsIGNtQ1Rlc3QuY3h4LAoJICBjbUNhY2hlTWFuYWdlci5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTAgMTM6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IENUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RSZWFkQ3VzdG9tRmlsZXNDb21tYW5kLmgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4LCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21BZGRUZXN0Q29tbWFuZC5jeHgsCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IFNUWUxFOiBmaXggbGluZSBsZW5ndGgKCjIwMDYtMDUtMTAgMTI6MzkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwgY3BhY2suY3h4OiBCVUc6IEZpeAoJICByZWxhdGl2ZSBwYXRoIHRvIGNvbmZpZyBmaWxlLCBmaXggY21ha2VfaW5zdGFsbC5jbWFrZSBsb2NhdGlvbgoJICBwcm9ibGVtCgoyMDA2LTA1LTEwIDEyOjE1ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogTlNJUy5JbnN0YWxsT3B0aW9ucy5pbmkuaW4sIE5TSVMudGVtcGxhdGUuaW46IEVOSDogdXNlCgkgIHJhZGlvIGJ1dHRvbnMgdG8gY2hvb3NlIFBBVEggb3B0aW9ucwoKMjAwNi0wNS0xMCAwOToyOCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogYWxsb3cgcGFja2FnZSBuYW1lIHRvIGJlIGNoYW5nZWQgZnJvbSBjbWFrZQoJICBjYWNoZQoKMjAwNi0wNS0xMCAwOToxNSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogYWxsb3cgZm9yIGNwYWNrIHN0dWZmIHRvIGJlIGNoYW5nZWQKCjIwMDYtMDUtMTAgMDc6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0wOSAxNzoxOCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBkYXNoc3VuMV9yZWxlYXNlLmNtYWtlLCByZWxlYXNlX2NtYWtlLmNtYWtlLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IHdvcmtzCgoyMDA2LTA1LTA5IDE2OjMwICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0ZpbmRRdDMuY21ha2UsCgkgIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWVyZ2UgZnJvbSBtYWluCgkgIHRyZWUKCjIwMDYtMDUtMDkgMTQ6MTQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY3JlYXRlLWNtYWtlLXJlbGVhc2UuY21ha2UsCgkgIHJlbGVhc2VfY21ha2UuY21ha2U6IEVOSDogc2VlbXMgdG8gYmUgd29ya2luZwoKMjAwNi0wNS0wOSAxMzo0OSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY3JlYXRlLWNtYWtlLXJlbGVhc2UuY21ha2U6IEVOSDogYWRkIGEgeHRlcm0KCSAgc2NyaXB0IGNyZWF0ZSBzY3JpcHQKCjIwMDYtMDUtMDkgMTM6NDggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogZGFzaHN1bjFfcmVsZWFzZS5jbWFrZSwgbXVzZV9yZWxlYXNlNjQuY21ha2UsCgkgIHJlbGVhc2VfY21ha2UuY21ha2UsIHJlbGVhc2VfY21ha2Uuc2guaW46IEVOSDogYWRkIDY0IGJpdCBzZ2kKCjIwMDYtMDUtMDkgMTI6MjMgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfY21ha2Uuc2guaW46IEVOSDogbWFyayB0aW1lCgoyMDA2LTA1LTA5IDEyOjIzICBhbmR5CgoJKiBVdGlsaXRpZXMvUmVsZWFzZS92NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGNvcHkgcmlnaHQKCSAgZmlsZXMKCjIwMDYtMDUtMDkgMDg6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0wOCAxNjo1OSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBkYXNobWFjbWluaTJfcmVsZWFzZS5jbWFrZSwKCSAgZGFzaHN1bjFfcmVsZWFzZS5jbWFrZSwgZGVzdGlueV9yZWxlYXNlLmNtYWtlLAoJICBtdXNlX3JlbGVhc2UuY21ha2UsIHY2MG4xNzdfYWl4X3JlbGVhc2UuY21ha2U6IEVOSDogc2tpcAoJICBib290c3RyYXAgdGVzdCBhcyBpdCBhbHJlYWR5IGRvZXMgYSBib290c3RyYXAKCjIwMDYtMDUtMDggMTY6NTAgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogZGFzaG1hY21pbmkyX3JlbGVhc2UuY21ha2UsCgkgIGRlc3RpbnlfcmVsZWFzZS5jbWFrZSwgaHl0aGxvdGhfcmVsZWFzZS5jbWFrZSwKCSAgbXVzZV9yZWxlYXNlLmNtYWtlLCByZWxlYXNlX2NtYWtlLmNtYWtlLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGNoYW5nZSBuYW1lIHRvIE1BS0VfQ09NTUFORAoKMjAwNi0wNS0wOCAxNjo0MCAgaG9mZm1hbgoKCSogU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaDogRU5IOiBmaXggZG9jcyB0byBpbmNsdWRlCgkgIGxpbmtlciBsYW5nCgoyMDA2LTA1LTA4IDE2OjM4ICBhbmR5CgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IGFkZCBleHRyYSBjb3B5IGZvcgoJICBpYm0KCjIwMDYtMDUtMDggMTY6MzYgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogZGFzaG1hY21pbmkyX3JlbGVhc2UuY21ha2UsCgkgIGRlc3RpbnlfcmVsZWFzZS5jbWFrZSwgaHl0aGxvdGhfcmVsZWFzZS5jbWFrZSwKCSAgbXVzZV9yZWxlYXNlLmNtYWtlLCByZWxlYXNlX2NtYWtlLmNtYWtlLCByZWxlYXNlX2NtYWtlLnNoLmluLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGFkZCBtYWtlIHByb2dyYW0gc3R1ZmYKCjIwMDYtMDUtMDggMTQ6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogc2VhcmNoIGZvciBwcm9ncmFtIHdpdGhvdXQKCSAgZXh0ZW5zaW9ucwoKMjAwNi0wNS0wOCAxMzozNCAgYW5keQoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOiBFTkg6IFNvbWUgY2xlYW51cHMgYW5kIGZpeCBpbnN0YWxsaW5nCgkgIGFzIGEgbm9uLWFkbWluCgoyMDA2LTA1LTA4IDEwOjAyICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBCVUc6IERpc2FibGluZyBhbgoJICBFWEVDVVRFX1BST0NFU1MgdGVzdCB1bnRpbCBwcm9ibGVtcyBvbiBVTklYIHN5c3RlbXMgYXJlIGZpeGVkLgoKMjAwNi0wNS0wNyAxMzowNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQzLmNtYWtlOiBFTkg6IHRyeSB0byBmaW5kIHF0MyBiZXR0ZXIKCjIwMDYtMDUtMDcgMTA6NTUgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1N1bk9TLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwgU291cmNlL2NtRGVwZW5kcy5oLAoJICBTb3VyY2UvY21EZXBlbmRzQy5jeHgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eCwgU291cmNlL2NtU291cmNlRmlsZS5oLAoJICBTb3VyY2UvY21Tb3VyY2VHcm91cENvbW1hbmQuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckJaaXAyR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUYXJCWmlwMkdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUYXJDb21wcmVzc0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW4sCgkgIFRlc3RzL0NPbmx5L2Nvbmx5LmMsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaC5pbjogRU5IOiBtb3ZlIGNoYW5nZXMgZnJvbQoJICBtYWluIHRyZWUgYW5kIGNoYW5nZSB2ZXJzaW9uIHRvIDIuNC4yCgoyMDA2LTA1LTA3IDA5OjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMDYgMTA6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0wNSAyMjowNCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLnNoLmluLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGFkZCBleHRyYSBjb3B5IGZvciBhaXgKCjIwMDYtMDUtMDUgMjE6NDkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlOiBFTkg6IGFkZCB0aGUgZmxhZyBmb3IgY3JlYXRpbmcKCSAgd2luZG93cyBndWkncwoKMjAwNi0wNS0wNSAyMTo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eDogRU5IOiBoYW5kbGUgZW1wdHkKCSAgdmFyaWFibGVzCgoyMDA2LTA1LTA1IDIwOjU0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmg6IEJVRzogTVNWQyogdmFyaWFibGVzIHNob3VsZCBiZQoJICBzZXQgaW4gSURFIGdlbmVyYXRvcnMgaW5zdGVhZCBvZiBqdXN0IE5NYWtlLgoKMjAwNi0wNS0wNSAxNjoxMiAgYW5keQoKCSogVXRpbGl0aWVzL1JlbGVhc2UvdjYwbjE3N19haXhfcmVsZWFzZS5jbWFrZTogRU5IOiB1c2UgYSBkaXJlY3RvcnkKCSAgd2l0aCBzcGFjZQoKMjAwNi0wNS0wNSAxNTo1MSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLmNtYWtlLCByZWxlYXNlX2NtYWtlLnNoLmluOgoJICBFTkg6IG1ha2UgcmVsZWFzZSBkaXJlY3RvcnkgYSB2YXJpYWJsZQoKMjAwNi0wNS0wNSAxNTowNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGZpeCB3aW5kb3dzIHBhdGggaXNzdWUKCjIwMDYtMDUtMDUgMTQ6NTcgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgQ09ORklHVVJBVElPTlMKCSAgb3B0aW9uIHRvIElOU1RBTEwgY29tbWFuZCB0byBhbGxvdyBwZXItY29uZmlndXJhdGlvbiBpbnN0YWxsCgkgIHJ1bGVzLgoKMjAwNi0wNS0wNSAxNDo1MyAgYW5keQoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLnNoLmluLAoJICB2NjBuMTc3X2FpeF9yZWxlYXNlLmNtYWtlOiBFTkg6IGZpeCBlbnYgdmFycwoKMjAwNi0wNS0wNSAxMzo1MiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvcmVsZWFzZV9jbWFrZS5zaC5pbjogRU5IOiBhZGQgYWJpbGl0eSB0byBzZXQKCSAgQ0MsIENYWCBhbmQgTERGTEFHUwoKMjAwNi0wNS0wNSAxMzoxMCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvcmVsZWFzZV9jbWFrZS5jbWFrZTogRU5IOiBtb3ZlIGZyb20gdHIgdG8gY2F0CgkgIHNpbmNlIGl0IHdvcmtzIGZyb20gYSB3aW5kb3dzIG1hY2hpbmUgYW5kIHdvcmtzIG9uIHRoZSBBSVgKCjIwMDYtMDUtMDUgMTI6NDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0wNSAxMjozNCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLmNtYWtlLCByZWxlYXNlX2NtYWtlLnNoLmluOgoJICBFTkg6IGFkZCBtaXNzaW5nIHF1b3RlIGFuZCBzb21lIGNvbW1lbnRzCgoyMDA2LTA1LTA1IDEyOjI1ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IHJlbGVhc2VfY21ha2UuY21ha2UsIHJlbGVhc2VfY21ha2Uuc2guaW46CgkgIEVOSDogcmVtb3ZlIG9sZCBjb3B5CgoyMDA2LTA1LTA1IDEyOjE0ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGRlc3RpbnlfcmVsZWFzZS5jbWFrZSwgcmVsZWFzZV9jbWFrZS5jbWFrZSwKCSAgcmVsZWFzZV9jbWFrZS5zaC5pbjogRU5IOiB3b3JraW5nIG9uIGhwCgoyMDA2LTA1LTA1IDExOjUxICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRpbmcgQ09NUE9ORU5UIG9wdGlvbiB0bwoJICBhbiBJTlNUQUxMIGNvbW1hbmQgY2FsbCB0byBzbW9rZS10ZXN0IGl0LgoKMjAwNi0wNS0wNSAxMTo0NiAga2luZwoKCSogU291cmNlLzogY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmgsIGNtVGFyZ2V0LmN4eDogRU5IOgoJICBBZGRlZCBpbmZvcm1hdGlvbiBhYm91dCB0YXJnZXQgbmVlZGluZyBhIHNvdXJjZSBmaWxlIHdoZW4gb25lCgkgIGNhbm5vdCBiZSBmb3VuZC4KCjIwMDYtMDUtMDUgMTE6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5oOiBFTkg6IEFkZGVkIGV4YW1wbGUgb2Ygc3ViLWdyb3VwIHRvCgkgIGRvY3MuCgoyMDA2LTA1LTA1IDEwOjM4ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQgb3B0aW9uIHRvIG5vdCB1c2UKCSAgY29weS1pZi1kaWZmZXJlbnQgd2hlbiBpbnN0YWxsaW5nLgoKMjAwNi0wNS0wNSAxMDozMyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IGNyZWF0ZSBzY3JpcHQgaXMKCSAgd29ya2luZwoKMjAwNi0wNS0wNSAxMDozMCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLmNtYWtlLCByZWxlYXNlX2NtYWtlLnNoLmluOgoJICBFTkg6IGNyZWF0ZSBzY3JpcHQgaXMgd29ya2luZwoKMjAwNi0wNS0wNSAxMDoyOSAga2luZwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkZWQKCSAgYWx3YXlzL2lmLWRpZmZlcmVudCBvcHRpb24gdG8gQ29weUFEaXJlY3RvcnkuICBBZGRlZCBDb3B5QUZpbGUKCSAgd2l0aCB0aGUgc2FtZSBpbnRlcmZhY2UuCgoyMDA2LTA1LTA1IDA4OjE2ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IGNoYW5nZSB0byBzY3JpcHQgbW9kZQoKMjAwNi0wNS0wNCAyMjo1OCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiByZWxlYXNlX2NtYWtlLnNoLmluOiBFTkg6IGFkZCBmaWxlCgoyMDA2LTA1LTA0IDIxOjU3ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGRlc3RpbnlfcmVsZWFzZS5jbWFrZSwgbXVzZV9yZWxlYXNlLmNtYWtlOgoJICBFTkg6IGFkZCBzb21lIG1hY2hpbmVzCgoyMDA2LTA1LTA0IDE3OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogYWRkIGEgY2hlY2sgdG8gbWFrZSBzdXJlIHRhcmdldHMgb25seQoJICBsaW5rIHRvIGxpYnJhcmllcyBhbmQgbm90IHV0aWxpdHkgdGFyZ2V0cyB0byBhdm9pZCBzZWcgZmF1bHRzLAoJICBidWcgMzE5NAoKMjAwNi0wNS0wNCAxMzozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgZGVidWcKCSAgb3V0cHV0CgoyMDA2LTA1LTA0IDEzOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBUZXN0cy9DT25seS9jb25seS5jOgoJICBFTkg6IGZpeCBidWlsZCBjIHN0dWZmIHdpdGggYyBhbmQgYysrIHdpdGggYysrCgoyMDA2LTA1LTA0IDEwOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMDMgMjM6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4OiBFTkg6IG1ha2Ugc3VyZSBwYXRoCgkgIGlzIGNvbnZlcnRlZCB0byB1bml4CgoyMDA2LTA1LTAzIDIxOjQyICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBDUGFjay9jbUNQYWNrVGFyQlppcDJHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrVGFyQlppcDJHZW5lcmF0b3IuaCwgQ1BhY2svY3BhY2suY3h4OiBFTkg6IEFkZCBCWmlwMgoJICBzdXBwb3J0LCBhZGQgYmV0dGVyIGRvY3VtZW50YXRpb24KCjIwMDYtMDUtMDMgMTc6MjcgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfY21ha2UuY21ha2U6IEVOSDogYWRkIGN2cyBjb21tYW5kCgkgIHZhcmlhYmxlCgoyMDA2LTA1LTAzIDE3OjIyICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IHJlbGVhc2VfY21ha2UuY21ha2UsCgkgIHY2MG4xNzdfYWl4X3JlbGVhc2UuY21ha2U6IEVOSDogbW9yZSBhaXggc3R1ZmYKCjIwMDYtMDUtMDMgMTc6MDggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogcmVsZWFzZV9jbWFrZS5jbWFrZSwKCSAgdjYwbjE3N19haXhfcmVsZWFzZS5jbWFrZTogRU5IOiBhZGQgYWl4CgoyMDA2LTA1LTAzIDE2OjI0ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluOiBFTkg6IEJldHRlciBvdXRwdXQKCjIwMDYtMDUtMDMgMTU6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IHVzZSBTSEVMTCB2YXIKCjIwMDYtMDUtMDMgMTU6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6IEJVRzogZml4IENQYWNrIHRvIHVzZQoJICBjb3JyZWN0IHBhdGhzCgoyMDA2LTA1LTAzIDEwOjA3ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHMuaCwgY21EZXBlbmRzQy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBGaXggdG8gYXZvaWQgcmVwZWF0ZWQKCSAgY2FsbHMgdG8gQ29sbGFwc2VGdWxsUGF0aCBkdXJpbmcgZGVwZW5kZW5jeSBzY2FubmluZy4gIFRoaXMKCSAgYWRkcmVzc2VzIGJ1ZyMzMTkxLgoKMjAwNi0wNS0wMyAwOToyMyAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZTogRU5IOiB1c2UgY29ycmVjdCBmbGFncyBmb3IKCSAgb3B0aW1pemF0aW9uCgoyMDA2LTA1LTAzIDA4OjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDUtMDIgMjM6MjAgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogZGFzaG1hY21pbmkyX3JlbGVhc2UuY21ha2UsCgkgIGRhc2hzdW4xX3JlbGVhc2UuY21ha2UsIGh5dGhsb3RoX3JlbGVhc2UuY21ha2UsCgkgIHJlbGVhc2VfY21ha2UuY21ha2U6IEVOSDogZ2V0dGluZyBiZXR0ZXIKCjIwMDYtMDUtMDIgMTg6NDcgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmN4eDogQ09NUDogRml4IGNhc3QgdG8gY2hhcioKCjIwMDYtMDUtMDIgMTg6NDMgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuY3h4OiBDT01QOiBUcnkgdG8gZml4CgkgIHdpbmRvd3MgYnVpbGRzCgoyMDA2LTA1LTAyIDE3OjUyICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJhdG9ycy5jeHgsIGNtQ1BhY2tHZW5lcmF0b3JzLmgsCgkgIGNwYWNrLmN4eDogRU5IOiBBZGQgZ2VuZXJhdG9ycyBkb2N1bWVudGF0aW9uCgoyMDA2LTA1LTAyIDE3OjM0ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgY21DUGFja1RHWkdlbmVyYXRvci5oLAoJICBjbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuY3h4LCBjbUNQYWNrVGFyQ29tcHJlc3NHZW5lcmF0b3IuaDoKCSAgRU5IOiBTaW1wbGlmeSBUYXJDb21wcmVzcyB0byBvbmx5IHJlcXVpcmUgY29tcHJlc3MuIFVzZSBjbWFrZSdzCgkgIHRhcgoKMjAwNi0wNS0wMiAxNzowNyAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eCwKCSAgQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1RhckNvbXByZXNzR2VuZXJhdG9yLmg6IEVOSDogSW5pdGlhbCBjdXQgYXQKCSAgVGFyQ29tcHJlc3MgZ2VuZXJhdG9yCgoyMDA2LTA1LTAyIDE2OjQxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IHJlbW92ZSBkZWJ1ZwoKMjAwNi0wNS0wMiAxNjo0MSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9sb2dpbiwgcmVsZWFzZV9jbWFrZS5jbWFrZTogRU5IOiBtb3JlCgkgIHN0dWZmCgoyMDA2LTA1LTAyIDE2OjMzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2NtYWtlLmNtYWtlOiBFTkg6IHJlbW92ZSBpZjAKCjIwMDYtMDUtMDIgMTY6MzIgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogZGFzaHN1bjFfcmVsZWFzZS5jbWFrZSwKCSAgaHl0aGxvdGhfcmVsZWFzZS5jbWFrZSwgcmVsZWFzZV9jbWFrZS5jbWFrZTogRU5IOiBmaXJzdCBwYXNzIGF0CgkgIGNtYWtlIHNjcmlwdHMgdG8gY3JlYXRlIHRoZSBjbWFrZSByZWxlYXNlCgoyMDA2LTA1LTAyIDE0OjA0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogZml4IHF0IHZlcnNpb24gZGV0ZWN0aW9uCgoyMDA2LTA1LTAyIDEzOjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGFkZCBhIGZhc3QgdmVyc2lvbgoJICBmb3IgcHJlaW5zdGFsbAoKMjAwNi0wNS0wMiAxMjo0NCAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogbmVlZCB0byBtYWtlIHN1cmUKCSAgcGF0aHMgYXJlIE9LCgoyMDA2LTA1LTAyIDEyOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBuZWVkIHRvIG1ha2Ugc3VyZQoJICBwYXRocyBhcmUgT0sKCjIwMDYtMDUtMDIgMTA6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCBmb3IgdW5peAoKMjAwNi0wNS0wMiAwOTo1NiAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IE1ha2VmaWxlIHBlcmZvcm1hbmNlCgkgIGltcHJvdmVtZW50cwoKMjAwNi0wNS0wMiAwODo0OSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZCBzdXBwb3J0IGZvcgoJICBzdGlwcGluZyBhbmQgbWFrZSBtb3JlIHRoaW5ncyBvdmVyd3JpdGFibGUKCjIwMDYtMDUtMDIgMDg6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNS0wMSAyMjo0MCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiB0cnkgYWdhaW4KCjIwMDYtMDUtMDEgMjI6MzEgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogdHJ5IHRvIGNhbGwgY3BhY2sgZnJvbQoJICBzY3JpcHQKCjIwMDYtMDUtMDEgMTQ6MjMgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suU1RHWl9IZWFkZXIuc2guaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHg6IEVOSDogQWRkIGxpY2Vuc2UgYW5kIG1ha2UKCSAgaXQgbW9yZSB2ZXJib3NlCgoyMDA2LTA1LTAxIDA4OjA2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMzAgMTA6NTkgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDb3B5cmlnaHQudHh0LCBNb2R1bGVzL0NQYWNrLmNtYWtlLAoJICBNb2R1bGVzL05TSVMuSW5zdGFsbE9wdGlvbnMuaW5pLmluLCBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaDogRU5IOiBtb3ZlIGZpbGVzIGZyb20gbWFpbgoJICB0cmVlIHRvIDIuNC4xCgoyMDA2LTA0LTMwIDA4OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMzAgMDM6MTYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4OiBCVUc6IE1ha2UgaGFuZGxlCgkgIGFyZ3VtZW50cyB3b3JrIGFnYWluCgoyMDA2LTA0LTMwIDAzOjEwICBhbmR5CgoJKiBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW46IEVOSDogSGFuZGxlIHRoZSBuby1pY29uIGNhc2UKCjIwMDYtMDQtMjkgMjA6MTMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgY21DVGVzdFNjcmlwdEhhbmRsZXIuaDoKCSAgRU5IOiBBbGxvdyBDVEVTVF9VUERBVEVfQ09NTUFORCBhbmQgZml4IHRoZSBjb21tZW50cy4gVGhpcyBzaG91bGQKCSAgYWxsb3cgU1ZOIHVwZGF0ZSB0b28sIG1heWJlCgoyMDA2LTA0LTI5IDIwOjAzICBhbmR5CgoJKiBDb3B5cmlnaHQudHh0OiBFTkg6IEFja25vd2xlZGdlIE5BTUlDCgoyMDA2LTA0LTI5IDIwOjAxICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOgoJICBFTkg6IEFkZCBtb3JlIGluc3RhbGwgcmVnaXN0cnkgb3B0aW9ucwoKMjAwNi0wNC0yOSAxOToyMiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvTlNJUy5JbnN0YWxsT3B0aW9ucy5pbmkuaW4sCgkgIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBBZGQgTlNJUyBvcHRpb25zIHBhZ2UgZm9yIHBhdGggc2VsZWN0aW9uLCBmaXggYWRkaW5nIGFuZAoJICByZW1vdmluZyBmcm9tIHBhdGgsIGFkZCB3ZWxjb21lIHBhZ2UgYW5kIGxpY2Vuc2UgcGFnZQoKMjAwNi0wNC0yOSAxMTo0OSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENUZXN0Q29uZmlnLmNtYWtlLCBDaGFuZ2VMb2cubWFudWFsLAoJICBNb2R1bGVzL0NUZXN0LmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbVZlcnNpb24uY3h4LCBTb3VyY2UvY3Rlc3QuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBUZW1wbGF0ZXMvQ1Rlc3RTY3JpcHQuY21ha2UuaW46IEVOSDogbWVyZ2UgaW4gY2hhbmdlcyBmcm9tIG1haW4KCSAgdHJlZSBhbmQgY2hhbmdlIHZlcnNpb24gdG8gMi40LjEtYmV0YQoKMjAwNi0wNC0yOSAwODoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTI4IDExOjU5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIHNwZWNpYWwKCSAgdHJhY2tzLCBmaXggb3B0aW9ucyBvZiBoYW5kbGVycyBzbyB0aGF0IHRoZSAtUiwgLVUsIGFuZCBzbyBvbgoJICB3b3JrIGluICB0aGUgbmV3IHN0eWxlIHNjcmlwdGluZwoKMjAwNi0wNC0yOCAxMTo1OCAgYW5keQoKCSogQ1Rlc3RDb25maWcuY21ha2U6IEVOSDogQWRkIFhNTFJQQyBzdXBwb3J0CgoyMDA2LTA0LTI4IDExOjU4ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgVGVtcGxhdGVzL0NUZXN0U2NyaXB0LmNtYWtlLmluOiBFTkg6IEFkZCB0ZW1wbGF0ZQoJICBvZiBjdGVzdCBzY3JpcHQKCjIwMDYtMDQtMjggMDk6NTggIGFuZHkKCgkqIE1vZHVsZXMvQ1Rlc3QuY21ha2U6IEVOSDogQWxsb3cgb3ZlcndyaXRpbmcgQ1Rlc3RDb25maWcuY21ha2UKCSAgaXRlbXMKCjIwMDYtMDQtMjggMDg6NTkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIERvY3MvY21ha2UtbW9kZS5lbCwKCSAgTW9kdWxlcy9DaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvVXNlUXQ0LmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGVzdC5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLCBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jLAoJICBTb3VyY2Uva3dzeXMvVGVybWluYWwuaC5pbiwgU291cmNlL2t3c3lzL3Rlc3RUZXJtaW5hbC5jOiBFTkg6CgkgIG1lcmdlIGNoYW5nZXMgZnJvbSBtYWluIHRyZWUKCjIwMDYtMDQtMjggMDg6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0yNyAxNzo1MiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBwdXQgdGhlIGZpeCBiYWNrIGluIHdpdGggYWJvcnQKCjIwMDYtMDQtMjcgMTc6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogcmVtb3ZlIGNvZGUgdGhhdCBkb2VzIG5vdAoJICBjb21waWxlLCBvbiB3aW5kb3dzIGN3ZCBtdXN0IGV4aXN0CgoyMDA2LTA0LTI3IDE2OjIwICBhbmR5CgoJKiBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW46IEVOSDogQmV0dGVyIHN1cHBvcnQgZm9yIGFkZGluZyBhbmQKCSAgcmVtb3ZpbmcgcGF0aAoKMjAwNi0wNC0yNyAxNjowMiAgbXJpY2hhcmRzb24KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IENPTVA6IEZpeGluZyB0aGUgdGhlIGJ1aWxkIGZvcgoJICB3aW5kb3dzLgoKMjAwNi0wNC0yNyAxNTo0OCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5nCgoyMDA2LTA0LTI3IDE1OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGhhbmRsZSBydW5uaW5nIGZyb20gYQoJICBkaXJlY3RvcnkgdGhhdCBoYXMgYmVlbiBkZWxldGVkCgoyMDA2LTA0LTI3IDE1OjIzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogRml4IHByb2JsZW0gd2l0aAoJICBTb3VyY2UgTGluZXMgYW5kIGFkZCBkZWJ1Z2dpbmcgb2YgcmVndWxhciBleHByZXNzaW9ucwoKMjAwNi0wNC0yNyAxNToxNCAgYWxleAoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IHVzZSB0aGUgQUREX0ZJTEVfREVQRU5ERU5DSUVTKCkgbWFjcm8KCSAgY29taW5nIHdpdGggY21ha2UgaW5zdGVhZCBhIGR1cGxpY2F0ZWQgaW1wbGVtZW50YXRpb24KCSAgX3F0NF9hZGRfZmlsZV9kZXBlbmRlbmNpZXMoKSBoZXJlCgoJICBBbGV4CgoyMDA2LTA0LTI3IDE1OjA3ICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZFF0NC5jbWFrZSwgVXNlUXQ0LmNtYWtlOiBFTkg6IC1hcHBseSB0aGUgcGF0Y2hlcyBieQoJICBDbGludG9uIFN0aW1wc29uIGFuZCBLZW5uZXRoIE1vcmVsYW5kIHdoaWNoIGZpeCBzb21lIFF0TWFpbgoJICBpc3N1ZXMgb24gV2luZG93cyBFTkg6IC1zeW5jIHdpdGggS0RFIHN2biBGaW5kUXQ0LCB3aGljaCBmZWF0dXJlcwoJICBhIGxvdCBvZiBlbmhhbmNlbWVudHMKCgkgIEFsZXgKCjIwMDYtMDQtMjcgMTA6NTUgIGFuZHkKCgkqIE1vZHVsZXMvOiBDaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgQ2hlY2tDWFhTb3VyY2VDb21waWxlcy5jbWFrZTogQlVHOiBVc2UgdGhlIGV4dHJhIGRlZmluaWNpb25zCgoyMDA2LTA0LTI3IDEwOjQxICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogTWFrZSBzdXJlIGVhY2gKCSAgY21ha2VfZGVwZW5kcyBwcm9jZXNzIHVzZXMgdGhlIHNhbWUgU3lzdGVtVG9vbHMgcGF0aCB0cmFuc2xhdGlvbgoJICB0YWJsZSBhcyB0aGUgb3JpZ2luYWwgcHJvY2Vzcy4gIFRoaXMgYWRkcmVzc2VzIHByb2JsZW1zIHdpdGgKCSAgZGVwZW5kZW5jeSBzY2FubmluZyB3aGVuIG1ha2UgaXMgcnVuIGZyb20gYSBzeW1saW5rIGRpcmVjdG9yeQoJICBwb2ludGluZyBhdCB0aGUgb3JpZ2luYWwgYmluYXJ5IHRyZWUuCgoyMDA2LTA0LTI3IDA4OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMjYgMjE6NTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21ha2UuY3h4OiBDT01QOgoJICBEaXNhYmxlIGNvbG9yIHN1cHBvcnQgZm9yIGJvb3RzdHJhcC4KCjIwMDYtMDQtMjYgMjE6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRGVmYXVsdCBTSEVMTCBvbgoJICB3aW5kb3dzIHNob3VsZCBub3QgYmUgYSBoYXJkLWNvZGVkIHBhdGguCgoyMDA2LTA0LTI2IDIxOjMxICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6CgkgIEVuYWJsaW5nIGNvbG9yIG1ha2VmaWxlIHN1cHBvcnQgdXNpbmcgY21zeXNUZXJtaW5hbF9jZnByaW50Zi4KCSAgU3VwcG9ydCBmb3IgY29sb3IgaXMgYXV0b21hdGljYWxseSBkZXRlY3RlZCB3aGVuIG1lc3NhZ2VzIGFyZQoJICBwcmludGVkLiAgQWxzbyBtYWRlIGNvbG9yIHNjaGVtZSBtb3JlIHJlYWRhYmxlIG9uIGJvdGggYmxhY2sgYW5kCgkgIHdoaXRlIGJhY2tncm91bmRzLiAgVGhpcyBvcHRpb24gY2FuIGJlIGVuYWJsZWQgYnkgc2V0dGluZwoJICBDTUFLRV9DT0xPUl9NQUtFRklMRSB0byB0cnVlIGluIHRoZSBwcm9qZWN0LgoKMjAwNi0wNC0yNiAxNTo1NCAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBCVUc6IEluIGV4YW1wbGUgLmVtYWNzIGNvZGUgdXNlIFwnIGZvcgoJICBlbmQtb2Ytc3RyaW5nIGluc3RlYWQgb2YgJCBmb3IgZW5kLW9mLWxpbmUuCgoyMDA2LTA0LTI2IDE0OjI4ICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEJVRzogTW9kZSBzaG91bGQgb25seSBiZSB1c2VkIGlmCgkgIENNYWtlTGlzdHMudHh0IGlzIGF0IHRoZSBlbmQgb2YgdGhlIGJ1ZmZlciBuYW1lLgoKMjAwNi0wNC0yNiAxNDoyMiAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBCVUc6IFRhYnMgYXJvdW5kIGEgZnVuY3Rpb24gbmFtZSBhcmUgYWxsb3dlZC4KCjIwMDYtMDQtMjYgMTM6MDQgIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogRU5IOiBVc2luZyBzdWdnZXN0aW9uIGZyb20gU3R1YXJ0IEhlcnJpbmcgdG8KCSAgYXZvaWQgbmVlZGluZyBhIGxpc3Qgb2YgY29tbWFuZCBuYW1lcyBpbiB0aGUgaGlnaGxpZ2h0aW5nIHRhYmxlLgoKMjAwNi0wNC0yNiAwODowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTI1IDE2OjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBmaXggZ2xvYmFsIGhlbHAKCjIwMDYtMDQtMjUgMTI6MDkgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBEb2NzL2NtYWtlLWluZGVudC52aW0sCgkgIE1vZHVsZXMvQ1BhY2suY21ha2UsIE1vZHVsZXMvQ1Rlc3QuY21ha2UsIE1vZHVsZXMvRmluZFF0My5jbWFrZSwKCSAgTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluLCBNb2R1bGVzL1VzZUVjb3MuY21ha2UsCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBUZXN0cy9KYXZhL0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIG1vdmUgZnJvbSBtYWluIHRyZWUgdG8gMi40IGJyYW5jaAoKMjAwNi0wNC0yNSAxMTo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IG1ha2Ugc3VyZSBzcGVjaWFsIHZzIGlkZSBwYXRoCgkgIGlzIG9ubHkgdXNlZCBmb3IgbXN2Y19pZGUgYnVpbGRzCgoyMDA2LTA0LTI1IDExOjUyICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogQ2xlYW5lZC11cCBtb2RlIGluIHByZXBhcmF0aW9uIGZvcgoJICBpbmNsdXNpb24gaW4gZW1hY3MgdXBzdHJlYW0uCgoyMDA2LTA0LTI1IDA5OjU0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogQWRkZWQgb3B0aW9uCgkgIENNQUtFX0lOQ0xVREVfRElSRUNUT1JJRVNfUFJPSkVDVF9CRUZPUkUgdG8gcHV0IGFsbCBpbi1wcm9qZWN0CgkgIGluY2x1ZGUgZGlyZWN0b3JpZXMgYmVmb3JlIGFsbCBvdXQtb2YtcHJvamVjdCBpbmNsdWRlCgkgIGRpcmVjdG9yaWVzLgoKMjAwNi0wNC0yNSAwOTo1NCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBJc1N1YkRpcmVjdG9yeSBzaG91bGQgdXNlCgkgIENvbXBhcmVQYXRoIHRvIGRvIHBsYXRmb3JtLWluZGVwZW5kZW50IHBhdGggY29tcGFyaXNvbi4KCjIwMDYtMDQtMjUgMDk6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBzcGVjaWFsIHdpbmRvd3MKCSAgQ01BS0VfTVNWQ0lERV9SVU5fUEFUSCB2YXJpYWJsZSBmb3IgYWRkaW5nIHRvIHRoZSBwYXRoIG9mIHZzIElERQoJICBmb3IgcnVubmluZyBjdXN0b20gY29tbWFuZHMgZnJvbSBjbWFrZQoKMjAwNi0wNC0yNSAwODozNCAgaG9mZm1hbgoKCSogU291cmNlL2NtVGVzdC5jeHg6IEVOSDogbWFrZSBzdXJlIGNvbW1hbmQgaXMgdW5peCBzdHlsZSBhcyBpdCBtYXkKCSAgaGF2ZSBiZWVuIHNlbnQgaW50byBjbWFrZSBhcyBhIHdpbmRvd3MgcGF0aAoKMjAwNi0wNC0yNSAwODozMyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1Rlcm1pbmFsLmguaW46IEVOSDogZml4IGJ1aWxkIG9uIEFJWAoKMjAwNi0wNC0yNSAwODowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTI0IDEyOjE1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogRW5hYmxpbmcgYnVpbGQvdGVzdCBvZiBUZXJtaW5hbAoJICBjb2RlIG5vdyB0aGF0IGl0IGhhcyBiZWVuIG1hbnVhbGx5IHRlc3RlZCBvbiBzZXZlcmFsIHBsYXRmb3Jtcy4KCjIwMDYtMDQtMjQgMTI6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eDogRU5IOiBmaXggZmx0ayBmbHVpZCBvcmRlciBvZgoJICBidWlsZAoKMjAwNi0wNC0yNCAxMTozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBFTkg6IG1ha2Ugc3VyZSBjb21tYW5kIGRlcGVuZHMgb24KCSAgZmx1aWQKCjIwMDYtMDQtMjQgMDk6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggd2FybmluZ3MKCjIwMDYtMDQtMjQgMDc6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0yMyAyMzoyNCAgaG9mZm1hbgoKCSogVGVzdHMvSmF2YS9DTWFrZUxpc3RzLnR4dDogRU5IOiBjcmVhdGUgdGhlIGNvcnJlY3QgamFyIG5hbWUKCjIwMDYtMDQtMjMgMjE6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogRU5IOiBtZXJnZSBpbiBBbGV4IHBhdGNoZXMKCjIwMDYtMDQtMjMgMTk6NDUgIGFuZHkKCgkqIE1vZHVsZXMvOiBDUGFjay5jbWFrZSwgTlNJUy50ZW1wbGF0ZS5pbjogRU5IOiBQcm9wYWdhdGUgc3lzdGVtCgkgIG5hbWUgYW5kIGhhbmRsZSB3aW4zMi93aW42NCBuYW1lCgoyMDA2LTA0LTIzIDE4OjM5ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgcGF0aAoKMjAwNi0wNC0yMyAxODoyMyAgYW5keQoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOiBFTkg6IEFkZCBhIGxpbmUgdG8gQWRkL1JlbW92ZSBwcm9ncmFtcwoJICB0byB1bmluc3RhbGwKCjIwMDYtMDQtMjMgMTU6MzQgIGhvZmZtYW4KCgkqIFRlc3RzL0phdmEvQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIHRoZSByaWdodCBuYW1lIGZvciB0aGUgdGVzdAoKMjAwNi0wNC0yMyAxMToxMCAgaG9mZm1hbgoKCSogVGVzdHMvSmF2YS9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggYnVpbGQKCjIwMDYtMDQtMjMgMDg6MDggIGFsZXgKCgkqIE1vZHVsZXMvVXNlRWNvcy5jbWFrZTogQlVHOiBmaW5hbGx5IHJlYWxseSBmaXggIzI1NzYgYnkgYWRkaW5nCgkgIFVzZUVjb3MuY21ha2UgdG8gY3ZzIDotKQoKCSAgQWxleAoKMjAwNi0wNC0yMyAwNzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTIzIDA3OjIzICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2U6IEJVRzogZml4IFFUX01JTl9WRVJTSU9OIGhhbmRsaW5nLCBpdAoJICBkaWRuJ3Qgd29yayBhbnltb3JlIChxdF92ZXJzaW9uX3N0ciB2cy4gIHF0X3ZlcnNpb25fc3RyX2xpYikKCgkgIEFsZXgKCjIwMDYtMDQtMjIgMjA6MzIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jOiBDT01QOiBBZGRlZCBtaXNzaW5nIGluY2x1ZGUgb2Ygc3RyaW5nLmgKCSAgZm9yIHN0cmNtcC4KCjIwMDYtMDQtMjIgMjA6MjYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jOiBCVUc6IEZpeGVkIGJ1ZyBpbiBjaGVjayBmb3IgdnQxMDAKCSAgYXNzdW1wdGlvbi4KCjIwMDYtMDQtMjIgMjA6MjUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9UZXJtaW5hbC5jOiBCVUc6IEZpeGVkIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUgd2hlbgoJICBub3QgYnVpbGRpbmcgd2l0aCB3aW5kb3dzIGNvbnNvbGUgc3VwcG9ydC4KCjIwMDYtMDQtMjIgMjA6MjAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBUZXJtaW5hbC5jLCBUZXJtaW5hbC5oLmluLAoJICB0ZXN0VGVybWluYWwuYzogRU5IOiBBZGRpbmcgJ1Rlcm1pbmFsJyBjb21wb25lbnQgdG8gaG9sZCBzdXBwb3J0CgkgIHJvdXRpbmVzIGZvciBkZWFsaW5nIHdpdGggaW50ZXJhY3RpdmUgdGVybWluYWxzLiAgQ3VycmVudGx5IG9ubHkKCSAgYSBjZnByaW50ZiBmdW5jdGlvbiBpcyBwcm92aWRlZCB0byBwcmludCBjb2xvciBtZXNzYWdlcy4KCjIwMDYtMDQtMjIgMDk6MTMgIGhvZmZtYW4KCgkqIFRlc3RzL0phdmEvQ01ha2VMaXN0cy50eHQ6IEVOSDogZml4IGluIHNvdXJjZSBidWlsZCBmb3IgdnMgaWRlCgoyMDA2LTA0LTIyIDA4OjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMjEgMjA6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogZml4IGJvcmxhbmQgYnVnCgoyMDA2LTA0LTIxIDE2OjMzICBhbmR5CgoJKiBEb2NzL2NtYWtlLWluZGVudC52aW06IEJVRzogRml4IHR5cG8KCjIwMDYtMDQtMjEgMTU6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogcGVyZm9ybWFuY2UgaW1wcm92bWVudHMKCjIwMDYtMDQtMjEgMTQ6MzYgIGFuZHkKCgkqIE1vZHVsZXMvQ1Rlc3QuY21ha2U6IEJVRzogRml4IHRoZSBtaXNzaW5nIG5pZ2h0bHkgc3RhcnQgdGltZSBidWcKCSAgYW5kIGRvIHNvbWUgY2xlYW51cAoKMjAwNi0wNC0yMSAxNDoyNiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IENsZWFudXAKCjIwMDYtMDQtMjEgMTA6MjYgIGhvZmZtYW4KCgkqIENUZXN0Q3VzdG9tLmN0ZXN0LmluLCBDaGFuZ2VMb2cubWFudWFsLCBEb2NzL2NtYWtlLWluZGVudC52aW0sCgkgIERvY3MvY21ha2Utc3ludGF4LnZpbSwgTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vTGludXgtaWZvcnQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0va0ZyZWVCU0QuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtYWtlLmN4eDogRU5IOiBtb3ZlCgkgIHN0dWZmIGZyb20gbWFpbiB0cmVlCgoyMDA2LTA0LTIxIDA4OjU5ICBob2ZmbWFuCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBzdXByZXNzIHhjb2RlIHdhcm5pbmcKCjIwMDYtMDQtMjEgMDg6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogdXNlIGEgYmV0dGVyIG5hbWUKCjIwMDYtMDQtMjEgMDg6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0yMSAwNzoxNyAgYW5keQoKCSogRG9jcy9jbWFrZS1pbmRlbnQudmltOiBFTkg6IEFkZCBXaGlsZSBzdXBwb3J0CgoyMDA2LTA0LTIwIDIxOjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogaWdub3JlIGFsbCBmaWxlcyB0aGF0CgkgIHdlIGRvIG5vdCBrbm93IGFib3V0IGp1c3QgbGlrZSBpbiBpZGUgZ2VuZXJhdG9ycwoKMjAwNi0wNC0yMCAyMTozMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBkbyBub3QgY29tcGlsZQoJICBoZWFkZXIgZmlsZXMKCjIwMDYtMDQtMjAgMTc6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogc2F2ZSB0aGUgY2FjaGUgb24gZmF0YWwgZXJyb3Igc28gdGhhdAoJICB1c2VycyBjYW4gc2V0IGNhY2hlIHZhbHVlcwoKMjAwNi0wNC0yMCAxNjoxNiAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbWFrZW1haW4uY3h4LAoJICBUZW1wbGF0ZXMvQ1BhY2suR2VuZXJpY0Rlc2NyaXB0aW9uLnR4dCwKCSAgVGVtcGxhdGVzL0NQYWNrLkdlbmVyaWNMaWNlbnNlLnR4dCwKCSAgVGVtcGxhdGVzL0NQYWNrLkdlbmVyaWNXZWxjb21lLnR4dCwKCSAgVGVtcGxhdGVzL0RMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL0VYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZTogRU5IOiBtZXJnZSBjaGFuZ2VzIGZyb20gbWFpbgoJICB0cmVlCgoyMDA2LTA0LTIwIDE1OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFTkg6IGZpeCAuLiBpbiB0aGUgcGF0aCBvZiBzdWJkaXJzCgoyMDA2LTA0LTIwIDE1OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGRvbid0IGFkZCBwYWNrYWdlIHRhcmdldCBpZiBubwoJICBwYWNrYWdlIGZpbGUgaXMgYXJvdW5kCgoyMDA2LTA0LTIwIDE1OjI4ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IFZTNyBzZWVtcyB0byBoYXZlCgkgIGEgbGltaXQgb24gdGhlIGxlbmd0aCBvZiB0aGUgbGluayBkaXJlY3RvcnkgbGlzdCBzdHJpbmcuICBUcnkgdG8KCSAgbWFrZSB0aGUgc3RyaW5nIGFzIHNob3J0IGFzIHBvc3NpYmxlIGJ5IGF2b2lkaW5nIHRyYWlsaW5nIHNsYXNoZXMKCSAgYW5kIHVzaW5nIGEgcmVsYXRpdmUgcGF0aCAoaWYgaXQgaXMgc2hvcnRlcikuCgoyMDA2LTA0LTIwIDEwOjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBmaXggaGVscCBmb3IKCSAgZ2xvYmFsIHRhcmdldHMKCjIwMDYtMDQtMjAgMTA6MjMgIGFuZHkKCgkqIE1vZHVsZXMvOiBDTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsIFBsYXRmb3JtL0hQLVVYLmNtYWtlLAoJICBQbGF0Zm9ybS9MaW51eC1pZm9ydC5jbWFrZSwgUGxhdGZvcm0vTGludXguY21ha2UsCgkgIFBsYXRmb3JtL2tGcmVlQlNELmNtYWtlOiBFTkg6IENsZWFudXAgbGluayBsaWJyYXJpZXMuIFJlbW92ZSAtbAoJICBmcm9tIC1sZGwKCjIwMDYtMDQtMjAgMTA6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBFTkg6IEFkZCBoZWxwIGZvciBncmFwaHZpegoKMjAwNi0wNC0yMCAxMDoyMCAgYW5keQoKCSogRG9jcy9jbWFrZS1zeW50YXgudmltOiBTVFlMRTogQWRkIG1pc3NpbmcgY29tbWFuZAoKMjAwNi0wNC0yMCAwOTo1OSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBDaGFuZ2VkIGNvbG9yCgkgIHNjaGVtZSB0byBiZSBtb3JlIHJlYWRhYmxlIG9uIGJvdGggd2hpdGUgYW5kIGJsYWNrIGJhY2tncm91bmRzLgoKMjAwNi0wNC0yMCAwOTo1NCAgYW5keQoKCSogVGVtcGxhdGVzLzogQ1BhY2suR2VuZXJpY0Rlc2NyaXB0aW9uLnR4dCwKCSAgQ1BhY2suR2VuZXJpY0xpY2Vuc2UudHh0LCBDUGFjay5HZW5lcmljV2VsY29tZS50eHQ6IEVOSDogU2ltcGxpZnkKCSAgdGhlIGdlbmVyaWMgaW5zdHJ1Y3Rpb25zCgoyMDA2LTA0LTIwIDA5OjMyICBob2ZmbWFuCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBhZGQgaWdub3JlIGZvciB4Y29kZQoKMjAwNi0wNC0xOSAxNzoyMyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBDaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlOiBFTkg6IGFwcGVuZCB0byBsb2cgZmlsZXMKCjIwMDYtMDQtMTkgMTY6NTEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IHVwZGF0ZSBjcGFjayBzdHVmZiB0byBtYXRjaCBvbGQgY21ha2UKCSAgcmVsZWFzZXMKCjIwMDYtMDQtMTkgMTY6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogbmFtZSBwZGIgZmlsZXMgZm9yCgkgIHZpc3VhbCBzdHVkaW8gbWFrZSBiYXNlZCBidWlsZHMKCjIwMDYtMDQtMTkgMTU6MjkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiB1bml4IG1ha2VmaWxlcyBzaG91bGQKCSAgd29yayB3aXRoIGNsCgoyMDA2LTA0LTE5IDEyOjU4ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cudHh0OiBFTkg6IHB1dCBjdnMyY2wgY2hhbmdlbG9nIHRvIG1hdGNoIGJyYW5jaAoKMjAwNi0wNC0xOSAxMjozMCAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbDogRU5IOiBhZGQgY2hhbmdlbG9nIGZvciAyLjQKCjIwMDYtMDQtMTkgMTI6MjkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IEVOSDogY3JlYXRlIG5ldyBjaGFuZ2UgbG9nIHdpdGggY3ZzMmNsCgoyMDA2LTA0LTE5IDExOjE0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogZG9uJ3QgbmVlZCB0d28gb2YgdGhlc2UKCjIwMDYtMDQtMTkgMTA6NTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiB0ZXN0IGZvciB2czggY29ycmVjdGx5CgoyMDA2LTA0LTE5IDEwOjUwICBraW5nCgoJKiBTb3VyY2UvOiBjbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5jeHg6IEJVRzogTmVlZAoJICBBRERfREVQRU5ERU5DSUVTIGNvbW1hbmQgZm9yIE1pbkdXIGJvb3RzdHJhcCBzaW5jZSBrd3N5cyB1c2VzIHRoZQoJICBXaW4zMiBpbXBsZW1lbnRhdGlvbiBvZiBwcm9jZXNzIGV4ZWN1dGlvbi4KCjIwMDYtMDQtMTkgMTA6MzQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlOiBCVUc6IFZTNiBnZW5lcmF0b3Igbm93IHVzZXMKCSAgQ29tcHV0ZUxpbmtJbmZvcm1hdGlvbiBqdXN0IGxpa2UgYWxsIG90aGVyIGdlbmVyYXRvcnMuCgoyMDA2LTA0LTE5IDEwOjExICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogY2hlY2sgZm9yIHZlcnNpb24gMTQwMAoKMjAwNi0wNC0xOSAwODowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTE4IDE2OjQwICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBtYWtlIGNwYWNrIG5hbWVzIG1hdGNoIG9sZCBjbWFrZSByZWxlYXNlCgkgIHByb2Nlc3MKCjIwMDYtMDQtMTggMTU6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IHB1dCBnbG9iYWwKCSAgdGFyZ2V0cyBpbiB0aGUgaGVscAoKMjAwNi0wNC0xOCAxNTozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogbWFrZSBzdXJlIGhlbHAKCSAgaGFzIGdsb2JhbCB0YXJnZXRzCgoyMDA2LTA0LTE4IDE0OjQ4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1BsdWdpbkFQSS5oOiBFTkg6IG1vdmUgdmVyc2lvbiBudW1iZXJzCgkgIHRvIDIuNS4wCgoyMDA2LTA0LTE4IDE0OjQ4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1BsdWdpbkFQSS5oLCBVdGlsaXRpZXMvUmVsZWFzZS9SRUFETUU6CgkgIEVOSDogbW92ZSB2ZXJzaW9uIG51bWJlcnMgdG8gMi40LjAKCjIwMDYtMDQtMTggMTE6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90IHJlcXVpcmUKCSAgbGFuZ3VhZ2UgZmxhZ3MgdmFyaWFibGVzLiAgT3RoZXIgZ2VuZXJhdG9ycyBkbyBub3QsIGFuZCBpdCBicmVha3MKCSAgcHJvZ3JhbW1hYmxlIGxhbmd1YWdlIHN1cHBvcnQgKGxpa2UgdGhlIEphdmEgdGVzdCkuCgoyMDA2LTA0LTE4IDExOjUwICBiYXJyZQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiB0cnkgdG8gYnlwYXNzIE1pY3Jvc29mdAoJICBhc3NlcnQoKSBvbiBpc3NwYWNlLCBpc2FscGhhLCBldGMuCgoyMDA2LTA0LTE4IDExOjQ1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogVXBkYXRlZCBWUzYgZ2VuZXJhdG9yCgkgIHRvIHVzZSB0YXJnZXQuR2V0RnVsbE5hbWUoKSB0byBjb21wdXRlIHRhcmdldCBmaWxlIG5hbWVzLgoKMjAwNi0wNC0xOCAxMDo1NiAga2luZwoKCSogU291cmNlLzogY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLCBjbVRhcmdldC5jeHg6IEVOSDogQWRkZWQKCSAgPGNvbmZpZz5fT1VUUFVUX05BTUUgdGFyZ2V0IHByb3BlcnR5IHRvIGFsbG93IHRoZSBvdXRwdXQgbmFtZSB0bwoJICBiZSBzZXQgb24gYSBwZXItY29uZmlndXJhdGlvbiBiYXNpcy4KCjIwMDYtMDQtMTggMTA6MzIgIGFuZHkKCgkqIERvY3MvOiBjbWFrZS1pbmRlbnQudmltLCBjbWFrZS1zeW50YXgudmltOiBFTkg6IENsZWFudXAgaGVhZGVyCgkgIGFuZCBtYWtlIGxpY2Vuc2UgY29tcGF0aWJsZSB3aXRoIFZJTQoKMjAwNi0wNC0xOCAxMDozMiAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrU1RHWkdlbmVyYXRvci5jeHg6IEVOSDogUmVtb3ZlIHNvbWUgZGVidWdnaW5nCgoyMDA2LTA0LTE4IDEwOjMwICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5oOiBCVUc6IFVzaW5nIHRoZQoJICBzb3VyY2UtZmlsZSBwZXJtaXNzaW9ucyBieSBkZWZhdWx0IGZvciBpbnN0YWxsYXRpb24gaXMgc29tZXdoYXQKCSAgdW5wcmVkaWN0YWJsZSBiZWNhdXNlIHVzZXJzIGNhbiBleHRyYWN0IHNvdXJjZSBjb2RlIHdpdGggYWxtb3N0CgkgIGFueSBwZXJtaXNzaW9ucyAodW1hc2spLiAgQ2hhbmdpbmcgdGhlIGRlZmF1bHQgdG8gdXNlIDY0NCBmb3IKCSAgZmlsZXMgYW5kIDc1NSBmb3IgcHJvZ3JhbXMuICBObyByZWxlYXNlIGhhcyBkb2N1bWVudGVkIHRoZSBvbGQKCSAgYmVoYXZpb3Igc28gd2UgZG8gbm90IG5lZWQgY29tcGF0aWJpbGl0eS4KCjIwMDYtMDQtMTggMTA6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5oOiBCVUc6IEZpeGVkIG1pc3NpbmcgZmFsc2UgdmFsdWVzIGluCgkgIGRvY3VtZW50YXRpb24gb2YgSUYgY29tbWFuZC4KCjIwMDYtMDQtMTggMTA6MDEgIGtpbmcKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2U6IEJVRzogTmVlZCB0byBpZ25vcmUgc291cmNlIHBhY2thZ2luZyBvZiAjKiMKCSAgZmlsZXMgY3JlYXRlZCBieSBlbWFjcyBkdXJpbmcgZWRpdGluZy4KCjIwMDYtMDQtMTggMDk6MjQgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSBub24tZXhpc3RlbnQKCSAgaGVhZGVyCgoyMDA2LTA0LTE4IDA4OjI1ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLlNUR1pfSGVhZGVyLnNoLmluLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1NUR1pHZW5lcmF0b3IuaCwgU291cmNlL0NQYWNrL2NwYWNrLmN4eDogRU5IOgoJICBNb3JlIGNsZWFudXBzIGFuZCBhZGQgc3RneiBoZWFkZXIgc2NyaXB0LCBzbyBpdCBkb2VzIG5vdCBoYXZlIHRvCgkgIGJlIGhhcmQtY29kZWQuIEFsc28sIHRoZSB1c2VyIGNhbiBvdmVyd3JpdGUgaXQKCjIwMDYtMDQtMTggMDg6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0xNyAxOTowMiAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEZpeCBjb3B5cmlnaHQgeWVhcgoKMjAwNi0wNC0xNyAxODoxMCAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogcmVtb3ZlCgkgIGR1cGxpY2F0ZSBmaWxlIG5hbWUgdGVzdCBiZWNhdXNlIGl0IGZhaWxzIG9uIHhjb2RlCgoyMDA2LTA0LTE3IDE2OjA2ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IFZlcmlmeSB0aGUgZ2xvYmFsIHRhcmdldCBuYW1lCgkgIGV4aXN0cyBiZWZvcmUgdXNpbmcgaXQuIEZpeGVzIFZTIGFuZCBYY29kZQoKMjAwNi0wNC0xNyAxNTo1NSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBFTkg6IGZpeCBmaW5kIHgxMSBvbiB0aGUgbWFjCgoyMDA2LTA0LTE3IDE1OjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogZml4IGphdmEgZm9yIGlkZSBidWlsZHMgYWdhaW4KCjIwMDYtMDQtMTcgMTU6MjYgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogQWRkIHBhY2thZ2luZyBvZiBzb3VyY2UKCSAgY29kZSAobWFrZSBwYWNrYWdlX3NvdXJjZSkKCjIwMDYtMDQtMTcgMTQ6MTMgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBDT01QOiBGaXggY29tcGlsYXRpb24gb24gbGludXgKCSAgKGRsb3Blbi9kbGNsb3NlIHN5bWJvbHMpCgoyMDA2LTA0LTE3IDE0OjAwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlSmF2YUluZm9ybWF0aW9uLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBmaXggamF2YSBhbmQgYWRkCgkgIE9CSkVDVF9ESVIgc3VwcG9ydAoKMjAwNi0wNC0xNyAxMzo1OSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL1N1YjEvTmFtZUNvbmZsaWN0VGVzdC5jLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvU3ViMi9OYW1lQ29uZmxpY3RUZXN0LmMsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvU3ViMS9OYW1lQ29uZmxpY3RUZXN0LmMsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9TdWIyL05hbWVDb25mbGljdFRlc3QuYywKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9TdWIxL05hbWVDb25mbGljdFRlc3QuYywKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9TdWIyL05hbWVDb25mbGljdFRlc3QuYzogRU5IOgoJICBhbGxvdyBtdWx0aXBsZSBmaWxlcyB3aXRoIHRoZSBzYW1lIG5hbWUgaW4gZGlmZmVyZW50IHN1YiBkaXJzCgkgIHRlc3QKCjIwMDYtMDQtMTcgMTM6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogYWxsb3cgbXVsdGlwbGUKCSAgZmlsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGluIGRpZmZlcmVudCBzdWJkaXJzCgoyMDA2LTA0LTE3IDEzOjU3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEVOSDogYWRkIG1pbmd3IHRlc3QgdG8KCSAgY3h4CgoyMDA2LTA0LTE3IDEzOjU3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlOiBFTkg6IGFkZCB3aW5kb3dzIGFwcHMgdG8KCSAgbWluZ3cKCjIwMDYtMDQtMTcgMDc6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0xNiAxMzo0OSAgYW5keQoKCSogRG9jcy9jbWFrZS1zeW50YXgudmltOiBFTkg6IENsZWFudXAsIG1ha2UgY2FzZSBpbnNlbnNpdGl2ZSwKCSAgcmVtb3ZlIG1hY3JvIHNpbmNlIGl0IGRvZXMgbm90IHdvcmsgYW55d2F5CgoyMDA2LTA0LTE2IDA4OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMTUgMTM6MDIgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1NUR1pHZW5lcmF0b3IuaCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5oLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrWklQR2VuZXJhdG9yLmg6IEVOSDogU3VwcG9ydCBmb3IgcGFja2FnaW5nCgkgIHNvdXJjZSwgc2V2ZXJhbCBjbGVhbnVwcyBhbmQgbW9yZSB5ZWVoYWEuLi4KCjIwMDYtMDQtMTUgMDg6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0xNCAxNTowOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBFTkg6IG1ha2Ugc3VyZSBmcmFtZXdvcmtzIGFyZSBub3Qgc2VhcmNoZWQKCSAgZm9yIHggaGVhZGVyIGZpbGVzCgoyMDA2LTA0LTE0IDA5OjEzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMTQgMDk6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggc3ludGF4CgoyMDA2LTA0LTE0IDA4OjU4ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlLCBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ1BhY2tDb25maWcuY21ha2UuaW46IEVOSDogU3RhcnQgYWRkaW5nIHN1cHBvcnQgZm9yCgkgIHBhY2thZ2luZyBjb21wb25lbnQgYW5kIHRvIHBhY2thZ2UgaW50byBhIHN1YmRpcmVjdG9yeQoKMjAwNi0wNC0xNCAwODo0NCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2Ugc3VyZSBjbWFrZSBjYW4gYmUgYnVpbHQgd2l0aCBhbgoJICBvbGRlciB2ZXJzaW9uIG9mIGNtYWtlCgoyMDA2LTA0LTEzIDIzOjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4OiBFTkg6IGZpeCB3YXJuaW5nCgoyMDA2LTA0LTEzIDIzOjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaCwgY21ha2VtYWluLmN4eDoKCSAgRU5IOiBzZWFyY2ggZm9yIGhlbHAgbW9kdWxlcyBpbiB0aGUgY29ycmVjdCBwbGFjZSBmb3IgaW5zdGFsbCBhbmQKCSAgc291cmNlIHRyZWUgYnVpbGRzCgoyMDA2LTA0LTEzIDIyOjU3ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogRml4ZWQgaW5zdGFsbCBydWxlcyB0byB1c2UKCSAgY29weS1pZi1kaWZmZXJlbnQuCgoyMDA2LTA0LTEzIDIyOjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEltcHJvdmVkIGltcGxlbWVudGF0aW9uIG9mCgkgIEZpbGVzRGlmZmVyIHRvIGF2b2lkIGFsbG9jYXRpbmcgZW5vdWdoIG1lbW9yeSBmb3IgdGhlIGVudGlyZSBmaWxlCgkgIHR3aWNlLiAgSW5zdGVhZCB1c2luZyBhIGJsb2NrLWF0LWEtdGltZSBjb21wYXJpc29uLgoKMjAwNi0wNC0xMyAxNToyOCAga2luZwoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC93cmFwcGVyLmN4eDogQ09NUDogRG8gbm90IHVzZSBBTlNJIGZ1bmN0aW9uCgkgIHByb3RvdHlwZXMgdG8gcGFjaWZ5IEhQLgoKMjAwNi0wNC0xMyAxMTowMCAgaG9mZm1hbgoKCSogYm9vdHN0cmFwLCBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21GaW5kQmFzZS5jeHgsIFNvdXJjZS9jbUZpbmRCYXNlLmgsCgkgIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5oLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOgoJICBFTkg6IGFkZCBwYXRjaCBmb3IgZmluZGluZyBhcHBsaWNhdGlvbnMgb24gT1NYCgoyMDA2LTA0LTEzIDEwOjE1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OgoJICBCVUc6IFdvcmstYXJvdW5kIFdhdGNvbSBXTWFrZSBsaW1pdGF0aW9uIGZvciBtdWx0aXBsZS1vdXRwdXQKCSAgY3VzdG9tIGNvbW1hbmQgc3VwcG9ydC4KCjIwMDYtMDQtMTMgMDg6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0xMiAyMjowNCAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsU2NyaXB0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFNjcmlwdEdlbmVyYXRvci5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQxLmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQyLmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9JbnN0YWxsU2NyaXB0MS5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0luc3RhbGxTY3JpcHQyLmNtYWtlOiBFTkg6IEFkZGVkCgkgIElOU1RBTEwoQ09ERSkgbW9kZSB0byBhbGxvdyBpbmxpbmUgc3BlY2lmaWNhdGlvbiBvZiBpbnN0YWxsCgkgIHNjcmlwdCBjb2RlLglUaGlzIHJlZHVjZXMgdGhlIG5lZWQgZm9yIGNvbmZpZ3VyaW5nIGFuIGluc3RhbGwKCSAgc2NyaXB0IHRoYXQgbmVlZHMgc29tZSB2YXJpYWJsZSBzZXR0aW5ncyBiZWNhdXNlIHRoZSBpbnN0YWxsIGNvZGUKCSAgY2FuIHNldCB0aGluZyB1cCBmaXJzdC4KCjIwMDYtMDQtMTIgMjE6MjQgIGFuZHkKCgkqIERvY3MvY21ha2UtaW5kZW50LnZpbTogRU5IOiBVbmlmeSB0aGUgY29tbWVudAoKMjAwNi0wNC0xMiAyMToyMCAgYW5keQoKCSogRG9jcy9jbWFrZS1zeW50YXgudmltOiBFTkg6IE1vcmUgc3lzdGVtIHZhcmlhYmxlcywgbW9yZQoJICBvcGVyYXRvcnMsIG1vcmUgY29tbWFuZHMsIGZpeCBzb21lIHN0cmluZyBpc3N1ZXMgYW5kIHNvbWUgY21ha2UKCSAgYXJndW1lbnRzIGlzc3VlcwoKMjAwNi0wNC0xMiAxNToyMyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGxhbmcgYnkgY3VzdG9tIGNvbW1hbmQgZG9lcyBub3QgeWV0CgkgIHdvcmsgZm9yIFhjb2RlCgoyMDA2LTA0LTEyIDExOjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNi0wNC0xMiAxMTozNiAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmg6IEVOSDogZml4IGNvbXBpbGUgaXNzdWUgb24gSFAKCSAgaG9wZWZ1bGx5CgoyMDA2LTA0LTEyIDA5OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRU5IOiBjYXNlIGluc2Vuc2l0aXZlIGNvbW1hbmQgaGVscAoKMjAwNi0wNC0xMiAwODoxNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTExIDIyOjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IGFkZCBtb3JlIHZlcmJvc2Ugb3V0cHV0IGluIHZlcmJvc2UgbW9kZQoKMjAwNi0wNC0xMSAyMjozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGZpeCByZS1ydW4gb2YgY21ha2UgYmFzZWQgb24KCSAgY29uZmlndXJlZCBmaWxlcyB0aGF0IGFyZSBkb25lIHdpdGggY29weSBpZiBkaWZmZXJlbnQgYW5kIG5ldmVyCgkgIGNoYW5nZQoKMjAwNi0wNC0xMSAxNzoxMSAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGVuYWJsZSB0ZXN0CgkgIGZvciBqYXZhIHdpdGggSURFIGJ1aWxkcwoKMjAwNi0wNC0xMSAxNjo1NSAga2luZwoKCSogTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWljbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWlmb3J0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3Mtd2NsMzg2LmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogU3BsaXQKCSAgQ01BS0VfU1RBTkRBUkRfTElCUkFSSUVTIGludG8gcGVyLWxhbmd1YWdlIHZhcmlhYmxlcwoJICBDTUFLRV88bGFuZz5fU1RBTkRBUkRfTElCUkFSSUVTLiAgVGhpcyBpcyBuZWVkZWQgdG8gZ2V0CgkgIHByb2dyYW1tYWJsZSBsYW5ndWFnZSBzdXBwb3J0IHdvcmtpbmcgd2l0aCBWaXN1YWwgU3R1ZGlvCgkgIGdlbmVyYXRvcnMuICBJdCBtYWtlcyBzZW5zZSBhbnl3YXkuCgoyMDA2LTA0LTExIDE0OjU0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IFVzZSBmbGFnLW1hcAoJICB0cmFuc2Zvcm0gb25seSBmb3IgQyBhbmQgQysrIGZsYWdzLgoKMjAwNi0wNC0xMSAxNDo1MyAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IFJlc3RvcmVkIGltcGxlbWVudGF0aW9uIG9mCgkgIEFkZEN1c3RvbUNvbW1hbmRUb0NyZWF0ZU9iamVjdC4gIFVwZGF0ZWQgaXQgdG8gdXNlIG5ld2VyIGN1c3RvbQoJICBjb21tYW5kIGZ1bmN0aW9uYWxpdHkuCgoyMDA2LTA0LTExIDEzOjMyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogSW5zdGFsbCBzY3JpcHRzIHNob3VsZCBob25vcgoJICBFWENMVURFX0ZST01fQUxMIG9wdGlvbnMgZm9yIHN1YmRpcmVjdG9yaWVzLglUaGlzIGFkZHJlc3NlcwoJICBidWcjMzEwMC4KCjIwMDYtMDQtMTEgMTI6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOgoJICBFTkg6IHNvbWUgcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9ucwoKMjAwNi0wNC0xMSAxMTo0MCAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IERvIG5vdCBhZGQgbm9uLXBlci1jb25maWcKCSAgc3ViZGlyZWN0b3J5IG5hbWUgb2YgY21ha2UgdGFyZ2V0IGxpYnJhcmllcyBhcyBmdWxsIHBhdGggbGlicy4KCjIwMDYtMDQtMTEgMTE6MDYgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUN1c3RvbUNvbW1hbmQuaCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC93cmFwcGVyLmN4eDogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZQoJICBvdXRwdXRzIGdlbmVyYXRlZCBieSBhIHNpbmdsZSBjdXN0b20gY29tbWFuZC4gIEZvciBWaXN1YWwgU3R1ZGlvCgkgIGdlbmVyYXRvcnMgdGhlIG5hdGl2ZSB0b29sIHByb3ZpZGVzIHN1cHBvcnQuCUZvciBYY29kZSBhbmQKCSAgTWFrZWZpbGUgZ2VuZXJhdG9ycyBhIHNpbXBsZSB0cmljayBpcyB1c2VkLiAgVGhlIGZpcnN0IG91dHB1dCBpcwoJICBjb25zaWRlcmVkIHByaW1hcnkgYW5kIGhhcyB0aGUgYnVpbGQgcnVsZSBhdHRhY2hlZC4gIE90aGVyCgkgIG91dHB1dHMgc2ltcGx5IGRlcGVuZCBvbiB0aGUgZmlyc3Qgb3V0cHV0IHdpdGggbm8gYnVpbGQgcnVsZS4KCSAgRHVyaW5nIGNtYWtlX2NoZWNrX2J1aWxkX3N5c3RlbSBDTWFrZSBkZXRlY3RzIHdoZW4gYSBzZWNvbmRhcnkKCSAgb3V0cHV0IGlzIG1pc3NpbmcgYW5kIHJlbW92ZXMgdGhlIHByaW1hcnkgb3V0cHV0IHRvIG1ha2Ugc3VyZSBhbGwKCSAgb3V0cHV0cyBhcmUgcmVnZW5lcmF0ZWQuICBUaGlzIGFwcHJvYWNoIGFsd2F5cyBidWlsZHMgdGhlIGN1c3RvbQoJICBjb21tYW5kIGF0IHRoZSByaWdodCB0aW1lIGFuZCBvbmx5IG9uY2UgZXZlbiBkdXJpbmcgcGFyYWxsZWwKCSAgYnVpbGRzLgoKMjAwNi0wNC0xMSAxMDowNCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogQlVHOiBGaXhlZCB0eXBvIGluIG5ldyBjbWFrZS1yZXJ1biBjb2RlLgoKMjAwNi0wNC0xMSAwODo1NiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IFRoZSBmYXN0IG1vZGUgc2hvdWxkIG5vdCByZWFkCgkgIENUZXN0Q3VzdG9tLmN0ZXN0IGZpbGVzCgoyMDA2LTA0LTExIDA4OjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMTAgMTM6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmg6IEVOSDogYWRkIHN1cHBvcnQgZm9yIHJlLXJ1bm5pbmcgY21ha2UgaWYgdGhlCgkgIGNtYWtlZmlsZXMgY2hhbmdlCgoyMDA2LTA0LTEwIDEzOjUyICBob2ZmbWFuCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgdGVzdCBmb3IgbWZjCgoyMDA2LTA0LTEwIDEzOjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVOSDogaGFuZGxlIHNpbmdsZSBwYXRoCgoyMDA2LTA0LTEwIDEzOjQ2ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VWUzZGaW5kTWFrZS5jbWFrZSwgQ01ha2VWUzcxRmluZE1ha2UuY21ha2UsCgkgIENNYWtlVlM3RmluZE1ha2UuY21ha2UsIENNYWtlVlM4RmluZE1ha2UuY21ha2UsCgkgIEluc3RhbGxSZXF1aXJlZFN5c3RlbUxpYnJhcmllcy5jbWFrZTogRU5IOiBhZGQgY29ycmVjdCBmbGFncyBmb3IKCSAgbXN2YyBnZW5lcmF0b3JzCgoyMDA2LTA0LTEwIDEzOjQ0ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlLCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2N0ZXN0LmN4eCwgU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eDogRU5IOgoJICBBZGQgc3VwcG9ydCBmb3IgcHJlaW5zdGFsbCBmb3IgY21ha2UgZ2VuZXJhdGVkIHByb2plY3RzIHdoZW4KCSAgcGFja2FnaW5nIHRoZW0KCjIwMDYtMDQtMTAgMTE6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggc28gYWxsIGNvbmZpZ3VyYXRpb25zCgkgIHNob3cgdXAKCjIwMDYtMDQtMTAgMTE6MDkgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6CgkgIEVOSDogRGVwcmVjYXRlIENQQUNLX0JJTkFSWV9ESVIgYW5kIGFkZAoJICBDUEFDS19JTlNUQUxMX0NNQUtFX1BST0pFQ1RTCgoyMDA2LTA0LTEwIDA5OjM2ICBhbmR5CgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBTb21lIGN0ZXN0IGN1c3RvbSBmaXhlcwoKMjAwNi0wNC0xMCAwODoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTA5IDA4OjE1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDkgMDc6NDUgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0UmVhZEN1c3RvbUZpbGVzQ29tbWFuZC5jeHg6IEJVRzogSW1wcm92ZSB0aGUKCSAgYmVoYXZpb3Igb2YgdGhlIFJlYWRDdXN0b21GaWxlc0NvbW1hbmQKCjIwMDYtMDQtMDggMTQ6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBtYWtlIHN1cmUgdmVyYm9zZSBvdXRwdXQgaXMKCSAgdXNlZCBmb3Iga2RlCgoyMDA2LTA0LTA4IDA4OjIzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDcgMTY6NDYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBXaW5kb3dzLWNsLmNtYWtlLCBXaW5kb3dzLWNsLmNtYWtlLmluOiBFTkg6CgkgIGFkZCBiZXR0ZXIgdmFyaWFibGVzIGZvciBNU1ZDIHZlcnNpb25zCgoyMDA2LTA0LTA3IDE2OjM1ICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IEFsbG93IHRvIG92ZXJ3cml0ZSBDUEFDS19CSU5BUllfRElSCgoyMDA2LTA0LTA3IDA3OjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDYgMDc6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wNC0wNSAxMTowNyAga2luZwoKCSogU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4OiBDT01QOiBNb3ZlZCB2YXIgZGVjbCBvdXQgb2YKCSAgX1dJTjMyIGJsb2NrLgoKMjAwNi0wNC0wNSAxMTowNSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4OiBCVUc6CgkgIEZpeGVkIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMgdG8gZGVhbCB3aXRoIHJhdyBsaW5rIGl0ZW1zIHRoYXQgZG8KCSAgbm90IHlldCBleGlzdCBhbmQgY29ycmVjdCBkcml2ZSBsZXR0ZXIgY2FzZSB0byBhdm9pZCBkdXBsaWNhdGUKCSAgcGF0aHMgb24gd2luZG93cy4gIEZpeGVkIGNtTG9jYWxHZW5lcmF0b3IgdG8gcGFzcyBDTWFrZSB0YXJnZXRzCgkgIGFzIGZ1bGwgcGF0aHMgdG8gY21PcmRlckxpbmtEaXJlY3RvcmllcyB0byBtYWtlIHN1cmUgdGhlIG9yZGVyaW5nCgkgIHdpbGwgcGljayB1cCB0aGUgcHJvcGVyIHRhcmdldCBsaWJyYXJpZXMuCgoyMDA2LTA0LTA1IDA3OjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6IGFkZCBwYXRoCgkgIGNvbnZlcnNpb24gc3R1ZmYgYW5kIHJtIFNZU1RFTV9QQVRICgoyMDA2LTA0LTA1IDA3OjMxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDQgMTc6MjcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VWUzhGaW5kTWFrZS5jbWFrZTogRU5IOiBhZGQgc2VhcmNoIGRpcmVjdG9yaWVzIGZvcgoJICAzMiBiaXQgZGV2ZW52IGZyb20gYSA2NGJpdCBjbWFrZQoKMjAwNi0wNC0wNCAxNzoxNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IFJlbW92aW5nIHBhcnQgb2YgZWFybGllciBmaXgKCSAgYmVjYXVzZSBpdCBkb2VzIG5vdCB3b3JrIHdpdGggVlMgZ2VuZXJhdG9ycy4JSXQgbWF5IGJlIHJlc3RvcmVkCgkgIGxhdGVyIGFmdGVyIGNtT3JkZXJMaW5rRGlycyBpcyBmdXJ0aGVyIGZpeGVkLgoKMjAwNi0wNC0wNCAxNDo1MyAga2luZwoKCSogU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaDogRU5IOiBBZGRlZCBkb2N1bWVudGF0aW9uCgkgIGZvciBDT01QSUxFX0ZMQUdTIHByb3BlcnR5IGFuZCBjbGFyaWZpZWQgbWVhbmluZyBvZgoJICBERUZJTkVfU1lNQk9MLgoKMjAwNi0wNC0wNCAxNDoyNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IEZpeGVkCgkgIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMgdG8gbWFrZSBzdXJlIGNtYWtlLWJ1aWx0IGxpYnJhcmllcyBhcmUKCSAgZm91bmQgcHJvcGVybHkuICBBbHNvIHRha2luZyBsaWJyYXJpZXMgdGhhdCB3aWxsIGJlIGJ1aWx0IGJ1dCBtYXkKCSAgbm90IHlldCBleGlzdCBpbnRvIGFjY291bnQuICBUaGUgcGVyLWNvbmZpZ3VyYXRpb24gc3ViZGlyZWN0b3JpZXMKCSAgdGhhdCBhcmUgaW5jbHVkZWQgYnkgZ2VuZXJhdG9ycyBpbiB0aGUgbGluayBwYXRoIGFyZSBjaGVja2VkIGZvcgoJICBjb25mbGljdGluZyBsaWJyYXJpZXMgYWxzby4gIFBvdGVudGlhbGx5IGNvbmZsaWN0aW5nIGxpYnJhcmllcwoJICB0aGF0IGFyZSBhY3R1YWxseSBzeW1saW5rcyBiYWNrIHRvIHRoZSBkZXNpcmVkIGxpYnJhcnkgYXJlIG5vCgkgIGxvbmdlciBjb25zaWRlcmVkIGNvbmZsaWN0aW5nLCB3aGljaCBhdm9pZHMgYm9ndXMgaW1wb3NzaWJsZQoJICBvcmRlcmluZyB3YXJuaW5ncy4KCjIwMDYtMDQtMDQgMTQ6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZXhidWlsZC5jeHg6IEJVRzogY29tcGlsZXIgZml4CgoyMDA2LTA0LTA0IDEzOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjbUZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwgY21ha2V4YnVpbGQuY3h4LCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RSdW5TY3JpcHRDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFJ1blNjcmlwdENvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5oOiBFTkg6IGFkZGVkIHN1cHBvcnQgZm9yIC1TUCBzY3JpcHRzCgkgIGluIG5ldyBwcm9jZXNzZXMKCjIwMDYtMDQtMDQgMTE6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogY2hhbmdlCgkgIGxpYnJhcnkgb3JkZXIgdG8gdXNlIGEgdmVjdG9yCgoyMDA2LTA0LTA0IDExOjQ4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtVGFyZ2V0Lmg6IEVOSDogQWRkZWQKCSAgZ2xvYmFsIFRhcmdldE1hbmlmZXN0IGNvbXB1dGF0aW9uIGJldHdlZW4gQ29uZmlndXJlIGFuZCBHZW5lcmF0ZQoJICBzdGVwcy4gIFRoaXMgYWxsb3dzIGdlbmVyYXRvcnMgdG8ga25vdyB3aGF0IG90aGVyIHRhcmdldHMgd2lsbAoJICBleGlzdCBvbiBkaXNrIHdoZW4gdGhlIGJ1aWxkIGNvbXBsZXRlcy4KCjIwMDYtMDQtMDQgMDk6MzUgIGtpbmcKCgkqIFNvdXJjZS86IGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmg6IEVOSDogSU5DTFVERV9ESVJFQ1RPUklFUyBzaG91bGQgaGF2ZQoJICBiZWVuIHdyaXR0ZW4gdG8gcHJlcGVuZCB0byB0aGUgaW5jbHVkZSBwYXRoIHNvIHRoYXQgdGhlIG1vc3QKCSAgbG9jYWwgZGlyZWN0b3JpZXMgYXJlIGluY2x1ZGVkIGZpcnN0LiAgVGhpcyBpcyBhIHBhdGNoIGZyb20gQWxleAoJICB0byByZXNvbHZlIHRoZSBwcm9ibGVtIGJ5IGFsbG93aW5nIHVzZXJzIHRvIHN3aXRjaCB0aGUgZGVmYXVsdAoJICB1c2luZyBhIHZhcmlhYmxlIENNQUtFX0lOQ0xVREVfRElSRUNUT1JJRVNfQkVGT1JFIGFuZCB0aGVuIHN0aWxsCgkgIGV4cGxpY2l0bHkgYXBwZW5kaW5nIG9yIHByZXBlbmRpbmcgYnkgdXNpbmcgQUZURVIgb3IgQkVGT1JFCgkgIGFyZ3VtZW50cyBleHBsaWNpdGx5LgoKMjAwNi0wNC0wNCAwNzozOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTA0LTAzIDIyOjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBjb3JyZWN0IGFkZGNhY2hlIGNhbGwgdG8KCSAgZml4IGJ1aWxkIHRvb2xzCgoyMDA2LTA0LTAzIDE3OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IHNwYWNlcyBpbiBwYXRoIGZvcgoJICB4Y29kZQoKMjAwNi0wNC0wMyAxNjoyMCAgaG9mZm1hbgoKCSogU291cmNlLzogY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5jeHg6IEVOSDogbWFrZSBzdXJlIGluY2x1ZGUgYW5kIGxpYiBkaXJzCgkgIGFyZSB1bml4IHBhdGhzCgoyMDA2LTA0LTAzIDE1OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVOSDogZml4IHdhcm5pbmcsIGFuZCByZW1vdmUgZGVidWcgY29kZQoKMjAwNi0wNC0wMyAxMjo1NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IGFkZCBzdXBwb3J0IGZvciBwZXIgY29uZmlnCgkgIHRhcmdldCBMSU5LX0ZMQUdTCgoyMDA2LTA0LTAzIDA3OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDIgMTE6MjAgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBDUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1pJUEdlbmVyYXRvci5jeHgsIENQYWNrL2NtQ1BhY2taSVBHZW5lcmF0b3IuaCwKCSAgQ1BhY2svY3BhY2suY3h4OiBFTkg6IEFkZCBaSVAgZ2VuZXJhdG9yIGFuZCBhZGQgc3VwcG9ydCBmb3IKCSAgaW5jbHVkaW5nIG9yIGV4Y2x1ZGluZyB0aGUgdG9wbGV2ZWwgZGlyZWN0b3J5CgoyMDA2LTA0LTAyIDA4OjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDQtMDEgMDc6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0zMSAyMTo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaDoKCSAgRU5IOiBmaXggc3BlbGxpbmcKCjIwMDYtMDMtMzEgMTc6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogRU5IOiBmaXggZm9yIGJ1ZyAzMDY3IHRoZQoJICBmaXJzdCBmcmFtZXdvcmsgYXRlIHRoZSByZXN0IG9mIHRoZSBsaWJyYXJpZXMKCjIwMDYtMDMtMzEgMTM6MTcgIGhvZmZtYW4KCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtYWtlbWFpbi5jeHgsCgkgIFNvdXJjZS9jbWFrZXhidWlsZC5jeHg6IEVOSDogYWRkIGEgd3JhcHBlciBmb3IgeGNvZGVidWlsZCB0byBnZXQKCSAgYXJvdW5kIGJ1ZyBhbmQgdmVyYm9zZSBvdXRwdXQKCjIwMDYtMDMtMzEgMDg6NDYgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbWN1cmwvZ2V0ZGF0ZS5jOiBFTkg6IHJlbW92ZSBjKysgY29tbWVudCBmcm9tIGMgY29kZQoKMjAwNi0wMy0zMSAwODoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTMwIDIzOjAzICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY210YXIvYXBwZW5kLmM6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDMtMzAgMTc6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZXhidWlsZC5jeHg6IEVOSDogYWRkIHByb2dyYW0gdG8gcnVuIHhjb2RlYnVpbGQgYW5kCgkgIGdldCBhcm91bmQgYnVnCgoyMDA2LTAzLTMwIDE2OjU1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogRml4ZWQgb3JkZXIgb2Ygb3B0aW9ucyB0bwoJICBjbCBmb3IgMzItYml0LzY0LWJpdCB0ZXN0IHRvIHdvcmsgd2l0aCBWUyA2IE5NYWtlLgoKMjAwNi0wMy0zMCAxNTozOSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTWluR1dNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBJbXBsZW1lbnRlZCBWVDEwMCB0ZXJtaW5hbAoJICBlc2NhcGUgc2VxdWVuY2VzLiAgSWYgQ01BS0VfQ09MT1JfTUFLRUZJTEUgaXMgc2V0IHRoZW4gbWVzc2FnZXMKCSAgcHJvZHVjZWQgYnkgbWFrZWZpbGVzIHdpbGwgYmUgaW4gY29sb3IgaWYgdGhlIG5hdGl2ZSB0b29sCgkgIHN1cHBvcnRzIGl0LglUaGlzIGFkZHJlc3NlcyBidWcjMzA2MC4KCjIwMDYtMDMtMzAgMTM6NDkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLmluLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIFNvdXJjZS9jbURlcGVuZHNKYXZhUGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOFdpbjY0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOFdpbjY0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFNvdXJjZS9jbVhNTFBhcnNlci5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0SGFuZGxlckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdE1lbUNoZWNrSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHgsIFNvdXJjZS9rd3N5cy9HbG9iLmN4eCwKCSAgU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jLCBTb3VyY2Uva3dzeXMvUmVnaXN0cnkuY3h4LAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2Uva3dzeXMvaGFzaHRhYmxlLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL3Rlc3REeW5hbWljTG9hZGVyLmN4eCwKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL2NtY3VybC9nZXRkYXRlLmMsCgkgIFV0aWxpdGllcy9jbWN1cmwvaW5ldF9wdG9uLmMsIFV0aWxpdGllcy9jbWN1cmwvbWQ1LmMsCgkgIFV0aWxpdGllcy9jbWN1cmwvbXByaW50Zi5jLCBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbXRhci9hcHBlbmQuYywgVXRpbGl0aWVzL2NtdGFyL2Jsb2NrLmMsCgkgIFV0aWxpdGllcy9jbXRhci9leHRyYWN0LmMsIFV0aWxpdGllcy9jbXRhci9oYW5kbGUuYywKCSAgVXRpbGl0aWVzL2NtdGFyL291dHB1dC5jLCBVdGlsaXRpZXMvY210YXIvY29tcGF0L3NucHJpbnRmLmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfYXJyYXkuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19jbGllbnQuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19kYXRhLmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfZXhwYXQuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19wYXJzZS5jLAoJICBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX3JlZ2lzdHJ5LmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfc2VyaWFsaXplLmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfc3RydWN0LmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfc3RydXRpbC5jLAoJICBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX3N1cHBvcnQuYzogRU5IOiBhZGQgc3VwcG9ydCBmb3Igd2luNjQKCSAgZm9yIHZpc3VhbCBzdHVkaW8gMjAwNSBpZGUgYW5kIG5tYWtlLCBhbHNvIGZpeCB3YXJuaW5ncyBwcm9kdWNlZAoJICBieSBidWlsZGluZyBmb3Igd2luNjQKCjIwMDYtMDMtMzAgMTM6MzMgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtSW5zdGFsbENvbW1hbmQuY3h4LCBjbUluc3RhbGxDb21tYW5kLmgsCgkgIGNtSW5zdGFsbEZpbGVzR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwKCSAgY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsR2VuZXJhdG9yLmgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZCBuYW1lZCBjb21wb25lbnQgaW5zdGFsbGF0aW9uCgkgIGltcGxlbWVudGF0aW9uLiAgSW5zdGFsbGF0aW9uIGJlaGF2aW9yIHNob3VsZCBiZSB1bmNoYW5nZWQgdW5sZXNzCgkgIC1EQ09NUE9ORU5UPTxuYW1lPiBpcyBzcGVjaWZpZWQgd2hlbiBjbWFrZV9pbnN0YWxsLmNtYWtlIGlzCgkgIGludm9rZWQuCgoyMDA2LTAzLTMwIDExOjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaW5kQmFzZS5jeHgsIGNtRmluZEJhc2UuaDogRU5IOgoJICBtYWtlIHN1cmUgZnJhbWV3b3JrIHNlYXJjaCBvcmRlciBpcyBjb3JyZWN0CgoyMDA2LTAzLTMwIDA5OjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IG1vZGlmaWVkIHRoZSByZWxhdGl2ZSBwYXRoCgkgIGNvZGUgdG8gbm90IGRvIHJlbGF0aXZlIHBhdGhzIGJldHdlZW4gYmluIGFuZCBzb3VyY2UKCjIwMDYtMDMtMzAgMDg6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0yOSAxNjozNCAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IFVzZQoJICBQQlhSZXNvdXJjZXNCdWlsZFBoYXNlIGZvciByZXNyb3VyY2VzCgoyMDA2LTAzLTI5IDE2OjM0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogRU5IOiB1c2UgY29ycmVjdCBuYW1lIGZvciBwYXRoCgoyMDA2LTAzLTI5IDE2OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogU2ltcGxpZnkuIEluc3RlYWQgb2YKCSAgZG9pbmcgLi4vTWFjT1MganVzdCBjb3B5IHRvIGN1cnJlbnQgZGlyZWN0b3J5CgoyMDA2LTAzLTI5IDE2OjIxICBhbmR5CgoJKiBTb3VyY2UvY21YQ29kZTIxT2JqZWN0LmN4eDogRU5IOiBBZGQgc3VwcG9ydCBmb3IgWGNvZGUgMi4xCgoyMDA2LTAzLTI5IDE1OjAyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21YQ29kZU9iamVjdC5jeHgsCgkgIGNtWENvZGVPYmplY3QuaDogRU5IOiBBZGQgY29weSBzdGFnZXMgZm9yIGJ1bmRsZSBmaWxlcwoKMjAwNi0wMy0yOSAxMzozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4LCBUZXN0cy9CdW5kbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZAoJICBhIHRlc3QgZm9yIGZpbmQgZnJhbWV3b3JrIHN0dWZmIGluIGZpbmRfbGlicmFyeSwgYW5kIGZpeCB0aGUKCSAgZnJhbWV3b3JrIHNlYXJjaCBzdHVmZgoKMjAwNi0wMy0yOSAxMzoyNiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IHJlbW92ZSB0ZXN0IG9uIGN5Z3dpbiBzaW5jZSBpdAoJICByYW5kb21seSBmYWlscwoKMjAwNi0wMy0yOSAxMjozMyAgYW5keQoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmN4eCwgY21DVGVzdENvdmVyYWdlQ29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RTdWJtaXRDb21tYW5kLmN4eCwgY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4OiBDT01QOiBSZXR1cm4KCSAgMCBpbnN0ZWFkIG9mIGZhbHNlCgoyMDA2LTAzLTI5IDEyOjAxICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHgsIFNvdXJjZS9jbUNUZXN0LmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0SGFuZGxlckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdE1lbUNoZWNrSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0Q29tbWFuZC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RDb21tYW5kLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuaCwKCSAgVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBFTkg6IFNldmVyYWwgY2xlYW51cHMgYW5kIG1ha2UKCSAgc3VyZSB0aGluZ3MgZ2V0IHByb3BhZ2F0ZWQgd2hlcmUgdGhleSBzaG91bGQuIEFsc28sIGFsbG93IHRvIGxvYWQKCSAgQ1Rlc3QgY3VzdG9tIGZpbGVzIHRvIHRoZSBhY3R1YWwgY3Rlc3QgLVMgc2NyaXB0CgoyMDA2LTAzLTI5IDA5OjEwICBhbmR5CgoJKiBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eDogQ09NUDogUmVtb3ZlCgkgIHdhcm5pbmcKCjIwMDYtMDMtMjkgMDg6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0yOCAxNjozNiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RSZWFkQ3VzdG9tRmlsZXNDb21tYW5kLmN4eCwKCSAgVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBCVUc6IEZpeCB0aGUgcmVhZCBjdXN0b20gZmlsZXMKCSAgY29tbWFuZCBhbmQgYWRkIGEgY292ZXJhZ2UgdGVzdAoKMjAwNi0wMy0yOCAxNjoyNSAgYW5keQoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eDogQ09NUDogUmVtb3ZlCgkgIHdhcm5pbmdzCgoyMDA2LTAzLTI4IDE1OjIwICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogUGFzcyBoYW5kbGVyIGZsYWdzIHRvIGJvdGggdGVzdCBhbmQKCSAgbWVtY2hlY2sgaGFuZGxlcgoKMjAwNi0wMy0yOCAxNToxOSAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3QuaDogRU5IOiBBZGQgbmV3IGN0ZXN0IGNvbW1hbmQKCjIwMDYtMDMtMjggMTQ6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogRU5IOiBBZGRlZCBjaGVjayBvZgoJICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSB0byBza2lwIHRoZSBDTWFrZSBzeXN0ZW0gcGF0aAoJICBzZWFyY2ggd2hlbiBzaW11bGF0aW5nIENNYWtlIDIuMiBhbmQgZWFybGllci4KCjIwMDYtMDMtMjggMTQ6MzcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RSZWFkQ3VzdG9tRmlsZXNDb21tYW5kLmN4eCwKCSAgY21DVGVzdFJlYWRDdXN0b21GaWxlc0NvbW1hbmQuaCwgY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBFTkg6CgkgIEFkZCBjb21tYW5kIHRvIHJlYWQgY3Rlc3QgY3VzdG9tIGZpbGVzCgoyMDA2LTAzLTI4IDEzOjQ4ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEhhbmRsZSBzcGFjZXMgaW4KCSAgdGhlIHBhdGgKCjIwMDYtMDMtMjggMTM6MjMgIGFuZHkKCgkqIFRlc3RzL0J1bmRsZVRlc3QvOiBCdW5kbGVMaWIuY3h4LCBCdW5kbGVUZXN0LmN4eDogRU5IOiBDaGVjayBpZgoJICBmaWxlcyBleGlzdAoKMjAwNi0wMy0yOCAxMzoxNiAgYW5keQoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDogQWRkIHByb3BlciBzdXBwb3J0CgkgIGZvciBpbnN0YWxsaW5nIGJ1bmRsZXMKCjIwMDYtMDMtMjggMTM6MDcgIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTQuY21ha2U6IFNUWUxFOiBiZXR0ZXIgZXJyb3IgbWVzc2FnZSB3aGVuIEtERTQKCSAgaGFzbid0IGJlZW4gZm91bmQKCgkgIEFsZXgKCjIwMDYtMDMtMjggMTA6NTggIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IFBheSBhdHRlbnRpb24gdG8gdGhlCgkgIE1BQ09TWF9CVU5ETEUgdGFyZ2V0IHByb3BlcnR5IG9ubHkgb24gQVBQTEUgcGxhdGZvcm1zLgoKMjAwNi0wMy0yOCAwODo1NCAgYW5keQoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0J1bmRsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0J1bmRsZVRlc3QvU29tZVJhbmRvbUZpbGUudHh0LAoJICBUZXN0cy9CdW5kbGVUZXN0L3JhbmRvbVJlc291cmNlRmlsZS5wbGlzdC5pbjogRU5IOiBBZGQgc3VwcG9ydAoJICBmb3IgYWRkaW5nIGNvbnRlbnQgdG8gYnVuZGxlcwoKMjAwNi0wMy0yOCAwODoyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTI3IDEyOjIxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1VuaXhQYXRocy5jbWFrZTogRU5IOiBhZGQgL29wdC9sb2NhbC9pbmNsdWRlCgoyMDA2LTAzLTI3IDExOjA5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogRnJlZUJTRC5jbWFrZSwgT3BlbkJTRC5jbWFrZTogRU5IOiBhZGQgdW5peAoJICBwYXRocwoKMjAwNi0wMy0yNyAxMDo0NiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IEZyZWVCU0QuY21ha2UsIEhQLVVYLmNtYWtlLCBJUklYLmNtYWtlLAoJICBJUklYNjQuY21ha2UsIE5ldEJTRC5jbWFrZSwgT1NGMS5jbWFrZSwgU0NPX1NWLmNtYWtlLAoJICBTSU5JWC5jbWFrZSwgVHJ1NjQuY21ha2UsIFVMVFJJWC5jbWFrZSwgVU5JWF9TVi5jbWFrZSwKCSAgVW5peFBhdGhzLmNtYWtlLCBVbml4V2FyZS5jbWFrZSwgWGVuaXguY21ha2UsIGtGcmVlQlNELmNtYWtlOgoJICBFTkg6IGFkZCBtb3JlIHNlYXJjaCBwYXRocyBhbmQgYWRkIFVuaXhQYXRocyB0byBhbGwgdW5peAoJICBwbGF0Zm9ybXMKCjIwMDYtMDMtMjcgMDg6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0yNiAwODoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTI1IDA4OjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMjQgMTY6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxpc3RDb21tYW5kLmN4eDogRU5IOiBhbGxvdyB1bnNldCB2YXJzIHRvIGJlIHVzZWQgaW4KCSAgbGlzdCBsZW5ndGgKCjIwMDYtMDMtMjQgMTY6MTEgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmgsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBBUkNISVZFIG9wdGlvbgoJICB0byB0aGUgVEFSR0VUUyBtb2RlIG9mIHRoZSBJTlNUQUxMIGNvbW1hbmQuICBJdCBpcyBhIHRoaXJkIG9wdGlvbgoJICBhZGRlZCB0byBSVU5USU1FIGFuZCBMSUJSQVJZIHByb3BlcnR5IHR5cGVzLglTdGF0aWMgbGlicmFyaWVzCgkgIGFuZCBpbXBvcnQgbGlicmFyaWVzIGFyZSBub3cgdHJlYXRlZCBhcyBBUkNISVZFIHRhcmdldHMgaW5zdGVhZAoJICBvZiBMSUJSQVJZIHRhcmdldHMuICBUaGlzIGFkZHMgYSBsZXZlbCBvZiBncmFudWxhcml0eSBuZWNlc3NhcnkKCSAgZm9yIHVwY29taW5nIGZlYXR1cmVzLiAgQWxzbyB1cGRhdGVkIHRoZSBDVlMgQ01ha2UgcGF0Y2ggbGV2ZWwKCSAgc2V0IGluIENNYWtlX1ZFUlNJT05fUEFUQ0ggZnJvbSA0IHRvIDUgdG8gYWxsb3cgdXNlcnMgb2YgdGhpcwoJICB2ZXJzaW9uIHRvIGtub3cgd2hldGhlciB0aGlzIGluY29tcGF0aWJsZSBjaGFuZ2UgaXMgcHJlc2VudC4KCjIwMDYtMDMtMjQgMTQ6NDcgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IEVOSDogVXBkYXRlZCBpbXBsZW1lbnRhdGlvbiB0byB1c2UKCSAgbmV3IEZJTkRfKiBjb21tYW5kIHBvd2VyLiAgVGhlIGNvcnJlY3QgbGlicmFyeSBpcyBub3cgZm91bmQgb24KCSAgTWluR1cgYWxzby4KCjIwMDYtMDMtMjQgMTQ6MTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZEJhc2UuY3h4LCBjbUZpbmRCYXNlLmg6IEVOSDogQWRkZWQKCSAgTk9fQ01BS0VfRU5WSVJPTk1FTlRfUEFUSCwgTk9fQ01BS0VfUEFUSCwKCSAgTk9fU1lTVEVNX0VOVklST05NRU5UX1BBVEgsIGFuZCBOT19DTUFLRV9TWVNURU1fUEFUSCBvcHRpb25zIGJhY2sKCSAgdG8gYWxsb3cgbW9yZSBncmFudWxhcml0eSB0aGFuIE5PX0RFRkFVTFRfUEFUSC4KCjIwMDYtMDMtMjQgMTQ6MTUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vVW5peFBhdGhzLmNtYWtlOiBCVUc6IEZpeCAnL3VzZS9saWInIHRvIGJlCgkgICcvdXNyL2xpYicuCgoyMDA2LTAzLTI0IDEyOjIwICBtYXJ0aW5rCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsCgkgIEdlbmVyYXRlZEhlYWRlci9DTWFrZUxpc3RzLnR4dDogQlVHOiBmaXggdGVzdCB0byBsaXN0IGdlbmVyYXRlCgkgIGRoZWFkZXIKCjIwMDYtMDMtMjQgMDk6MTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLCBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxYQ29kZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwKCSAgVGVzdHMvRXh0ZXJuYWxPQkovQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0V4dGVybmFsT0JKL09iamVjdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvWDExL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBzdXBwb3J0IGZvciB1bml2ZXJzYWwgYmluYXJpZXMKCjIwMDYtMDMtMjQgMDg6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0yMyAxNTozNSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDMtMjMgMTM6NTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZWQgdW51c2VkIHJ1bGVzIGZyb20KCSAgdGFyZ2V0cyBmb3IgVlMKCjIwMDYtMDMtMjMgMTE6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBGaXggQ1Rlc3RDdXN0b20uY3Rlc3QgZmlsZQoKMjAwNi0wMy0yMyAxMDoxMCAgaG9mZm1hbgoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogdHJ5IHRvIGdldCByaWQgb2Ygd2FybmluZyBvbiBIUAoKMjAwNi0wMy0yMyAwOTo1NiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IE1vcmUgZXJyb3IgaGFuZGxpbmcKCjIwMDYtMDMtMjMgMDg6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0yMiAxNzoyMSAgaG9mZm1hbgoKCSogU291cmNlL2NtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eDogRU5IOiBkbyBub3QgZGVyZWZlcmVuY2UgZW1wdHkKCSAgc3RsIHZlY3RvcnMKCjIwMDYtMDMtMjIgMTU6MDEgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvSW5jbHVkZWQuY21ha2UsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleE9uZUNvbmZpZy9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvSW5jbHVkZWQuY21ha2UsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvSW5jbHVkZWQuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogYWRkZWQgdGVzdGluZwoJICBmb3IgbmV3IGZlYXR1cmVzCgoyMDA2LTAzLTIyIDE0OjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRml4IGxvZ2ljLiBJZiB0aGUgdmFyaWFibGUgaXMgbm90CgkgIHNldCwgdGhlbiBpdCBpcyBhbHdheXMgb2sgdG8gd3JpdGUgdGhlIGZpbGUKCjIwMDYtMDMtMjIgMTQ6NDAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuY3h4LAoJICBjbUZpbGVDb21tYW5kLmN4eCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHg6IEVOSDogQWxsb3cgYmxvY2tpbmcgb2YKCSAgd3JpdGluZyBpbnRvIHRoZSBzb3VyY2UgdHJlZQoKMjAwNi0wMy0yMiAxNDowNiAgbWFydGluawoKCSogU291cmNlLzogY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21Tb3VyY2VGaWxlLmN4eDogRU5IOiBhZGRlZCBzb21lCgkgIG5ldyBmdW5jdGlvbmFsaXR5CgoyMDA2LTAzLTIyIDEzOjA0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5jeHgsIGNtYWtlLmN4eDoKCSAgQ09NUDogRml4IGFwcGxlIGJvb3RzdHJhcCBpc3N1ZXMKCjIwMDYtMDMtMjIgMTE6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwKCSAgTW9kdWxlcy9DaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlLCBTb3VyY2UvY21Db21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuY3h4LAoJICBVdGlsaXRpZXMvY214bWxycGMvQ01ha2UvVHJ5Q29tcGlsZUZyb21Tb3VyY2UuY21ha2U6IEVOSDogQ2xlYW51cAoJICBib290c3RyYXAgZXZlbiBtb3JlCgoyMDA2LTAzLTIyIDExOjEwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6CgkgIEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgbGlua2luZyB0byBNUyAubGliIGxpYnJhcmllcyBpbiBNaW5HVy4KCjIwMDYtMDMtMjIgMDk6NTggIGFuZHkKCgkqIGJvb3RzdHJhcCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLAoJICBTb3VyY2UvY21ha2VtYWluLmN4eDogRU5IOiBSZW1vdmUgdGhpbmdzIGZyb20gYm9vdHN0cmFwCgoyMDA2LTAzLTIyIDA4OjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMjEgMTc6NDcgIGJhcnJlCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHRoZSBhcmd1bWVudHMgdG8gdGhpcyBmdW5jdGlvbgoJICB3ZXJlIG5vdCBjaGVja2VkIGluIGEgcm9idXN0IHdheQoKMjAwNi0wMy0yMSAxNjo1OSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIGZsYWcgZm9yIE1GQwoKMjAwNi0wMy0yMSAxNjo1OCAgYW5keQoKCSogTW9kdWxlcy9JbnN0YWxsUmVxdWlyZWRTeXN0ZW1MaWJyYXJpZXMuY21ha2U6IEVOSDogSGFuZGxlIHZpc3VhbAoJICBzdHVkaW8gdmVyc2lvbnMKCjIwMDYtMDMtMjEgMTY6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBUd28gdGhpbmdzLiBJZiB0aGVyZSBpcwoJICBDVGVzdEN1c3RvbS5jbWFrZSBpbiB0aGUgdG9wbGV2ZWwgZGlyZWN0b3J5IHJlYWQgdGhhdCBmaWxlIG9ubHkuCgkgIElmIHRoZXJlIGlzIENUZXN0Q3VzdG9tLmN0ZXN0IGluIHRoZSB0b3BsZXZlbCBkaXJlY3RvcnksIGRvIHRoZQoJICBnbG9iLCBpZiB0aGVyZSBpcyBub25lLCBkbyBub3RoaW5nCgoyMDA2LTAzLTIxIDE2OjAzICBhbmR5CgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCByZWxhdGl2ZSB0YWcgYW5kCgkgIGFkZCB0ZXN0IGZvciByZWxhdGl2ZSB0YWcKCjIwMDYtMDMtMjEgMTY6MDIgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IEdsb2IuY3h4LCBHbG9iLmh4eC5pbjogRU5IOiBBZGQgc3VwcG9ydCBmb3IKCSAgcmVsYXRpdmUgcGF0aHMgYW5kIGNsZWFudXAKCjIwMDYtMDMtMjEgMTY6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBIYW5kbGUgdmlzdWFsIHN0dWRpbyA4CgoyMDA2LTAzLTIxIDEyOjU2ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREUzLmNtYWtlOiBCVUc6IHB1dCB0aGUgcGF0aCB0byB0aGUga2RlMyBsaWIgZGlyIGluCgkgIEtERTNfTElCX0RJUiwgbm90IHRoZSBjb21wbGV0ZSBsaWJrZGVjb3JlLnNvCgoJICBBbGV4CgoyMDA2LTAzLTIxIDEyOjU0ICBhbmR5CgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1Rlc3QuY3h4LAoJICBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUdsb2IuY3h4LCBTb3VyY2UvY21HbG9iLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBSZW1vdmUgY21HbG9iIGFuZAoJICB1c2UgZ2xvYiBmcm9tIGt3c3lzCgoyMDA2LTAzLTIxIDA4OjQ1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogRW5hYmxpbmcKCSAgQ01BS0VfSU5DTFVERV9DVVJSRU5UX0RJUiBldmVuIGZvciBpbi1zb3VyY2UgYnVpbGRzIHRvIGJlIG1vcmUKCSAgY29uc2lzdGVudCB3aXRoIGl0cyBuYW1lLiAgVGhpcyBhbHNvIG1ha2VzIGRvdWJsZS1xdW90ZSBhbmQKCSAgYW5nbGUtYnJhY2tldCBpbmNsdWRlIHN0eWxlcyAoYWxtb3N0KSBpZGVudGljYWwuCgoyMDA2LTAzLTIxIDA4OjIwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMjAgMTY6MjQgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eDogRU5IOiBIYW5kbGUKCSAgdW51c3VhbCBwYXRoIGZvciBwYWNrYWdlbWFrZXIKCjIwMDYtMDMtMjAgMTI6MjkgIGFsZXgKCgkqIE1vZHVsZXMvOiBBZGRGaWxlRGVwZW5kZW5jaWVzLmNtYWtlLCBGaW5kUE5HLmNtYWtlLAoJICBLREUzTWFjcm9zLmNtYWtlOiBCVUc6IGRvbid0IGluY2x1ZGUgTWFjcm9MaWJyYXJ5LmNtYWtlLCBidXQgYWRkCgkgIGEgY21ha2UgbW9kdWxlIHdoaWNoIGltcGxlbWVudHMgQUREX0ZJTEVfREVQRU5ERU5DSUVTKCkgRU5IOiBtYXJrCgkgIHRoZSB2YXJpYWJsZXMgZnJvbSBGaW5kUE5HLmNtYWtlIGFzIGFkdmFuY2VkCgoJICBBbGV4CgoyMDA2LTAzLTIwIDA3OjU1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMTkgMDc6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0xOCAxMjoyMyAgaG9mZm1hbgoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogYWRkIG1vcmUgd2FybmluZyBzdHVmZgoKMjAwNi0wMy0xOCAxMjoxNiAgYWxleAoKCSogTW9kdWxlcy9GaW5kS0RFMy5jbWFrZTogU1RZTEU6IGZpeCB0eXBvcwoKCSAgQWxleAoKMjAwNi0wMy0xOCAwODo1OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTE3IDE2OjMwICBhbmR5CgoJKiBTb3VyY2UvY21Db25maWd1cmUuY21ha2UuaC5pbjogRU5IOiBQcm9wYWdhdGUgY21ha2UgdmFyaWFibGVzIHRvCgkgIG1hY3JvcyBpbiBDCgoyMDA2LTAzLTE3IDE2OjE0ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6CgkgIEVOSDogU2ltcGxpZnkgdGhlIHRlc3QKCjIwMDYtMDMtMTcgMTU6NDcgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogVXNlIHRoZSBjdXJyZW50IGNtYWtlJ3MKCSAgQ2hlY2tDWFhTb3VyY2VDb21waWxlcwoKMjAwNi0wMy0xNyAxNTo0NiAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGNtYWtlLmN4eDogRU5IOiBIYW5kbGUgbWlzc2luZyB1bnNldGVudiBhbmQgYWRkIGNoZWNrIGZvciBlbnZpcm9uCgoyMDA2LTAzLTE3IDE1OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogbWFrZSBjbWFrZSBjb21waWxlCgoyMDA2LTAzLTE3IDEyOjMxICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IEZpeCB3aW5kb3dzCgoyMDA2LTAzLTE3IDEyOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IEhhbmRsZSB3aW5kb3dzIHdpdGggaGFjayBmb3Igbm93CgoyMDA2LTAzLTE3IDEyOjA2ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IERpcmVjdG9yeS5jeHgsIERpcmVjdG9yeS5oeHguaW4sIFN5c3RlbVRvb2xzLmN4eCwKCSAgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IFVzZSBjb25zdCBjaGFyIHdoZXJlIGl0IHNob3VsZCBoYXZlCgkgIGJlZW4uIEF0IHNhbWUgdGltZSBmaXggQnVnIzI5NTgKCjIwMDYtMDMtMTcgMTE6NDQgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkIGEgbWV0aG9kIHRvCgkgIHJlbW92ZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKCjIwMDYtMDMtMTcgMTE6MTQgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtYWtlLmN4eDogRU5IOiBVc2UKCSAgdmVjdG9yIG9mIHBsYWluIHN0cmluZ3MgYW5kIGFkZCBjbWFrZSAtRSBjb21tYW5kIGZvciBnZXR0aW5nCgkgIGVudmlyb25tZW50CgoyMDA2LTAzLTE3IDEwOjU4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZCBhY2Nlc3MgZm9yCgkgIGFsbCBlbnZpcm9ubWVudCB2YXJpYWJsZXMKCjIwMDYtMDMtMTcgMDk6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0xNiAxODoyNCAga2luZwoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBXaGVuIGdlbmVyYXRpbmcgdGhlIGluc3RhbGwKCSAgcnVsZXMgZm9yIENNYWtlIGl0c2VsZiB0aGUgcGVyLWNvbmZpZ3VyYXRpb24gc3ViZGlyZWN0b3J5IG11c3QgYmUKCSAgdXNlZCB0byBzcGVjaWZ5IHRoZSBleGVjdXRhYmxlIGxvY2F0aW9uLgoKMjAwNi0wMy0xNiAxNzo0OSAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaW5kQmFzZS5jeHgsIGNtRmluZEJhc2UuaDogRU5IOiBjbGVhbiB1cCBmaW5kIHN0dWZmCgkgIHNvIHRoYXQgTk9fU1lTVEVNX1BBVEggaXMgYmFja3dhcmRzIGNvbXBhdGlibGUgYW5kIHlvdSBnZXQgcHV0CgkgIHN5c3RlbSBlbnYgdmFyaWFibGVzIGluIHRoZSBmaW5kIGNvbW1hbmRzCgoyMDA2LTAzLTE2IDE3OjQwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogL0RXSU4zMiBhbmQgL0RfV0lORE9XUwoJICBzaG91bGQgYmUgZGVmaW5lZCBmb3IgYWxsIGNvbmZpZ3VyYXRpb25zIG9yIGlmIG5vIGNvbmZpZ3VyYXRpb24KCSAgaXMgc2V0LgoKMjAwNi0wMy0xNiAxNzoyNiAga2luZwoKCSogU291cmNlL2t3c3lzL2F1dG9fcHRyLmh4eC5pbjogQ09NUDogU2tpcCB0cnlpbmcgdG8gdXNlIG5hdGl2ZQoJICBhdXRvX3B0ciBpbXBsZW1lbnRhdGlvbiBhbmQganVzdCBwcm92aWRlIGEgY29uZm9ybWluZyBvbmUuCgoyMDA2LTAzLTE2IDE3OjIwICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogQlVHOiBSZW1vdmVkCgkgIGNvbXBpbGVkLWluIENNQUtFX1NIQVJFRF9NT0RVTEVfUFJFRklYIGFuZAoJICBDTUFLRV9TSEFSRURfTU9EVUxFX1NVRkZJWCBmb3IgbG9hZGVkIGNvbW1hbmRzIGluIGZhdm9yIG9mIHVzaW5nCgkgIHRoZSBzZXR0aW5ncyBmcm9tIHRoZSBwbGF0Zm9ybSBmaWxlcy4KCjIwMDYtMDMtMTYgMTc6MDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29uZmlndXJlLmNtYWtlLmguaW4sIGNtRHluYW1pY0xvYWRlci5jeHgsCgkgIGNtRHluYW1pY0xvYWRlci5oLCBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEJVRzogUmVtb3ZlZAoJICBjb21waWxlZC1pbiBDTUFLRV9TSEFSRURfTU9EVUxFX1BSRUZJWCBhbmQKCSAgQ01BS0VfU0hBUkVEX01PRFVMRV9TVUZGSVggZm9yIGxvYWRlZCBjb21tYW5kcyBpbiBmYXZvciBvZiB1c2luZwoJICB0aGUgc2V0dGluZ3MgZnJvbSB0aGUgcGxhdGZvcm0gZmlsZXMuCgoyMDA2LTAzLTE2IDE3OjA3ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogQlVHOiBXaGVuIGNvcHlpbmcKCSAgdGhlIG1vZHVsZSB2YXJpYWJsZXMgZnJvbSBzaGFyZWQgbGlicmFyeSB2YXJpYWJsZXMgdXNlIGRvdWJsZQoJICBxdW90ZXMgZm9yIHRoZSByZXF1aXJlZCBkZWZpbml0aW9ucyAuLi5QUkVGSVggYW5kIC4uLlNVRkZJWCB0bwoJICBtYWtlIHN1cmUgYSB2YWx1ZSBpcyBzZXQgZXZlbiBpZiBpdCBpcyBlbXB0eS4KCjIwMDYtMDMtMTYgMTY6MDQgIGtpbmcKCgkqIFNvdXJjZS9jbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4OiBDT01QOiBVc2luZyBLV1N5cwoJICBhdXRvX3B0ciB0byBhdm9pZCBjcm9zcy1wbGF0Zm9ybSBwcm9ibGVtcy4KCjIwMDYtMDMtMTYgMTY6MDQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBhdXRvX3B0ci5oeHguaW46IEVOSDogQWRkaW5nCgkgIGF1dG9fcHRyIHRvIEtXU3lzIHRvIHByb3ZpZGUgYSBjb25mb3JtaW5nIHZlcnNpb24gZXZlcnl3aGVyZS4KCjIwMDYtMDMtMTYgMTU6NTMgIGFsZXgKCgkqIE1vZHVsZXMvRmluZEtERTQuY21ha2U6IEVOSDogYWZ0ZXIgc2VhcmNoaW5nIGZvciBrZGUtY29uZmlnIGluCgkgIHRoZSBzcGVjaWFsIGRpcnMsIHNlYXJjaCBhZ2FpbiBpbiB0aGUgc3RhbmRhcmQgZGlycyBCVUc6IGhhbmRsZQoJICBwYXRocyBvbiB3aW5kb3dzIGNvcnJlY3RseQoKCSAgQWxleAoKMjAwNi0wMy0xNiAxNTo1MCAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IENPTVA6IEZpeCBmb3IgYXV0b19wdHIKCSAgdXNhZ2Ugb24gVkM2J3MgYnJva2VuIGltcGxlbWVudGF0aW9uLgoKMjAwNi0wMy0xNiAxNDo1MSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIGdlbmVyYXRpb24gb2YgbWlzbWF0Y2hlZAoJICBJRiBpbiBpbnN0YWxsIHNjcmlwdC4gIFRoaXMgYnVnIHdhcyBpbnRyb2R1Y2VkIGR1cmluZyB0aGUgbV8KCSAgc3dlZXAuCgoyMDA2LTAzLTE2IDE0OjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLnk6CgkgIENPTVA6IEZpeCBtYWxsb2MvZnJlZSBkZWNsYXJhdGlvbiBmb3Igd2luZG93cyBjb21waWxlcnMuCgoyMDA2LTAzLTE2IDE0OjE0ICBraW5nCgoJKiBTb3VyY2UvY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eDogQlVHOiBEbyBub3QgbGVhayB0aGUKCSAgb2ZzdHJlYW0gb2JqZWN0IGluIGFwcGVuZCBtb2RlLiAgSnVzdCB1c2UgYW4gYXV0b19wdHIgZm9yIGJvdGgKCSAgY2FzZXMuCgoyMDA2LTAzLTE2IDExOjU3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLnksCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyVG9rZW5zLmg6IEVOSDogVXNpbmcgcGF0Y2ggZnJvbSBGcmFucwoJICBFbmdsaWNoIHRvIGNsYXJpZnkgZXJyb3IgbWVzc2FnZXMuCgoyMDA2LTAzLTE2IDExOjM0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IENPTVA6IE1ha2UgbWVtYmVycyBwcm90ZWN0ZWQKCSAgc28gdGhhdCBzdWJjbGFzcyBjYW4gdXNlIHRoZW0KCjIwMDYtMDMtMTYgMTE6MjkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LAoJICBjbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBCVUc6IENvdXBsZSBvZiBtZW1jaGVjayBidWdzOiBMb2cgZmlsZXMKCSAgc2hvdWxkIHJlYWxseSBiZSBkaWZmZXJlbnQgZm9yIHRlc3QgYW5kIG1lbWNoZWNrLiBBbHNvIG1ha2Ugc3VyZQoJICB0byBub3QgdHJ1bmthdGUgdGhlIG91dHB1dCBvZiB0aGUgdGVzdCB1bnRpbCB0aGUgdmFsZ3JpbmQgb3IgYW55CgkgIG90aGVyIGNoZWNraW5nIGlzIHBlZnJvcm1lZC4KCjIwMDYtMDMtMTYgMTE6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEVOSDogbm90IGFsbCBtZXNzYWdlcwoJICBhcmUgZXJyb3JzCgoyMDA2LTAzLTE2IDExOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEVOSDogZG9uJ3QgcHV0IHRoZSBkZWZhdWx0CgkgIGZyYW1ld29yayBwYXRoIGluIGEgLUYgb3B0aW9uCgoyMDA2LTAzLTE2IDExOjIxICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvRHluYW1pY0xvYWRlci5oeHguaW46IENPTVA6IEZpeCBwcm9ibGVtIHdpdGgKCSAgbmFtZXNwYWNlCgoyMDA2LTAzLTE2IDExOjE1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0ZyZWVCU0QuY21ha2U6IEVOSDogRW5hYmxpbmcgc29uYW1lIHN1cHBvcnQgb24KCSAgRnJlZUJTRC4KCjIwMDYtMDMtMTYgMTE6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4LCBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmgsCgkgIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtYWtlbWFpbi5jeHgsIFNvdXJjZS9rd3N5cy9EeW5hbWljTG9hZGVyLmN4eCwKCSAgU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuaHh4LmluLAoJICBTb3VyY2Uva3dzeXMvdGVzdER5bmFtaWNMb2FkZXIuY3h4LCBTb3VyY2Uva3dzeXMvdGVzdER5bmxvYWQuYywKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogQ2xlYW51cAoJICBEeW5hbWljTG9hZGVyIHNvIHRoYXQgdGhlIHN5bWJvbHMgaGF2ZSBtb3JlIGNvbnNpc3RlbnQgbmFtZXMsCgkgIHN0YXJ0IHVzaW5nIGR5bmFtaWMgbG9hZGVyIGZyb20ga3dzeXMgaW4gQ01ha2UKCjIwMDYtMDMtMTYgMTA6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxYQ29kZUdlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmg6IFNUWUxFOiBtaW5vciBjb21tZW50CgkgIGNsZWFudXBzCgoyMDA2LTAzLTE2IDEwOjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNCb29sV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmN4eCwgY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmgsCgkgIGNtQ3Vyc2VzRHVtbXlXaWRnZXQuY3h4LCBjbUN1cnNlc0ZpbGVQYXRoV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNGb3JtLmN4eCwgY21DdXJzZXNGb3JtLmgsIGNtQ3Vyc2VzTGFiZWxXaWRnZXQuY3h4LAoJICBjbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsIGNtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmgsCgkgIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc01haW5Gb3JtLmgsIGNtQ3Vyc2VzUGF0aFdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzUGF0aFdpZGdldC5oLCBjbUN1cnNlc1N0cmluZ1dpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmgsIGNtQ3Vyc2VzV2lkZ2V0LmN4eCwgY21DdXJzZXNXaWRnZXQuaDoKCSAgRU5IOiBtXyBjbGVhbnVwIGZvciBjdXJzZXMKCjIwMDYtMDMtMTYgMDk6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkVGVzdENvbW1hbmQuaCwgY21EYXRhLmgsIGNtRGVwZW5kc0MuY3h4LAoJICBjbURlcGVuZHNDLmgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmg6IEVOSDogYSB3YXJuaW5nIGZpeCBhbmQgc29tZSBtb3JlCgkgIGNsZWFudXAKCjIwMDYtMDMtMTYgMDk6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0xNSAxNjozMiAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBmaXggd2FybmluZwoKMjAwNi0wMy0xNSAxNDoxNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9JUklYNjQuY21ha2U6IEVOSDogdXNlIGMgbm90IGN4eAoKMjAwNi0wMy0xNSAxMzoyMCAgYWxleAoKCSogTW9kdWxlcy9Vc2VQa2dDb25maWcuY21ha2U6IEJVRzogY2hhbmdlIHRoZSBmb3JtYXR0aW5nIG9mIHRoZQoJICBwa2djb25maWcgbW9kdWxlIGRvY3VtZW50YXRpb24gc28gdGhhdCBpdCBkb2Vzbid0IGNyYXNoIHNvbWUKCSAgdmVyc2lvbnMgb2Yga29ucXVlcm9yIChmaXhlZCB3aXRoIGN1cnJlbnQga29ucXkpCgoJICBBbGV4CgoyMDA2LTAzLTE1IDEyOjAyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4OiBFTkg6IGZpeCB1cCB0aGlzIGNoYW5nZXMKCSAgZm9yIG1hYwoKMjAwNi0wMy0xNSAxMTozOCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTWFrZURlcGVuZC5jeHgsCgkgIGNtTWFrZURlcGVuZC5oLCBjbVhDb2RlT2JqZWN0LmN4eCwgY21YQ29kZU9iamVjdC5oOiBCVUc6IHNvbWUKCSAgVU5JWCBmaXhlcyBmb3IgbXkgbV8gY29tbWl0CgoyMDA2LTAzLTE1IDExOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMTUgMTE6MDEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5jeHgsCgkgIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUFkZFRlc3RDb21tYW5kLmN4eCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuY3h4LAoJICBjbUJ1aWxkTmFtZUNvbW1hbmQuY3h4LCBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmN4eCwKCSAgY21DUGx1Z2luQVBJLmN4eCwgY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY21DYWNoZU1hbmFnZXIuY3h4LAoJICBjbUNhY2hlTWFuYWdlci5oLCBjbUNvbW1hbmQuaCwgY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuaCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwgY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIGNtQ3VzdG9tQ29tbWFuZC5jeHgsIGNtQ3VzdG9tQ29tbWFuZC5oLCBjbURlcGVuZHMuY3h4LAoJICBjbURlcGVuZHMuaCwgY21EZXBlbmRzQy5jeHgsIGNtRGVwZW5kc0MuaCwgY21EZXBlbmRzRm9ydHJhbi5jeHgsCgkgIGNtRGVwZW5kc0ZvcnRyYW4uaCwgY21EZXBlbmRzRm9ydHJhbkxleGVyLmN4eCwKCSAgY21EZXBlbmRzSmF2YUxleGVyLmN4eCwgY21EeW5hbWljTG9hZGVyLmN4eCwKCSAgY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuY3h4LCBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eCwKCSAgY21FbmRJZkNvbW1hbmQuY3h4LCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIGNtRXhlY3V0ZVByb2Nlc3NDb21tYW5kLmN4eCwgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eCwKCSAgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmgsIGNtRXhwckxleGVyLmN4eCwKCSAgY21FeHByUGFyc2VySGVscGVyLmN4eCwgY21FeHByUGFyc2VySGVscGVyLmgsCgkgIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBjbUZMVEtXcmFwVUlDb21tYW5kLmgsCgkgIGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVUaW1lQ29tcGFyaXNvbi5jeHgsCgkgIGNtRmlsZVRpbWVDb21wYXJpc29uLmgsIGNtRmluZEJhc2UuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuY3h4LAoJICBjbUZvckVhY2hDb21tYW5kLmgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLCBjbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmN4eCwgY21HZXRUZXN0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HbG9iLmN4eCwgY21HbG9iLmgsIGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmgsIGNtSW5jbHVkZUNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmN4eCwgY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuY3h4LAoJICBjbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4LCBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21MaXN0Q29tbWFuZC5jeHgsIGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTGlzdEZpbGVDYWNoZS5oLAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LCBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtTWFjcm9Db21tYW5kLmN4eCwKCSAgY21NYWNyb0NvbW1hbmQuaCwgY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlRGVwZW5kLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oLAoJICBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsIGNtTWF0aENvbW1hbmQuY3h4LAoJICBjbU1lc3NhZ2VDb21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmN4eCwKCSAgY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwKCSAgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5jeHgsIGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuaCwKCSAgY21Qcm9qZWN0Q29tbWFuZC5jeHgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmgsCgkgIGNtUmVtb3ZlQ29tbWFuZC5jeHgsIGNtUmVtb3ZlRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwKCSAgY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuY3h4LCBjbVNldENvbW1hbmQuY3h4LAoJICBjbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsCgkgIGNtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmgsIGNtU291cmNlR3JvdXAuY3h4LAoJICBjbVNvdXJjZUdyb3VwLmgsIGNtU291cmNlR3JvdXBDb21tYW5kLmN4eCwgY21TdHJpbmdDb21tYW5kLmN4eCwKCSAgY21TdWJkaXJDb21tYW5kLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oLAoJICBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBjbVRlc3QuY3h4LCBjbVRlc3QuaCwgY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIGNtVHJ5UnVuQ29tbWFuZC5jeHgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oLAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVZUS1dyYXBUY2xDb21tYW5kLmgsCgkgIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LCBjbVZhcmlhYmxlV2F0Y2guY3h4LAoJICBjbVZhcmlhYmxlV2F0Y2guaCwgY21XaGlsZUNvbW1hbmQuY3h4LCBjbVdoaWxlQ29tbWFuZC5oLAoJICBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHgsIGNtWENvZGUyMU9iamVjdC5jeHgsIGNtWENvZGVPYmplY3QuY3h4LAoJICBjbVhDb2RlT2JqZWN0LmgsIGNtYWtlLmN4eCwgY21ha2UuaCwgY21ha2VtYWluLmN4eCwKCSAgY21ha2V3aXphcmQuY3h4LCBjbWFrZXdpemFyZC5oLCBDVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEhhbmRsZXJDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdE1lbUNoZWNrQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0Q29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RUZXN0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eDoKCSAgU1RZTEU6IHNvbWUgbV8gdG8gdGhpcy0+IGNsZWFudXAKCjIwMDYtMDMtMTUgMDk6MjMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogQWRkIHN2biBjbGVhbnVwCgkgIGJlZm9yZSBydW5uaW5nIHN2bgoKMjAwNi0wMy0xNSAwOToyMiAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eDogRU5IOiBBbGxvdyBtdWx0aXBsZQoJICBpbnN0YWxsIGRpcmVjdG9yaWVzCgoyMDA2LTAzLTE0IDE2OjM4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEVOSDogZ28gYmFjayB0byBmaW5kaW5nIHRoZSBmcmFtZXdvcmsKCSAgb3BlbmdsIG9uIHRoZSBtYWMKCjIwMDYtMDMtMTQgMTU6MTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogRU5IOiB1c2Ugc3RhbmRhcmQgaW5jbHVkZSBwYXRoIGZvcgoJICBPcGVuR0wKCjIwMDYtMDMtMTQgMTQ6MDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLAoJICBTb3VyY2UvY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmg6IEVOSDogYWRkIHN1cHBvcnQgZm9yIHJlbW92aW5nCgkgIGxhbmd1YWdlIGZsYWdzIGZyb20gc2hhcmVkIGxpYnJhcnkgYW5kIHNoYXJlZCBtb2R1bGUgbGluawoJICBjb21tYW5kcwoKMjAwNi0wMy0xNCAxMTozNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBGaXhlZCBvYmplY3QgZmlsZQoJICBuYW1lIGNvbnN0cnVjdGlvbiB0byB1c2UgQ29udmVydCBtZXRob2QgZm9yIHJlbGF0aXZlIHBhdGgKCSAgY29udmVyc2lvbi4gIEFsc28gZml4ZWQgdGVzdCBvZiByZXN1bHQgdG8gY2hlY2sgZXhwbGljaXRseSBmb3IgYQoJICBmdWxsIHBhdGguCgoyMDA2LTAzLTE0IDEwOjE0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IEF2b2lkIGZ1bGwgcGF0aHMKCSAgYW5kIHNwYWNlcyB3aGVuIGNvbnN0cnVjdGluZyBvYmplY3QgZmlsZSBuYW1lcy4KCjIwMDYtMDMtMTQgMDk6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBDbGFyaWZpZWQgY29uZnVzaW5nIGVycm9yIG1lc3NhZ2UuCgoyMDA2LTAzLTE0IDAyOjMxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMTMgMTY6NDUgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oOiBTVFlMRTogRml4IHN0eWxlIGNoZWNrZXIKCjIwMDYtMDMtMTMgMTU6NTcgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL3Rlc3REeW5hbWljTG9hZGVyLmN4eDogQ09NUDogRml4IHdhcm5pbmcKCjIwMDYtMDMtMTMgMTU6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogSW50cm9kdWNpbmcgbmV3CgkgIHBvbGljeSB0byBjb25zdHJ1Y3QgbW9yZSB1bmlxdWUgb2JqZWN0IGZpbGUgbmFtZXMuICBUaGlzIHNob3VsZAoJICBhbGxvdyBtdWx0aXBsZSBzb3VyY2VzIHdpdGggdGhlIHNhbWUgZmlsZSBuYW1lIGJ1dCBkaWZmZXJlbnQgRlVMTAoJICBwYXRocyB0byBiZSBhZGRlZCB0byBhIHNpbmdsZSB0YXJnZXQuCgoyMDA2LTAzLTEzIDE0OjM5ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IER5bmFtaWNMb2FkZXIuY3h4LCB0ZXN0RHluYW1pY0xvYWRlci5jeHg6IEJVRzogRml4CgkgIHByb2JsZW0gb24gTWFjT1NYLCBieSBkaXNhYmxpbmcgcGFydCBvZiB0aGUgdGVzdC4KCjIwMDYtMDMtMTMgMTM6MTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZTogRU5IOiBhZGQgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkKCSAgZml4IGZvciBtb3JlIGFnZ3Jlc3NpdmUgZmluZF9wYXRoIGNvbW1hbmQKCjIwMDYtMDMtMTMgMTE6MjcgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IEZpeCBkYXNoYm9hcmQgd2l0aCBjb3ZlcmFnZQoKMjAwNi0wMy0xMyAxMDo0OSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogRG8gbm90IGJ1aWxkIHRoZSBsaWJyYXJ5IGlmIHdlCgkgIGFyZSBub3QgZG9pbmcgVGVzdGluZwoKMjAwNi0wMy0xMyAxMDoyNyAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvdGVzdER5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IE1ha2UgdGVzdCB1c2FibGUgZnJvbQoJICBjb21tYW5kIGxpbmUKCjIwMDYtMDMtMTMgMDI6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0xMiAxMDowMyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiByZW1vdmUgd2FybmluZwoKMjAwNi0wMy0xMiAwOTo0MyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHJlbW92ZSB0ZXN0IHVudGlsIGl0IHdvcmtzCgoyMDA2LTAzLTEyIDAyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMTEgMTI6NDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogRU5IOiB0YWtlIGFkdmFudGFnZSBvZiBuZXcgZnJhbWV3b3JrCgkgIHN0dWZmCgoyMDA2LTAzLTExIDExOjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IHJlbW92ZSBwcmludAoKMjAwNi0wMy0xMSAxMTo1MiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiB0cnkgdG8gY2xlYW4gdXAgdGhlIHNlYXJjaCBmb3IKCSAgcHJvZ3JhbXMKCjIwMDYtMDMtMTEgMTA6MDkgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL0R5bmFtaWNMb2FkZXIuY3h4OiBCVUc6IEZpeCBmb3IgTUlOR1czMgoKMjAwNi0wMy0xMSAwOTo1OSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvRHluYW1pY0xvYWRlci5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIExhc3RFcnJvciBvbgoJICBIUFVYCgoyMDA2LTAzLTExIDA5OjQ3ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9EeW5hbWljTG9hZGVyLmN4eDogRU5IOiBBbHNvIGxvb2sgaW50byBkYXRhIHNlZ21lbnQKCSAgKGNvbnNpc3RhbnQgd2l0aCBvdGhlciBpbXBsZW1lbnRhdGlvbikKCjIwMDYtMDMtMTEgMDI6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0xMCAxNzozNyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiB1bmRvIGxhc3QgY2hhbmdlIGJlY2F1c2UgaXQKCSAgYnJva2UgdGhlIGRhc2hib2FyZAoKMjAwNi0wMy0xMCAxNjo1MyAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtRmlsZUNvbW1hbmQuaDogRU5IOiBhZGQgYSBuZXcgRklMRQoJICBTWVNURU1fUEFUSCB0aGF0IGFsbG93cyB5b3UgdG8gcmVhZCBhIGVudmlyb25tZW50IHZhcmlhYmxlIHdpdGggYQoJICBwYXRoIGluIGl0LgoKMjAwNi0wMy0xMCAxNjo1MiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBmaXggZmluZCBwcm9ncmFtIHRvIGxvb2sgZm9yCgkgIC5jb20gYW5kIC5leGUgY29ycmVjdGx5IGFuZCBub3QgcmV0dXJuIGZpbGVzIHdpdGggbm8gZXh0ZW5zaW9uIG9uCgkgIHdpbmRvd3MKCjIwMDYtMDMtMTAgMTY6MDMgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5oeHguaW4sIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQKCSAgZG9jdW1lbnRhdGlvbiBvbiB0aGUgcHJvYmxlbSB3aXRoIHN5c3RlbSB3aWRlIHBhdGggZm9yIGxvb2tpbmcgdXAKCSAgZHluYW1pYyBsaWJyYXJpZXMuIFNUWUxFOiBGaXggdHJhaWxpbmcgd2hpdGUgc3BhY2VzCgoyMDA2LTAzLTEwIDE1OjQyICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy90ZXN0RHluYW1pY0xvYWRlci5jeHg6IEJVRzogTmVlZCBhIC8gZm9yIFZpc3VhbAoJICBTdHVkaW8gYnVpbGQKCjIwMDYtMDMtMTAgMTU6MzggIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogdGVzdER5bmFtaWNMb2FkZXIuY3h4LCB0ZXN0U3lzdGVtVG9vbHMuaC5pbjogQlVHOgoJICBEbyB0aGUgcHJvcGVyIHBhdGgKCjIwMDYtMDMtMTAgMTU6MTIgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL3Rlc3REeW5hbWljTG9hZGVyLmN4eDogQlVHOiBOZWVkIGEgdHJhaWxpbmcgc2xhc2gKCjIwMDYtMDMtMTAgMTU6MDggIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIHRlc3REeW5hbWljTG9hZGVyLmN4eCwKCSAgdGVzdFN5c3RlbVRvb2xzLmguaW46IEJVRzogRml4IHByb2JsZW0gd2l0aCAgaW4gdGhlIHBhdGgKCjIwMDYtMDMtMTAgMTU6MDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkQW5kVGVzdEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdENvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q29uZmlndXJlQ29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0Q29uZmlndXJlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUNvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VDb21tYW5kLmgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RFbXB0eUJpbmFyeURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RIYW5kbGVyQ29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdE1lbUNoZWNrQ29tbWFuZC5oLAoJICBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdE1lbUNoZWNrSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0UnVuU2NyaXB0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RSdW5TY3JpcHRDb21tYW5kLmgsIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFNsZWVwQ29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTbGVlcENvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0Q29tbWFuZC5oLCBDVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RUZXN0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0Q29tbWFuZC5oLCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0VXBkYXRlQ29tbWFuZC5oLCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmg6IFNUWUxFOiBGaXggc29tZSBzdHlsZSBpc3N1ZXMKCjIwMDYtMDMtMTAgMTQ6NTMgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIHRlc3REeW5hbWljTG9hZGVyLmN4eCwKCSAgdGVzdFN5c3RlbVRvb2xzLmguaW46IEJVRzogVHJ5aW5nIHRvIGdldCB0ZXN0RHluYW1pY0xvYWRlciB0bwoJICB3b3JrIG9uIFNvbGFyaXMgYW5kIFN1bk9TLCB3aGVyZSBjdXJyZW50IGRpcmVjdG9yeSBpcyBub3QgbG9va3VwCgkgIHdoZW4gZG9pbmcgZGxvcGVuCgoyMDA2LTAzLTEwIDEzOjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudExleGVyLmgsCgkgIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXJUb2tlbnMuaCwgY21EZXBlbmRzSmF2YUxleGVyLmgsCgkgIGNtRGVwZW5kc0phdmFQYXJzZXJIZWxwZXIuaCwgY21EZXBlbmRzSmF2YVBhcnNlclRva2Vucy5oLAoJICBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLCBjbUV4cHJMZXhlci5oLCBjbUV4cHJQYXJzZXJUb2tlbnMuaCwKCSAgY21GTFRLV3JhcFVJQ29tbWFuZC5oLCBjbUZpbGVDb21tYW5kLmgsIGNtRmluZEJhc2UuaCwKCSAgY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtR2xvYmFsV2F0Y29tV01ha2VHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBjbUxpc3RDb21tYW5kLmgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21Tb3VyY2VGaWxlLmN4eCwKCSAgY21TdHJpbmdDb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBjbVRyeVJ1bkNvbW1hbmQuY3h4LCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHgsCgkgIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LCBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwKCSAgY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LAoJICBjbVZhcmlhYmxlV2F0Y2guY3h4LCBjbVZhcmlhYmxlV2F0Y2guaCwgY21XaGlsZUNvbW1hbmQuY3h4LAoJICBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIGNtWENvZGUyMU9iamVjdC5jeHgsCgkgIGNtWENvZGVPYmplY3QuY3h4LCBjbWFrZW1haW4uY3h4OiBTVFlMRTogZml4IGxpbmUgbGVuZ3RocwoKMjAwNi0wMy0xMCAxMzozNCAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBTVFlMRTogUmVtb3ZlIHRyYWlsaW5nIHdoaXRlc3BhY2VzCgoyMDA2LTAzLTEwIDEzOjM0ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBEeW5hbWljTG9hZGVyLmN4eDogQlVHOiBGaXgKCSAgRHluYW1pY0xvYWRlciBpbXBsZW1lbnRhdGlvbiBvbiBNYWNPU1ggKHVzaW5nIG9sZCBBUEkpCgoyMDA2LTAzLTEwIDEzOjMzICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkIHRyYWlsaW5nIHdoaXRlc3BhY2UKCjIwMDYtMDMtMTAgMTM6MDYgIGFuZHkKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5jeHgsCgkgIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmgsIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHgsCgkgIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwgY21CdWlsZENvbW1hbmQuY3h4LAoJICBjbUJ1aWxkTmFtZUNvbW1hbmQuaCwgY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsCgkgIGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ1BsdWdpbkFQSS5oLCBjbUNhY2hlTWFuYWdlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLmN4eCwgY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuaCwKCSAgY21Db21tYW5kQXJndW1lbnRQYXJzZXJUb2tlbnMuaCwgY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIGNtQ3VzdG9tQ29tbWFuZC5jeHgsIGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmgsCgkgIGNtRGVwZW5kc0ZvcnRyYW5MZXhlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5MZXhlci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTWFjcm9Db21tYW5kLmN4eCwKCSAgY21NYWNyb0NvbW1hbmQuaCwgY21NYWtlRGVwZW5kLmN4eCwgY21ha2UuY3h4LCBjbWFrZXdpemFyZC5jeHgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eCwgQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuaCwKCSAgQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLCBDUGFjay9jbUNQYWNrTG9nLmN4eCwKCSAgQ1BhY2svY21DUGFja0xvZy5oLCBDUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHgsIENQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4LCBDUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmgsCgkgIENQYWNrL2NwYWNrLmN4eDogU1RZTEU6IEZpeCBzb21lIHN0eWxlIGlzc3VlcwoKMjAwNi0wMy0xMCAxMjo0NyAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4OiBTVFlMRTogQ2xlYW51cAoJICB0cmFpbGluZyBzcGFjZXMKCjIwMDYtMDMtMTAgMTI6MDEgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogR2xvYi5jeHgsIFJlZ2lzdHJ5LmN4eCwgUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICB0ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBTVFlMRTogTWFrZSBzdXJlIHRvIHVzZSB0aGUgcHJvcGVyCgkgIGNhc3QuCgoyMDA2LTAzLTEwIDExOjU4ICBhbGV4CgoJKiBNb2R1bGVzL0ZpbmRLREU0LmNtYWtlOiBFTkg6IG5ldyBtb2R1bGUgdG8gZmluZCB0aGUKCSAgRmluZEtERTRJbnRlcm5hbC5jbWFrZSBpbnN0YWxsZWQgYnkga2RlbGliczQKCgkgIEFsZXgKCjIwMDYtMDMtMTAgMTE6NTcgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5jeHgsIHRlc3REeW5hbWljTG9hZGVyLmN4eDogRU5IOgoJICBNYWtlIHN1cmUgdGhhdCB3ZSBmaW5kIHRoZSBwcm9wZXIgc3ltYm9sIGFuZCBub3QgdGhlIG9uZSB0aGF0CgkgIHN0YXJ0IHdpdGggXy4gU1RZTEU6IFJlbW92ZSBhbiBvbGQgc3R5bGUgY2FzdAoKMjAwNi0wMy0xMCAxMTozMiAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBEeW5hbWljTG9hZGVyLmN4eCwgdGVzdER5bmFtaWNMb2FkZXIuY3h4OiBFTkg6CgkgIEhvcGVmdWxseSBoYXZlIHRoZSBEeW5hbWljTG9hZGVyIHRvIHRoZSBwcm9wZXIgdGhpbmcuCgoyMDA2LTAzLTEwIDExOjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5oLCBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5oLCBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuaCwgY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgY21TZXRUZXN0c1Byb3BlcnRpZXNDb21tYW5kLmgsIGNtU291cmNlR3JvdXAuaCwKCSAgY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtU3RyaW5nQ29tbWFuZC5oLCBjbVN1YmRpckNvbW1hbmQuaCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbVRhcmdldC5oLCBjbVRyeUNvbXBpbGVDb21tYW5kLmgsCgkgIGNtVmFyaWFibGVXYXRjaC5oLCBjbVhDb2RlMjFPYmplY3QuaCwgY21ha2UuaDogRU5IOiBmaXggbGluZQoJICBsZW5ndGggc3R5bGUgc3R1ZmYKCjIwMDYtMDMtMTAgMTE6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbmRCYXNlLmN4eDogRU5IOiBhdm9pZCBhZGRpbmcganVuayBpbnRvIHBhdGhzCgoyMDA2LTAzLTEwIDEwOjI4ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy90ZXN0RHluYW1pY0xvYWRlci5jeHg6IEJVRzogTWFrZSBzdXJlIHRvIGhhdmUgcHJvcGVyCgkgIGRlcGVuZGVuY2llcwoKMjAwNi0wMy0xMCAxMDoyNiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSBDTUFLRV9ETF9MSUJTIGFuZCBub3QgZGwKCSAgZGlyZWN0bHkgYXMgaXQgZG9lcyBub3QgYWx3YXlzIGV4aXN0CgoyMDA2LTAzLTEwIDEwOjIzICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQ09NUDogRml4IGN5Z3dpbiBidWlsZAoKMjAwNi0wMy0xMCAxMDoxOSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvdGVzdER5bmxvYWQuYzogQ09NUDogRml4IGNvbXBpbGF0aW9uIG9uIE1hY09TWAoJICAoY29tbW9uIHN5bWJvbHMgbm90IGFsbG93ZWQgd2l0aCBNSF9EWUxJQiBvdXRwdXQgZm9ybWF0KQoKMjAwNi0wMy0xMCAxMDoxMiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9CdW5kbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZAoJICBwYWNrYWdlIHRvIGJ1bmRsZSB0ZXN0CgoyMDA2LTAzLTEwIDEwOjA3ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvdGVzdER5bmFtaWNMb2FkZXIuY3h4OiBDT01QOiBBZGQgbWlzc2luZyBpbmNsdWRlCgoyMDA2LTAzLTEwIDAyOjMyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMDkgMTc6MTYgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL3Rlc3REeW5sb2FkLmM6IEJVRzogUmVtb3ZlIGNvbW1lbnQKCjIwMDYtMDMtMDkgMTc6MTUgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogdGVzdER5bmFtaWNMb2FkZXIuY3h4LCB0ZXN0RHlubG9hZC5jOiBFTkg6IHJlbW92ZQoJICB0ZXN0IHRlbXBvcmFyaWx5CgoyMDA2LTAzLTA5IDE3OjA4ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCB0ZXN0RHluYW1pY0xvYWRlci5jeHg6IEVOSDogU3RpbGwKCSAgbW9yZSBjb3ZlcmFnZSBvZiB0aGUgRHluYW1pY0xvYWRlcgoKMjAwNi0wMy0wOSAxNzowNiAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvdGVzdER5bmxvYWQuYzogRU5IOiBBZGQgYSBmaWxlIHRvIGdlbmVyYXRlIHRoZSBsaWIKCjIwMDYtMDMtMDkgMTY6NDAgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL3Rlc3REeW5hbWljTG9hZGVyLmN4eDogRU5IOiBJbXByb3ZlIHRlc3QgY292ZXJhZ2UKCjIwMDYtMDMtMDkgMTY6NDAgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogUmVnaXN0cnkuY3h4LCBSZWdpc3RyeS5oeHguaW46IFNUWUxFOiBNaW5vciBzdHlsZQoKMjAwNi0wMy0wOSAxNTo1NSAga2luZwoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogVXBkYXRlZCBwYXRjaCBsZXZlbCB0byA0IGZvciBzcGVjaWFsIEtERQoJICByZWxlYXNlLgoKMjAwNi0wMy0wOSAxNTo0NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oOiBFTkg6IGlmCgkgIENNYWtlQ2FjaGUudHh0IGhhcyBiZWVuIHJlbW92ZWQsIHRoZW4gYXV0b21hdGljYWxseSByZW1vdmUKCSAgQ01ha2VmaWxlcy8qLmNtYWtlCgoyMDA2LTAzLTA5IDE1OjAwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZTogRU5IOiBhZGQgY29ycmVjdCBpbml0aWFsIGZsYWdzIGZvcgoJICBhaXgKCjIwMDYtMDMtMDkgMTQ6NTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlOiBFTkg6IHJlbW92ZSBqdW5rCgoyMDA2LTAzLTA5IDE0OjQxICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBDYXJlZnVsbHkgdHVybiB0ZXN0aW5nIG9mCgkgIER5bmFtaWNMaWIgb24KCjIwMDYtMDMtMDkgMTQ6MzYgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogRGlyZWN0b3J5LmN4eCwgdGVzdFN5c3RlbVRvb2xzLmN4eCwKCSAgRHluYW1pY0xvYWRlci5jeHg6IFNUWUxFOiBNaW5vciBzdHlsZQoKMjAwNi0wMy0wOSAxNDozNSAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvdGVzdER5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IEFkZGluZyBpbml0aWFsIHRlc3QgZm9yCgkgIER5bmFtaWNMb2FkZXIKCjIwMDYtMDMtMDkgMTQ6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUZpbGVDb21tYW5kLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBhIGNtYWtlIHNjcmlwdCB0byBkbyB0aGUKCSAgY2xlYW4gc3RlcCwgdGhpcyBhbGxvd3MgZm9yIGxhcmdlIG51bWJlcnMgb2YgZmlsZXMgdG8gYmUgcmVtb3ZlZAoJICB3aXRob3V0IG1ha2luZyB0aGUgY29tbWFuZCBsaW5lIHRvbyBsb25nCgoyMDA2LTAzLTA5IDE0OjEwICBhbGV4CgoJKiBNb2R1bGVzLzogRmluZEtERS5jbWFrZSwgRmluZEtERTMuY21ha2UsIEtERTNNYWNyb3MuY21ha2UsCgkgIGtkZTNpbml0X2R1bW15LmNwcC5pbiwga2RlM3VpYy5jbWFrZTogRU5IOiBhZGQgcmVhbC13b3JsZC10ZXN0ZWQKCSAgYW5kIHVzZWQgS0RFMyBzdXBwb3J0LCBhbmQgb2Jzb2xldGUgRmluZEtERS5jbWFrZSwgd2hpY2ggd2Fzbid0CgkgIHVzZWQgYnkgYW55Ym9keSB0aGF0IEkgaGVhcmQgb2YKCgkgIEFsZXgKCjIwMDYtMDMtMDkgMTE6NTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIGN0ZXN0LmN4eDogU1RZTEU6IEZpeCBzb21lIHN0eWxlCgkgIGlzc3VlcwoKMjAwNi0wMy0wOSAxMTozNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlLCBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4OiBFTkg6IGZpeCBhCgkgIGJ1ZyBpbiB0aGUgZmluZCBwYXRoIHN0dWZmIHNvIHRoYXQgaXQgY2FuIGZpbmQgaGVhZGVycyBkZWVwIGluCgkgIGZyYW1ld29ya3MKCjIwMDYtMDMtMDkgMTE6MTcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eCwKCSAgY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsIGNtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBjbUNUZXN0QnVpbGRIYW5kbGVyLmgsIGNtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmN4eCwKCSAgY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuaCwgY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q29uZmlndXJlSGFuZGxlci5oLCBjbUNUZXN0Q292ZXJhZ2VDb21tYW5kLmN4eCwKCSAgY21DVGVzdENvdmVyYWdlQ29tbWFuZC5oLCBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwKCSAgY21DVGVzdENvdmVyYWdlSGFuZGxlci5oLCBjbUNUZXN0RW1wdHlCaW5hcnlEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsIGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5oLAoJICBjbUNUZXN0SGFuZGxlckNvbW1hbmQuY3h4LCBjbUNUZXN0SGFuZGxlckNvbW1hbmQuaCwKCSAgY21DVGVzdE1lbUNoZWNrQ29tbWFuZC5oLCBjbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eCwKCSAgY21DVGVzdFJ1blNjcmlwdENvbW1hbmQuY3h4LCBjbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIGNtQ1Rlc3RTdGFydENvbW1hbmQuY3h4LCBjbUNUZXN0U3RhcnRDb21tYW5kLmgsCgkgIGNtQ1Rlc3RTdWJtaXRDb21tYW5kLmN4eCwgY21DVGVzdFN1Ym1pdENvbW1hbmQuaCwKCSAgY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4LCBjbUNUZXN0VGVzdENvbW1hbmQuY3h4LAoJICBjbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBjbUNUZXN0VGVzdEhhbmRsZXIuaCwKCSAgY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4LCBjbUNUZXN0VXBkYXRlQ29tbWFuZC5oLAoJICBjbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IFNUWUxFOiBGaXggc29tZSBzdHlsZSBpc3N1ZXMKCjIwMDYtMDMtMDkgMDk6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4IHByb2JsZW0gb24KCSAgV2Fjb20gc3lzdGVtIHdpdGggZ2xvYmFsIHN5bWJvbGljIHRhcmdldHMKCjIwMDYtMDMtMDkgMDg6MzIgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsIGNwYWNrLmN4eDogU1RZTEU6IEZpeCBzdHlsZQoJICBwcm9ibGVtcwoKMjAwNi0wMy0wOSAwODoyMCAgYW5keQoKCSogVXRpbGl0aWVzLzogY21jdXJsL2Zvcm1kYXRhLmMsIGNtdGFyL2xpYnRhci5oOiBDT01QOiBSZW1vdmUgd2luNjQKCSAgd2FybmluZ3MKCjIwMDYtMDMtMDkgMDI6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0wOCAxODoxNiAgaG9mZm1hbgoKCSogU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmN4eDogRU5IOiBtYWtlIHN1cmUgc3lzdGVtIHBhdGggaXMKCSAgbm90IGFkZGVkIHVubGVzcyBhc2tlZCBmb3IKCjIwMDYtMDMtMDggMTc6MTEgIGFsZXgKCgkqIE1vZHVsZXMvVXNlUGtnQ29uZmlnLmNtYWtlOiBFTkg6IGFkZCBhIGNtYWtlIG1vZHVsZSBmb3IgdXNpbmcKCSAgcGtnLWNvbmZpZywgdGVzdGVkIGluIGtkZWxpYnMsIG9rIGJ5IEJpbGwgSG9mZm1hbgoKCSAgQWxleAoKMjAwNi0wMy0wOCAxNjozMyAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0dlbmVyYXRvcnMuY3h4LCBjbUNQYWNrR2VuZXJhdG9ycy5oLAoJICBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIGNtQ1BhY2tMb2cuY3h4LCBjbUNQYWNrTG9nLmgsIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja05TSVNHZW5lcmF0b3IuaCwgY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwgY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrU1RHWkdlbmVyYXRvci5oLCBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1RHWkdlbmVyYXRvci5oLCBjcGFjay5jeHg6IFNUWUxFOiBMb3RzIG9mIGZvcm1hdGluZyB0bwoJICByZW1vdmUgc3R5bGUgcHJvYmxlbXMKCjIwMDYtMDMtMDggMTQ6MDIgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9JbnN0YWxsU2NyaXB0Mi5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9UZXN0U3ViRGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9JbnN0YWxsU2NyaXB0Mi5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkCgkgIGFkZGl0aW9uYWwgc3ViZGlyZWN0b3J5IHRvIGltcHJvdmUgdGVzdGluZyBhbmQgdG8gYWxsb3cgY2xlYW51cAoJICB3aGVuIHRlc3RpbmcgY3BhY2sKCjIwMDYtMDMtMDggMTM6NTkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eDogQlVHOiBIYW5kbGUKCSAgdmVyc2lvbiB3aXRoIG11bHRpcGxlIGRvdHMKCjIwMDYtMDMtMDggMTM6MjAgIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBDT01QOiBPaywgZml4IHR5cG8KCjIwMDYtMDMtMDggMTM6MTMgIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCB0ZXN0aW5nIGZvciBjcGFjawoKMjAwNi0wMy0wOCAxMzowNiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEVOSDogRW5hYmxlZCBwcm9jZXNzIHRyZWUga2lsbGluZyBvbgoJICBBSVguCgoyMDA2LTAzLTA4IDEyOjQyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRU5IOiBFbmFibGVkIHByb2Nlc3MgdHJlZSBraWxsaW5nIG9uCgkgIHRoZSBTR0kuCgoyMDA2LTAzLTA4IDEyOjM2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRU5IOiBFbmFibGVkIHByb2Nlc3MgdHJlZSBraWxsaW5nIGZvcgoJICBGcmVlQlNEIGFuZCBTdW4uCgoyMDA2LTAzLTA4IDEyOjEyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRU5IOiBFbmFibGVkIHByb2Nlc3MgdHJlZSBraWxsaW5nIG9uCgkgIEhQLVVYLgoKMjAwNi0wMy0wOCAxMTo1NyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogRG8gbm90IGxlYWsgcHMgRklMRSB3aGVuIHRoZQoJICBwcm9jZXNzIHN0YXJ0cyBidXQgcmVhZGluZyB0aGUgaGVhZGVyIGZhaWxzLgoKMjAwNi0wMy0wOCAxMTozOSAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEVOSDogQWRkZWQgYSB3YXkgdG8gcXVpY2tseSBlbmFibGUKCSAgbWFudWFsIHRlc3Rpbmcgb2YgZ3JhbmRjaGlsZCBraWxsaW5nLgoKMjAwNi0wMy0wOCAxMTozOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEVOSDogQWRkZWQgaW1wbGVtZW50YXRpb24gb2YgcHJvY2VzcwoJICB0cmVlIGtpbGxpbmcgdGhhdCBydW5zICJwcyIgdG8gdHJhdmVyc2UgdGhlIHRyZWUuCgoyMDA2LTAzLTA4IDEwOjUyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxpc3RGaWxlQ2FjaGUuaDogQlVHOiBSZW1vdmUgc29tZQoJICBvbGQgbGVnYWN5IGNvZGUgIGFuZCByZW1vdmUgbWVtb3J5IGxlYWsKCjIwMDYtMDMtMDggMDk6MTYgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5jeHgsIER5bmFtaWNMb2FkZXIuaHh4LmluOiBCVUc6CgkgIEluY2x1ZGluZyBmaWxlIHdpdGhpbiBhIG5hbWVzcGFjZXt9IGlzIGRhbmdlcm91cyh1bmxlc3Mgc3ltYm9scwoJICBhcmUgd2l0aGluIGFuIGV4dGVybiBDKS4gQWxzbyB1cGRhdGUgZG9jdW1lbnRhdGlvbiBhYm91dCBzcGVjaWFsCgkgIGNhc2UgZm9yIE1hY09TWAoKMjAwNi0wMy0wOCAwMjo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTA3IDE5OjUyICBob2ZmbWFuCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgY3BhY2sgc3R1ZmYgZm9yIG5vdwoJICBzbyB0aGF0IHdlIGNhbiBnZXQgbWFjIGRhc2hib2FyZHMgYWdhaW4KCjIwMDYtMDMtMDcgMTU6MzEgIGFuZHkKCgkqIENNYWtlR3JhcGhWaXpPcHRpb25zLmNtYWtlLCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBhIHdheSB0bwoJICBvdmVyd3JpdGUgc29tZSBwcmVmZXJlbmNlcyBhbmQgaWdub3JlIGNlcnRhaW4gdGFyZ2V0cwoKMjAwNi0wMy0wNyAxNDo0NiAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBBZGQgQ01BS0VfQ09NTUFORCBhbmQgQ01BS0VfUk9PVCB2YXJpYWJsZXMKCSAgd2hlbiBydW5uaW5nIGluIHNjcmlwdCBtb2RlLglUaGlzIHBhcnRpYWxseSBhZGRyZXNzZXMgYnVnIzI4MjguCgoyMDA2LTAzLTA3IDE0OjM4ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IENoZWNrIGZvciB3aGV0aGVyIHRvIGFkZCAtQyB0bwoJICBwYWNrYWdlIHJ1bGUgc2hvdWxkIGNoZWNrIGZvciBhIC4gaW4gdGhlIGZpcnN0IGNoYXJhY3RlciBub3QgdGhlCgkgIHNlY29uZC4KCjIwMDYtMDMtMDcgMTI6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IENPTVA6IEZpeCB3YXJuaW5ncwoKMjAwNi0wMy0wNyAxMDowNSAga2luZwoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBCVUc6IE1vc3QgcGxhdGZvcm1zIG90aGVyIHRoYW4gTGludXgKCSAgc2VlbSB0byByZXF1aXJlIGV4ZWN1dGFibGUgcGVybWlzc2lvbnMgb24gdGhlaXIgc2hhcmVkIGxpYnJhcmllcy4KCjIwMDYtMDMtMDcgMTA6MDQgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IFNvbWUgcGxhdGZvcm1zIHJlcXVpcmUKCSAgZXhlY3V0YWJsZSBwZXJtaXNzaW9uIG9uIHNoYXJlZCBsaWJyYXJpZXMuCgoyMDA2LTAzLTA3IDAyOjEyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMDYgMTU6NDEgIGhvZmZtYW4KCgkqIGJvb3RzdHJhcDogRU5IOiBhZGQgbW9yZSBkZXBlbmRzIGZvciBib290c3RyYXAKCjIwMDYtMDMtMDYgMTU6MTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlOiBFTkg6IGFkZCBzdXBwb3J0IGZvciBsYW5ndWFnZQoJICBmbGFncyB0aGF0IGFsbG93IGZvciB1bml2ZXJzYWwgYmluYXJpZXMKCjIwMDYtMDMtMDYgMTU6MTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9DWUdXSU4uY21ha2UsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgbGFuZ3VhZ2UgZmxhZ3MgYXQgcnVsZSBleHBhbnNpb24gdGltZQoKMjAwNi0wMy0wNiAxNTowMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IGFkZCBzdXBwb3J0IGZvciBtYW5pZmVzdAoJICBzdHVmZgoKMjAwNi0wMy0wNiAxNDozMCAgbWFsYXRlcnJlCgoJKiBTb3VyY2Uva3dzeXMvRHluYW1pY0xvYWRlci5jeHg6IENPTVA6IEZpeCBjb21waWxhdGlvbiBvbiBNYWNPU1gKCjIwMDYtMDMtMDYgMTQ6MDggIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0My5jbWFrZTogRU5IOiB0cnkgdG8gZml4IG5vbi1jbGVhbiBkYXNoYm9hcmRzCgoyMDA2LTAzLTA2IDE0OjA3ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBDb21waWxlIER5bmFtaWNMb2FkZXIKCjIwMDYtMDMtMDYgMTQ6MDIgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzLzogRHluYW1pY0xvYWRlci5jeHgsIER5bmFtaWNMb2FkZXIuaHh4LmluOiBFTkg6CgkgIEFkZGluZyBrd3N5cyBpbXBsZW1lbnRhdGlvbiBmb3IgYSBEeW5hbWljTG9hZGVyIGNsYXNzLiBDb3B5IGZyb20KCSAgaXRrRHluYW1pY0xvYWRlciwgd2l0aCBwYXRjaCBmcm9tIGNtRHluYW1pY0xvYWRlcgoKMjAwNi0wMy0wNiAxMzo0MyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogRGlyZWN0b3J5LmN4eCwgUmVnaXN0cnkuY3h4OiBFTkg6IGFkZCBtaXNzaW5nCgkgIGNtYWtlIGRlcGVuZCBoYWNrcwoKMjAwNi0wMy0wNiAxMzozNCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL0dsb2IuY3h4OiBFTkg6IGFkZCBtaXNzaW5nIGNtYWtlIGluY2x1ZGUKCjIwMDYtMDMtMDYgMTM6MDIgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL0RpcmVjdG9yeS5jeHg6IENPTVA6IFNvbWUgU1RMIGltcGxlbWVudGF0aW9uIGRvIG5vdAoJICBwcm92aWRlIGNsZWFyIG9uIHN0ZDo6c3RyaW5nCgoyMDA2LTAzLTA2IDExOjU3ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IERpcmVjdG9yeS5jeHgsIERpcmVjdG9yeS5oeHguaW46IEJVRzogTmVlZCB0bwoJICByZXNldCBpbnRlcm5hbCBzdHJ1Y3R1cmUgaW4gY2FzZSBvZiBtdWx0aXBsZSBjYWxscyB0byBMb2FkCgoyMDA2LTAzLTA2IDEwOjEyICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy86IERpcmVjdG9yeS5jeHgsIERpcmVjdG9yeS5oeHguaW46IEVOSDogUmVkbwoJICBpbXBsZW1lbnRhdGlvbiBvZiBpdGtEaXJlY3RvcnkgdG8gdXNlIGt3c3lzIChhdm9pZCBkdXBsaWNhdGluZwoJICBjb2RlKS4KCjIwMDYtMDMtMDYgMDI6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0wNSAwOTowOSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeCBmb3IgZ2VuZXJhdGVkIGluc3RhbGwKCSAgc2NyaXB0cyB0byBzdXBwb3J0IHByZWZpeGVzIHdpdGggdHJhaWxpbmcgc2xhc2hlcyBvciBqdXN0IGEKCSAgc2luZ2xlIHNsYXNoLgoKMjAwNi0wMy0wNSAwODozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4OiBFTkg6IGZpeCBvbGQgc3R5bGUgcGFyc2luZyBvZiBGSU5ECgkgIGNvbW1hbmRzIGFuZCBmaXggYnJva2VuIHRlc3RzCgoyMDA2LTAzLTA1IDAyOjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDMtMDQgMDI6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0wMyAyMzowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtRmluZEJhc2UuY3h4OiBFTkg6IG1ha2Ugc3VyZSBOQU1FUyB0YWcgaXMgbm90IHJlcXVpcmVkCgkgIGZvciBuYW1lIGFyZ3VtZW50LCBmaXhlcyBtc3lzIGdlbmVyYXRvcgoKMjAwNi0wMy0wMyAxOToyOSAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgUEVSTUlTU0lPTlMKCSAgb3B0aW9uIHRvIHRoZSBUQVJHRVRTIG1vZGUgb2YgdGhlIElOU1RBTEwgY29tbWFuZC4KCjIwMDYtMDMtMDMgMTg6NDQgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9TaW1wbGVJbnN0YWxsL2luc3QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL2luc3QyLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvaW5zdC5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9pbnN0Mi5jeHg6CgkgIEVOSDogQWRkZWQgUEVSTUlTU0lPTlMgYW5kIFJFTkFNRSBvcHRpb25zIHRvIHRoZSBJTlNUQUxMCgkgIGNvbW1hbmQncyBGSUxFUyBhbmQgUFJPR1JBTVMgbW9kZSwgYW5kIGNvcnJlc3BvbmRpbmcgc3VwcG9ydCB0bwoJICBGSUxFKElOU1RBTEwpLiAgRGVmYXVsdCBwZXJtaXNzaW9ucyBmb3Igc2hhcmVkIGxpYnJhcmllcyBvbgoJICBub24tV2luZG93cy9ub24tT1NYIHBsYXRmb3JtcyBubyBsb25nZXIgaGFzIHRoZSBleGVjdXRlIGJpdCBzZXQuCgoyMDA2LTAzLTAzIDE4OjA2ICBraW5nCgoJKiBTb3VyY2UvOiBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IEVOSDogUmVwbGFjZWQgVXBkYXRlTG9jYXRpb24KCSAgbWV0aG9kIHdpdGggY2FsbCB0byBHZXRMb2NhdGlvbi4gIEFkZGVkIGNvbW1lbnQgYWJvdXQgcHJvYmxlbXMKCSAgd2l0aCB0aGUgTE9DQVRJT04gYXR0cmlidXRlLgoKMjAwNi0wMy0wMyAxNTowNCAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaDogRU5IOiBDaGVjayBwYWNrYWdlIG1ha2VyIHZlcnNpb24KCjIwMDYtMDMtMDMgMTQ6MjggIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IENPTVA6IE9vcHMsIHR5cG8KCjIwMDYtMDMtMDMgMTQ6MjQgIGFuZHkKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwgY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZAoJICBzdXBwb3J0IGZvciBleHBvcnRpbmcgZ3JhcGh2aXogb2YgdGhlIHByb2plY3QgZGVwZW5kZW5jaWVzCgoyMDA2LTAzLTAzIDEyOjU4ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFRlc3RzL0J1bmRsZVRlc3QvQnVuZGxlTGliLmN4eCwKCSAgVGVzdHMvQnVuZGxlVGVzdC9CdW5kbGVUZXN0LmN4eCwgVGVzdHMvQnVuZGxlVGVzdC9DTWFrZUxpc3RzLnR4dDoKCSAgQlVHOiBGaXhlZCBpbnN0YWxsYXRpb24gb2YgTWFjT1NYIEJ1bmRsZSBleGVjdXRhYmxlcyBhbmQgdGhlCgkgIGNvcnJlc3BvbmRpbmcgaW5zdGFsbF9uYW1lIHJlbWFwcGluZyBzdXBwb3J0LiAgRXh0ZW5kZWQgdGhlCgkgIEJ1bmRsZVRlc3QgdGVzdCB0byBjaGVjayB0aGF0IHRoaXMgYWxsIHdvcmtzLiAgUGFydCBvZiB0aGVzZQoJICBmaXhlcyByZXF1aXJlZCBjaGFuZ2luZyB0aGUgc2lnbmF0dXJlIG9mIEFwcGVuZERpcmVjdG9yeUZvckNvbmZpZwoJICBpbiBhbGwgZ2VuZXJhdG9ycy4gIEl0IG5vdyBhY2NlcHRzIHByZWZpeCBhbmQgc3VmZml4IHN0cmluZ3MgdG8KCSAgZGVhbCB3aXRoIHdoZXRoZXIgbGVhZGluZyBvciB0cmFpbGluZyBzbGFzaGVzIHNob3VsZCBiZSBpbmNsdWRlZAoJICB3aXRoIHRoZSBjb25maWd1cmF0aW9uIHN1YmRpcmVjdG9yeS4KCjIwMDYtMDMtMDMgMTI6MDEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiBhZGQgbWFuaWZlc3Qgc3VwcG9ydCBmb3IKCSAgMjAwNQoKMjAwNi0wMy0wMyAxMTo1OSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVZTOEZpbmRNYWtlLmNtYWtlOiBFTkg6IGxvb2sgZm9yIFZDRXhwcmVzcyBmaXJzdAoKMjAwNi0wMy0wMyAxMDo1MiAgYW5keQoKCSogTW9kdWxlcy9DUGFjay5JbmZvLnBsaXN0LmluLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHg6IEVOSDogQWRkIHZlcmJvc2UKCSAgZmxhZyB0byBwYWNrYWdlIG1ha2VyIGFuZCBhZGQgQ0ZCdW5kbGVJZGVudGlmaWVyIHN0cmluZwoKMjAwNi0wMy0wMyAwMjozNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAzLTAyIDIxOjMzICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvOiBSZWdpc3RyeS5jeHgsIFN5c3RlbVRvb2xzLmN4eDogRU5IOiBmaXggc3RkIGluCgkgIGt3c3lzLCBoYXMgdG8gYmUga3dzeXNfc3RsCgoyMDA2LTAzLTAyIDIwOjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kQmFzZS5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDMtMDIgMTU6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEVOSDogcmVtb3ZlZCB1bnVzZWQKCSAgbWV0aG9kcyBhZnRlciBmaW5kIGNoYW5nZXMKCjIwMDYtMDMtMDIgMTQ6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogRU5IOiBwYXNzIENNQUtFX01PRFVMRV9QQVRIIGludG8KCSAgdHJ5IGNvbXBpbGUgcHJvamVjdHMKCjIwMDYtMDMtMDIgMTM6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmluZEJhc2UuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHg6IEVOSDogZml4CgkgIHNwZWxsaW5nIGVycm9ycyBpbiBkb2NzCgoyMDA2LTAzLTAyIDEzOjMwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vTGludXguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vVW5peFBhdGhzLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93c1BhdGhzLmNtYWtlLAoJICBTb3VyY2UvY21Cb290c3RyYXBDb21tYW5kcy5jeHgsIFNvdXJjZS9jbUZpbmRCYXNlLmN4eCwKCSAgU291cmNlL2NtRmluZEJhc2UuaCwgU291cmNlL2NtRmluZEZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZEZpbGVDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuaCwgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmgsIFNvdXJjZS9rd3N5cy9SZWdpc3RyeS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogY2hlY2sgaW4gbmV3IGZpbmQgc3R1ZmYKCjIwMDYtMDMtMDIgMDc6NTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDWFhJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBmaXggZm9yIGJ1ZyAyOTIxLCBtb3ZlIF9PVkVSUklERSB2YXJpYWJsZSB0byBhIGJldHRlcgoJICBwb3NpdGlvbiB0byBhbGxvdyBjaGFuZ2luZyBfSU5JVCB2YXJpYWJsZXMKCjIwMDYtMDMtMDIgMDI6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMy0wMSAyMjo0NSAga2luZwoKCSogU291cmNlLzogY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLCBjbVRhcmdldC5jeHg6IEVOSDoKCSAgRmluaXNoZWQgQ01BS0VfPENPTkZJRz5fUE9TVEZJWCBmZWF0dXJlIGFuZCBkb2N1bWVudGVkIGl0LiAgVGhlCgkgIHZhbHVlIG9mIHRoaXMgdmFyaWFibGUgaXMgdXNlZCB3aGVuIGEgbGlicmFyeSB0YXJnZXQgaXMgY3JlYXRlZAoJICB0byBpbml0aWFsaXplIHRoZSA8Q09ORklHPl9QT1NURklYIHRhcmdldCBwcm9wZXJ0eS4gIFRoZSB2YWx1ZSBvZgoJICB0aGlzIHByb3BlcnR5IGlzIHVzZWQgKGV2ZW4gZm9yIGV4ZWN1dGFibGVzKSB0byBkZWZpbmUgYQoJICBwZXItY29uZmlndXJhdGlvbiBwb3N0Zml4IG9uIHRoZSBuYW1lIG9mIHRoZSB0YXJnZXQuCUFsc28KCSAgZW5hYmxlZCB1c2Ugb2YgdGhlIE9VVFBVVF9OQU1FIHByb3BlcnR5IGZvciBub24tZXhlY3V0YWJsZQoJICB0YXJnZXRzLgoKMjAwNi0wMy0wMSAxOTowMCAga2luZwoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogQ01ha2UgZG9lcyBub3QgbmVlZCBSUEFUSHMgYXQgYWxsIGZvciBpdHMKCSAgb3duIGV4ZWN1dGFibGVzLiAgRGlzYWJsZSB0aGVtIHRvIGF2b2lkIHJlbGlua2luZyBkdXJpbmcKCSAgaW5zdGFsbGF0aW9uLgoKMjAwNi0wMy0wMSAxODo1NCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBDbGVhbmVkIHVwIGdlbmVyYXRpb24gb2YKCSAgZGlyZWN0b3J5LWxldmVsIHJ1bGVzIGFuZCB0aGVpciBzdXBwb3J0IHN0cnVjdHVyZS4gIFRoZQoJICBkaXJlY3RvcnlzdGFydCBydWxlIGhhcyBiZWVuIHJlbW92ZWQgaW4gZmF2b3Igb2YgY2hlY2tpbmcgdGhlCgkgIGJ1aWxkIHN5c3RlbSBpbiB0aGUgc3ViZGlyZWN0b3J5IG1ha2VmaWxlIGZpcnN0LiAgVGhlICJkaXJlY3RvcnkiCgkgIHJ1bGUgaGFzIGJlZW4gcmVuYW1lZCAiYWxsIiBzaW5jZSBpdCBjb3JyZXNwb25kcyB0byB0aGUgImFsbCIKCSAgcGFzcyBhbnl3YXkgKGFzIGFnYWluc3QgImNsZWFuIikuICBBbHNvIGZpeGVkIGRpcmVjdG9yeS1sZXZlbAoJICBydWxlIGZvciBwcmVpbnN0YWxsLgoKMjAwNi0wMy0wMSAxODo0OSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBDaGVjayBmb3Igd2hldGhlciB0byBhZGQKCSAgQlVJTERfVFlQRSB0byBpbnN0YWxsIHJ1bGUgc2hvdWxkIGNoZWNrIGZvciBhIC4gaW4gdGhlIGZpcnN0CgkgIGNoYXJhY3RlciBub3QgdGhlIHNlY29uZC4KCjIwMDYtMDMtMDEgMTU6MDAgIGFuZHkKCgkqIE1vZHVsZXMvOiBDUGFjay5jbWFrZSwgTlNJUy50ZW1wbGF0ZS5pbjogRU5IOiBTZXZlcmFsIGNoYW5nZXMgdG8KCSAgZm9yIE5TSVMKCjIwMDYtMDMtMDEgMTM6MTUgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NQYWNrLmNtYWtlLAoJICBNb2R1bGVzL0luc3RhbGxSZXF1aXJlZFN5c3RlbUxpYnJhcmllcy5jbWFrZTogRU5IOiBJbnN0YWxsIHN5c3RlbQoJICBsaWJyYXJpZXMgb25seSBpZiBwcm9qZWN0IHJlcXVpcmVzIHRoZW0KCjIwMDYtMDMtMDEgMTM6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBFdmVuIG1vcmUgVlM4IGlzc3VlcwoKMjAwNi0wMy0wMSAxMjo1MCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogQlVHOiBNb3JlIFZTOCBmaXhlcwoKMjAwNi0wMy0wMSAxMTo1NSAgYW5keQoKCSogVGVtcGxhdGVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEluc3RhbGwgY3BhY2sgZmlsZXMKCjIwMDYtMDMtMDEgMDg6MjggIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6IEVOSDogQ2xlYW51cCBnbG9iYWwgdGFyZ2V0cyBldmVuIG1vcmUKCSAgYW5kIHBvdGVudGlhbGx5IGZpeCBYY29kZQoKMjAwNi0wMy0wMSAwMjozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTI4IDE2OjMzICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IE9rLCBmaXggdGhlIG9yZGVyaW5nCgoyMDA2LTAyLTI4IDE2OjIyICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEhhbmRsZXJDb21tYW5kLmN4eDogQlVHOiBGaXggZm9yIFNUTAoKMjAwNi0wMi0yOCAxNjoxNyAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuaDogQlVHOiBIYW5kbGUgYnVnZ3kgc3RyZWFtcwoKMjAwNi0wMi0yOCAxNTo1NiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEFkZCBhZGRpdGlvbmFsIGNoZWNrCgoyMDA2LTAyLTI4IDE1OjMxICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IE9uIFZpc3VhbCBTdHVkaW8gYW5kIFhDb2RlLAoJICBoYW5kbGUgYnVpbGQgY29uZmlndXJhdGlvbnMKCjIwMDYtMDItMjggMTU6MzEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHg6IFNUWUxFOiBSZW1vdmUgZGVidWcKCjIwMDYtMDItMjggMTQ6MTggIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIFRlbXBsYXRlcy9DUGFjay5HZW5lcmljTGljZW5zZS50eHQsCgkgIFRlbXBsYXRlcy9DUGFjay5HZW5lcmljV2VsY29tZS50eHQ6IEVOSDogQWRkIHJlc291cmNlIGZpbGVzIGZvcgoJICBQYWNrYWdlTWFrZXIKCjIwMDYtMDItMjggMTQ6MDYgIGFuZHkKCgkqIFRlbXBsYXRlcy9DUGFjay5HZW5lcmljRGVzY3JpcHRpb24udHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIGdlbmVyaWMKCSAgaW5zdHJ1Y3Rpb25zCgoyMDA2LTAyLTI4IDEzOjMwICBhbmR5CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBdHRlbXB0IHRvIGhhbmRsZSB3aW5kb3dzCgkgIHdpdGhvdXQgTlNJUyBpbnN0YWxsZWQKCjIwMDYtMDItMjggMTE6MzggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQ09NUDogRml4ZWQgd2FybmluZ3MgZm9yIEJvcmxhbmQKCSAgNS44LgoKMjAwNi0wMi0yOCAxMToxNCAgYW5keQoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBCVUc6IEZpeCB0eXBvCgoyMDA2LTAyLTI4IDExOjEzICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogQWRkIHN1cHBvcnQgZm9yIGRlYmlhbiBoYXZpbmcgYm90aAoJICBxdDMgYW5kIHF0NAoKMjAwNi0wMi0yOCAxMDoyNyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlVlM3MUZpbmRNYWtlLmNtYWtlLCBDTWFrZVZTOEZpbmRNYWtlLmNtYWtlLAoJICBGaW5kRGFydC5jbWFrZSwgRmluZERveHlnZW4uY21ha2UsIEZpbmRHQ0NYTUwuY21ha2UsCgkgIEZpbmRIVE1MSGVscC5jbWFrZSwgRmluZE1QSS5jbWFrZSwgRmluZFF0My5jbWFrZSwgRmluZFF0NC5jbWFrZSwKCSAgRmluZFRDTC5jbWFrZSwgUGxhdGZvcm0vRGFyd2luLmNtYWtlOiBFTkg6IHVzZSBwcm9ncmFtIGZpbGVzIGVudgoJICBmb3Igc2VhcmNoaW5nCgoyMDA2LTAyLTI4IDA5OjUzICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IE5lZWQgdG8gdXNlIHRoZSBDTUFLRV9DT01NQU5ECgkgIGNhY2hlIGVudHJ5IHRvIGdldCB0aGUgbG9jYXRpb24gb2YgQ01ha2UuCgoyMDA2LTAyLTI4IDA4OjIzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkQW5kVGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkQW5kVGVzdEhhbmRsZXIuaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBzdXBwb3J0IGZvcgoJICBtdWx0aXBsZSBidWlsZCB0YXJnZXRzIGFuZCBzdGFydCBhZGRpbmcgc2ltcGxlIGNwYWNrIHRlc3RzCgoyMDA2LTAyLTI4IDAyOjMyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMjcgMjM6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6IEVOSDogZml4IHByb2JsZW0gaWYgdGhlcmUgYXJlIC4uCgkgIGluIHRoZSBwYXRoIHRvIHRoZSBzb3VyY2UgZmlsZSBzcGVjaWZpZWQgaW4gYSBzb3VyY2UgZ3JvdXAKCjIwMDYtMDItMjcgMTY6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmluZEJhc2UuY3h4LCBjbUZpbmRCYXNlLmg6IEVOSDogYWRkIG5ldyBmaW5kIHN0dWZmCgoyMDA2LTAyLTI3IDEyOjE0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsIENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLCBDTWFrZVJDSW5mb3JtYXRpb24uY21ha2U6IEVOSDogZml4CgkgIHNwZWxsaW5nIGVycm9ycwoKMjAwNi0wMi0yNyAxMDo1OCAgYW5keQoKCSogTW9kdWxlcy9DUGFjay5JbmZvLnBsaXN0LmluLCBNb2R1bGVzL0NQYWNrLmNtYWtlLAoJICBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtQ29tbWFuZHMuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ1BhY2tDb25maWcuY21ha2UuaW46IEVOSDogU2V2ZXJhbCBwYWNrYWdpbmcgaXNzdWVzLgoJICBBbGxvdyByYW5kb20gdmFyaWFibGVzIHRvIGJlIHBhc3NlZCB0byBjcGFjayAoYW55dGhpbmcgc3RhcnRpbmcKCSAgd2l0aCBDUEFDS18sIGFkZCBwcmVpbnN0YWxsIHRvIHRoZSBsaXN0IG9mIGRlcGVuZGVuY2llcyBmb3IKCSAgcGFja2FnZSwgZml4IHR5cG9zCgoyMDA2LTAyLTI3IDAyOjAwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMjYgMDI6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0yNSAwMTo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTI0IDE4OjE1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtYWtlLmg6IENPTVA6IE1vcmUgZml4ZXMgZm9yIG5vbgoJICBtYWtlZmlsZSBnZW5lcmF0b3JzIGFuZCBnbG9iYWwgdGFyZ2V0cwoKMjAwNi0wMi0yNCAxNzo0MyAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogU1RZTEU6IFJlbW92ZSBkZWJ1ZwoKMjAwNi0wMi0yNCAxNzozNSAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbVRhcmdldC5oOgoJICBDT01QOiBFdmVuIG1vcmUgZ2xvYmFsIHRhcmdldCBmaXhlcwoKMjAwNi0wMi0yNCAxNjozMCAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEluc3RhbGwgY3BhY2sKCjIwMDYtMDItMjQgMTY6MjAgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBNb3JlIGZpeGluZyBvZiBzdXBwb3J0CgkgIGZvciBnbG9iYWwgdGFyZ2V0IHNvbiB2aXN1YWwgc3R1ZGlvCgoyMDA2LTAyLTI0IDEzOjEzICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ3JlYXRlZCB0YXJnZXQKCSAgcHJvcGVydHkgSU5TVEFMTF9OQU1FX0RJUiBpbml0YWxpemVkIGJ5IENNQUtFX0lOU1RBTExfTkFNRV9ESVIKCSAgc3BlY2lmeWluZyB0aGUgZGlyZWN0b3J5IHBvcnRpb24gb2YgdGhlIE9TWCBpbnN0YWxsX25hbWUgZmllbGQgaW4KCSAgc2hhcmVkIGxpYnJhcmllcy4gIFRoaXMgaXMgdGhlIE9TWCBlcXVpdmFsZW50IG9mIFJQQVRILgoKMjAwNi0wMi0yNCAxMjo1MCAgaG9mZm1hbgoKCSogU291cmNlL2NtU291cmNlR3JvdXBDb21tYW5kLmN4eDogRU5IOiBmaXggd2FybmluZyBhbmQgcmVtb3ZlCgkgIHVudXNlZCB2YXJpYWJsZQoKMjAwNi0wMi0yNCAxMToxMyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtTWFrZWZpbGVFeGVjdXRhYmxlVGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogQlVHOiBGaXggZ2VuZXJhdGlvbiBvZiBYY29kZSAyLjAKCSAgYW5kIGVhcmxpZXIgcHJvamVjdHMgdG8gdXNlIENNQUtFX0JVSUxEX1RZUEUuCgoyMDA2LTAyLTI0IDExOjA3ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEJVRzogVHJlYXQgR0xPQkFMX1RBUkdFVCBsaWtlCgkgIFVUSUxJVFkgZm9yIGdlbmVyYXRpb24uCgoyMDA2LTAyLTI0IDEwOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwNi0wMi0yNCAxMDo1NSAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBPbmx5IGFkZCB0ZXN0IHRhcmdldHMgd2hlbgoJICB0ZXN0aW5nIGlzIGVuYWJsZWQuIEFsc28gYWRkIENNQUtFX0NGR19JTlRESVIgd2hlbiBzcGVjaWZpZWQKCjIwMDYtMDItMjQgMDk6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBDT01QOiBIYW5kbGUgcHJlaW5zdGFsbAoJICBwcm9wZXJseSBvbiBJREVzCgoyMDA2LTAyLTI0IDA5OjMyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogRml4IGZvciBwcmVpbnN0YWxsCgoyMDA2LTAyLTI0IDA5OjA4ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVzLmNtYWtlOiBCVUc6IEZpeCB0aGUgbW9kdWxlCgoyMDA2LTAyLTI0IDA4OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeCBsb2NhdGlvbiBvZiBjdGVzdCBmb3IgYm9vdHN0cmFwCgoyMDA2LTAyLTI0IDAyOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMjMgMTg6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogdHJ5IHRvIGZpeCB0aGluZ3MKCSAgdXAgZm9yIHRoZSBkYXNoYm9hcmQKCjIwMDYtMDItMjMgMTc6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IFByb3Blcmx5IGhhbmRsZSB0YXJnZXQKCSAgZGVwZW5kZW5jaWVzCgoyMDA2LTAyLTIzIDE0OjA1ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHg6IENPTVA6IEV2ZW4gbW9yZQoJICBWaXN1YWwgU3R1ZGlvIGZpeGVzLiBXaHkgaXMgdGhpcyBjb2RlIGR1cGxpY2F0ZWQ/CgoyMDA2LTAyLTIzIDEzOjQ2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogTW9yZSBmaXhlcyBmb3IgdmlzdWFsCgkgIHN0dWRpbwoKMjAwNi0wMi0yMyAxMzozNyAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogRml4ZXMgZm9yIHZpc3VhbCBzdHVkaW8KCjIwMDYtMDItMjMgMTE6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6IEVOSDogZml4IGZvciBidWcgMjkwOCBjcmFzaCBmb3IKCSAgZW1wdHkgc291cmNlIGdyb3VwIG5hbWUKCjIwMDYtMDItMjMgMTA6NDggIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IFJlbW92ZSBkZWJ1ZwoKMjAwNi0wMi0yMyAxMDowNyAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogQWRkIGEgbm90aW9uIG9mIGEgZ2xvYmFsCgkgIHRhcmdldAoKMjAwNi0wMi0yMyAxMDowMiAgYW5keQoKCSogU291cmNlLzogY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oLCBjbU1ha2VmaWxlLmN4eDogRU5IOiBBZGQgYQoJICBub3Rpb24gb2YgYSBnbG9iYWwgdGFyZ2V0CgoyMDA2LTAyLTIzIDEwOjAwICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogQWRkIGFjY2Vzc29ycyBmb3IgQ1Rlc3QgYW5kCgkgIENQYWNrCgoyMDA2LTAyLTIzIDA5OjU5ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBFTkg6IEFsbG93IHJ1bm5pbmcgd2l0aG91dCBjb25maWcgZmlsZQoKMjAwNi0wMi0yMyAwOTo1OCAgYW5keQoKCSogTW9kdWxlcy86IENNYWtlQ29uZmlndXJhYmxlRmlsZS5pbiwgQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2UsCgkgIENoZWNrU3ltYm9sRXhpc3RzLmNtYWtlOiBFTkg6IE1ha2UgbW9kdWxlcyB1c2UgY29uZmlndXJlIGluc3RlYWQKCSAgb2YgZmlsZSB3cml0ZQoKMjAwNi0wMi0yMyAwOTozOCAgYW5keQoKCSogTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ1BhY2tDb25maWcuY21ha2UuaW46IEVOSDogU2V2ZXJhbCBOU0lTIGZlYXR1cmVzCgoyMDA2LTAyLTIzIDAyOjM0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMjIgMDI6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0yMSAxMjoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IG1ha2UgY29tbWFuZCBsaW5lCgkgIGZsYWdzIG1vcmUgY29uc2lzdGVudCB3aXRoIGlkZSBzZXR0aW5ncwoKMjAwNi0wMi0yMSAwOTozNSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiB1c2UgbGFzdCBtb3VudAoJICBwb2ludCBmb3VuZCBmb3IgbWluZ3cgbG9jYXRpb24sIG5vdCBmaXJzdAoKMjAwNi0wMi0yMSAwNzo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiB0cnkgdG8gZ2V0IHRoZQoJICBvcmRlciBhIGJpdCBiZXR0ZXIKCjIwMDYtMDItMjEgMDI6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0yMCAyMzowOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogYmV0dGVyIGZpbmRpbmcgb2YKCSAgbWluZ3cgZnJvbSBtc3lzLCBhbmQgZGVsZXRlIENNYWtlRmlsZXMgZGlyZWN0b3J5IHdoZW4gY2FjaGUgaXMKCSAgZGVsZXRlZAoKMjAwNi0wMi0yMCAxNzo0NyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIHN1cmUKCSAgQ01BS0VfU1RBTkRBUkRfTElCUkFSSUVTIGFyZSB1c2VkCgoyMDA2LTAyLTIwIDE0OjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IG1ha2UgaXQgY29tcGlsZSBvbiB2czYKCjIwMDYtMDItMjAgMTQ6MjEgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IEFkZCB0YXJnZXQtbGV2ZWwKCSAgQ09NUElMRV9GTEFHUyB0byB0aGUgdGFyZ2V0IG5vdCB0aGUgaW5kaXZpZHVhbCBzb3VyY2UgZmlsZXMuCgkgIFRoaXMgc2ltcGxpZmllcyB0aGUgZ2VuZXJhdGVkIGZpbGVzIGFuZCBwdXRzIGZsYWdzIGluIGEgbW9yZQoJICBsb2dpY2FsIG9yZGVyIChWUzYgd29ya3MsIFZTNyBuZWVkcyBtb3JlIHRyYW5zbGF0aW9uIHRvIHdvcmspLgoKMjAwNi0wMi0yMCAxMzo0MiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IGNoYW5nZSBleHBhbmQgc3R1ZmYgdG8gcGFzcyBhCgkgIHN0cnVjdCBmb3IgYWxsIHRoZSBhcmdzCgoyMDA2LTAyLTIwIDEyOjQ4ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogT3JkZXIgY29tcGlsYXRpb24KCSAgZmxhZ3MgZnJvbSBtb3N0IGdlbmVyYWwgdG8gbW9zdCBzcGVjaWZpYzogbGFuZ3VhZ2UsIHRoZW4gdGFyZ2V0LAoJICB0aGVuIHNvdXJjZS4KCjIwMDYtMDItMjAgMDk6NTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IEJVRzoKCSAgWGNvZGUgZ2VuZXJhdG9yIHNob3VsZCB1c2UgbG9jYWwgZ2VuZXJhdG9yIGNvbXB1dGF0aW9uIG9mIGluY2x1ZGUKCSAgZGlyZWN0b3JpZXMuCgoyMDA2LTAyLTIwIDAzOjAwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMTkgMTk6MjkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZUNvbW1hbmQuY3h4LCBjbUluc3RhbGxHZW5lcmF0b3IuY3h4LAoJICBjbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIG9wdGlvbmFsIGZpbGUgaW5zdGFsbAoJICBzdXBwb3J0IGZvciBtdWx0aS1jb25maWd1cmF0aW9uIGdlbmVyYXRvcnMuCgoyMDA2LTAyLTE5IDE5OjI4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21UYXJnZXQuY3h4OiBFTkg6IFN3aXRjaGVkIG9yZGVyIG9mIHNsYXNoIGFuZCBjb25maWd1cmF0aW9uIG5hbWUKCSAgaW4gY21HbG9iYWxHZW5lcmF0b3I6OkFwcGVuZERpcmVjdG9yeUZvckNvbmZpZyBtZXRob2QgdG8gaW5jcmVhc2UKCSAgZmxleGliaWxpdHkuCgoyMDA2LTAyLTE5IDE4OjQ3ICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxGaWxlc0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxGaWxlc0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEltcGxlbWVudGVkIEZJTEVTIGFuZAoJICBQUk9HUkFNUyBmb3JtcyBvZiB0aGUgSU5TVEFMTCBjb21tYW5kIGFzIHJlcGxhY2VtZW50cyBmb3IgdGhlCgkgIElOU1RBTExfRklMRVMgYW5kIElOU1RBTExfUFJPR1JBTVMgY29tbWFuZHMuCVRoaXMgYWRkcmVzc2VzIHRoZQoJICByZXF1ZXN0IGZvciBhYnNvbHV0ZSBwYXRoIGluc3RhbGwgZGVzdGluYXRpb25zIGluIGJ1ZyMyNjkxLgoKMjAwNi0wMi0xOSAxODo0NCAga2luZwoKCSogU291cmNlL2NtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHg6IFNUWUxFOiBSZW1vdmVkIHVudXNlZAoJICBpbmNsdWRlcy4KCjIwMDYtMDItMTkgMTc6NDQgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVzaW5nIENNQUtFX1NLSVBfQlVJTERfUlBBVEgKCSAgdG8gdGVzdCByZWxpbmsgc3VwcG9ydC4KCjIwMDYtMDItMTkgMTc6MjcgIGtpbmcKCgkqIFNvdXJjZS86IGNtSW5zdGFsbFRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBCVUc6IEZpeGVkCgkgIHJlbGluayB3aXRoIG5ldyBpbnN0YWxsIGZyYW1ld29yay4KCjIwMDYtMDItMTkgMTY6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eDogQ09NUDogUmVtb3ZlZCB1bnVzZWQgdmFyaWFibGVzLgoKMjAwNi0wMi0xOSAxNjoxMiAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsR2VuZXJhdG9yLmN4eCwgY21JbnN0YWxsR2VuZXJhdG9yLmg6IEJVRzogRG8KCSAgbm90IHJlcG9ydCBmaWxlcyBhcyBpbnN0YWxsZWQgaWYgdGhleSBhcmUgb3B0aW9uYWwgYW5kIGRvIG5vdAoJICBleGlzdC4KCjIwMDYtMDItMTkgMTY6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4OiBCVUc6IEltcG9ydCBsaWJyYXJpZXMgc2hvdWxkCgkgIGJlIGluc3RhbGxlZCBhcyBTVEFUSUNfTElCUkFSWS4KCjIwMDYtMDItMTkgMTU6MjUgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21JbnN0YWxsQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmgsIFNvdXJjZS9jbUluc3RhbGxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsR2VuZXJhdG9yLmgsIFNvdXJjZS9jbUluc3RhbGxTY3JpcHRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsU2NyaXB0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IENyZWF0ZWQgbmV3IGluc3RhbGwKCSAgc2NyaXB0IGdlbmVyYXRpb24gZnJhbWV3b3JrLglUaGUgSU5TVEFMTCBjb21tYW5kIGNyZWF0ZXMgdGhlCgkgIGdlbmVyYXRvcnMgd2hpY2ggYXJlIGxhdGVyIHVzZWQgYnkgY21Mb2NhbEdlbmVyYXRvciB0byBjcmVhdGUgdGhlCgkgIGNtYWtlX2luc3RhbGwuY21ha2UgZmlsZXMuICBBIG5ldyB0YXJnZXQgaW5zdGFsbGF0aW9uIGludGVyZmFjZQoJICBpcyBwcm92aWRlZCBieSB0aGUgSU5TVEFMTCBjb21tYW5kIHdoaWNoIGZpeGVzIHNldmVyYWwgcHJvYmxlbXMKCSAgd2l0aCB0aGUgSU5TVEFMTF9UQVJHRVRTIGNvbW1hbmQuICBTZWUgYnVnIzI2OTEuICBCdWdzIDE0ODEgYW5kCgkgIDE2OTUgYXJlIGFkZHJlc3NlZCBieSB0aGVzZSBjaGFuZ2VzLgoKMjAwNi0wMi0xOSAxMzo0OSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZTogQlVHOiBGaXhlZCBtb2R1bGUgY3JlYXRpb24KCSAgcnVsZXMuICBSZW1vdmVkIHNvbmFtZSBwb3J0aW9uIG9mIGFsbCBydWxlcyBiZWNhdXNlIGl0IGlzIG5ldmVyCgkgIHVzZWQgb24gdGhpcyBwbGF0Zm9ybS4KCjIwMDYtMDItMTkgMTM6MzQgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlOiBCVUc6IEZpeGVkIGN5Z3dpbiBtb2R1bGUgY3JlYXRpb24KCSAgcnVsZXMuICBNb2R1bGVzIHNob3VsZCBub3QgaGF2ZSB0aGUgImN5ZyIgcHJlZml4IGJ5IGRlZmF1bHQuCgkgIFJlbW92ZCBzb25hbWUgZmxhZ3MgZnJvbSBjcmVhdGlvbiBydWxlcyBiZWNhdXNlIHRoZXkgYXJlIG5ldmVyCgkgIHVzZWQgb24gdGhpcyBwbGF0Zm9ybS4KCjIwMDYtMDItMTkgMTM6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC9HZW5lcmF0ZWRIZWFkZXIvQ01ha2VMaXN0cy50eHQ6IEVOSDoKCSAgQXV0b21hdGljIGluY2x1ZGUgZGlyZWN0b3JpZXMgc2hvdWxkIG5vdCBiZSBkb25lIGJ5IGRlZmF1bHQgYXMKCSAgd2FzIGp1c3QgaW1wbGVtZW50ZWQuICBJbnN0ZWFkIGEgcHJvamVjdCBtYXkgbm93IHNldAoJICBDTUFLRV9JTkNMVURFX0NVUlJFTlRfRElSIHRvIGdldCB0aGlzIGJlaGF2aW9yLiAgVGhlIGN1cnJlbnQKCSAgc291cmNlIGFuZCBiaW5hcnkgZGlyZWN0b3JpZXMgYXJlIGFkZGVkIGF1dG9tYXRpY2FsbHkgdG8gdGhlCgkgIGJlZ2lubmluZyBvZiB0aGUgaW5jbHVkZSBwYXRoIGluIGV2ZXJ5IGRpcmVjdG9yeS4gIFRoaXMgc2ltdWxhdGVzCgkgIGluLXNvdXJjZSBiZWhhdmlvciBmb3IgZG91YmxlLXF1b3RlIGluY2x1ZGVzIHdoZW4gdGhlcmUgYXJlCgkgIGdlbmVyYXRlZCBzb3VyY2VzIGFuZCBoZWFkZXJzIGluIHRoZSBkaXJlY3RvcnkuCgoyMDA2LTAyLTE5IDEzOjA4ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogSW5zdGFsbCBsb2NhdGlvbiBmdWxsLXBhdGggdGVzdAoJICBmb3Igd2luZG93cyBuZWVkcyB0byBhY2NvdW50IGZvciBib3RoIGxvd2VyIGNhc2UgYW5kIHVwcGVyIGNhc2UKCSAgZHJpdmUgbGV0dGVycy4KCjIwMDYtMDItMTkgMDE6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0xOCAxNjo0NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IFJlbW92ZSB0cmFpbGluZyBzbGFzaGVzIGZyb20KCSAgaW5zdGFsbCBkZXN0aW5hdGlvbnMuCgoyMDA2LTAyLTE4IDE2OjM2ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVOSDogQ2xhcmlmaWVkIGVycm9yIG1lc3NhZ2UuCgoyMDA2LTAyLTE4IDE1OjQyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IENPTVA6IEZpeGVkIHNoYWRvd2VkIHZhcmlhYmxlCgkgIHdhcm5pbmcuCgoyMDA2LTAyLTE4IDE1OjM3ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3Mtd2NsMzg2LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MuY21ha2UsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0Lmg6IEVOSDogR2VuZXJhdGUgaW1wb3J0IGxpYnJhcmllcyBmb3IgRExMcyBvbgoJICBDeWd3aW4gYW5kIE1pbkdXLgoKMjAwNi0wMi0xOCAxMTo1MSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IElmCgkgIENNQUtFX05PX0FVVE9NQVRJQ19JTkNMVURFX0RJUkVDVE9SSUVTIGlzIG5vdCBzZXQgdHJ5IHRvCgkgIGFwcHJveGltYXRlIGluLXNvdXJjZSBidWlsZCBpbmNsdWRlIGZpbGUgYmVoYXZpb3IgaW4gYW4KCSAgb3V0LW9mLXNvdXJjZSBidWlsZCBieSBhZGRpbmcgdGhlIGJ1aWxkIHRyZWUgZGlyZWN0b3J5CgkgIGNvcnJlc3BvbmRpbmcgdG8gYSBzb3VyY2UgdHJlZSBkaXJlY3RvcnkgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUKCSAgaW5jbHVkZSBwYXRoLiAgQWxzbyBmaXhlZCBWUzYgYW5kIFZTNyBnZW5lcmF0b3JzIHRvIHVzZQoJICBjbUxvY2FsR2VuZXJhdG9yJ3MgY29tcHV0YXRpb24gb2YgaW5jbHVkZSBwYXRocy4gIFRoZSBWUzYKCSAgZ2VuZXJhdG9yIHdpbGwgbm93IHNob3J0LXBhdGggdGhlIGluY2x1ZGUgZGlyZWN0b3JpZXMgaWYgdGhlCgkgIHRvdGFsIGxlbmd0aCBpcyB0b28gbG9uZyBpbiBvcmRlciB0byB0cnkgdG8gYXZvaWQgaXRzIHRydW5jYXRpb24KCSAgbGltaXQuCgoyMDA2LTAyLTE4IDExOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5oOiBFTkg6IGFwcGx5IHBhdGNoIGZyb20gQWxleCB0bwoJICBzdXBwb3J0IHNvbWUgbW9yZSBrZGV2ZWxvcCBzdHVmZgoKMjAwNi0wMi0xOCAwMTo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTE3IDEyOjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogcHV0IHRoZSBzeXN0ZW0gcGF0aCBhaGVhZCBvZiB0aGUKCSAgY29tbWFuZCBwYXRoCgoyMDA2LTAyLTE3IDAyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMTYgMjA6MTUgIGtpbmcKCgkqIE1vZHVsZXMvQ1BhY2suY21ha2UsIFV0aWxpdGllcy9SZWxlYXNlL1JlbGVhc2UuY21ha2U6IEJVRzogRG8gbm90CgkgIGluc3RhbGwgTVNWQyBkbGxzIGZvciBhIG5vbi1NU1ZDIGJ1aWxkLgoKMjAwNi0wMi0xNiAyMDoxMyAga2luZwoKCSogYm9vdHN0cmFwOiBFTkg6IE1hZGUgZGVmYXVsdCBpbnN0YWxsIHByZWZpeCBjb25zaXN0ZW50IHdpdGgKCSAgYnVpbGRpbmcgd2l0aCBhbm90aGVyIENNYWtlLgoKMjAwNi0wMi0xNiAxODo1MCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBXb3JrLWFyb3VuZCBib3JsYW5kIG1ha2UKCSAgYnVnIHRoYXQgZHJvcHMgYSBydWxlIGNvbXBsZXRlbHkgaWYgaXQgaGFzIG5vIGRlcGVuZGVuY2llcyBvcgoJICBjb21tYW5kcy4KCjIwMDYtMDItMTYgMTg6MDkgIGtpbmcKCgkqIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6IEVOSDogQ2xhcmlmaWVkCgkgIGRvY3VtZW50YXRpb24gb2YgREVGSU5FX1NZTUJPTC4KCjIwMDYtMDItMTYgMTc6NDkgIGtpbmcKCgkqIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmN4eDogQlVHOiBSZXBvcnQgZXJyb3Igd2hlbiBhCgkgIHRhcmdldCBkb2VzIG5vdCBleGlzdC4KCjIwMDYtMDItMTYgMTU6NTUgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHg6IEJVRzogUmVtb3ZlIGRlYnVnIGFuZCBmaXgKCSAgc3BhY2UgYmV0d2VlbiBsYWJlbCBhbmQgZXhlYyBuYW1lCgoyMDA2LTAyLTE2IDE1OjQxICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBWYXJpYWJsZSBuYW1lIGNoYW5nZWQKCjIwMDYtMDItMTYgMTU6MzkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHg6IEJVRzogRG8gbm90CgkgIHBlcmZvcm0gcHJlLWJ1aWxkLCBwcmUtbGluaywgb3IgcG9zdC1pbnN0YWxsIGNvbW1hbmRzIHdoZW4KCSAgcmVsaW5raW5nLgoKMjAwNi0wMi0xNiAxNTozOCAga2luZwoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCBJTlNUQUxMX1JQQVRIIHByb3BlcnR5CgkgIG9uIFNpbXBsZUluc3RhbGxTMiBhbHNvLgoKMjAwNi0wMi0xNiAxNTozNSAgYW5keQoKCSogVGVtcGxhdGVzL0NQYWNrQ29uZmlnLmNtYWtlLmluOiBFTkg6IEZpeCBpY29ucwoKMjAwNi0wMi0xNiAxNToyOCAga2luZwoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogVXNlIHRhcmdldCBwcm9wZXJ0eSBmb3IKCSAgSU5TVEFMTF9SUEFUSCBvZiBTaW1wbGVJbnN0YWxsIHNvIHRoYXQgaXQgaXMgdGhlIG9ubHkgb25lIHRoYXQKCSAgbmVlZHMgdG8gcmVsaW5rLgoKMjAwNi0wMi0xNiAxNToyMCAgYW5keQoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluLCBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja05TSVNHZW5lcmF0b3IuaDogRU5IOiBNb3JlIHdvcmsgb24gTlNJIHRvCgkgIGltcHJvdmUgaW5zdGFsbGluZyBhbmQgdW5pbnN0YWxsaW5nCgoyMDA2LTAyLTE2IDE1OjE4ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wbGVtZW50ZWQgUlBBVEgKCSAgc3BlY2lmaWNhdGlvbiBzdXBwb3J0LiAgSXQgaXMgZG9jdW1lbnRlZCBieSB0aGUgY29tbWFuZAoJICBTRVRfVEFSR0VUX1BST1BFUlRJRVMuCgoyMDA2LTAyLTE2IDEzOjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogd2FybmluZyBmaXgKCjIwMDYtMDItMTYgMTE6MzIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlVGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiB3YXJuaW5nIGZpeAoKMjAwNi0wMi0xNiAxMDozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21EeW5hbWljTG9hZGVyLmN4eCwgY21EeW5hbWljTG9hZGVyLmg6IEVOSDogZml4IGZvciBidWcKCSAgMjgwOCwgdXNlIGRsb3BlbiBvbiBuZXcgT1NYIHZlcnNpb25zCgoyMDA2LTAyLTE2IDAyOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMTUgMjE6MjYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VNU1lTRmluZE1ha2UuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VNaW5HV0ZpbmRNYWtlLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBiZXR0ZXIgYWxnb3JpdGhtCgkgIGZvciBsb29raW5nIGZvciBtYWtlIGFuZCBnY2Mgb24gbXN5cyBhbmQgbWluZ3cKCjIwMDYtMDItMTUgMTY6MzggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogVXNlIE5PSU5IRVJJVAoJICBtYWNybyB0byBhdm9pZCBsaW5raW5nIHRvIHByb2plY3QgZGVmYXVsdCBsaWJyYXJpZXMgd2hpY2ggbWF5IG5vdAoJICBleGlzdC4KCjIwMDYtMDItMTUgMTY6MzUgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlTGlicmFyeVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5jeHg6IEVOSDogQ2xlYW5lZCB1cCBnZW5lcmF0aW9uCgkgIG9mIHN5bWJvbGljIHJ1bGVzLiAgUmVtb3ZlZCBnZW5lcmF0aW9uIG9mIHJlYnVpbGRfY2FjaGUgYW5kCgkgIHNpbWlsYXIgcnVsZXMgZnJvbSBpbnRlcm5hbCBtYWtlZmlsZXMuCgoyMDA2LTAyLTE1IDEyOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oOiBDT01QOiBmaXggY29tcGlsZXIgd2FybmluZwoKMjAwNi0wMi0xNSAxMjozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGVUYXJnZXRHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBidWlsZCBlcnJvciBmb3IKCSAgbWFjCgoyMDA2LTAyLTE1IDEwOjM0ICBtYXJ0aW5rCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oOiBFTkg6IHNvbWUgcmVvcmcgb2YgdGhlIHVuaXgKCSAgbWFrZWZpbGUgZ2VuZXJhdG9yCgoyMDA2LTAyLTE1IDEwOjIyICBraW5nCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAgY21ha2UuY3h4OiBFTkg6IEVuYWJsZSBjYXB0dXJlIG9mIG91dHB1dCBmcm9tIFZDRXhwcmVzcy5leGUgYW5kCgkgIGRldmVudi5leGUuCgoyMDA2LTAyLTE1IDA4OjA1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCSAgc3VwcHJlc3Npb25zIGZvciBib3JsYW5kIGNvbXBpbGVyLCBwcm9qZWN0cyB3YW50aW5nIHRoaXMgc2hvdWxkCgkgIHVzZSAtdy0sIHRoZSBkZWZhdWx0IHdhcm5pbmcgbGV2ZWwgaXMgdXNlZCBmb3IgYWxsIG90aGVyCgkgIGNvbXBpbGVycy4gIFVzZWQgdG8gYmUgLXctIC13aGlkIC13YXVzIC13cGFyCgoyMDA2LTAyLTE1IDAyOjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMTQgMjI6MDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VNaW5HV0ZpbmRNYWtlLmNtYWtlLCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IGRvIG5vdAoJICBhbGxvdyBtaW5ndyBtYWtlZmlsZXMgdG8gZ2VuZXJhdGUgaWYgc2guZXhlIGlzIGluIHRoZSBwYXRoLCBhbHNvCgkgIGRvIG5vdCB3cml0ZSBDTWFrZUNhY2hlLnR4dCBpZiB0aGVyZSBpcyBhIGZhdGFsIGVycm9yLgoKMjAwNi0wMi0xNCAxNzoxNiAga2luZwoKCSogU291cmNlLzogY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaDoKCSAgRU5IOiBBZGRlZCBGQVRBTF9FUlJPUiBvcHRpb24gYW5kIGZpeGVkIGNoZWNrIHRvIG5vdCBoYXZlCgkgIGZsb2F0aW5nIHBvaW50IHJvdW5kb2ZmIHByb2JsZW1zLgoKMjAwNi0wMi0xNCAxNjozNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBSZW1vdmVkIGhhcmQtY29kZWQKCSAgbGlua2luZyB0byBvZGJjMzIgYW5kIG9kYmNjcDMyLgoKMjAwNi0wMi0xNCAxNjozMiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogQXZvaWQgYWRkaW5nIHVudXNlZCBydWxlcwoJICB0byBzcGVjaWFsIHRhcmdldHMgbGlrZSBBTExfQlVJTEQuICBNYWtlIHN1cmUgcHJvamVjdAoJICByZWdlbmVyYXRpb24gcnVsZXMgZ28gb25seSBpbiBkZXNpcmVkIHRhcmdldHMuCgoyMDA2LTAyLTE0IDE1OjM1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuaDogQlVHOiBGaXhlZCBnZW5lcmF0aW9uIG9mIFZTOAoJICBzb2x1dGlvbiBmaWxlIHRvIG5vdCBiZSByZS13cml0dGVuIHdoZW4gbG9hZGVkIGJ5IFZTIGFuZCB0byB3b3JrCgkgIHdpdGggbXNidWlsZC4KCjIwMDYtMDItMTQgMTU6MjkgIGtpbmcKCgkqIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZTogRU5IOiBBZGRlZAoJICBDTUFLRV9SRVFVSVJFRF9ERUZJTklUSU9OUyBhbmQgQ01BS0VfUkVRVUlSRURfSU5DTFVERVMgdG8gdGhlCgkgIGludGVyZmFjZS4KCjIwMDYtMDItMTQgMTU6MTUgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvR2VuZXJhdGVkSGVhZGVyL21haW4uY3BwOiBDT01QOiBGaXhlZCBmb3JtIG9mCgkgIGZ1bmN0aW9uIG1haW4uCgoyMDA2LTAyLTE0IDE0OjI5ICBhbmR5CgoJKiBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sIFNvdXJjZS9DUGFjay9jbUNQYWNrTlNJU0dlbmVyYXRvci5jeHg6CgkgIEVOSDogQmV0dGVyIGhhbmRsaW5nIG9mIGV4ZWN1dGFibGVzIG9uIHdpbmRvd3MKCjIwMDYtMDItMTQgMTQ6MjggIGFuZHkKCgkqIFRlbXBsYXRlcy9DUGFja0NvbmZpZy5jbWFrZS5pbjogRU5IOiBDbGVhbnVwCgoyMDA2LTAyLTE0IDExOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBFTkg6IFJlcG9ydCB3aGljaCBjbWFrZSB3YXMgdXNlZCB0bwoJICBnZW5lcmF0ZSB0aGUgY2FjaGUgaW4gdGhlIGNvbW1lbnQKCjIwMDYtMDItMTQgMTA6NTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiBmaXggdHJ5IGNvbXBpbGUgZm9yIE1GQwoKMjAwNi0wMi0xNCAxMDozNSAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZUV4ZWN1dGFibGVUYXJnZXRHZW5lcmF0b3IuaCwKCSAgY21NYWtlZmlsZUxpYnJhcnlUYXJnZXRHZW5lcmF0b3IuaCwgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlVXRpbGl0eVRhcmdldEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlRXhlY3V0YWJsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVMaWJyYXJ5VGFyZ2V0R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZVRhcmdldEdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVVdGlsaXR5VGFyZ2V0R2VuZXJhdG9yLmN4eDogRU5IOiBzb21lIGNsZWFudXAgb2YgdGhlCgkgIG1ha2VmaWxlIGdlbmVyYXRvcgoKMjAwNi0wMi0xNCAxMDoyOCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ1BhY2suY21ha2UsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHgsIFNvdXJjZS9DUGFjay9jcGFjay5jeHgsCgkgIFRlbXBsYXRlcy9DUGFja0NvbmZpZy5jbWFrZS5pbjogRU5IOiBJbXByb3ZlZCBzdXBwb3J0IGZvciBpY29ucywKCSAgcmFuZG9tIGRpcmVjdG9yaWVzLCBldGMuLi4KCjIwMDYtMDItMTQgMDI6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0xMyAwMjoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTEyIDAyOjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMTEgMDI6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0xMCAxNTo0NSAga2luZwoKCSogVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIHRlc3QgZm9yCgkgIElGKERFRklORUQgRU5We3Zhcn0pKC4KCjIwMDYtMDItMTAgMTQ6NTkgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgcGF0Y2ggbGV2ZWwgdG8gMyBmb3Igc3BlY2lhbCBLREUKCSAgcmVsZWFzZS4KCjIwMDYtMDItMTAgMTQ6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEVOSDogQWxsb3cgSUYoREVGSU5FRCBFTlZ7c29tZXZhcn0pIHRvCgkgIHdvcmsuCgoyMDA2LTAyLTEwIDE0OjE1ICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogQWRkZWQgaGlnaGxpZ2h0aW5nIGZvciBMSVNUIGNvbW1hbmQuCgoyMDA2LTAyLTEwIDE0OjExICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LCBTb3VyY2UvY21MaXN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxpc3RDb21tYW5kLmgsIFRlc3RzL0NNYWtlVGVzdHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NNYWtlVGVzdHMvTGlzdFRlc3QuY21ha2UuaW46IEVOSDogQWRkIGluaXRpYWwKCSAgaW1wbGVtZW50YXRpb24gb2YgdGhlIGxpc3QgY29tbWFuZAoKMjAwNi0wMi0xMCAxMzo1NCAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsLCBTb3VyY2UvY21Db21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxDb21tYW5kLmN4eCwgU291cmNlL2NtSW5zdGFsbENvbW1hbmQuaCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQxLmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0luc3RhbGxTY3JpcHQyLmNtYWtlLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9JbnN0YWxsU2NyaXB0MS5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0luc3RhbGxTY3JpcHQyLmNtYWtlOiBFTkg6IEFkZGVkIElOU1RBTEwKCSAgY29tbWFuZCBhcyBhIHBsYWNlaG9sZGVyIGZvciBhIGZ1dHVyZSBnZW5lcmljIGluc3RhbGwKCSAgc3BlY2lmaWNhdGlvbiBpbnRlcmZhY2UuICBDdXJyZW50bHkgaXQgc3VwcG9ydHMgb25seSBhIFNDUklQVAoJICBvcHRpb24gc3BlY2lmeWluZyBhIHNjcmlwdCB0byBydW4gZHVyaW5nIHRoZSBpbnN0YWxsIHN0YWdlLgoKMjAwNi0wMi0xMCAxMjo0MyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBmaXggZm9yIGJ1ZyAyODYxOCwgY21ha2UuZXhlCgkgIGNhbiBub3QgZmluZCBpdHNlbGYKCjIwMDYtMDItMTAgMTE6NDcgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogU3RyZW5ndGhlbmVkCgkgIEVYRUNVVEVfUFJPQ0VTUyBvdXRwdXQgY2hlY2sgdGVzdC4KCjIwMDYtMDItMTAgMTE6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbUV4ZWN1dGVQcm9jZXNzQ29tbWFuZC5jeHg6IEVOSDogUmVtb3ZlIGV4dHJhIHdpbmRvd3MKCSAgbmV3bGluZSBjaGFyYWN0ZXJzIGZyb20gcHJvY2VzcyBvdXRwdXQuICBDZW50cmFsaXplZCB0ZXh0IGZpeAoJICBwcm9jZXNzaW5nLgoKMjAwNi0wMi0xMCAxMTo0MyAga2luZwoKCSogU291cmNlLzogY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuaDogRU5IOgoJICBNZW50aW9uIHJlbGF0aW9uc2hpcCBvZiBFWEVDVVRFX1BST0NFU1MgYW5kIEVYRUNfUFJPR1JBTS4KCjIwMDYtMDItMTAgMTE6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogRml4ZWQgZWNobyBjb21tYW5kIHRvIG5vdCBwcmludCB0cmFpbGluZwoJICBzcGFjZS4KCjIwMDYtMDItMTAgMTE6MTkgIGtpbmcKCgkqIGJvb3RzdHJhcDogQlVHOiBGaXhlZCBib290c3RyYXAgZnJvbSBNU1lTIHByb21wdC4gIEl0IHdhcyB3b3JraW5nCgkgIG9ubHkgd2hlbiB0aGUgYm9vdHN0cmFwIGRpcmVjdG9yeSBpbiBNU1lTIG1hcHBlZCB0byB0aGUgc2FtZQoJICBkaXJlY3Rvcnkgb24gd2luZG93cyBleGNlcHQgZm9yIHRoZSBkcml2ZSBsZXR0ZXIgaW4gZnJvbnQuICBOb3cKCSAgaXQgc2hvdWxkIHdvcmsgZnJvbSBhbnkgcGF0aC4KCjIwMDYtMDItMTAgMTA6MzAgIGhvZmZtYW4KCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmRXb3JraW5nRGlyZWN0b3J5LzogQ01ha2VMaXN0cy50eHQsIHdvcmtpbmcuYywKCSAgd29ya2luZy5jLmluOiBFTkg6IGZpeCB0ZXN0IHRvIHdvcmsgd2l0aCBpbiBzb3VyY2UgYnVpbGQKCjIwMDYtMDItMTAgMTA6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggYnVnIGZvciBzaW5nbGUgY2hhcgoJICBsaWJyYXJpZXMKCjIwMDYtMDItMTAgMDk6NDYgIGFuZHkKCgkqIE1vZHVsZXMvQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlOiBCVUc6IEZpeAoJICBDTUFLRV9SRVFVSVJFRF9MSUJSQVJJRVMgc3R1ZmYgaW4gdGhpcyBtb2R1bGUKCjIwMDYtMDItMTAgMDI6MTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0wOSAyMzowOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBidWcgZml4IGZvciAyODI5CgkgIGJldHRlciBmbGFncyBmb3IgaWRsIHRvb2wKCjIwMDYtMDItMDkgMTk6MjkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZWQgdW51c2VkCgkgIHZhcmlhYmxlcy4KCjIwMDYtMDItMDkgMTk6MjUgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgcGF0Y2ggbGV2ZWwgdG8gMiBmb3Igc3BlY2lhbCBLREUKCSAgcmVsZWFzZS4KCjIwMDYtMDItMDkgMTk6MjMgIGtpbmcKCgkqIE1vZHVsZXMvOiBDaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgQ2hlY2tDWFhTb3VyY2VDb21waWxlcy5jbWFrZSwgQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZSwgQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2UsIENoZWNrVmFyaWFibGVFeGlzdHMuY21ha2U6IEVOSDogTWFkZQoJICBDaGVjayogbW9kdWxlcyBtb3JlIGNvbnNpc3RlbnQgYW5kIHdlbGwgZG9jdW1lbnRlZC4gIEFkZGVkCgkgIENNQUtFX1JFUVVJUkVEX0RFRklOSVRJT05TIG9wdGlvbi4KCjIwMDYtMDItMDkgMTk6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBOZWVkIHRvIGluY2x1ZGUgZW1wdHkgYXJndW1lbnRzIHdoZW4KCSAgcGFyc2luZyBwcmVmaXgvc3VmZml4IGxpc3RzIGZvciBGaW5kTGlicmFyeS4KCjIwMDYtMDItMDkgMTk6MDMgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkaW5nIG9wdGlvbgoJICB0byByZXR1cm4gZW1wdHkgYXJndW1lbnRzIHdoZW4gZXhwYW5kaW5nIGEgbGlzdC4KCjIwMDYtMDItMDkgMTg6NDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBCVUc6IEZpeGVkIGdlbmVyYXRpb24gb2YgY21ha2UKCSAgcmUtcnVuIHJ1bGVzLgoKMjAwNi0wMi0wOSAxODozOSAga2luZwoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogQlVHOiBBdm9pZCBjYXNlCgkgIHByb2JsZW1zIG9uIHdpbmRvd3MuCgoyMDA2LTAyLTA5IDE3OjI5ICBraW5nCgoJKiBTb3VyY2UvOiBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwgY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oOgoJICBCVUc6IERlYWwgd2l0aCBjYXNlIGluc2Vuc2l0aXZpdHkgb24gd2luZG93cyBsaW5rZXIgcGF0aHMuICBBbHNvCgkgIGZpeGVkIHNwZWxsaW5nIHR5cG8uCgoyMDA2LTAyLTA5IDE1OjMzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRQTkcuY21ha2U6IEVOSDogUHV0IGxpYnBuZyBuYW1lIGJhY2sgYmVjYXVzZSBpdCBpcwoJICBuZWVkZWQgZm9yIHBsYWluIHdpbmRvd3MuCgoyMDA2LTAyLTA5IDE1OjA4ICBraW5nCgoJKiBNb2R1bGVzLzogRmluZEpQRUcuY21ha2UsIEZpbmRQTkcuY21ha2UsIEZpbmRUSUZGLmNtYWtlLAoJICBGaW5kWkxJQi5jbWFrZTogRU5IOiBSZW1vdmluZyBwbGF0Zm9ybS1zcGVjaWZpYyBuYW1lIGhhY2tzIG5vdwoJICB0aGF0IEZJTkRfTElCUkFSWSBoYW5kbGVzIGl0LgoKMjAwNi0wMi0wOSAxNTowNSAga2luZwoKCSogTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MuY21ha2UsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGRlZAoJICBwbGF0Zm9ybSBzZXR0aW5ncyBDTUFLRV9GSU5EX0xJQlJBUllfUFJFRklYRVMgYW5kCgkgIENNQUtFX0ZJTkRfTElCUkFSWV9TVUZGSVhFUyB0byBhbGxvdyBjdXN0b21pemVkIHNlYXJjaGluZyBmb3IKCSAgbGlicmFyaWVzLgoKMjAwNi0wMi0wOSAxNDoyOCAga2luZwoKCSogTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZTogRU5IOiBQYXkgYXR0ZW50aW9uIHRvCgkgIENNQUtFX1JFUVVJUkVEX0lOQ0xVREVTLgoKMjAwNi0wMi0wOSAxNDoxOCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWcrKy5jbWFrZTogQlVHOiBOZWVkIFdpbmRvd3MtZysrLmNtYWtlCgkgIG1vZHVsZSB0byBzdXBwb3J0IEMrKy1vbmx5IHByb2plY3RzIG9uIFdpbmRvd3MuCgoyMDA2LTAyLTA5IDEzOjQ4ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW46IEJVRzogTmVlZCB0byBkdXBsaWNhdGUgc29tZQoJICBpbmZvcm1hdGlvbiBmcm9tIENNYWtlQ0NvbXBpbGVyIHRvIHN1cHBvcnQgQysrLW9ubHkgcHJvamVjdHMuCgoyMDA2LTAyLTA5IDEzOjE0ICBraW5nCgoJKiBNb2R1bGVzLzogQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIENoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGVzLmNtYWtlOiBFTkg6IFBhdGNoCgkgIGZyb20gQWxleGFuZGVyIE5ldW5kb3JmIHRvIGltcHJvdmUgYmVoYXZpb3IuCgoyMDA2LTAyLTA5IDEyOjA0ICBraW5nCgoJKiBNb2R1bGVzLzogRmluZEpQRUcuY21ha2UsIEZpbmRQTkcuY21ha2UsIEZpbmRUSUZGLmNtYWtlLAoJICBGaW5kWkxJQi5jbWFrZTogRU5IOiBBZGRlZCBuYW1lcyBmb3IgZ251d2luMzIgbGlicmFyeSB2ZXJzaW9ucy4KCjIwMDYtMDItMDkgMDk6MzQgIGRhdmlkLmNvbGUKCgkqIFV0aWxpdGllcy9jbXRhci93cmFwcGVyLmM6IENPTVA6IExhc3QgKD8pIGZpeCBmb3IgZGFzaGJvYXJkCgkgIHdhcm5pbmcuCgoyMDA2LTAyLTA5IDAyOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMDggMTU6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHg6IEVOSDogZml4CgkgIGJyb2tlbiB0ZXN0cwoKMjAwNi0wMi0wOCAxNDoxMiAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IHdvcmtpbmcKCSAgZGlyZWN0b3J5IHdvcmtpbmcgZm9yIFhDb2RlCgoyMDA2LTAyLTA4IDEyOjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmg6IEVOSDogRW5hYmxlZCBuZXcKCSAgV09SS0lOR19ESVJFQ1RPUlkgb3B0aW9uIHRvIEFERF9DVVNUT01fQ09NTUFORCBhbmQKCSAgQUREX0NVU1RPTV9UQVJHRVQgb24gVlMgNiBnZW5lcmF0b3IuCgoyMDA2LTAyLTA4IDExOjMzICBob2ZmbWFuCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kV29ya2luZ0RpcmVjdG9yeS86IENNYWtlTGlzdHMudHh0LAoJICBjdXN0b21UYXJnZXQuYywgd29ya2luZy5jOiBFTkg6IGFkZCB0ZXN0IGZvciB3b3JraW5nIGRpcmVjdG9yeSBvZgoJICBjdXN0b20gY29tbWFuZCBhbmQgdGFyZ2V0CgoyMDA2LTAyLTA4IDEwOjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgU291cmNlL2NtQ1BsdWdpbkFQSS5jeHgsCgkgIFNvdXJjZS9jbUN1c3RvbUNvbW1hbmQuY3h4LCBTb3VyY2UvY21DdXN0b21Db21tYW5kLmgsCgkgIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuY3h4LCBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4OgoJICBFTkg6IGFkZCB3b3JraW5nIGRpcmVjdG9yeSBzdXBwb3J0CgoyMDA2LTAyLTA4IDEwOjEzICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogQWRkZWQgb3B0aW9uIEJVSUxEX0N1cnNlc0RpYWxvZyBpZiBjdXJzZXMgaXMgZm91bmQuICBUaGlzCgkgIGFsbG93cyBwZW9wbGUgdG8gZGlzYWJsZSBidWlsZGluZyB0aGUgZGlhbG9nIGV2ZW4gd2hlbiBjdXJzZXMgaXMKCSAgZm91bmQuCgoyMDA2LTAyLTA4IDA5OjUxICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEJVRzogRml4ZWQgcXQgdmVyc2lvbiBtZXNzYWdlLiAgU3VibWl0dGVkCgkgIGJ5IFRhbm5lciBMb3ZlbGFjZS4KCjIwMDYtMDItMDggMDc6MTcgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBDT01QOiBGaXgKCSAgcHJvYmxlbSB3aXRoIFNUTCBvbiBIUCwgYW5kIGZpeCByZXVzaW5nIHRoZSBzYW1lIHZhcmlhYmxlIGluIGZvcgoJICBsb29wcwoKMjAwNi0wMi0wOCAwMjo1MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTA3IDE3OjEwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogQWRkaW5nIGRlZmluaXRpb24gb2YgTVNWQwoJICB3aGVuIGl0IGlzIHRoZSBjb21waWxlci4KCjIwMDYtMDItMDcgMTc6MDkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBGaXhlZCBmaW5kaW5nIG9mIE1pbkdXIGxpYnJhcmllcyB3aXRoCgkgIGEgd2luZG93cyBidWlsZCBvZiBDTWFrZS4KCjIwMDYtMDItMDcgMTI6NTMgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jcGFjay5jeHg6IEVOSDogQWRkIG1pc3NpbmcgaGVscCBmb3IgLUMgb3B0aW9uCgoyMDA2LTAyLTA3IDExOjQzICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBGaXggY29tcGlsZSBwcm9ibGVtIG9uCgkgIHdpbmRvd3MgYW5kIG1hYwoKMjAwNi0wMi0wNyAxMDo0MyAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogRml4IGJ1aWxkIHByb2JsZW0KCjIwMDYtMDItMDcgMTA6MjMgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IE1vdmUKCSAgcmVsYXRpdmUgcGF0aCB0byBrd3N5cwoKMjAwNi0wMi0wNyAxMDoxMSAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2t3c3lzL1N0cmluZy5oeHguaW46IEVOSDoKCSAgQWRkZWQga3dzeXM6OlN0cmluZyBjbGFzcyB0byBzaG9ydGVuIGRlYnVnZ2luZyBzeW1ib2xzIGFuZCBlcnJvcgoJICBtZXNzYWdlcyBpbnZvbHZpbmcgc3RkOjpzdHJpbmcuCgoyMDA2LTAyLTA3IDA5OjI1ICBtYWxhdGVycmUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkIHNvbWUgZG9jIGZvciB2aXNpYmxlCgkgIGNsYXNzCgoyMDA2LTAyLTA3IDA4OjQ5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgY21UcnlSdW5Db21tYW5kLmN4eCwKCSAgY21ha2VtYWluLmN4eCwgY3Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBTaW5jZSBsaXN0IGZpbGUgY2FjaGUgZG9lcwoJICBub3QgbWFrZSBtdWNoIHNlbnNlIGFueSBtb3JlIChiZWNhdXNlIG9mIHByb3BlciBsaXN0IGZpbGUKCSAgcGFyc2luZyksIGFuZCBpdCBhY3R1YWxseSBhZGRzIHVubmVjZXNzYXJ5IGNvbXBsaWNhdGlvbnMgYW5kIG1ha2UKCSAgY3Rlc3Qgc2NyaXB0aW5nIG5vdCB3b3JrLCB0YWtlIGl0IG91dAoKMjAwNi0wMi0wNyAwODowMyAgZGF2aWQuY29sZQoKCSogVXRpbGl0aWVzL2NtdGFyL3dyYXBwZXIuYzogQ09NUDogRml4IG5leHQgcm91bmQgb2YgZGFzaGJvYXJkCgkgIHdhcm5pbmdzLgoKMjAwNi0wMi0wNyAwMjowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTA2IDE2OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGFsbG93IGZvciAtIGluIHRoZQoJICBuYW1lIG9mIHRhcmdldHMgZm9yIG5tYWtlCgoyMDA2LTAyLTA2IDA5OjMxICBkYXZpZC5jb2xlCgoJKiBVdGlsaXRpZXMvY210YXIvOiBleHRyYWN0LmMsIG91dHB1dC5jLCB3cmFwcGVyLmM6IENPTVA6IEZpeCBDTWFrZQoJICBkYXNoYm9hcmQgd2FybmluZ3MgcmVsYXRlZCB0byBwcmV2aW91cyByZXZpc2lvbnMuCgoyMDA2LTAyLTA2IDAyOjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMDUgMDI6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMi0wNCAwMjoxOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTAzIDE4OjA4ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBJbmNyZW1lbnRlZCBwYXRjaCB2ZXJzaW9uIGZvciBzcGVjaWFsIEtERQoJICByZWxlYXNlLgoKMjAwNi0wMi0wMyAxNzowOSAga2luZwoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCB0ZXN0IGZvciBuZXcKCSAgRVhFQ1VURV9QUk9DRVNTIGNvbW1hbmQuCgoyMDA2LTAyLTAzIDE2OjU1ICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogQWRkaW5nIG5ldyBFWEVDVVRFX1BST0NFU1MgY29tbWFuZCB0aGF0CgkgIGludGVyZmFjZXMgdG8gS1dTeXMgUHJvY2VzcyBFeGVjdXRpb24uCgoyMDA2LTAyLTAzIDE2OjUxICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21FeGVjdXRlUHJvY2Vzc0NvbW1hbmQuY3h4LAoJICBjbUV4ZWN1dGVQcm9jZXNzQ29tbWFuZC5oOiBFTkg6IEFkZGluZyBuZXcgRVhFQ1VURV9QUk9DRVNTCgkgIGNvbW1hbmQgdGhhdCBpbnRlcmZhY2VzIHRvIEtXU3lzIFByb2Nlc3MgRXhlY3V0aW9uLgoKMjAwNi0wMi0wMyAxMjowMyAga2luZwoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDogQ09NUDogQWRkZWQgbWlzc2luZyBtZXRob2QgZGVjbAoJICB0byBoZWFkZXIuCgoyMDA2LTAyLTAzIDExOjQ4ICBkYXZpZC5jb2xlCgoJKiBVdGlsaXRpZXMvY210YXIvOiBkZWNvZGUuYywgZXh0cmFjdC5jLCBvdXRwdXQuYywgd3JhcHBlci5jOiBCVUc6CgkgIEZpeCBtZW0gbGVha3MgcmVsYXRlZCB0byB0aF9nZXRfcGF0aG5hbWUuIENoYW5nZSB0aGlzCgkgIGltcGxlbWVudGF0aW9uIG9mIHRoX2dldF9wYXRobmFtZSBzbyB0aGF0IGl0ICphbHdheXMqIHJldHVybnMgYQoJICBzdHJkdXAnZWQgdmFsdWUuIENhbGxlcnMgbXVzdCBub3cgZnJlZSBub24tTlVMTCByZXR1cm5zIGZyb20KCSAgdGhfZ2V0X3BhdGhuYW1lLiBDaGFuZ2UgYWxsIGNhbGxlcnMgdG8gY2FsbCBmcmVlIGFwcHJvcHJpYXRlbHkuCgoyMDA2LTAyLTAzIDExOjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtVGFyZ2V0LmN4eDogQlVHOiBGaXhlZCBjbVRhcmdldDo6R2V0RnVsbFBhdGggdG8gbm90IGFwcGVuZCB0aGUKCSAgY29uZmlndXJhdGlvbiBuYW1lIHdoZW4gb25seSBvbmUgY29uZmlndXJhdGlvbiBpcyBidWlsdC4gIEl0IG5vdwoJICBhc2tzIHRoZSBnZW5lcmF0b3Igd2hhdCBzdWJkaXJlY3RvcnkgaWYgYW55IHRvIHVzZSBmb3IgYSBnaXZlbgoJICBjb25maWd1cmF0aW9uIG5hbWUuCgoyMDA2LTAyLTAzIDAyOjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDItMDIgMjA6MTggIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDoKCSAgQ09NUDogRml4ZWQgYnVpbGQgb24gVkMrKyBFeHByZXNzIDIwMDUuICBFeHBsaWNpdGx5IHRlc3RpbmcgZm9yCgkgIE1GQyB0byBkZXRlcm1pbmUgd2hldGhlciB0byBidWlsZCB0aGUgTUZDRGlhbG9nLgoKMjAwNi0wMi0wMiAyMDoxNiAga2luZwoKCSogTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2U6IEJVRzogQ01BS0VfSU5TVEFMTF9QUkVGSVggbXVzdAoJICBhbHdheXMgaGF2ZSBmb3J3YXJkIHNsYXNoZXMuCgoyMDA2LTAyLTAyIDIwOjE1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogUmVtb3ZlZCBvZGJjMzIubGliIGFuZAoJICBvZGJjY3AzMi5saWIgZnJvbSBzdGFuZGFyZCBsaWJyYXJpZXMgb24gVlMgOCBiZWNhdXNlIFZDKysgRXhwcmVzcwoJICAyMDA1IGRvZXMgbm90IGhhdmUgdGhlbS4gIFRoZXkgYXJlIFNRTCBkYXRhYmFzZSBhY2Nlc3MgbGlicmFyaWVzCgkgIGFuZCBzaG91bGQgbm90IGJlIG5lZWRlZCBmb3IgZXZlcnkgYXBwbGljYXRpb24uICBVc2VyIGNvZGUgY2FuCgkgIGFsd2F5cyBleHBsaWNpdGx5IGxpbmsgdGhlIGxpYnJhcnkuICBBbHNvIHJlcGxhY2luZyBkZXByZWNhdGVkCgkgIC9HWiBvcHRpb24gd2l0aCAvUlRDMSBmb3IgVlMgOC4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMyNzk1LgoKMjAwNi0wMi0wMiAxNTo1MyAgZGF2aWQuY29sZQoKCSogVXRpbGl0aWVzL2NtdGFyL2ZpbGVzeXN0ZW0uYzogQlVHOiBGaXggbWVtb3J5IGxlYWsgaW4gbGlidGFyJ3MKCSAga3dSZWFkRGlyLiBVc2UgYSBzdGF0aWMgYnVmZmVyIGxpa2UgcmVhZGRpciAocHJvYmFibHkpIGRvZXMKCSAgcmF0aGVyIHRoYW4gbWFsbG9jLWluZyBhIGJsb2NrIHdoaWNoIG5ldmVyIGdldHMgZnJlZS1kLgoKMjAwNi0wMi0wMiAwMzozMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAyLTAxIDAyOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMzEgMTk6MzQgIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbWFrZS5jeHg6IEVOSDogRW5hYmxlZCBidWlsZCBvZiBWUyA3CgkgIGFuZCA4IGdlbmVyYXRvcnMgZm9yIE1pbkdXLgoKMjAwNi0wMS0zMSAxODo1MCAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEVuYWJsZWQgYm9vdHN0cmFwcGluZyB3aXRoCgkgIE1pbkdXIGZyb20gYW4gTVNZUyBwcm9tcHQuCgoyMDA2LTAxLTMxIDEwOjQ2ICBraW5nCgoJKiBTb3VyY2UvY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4OiBCVUc6IEFCU09MVVRFIG9wdGlvbgoJICBzaG91bGQgZXZhbHVhdGUgcmVsYXRpdmUgcGF0aHMgd2l0aCByZXNwZWN0IHRvCgkgIENNQUtFX0NVUlJFTlRfU09VUkNFX0RJUi4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMyNzk3LgoKMjAwNi0wMS0zMSAwNTowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTMwIDE0OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogbW9yZSBjbGVhbnVwIGFuZCByZW1vdmFsIG9mCgkgIG9sZCBjb2RlCgoyMDA2LTAxLTMwIDEzOjU3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogY2xlYW51cCBhbmQgcmVtb3ZlIHNvbWUgb2xkCgkgIGNvZGUKCjIwMDYtMDEtMzAgMDI6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0yOSAwMjowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTI4IDAxOjM4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMjcgMTg6MjAgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmN4eCwgY21GaW5kTGlicmFyeUNvbW1hbmQuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5oLCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZS5oOiBFTkg6IEltcHJvdmVkIHN1cHBvcnQgZm9yIHVzZXItY29uZmlndXJlZCBzZWFyY2gKCSAgcGF0aHMuICBQYXRocyBnaXZlbiBpbiB0aGUgQ01BS0VfTElCUkFSWV9QQVRIIGNtYWtlIHZhcmlhYmxlIGFyZQoJICBzZWFyY2hlZCBmaXJzdCwgdGhlbiB0aG9zZSBpbiB0aGUgQ01BS0VfTElCUkFSWV9QQVRIIGVudmlyb25tZW50CgkgIHZhcmlhYmxlLCB0aGVuIHRob3NlIGxpc3RlZCBpbiB0aGUgY2FsbCB0byB0aGUgRklORF9MSUJSQVJZCgkgIGNvbW1hbmQgYW5kIGZpbmFsbHkgdGhvc2UgbGlzdGVkIGluIHRoZSBQQVRIIGVudmlyb25tZW50CgkgIHZhcmlhYmxlLiAgVGhlIHN1cHBvcnQgaXMgc2ltaWxhciBmb3IgZmluZGluZyBpbmNsdWRlIGZpbGVzIHdpdGgKCSAgRklORF9QQVRILCBidXQgdGhlIHZhcmlhYmxlIGlzIENNQUtFX0lOQ0xVREVfUEFUSC4KCjIwMDYtMDEtMjcgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaDogQlVHOiBWUzcgZ2VuZXJhdG9yIHNob3VsZCB1c2UKCSAgcGVyLWNvbmZpZ3VyYXRpb24gbGlua2VyIGZsYWdzIGZvciB0YXJnZXRzLiAgVGhpcyBhZGRyZXNzZXMKCSAgYnVnIzI3NjUuCgoyMDA2LTAxLTI3IDEzOjQ2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwgY21DVGVzdEJ1aWxkSGFuZGxlci5oOgoJICBFTkg6IEJldHRlciBoYW5kbGUgaW50ZXJsZXZlZCBlcnJvci9vdXRwdXQKCjIwMDYtMDEtMjcgMTM6MDcgIGtpbmcKCgkqIE1vZHVsZXMvcmVhZG1lLnR4dCwgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmg6IEVOSDogQWRkZWQgb3B0aW9uYWwgY29tcG9uZW50IGxpc3QKCSAgdG8gdGhlIFJFUVVJUkVEIG9wdGlvbiBvZiB0aGUgRklORF9QQUNLQUdFIGNvbW1hbmQuICBUaGlzCgkgIGFkZHJlc3NlcyBidWcjMjc3MS4KCjIwMDYtMDEtMjcgMTI6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuaDogU1RZTEU6IHNwZWxsaW5nIGZpeAoKMjAwNi0wMS0yNyAxMjo1OCAgbWFydGluawoKCSogU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuaDogU1RZTEU6IGdyYW1tZXIgZml4CgoyMDA2LTAxLTI3IDExOjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IGFkZCBleHRyYSB0aGluZyBmb3IKCSAgc3ZuIFggc3RhdHVzIG91dHB1dAoKMjAwNi0wMS0yNyAwMTozNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTI2IDAxOjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMjUgMTQ6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogRU5IOiBmaXggZG91YmxlCgkgIENNQUtFXyhMQU5HKV9GTEFHUyBwcm9ibGVtIGluIHRyeSBjb21waWxlCgoyMDA2LTAxLTI1IDEyOjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFF0LmNtYWtlLCBGaW5kUXQ0LmNtYWtlOiBFTkg6IGNoYW5nZSB0byBmYXRhbCBlcnJvcgoKMjAwNi0wMS0yNSAxMTo0MSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBDTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lSmF2YUNvbXBpbGVyLmNtYWtlLCBDTWFrZURldGVybWluZVJDQ29tcGlsZXIuY21ha2U6CgkgIEVOSDogZml4IG1vcmUgdGhhbiBvbmUgYXJndW1lbnQgcGFzc2VkIGluIHRvIGNvbXBpbGVycyB2aWEKCSAgZW52aXJvbm1lbnQKCjIwMDYtMDEtMjUgMTE6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWVzc2FnZUNvbW1hbmQuY3h4LCBjbU1lc3NhZ2VDb21tYW5kLmg6IEVOSDogZml4IGRvY3MsCgkgIGFuZCByZXZlcnQgZmF0YWwgZXJyb3IgY2hhbmdlCgoyMDA2LTAxLTI1IDA4OjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NZXNzYWdlQ29tbWFuZC5jeHg6IEVOSDogbWFrZSBhbGwgZXJyb3JzIGZhdGFsIGluCgkgIG1lc3NhZ2UgY29tbWFuZAoKMjAwNi0wMS0yNSAwODozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL3Rlc3RjZmxhZ3MuYywKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS90ZXN0Y2ZsYWdzLmMsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvdGVzdGNmbGFncy5jOiBFTkg6IGFkZAoJICBDT01QSUxFX0ZMQUdTIHRvIHRhcmdldHMKCjIwMDYtMDEtMjUgMDA6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0yNCAyMjoyMCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9QYXRoRGlhbG9nLmNwcDogRU5IOiBkbyBub3QgZm9yY2UgdXNlcnMgdG8KCSAgY3JlYXRlIHBhdGhzCgoyMDA2LTAxLTI0IDE1OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogZml4IGZvciBib3JsYW5kIG1lbWNweSBqdW5rCgoyMDA2LTAxLTI0IDEyOjA3ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2U6IEVOSDogZml4IGJ1Zywgd3JpdGUgdGhlCgkgIGNvcnJlY3QgZmlsZQoKMjAwNi0wMS0yNCAwNzo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNi0wMS0yNCAwMDo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTIzIDE3OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDYtMDEtMjMgMTY6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogYnkgQmlsbCBtYWtlIHN1cmUgcGF0aCBpcyB1bml4CgkgIHN0eWxlCgoyMDA2LTAxLTIzIDEzOjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBwcm9ibGVtIHdpdGggd2F0Y29tIGFuZCBzaG9ydAoJICBwYXRocyBhbmQgLUkKCjIwMDYtMDEtMjMgMTI6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURlcGVuZHMuY3h4OiBFTkg6IGNvcnJlY3QgaW5jbHVkZSBmb3IgbWVtY3B5CgoyMDA2LTAxLTIzIDExOjMyICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL2tGcmVlQlNELmNtYWtlOiBFTkg6IGFkZCBrRnJlZUJTRCBzdXBwb3J0CgoyMDA2LTAxLTIzIDAwOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMjIgMjE6MTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZTogRU5IOiBmaXggY2hlY2sgdHlwZSBzaXplCgoyMDA2LTAxLTIyIDAwOjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMjEgMDA6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0yMCAwMTowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTE5IDAwOjU3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMTggMDA6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0xNyAxNjo1MyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBmaXggZm9yIGljYwoKMjAwNi0wMS0xNyAxNjoyMiAgbWFydGluawoKCSogVXRpbGl0aWVzL2NtY3VybC9DTWFrZS9DaGVja1R5cGVTaXplLmNtYWtlOiBCVUc6IHJldmVydCBzdWNoIHRoYXQKCSAgaXQgc2hvdWxkIHdvcmsKCjIwMDYtMDEtMTcgMTQ6MzUgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogbW9yZSBmaXhlcwoJICBmb3Igd2F0Y29tCgoyMDA2LTAxLTE3IDEwOjIxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRmluZFdNYWtlLmNtYWtlLCBNb2R1bGVzL1Rlc3RGb3JTU1RSRUFNLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JTU1RSRUFNLmN4eCwgTW9kdWxlcy9yZWFkbWUudHh0LAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3Mtd2NsMzg2LmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4LCBTb3VyY2UvY21DUGx1Z2luQVBJLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxXYXRjb21XTWFrZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFdhdGNvbVdNYWtlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9rd3N5cy9EaXJlY3RvcnkuY3h4LAoJICBTb3VyY2Uva3dzeXMvRW5jb2RlRXhlY3V0YWJsZS5jLCBTb3VyY2Uva3dzeXMvR2xvYi5jeHgsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYywgU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIFNvdXJjZS9rd3N5cy90ZXN0UmVnaXN0cnkuY3h4LAoJICBUZXN0cy9Db21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIFRlc3RzL1N1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3ViRGlyL3ZjbF9hbGdvcml0aG1fdmNsX3BhaXJfZG91YmxlLmZvby5jLAoJICBUZXN0cy9TdWJEaXIvQW5vdGhlclN1YmRpci9wYWlyX2ludC5pbnQuYywKCSAgVGVzdHMvU3ViRGlyL1RoaXJkU3ViRGlyL3BhaXJfaW50LmludDEuYywKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL2NtY3VybC90aW1ldmFsLmgsCgkgIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvQ2hlY2tUeXBlU2l6ZS5jLmluLAoJICBVdGlsaXRpZXMvY21jdXJsL0NNYWtlL0NoZWNrVHlwZVNpemUuY21ha2UsCgkgIFV0aWxpdGllcy9jbWN1cmwvUGxhdGZvcm1zL1dpbmRvd3NDYWNoZS5jbWFrZSwKCSAgVXRpbGl0aWVzL2NtdGFyL2hhbmRsZS5jLCBVdGlsaXRpZXMvY210YXIvbGlidGFyLmM6IEVOSDogYWRkCgkgIHN1cHBvcnQgZm9yIHdhdGNvbSB3bWFrZSBhbmQgd2NsMzg2CgoyMDA2LTAxLTE3IDA5OjI3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogY29ycmVjdCBzdGFuZGFyZAoJICBsaWJyYXJpZXMKCjIwMDYtMDEtMTcgMDA6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0xNiAxMjo1NCAgeW9naS5naXJkaGFyCgoJKiBVdGlsaXRpZXMvY210YXIvY29tcGF0L2NvbXBhdC5oOiBDT01QOiB3cmFwcGVkIGNvbXBhdC5oIGluc2lkZSBhCgkgIGV4dGVybiBDIGJsb2NrIHNvIHRoYXQgd2UgY2FuIHVzZSBpdCBpbiBDKysgY29kZQoKMjAwNi0wMS0xNiAwMDo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTE1IDAwOjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMTQgMTA6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogRml4ZWQgc2hhZG93ZWQgdmFyaWFibGUKCSAgd2FybmluZy4KCjIwMDYtMDEtMTQgMDA6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0xMyAyMDo1MSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IEZ1cnRoZXIgY2VudHJhbGl6ZWQgY3VzdG9tCgkgIGNvbW1hbmQgZGVwZW5kZW5jeSBjb21wdXRhdGlvbi4gIEN1c3RvbSBjb21tYW5kIGRlcGVuZGVuY2llcyBpbgoJICB0aGUgc291cmNlIHRyZWUgbWF5IG5vdyBhbHNvIGJlIHNwZWNpZmllZCByZWxhdGl2ZSB0byB0aGUgc291cmNlCgkgIGRpcmVjdG9yeS4KCjIwMDYtMDEtMTMgMTk6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eDogQlVHOiBSZW1vdmVkIGJvZ3VzdCBkZXBlbmRlbmN5LgoKMjAwNi0wMS0xMyAxOTozNSAga2luZwoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBSZW1vdmVkCgkgIHVudXNlZCB2YXJpYWJsZXMuCgoyMDA2LTAxLTEzIDE4OjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IFJlbW92ZWQgdW51c2VkIHBhcmFtdGVyCgkgIGZyb20gY21Mb2NhbEdlbmVyYXRvcjo6T3V0cHV0TGlua0xpYnJhcmllcy4KCjIwMDYtMDEtMTMgMTg6MTggIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBTb3VyY2UvY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IFN3ZWVwaW5nCgkgIGNoYW5nZXMgdG8gY2xlYW51cCBjb21wdXRhdGlvbiBvZiB0YXJnZXQgbmFtZXMuICBUaGlzIHNob3VsZCBmaXgKCSAgbWFueSBidWdzIHJlbGF0ZWQgdG8gdGFyZ2V0IG5hbWVzIGJlaW5nIGNvbXB1dGVkIGluY29uc2lzdGVudGx5LgoKCSAgLSBDZW50cmFsaXplZCBjb21wdXRhdGlvbiBvZiBhIHRhcmdldCdzIGZpbGUgbmFtZSB0byBhIG1ldGhvZCBpbgoJICAgY21UYXJnZXQuICBOb3cgdGhhdCBnbG9iYWwga25vd2xlZGdlIGlzIGFsd2F5cyBhdmFpbGFibGUgdGhlCgkgICpfQ01BS0VfUEFUSCBjYWNoZSB2YXJpYWJsZXMgYXJlIG5vIGxvbmdlciBuZWVkZWQuCgoJICAtIENlbnRyYWxpemVkIGNvbXB1dGF0aW9uIG9mIGxpbmsgbGlicmFyeSBjb21tYW5kIGxpbmVzIGFuZCBsaW5rCgkgICBkaXJlY3Rvcnkgc2VhcmNoIG9yZGVyLgoKCSAgLSBNb3ZlZCBjb21wdXRhdGlvbiBvZiBsaW5rIGRpcmVjdG9yaWVzIG5lZWRlZCB0byBsaW5rIENNYWtlCgkgIHRhcmdldHMgICB0byBiZSBhZnRlciBldmFsdWF0aW9uIG9mIGxpbmtpbmcgZGVwZW5kZW5jaWVzLgoKCSAgVGhpcyBhbHNvIHJlbW92ZWQgYWxvdCBvZiBkdXBsaWNhdGUgY29kZSBpbiB3aGljaCBlYWNoIHZlcnNpb24KCSAgaGFkIGl0cyBvd24gYnVncy4KCgkgIFRoaXMgY29tbWl0IGlzIHN1cnJvdW5kZWQgYnkgdGhlIHRhZ3MKCgkgICAgQ01ha2UtVGFyZ2V0TmFtZUNlbnRyYWxpemF0aW9uMS1wcmUKCgkgIGFuZAoKCSAgICBDTWFrZS1UYXJnZXROYW1lQ2VudHJhbGl6YXRpb24xLXBvc3QKCgkgIHNvIG1ha2UgdGhlIGxhcmdlIHNldCBvZiBjaGFuZ2VzIGVhc3kgdG8gaWRlbnRpZnkuCgoyMDA2LTAxLTEzIDExOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIFV0aWxpdGllcy9jbWN1cmwvQ01ha2UvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlL1RyeUNvbXBpbGVGcm9tU291cmNlLmNtYWtlOiBFTkg6IGZpeCBmb3IKCSAgQ01ha2VUbXAgbW92ZSBicm9rZW4gc3R1ZmYKCjIwMDYtMDEtMTMgMDk6NTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDaGVja1R5cGVTaXplLmMuaW4sIENoZWNrVHlwZVNpemUuY21ha2U6IEVOSDogZml4CgkgIGNoZWNrdHlwZXNpemUKCjIwMDYtMDEtMTMgMDA6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0xMiAyMzowOCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrVHlwZVNpemUuYy5pbiwgQ2hlY2tUeXBlU2l6ZS5jbWFrZTogRU5IOiBtb3ZlCgkgIGRlZmluZSBpbnRvIGNvbmZpZ3VyZWQgZmlsZSBhbmQgZG8gbm90IHVzZSB0aGUgY29tbWFuZCBsaW5lCgoyMDA2LTAxLTEyIDE0OjIxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uaDoKCSAgQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDYtMDEtMTIgMTM6NDggIG1hcnRpbmsKCgkqIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0NYWFNvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwgTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlLCBNb2R1bGVzL0ZpbmRTRExfc291bmQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZS9DaGVja1R5cGVTaXplLmNtYWtlLAoJICBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY214bWxycGMvQ01ha2UvVHJ5Q29tcGlsZUZyb21Tb3VyY2UuY21ha2U6IEVOSDogcHV0CgkgIENtYWtlVG1wIGludG8gQ01ha2VGaWxlcwoKMjAwNi0wMS0xMiAxMToxMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlOiBFTkg6IGNvbnRyaWJ1dGlvbiBmcm9tIEphbiBXb2V0emVsCgoyMDA2LTAxLTEyIDA5OjIwICBhbmR5CgoJKiBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmN4eDogQ09NUDogRml4IGNvbXBpbGUgZXJyb3IgdGhhdAoJICB3YXMgY2F1c2VkIGJ5IHRoZSBiaW5hcnkgZmxhZwoKMjAwNi0wMS0xMiAwMDo0MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTExIDE5OjEyICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHg6IEVOSDogRml4IGNvbXByZXNzaW9uIG9uCgkgIFdpbmRvd3MKCjIwMDYtMDEtMTEgMTk6MDYgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6CgkgIEFkZCBzdXBwb3J0IGZvciBiaW5hcnkKCjIwMDYtMDEtMTEgMTE6MjMgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6IEVOSDogQWRkIGEgd2F5IHRvCgkgIHNwZWNpZnkgYSBjdXN0b20gaW5zdGFsbCBjb21tYW5kCgoyMDA2LTAxLTExIDExOjA4ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DUGFjay5jbWFrZSwgTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluLAoJICBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ1BhY2tDb25maWcuY21ha2UuaW46IEVOSDogU29tZSBpbXByb3ZlbWVudHM6IHNwZWNpZnkKCSAgbGluaywgY29weSBtc3ZjIGxpYnJhcmllcywgZml4IGluc3RhbGwgZGlyZWN0b3J5CgoyMDA2LTAxLTExIDAwOjQyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMTAgMTI6MDUgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tDb25maWd1cmUuaC5pbiwgY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrTlNJU0dlbmVyYXRvci5oLCBjbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmg6IENPTVA6CgkgIFJlbW92ZSBsZWdhY3kgY29kZSBhbmQgZml4IHN1biBidWlsZAoKMjAwNi0wMS0xMCAwMDo0NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTA5IDE4OjI0ICBhbmR5CgoJKiBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6IEVOSDogVXNlIHNwZWNpZmllZAoJICBvdXRwdXQgZmlsZSBuYW1lLCBhbHNvIGRldGVjdCBlcnJvcnMgZHVyaW5nIGluc3RhbGwKCjIwMDYtMDEtMDkgMTg6MjAgIGFuZHkKCgkqIFRlbXBsYXRlcy9DUGFja0NvbmZpZy5jbWFrZS5pbjogRU5IOiBQYXNzIENQQUNLX1BBQ0tBR0VfRklMRV9OQU1FCgoyMDA2LTAxLTA5IDE4OjIwICBhbmR5CgoJKiBNb2R1bGVzL0NQYWNrLmNtYWtlOiBFTkg6IENsZWFudXAKCjIwMDYtMDEtMDkgMTY6MzQgIGFuZHkKCgkqIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbjogQlVHOiBBbGxvdyBzcGFjZXMgaW4gcGF0aAoKMjAwNi0wMS0wOSAxNDo1NiAgaG9mZm1hbgoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC9HZW5lcmF0ZWRIZWFkZXIvOiBDTWFrZUxpc3RzLnR4dCwKCSAgZ2VuZXJhdGVkLmguaW4sIG1haW4uY3BwOiBFTkg6IGFkZCB0ZXN0IGZvciBnZW5lcmF0ZWQgaGVhZGVyCgoyMDA2LTAxLTA5IDE0OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DdXN0b21Db21tYW5kLmN4eCwgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvV3JhcHBpbmcvZmFrZWZsdWlkLmN4eDogRU5IOgoJICBmb3IgYWxsIGN1c3RvbSBjb21tYW5kcyB0aGF0IGNhbiBub3QgYmUgZ2l2ZW4gdG8gYSB0YXJnZXQsIGFkZAoJICB0aGVtIHRvIGFsbCB0YXJnZXRzIGluIHRoZSBjdXJyZW50IG1ha2VmaWxlCgoyMDA2LTAxLTA5IDEzOjE1ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogU1RZTEU6IEFkZCBhbiBleHBsYW5hdGlvbiBmb3IgYSBidW5jaCBvZgoJICBiYWNrc2xhc2hlcwoKMjAwNi0wMS0wOSAxMzoxNCAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeCBtZW1vcnkgcHJvYmxlbQoKMjAwNi0wMS0wOSAxMjo0NiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBSZWxlYXNlLmNtYWtlLCBjbWFrZV9yZWxlYXNlLnNoLmluOiBFTkg6CgoyMDA2LTAxLTA5IDEyOjQ1ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFF0LmNtYWtlLCBGaW5kUXQ0LmNtYWtlOiBFTkg6IGFkZCBxdCBxdWlldCBzdHVmZgoKMjAwNi0wMS0wOSAxMToyNiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ1BhY2suY21ha2UsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DUGFja0NvbmZpZy5jbWFrZS5pbjogRU5IOiBGaXggdGVzdCBmb3IgY3BhY2sKCSAgdmFyaWFibGVzLCBhZGQgc3VwcG9ydCBmb3IgaWNvbiBvbiB3aW5kb3dzCgoyMDA2LTAxLTA5IDAwOjQxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMDggMDA6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0wNyAwMDo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA2LTAxLTA2IDE1OjUxICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VNU1lTRmluZE1ha2UuY21ha2UsIENNYWtlTWluR1dGaW5kTWFrZS5jbWFrZSwKCSAgUGxhdGZvcm0vTGludXgtaWNwYy5jbWFrZTogRU5IOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNi0wMS0wNiAxNTo1MSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxNU1lTTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE1TWVNNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBhZGQgbWlzc2luZyBmaWxlcwoKMjAwNi0wMS0wNiAxNTowNyAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi1nNzcuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nNzcuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtRGVwZW5kc0MuY3h4LCBTb3VyY2UvY21EZXBlbmRzQy5oLAoJICBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRmluZFBhdGhDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZFBhdGhDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmN4eCwKCSAgU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmMsIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5oeHguaW4sIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2gsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2guaW46IEVOSDogbWVyZ2VzIGZyb20gbWFpbiB0cmVlCgoyMDA2LTAxLTA2IDEzOjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IG1pc3NpbmcgcGxpc3QgZmlsZQoJICBlcnJvcgoKMjAwNi0wMS0wNiAxMDo0NSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2NvbXBhdC9zbnByaW50Zi5jOiBDT01QOiBUcnkgdG8gcmVtb3ZlIG1vcmUKCSAgd2FybmluZ3MKCjIwMDYtMDEtMDYgMDA6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0wNSAxNzoxNiAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzQy5jeHgsIGNtRGVwZW5kc0MuaDogQlVHOiBGaXggZm9yIHNjYW5uaW5nCgkgIGdlbmVyYXRlZCBoZWFkZXJzIGluY2x1ZGVkIHdpdGggZG91YmxlLXF1b3Rlcy4gIEFsc28gZml4ZWQKCSAgZG91YmxlLXF1b3RlIGluY2x1ZGUgc3VwcG9ydCB0byBub3QgdXNlIHRoZSBzcGVjaWFsIHF1b3RlZAoJICBsb2NhdGlvbiB3aGVuIGEgZnVsbCBwYXRoIGlzIGdpdmVuIG9uIHRoZSBpbmNsdWRlIGxpbmUuCgoyMDA2LTAxLTA1IDE1OjQ5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBBZGRlZCBzcGVjaWFsIHRlc3QgMCB0byBqdXN0IHJ1bgoJICBhIGdpdmVuIGNvbW1hbmQgbGluZS4KCjIwMDYtMDEtMDUgMTM6MjcgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwgY3BhY2suY3h4OiBFTkg6IE1vcmUKCSAgZGVidWdnaW5nIGFuZCB3b3JrIG9uIFBhY2thZ2VNYWtlciBjb2RlCgoyMDA2LTAxLTA1IDEzOjI1ICB5b2dpLmdpcmRoYXIKCgkqIFV0aWxpdGllcy9jbXRhci86IGNvbmZpZy5oLmluLCBsaWJ0YXIuYzogQlVHOiBsaWJ0YXIgbm93IGNvbXBpbGVzCgkgIGluIFZKIGFuZCB3b3JrcyB3aXRoIHZ0a3psaWIKCjIwMDYtMDEtMDUgMTI6MzMgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrTG9nLmN4eDogRU5IOiBmbHVzaCB0aGUgb3V0cHV0CgoyMDA2LTAxLTA1IDEyOjE2ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBCVUc6IFVzZSBvYmplY3RzIHRoYXQgZXhpc3QKCjIwMDYtMDEtMDUgMTI6MTYgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrTG9nLmN4eDogQlVHOiBQcmludCB0aGUgcmlnaHQgbGluZSBudW1iZXIgdG8KCSAgdGhlIHJpZ2h0IHBpcGUKCjIwMDYtMDEtMDUgMTA6MzcgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eDogQlVHOiBSZXZlcnQgYmFjawoKMjAwNi0wMS0wNSAwOToxOCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIGEgc2FmZXIgY2hlY2sgZm9yIENQYWNrCgoyMDA2LTAxLTA1IDA5OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwgY21NYWtlZmlsZS5jeHg6IEVOSDogZml4CgkgIGJ1bmRsZXMgZm9yIE1hYyBhbmQgWGNvZGUKCjIwMDYtMDEtMDUgMDM6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0wNCAxNjoyNCAgaG9mZm1hbgoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSBhc3NlcnQKCjIwMDYtMDEtMDQgMTU6MTMgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NQYWNrLkRlc2NyaXB0aW9uLnBsaXN0LmluLAoJICBNb2R1bGVzL05TSVMudGVtcGxhdGUuaW4sCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9DUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgU291cmNlL0NQYWNrL2NwYWNrLmN4eCwKCSAgTW9kdWxlcy9DUGFjay5jbWFrZSwgVGVtcGxhdGVzL0NQYWNrQ29uZmlnLmNtYWtlLmluOiBFTkg6IE1vcmUKCSAgQ1BhY2sgc3R1ZmYgYW5kIGZpeCB6bGliIGNvbXByZXNzaW9uCgoyMDA2LTAxLTA0IDA5OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kUGF0aENvbW1hbmQuY3h4OiBFTkg6IHJlbW92ZSBkZWJ1ZyBwcmludCBzdHVmZgoKMjAwNi0wMS0wNCAwODozMiAgYW5keQoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBDT01QOiBEbyBub3QgYnVpbGQgdGVzdHMgaWYgYnVpbGQKCSAgdGVzdGluZyBpcyBvZmYKCjIwMDYtMDEtMDQgMDE6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0wMyAxNzoxMSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiB1cGRhdGUgcmV2aXNpb24gbnVtYmVycwoKMjAwNi0wMS0wMyAxNzowNyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaC5pbjogRU5IOiBtb3ZlIHRvIHBhdGNoIDIKCjIwMDYtMDEtMDMgMTY6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBhZGQgbmV3CgkgIGNtYWtlZGVmaW5lMDEgZmVhdHVyZSBmcm9tIGJ1ZyByZXBvcnQgMjYwMwoKMjAwNi0wMS0wMyAxNDowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IENZR1dJTi1nNzcuY21ha2UsIENZR1dJTi5jbWFrZTogRU5IOiBhZGQgZXhlCgkgIHN0dWZmIGZvciBjeWd3aW4KCjIwMDYtMDEtMDMgMDg6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmdzIG9uIEhQLVVYCgoyMDA2LTAxLTAzIDA4OjM5ICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvYXBwZW5kLmMsIFV0aWxpdGllcy9jbXRhci9leHRyYWN0LmMsCgkgIFV0aWxpdGllcy9jbXRhci9saWJ0YXIuYywgU291cmNlL0NQYWNrL2NtQ1BhY2tMb2cuY3h4LAoJICBTb3VyY2UvQ1BhY2svY3BhY2suY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZ3MKCjIwMDYtMDEtMDMgMDE6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNi0wMS0wMiAxNzoyOCAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwgY21DUGFja05TSVNHZW5lcmF0b3IuaCwKCSAgY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwKCSAgY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LCBjbUNQYWNrU1RHWkdlbmVyYXRvci5oLAoJICBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgY21DUGFja1RHWkdlbmVyYXRvci5oLCBjcGFjay5jeHg6IEVOSDoKCSAgU3RhcnQgd29ya2luZyBvbiBDUGFjayBpbnB1dCBmaWxlIGFuZCBjbGVhbnVwcwoKMjAwNi0wMS0wMiAxNzoyMiAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0xvZy5oLCBjbUNQYWNrTG9nLmN4eDogQ09NUDogRml4IGNvbXBpbGUKCSAgZXJyb3JzCgoyMDA2LTAxLTAyIDE2OjE0ICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1BhY2svY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBDUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5oLCBDUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIENQYWNrL2NtQ1BhY2tMb2cuY3h4LAoJICBDUGFjay9jbUNQYWNrTG9nLmgsIENQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmN4eCwgQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NwYWNrLmN4eDogRU5IOiBNb3JlIGltcHJvdmVtZW50cyBhbmQgYWRkIGxvZ2dpbmcKCjIwMDYtMDEtMDIgMTU6MDEgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwgV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6CgkgIEJVRzogZm9yY2UgRVhFQ1VBQkxFIGFuZCBMSUJSQVJZIG91dHB1dCBwYXRocyBzbyBiYWQgY2FjaGUKCSAgZW50cmllcyBkbyBub3QgZmFpbCB0ZXN0cwoKMjAwNi0wMS0wMiAxNDozMyAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogQlVHOiBGbHVzaCB0aGUgRVhFQ1VUQUJMRQoJICBhbmQgTElCUkFSWSBvdXRwdXQgcGF0aCB0byBpbnRlcm5hbAoKMjAwNi0wMS0wMiAxMzozNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nNzcuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy5jbWFrZSwgU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBmaXggZm9yCgkgIGJ1ZyAyMzIyLCB1c2UgQ01BS0VfRVhFQ1VUQUJMRV9TVUZGSVggdmFyaWFibGUgZm9yIGV4ZSBzdWZmaXgKCjIwMDYtMDEtMDIgMTM6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCBidWlsZCBwcm9ibGVtCgkgIG9uIGdjYwoKMjAwNi0wMS0wMiAxMjozNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBCVUc6IGZpeCBmb3IgYnVnIDI1MzMsIG1ha2UKCSAgZm9vL2Zvby5vIG5vdyB3b3JrcyBhbmQgLm8gZmlsZXMgYXJlIGluIHRoZSBoZWxwCgoyMDA2LTAxLTAyIDExOjM5ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZwoKMjAwNi0wMS0wMiAxMToyMSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvUmVsZWFzZS5jbWFrZTogRU5IOiByZW1vdmUgTVMgZGxsJ3MgZnJvbQoJICBpbnN0YWxsIG9uIGN5Z3dpbgoKMjAwNi0wMS0wMiAxMTowNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbU1ha2VmaWxlLmN4eDogRU5IOiBjaGFuZ2UKCSAgZnJhbWV3b3JrIG9yZGVyCgoyMDA2LTAxLTAyIDEwOjM3ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIGNtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrVEdaR2VuZXJhdG9yLmg6IENPTVA6IEZpeCBidWlsZCBwcm9ibGVtcwoKMjAwNi0wMS0wMiAxMDozNiAgYW5keQoKCSogU291cmNlL2NtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHg6IEJVRzogRml4IHRoZSBjb21wcmVzc2lvbiB3aXRoCgkgIGN1c3RvbSBleHRlbnNpb24KCjIwMDYtMDEtMDIgMDc6NTMgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgY21DUGFja1RHWkdlbmVyYXRvci5oOiBFTkg6IFVzZSBsaWJ0YXIKCjIwMDYtMDEtMDIgMDc6NTIgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6CgkgIEFkZCBhIHdheSB0byBvdmVyd3JpdGUgY29tcHJlc3Npb24gZXh0ZW5zaW9uCgoyMDA2LTAxLTAyIDAxOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDYtMDEtMDEgMjM6MzEgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6CgkgIE1lcmdlIGZyb20gY3BhY2sgYnJhbmNoCgoyMDA2LTAxLTAxIDIzOjI4ICBhbmR5CgoJKiBNb2R1bGVzLzogQ1BhY2suRGVzY3JpcHRpb24ucGxpc3QuaW4sIENQYWNrLkluZm8ucGxpc3QuaW4sCgkgIE5TSVMudGVtcGxhdGUuaW46IEVOSDogTWVyZ2UgZnJvbSBDUGFjayBicmFuY2gKCjIwMDYtMDEtMDEgMjM6MjEgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay86IGNtQ1BhY2tDb25maWd1cmUuaC5pbiwgY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBjbUNQYWNrR2VuZXJhdG9ycy5oLCBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja05TSVNHZW5lcmF0b3IuaCwgY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuaCwgY21DUGFja1NUR1pHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrU1RHWkdlbmVyYXRvci5oLCBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1RHWkdlbmVyYXRvci5oLCBjcGFjay5jeHg6IEVOSDogTWVyZ2UgZnJvbSB0aGUgY3BhY2sKCSAgYnJhbmNoCgoyMDA2LTAxLTAxIDAxOjA1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMzEgMTM6MTAgIGtpbmcKCgkqIFRlc3RzL1RhclRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogU2ltcGxpZmllZCBsbiBjb21tYW5kIHRvIHVzZQoJICByZWxhdGl2ZSBwYXRoIGluIHN5bWxpbmsuCgoyMDA1LTEyLTMxIDEyOjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBXaGVuIG1vcmUgdGhhbiBvbmUgY29tbWFuZCBpcwoJICBnaXZlbiBhbmQgb25lIG9mIHRoZW0gZmFpbHMgdG8gc3RhcnQgYW5kIHRoZSByZXN0IGFyZSBraWxsZWQsIGRvCgkgIG5vdCBmb3JnZXQgdG8gcmVhcCB0aGUga2lsbGVkIGNoaWxkcmVuLgoKMjAwNS0xMi0zMSAxMDozMyAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyLzogQ01ha2VMaXN0cy50eHQsIGNvbmZpZy5oLmluLCBpbnRlcm5hbC5oOiBDT01QOgoJICBUcnkgdG8gZml4IG1ham9yL21pbm9yIHByb2JsZW0gb24gYWl4CgoyMDA1LTEyLTMxIDA5OjQwICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvOiBDTWFrZUxpc3RzLnR4dCwgY29uZmlnLmguaW4sIGludGVybmFsLmg6IENPTVA6CgkgIEF0dGVtcHQgdG8gZml4IHByb2JsZW1zIHdpdGggbWFqb3IgYW5kIG1pbm9yCgoyMDA1LTEyLTMxIDAxOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMzAgMjE6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmN4eCwgY21GaW5kRmlsZUNvbW1hbmQuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5oOiBFTkg6IG1vdmUgZnJhbWV3b3JrCgkgIHN0dWZmIGZyb20gRmluZEZpbGUgdG8gRmluZFBhdGgKCjIwMDUtMTItMzAgMjE6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZml4IHNvIHZlcmJvc2UgaXMKCSAgcHV0IGluIHRoZSBjb3JyZWN0IHBsYWNlCgoyMDA1LTEyLTMwIDE3OjUxICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvY29tcGF0L3NucHJpbnRmLmM6IENPTVA6IEZpeCBzeXN0ZW1zIHRoYXQgZG8gbm90CgkgIGhhdmUgYm90aCB2c25wcmludGYgYW5kIHNucHJpbnRmLgoKMjAwNS0xMi0zMCAxNzoyNyAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyLzogQ01ha2VMaXN0cy50eHQsIGNvbmZpZy5oLmluLCBjb21wYXQvY29tcGF0LmgsCgkgIGNvbXBhdC9zbnByaW50Zi5jOiBDT01QOiBGaXggc3VwcG9ydCBmb3IgdnNucHJpbnRmCgoyMDA1LTEyLTMwIDE2OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IEZpeCB3YXJuaW5nIG9uIHN1bgoKMjAwNS0xMi0zMCAxNjowNSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2V4dHJhY3QuYzogQ09NUDogQW5vdGhlciBib3JsYW5kIGJ1ZwoKMjAwNS0xMi0zMCAxNTo0NiAgYW5keQoKCSogVGVzdHMvVGFyVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGQgdGVzdGluZyBvZiBzeW1saW5rcyB0b28KCjIwMDUtMTItMzAgMTU6NDYgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci9leHRyYWN0LmM6IEJVRzogSGFuZGxlIG1rZGlyaGllciBwcm9wZXJseSBzaW5jZQoJICBpdCBtYXkgbW9kaWZ5IHRoZSBzdHJpbmcKCjIwMDUtMTItMzAgMTU6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQ09NUDogUmVtb3ZlIHN1biB3YXJuaW5nCgoyMDA1LTEyLTMwIDE1OjI3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1RhclRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1RhclRlc3QvVGVzdFRhckV4ZWMuY3h4OiBFTkg6IEFkZCBhIHRhciB0ZXN0CgoyMDA1LTEyLTMwIDE1OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBhIHdheSB0byBjb21wYXJlIHR3byBmaWxlcwoKMjAwNS0xMi0zMCAxNDo1MSAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBVdGlsaXRpZXMvY210YXIvaGFuZGxlLmMsCgkgIFV0aWxpdGllcy9jbXRhci9saWJ0YXIuYywgVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5oOiBFTkg6IENsZWFudXAKCSAgdGhlIGZpbGUgaGFuZGxlciBzdHVmIHNvIHRoYXQgbm93IGFueSBmaWxlIGRlc2NyaXB0b3IgdHlwZSBjYW4gYmUKCSAgdXNlZAoKMjAwNS0xMi0zMCAxNDo1MCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9jbWN1cmwvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbWV4cGF0L0NNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvY210YXIvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbXpsaWIvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQ09NUDoKCSAgQ2xlYW51cCByZWd1bGFyIGV4cHJlc3Npb25zCgoyMDA1LTEyLTMwIDE0OjMxICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IFJlbW92ZSB1bnVzZWQgdmFyaWFibGUKCjIwMDUtMTItMzAgMTQ6MjMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci9jb21wYXQvOiBiYXNlbmFtZS5jLCBkaXJuYW1lLmM6IENPTVA6IFJlbW92ZQoJICB3YXJuaW5ncyBieSBleHBvc2luZyBzb21lIHZhcmlhYmxlcwoKMjAwNS0xMi0zMCAxNDoyMiAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBVdGlsaXRpZXMvY210YXIvaGFuZGxlLmMsCgkgIFV0aWxpdGllcy9jbXRhci9saWJ0YXIuYywgVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5oOiBDT01QOiBGaXgKCSAgc3VwcG9ydCBmb3IgZ3ppcCBvbiBub24tMzIgYml0IHBsYXRmb3JtcwoKMjAwNS0xMi0zMCAxMzoyMiAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL3V0aWwuYzogQ09NUDogUmVtb3ZlIHdhcm5pbmcgYWJvdXQgYXJndW1lbnQgbm90CgkgIGJlaW5nIGludAoKMjAwNS0xMi0zMCAxMzoyMiAgYW5keQoKCSogU291cmNlLzogY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDoKCSAgUmVtb3ZlIHNoYWRvdyB2YXJpYWJsZSB3YXJuaW5nCgoyMDA1LTEyLTMwIDEyOjU4ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IFVzZSBtYW5nbGUgbmFtZXMKCjIwMDUtMTItMzAgMTI6NTggIGFuZHkKCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmN4eCwgY21UYXJnZXQuY3h4OiBDT01QOiBSZW1vdmUKCSAgd2FybmluZ3MKCjIwMDUtMTItMzAgMTA6MzUgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci86IENNYWtlTGlzdHMudHh0LCBhcHBlbmQuYywgY29uZmlnLmguaW4sCgkgIGVuY29kZS5jLCBpbnRlcm5hbC5oLCBvdXRwdXQuYywgdXRpbC5jLCB3cmFwcGVyLmM6IEJVRzogU2V2ZXJhbAoJICBCb3JsYW5kIGZpeGVzCgoyMDA1LTEyLTMwIDAxOjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMjkgMTI6MTkgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtYWtlLmN4eDogRU5IOiBNYWtlCgkgIHRoZSBzeW50YXggbW9yZSBsaW5lIHRhcgoKMjAwNS0xMi0yOSAxMjoxOCAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2FwcGVuZC5jOiBDT01QOiBNb3JlIGN5Z3dpbiBmaXhlcwoKMjAwNS0xMi0yOSAxMTo0MiAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2FwcGVuZC5jOiBCVUc6IEZpeCBvbiBjeWd3aW4uLi4gYWdhaW4/CgoyMDA1LTEyLTI5IDExOjE1ICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvb3V0cHV0LmM6IENPTVA6IFRyeSB0byByZW1vdmUgd2FybmluZ3MgYW5kIGFkZAoJICBzdXBwb3J0IGZvciBjeWd3aW4KCjIwMDUtMTItMjkgMTA6NTIgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogTWFrZSBhZGRpdGlvbmFsIGZpbGUgbmFtZXMgb3B0aW9uYWwKCjIwMDUtMTItMjkgMTA6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtYWtlLmN4eDogRU5IOiBBZGQKCSAgdW50YXJpbmcgc3VwcG9ydAoKMjAwNS0xMi0yOSAxMDo0MSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2V4dHJhY3QuYzogQlVHOiBGaXggZXh0cmFjdC4gTG9va3MgbGlrZSBkaXJuYW1lCgkgIGFjdHVhbGx5IGNoYW5nZXMgdGhlIHN0cmluZywgc28gdGVtcG9yYXJ5IHN0cmluZyBzaG91bGQgYmUgdXNlZAoKMjAwNS0xMi0yOSAwOToxMSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyLzogb3V0cHV0LmMsIGNvbXBhdC9jb21wYXQuaDogQ09NUDogUmVtb3ZlIGMrKwoJICBzdHlsZSBjb21tZW50cwoKMjAwNS0xMi0yOSAwMTowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTI4IDIwOjA0ICBhbmR5CgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBCVUc6IE5vdyByZWFsbHkKCSAgZml4IHRoZSB0ZXN0CgoyMDA1LTEyLTI4IDE5OjMxICBhbmR5CgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBDT01QOiBGaXggdGVzdAoKMjAwNS0xMi0yOCAxNzowMiAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogRml4CgkgIGNvbXBsZXggdGVzdCBhbmQgZml4IGJvb3RzdHJhcAoKMjAwNS0xMi0yOCAxNjo1MyAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBBZGQgbWlzc2luZyBpbmNsdWRlCgoyMDA1LTEyLTI4IDE2OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogUmV0dXJuIHByb3BlciB2YWx1ZXMKCjIwMDUtMTItMjggMTY6NDMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci86IGV4dHJhY3QuYywgbGlidGFyLmM6IENPTVA6IFJlbW92ZSBtb3JlIHdhcm5pbmdzCgoyMDA1LTEyLTI4IDE2OjMxICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBjb21tYW5kIHRvIGNyZWF0ZSB0YXIKCjIwMDUtMTItMjggMTY6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkIG1ldGhvZCB0bwoJICBjcmVhdGUgdGFyCgoyMDA1LTEyLTI4IDE2OjMwICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IExpbmsgdGFyIGxpYnJhcnkgdG8gY21ha2UKCjIwMDUtMTItMjggMTY6MjkgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0OiBDT01QOiBGaXggcGF0aCB0byBpbmNsdWRlIGZpbGVzCgoyMDA1LTEyLTI4IDE1OjMxICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvOiBDTWFrZUxpc3RzLnR4dCwgY29uZmlnLmguaW4sIGhhbmRsZS5jLAoJICBjb21wYXQvY29tcGF0Lmg6IENPTVA6IFJlbW92ZSBtb3JlIHdhcm5pbmdzIGFuZCByZW5hbWUgbGlicmFyeSB0bwoJICBjbXRhcgoKMjAwNS0xMi0yOCAxNTowMyAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2FwcGVuZC5jOiBDT01QOiBSZW1vdmUgd2FybmluZwoKMjAwNS0xMi0yOCAxNDo1OCAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyLzogQ01ha2VMaXN0cy50eHQsIGFwcGVuZC5jLCBkZWNvZGUuYywgZXh0cmFjdC5jLAoJICBmaWxlc3lzdGVtLmMsIGZpbGVzeXN0ZW0uaCwgaGFuZGxlLmMsIGludGVybmFsLmgsIGxpYnRhci5jLAoJICB1dGlsLmMsIHdyYXBwZXIuYywgY29tcGF0L2Jhc2VuYW1lLmMsIGNvbXBhdC9jb21wYXQuaCwKCSAgY29tcGF0L2Rpcm5hbWUuYzogQ09NUDogU2V2ZXJhbCBib3JsYW5kIGZpeGVzCgoyMDA1LTEyLTI4IDE0OjUwICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvY29tcGF0L3NucHJpbnRmLmM6IENPTVA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwNS0xMi0yOCAxMzozNiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogRmlyc3QgY3V0IGF0IGVuYWJsaW5nIHRhcgoKMjAwNS0xMi0yOCAxMzozNSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2FwcGVuZC5jOiBDT01QOiBPbmx5IGRvIE9fQklOQVJZIG9uIHdpbmRvd3MKCjIwMDUtMTItMjggMTM6MzMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci86IGFwcGVuZC5jLCBsaWJ0YXIuYzogQ09NUDogRml4IHdpbmRvd3MKCjIwMDUtMTItMjggMTM6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0yOCAxMjozNCAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyL2xpYnRhci5jOiBFTkg6IEZpeCBidWlsZGluZyBvbiBjeWd3aW4KCjIwMDUtMTItMjggMTI6MjQgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci86IENNYWtlTGlzdHMudHh0LCBjb25maWcuaC5pbiwgZXh0cmFjdC5jLAoJICBsaWJ0YXIuYzogQ09NUDogRml4IGJ1aWxkIG9uIHN1biBieSBhZGRpbmcgbWlzc2luZyBpbmNsdWRlCgoyMDA1LTEyLTI4IDExOjAwICBhbmR5CgoJKiBVdGlsaXRpZXMvY210YXIvOiBDTWFrZUxpc3RzLnR4dCwgZGVjb2RlLmMsIGZpbGVzeXN0ZW0uYywKCSAgd3JhcHBlci5jLCBjb21wYXQvYmFzZW5hbWUuYywgY29tcGF0L2Rpcm5hbWUuYywgY29tcGF0L2ZubWF0Y2guYywKCSAgY29tcGF0L3NucHJpbnRmLmM6IEVOSDogV2luZG93cyBmaXhlcwoKMjAwNS0xMi0yOCAxMDoyOCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogTWVyZ2UgY2hhbmdlIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwNS0xMi0yOCAxMDoxOSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogSW5pdGlhbCBzZXR1cCBvZiBsaWJ0YXIKCjIwMDUtMTItMjggMTA6MTggIGFuZHkKCgkqIFV0aWxpdGllcy9jbXRhci86IENNYWtlTGlzdHMudHh0LCBDT1BZUklHSFQsIGFwcGVuZC5jLCBibG9jay5jLAoJICBjb25maWcuaC5pbiwgZGVjb2RlLmMsIGVuY29kZS5jLCBleHRyYWN0LmMsIGZpbGVzeXN0ZW0uYywKCSAgZmlsZXN5c3RlbS5oLCBoYW5kbGUuYywgaW50ZXJuYWwuaCwgbGlidGFyLmMsIGxpYnRhci5oLCBvdXRwdXQuYywKCSAgdGFyLmgsIHV0aWwuYywgd3JhcHBlci5jLCBjb21wYXQvUkVBRE1FLCBjb21wYXQvYmFzZW5hbWUuYywKCSAgY29tcGF0L2NvbXBhdC5oLCBjb21wYXQvZGlybmFtZS5jLCBjb21wYXQvZm5tYXRjaC5jLAoJICBjb21wYXQvZ2V0aG9zdGJ5bmFtZV9yLmMsIGNvbXBhdC9nZXRob3N0bmFtZS5jLAoJICBjb21wYXQvZ2V0c2VydmJ5bmFtZV9yLmMsIGNvbXBhdC9nbG9iLmMsIGNvbXBhdC9pbmV0X2F0b24uYywKCSAgY29tcGF0L3NucHJpbnRmLmMsIGNvbXBhdC9zdHJkdXAuYywgY29tcGF0L3N0cmxjYXQuYywKCSAgY29tcGF0L3N0cmxjcHkuYywgY29tcGF0L3N0cm1vZGUuYywgY29tcGF0L3N0cnJzdHIuYywKCSAgY29tcGF0L3N0cnNlcC5jLCBsaXN0aGFzaC9oYXNoLmMuaW4sIGxpc3RoYXNoL2xpc3QuYy5pbiwKCSAgbGlzdGhhc2gvbGlzdGhhc2guaC5pbjogRU5IOiBJbml0aWFsIGltcG9ydAoKMjAwNS0xMi0yOCAxMDowOSAgYW5keQoKCSogVXRpbGl0aWVzL2NtdGFyLzogQ01ha2VMaXN0cy50eHQsIENPUFlSSUdIVCwgYXBwZW5kLmMsIGJsb2NrLmMsCgkgIGNvbmZpZy5oLmluLCBkZWNvZGUuYywgZW5jb2RlLmMsIGV4dHJhY3QuYywgZmlsZXN5c3RlbS5jLAoJICBmaWxlc3lzdGVtLmgsIGhhbmRsZS5jLCBpbnRlcm5hbC5oLCBsaWJ0YXIuYywgbGlidGFyLmgsIG91dHB1dC5jLAoJICB0YXIuaCwgdXRpbC5jLCB3cmFwcGVyLmMsIGNvbXBhdC9SRUFETUUsIGNvbXBhdC9iYXNlbmFtZS5jLAoJICBjb21wYXQvY29tcGF0LmgsIGNvbXBhdC9kaXJuYW1lLmMsIGNvbXBhdC9mbm1hdGNoLmMsCgkgIGNvbXBhdC9nZXRob3N0YnluYW1lX3IuYywgY29tcGF0L2dldGhvc3RuYW1lLmMsCgkgIGNvbXBhdC9nZXRzZXJ2YnluYW1lX3IuYywgY29tcGF0L2dsb2IuYywgY29tcGF0L2luZXRfYXRvbi5jLAoJICBjb21wYXQvc25wcmludGYuYywgY29tcGF0L3N0cmR1cC5jLCBjb21wYXQvc3RybGNhdC5jLAoJICBjb21wYXQvc3RybGNweS5jLCBjb21wYXQvc3RybW9kZS5jLCBjb21wYXQvc3RycnN0ci5jLAoJICBjb21wYXQvc3Ryc2VwLmMsIGxpc3RoYXNoL2hhc2guYy5pbiwgbGlzdGhhc2gvbGlzdC5jLmluLAoJICBsaXN0aGFzaC9saXN0aGFzaC5oLmluOiBFTkg6IEluaXRpYWwgaW1wb3J0CgoyMDA1LTEyLTI4IDEwOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBmaWxlIGNvbXBhcmUKCjIwMDUtMTItMjcgMTU6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmN4eCwgY21GaW5kRmlsZUNvbW1hbmQuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IG1ha2Ugc3VyZSAtRiBpcyBub3QKCSAgZHVwbGljYXRlZAoKMjAwNS0xMi0yNyAxNTowOCAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0NvbmZpZ3VyZS5oLmluLCBjbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIGNtQ1BhY2tHZW5lcmF0b3JzLmgsIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuaCwgY21DUGFja05TSVNHZW5lcmF0b3IuY3h4LAoJICBjbUNQYWNrTlNJU0dlbmVyYXRvci5oLCBjbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5oLCBjbUNQYWNrU1RHWkdlbmVyYXRvci5oLAoJICBjbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwgY21DUGFja1RHWkdlbmVyYXRvci5oOiBFTkg6IFJlbW92ZQoJICByZWZlcmVuY2VzIHRvIG1fTWFrZWZpbGUuIEl0IGlzIG5vdyBwcml2YXRlLiBGaXggc2V2ZXJhbCBidWlsZAoJICBwcm9ibGVtcy4gQ2hhbmdlIGdlbmVyYXRvciBjcmVhdGlvbi4gLi4uCgoyMDA1LTEyLTI3IDE0OjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZEZpbGVDb21tYW5kLmgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQKCSAgZnJhbWV3b3JrIHN1cHBvcnQgdG8gRklORF9GSUxFCgoyMDA1LTEyLTI3IDE0OjMyICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svY3BhY2suY3h4LCBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW1wcm92ZQoJICBoZWxwIGFyZ3VtZW50cyBhbmQgYWRkIGdlbmVyYXRpb24gb2YgZG9jIGZpbGVzCgoyMDA1LTEyLTI3IDEzOjEwICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogRml4IGNvbW1hbmQgbGluZSBhcmd1bWVudCBwYXJzaW5nCgoyMDA1LTEyLTI3IDEzOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5nCgoyMDA1LTEyLTI2IDEzOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LCBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGFkZCBiZXR0ZXIgc3VwcG9ydCBmb3IgZnJhbWV3b3JrCgkgIGxpbmtpbmcKCjIwMDUtMTItMjYgMDE6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0yNSAwMTowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTI0IDAxOjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMjMgMDE6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0yMiAxNjo0MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZU1TWVNGaW5kTWFrZS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZU1pbkdXRmluZE1ha2UuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTVNZU01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE1pbkdXTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxNaW5HV01ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgU291cmNlL2NtYWtlLmN4eDogRU5IOgoJICBmaXggYm9ybGFuZCBtYWtlIGNsZWFuIHRhcmdldHMgYmVmb3JlIGJ1aWxkLCBhZGQgbmV3IGdlbmVyYXRvcnMKCSAgZm9yIG1zeXMgYW5kIG1pbmd3CgoyMDA1LTEyLTIyIDE2OjAyICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0NNYWtlLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ29tbW9uTGFuZ3VhZ2VJbmNsdWRlLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRXhwb3J0QnVpbGRTZXR0aW5ncy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZpbmRGcmFtZXdvcmtzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlSW1wb3J0QnVpbGRTZXR0aW5ncy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVByaW50U3lzdGVtSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VSQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Rm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM2QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM3QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLCBNb2R1bGVzL0NUZXN0LmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrU3ltYm9sRXhpc3RzLmNtYWtlLCBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZSwgTW9kdWxlcy9EYXJ0LmNtYWtlLAoJICBNb2R1bGVzL0RvY3VtZW50YXRpb24uY21ha2UsIE1vZHVsZXMvRmluZEFWSUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvRmluZENBQkxFLmNtYWtlLCBNb2R1bGVzL0ZpbmRDdXJzZXMuY21ha2UsCgkgIE1vZHVsZXMvRmluZEN5Z3dpbi5jbWFrZSwgTW9kdWxlcy9GaW5kRENNVEsuY21ha2UsCgkgIE1vZHVsZXMvRmluZERhcnQuY21ha2UsIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2UsCgkgIE1vZHVsZXMvRmluZEZMVEsuY21ha2UsIE1vZHVsZXMvRmluZEdDQ1hNTC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kR0xVLmNtYWtlLCBNb2R1bGVzL0ZpbmRHTFVULmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRHVEsuY21ha2UsIE1vZHVsZXMvRmluZEdudXBsb3QuY21ha2UsCgkgIE1vZHVsZXMvRmluZEhUTUxIZWxwLmNtYWtlLCBNb2R1bGVzL0ZpbmRJVEsuY21ha2UsCgkgIE1vZHVsZXMvRmluZEltYWdlTWFnaWNrLmNtYWtlLCBNb2R1bGVzL0ZpbmRKTkkuY21ha2UsCgkgIE1vZHVsZXMvRmluZEpQRUcuY21ha2UsIE1vZHVsZXMvRmluZEphdmEuY21ha2UsCgkgIE1vZHVsZXMvRmluZEtERS5jbWFrZSwgTW9kdWxlcy9GaW5kTEFURVguY21ha2UsCgkgIE1vZHVsZXMvRmluZE1GQy5jbWFrZSwgTW9kdWxlcy9GaW5kTVBFRy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kTVBFRzIuY21ha2UsIE1vZHVsZXMvRmluZE1QSS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kTWF0bGFiLmNtYWtlLCBNb2R1bGVzL0ZpbmRNb3RpZi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kT3BlbkFMLmNtYWtlLCBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBIUDQuY21ha2UsIE1vZHVsZXMvRmluZFBORy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUGVybC5jbWFrZSwgTW9kdWxlcy9GaW5kUGVybExpYnMuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBoeXNGUy5jbWFrZSwgTW9kdWxlcy9GaW5kUGlrZS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUHl0aG9uSW50ZXJwLmNtYWtlLCBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwgTW9kdWxlcy9GaW5kUXQuY21ha2UuYmFrLAoJICBNb2R1bGVzL0ZpbmRRdDMuY21ha2UsIE1vZHVsZXMvRmluZFF0NC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUnVieS5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTREwuY21ha2UuYmFrLCBNb2R1bGVzL0ZpbmRTRExfaW1hZ2UuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF9pbWFnZS5jbWFrZS5iYWssIE1vZHVsZXMvRmluZFNETF9taXhlci5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMX21peGVyLmNtYWtlLmJhaywgTW9kdWxlcy9GaW5kU0RMX25ldC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMX25ldC5jbWFrZS5iYWssIE1vZHVsZXMvRmluZFNETF9zb3VuZC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMX3R0Zi5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX3R0Zi5jbWFrZS5iYWssCgkgIE1vZHVsZXMvRmluZFNXSUcuY21ha2UsIE1vZHVsZXMvRmluZFNlbGZQYWNrZXJzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRUQ0wuY21ha2UsIE1vZHVsZXMvRmluZFRJRkYuY21ha2UsCgkgIE1vZHVsZXMvRmluZFRjbHNoLmNtYWtlLCBNb2R1bGVzL0ZpbmRUaHJlYWRzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRVbml4Q29tbWFuZHMuY21ha2UsIE1vZHVsZXMvRmluZFZUSy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kV2dldC5jbWFrZSwgTW9kdWxlcy9GaW5kV2lzaC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kWDExLmNtYWtlLCBNb2R1bGVzL0ZpbmRaTElCLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2UsIE1vZHVsZXMvVGVzdEJpZ0VuZGlhbi5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Q1hYQWNjZXB0c0ZsYWcuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvckFOU0lGb3JTY29wZS5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSVN0cmVhbUhlYWRlcnMuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwgTW9kdWxlcy9Vc2VRdDQuY21ha2UsCgkgIE1vZHVsZXMvVXNlU1dJRy5jbWFrZSwgTW9kdWxlcy9Vc2VWVEs0MC5jbWFrZSwKCSAgTW9kdWxlcy9Vc2VWVEtCdWlsZFNldHRpbmdzNDAuY21ha2UsCgkgIE1vZHVsZXMvVXNlVlRLQ29uZmlnNDAuY21ha2UsIE1vZHVsZXMvVXNlX3d4V2luZG93cy5jbWFrZSwKCSAgTW9kdWxlcy9Vc2V3eFdpZGdldHMuY21ha2UsIE1vZHVsZXMvcmVhZG1lLnR4dCwKCSAgU291cmNlL2NtQnVpbGRDb21tYW5kLmN4eCwgU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5oLAoJICBTb3VyY2UvY21DVGVzdC5jeHgsIFNvdXJjZS9jbURlcGVuZHMuY3h4LCBTb3VyY2UvY21EZXBlbmRzLmgsCgkgIFNvdXJjZS9jbURlcGVuZHNDLmN4eCwgU291cmNlL2NtRGVwZW5kc0MuaCwKCSAgU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4LCBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5oLAoJICBTb3VyY2UvY21EZXBlbmRzSmF2YS5jeHgsIFNvdXJjZS9jbURlcGVuZHNKYXZhLmgsCgkgIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4LCBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmgsCgkgIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21HZXRDTWFrZVByb3BlcnR5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5oLAoJICBTb3VyY2UvY21ha2VtYWluLmN4eCwgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4LAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlQ29tbWFuZExpbmVJbmZvLmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcCwgU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWVyZ2UgY2hhbmdlcyBmcm9tCgkgIG1haW4gdHJlZSB0byBicmFuY2gKCjIwMDUtMTItMjIgMTU6NDEgIGFuZHkKCgkqIE1vZHVsZXMvQ1BhY2suRGVzY3JpcHRpb24ucGxpc3QuaW4sIE1vZHVsZXMvQ1BhY2suSW5mby5wbGlzdC5pbiwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvQ1BhY2svY21DUGFja1BhY2thZ2VNYWtlckdlbmVyYXRvci5oOiBFTkg6IE9rLCBub3cgaXQKCSAgd29ya3MKCjIwMDUtMTItMjIgMTU6MzQgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHg6IEVOSDogQWRkIG1hbmRhdG9yeQoJICBwcm9qZWN0IGRlc2NyaXB0aW9uIGZpbGUgb3Igc3RyaW5nCgoyMDA1LTEyLTIyIDE1OjM0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZCBYTUwKCSAgZW5jb2R1aW5nIG1ldGhvZAoKMjAwNS0xMi0yMiAwMToxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTIxIDE1OjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oOgoJICBFTkg6IG1ha2Ugc3VyZSBkZXBlbmQgaGVscGVyIGFjdHVhbGx5IHdvcmtzLCBpZiBhIGRlcGVuZCBsaWJyYXJ5CgkgIGdldHMgdXBkYXRlZCwgdGhlbiB0aGUgdGFyZ2V0IG5lZWRzIHRvIGJlIHJlbW92ZWQsIGFuZCB0aGUKCSAgQ09ORklHVVJBVElPTiBkaXJlY3RvcnkgbmVlZHMgdG8gYmUgdXNlZAoKMjAwNS0xMi0yMSAwODo0NiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBMaWJyYXJpZXMgYW5kCgkgIGV4ZWN1dGFibGVzIHRoYXQgYXJlIGJ1aWx0IHdpdGggdmVyc2lvbiBudW1iZXJzIGFuZCBzeW1saW5rcwoJICBzaG91bGQgYmUgYnVpbHQgYnkgYSBydWxlIHVzaW5nIHRoZSByZWFsIGZpbGUgbmFtZS4gIFRoZSBzeW1saW5rCgkgIGZpbGUgbmFtZXMgc2hvdWxkIGJlIHJ1bGVzIHRoYXQganVzdCBkZXBlbmQgb24gdGhlIG1haW4gcnVsZS4KCSAgVGhpcyB3YXkgaWYgYSB2ZXJzaW9uIG51bWJlciBjaGFuZ2VzIGEgdGFyZ2V0IHdpbGwgcmUtbGluayB3aXRoCgkgIHRoZSBuZXcgbmFtZSBhbmQgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZC4KCjIwMDUtMTItMjEgMDE6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0yMCAxNDowNyAgYW5keQoKCSogVXRpbGl0aWVzL2NtY3VybC9tcHJpbnRmLmM6IENPTVA6IEZpeCBidWlsZCBvbiB1Y2xpYmMKCjIwMDUtMTItMjAgMTM6NTMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiByZW1vdmUgZHVwbGljYXRlcwoKMjAwNS0xMi0yMCAxMzoyMiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IEltcHJvdmVkIHJvYnVzdG5lc3Mgb2Ygc2hhcmluZwoJICBwYXJlbnQgcGlwZXMgd2l0aCBjaGlsZHJlbi4gIFRoaXMgZW5zdXJlcyB0aGF0IHRoZSBwYXJlbnQgcGlwZQoJICBoYW5kbGVzIGFyZSBpbmhlcml0ZWQgYnkgdGhlIGNoaWxkcmVuLiAgSWYgYSBwYXJlbnQgcGlwZSBoYW5kbGUKCSAgaXMgaW52YWxpZCBhIGhhbmRsZSB0byBhbiBlbXB0eSBwaXBlIGlzIGdpdmVuIHRvIHRoZSBjaGlsZCB0bwoJICBtYWtlIHN1cmUgYWxsIHBpcGVzIGFyZSBkZWZpbmVkIGZvciB0aGUgY2hpbGRyZW4uCgoyMDA1LTEyLTIwIDA5OjIwICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogU3RhcnQgd29ya2luZyBvbiBQYWNrYWdlTWFrZXIKCjIwMDUtMTItMjAgMDE6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0xOSAxODoxNyAgYW5keQoKCSogU291cmNlL0NQYWNrLzogY21DUGFja0dlbmVyYXRvcnMuY3h4LAoJICBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsCgkgIGNtQ1BhY2tQYWNrYWdlTWFrZXJHZW5lcmF0b3IuY3h4LCBjbUNQYWNrUGFja2FnZU1ha2VyR2VuZXJhdG9yLmg6CgkgIEVOSDogU3RhcnQgd29ya2luZyBvbiBPc3gKCjIwMDUtMTItMTkgMTE6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHg6IEJVRzogZml4IGZvciBidWcgMjU2MCwKCSAgWGNvZGUgZG9lcyBub3QgY3JlYXRlIGNvcnJlY3QgYnVuZGxlcwoKMjAwNS0xMi0xOSAwMTowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTE4IDEwOjAwICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgY21DUGFja05TSVNHZW5lcmF0b3IuaCwgY3BhY2suY3h4OiBFTkg6ICdGaW5pc2g7IE5TSQoKMjAwNS0xMi0xOCAwOTo1OSAgYW5keQoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOiBFTkg6IFVuaWZ5IHdpdGggS2VuJ3MKCjIwMDUtMTItMTggMDE6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0xNyAwMToxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTE2IDE2OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRU5IOiBtYWtlIHN1cmUgdW5jb21tZW50ZWQgbW9kdWxlcwoJICBhcmUgbm90IGRvY3VtZW50ZWQKCjIwMDUtMTItMTYgMDk6MDMgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogUmV0dXJuIGlmIHRoZSBmaWxlIGlzIGluIGFueQoJICBkaXJlY3Rvcnkgbm90IGp1c3QgaW4gZmlyc3Qgb25lCgoyMDA1LTEyLTE2IDAxOjEyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMTUgMTY6MjggIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IEZpeCB0ZXN0CgoyMDA1LTEyLTE1IDE0OjE3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzLzogRmluZE1GQy5jbWFrZSwgRmluZE1QRUcuY21ha2UsIEZpbmRNUEVHMi5jbWFrZSwKCSAgRmluZE1QSS5jbWFrZSwgRmluZE1vdGlmLmNtYWtlLCBGaW5kT3BlbkdMLmNtYWtlLCBGaW5kUEhQNC5jbWFrZSwKCSAgRmluZFBlcmwuY21ha2UsIEZpbmRQZXJsTGlicy5jbWFrZSwgRmluZFBoeXNGUy5jbWFrZSwKCSAgRmluZFBpa2UuY21ha2UsIEZpbmRQeXRob25JbnRlcnAuY21ha2UsIEZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBGaW5kUXQuY21ha2UsIEZpbmRRdDQuY21ha2UsIEZpbmRSdWJ5LmNtYWtlLCBGaW5kU0RMLmNtYWtlLAoJICBGaW5kU0RMX2ltYWdlLmNtYWtlLCBGaW5kU0RMX21peGVyLmNtYWtlLCBGaW5kU0RMX25ldC5jbWFrZSwKCSAgRmluZFNETF9zb3VuZC5jbWFrZSwgRmluZFNETF90dGYuY21ha2UsIEZpbmRUQ0wuY21ha2UsCgkgIEZpbmRUSUZGLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsIEZpbmRUaHJlYWRzLmNtYWtlLAoJICBGaW5kVlRLLmNtYWtlLCBGaW5kV2dldC5jbWFrZSwgRmluZFdpc2guY21ha2UsIEZpbmRYMTEuY21ha2UsCgkgIEZpbmR3eFdpbmRvd3MuY21ha2UsIFRlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZSwKCSAgVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwgVXNlU1dJRy5jbWFrZSwgVXNlX3d4V2luZG93cy5jbWFrZToKCSAgRU5IOiBjbGVhbnVwcwoKMjAwNS0xMi0xNSAxMjowMSAgYW5keQoKCSogU291cmNlL2NtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eDogRU5IOiBSZXBvcnQgYW4gZXJyb3IgaWYgdGhlCgkgIHRhcmdldCBkb2VzIG5vdCBleGlzdHMKCjIwMDUtMTItMTUgMTA6NDEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgQ01ha2VFeHBvcnRCdWlsZFNldHRpbmdzLmNtYWtlLCBDTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2UsCgkgIENoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsIENoZWNrSW5jbHVkZUZpbGVzLmNtYWtlLAoJICBDaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsIENoZWNrU3ltYm9sRXhpc3RzLmNtYWtlLAoJICBDaGVja1R5cGVTaXplLmNtYWtlLCBDaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlLAoJICBGaW5kQVZJRmlsZS5jbWFrZSwgRmluZENBQkxFLmNtYWtlLCBGaW5kRkxUSy5jbWFrZSwKCSAgRmluZEdMVVQuY21ha2UsIEZpbmRHVEsuY21ha2UsIEZpbmRIVE1MSGVscC5jbWFrZSwgRmluZElUSy5jbWFrZSwKCSAgRmluZEltYWdlTWFnaWNrLmNtYWtlLCBGaW5kSk5JLmNtYWtlLCBGaW5kSlBFRy5jbWFrZSwKCSAgRmluZEphdmEuY21ha2UsIEZpbmRMQVRFWC5jbWFrZSwgRmluZE1hdGxhYi5jbWFrZTogRU5IOiBzb21lCgkgIHN0eWxlIGZpeGVzIGZvciB0aGUgYm9vawoKMjAwNS0xMi0xNSAwOToxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQzLmNtYWtlLCBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRU5IOiBmaXgKCSAgbW9kdWxlIGRvY3VtZW5hdGlvbiB0byBoYW5kbGUgYmFkIGRvY3MgYW5kIGZpeCBxdDMgZG9jcwoKMjAwNS0xMi0xNSAwMTo0NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTE0IDEzOjUxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlLmNtYWtlLCBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ29tbW9uTGFuZ3VhZ2VJbmNsdWRlLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRXhwb3J0QnVpbGRTZXR0aW5ncy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZpbmRGcmFtZXdvcmtzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlSW1wb3J0QnVpbGRTZXR0aW5ncy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVByaW50U3lzdGVtSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VSQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Rm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM2QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM3QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLCBNb2R1bGVzL0NUZXN0LmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrU3ltYm9sRXhpc3RzLmNtYWtlLCBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZSwgTW9kdWxlcy9EYXJ0LmNtYWtlLAoJICBNb2R1bGVzL0RvY3VtZW50YXRpb24uY21ha2UsIE1vZHVsZXMvRmluZEFWSUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvRmluZENBQkxFLmNtYWtlLCBNb2R1bGVzL0ZpbmRDdXJzZXMuY21ha2UsCgkgIE1vZHVsZXMvRmluZEN5Z3dpbi5jbWFrZSwgTW9kdWxlcy9GaW5kRENNVEsuY21ha2UsCgkgIE1vZHVsZXMvRmluZERhcnQuY21ha2UsIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2UsCgkgIE1vZHVsZXMvRmluZEZMVEsuY21ha2UsIE1vZHVsZXMvRmluZEdDQ1hNTC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kR0xVLmNtYWtlLCBNb2R1bGVzL0ZpbmRHTFVULmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRHVEsuY21ha2UsIE1vZHVsZXMvRmluZEdudXBsb3QuY21ha2UsCgkgIE1vZHVsZXMvRmluZEhUTUxIZWxwLmNtYWtlLCBNb2R1bGVzL0ZpbmRJVEsuY21ha2UsCgkgIE1vZHVsZXMvRmluZEltYWdlTWFnaWNrLmNtYWtlLCBNb2R1bGVzL0ZpbmRKTkkuY21ha2UsCgkgIE1vZHVsZXMvRmluZEpQRUcuY21ha2UsIE1vZHVsZXMvRmluZEphdmEuY21ha2UsCgkgIE1vZHVsZXMvRmluZEtERS5jbWFrZSwgTW9kdWxlcy9GaW5kTEFURVguY21ha2UsCgkgIE1vZHVsZXMvRmluZE1GQy5jbWFrZSwgTW9kdWxlcy9GaW5kTVBFRy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kTVBFRzIuY21ha2UsIE1vZHVsZXMvRmluZE1QSS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kTWF0bGFiLmNtYWtlLCBNb2R1bGVzL0ZpbmRNb3RpZi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kT3BlbkFMLmNtYWtlLCBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBIUDQuY21ha2UsIE1vZHVsZXMvRmluZFBORy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUGVybC5jbWFrZSwgTW9kdWxlcy9GaW5kUGVybExpYnMuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBoeXNGUy5jbWFrZSwgTW9kdWxlcy9GaW5kUGlrZS5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUHl0aG9uSW50ZXJwLmNtYWtlLCBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwgTW9kdWxlcy9GaW5kUXQzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsIE1vZHVsZXMvRmluZFJ1YnkuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETC5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX2ltYWdlLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTRExfbWl4ZXIuY21ha2UsIE1vZHVsZXMvRmluZFNETF9uZXQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF9zb3VuZC5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX3R0Zi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU1dJRy5jbWFrZSwgTW9kdWxlcy9GaW5kU2VsZlBhY2tlcnMuY21ha2UsCgkgIE1vZHVsZXMvRmluZFRDTC5jbWFrZSwgTW9kdWxlcy9GaW5kVElGRi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kVGNsc2guY21ha2UsIE1vZHVsZXMvRmluZFRocmVhZHMuY21ha2UsCgkgIE1vZHVsZXMvRmluZFVuaXhDb21tYW5kcy5jbWFrZSwgTW9kdWxlcy9GaW5kVlRLLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRXZ2V0LmNtYWtlLCBNb2R1bGVzL0ZpbmRXaXNoLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRYMTEuY21ha2UsIE1vZHVsZXMvRmluZFpMSUIuY21ha2UsCgkgIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZSwgTW9kdWxlcy9UZXN0QmlnRW5kaWFuLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RDWFhBY2NlcHRzRmxhZy5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlLCBNb2R1bGVzL1VzZVF0NC5jbWFrZSwKCSAgTW9kdWxlcy9Vc2VTV0lHLmNtYWtlLCBNb2R1bGVzL1VzZVZUSzQwLmNtYWtlLAoJICBNb2R1bGVzL1VzZVZUS0J1aWxkU2V0dGluZ3M0MC5jbWFrZSwKCSAgTW9kdWxlcy9Vc2VWVEtDb25maWc0MC5jbWFrZSwgTW9kdWxlcy9Vc2Vfd3hXaW5kb3dzLmNtYWtlLAoJICBNb2R1bGVzL1VzZXd4V2lkZ2V0cy5jbWFrZSwgTW9kdWxlcy9yZWFkbWUudHh0LAoJICBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eCwgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5oLAoJICBTb3VyY2UvY21ha2VtYWluLmN4eDogRU5IOiBhZGQgZG9jdW1lbnRhdGlvbiBzdXBwb3J0IGZvciBtb2R1bGVzCgoyMDA1LTEyLTE0IDExOjAwICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IEVOSDogUmVuYW1lZAoJICBaZXJvVGFyZ2V0Q2hlY2sgdGFyZ2V0IHRvIFpFUk9fQ0hFQ0sgZm9yIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIKCSAgQ01ha2UtZ2VuZXJhdGVkIHRhcmdldHMgKEFMTF9CVUlMRCwgUlVOX1RFU1RTLCBJTlNUQUxMKS4KCjIwMDUtMTItMTQgMTA6NTggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IEZpeCBjb252ZXJzaW9uCgkgIHdhcm5pbmcuCgoyMDA1LTEyLTE0IDEwOjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6IFJlbW92ZWQgY21NYWtlZmlsZQoJICBhcmd1bWVudHMgZnJvbSBjbVRhcmdldCBtZXRob2RzIGJlY2F1c2UgY21UYXJnZXQgaGFzIHRoZSBpdmFyCgkgIG1fTWFrZWZpbGUgbm93LiAgUmUtaW1wbGVtZW50ZWQKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjM6OkFwcGVuZEFueURlcGVuZCB0byB1c2UgdGhlIG5ldwoJICBnbG9iYWwga25vd2xlZGdlIGFuZCBhdm9pZCB0aGUgbmVlZCB0byBsb29rIGF0IHRoZSBjYWNoZSBmb3IKCSAgaW5mb3JtYXRpb24gYWJvdXQgb3RoZXIgdGFyZ2V0cy4gIFRoaXMgc2hvdWxkIGZpeCBwcm9ibGVtcyB3aXRoCgkgIGN1c3RvbSBjb21tYW5kcyBhbmQgZXhlY3V0YWJsZXMgd2l0aCB0aGUgT1VUUFVUX05BTUUgc2V0LiAgQWxzbwoJICB0aGUgPHRhcmdldD5fTElCUkFSWV9UWVBFIGNhY2hlIHZhcmlhYmxlIGlzIG5vIGxvbmdlciBuZWVkZWQgYXQKCSAgYWxsIGFuZCBoYXMgYmVlbiByZW1vdmVkLgoKMjAwNS0xMi0xMyAxODoyMyAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5jeHg6IENPTVA6IEZpeGVkIHVudXNlZAoJICB2YXJpYWJsZSB3YXJuaW5nLgoKMjAwNS0xMi0xMyAxNToxNiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDogQlVHOiBGaXggdGhlIHByb2JsZW0gd2l0aAoJICB1cGRhdGUueG1sLnRtcCBub3QgYmVpbmcgY29wcGllZAoKMjAwNS0xMi0xMyAxNToxNCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiByZW1vdmVkCgkgIFRBUkdFVF9ESVJfUFJFRklYIHN1cHBvcnQgYW5kIHNvbWVvdGhlciBmaXgKCjIwMDUtMTItMTMgMTU6MTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlZAoJICBUQVJHRVRfRElSX1BSRUZJWCBzdXBwb3J0CgoyMDA1LTEyLTEzIDE1OjEyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmg6IFNUWUxFOiBmaXggbWlzc2luZyBkb2NzCgoyMDA1LTEyLTEzIDE0OjIxICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZCBzdXBwb3J0IGZvcgoJICBwYXJhbGxlbCBidWlsZHMgaW4gVlMgOC4gIFRoZXJlIGlzIG5vdyBhIHNwZWNpYWwgdGFyZ2V0IG9uIHdoaWNoCgkgIGFsbCBvdGhlciB0YXJnZXRzIGRlcGVuZCB0aGF0IHJlLXJ1bnMgQ01ha2UgaWYgYW55IGxpc3RmaWxlcyBoYXZlCgkgIGJlZW4gY2hhbmdlZC4gIFRoaXMgYWRkcmVzc2VzIGJ1ZyMyNTEyLgoKMjAwNS0xMi0xMyAxNDoxNCAga2luZwoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlQ29tbWFuZExpbmVJbmZvLmNwcCwgQ01ha2VTZXR1cC5jcHA6IEJVRzoKCSAgRml4IHN0b3JhZ2UvdXNlIG9mIGFyZ2MvYXJndiBpbiBDTWFrZVNldHVwIGRpYWxvZy4KCjIwMDUtMTItMTMgMTQ6MDcgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlL0NNYWtlLm5zaS5pbjogRU5IOiByZW1vdmVkIHRoZSBhZGQgdG8gcGF0aAoKMjAwNS0xMi0xMyAwNDoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTEyIDExOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBmb3IgYnVnIDI1ODQsCgkgIGVtcHR5IHNvdXJjZSBncm91cHMgd2l0aCBjaGlsZHJlbiBza2lwcGVkCgoyMDA1LTEyLTEyIDA0OjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMTEgMDQ6MjAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0xMSAwMDoxMiAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogZm9yIGEgaW4gcmFuZ2UoMTAwKToKCSAgd3JpdGVfb25fYm9hcmQoTm8gc3RkIGluIGt3c3lzLi4uKQoKMjAwNS0xMi0xMCAxMjoxNiAgYW5keQoKCSogTW9kdWxlcy9OU0lTLnRlbXBsYXRlLmluOiBFTkg6IFNvbWUgZml4ZXMgdG8gbWFrZSBpdCB3b3JrCgoyMDA1LTEyLTEwIDEyOjE0ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmgsIGNtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwgY3BhY2suY3h4OgoJICBFTkg6IE1vcmUgd29yayBvbiBOU0lTOgoKMjAwNS0xMi0xMCAxMjoxMSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IEFsbG93IHRoZSBpbnN0YWxsZXIgdG8KCSAgb3ZlcndyaXRlIHRoZSBpbnN0YWxsIHByZWZpeAoKMjAwNS0xMi0xMCAxMjoxMCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBDb21tYW5kTGluZUFyZ3VtZW50cy5oeHguaW46IEVOSDogQWRkIGEgbWV0aG9kIHRvIHJlbW92ZQoJICByZW1haW5pbmcgYXJndW1lbnRzCgoyMDA1LTEyLTEwIDEyOjA5ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvR2xvYi5oeHguaW46IENPTVA6IEZpeCB0aGUgZXhwb3J0aW5nIHNvIHRoYXQgaXQgY2FuCgkgIGFjdHVhbGx5IGJlIHVzZWQKCjIwMDUtMTItMTAgMTI6MDggIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IEFkZAoJICBhbm90aGVyIHNpZ25hdHVyZSB0byBGaW5kUHJvZ3JhbSB0aGF0IG1hdGNoZXMgbW9yZSB0byB0aGUgb25lCgkgIGZyb20gQ01ha2UKCjIwMDUtMTItMTAgMDQ6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0wOSAyMzowNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21EZXBlbmRzQy5jeHgsIGNtRGVwZW5kc0MuaDogRU5IOiB0cnkgdG8gZml4IGhwIGJ1aWxkCgkgIHByb2JsZW0KCjIwMDUtMTItMDkgMTY6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbURlcGVuZHNDLmg6IEVOSDogZml4IGNvbXBpbGUgZXJyb3IKCjIwMDUtMTItMDkgMTQ6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmg6IEVOSDogY2xlYW4gdXAgc3R5bGUgYSBiaXQKCjIwMDUtMTItMDkgMTM6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogUEVSRjogYXBwbHkgcGF0Y2ggZm9yIGJ1ZyAyNTc1CgkgIHNwZWVkcyB1cCBkZXBlbmQgc2Nhbm5pbmcKCjIwMDUtMTItMDkgMDQ6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0wOCAwNDoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTA3IDExOjM5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUJ1aWxkTmFtZUNvbW1hbmQuaCwgY21GaW5kUGFja2FnZUNvbW1hbmQuaCwKCSAgY21HZXRDTWFrZVByb3BlcnR5Q29tbWFuZC5oLCBjbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5oLAoJICBjbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmgsIGNtU2l0ZU5hbWVDb21tYW5kLmg6IEVOSDogTWFrZQoJICBjb21tYW5kcyBzY3JpcHRhYmxlCgoyMDA1LTEyLTA2IDEwOjU1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMDUgMDg6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMi0wNCAwNTowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEyLTAzIDA2OjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMDIgMDk6MTggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogdXBkYXRlIHJldmlzaW9uIG51bWJlcnMKCjIwMDUtMTItMDIgMDk6MTYgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19JUklYNjQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfZGlzcGF0Y2guc2g6IEVOSDogZml4IGNoYW5nZSBsb2cgYW5kCgkgIGNoYW5nZSBzZ2kgcmVsZWFzZSBzY3JpcHRzCgoyMDA1LTEyLTAyIDA1OjMwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTItMDEgMjE6NTIgIGFuZHkKCgkqIE1vZHVsZXMvTlNJUy50ZW1wbGF0ZS5pbiwgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL0NQYWNrL2NtQ1BhY2tOU0lTR2VuZXJhdG9yLmg6IEVOSDogV29yayBvbiBuc2lzCgoyMDA1LTEyLTAxIDEyOjI3ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IHVwZGF0ZSByZXZpc2lvbiBudW1iZXJzCgoyMDA1LTEyLTAxIDExOjQxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUJ1aWxkQ29tbWFuZC5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuaCwgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBDVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eDogRU5IOiBBZGQKCSAgYSB3YXkgZm9yIHRoZSBnZW5lcmF0ZWQgY29tbWFuZCB0byBpbmNsdWRlIGV4dHJhIGZsYWdzLiBUaGlzIGlzCgkgIHVzZWZ1bCBmb3IgQ1Rlc3QgKG9yIHRyeSBjb21waWxlKSB0byBhZGQgLWoyCgoyMDA1LTEyLTAxIDA1OjMyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMzAgMTM6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGQgdmFyaWFibGUgZm9yIGRlYnVnZ2luZy4gVGhpcwoJICB2YXJpYWJsZSBDTUFLRV9QQVJFTlRfTElTVF9GSUxFIGhvbGRzIHRoZSBwYXJlbnQgQ01ha2UgbGlzdCBmaWxlCgkgIG9mIHRoZSBjdXJyZW50IGNtYWtlIGxpc3QgZmlsZS4KCjIwMDUtMTEtMzAgMDU6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0yOSAwNToyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTI4IDE1OjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1R1dG9yaWFsL1N0ZXAxL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMS9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMS90dXRvcmlhbC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMi9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMi90dXRvcmlhbC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAyL01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAyL01hdGhGdW5jdGlvbnMvTWF0aEZ1bmN0aW9ucy5oLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMi9NYXRoRnVuY3Rpb25zL215c3FydC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMy9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMy90dXRvcmlhbC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAzL01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXAzL01hdGhGdW5jdGlvbnMvTWF0aEZ1bmN0aW9ucy5oLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwMy9NYXRoRnVuY3Rpb25zL215c3FydC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNC9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNC90dXRvcmlhbC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA0L01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA0L01hdGhGdW5jdGlvbnMvTWF0aEZ1bmN0aW9ucy5oLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNC9NYXRoRnVuY3Rpb25zL215c3FydC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA1L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNS9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBUZXN0cy9UdXRvcmlhbC9TdGVwNS90dXRvcmlhbC5jeHgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA1L01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA1L01hdGhGdW5jdGlvbnMvTWFrZVRhYmxlLmN4eCwKCSAgVGVzdHMvVHV0b3JpYWwvU3RlcDUvTWF0aEZ1bmN0aW9ucy9NYXRoRnVuY3Rpb25zLmgsCgkgIFRlc3RzL1R1dG9yaWFsL1N0ZXA1L01hdGhGdW5jdGlvbnMvbXlzcXJ0LmN4eDogRU5IOiBtb3ZlIHR1dG9yaWFsCgkgIHRvIGJyYW5jaAoKMjAwNS0xMS0yOCAxNToxNSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmw6IEVOSDogVmVyc2lvbiAyLjIuMwoKMjAwNS0xMS0yOCAxNDoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9WVEtDb21wYXRpYmlsaXR5LmNtYWtlOiBFTkg6IGZpeCBwcm9ibGVtIHdpdGggYnVpbGRpbmcKCSAgdnRrIDQuNC4yCgoyMDA1LTExLTI4IDE0OjA1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1ZUS0NvbXBhdGliaWxpdHkuY21ha2U6IEVOSDogZml4IGZvciB2dGsgNC40LjIgYW5kIGNtYWtlCgkgIDIuMgoKMjAwNS0xMS0yOCAwNToxNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTI3IDA1OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMjYgMDU6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0yNSAwNToxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTI0IDA1OjIxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMjMgMTI6MzMgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZSwgTW9kdWxlcy9GaW5kT3BlbkFMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRQaHlzRlMuY21ha2UsIE1vZHVsZXMvRmluZFF0My5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMLmNtYWtlLCBNb2R1bGVzL0ZpbmRTREwuY21ha2UuYmFrLAoJICBNb2R1bGVzL0ZpbmRTRExfaW1hZ2UuY21ha2UsIE1vZHVsZXMvRmluZFNETF9pbWFnZS5jbWFrZS5iYWssCgkgIE1vZHVsZXMvRmluZFNETF9taXhlci5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX21peGVyLmNtYWtlLmJhaywKCSAgTW9kdWxlcy9GaW5kU0RMX25ldC5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX25ldC5jbWFrZS5iYWssCgkgIE1vZHVsZXMvRmluZFNETF9zb3VuZC5jbWFrZSwgTW9kdWxlcy9GaW5kU0RMX3R0Zi5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMX3R0Zi5jbWFrZS5iYWssIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWljbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWlmb3J0LmNtYWtlLAoJICBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5oLCBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUNNYWtlTWluaW11bVJlcXVpcmVkLmgsIFNvdXJjZS9jbUNQbHVnaW5BUEkuaCwKCSAgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBTb3VyY2UvY21FbHNlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaCwgU291cmNlL2NtRW5kRm9yRWFjaENvbW1hbmQuaCwKCSAgU291cmNlL2NtRW5kSWZDb21tYW5kLmgsIFNvdXJjZS9jbUVuZFdoaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldFRlc3RQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBTb3VyY2UvY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwKCSAgU291cmNlL2NtTG9hZENhY2hlQ29tbWFuZC5oLCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oLCBTb3VyY2UvY21NZXNzYWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuaCwKCSAgU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmgsIFNvdXJjZS9jbVNldENvbW1hbmQuaCwKCSAgU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRUZXN0c1Byb3BlcnRpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VHcm91cENvbW1hbmQuaCwgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmgsIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuaCwKCSAgU291cmNlL2NtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuaCwgU291cmNlL2NtV2hpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtWENvZGUyMU9iamVjdC5jeHgsCgkgIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmN4eCwgU291cmNlL2NtWENvZGVPYmplY3QuaCwKCSAgU291cmNlL2N0ZXN0LmN4eCwgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwgU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmMsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYywgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVGVzdHMvRXh0ZXJuYWxPQkovQ01ha2VMaXN0cy50eHQsIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9DTWFrZS5uc2kuaW46IEVOSDogbWVyZ2UgZml4ZXMgZnJvbSBtYWluIHRyZWUsCgkgIHNlZSBDaGFuZ2VMb2cubWFudWFsCgoyMDA1LTExLTIzIDEwOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IGV4ZWN1dGFibGUgcHJlZml4IGFuZCBwb3N0IGZpeAoJICB2YXJpYWJsZXMgc2hvdWxkIG5vdCBiZSB0aGUgc2FtZSBhcyB0aGUgZXhlY3V0YWJsZSBleHRlbnNpb24KCjIwMDUtMTEtMjMgMDU6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0yMiAxNzowMyAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eDogQlVHOiBEbyBub3QgZXhwYW5kIGVzY2FwZQoJICBzZXF1ZW5jZXMgd2hlbiByZS1leHBhbmRpbmcgdmFyaWFibGVzIGluIGluY2x1ZGUgZGlyZWN0b3JpZXMsCgkgIGxpbmsgZGlyZWN0b3JpZXMsIGFuZCBsaW5rIGxpYnJhcmllcy4KCjIwMDUtMTEtMjIgMTY6NTkgIGtpbmcKCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogQlVHOiBEbyBub3QgYWNjZXB0IGEgZGlyZWN0b3J5CgkgIG5hbWUgYXMgYSBsaWJyYXJ5LgoKMjAwNS0xMS0yMiAxNjowOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaDoKCSAgQlVHOiBmaXggZm9yIGJ1ZyAyMzU3LCBkbyBub3QgYWxsb3cgdGFyZ2V0cyB0byBsaW5rIHRvCgkgIGRpcmVjdG9yaWVzCgoyMDA1LTExLTIyIDE1OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaDogQlVHOiBmaXggc3BlbGxpbmcgZXJyb3IKCjIwMDUtMTEtMjIgMTM6MzcgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzhHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogVHdlYWsgVlM4IGdlbmVyYXRvciB0bwoJICBrZWVwIFZTOCBoYXBweS4gIFRoZSAudmNwcm9qIGZpbGVzIG5lZWQgdGhlaXIgb3duIEdVSURzIGluIGEKCSAgUHJvamVjdEdVSUQgYXR0cmlidXRlLiAgVGhlIHRvcCBsZXZlbCAuc2xuIGZpbGUgbmVlZHMgYSBzcGVjaWFsCgkgIGNvbW1lbnQgYXQgdGhlIHRvcCB0byBhbGxvdyBpdCB0byBiZSBvcGVuZWQgd2l0aCBkb3VibGUtY2xpY2sgaW4KCSAgZXhwbG9yZXIuCgoyMDA1LTExLTIyIDEzOjM2ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogQ09NUDogRGVmaW5lIF9DUlRfU0VDVVJFX05PX0RFUFJFQ0FURSB0byBidWlsZAoJICBDTWFrZSBpdHNlbGYgb24gVlM4LglUaGlzIGRpc2FibGVzIDEwMDBzIG9mIGRlcHJlY2F0aW9uIHdhcm5pbmdzCgkgIGFib3V0IHN0YW5kYXJkIGNvZGUuCgoyMDA1LTExLTIyIDEyOjA0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogZml4IGZvciBidWcgMjQ4OAoKMjAwNS0xMS0yMiAxMTo0NCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IExpbnV4LWljcGMuY21ha2UsIFN1bk9TLmNtYWtlOiBFTkg6IG1vcmUKCSAgY29tcGlsZXIgZmxhZ3MKCjIwMDUtMTEtMjIgMTE6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6IFNUWUxFOiBGaXhlZCBkb2N1bWVudGF0aW9uCgkgIHRvIHN0YXRlIHRhcmdldF9FWFBPUlRTIGRlZmF1bHQgcmlnaHQgYWZ0ZXIgREVGSU5FX1NZTUJPTAoJICBkb2N1bWVudGF0aW9uIGluc3RlYWQgb2YgbWFueSBzZW50ZW5jZXMgbGF0ZXIgaW4gYSByYW5kb20gcGxhY2UuCgoyMDA1LTExLTIyIDExOjMzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2U6IEJVRzogUVRfREVGSU5JVElPTlMgc2hvdWxkIG5vdCBiZSBxdW90ZWQuCgkgIFRoaXMgYWRkcmVzc2VzIGJ1ZyMyNDgxLgoKMjAwNS0xMS0yMiAxMToyOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVRlc3RKYXZhQ29tcGlsZXIuY21ha2U6IEVOSDogc2V0IGphdmEgY29tcGlsZXIgd29ya3MKCjIwMDUtMTEtMjIgMDU6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0yMSAwNToxOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTIwIDA1OjMwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMTkgMDk6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IGFkZCBzb21lIG1vcmUgcHJvcGVydGllcyBmb3IKCSAgdmlzdWFsIHN0dWRpbyBwcm9qZWN0cwoKMjAwNS0xMS0xOSAwODoyOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQ09NUDogZml4IGNvbXBpbGUgZXJyb3IKCjIwMDUtMTEtMTkgMDg6MDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuaDogRU5IOiBmaXggZG9jcwoKMjAwNS0xMS0xOSAwNToyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTE4IDE3OjA3ICBhbmR5CgoJKiBTb3VyY2UvQ1BhY2svOiBjbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIGNtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwgY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuaCwKCSAgY21DUGFja1RHWkdlbmVyYXRvci5jeHgsIGNwYWNrLmN4eDogRU5IOiBVc2UgY21NYWtlZmlsZSBpbnN0ZWFkCgkgIGZvciB0aGUgb3B0aW9ucywgbW9yZSBjbGVhbnVwcyBhbmQgc3RhcnQgd29ya2luZyBvbiBOU0lTCgoyMDA1LTExLTE4IDE3OjA3ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQKCSAgYW5vdGhlciBzaWduYXR1cmUgZm9yIEZpbmRQcm9ncmFtIHRoYXQgdGFrZXMgdGhlIGxpc3Qgb2YgbmFtZXMKCjIwMDUtMTEtMTggMTc6MDYgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGQgTlNJUwoKMjAwNS0xMS0xOCAxNjo1OSAgaG9mZm1hbgoKCSogU291cmNlL2NtWENvZGVPYmplY3QuY3h4OiBFTkg6IG1vcmUgY2hhcnMgbmVlZCBxdW90ZXMKCjIwMDUtMTEtMTggMTU6MDMgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlL0NNYWtlLm5zaS5pbjogQlVHOiBmaXhlIGRwcm9ibGVtIHdpdGggbm90CgkgIHVuaW5zdGFsbGluZyBzdGFydCBtZW51IGVudHJpZXMKCjIwMDUtMTEtMTggMTQ6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6CgkgIEVOSDogZml4ZXMgZm9yIFhjb2RlIDIuMgoKMjAwNS0xMS0xOCAxMDo0MCAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IGFkZCBuZXcgZXJyb3IgcmVnZXgKCjIwMDUtMTEtMTggMTA6MzYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWljbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWlmb3J0LmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkCgkgIGZsYWctdG8tdmNwcm9qLWF0dHJpYnV0ZSBjb252ZXJzaW9uIGNvZGUgdG8gd29yayBhZ2FpbiAoaXQgd2FzCgkgIGJyb2tlbiBieSB0aGUgb3B0aW1pemF0aW9uIGNoYW5nZXMpLglBZGRlZCBjb252ZXJzaW9uIG9mIC9ub2xvZ28KCSAgZmxhZyB0byBTdXBwcmVzc1N0YXJ0dXBCYW5uZXIgYXR0cmlidXRlIGFuZCAvR3kgZmxhZyB0bwoJICBFbmFibGVGdW5jdGlvbkxldmVsTGlua2luZyBhdHRyaWJ1dGUuCgoyMDA1LTExLTE3IDE2OjQ5ICBraW5nCgoJKiBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogQ09NUDogTmVlZCB0YXJnZXQtbGV2ZWwgZGVwZW5kZW5jeQoJICBmcm9tIHdyYXBwZXIgdGFyZ2V0cyBvbiBXcmFwIGV4ZWN1dGFibGUgdGFyZ2V0LgoKMjAwNS0xMS0xNyAxNTo1NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCBYTUwgZXNjYXBlcwoJICBmb3IgY3VzdG9tIGNvbW1hbmRzLglBbHNvIGFkZGVkIGVzY2FwaW5nIG9mIG5ld2xpbmVzIGZvciBWUwoJICAyMDA1LgoKMjAwNS0xMS0xNyAxNTo0NCAga2luZwoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IERvIG5vdCBkZXJlZmVyZW5jZQoJICBhbiBlbmQgaXRlcmF0b3IuCgoyMDA1LTExLTE3IDEzOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eCwgVGVzdHMvRXh0ZXJuYWxPQkovQ01ha2VMaXN0cy50eHQ6IEJVRzoKCSAgRml4ZWQgc3VwcG9ydCBmb3IgZXh0ZXJuYWwgb2JqZWN0IGZpbGVzIGJ1aWx0IGJ5IGN1c3RvbSBjb21tYW5kcy4KCSAgQWxzbyBhZGRlZCBhIHRlc3QgdG8ga2VlcCBpdCB3b3JraW5nLgoKMjAwNS0xMS0xNyAxMTo0NCAgbWFydGluawoKCSogU291cmNlLzogY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oLCBjbVdoaWxlQ29tbWFuZC5oLAoJICBjbVdyaXRlRmlsZUNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE3IDExOjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVRyeUNvbXBpbGVDb21tYW5kLmgsIGNtVHJ5UnVuQ29tbWFuZC5oOiBTVFlMRTogZml4CgkgIGRvY3MKCjIwMDUtMTEtMTcgMTE6MjAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE3IDExOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Tb3VyY2VHcm91cENvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE3IDEwOjQxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBTVFlMRTogZml4IGRvY3MKCjIwMDUtMTEtMTcgMTA6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE3IDEwOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVFUV3JhcFVJQ29tbWFuZC5oLCBjbVNldENvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE3IDEwOjIwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1lc3NhZ2VDb21tYW5kLmgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5oOiBTVFlMRTogZml4CgkgIGRvY3MKCjIwMDUtMTEtMTcgMDk6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEJVRzogY2xlYW4gdXAgc2NvcGluZwoKMjAwNS0xMS0xNyAwOTozMiAgbWFydGluawoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4OiBCVUc6IGZpeCBpbmNyZW1lbnRpbmcgcGFzdCBlbmQKCjIwMDUtMTEtMTcgMDk6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oOiBTVFlMRTogZml4IGRvY3MKCjIwMDUtMTEtMTcgMDU6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0xNiAxNDo0MSAgbWFydGluawoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxNDozNiAgbWFydGluawoKCSogU291cmNlLzogY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwgY21Mb2FkQ2FjaGVDb21tYW5kLmg6IFNUWUxFOgoJICBmaXggZG9jcwoKMjAwNS0xMS0xNiAxNDoyNyAgbWFydGluawoKCSogU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5oOiBTVFlMRTogZml4IGRvY3MKCjIwMDUtMTEtMTYgMTQ6MDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtSWZDb21tYW5kLmgsIGNtSW5jbHVkZUNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE2IDE0OjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HZXRUZXN0UHJvcGVydHlDb21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMzoxMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtWENvZGUyMU9iamVjdC5jeHgsCgkgIGNtWENvZGVPYmplY3QuY3h4LCBjbVhDb2RlT2JqZWN0Lmg6IEVOSDogZml4ZXMgZm9yIHhjb2RlMjEgYW5kCgkgIGJ1aWxkIHN0eWxlcyBhbmQgY29tbWVudHMgaW4gdGhlIGdlbmVyYXRlZCBwcm9qZWN0CgoyMDA1LTExLTE2IDEyOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21HZXRUYXJnZXRQcm9wZXJ0eUNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE2IDEyOjA1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaDogU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE2IDEyOjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZvckVhY2hDb21tYW5kLmgsIGNtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuaDogU1RZTEU6CgkgIGZpeCBkb2NzCgoyMDA1LTExLTE2IDExOjU3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5oOiBTVFlMRTogZml4IGRvY3MKCjIwMDUtMTEtMTYgMTE6MzkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBTVFlMRTogRG9jdW1lbnRlZCByZWZlcmVuY2UgdG8gIm1hbgoJICBzZWxlY3RfdHV0Ii4KCjIwMDUtMTEtMTYgMTE6MzYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQlVHOiBEbyBub3QgY2xvc2UgaGFuZGxlIG9idGFpbmVkCgkgIGZyb20gR2V0TW9kdWxlSGFuZGxlIHdoaWNoIGRvZXMgbm90IGluY3JlYXNlIHRoZSByZWZlcmVuY2UgY291bnQKCSAgb2YgdGhlIG1vZHVsZS4KCjIwMDUtMTEtMTYgMTE6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMDo0MCAgbWFydGluawoKCSogU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMDozNSAgbWFydGluawoKCSogU291cmNlLzogY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBjbUVuZEZvckVhY2hDb21tYW5kLmgsCgkgIGNtRW5kSWZDb21tYW5kLmgsIGNtRW5kV2hpbGVDb21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMDozMSAgbWFydGluawoKCSogU291cmNlLzogY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBjbUVsc2VDb21tYW5kLmgsCgkgIGNtRW5hYmxlTGFuZ3VhZ2VDb21tYW5kLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMDoyNiAgbWFydGluawoKCSogU291cmNlLzogY21Db25maWd1cmVGaWxlQ29tbWFuZC5oOiBTVFlMRTogZml4IGRvY3MKCjIwMDUtMTEtMTYgMTA6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNNYWtlTWluaW11bVJlcXVpcmVkLmg6IFNUWUxFOiBmaXggZG9jcwoKMjAwNS0xMS0xNiAxMDoxNCAgbWFydGluawoKCSogU291cmNlLzogY21BZGRMaWJyYXJ5Q29tbWFuZC5oLCBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuaDoKCSAgU1RZTEU6IGZpeCBkb2NzCgoyMDA1LTExLTE2IDEwOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBTVFlMRTogcmVtb3ZlZCBzb21lIGRvY3MgdGhhdCBkaWQgbm90IG1ha2UKCSAgc2Vuc2UKCjIwMDUtMTEtMTYgMDY6MzAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0xNSAxMzozMCAgbWFydGluawoKCSogU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuaDogU1RZTEU6IHVwZGF0ZWQgY29tbWVudHMKCjIwMDUtMTEtMTUgMDU6MjcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0xNCAxNDoyMSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBDTWFrZVRlc3RDQ29tcGlsZXIuY21ha2U6IEJVRzoKCSAgZml4IFNJWkVPRiBWT0lEUCBwcm9ibGVtCgoyMDA1LTExLTE0IDEyOjI5ICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21Db25maWd1cmUuY21ha2UuaC5pbiwKCSAgQ1BhY2svY21DUGFja0NvbmZpZ3VyZS5oLmluLCBDUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5oOiBFTkg6IE1vcmUgY3Jvc3MgcGxhdGZvcm0gc3R1ZmYKCjIwMDUtMTEtMTQgMDU6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0xMyAwNToyMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTEyIDA1OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMTEgMTQ6MzkgIGFuZHkKCgkqIFNvdXJjZS9DUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHg6IEVOSDogQ2xlYW51cAoKMjAwNS0xMS0xMSAxNDozMiAgYW5keQoKCSogU291cmNlL0NQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmN4eDogRU5IOiBGaXggZm9yIHN1bgoKMjAwNS0xMS0xMSAxNDoyNSAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmN4eCwKCSAgQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrR2VuZXJpY0dlbmVyYXRvci5oLCBDUGFjay9jbUNQYWNrU1RHWkdlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tTVEdaR2VuZXJhdG9yLmgsIENQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuY3h4LAoJICBDUGFjay9jbUNQYWNrVEdaR2VuZXJhdG9yLmg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIHNlbGYgZXh0cmFjdGVkCgkgIHRhcnMKCjIwMDUtMTEtMTEgMDU6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0xMCAxNToxNSAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ29uZmlndXJlLmNtYWtlLmguaW4sCgkgIENQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuaDogQ09NUDogRml4IGJ1aWxkaW5nIG9uIEN5Z3dpbgoKMjAwNS0xMS0xMCAxNToxMyAgbWFydGluawoKCSogVGVzdHMvVHV0b3JpYWwvU3RlcDUvTWF0aEZ1bmN0aW9ucy9DTWFrZUxpc3RzLnR4dDogRU5IOiBzb21lCgkgIGZpeGVzCgoyMDA1LTExLTEwIDE1OjEwICBtYXJ0aW5rCgoJKiBUZXN0cy9UdXRvcmlhbC86IFN0ZXAxL3R1dG9yaWFsLmN4eCwgU3RlcDIvdHV0b3JpYWwuY3h4LAoJICBTdGVwMy90dXRvcmlhbC5jeHgsIFN0ZXA0L3R1dG9yaWFsLmN4eCwgU3RlcDUvdHV0b3JpYWwuY3h4OiBFTkg6CgkgIHNvbWUgZml4ZXMKCjIwMDUtMTEtMTAgMTQ6MzYgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBDUGFjay9jbUNQYWNrR2VuZXJhdG9ycy5jeHgsCgkgIENQYWNrL2NtQ1BhY2tHZW5lcmF0b3JzLmgsIENQYWNrL2NtQ1BhY2tHZW5lcmljR2VuZXJhdG9yLmN4eCwKCSAgQ1BhY2svY21DUGFja0dlbmVyaWNHZW5lcmF0b3IuaCwgQ1BhY2svY21DUGFja1RHWkdlbmVyYXRvci5jeHgsCgkgIENQYWNrL2NtQ1BhY2tUR1pHZW5lcmF0b3IuaCwgQ1BhY2svY3BhY2suY3h4OiBFTkg6IFN0YXJ0IHdvcmtpbmcKCSAgb24gQ1BhY2sKCjIwMDUtMTEtMTAgMTQ6MzMgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBNYWtlIENNQUtFX0lOU1RBTExfUFJFRklYIHRvIGJlCgkgIG9wdGlvbmFsIChvbiBieSBkZWZhdWx0KQoKMjAwNS0xMS0xMCAxNDozMiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5oOiBFTkg6IE1vcmUgdHlwZSBtYWNyb3MKCjIwMDUtMTEtMTAgMTQ6MzIgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9HbG9iLmh4eC5pbjogQ09NUDogRml4IHRoZSBidWlsZGluZyB3aXRoIEdsb2IKCjIwMDUtMTEtMTAgMTQ6MzEgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFTkg6IEFkZCBtZXRob2QgdG8gZGVsZXRlIHRoZQoJICByZW1haW5pbmcgYXJndW1lbnRzCgoyMDA1LTExLTEwIDE0OjI4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogYWRkIGFsbCBsaWJzCgoyMDA1LTExLTEwIDEyOjAyICBtYXJ0aW5rCgoJKiBUZXN0cy9UdXRvcmlhbC86IFN0ZXA1L0NNYWtlTGlzdHMudHh0LCBTdGVwMi9DTWFrZUxpc3RzLnR4dCwKCSAgU3RlcDMvQ01ha2VMaXN0cy50eHQsIFN0ZXA0L0NNYWtlTGlzdHMudHh0LAoJICBTdGVwNS9NYXRoRnVuY3Rpb25zL0NNYWtlTGlzdHMudHh0OiBFTkg6IHNvbWUgZml4ZXMKCjIwMDUtMTEtMTAgMTE6NDggIG1hcnRpbmsKCgkqIFRlc3RzL1R1dG9yaWFsL1N0ZXA1L01hdGhGdW5jdGlvbnMvTWFrZVRhYmxlLmN4eDogU1RZTEU6IGZpeAoJICBzcGVsbGluZwoKMjAwNS0xMS0xMCAxMDo1NSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZGVkIHR1dG9yaWFsIHRlc3RzCgoyMDA1LTExLTEwIDEwOjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogRU5IOiBjaGFuZ2UgdGhlIHBhc3MgcmVnZXhwCgkgIHNvIHRoYXQgaXQgb3ZlcnJpZGVzIHRoZSByZXR1cm4gdmFsdWUKCjIwMDUtMTEtMTAgMTA6NTEgIG1hcnRpbmsKCgkqIFRlc3RzL1R1dG9yaWFsL1N0ZXA1LzogQ01ha2VMaXN0cy50eHQsIFR1dG9yaWFsQ29uZmlnLmguaW4sCgkgIHR1dG9yaWFsLmN4eCwgTWF0aEZ1bmN0aW9ucy9DTWFrZUxpc3RzLnR4dCwKCSAgTWF0aEZ1bmN0aW9ucy9NYWtlVGFibGUuY3h4LCBNYXRoRnVuY3Rpb25zL01hdGhGdW5jdGlvbnMuaCwKCSAgTWF0aEZ1bmN0aW9ucy9teXNxcnQuY3h4OiBFTkg6IHN0ZXAgNQoKMjAwNS0xMS0xMCAxMDo1MCAgbWFydGluawoKCSogVGVzdHMvVHV0b3JpYWwvU3RlcDQvOiBDTWFrZUxpc3RzLnR4dCwgVHV0b3JpYWxDb25maWcuaC5pbiwKCSAgdHV0b3JpYWwuY3h4LCBNYXRoRnVuY3Rpb25zL0NNYWtlTGlzdHMudHh0LAoJICBNYXRoRnVuY3Rpb25zL01hdGhGdW5jdGlvbnMuaCwgTWF0aEZ1bmN0aW9ucy9teXNxcnQuY3h4OiBFTkg6CgkgIHN0ZXAgNAoKMjAwNS0xMS0xMCAxMDo1MCAgbWFydGluawoKCSogVGVzdHMvVHV0b3JpYWwvU3RlcDMvOiBDTWFrZUxpc3RzLnR4dCwgVHV0b3JpYWxDb25maWcuaC5pbiwKCSAgdHV0b3JpYWwuY3h4LCBNYXRoRnVuY3Rpb25zL0NNYWtlTGlzdHMudHh0LAoJICBNYXRoRnVuY3Rpb25zL01hdGhGdW5jdGlvbnMuaCwgTWF0aEZ1bmN0aW9ucy9teXNxcnQuY3h4OiBFTkg6CgkgIHN0ZXAgMwoKMjAwNS0xMS0xMCAwNDo0OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTA5IDE2OjIxICBtYXJ0aW5rCgoJKiBUZXN0cy9UdXRvcmlhbC86IFN0ZXAxL0NNYWtlTGlzdHMudHh0LCBTdGVwMS9UdXRvcmlhbENvbmZpZy5oLmluLAoJICBTdGVwMS90dXRvcmlhbC5jeHgsIFN0ZXAyL0NNYWtlTGlzdHMudHh0LAoJICBTdGVwMi9UdXRvcmlhbENvbmZpZy5oLmluLCBTdGVwMi90dXRvcmlhbC5jeHgsCgkgIFN0ZXAyL01hdGhGdW5jdGlvbnMvQ01ha2VMaXN0cy50eHQsCgkgIFN0ZXAyL01hdGhGdW5jdGlvbnMvTWF0aEZ1bmN0aW9ucy5oLAoJICBTdGVwMi9NYXRoRnVuY3Rpb25zL215c3FydC5jeHg6IEVOSDogY2hlY2tlZWQgaW4gc3RlcCAxIGFuZCAyCgoyMDA1LTExLTA5IDExOjE0ICBhbmR5CgoJKiBTb3VyY2UvY21TZXRUZXN0c1Byb3BlcnRpZXNDb21tYW5kLmg6IFNUWUxFOiBNb3JlIGNvbW1lbnRzCgoyMDA1LTExLTA5IDExOjA3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwga3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2hhbmdlCgkgIGZsYWcgdG8gUEFTU19SRUdVTEFSX0VYUFJFU1NJT04gYW5kIEZBSUxfUkVHVUxBUl9FWFBSRVNTSU9OIGFuZAoJICBhZGQgaGVscCBpbiBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQKCjIwMDUtMTEtMDkgMDc6MjIgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQ09NUDogRml4IGFsbCBkYXNoYm9hcmRzCgoyMDA1LTExLTA5IDA1OjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMDggMTc6NTkgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCB0ZXN0UmVnaXN0cnkuY3h4OiBFTkg6IEFkZCB0ZXN0CgkgIGZvciBvdXRwdXQgcmVndWxhciBleHByZXNzaW9uCgoyMDA1LTExLTA4IDE3OjU5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIG91dHB1dCByZWd1aWxhcgoJICBleHByZXNzaW9uCgoyMDA1LTExLTA4IDA1OjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMDcgMDU6MzQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMS0wNiAwNToyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTA1IDA0OjE4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTEtMDQgMTA6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNQbHVnaW5BUEkuaDogRE9DOiB1cGRhdGVkIGNvbW1lbnQgYWJvdXQgdGhlIGluaGVyaXRlZAoJICBpdmFyCgoyMDA1LTExLTA0IDA5OjI4ICBhbmR5CgoJKiBNb2R1bGVzLzogQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZSwgQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZTogRU5IOgoJICBDbGVhbnVwIGFuZCB1bmlmeQoKMjAwNS0xMS0wMyAwNDoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTExLTAyIDEzOjU5ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NoZWNrTGlicmFyeUV4aXN0cy5jbWFrZTogRE9DOiBiZXR0ZXIgZG9jdW1lbnRhdGlvbgoKMjAwNS0xMS0wMiAxMzo1MSAgbWFydGluawoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsIENoZWNrSW5jbHVkZUZpbGVzLmNtYWtlLAoJICBDaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsIENoZWNrU3ltYm9sRXhpc3RzLmNtYWtlLAoJICBDaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlOiBET0M6IGJldHRlciBkb2N1bWVudGFpdG9uCgoyMDA1LTExLTAyIDA0OjE0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMzEgMTI6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0zMSAxMDo1MiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvcmVsZWFzZV9kaXNwYXRjaC5zaDogRU5IOiBjaGFuZ2UgbmFtZXMgb2YKCSAgbWFjaGluZQoKMjAwNS0xMC0zMSAxMDo0OCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoOiBFTkg6IHVwZGF0ZSByZXZpc2lvbgoJICBudW1iZXJzCgoyMDA1LTEwLTMxIDEwOjAxICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21GaWxlVGltZUNvbXBhcmlzb24uY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBTb3VyY2UvY21ha2UuY3h4OiBFTkg6CgkgIG1lcmdlIGZyb20gbWFpbiB0cmVlCgoyMDA1LTEwLTMwIDA4OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMjggMTc6NDYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kT3BlbkFMLmNtYWtlLCBGaW5kUGh5c0ZTLmNtYWtlLCBGaW5kU0RMLmNtYWtlLAoJICBGaW5kU0RMX2ltYWdlLmNtYWtlLCBGaW5kU0RMX21peGVyLmNtYWtlLCBGaW5kU0RMX25ldC5jbWFrZSwKCSAgRmluZFNETF9zb3VuZC5jbWFrZSwgRmluZFNETF90dGYuY21ha2U6IEVOSDogY2hhbmdlcyBmcm9tIEVyaWMKCSAgV2luZywgYnVnIDIyNDkKCjIwMDUtMTAtMjggMTE6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEJVRzogZml4IHN0YWNrIG92ZXIgd3JpdGUgYnVnCgoyMDA1LTEwLTI4IDExOjUxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IENNYWtlLm5zaS5pbiwgTWFrZVJlbGVhc2UuY21ha2UuaW46IEJVRzogZml4CgkgIHNwYWNlIGluIHBhdGggcHJvYnMKCjIwMDUtMTAtMjggMTE6MzIgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogQ01ha2UubnNpLmluLCBNYWtlUmVsZWFzZS5jbWFrZS5pbjogQlVHOiBmaXgKCSAgcmVsZWFzZSB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aAoKMjAwNS0xMC0yOCAxMTozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eDogQlVHOiBmaXggc3RhY2sgd3JpdGUgZXJyb3IKCjIwMDUtMTAtMjggMTE6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogbWFrZSB0aGUgY2xlYW4KCSAgdGFyZ2V0IHdvcmsKCjIwMDUtMTAtMjcgMTM6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmlsZVRpbWVDb21wYXJpc29uLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6CgkgIEltcHJvdmVkIGZpbGUgbW9kaWZpY2F0aW9uIHRpbWUgY29tcGFyaXNvbiBvbiBXaW5kb3dzIHRvIHVzZQoJICBHZXRGaWxlQXR0cmlidXRlc0V4IGluc3RlYWQgb2YgQ3JlYXRlRmlsZS9HZXRGaWxlVGltZS9DbG9zZUhhbmRsZQoJICB0byBnZXQgZmlsZSB0aW1lcy4gIFRoaXMgcmVzdWx0cyBpbiBhIDMwJSByZWR1Y3Rpb24gaW4gdGltZSB0byBkbwoJICBhIGJ1aWxkIHN5c3RlbSBjaGVjay4KCjIwMDUtMTAtMjYgMDk6MDMgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogdXBkYXRlIHJldmlzaW9uIG51bWJlcnMKCjIwMDUtMTAtMjYgMDU6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0yNSAwNTozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTI0IDE3OjAwICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDA1LTEwLTI0IDE1OjQzICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZSwKCSAgU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5oLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L1N0cmluZ0ZpbGUuY3h4OiBFTkg6IG1vdmUgc3R1ZmYgaW50byB0aGUKCSAgYnJhbmNoIGluIHByZXAgZm9yIDIuMi4yCgoyMDA1LTEwLTI0IDA1OjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMjMgMDU6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0yMiAwNTo1MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTIxIDE1OjI0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGZpeCBmb3IgYmFkCgkgIHBsYWNlbWVudCBvZiBTSUxFTlQgdGFyZ2V0CgoyMDA1LTEwLTIxIDEyOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IHN5bWxpbmsgaXNzdWUKCjIwMDUtMTAtMjEgMTE6MTAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZml4IGJhZCBjaGVja2luCgkgIHRoYXQgaGFkIGRlYnVnZ2luZyBjb2RlIGluIGl0CgoyMDA1LTEwLTIxIDA5OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvdGVzdEZhaWwuYzogRU5IOiB0cnkgdG8gZ2V0IHRoaXMgdGhpbmcgdG8gcGFzcyB3aXRoCgkgIGNtYWtlIDIuMi4xCgoyMDA1LTEwLTIxIDA0OjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMjAgMTY6MzcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZml4IG92ZXIgY2hlY2tpbmcKCSAgb2YgYnVpbGQgc3lzdGVtCgoyMDA1LTEwLTIwIDE2OjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBTVFlMRTogbWlub3IgY2xlYW51cAoKMjAwNS0xMC0yMCAxNTowMyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBmaXggZm9yIGRlZiBmaWxlcwoJICBhbmQgbmV3IGxvY2FsIHRhcmdldCBsaW5rIGxpbmVzCgoyMDA1LTEwLTIwIDE0OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IG1pc3NpbmcKCSAgY2hlY2tfYnVpbGRfc3lzdGVtIGZvciBhbGwgdGFyZ2V0CgoyMDA1LTEwLTIwIDEzOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGJpZyBjbGVhbnVwIGFuZCBmaXggZm9yCgkgIGp1bXAgY29tbWFuZHMKCjIwMDUtMTAtMjAgMTA6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3RyaW5nQ29tbWFuZC5jeHgsIGNtU3RyaW5nQ29tbWFuZC5oOiBCVUc6IGVuZCBpcyBub3QKCSAgcmVhbGx5IGVuZCwgYnV0IHJhdGhlciBsZW5ndGgKCjIwMDUtMTAtMjAgMDQ6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0xOSAxMzoyMyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogZml4IGNvbXBpbGVyCgkgIGVycm9yCgoyMDA1LTEwLTE5IDExOjAwICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IE1vcmUKCSAgb3V0cHV0CgoyMDA1LTEwLTE5IDExOjAwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQlVHOiBJbml0aWFsaXplIHRvIHNvbWV0aGluZwoJICByZXNvbmFibGUKCjIwMDUtMTAtMTkgMTA6NDcgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IEdsb2IuY3h4LCBHbG9iLmh4eC5pbjogQ09NUDogTW9yZSBuYW1lc3BhY2UgZml4ZXMKCSAgdG8gYnVpbGQgb24gSFAKCjIwMDUtMTAtMTkgMTA6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBjZCBpbnRvIGxvY2FsIGRpcmVjdG9yeSB0bwoJICByZWR1Y2UgbGluayBsaW5lIGxlbmd0aAoKMjAwNS0xMC0xOSAwODo0MiAgYW5keQoKCSogU291cmNlL2t3c3lzL0dsb2IuY3h4OiBDT01QOiBGaXggbmFtZXNwYWNlLiBUaGlzIHdheSBrd3N5cyBjYW4gYmUKCSAgYnVpbHQgb3V0c2lkZSBjbWFrZQoKMjAwNS0xMC0xOSAwNDo0MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTE4IDE2OjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5jeHg6IEVOSDogZml4IHRlc3QKCjIwMDUtMTAtMTggMTY6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eDogRU5IOiBhZGQgLnR4eCBmaWxlcyBhbmQKCSAgcHV0IHRoZSBzdGFydCBkaXJlY3RvcnkgaW4gdGhlIHNlYXJjaCBwYXRoCgoyMDA1LTEwLTE4IDE2OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogRU5IOiB1bnVzZWQgaW5jbHVkZQoKMjAwNS0xMC0xOCAxNjowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5oOiBFTkg6IHNwZWxsaW5nCgoyMDA1LTEwLTE4IDE0OjA4ICBhbmR5CgoJKiBib290c3RyYXAsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2t3c3lzL0dsb2IuY3h4LAoJICBTb3VyY2Uva3dzeXMvR2xvYi5oeHguaW46IEVOSDogUHVzaCBnbG9iIHRvIHRoZSBrd3N5cwoKMjAwNS0xMC0xOCAxMzoyNSAgYW5keQoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZTogQ09NUDogT24gbWluZ3csIC1mUElDIGlzIG5vdAoJICBuZWNlc3NhcnkgYW5kIGl0IGFjdHVhbGx5IHByb2R1Y2VzIHdhcm5pbmdzCgoyMDA1LTEwLTE4IDEzOjIyICBhbmR5CgoJKiBUZXN0cy9NYXRoVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBNb3JlIHRlc3RzCgoyMDA1LTEwLTE4IDA5OjQyICBhbmR5CgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDUtMTAtMTggMDQ6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0xNyAyMTozNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaWxlVGltZUNvbXBhcmlzb24uY3h4LCBjbUZpbGVUaW1lQ29tcGFyaXNvbi5oOiBhZGQKCSAgbWlzc2luZyBmaWxlCgoyMDA1LTEwLTE3IDE2OjUzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUV4cHJQYXJzZXIuY3h4LCBjbUV4cHJQYXJzZXIueTogRU5IOiBGaXggcHJlY2VkZW5jZQoKMjAwNS0xMC0xNyAxNjo0MiAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ29tbWFuZHMuY3h4LCBjbUV4cHJMZXhlci5jeHgsCgkgIGNtRXhwckxleGVyLmgsIGNtRXhwckxleGVyLmluLmwsIGNtRXhwclBhcnNlci5jeHgsCgkgIGNtRXhwclBhcnNlci55LCBjbUV4cHJQYXJzZXJIZWxwZXIuY3h4LCBjbUV4cHJQYXJzZXJIZWxwZXIuaCwKCSAgY21FeHByUGFyc2VyVG9rZW5zLmgsIGNtTWF0aENvbW1hbmQuY3h4LCBjbU1hdGhDb21tYW5kLmgsCgkgIGNtU3RyaW5nQ29tbWFuZC5jeHg6IEVOSDogQWRkIHJ1ZGFtZW50YXJ5IG1hdGhlbWF0aWNhbCBleHByZXNzaW9uCgkgIHN1cHBvcnQKCjIwMDUtMTAtMTcgMTY6MzkgIGFuZHkKCgkqIFRlc3RzL01hdGhUZXN0LzogQ01ha2VMaXN0cy50eHQsIE1hdGhUZXN0RXhlYy5jeHgsCgkgIE1hdGhUZXN0VGVzdHMuaC5pbjogRU5IOiBBZGQgbWF0aCB0ZXN0CgoyMDA1LTEwLTE3IDA5OjU4ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaW4ubDoKCSAgQlVHOiBMZXhlciBzaG91bGQgYmUgY2FzZSBpbnNlbnNpdGl2ZSBzbyBmbGV4IHNob3VsZCBiZSBydW4gd2l0aAoJICAtaSBvcHRpb24uICBUaGlzIHBhcnRpYWxseSBhZGRyZXNzZXMgYnVnIzIzNjEuCgoyMDA1LTEwLTE3IDA5OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvU3RyaW5nRmlsZS5jeHg6IEVOSDogQWRkIFN0cmluZyBsZW5ndGggYW5kCgkgIHN1YnN0cmluZwoKMjAwNS0xMC0xNyAwOToxMCAgYW5keQoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvU3RyaW5nRmlsZS5jeHg6IEVOSDogQWRkIHJlZ3VsYXIgc3RyaW5nCgkgIHJlcGxhY2UgKG5vdCByZWdleCksIGFuZCByZWxhdGl2ZSBwYXRoIGNvbW1hbmQuIEFsc28gYWRkIHRlc3RzCgoyMDA1LTEwLTE3IDA5OjA5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQlVHOiBJZiB0ZXN0IHBhc3NlcyBidXQgaXQKCSAgc2hvdWxkIGZhaWwsIHJlcG9ydCBhbiBlcnJvcgoKMjAwNS0xMC0xNyAwODo0OSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvRmluZEpOSS5jbWFrZSwgTW9kdWxlcy9GaW5kSmF2YS5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21EZXBlbmRzLmN4eCwgU291cmNlL2NtRGVwZW5kcy5oLAoJICBTb3VyY2UvY21EZXBlbmRzQy5jeHgsIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmgsIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogbWVyZ2UgZml4ZXMgZnJvbSBtYWluCgkgIHRyZWUKCjIwMDUtMTAtMTcgMDQ6NDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0xNiAwNDo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTE1IDA0OjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMTQgMDU6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0xMyAxMDozMCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IE1vcmUgZXJyb3IgZXhjZXB0aW9ucwoKMjAwNS0xMC0xMyAxMDowNyAgYW5keQoKCSogU291cmNlLzogY21EZXBlbmRzLmN4eCwgY21GaWxlVGltZUNvbXBhcmlzb24uY3h4OiBCVUc6IEZpeCBsb2dpYwoJICB0byByZXR1cm4gdHJ1ZSB3aGVuIHRoZSBmaWxlIHdhcyBhbHJlYWR5IHN0YXR0ZWQuIEFsc28sIHVzZQoJICBuYW5vc2Vjb25kIHBlcmNpc2lvbiBpZiBhdmFpbGFibGUuIFJlbW92ZSBkZWJ1ZwoKMjAwNS0xMC0xMyAwNToxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTEyIDEzOjUyICBhbmR5CgoJKiBTb3VyY2UvOiBjbURlcGVuZHMuY3h4LCBjbURlcGVuZHMuaCwgY21EZXBlbmRzQy5jeHgsCgkgIGNtRGVwZW5kc0MuaCwgY21EZXBlbmRzRm9ydHJhbi5jeHgsIGNtRGVwZW5kc0ZvcnRyYW4uaCwKCSAgY21EZXBlbmRzSmF2YS5jeHgsIGNtRGVwZW5kc0phdmEuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IEltcHJvdmUgcGVyZm9ybWFuY2Ugb2YKCSAgY2hlY2sgYnVpbGQgc3lzdGVtIGJ5IGNyZWF0aW5nIGFub3RoZXIgZmlsZSB0aGF0IGlzIHNpbXBsZXIgdG8KCSAgcGFyc2UgYW5kIHRoZXJlZm9yZSBtdWNoIGZhc3RlciBvdmVyYWxsCgoyMDA1LTEwLTEyIDEzOjUxICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogT3B0aW1pemUgcGVyZm9ybWFuY2UgYnkgY2FjaGluZwoJICBzdGF0IHJlc3VsdHMKCjIwMDUtMTAtMTIgMTM6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVUaW1lQ29tcGFyaXNvbi5jeHg6IENPTVA6IFdpbmRvd3MgZml4ZXMKCjIwMDUtMTAtMTIgMTM6MzYgIGFuZHkKCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21GaWxlVGltZUNvbXBhcmlzb24uY3h4LCBTb3VyY2UvY21GaWxlVGltZUNvbXBhcmlzb24uaDoKCSAgRU5IOiBBZGQgZmlsZSB0aW1lIGNvbXBhcmlzb24gY29kZQoKMjAwNS0xMC0xMiAxMjowOCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuaHh4LmluLCBTeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkIGFuCgkgIGFjY2Vzc29yIGZvciB0aGUgbWF4aW11bSBmaWxlIGxlbmd0aAoKMjAwNS0xMC0xMiAwNToxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTExIDA1OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMTAgMTE6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbU1ha2VmaWxlLmN4eCwgY21UYXJnZXQuaDoKCSAgRU5IOiBzb21lIGZpeGVzIGZvciBiZXR0ZXIgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkKCjIwMDUtMTAtMTAgMDU6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0wOSAwNTowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTA4IDA1OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMDcgMTE6MzYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiBBZGQgc3VwcG9ydCBmb3IKCSAgc2V0dGluZyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZXJyb3JzIGFuZCB3YXJuaW5ncyByZXBvcnRlZC4gVGhpcwoJICBzaG91bGQgZml4IEJ1ZyAjMjMxOCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBlcnJvcnMgdG8gcmVwb3J0IGlzCgkgIGZpeGVkIHRvIDUwCgoyMDA1LTEwLTA3IDA1OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMDYgMTc6MTYgIGJhcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgdGVzdFN5c3RlbVRvb2xzLmJpbiwKCSAgdGVzdFN5c3RlbVRvb2xzLmN4eCwgdGVzdFN5c3RlbVRvb2xzLmguaW46IEVOSDogQ01ha2Uga2lsbHMgbWUKCSAgKHNvIGRvZXMgQ3lnd2luKQoKMjAwNS0xMC0wNiAxNToyOCAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HZXRUYXJnZXRQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0VGVzdFByb3BlcnR5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuYywKCSAgU291cmNlL2NtTGlzdEZpbGVMZXhlci5pbi5sLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21ha2UuY3h4LAoJICBTb3VyY2UvY21ha2UuaCwgU291cmNlL2NtYWtlbWFpbi5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RDb21tYW5kLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9SZWxlYXNlLmNtYWtlOiBFTkg6IG1lcmdlIGJ1ZyBmaXhlcyBmcm9tIG1haW4KCSAgdHJ1bmsKCjIwMDUtMTAtMDYgMTU6MTAgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlL1JlbGVhc2UuY21ha2U6IEVOSDogc29tZSBmaXhlcyBmb3IgbWlzc2luZyB2YXJzCgkgIGFuZCBtaXNzaW5nIGxpYnMKCjIwMDUtMTAtMDYgMDU6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0wNSAxNjowNiAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCB0ZXN0U3lzdGVtVG9vbHMuY3h4LAoJICB0ZXN0U3lzdGVtVG9vbHMuaC5pbjogRU5IOiBhdm9pZCB0aGUgdXNlIG9mIEdFVF9UQVJHRVRfUFJPUEVSVFkKCSAgYnkgdGVzdGluZyB0aGUgQ01ha2UgZXhlY3V0YWJsZSBpbnN0ZWFkIG9mIHRoZSB0ZXN0IGV4ZWN1dGFibGUKCjIwMDUtMTAtMDUgMTM6MTEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBSZXZlcnRpbmcgZnVuZGFtZW50YWwgdHlwZSBpbmZvCgkgIGNoYW5nZSB1bnRpbCBpdCBpcyBmaXhlZCBvbiBtb3JlIHBsYXRmb3Jtcy4gIEl0IHdhcyB0ZXN0ZWQgb24KCSAgTGludXgsIFNHSSwgSFAsIFN1biwgT1NYLCBXaW5kb3dzIHdpdGggbm1ha2UgYW5kIFZTIDYsIDcsIDcuMSwgOCwKCSAgQm9ybGFuZCBNYWtlLCBhbmQgY3lnd2luIGJ5IGhhbmQgd2l0aCBzcGFjZXMgaW4gdGhlIHBhdGggYW5kCgkgIGNtYWtlIDIuMCBhbmQgMi4yIGJlZm9yZSBjb21taXR0aW5nIGJ1dCBzdGlsbCBzZWVtcyB0byBiZSBmYWlsaW5nCgkgIG9uIHNvbWUgZGFzaGJvYXJkcy4uLnN0cmFuZ2UuCgoyMDA1LTEwLTA1IDA1OjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMDQgMTY6NDAgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5jeHg6IEVOSDogdGhlIHRlc3QKCSAgZm9yIGt3c3lzIHVzZXMgR0VUX1RBUkdFVF9QUk9QRVJUWSwgd2hpY2ggd2FzIG5vdCBpbiB0aGUgQ01ha2UKCSAgYm9vdHN0cmFwCgoyMDA1LTEwLTA0IDE1OjA5ICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIHRlc3RTeXN0ZW1Ub29scy5jeHgsCgkgIHRlc3RTeXN0ZW1Ub29scy5oLmluOiBFTkg6IGFkZCBrd3N5cyB0ZXN0IGZvciBEZXRlY3RGaWxlVHlwZQoKMjAwNS0xMC0wNCAxMDo1OCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogRU5IOiBNb3JlCgkgIHZlcmJvc2l0eQoKMjAwNS0xMC0wNCAwNTowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTEwLTAzIDE0OjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eDogRU5IOgoJICBDb252ZXJ0aW5nIEZ1bmRhbWVudGFsVHlwZSB0cnktY29tcGlsZXMgaW50byBhIHNpbmdsZSB0cnktcnVuLgoJICBBbGwgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBleGlzdGVuY2UsIHNpemUsIGFuZCBzaWduZWRuZXNzIG9mCgkgIHR5cGVzIGNhbiBiZSBkZXRlcm1pbmVkIGluIG9uZSBwcm9ncmFtIHRoYW5rcyB0byBsaW1pdHMuaC4KCjIwMDUtMTAtMDMgMTQ6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRG91YmxlLXF1b3RlcyBpbgoJICBkZWZpbml0aW9ucyBtdXN0IGJlIGVzY2FwZWQuCgoyMDA1LTEwLTAzIDA1OjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMTAtMDIgMDU6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0xMC0wMSAwNTowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTI5IDA0OjU1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMjggMDQ6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0yNyAwNDo1NCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTI2IDA0OjU1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMjQgMDQ6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0yMyAxNzo0NyAgaG9mZm1hbgoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJLmZsLAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LCBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uaCwKCSAgRkxUS0RpYWxvZy5jeHgsIEZMVEtEaWFsb2cuZHNwLCBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5oLCBGTFRLUHJvcGVydHlMaXN0LmN4eCwgRkxUS1Byb3BlcnR5TGlzdC5oLAoJICBDTWFrZUxpc3RzLnR4dDogRU5IOiB0cnkgdG8gZmluZCBhIGd1aSBmb3IgdGhlIE1hYwoKMjAwNS0wOS0yMyAxNDozOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlOiBFTkg6IHJlbW92ZSAtbGdjYyB1c2VkIGJ5CgkgIGNyYXp5IGNvdmVyYWdlIHN0dWZmCgoyMDA1LTA5LTIzIDE0OjM4ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZEpOSS5jbWFrZSwgRmluZEphdmEuY21ha2U6IEVOSDogamF2YSBmaXhlcyBmcm9tCgkgIE1hdGhpZXUKCjIwMDUtMDktMjMgMTI6NTAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogdGhlIC1QIG9wdGlvbiB3YXMgbm90IHdvcmtpbmcgd2l0aAoJICByZWxhdGl2ZSBwYXRocyBhbmQgYSBjb3VwbGUgdHlwZXMKCjIwMDUtMDktMjMgMDQ6NTQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0yMiAwOTo1OCAgYW5keQoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogQ09NUDogVHJ5IHRvIHJlbW92ZSB3YXJuaW5ncwoKMjAwNS0wOS0yMiAwNTowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTIxIDE0OjE1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlOiBFTkg6IFVwZGF0ZWQgdG8gdXNlCgkgIG1vZGVybiBGSUxFIGNvbW1hbmQgZm9yIHdyaXRpbmcgdG8gb3V0cHV0IGxvZ3MgaW5zdGVhZCBvZgoJICBXUklURV9GSUxFLgoKMjAwNS0wOS0yMSAxMzo0MiAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzX2lvc19zc3RyZWFtLmguaW46IEJVRzoga3dzeXNfaW9zIG5hbWVzcGFjZQoJICBzaG91bGQgaW1wb3J0IHN0cmVhbWJ1ZiBhbHNvLgoKMjAwNS0wOS0yMSAxMzozMSAga2luZwoKCSogU291cmNlLzogY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmgsCgkgIGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHg6IEJVRzoKCSAgQ29ycmVjdGVkIGFuZCB1cGRhdGVkIGRvY3VtZW50YXRpb24gb2YgdGhlIC1QIG9wdGlvbiwgLUMgb3B0aW9uLAoJICBHRVRfVEFSR0VUX1BST1BFUlRZIGNvbW1hbmQsIGFuZCBHRVRfU09VUkNFX0ZJTEVfUFJPUEVSVFkKCSAgY29tbWFuZC4KCjIwMDUtMDktMjEgMTA6MzIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21JVEtXcmFwVGNsQ29tbWFuZC5oOiBFTkg6IHJlbW92ZWQgSVRLIGNvbW1hbmQKCjIwMDUtMDktMjEgMDU6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0yMCAxNTowOCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEVOSDogUHJvcGVybHkgcmVwb3J0IGZhaWxlZAoJICB0ZXN0cwoKMjAwNS0wOS0yMCAxMjo1MCAgbWFydGluawoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogRU5IOiBpbmNyZWFzZQoJICBjb3ZlcmFnZSBpbiBsb2FkZWQgY29tbWFuZHMKCjIwMDUtMDktMjAgMTA6NDIgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBNYWtlIG1lc3NhZ2UgaW50byBzdGF0dXMKCjIwMDUtMDktMjAgMDU6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0xOSAxNzoyMCAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5pbi5sOiBCVUc6IFdoZW4gYW4KCSAgdW5xdW90ZWQgYXJndW1lbnQgY29udGFpbnMgYSBwYWlyIG9mIG1hdGNoaW5nIGRvdWJsZSBxdW90ZXMKCSAgc3BhY2VzIGFuZCB0YWJzIHNob3VsZCBiZSBhbGxvd2VkIGluLWJldHdlZW4uICBUaGlzIGFsbG93cwoJICBhcmd1bWVudHMgbGlrZSAtREZPTz0nImJhciB6b3QiJyB0byB3b3JrLgoKMjAwNS0wOS0xOSAxNjoxOSAgYW5keQoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogQlVHOiBSZW1vdmUgd2FybmluZyBhbmQgdHJ5IHRvIGZpeAoJICBtZW1vcnkgcHJvYmxlbQoKMjAwNS0wOS0xOSAxNToxNSAgYW5keQoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IFRlc3QgZm9yIGJvdGggY29tbWFuZHMKCjIwMDUtMDktMTkgMTU6MTEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBFTkg6IE1vZGlmeSBvdXRwdXQgYmFzZWQgb24KCSAgd2V0aGVyIGl0IGlzIHRlc3RlZCBvciBtZW1vcnkgY2hlY2tlZAoKMjAwNS0wOS0xOSAxNTowOCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0Q29tbWFuZC5oOiBCVUc6IFRoaXMgc2hvdWxkIGZpeCBtZW1vcnkKCSAgY2hlY2tpbmcKCjIwMDUtMDktMTkgMTI6MzggIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogdXBkYXRlIHJldmlzaW9uIG51bWJlcnMKCjIwMDUtMDktMTkgMTI6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZSwgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLmJhaywKCSAgTW9kdWxlcy9WVEtDb21wYXRpYmlsaXR5LmNtYWtlLCBTb3VyY2UvY21DVGVzdC5jeHg6IG1pbm9yIGZpeGVzCgkgIGZvciAyLjIuMQoKMjAwNS0wOS0xOSAxMjoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IGZpeCB0eXBvCgoyMDA1LTA5LTE5IDEyOjE3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1ZUS0NvbXBhdGliaWxpdHkuY21ha2U6IEVOSDogcmVtb3ZlIG1lc3NhZ2UKCjIwMDUtMDktMTkgMDQ6NDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0xOCAxNzoxNSAga2luZwoKCSogU291cmNlL2t3c3lzL1JFQURNRS50eHQ6IFNUWUxFOiBBZGRlZCByZWZlcmVuY2UgdG8gZG9jdW1lbnRhdGlvbgoJICBpbiBDTWFrZUxpc3RzLnR4dC4KCjIwMDUtMDktMTggMTc6MDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogU1RZTEU6IEFkZGVkIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkKCSAgZGlzY2xhaW1lci4KCjIwMDUtMDktMTggMDg6MTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2V0VGVzdFByb3BlcnR5Q29tbWFuZC5jeHgsIGt3c3lzL0NNYWtlTGlzdHMudHh0OiBCVUc6CgkgIEZpeCB3aGljaCBhcmd1bWVudCBpcyB3aGljaCwgYWxzbywgZml4IHRoZSB0ZXN0IHRvIGJlIGxlc3MKCSAgYWdyZXNzaXZlCgoyMDA1LTA5LTE4IDA0OjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMTcgMTE6MzEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuY3h4OiBFTkg6IEZpeCBtZW1jaGVjayBjb21tYW5kCgoyMDA1LTA5LTE3IDA5OjUzICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIHRlc3Rpbmcgb2YKCSAgR0VUX1RFU1RfUFJPUEVSVFkgY29tbWFuZAoKMjAwNS0wOS0xNyAwODo1MCAgYW5keQoKCSogU291cmNlL2t3c3lzL1JlZ2lzdHJ5LmN4eDogQlVHOiBPbiBXSU4zMiwgc2luY2Ugd2UgYXJlIHVzaW5nCgkgIHN1YmtleSwgc2V0IGl0CgoyMDA1LTA5LTE3IDA1OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMTYgMTU6MzAgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9SZWdpc3RyeS5jeHg6IENPTVA6IFJlbW92ZSB1bnVzZWQgdmFyaWFibGUKCjIwMDUtMDktMTYgMTM6NTYgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IFJlZ2lzdHJ5LmN4eCwgdGVzdFJlZ2lzdHJ5LmN4eDogQlVHOiBGaXggZW5jb2RpbmcKCSAgYW5kIGFkZCBkZWxldGluZyB0byB0aGUgdGVzdAoKMjAwNS0wOS0xNiAxMzozOCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogUmVnaXN0cnkuY3h4LCBSZWdpc3RyeS5oeHguaW4sIHRlc3RSZWdpc3RyeS5jeHg6CgkgIEVOSDogTW9kaWZ5IEFQSSBhIGxpdHRsZSBiaXQgdG8gYWxsb3cgYXJiaXRyYXJ5IGxlbmd0aCB2YWx1ZXMuCgkgIEVuY29kZSBjZXJ0YWluIGNoYXJhY3RlcnMuIFJlbmFtZSBVTklYIHJlZ2lzdHJ5IHRvIEZJTEUgcmVnaXN0cnkuCgkgIE1vcmUgdGVzdGluZwoKMjAwNS0wOS0xNiAxMjoxNyAgbWFydGluawoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiB1cGRhdGUgcmV2aXNpb24gbnVtYmVycwoKMjAwNS0wOS0xNiAxMDo1NyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBNYWtlUmVsZWFzZS5jbWFrZS5pbiwgUkVBRE1FLCBSZWxlYXNlLmNtYWtlOgoJICBtb3ZlIG9mZiBicmFuY2gKCjIwMDUtMDktMTYgMTA6NTMgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaDogRU5IOiB1cGRhdGUgcmV2aXNpb24KCSAgbnVtYmVycwoKMjAwNS0wOS0xNiAxMDo1MyAgbWFydGluawoKCSogVXRpbGl0aWVzL1JlbGVhc2UvTWFrZVJlbGVhc2UuY21ha2UuaW46IEVOSDogZml4IGZvcgoJICBDTUFLRV9DT01NQU5EIG5vdCBiZWluZyBkZWZpbmVkIHdpdGggLVAKCjIwMDUtMDktMTYgMTA6NDcgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogZml4IEJpbGwKCjIwMDUtMDktMTYgMTA6NDEgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogTWFrZVJlbGVhc2UuY21ha2UuaW4sIFJlbGVhc2UuY21ha2U6IEVOSDogZml4CgkgIHRvIHN5bnRheAoKMjAwNS0wOS0xNiAxMDozMiAgbWFydGluawoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBSZWxlYXNlLmNtYWtlLCBNYWtlUmVsZWFzZS5jbWFrZS5pbjogRU5IOgoJICBhZGRlZCBjb21taXQgZm9yIHJlbGVhc2Ugc2NyaXB0CgoyMDA1LTA5LTE2IDEwOjEwICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9NYWtlUmVsZWFzZS5jbWFrZS5pbjogRU5IOiBhdXRvIHJlbGVhc2Ugc3R1ZmYKCjIwMDUtMDktMTYgMTA6MDkgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9SZWdpc3RyeS5jeHg6IENPTVA6IFJlbW92ZSBwcm9ibGVtIG9uIGJvcmxhbmQKCjIwMDUtMDktMTYgMDk6MjEgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgcmVnaXN0cnksIGFkZCB0ZXN0IG9mCgkgIFNFVF9URVNUU19QUk9QRVJUSUVTLCByZW5hbWUgdGVzdHMgZm9yIGRhcnQyCgoyMDA1LTA5LTE2IDA5OjIwICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvUmVnaXN0cnkuY3h4OiBDT01QOiBSZW1vdmUgc29tZSBtb3JlIHdhcm5pbmdzCgoyMDA1LTA5LTE2IDA5OjE1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBSZWdpc3RyeS5jeHgsIFJlZ2lzdHJ5Lmh4eC5pbjogRU5IOiBDbGVhbnVwcyBhbmQKCSAgZXhwb3NlIHVuaXggcmVnaXN0cnkgb24gd2luZG93cyAoZm9yIGN5Z3dpbiBldGMpCgoyMDA1LTA5LTE2IDA5OjA4ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBSZWdpc3RyeS5jeHgsIFJlZ2lzdHJ5Lmh4eC5pbjogQ09NUDogV2luMzIgZml4ZXMKCjIwMDUtMDktMTYgMDg6MzggIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9SZWdpc3RyeS5jeHg6IEVOSDogTW9yZSBoYW5kbGluZyBvZiB1bml4IHZlcnN1cwoJICB3aW5kb3dzIHJlZ2lzdHJ5CgoyMDA1LTA5LTE2IDA4OjIwICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBSZWdpc3RyeS5jeHgsIFJlZ2lzdHJ5Lmh4eC5pbiwgdGVzdEZhaWwuYywKCSAgdGVzdFJlZ2lzdHJ5LmN4eDogRU5IOiBJbml0aWFsIGltcG9ydAoKMjAwNS0wOS0xNiAwNToxNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTE1IDE3OjIyICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogRXhwb3NlIHZlcnNpb24gb2YgY3Rlc3QKCjIwMDUtMDktMTUgMTY6MzggIGhvZmZtYW4KCgkqIENUZXN0Q3VzdG9tLmN0ZXN0LmluLCBDaGFuZ2VMb2cubWFudWFsLCBib290c3RyYXAsCgkgIERvY3MvY21ha2UtbW9kZS5lbCwgTW9kdWxlcy9DTWFrZUFkZE5ld0xhbmd1YWdlLnR4dCwKCSAgTW9kdWxlcy9DTWFrZVRlc3RSQ0NvbXBpbGVyLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQuY21ha2UuYmFrLCBNb2R1bGVzL0ZpbmRRdDMuY21ha2UsCgkgIE1vZHVsZXMvRmluZFF0NC5jbWFrZSwgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLmJhaywKCSAgTW9kdWxlcy9Vc2VRdDQuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQWRkU3ViRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuaCwKCSAgU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21UZXN0LmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL091dE9mU291cmNlL3Rlc3RkcC5oLmluLAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvU3ViRGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvQ01ha2UubnNpLmluOgoJICBNZXJnZSBtb3JlIGNoYW5nZXMgZnJvbSBtYWluIHRydW5rCgoyMDA1LTA5LTE1IDE2OjA2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IENPTVA6IFRvbyBmYXN0IGNvbW1pdAoKMjAwNS0wOS0xNSAxNjowMyAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBCVUc6IE1ha2Ugc3VyZSBmdWxsCgkgIHBhdGhzIGFyZSBjb2xsYXBzZWQKCjIwMDUtMDktMTUgMTM6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDUtMDktMTUgMTI6MTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VBZGROZXdMYW5ndWFnZS50eHQsCgkgIE1vZHVsZXMvQ01ha2VUZXN0UkNDb21waWxlci5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBjbGVhbiB1cCBFbmFibGVMYW5ndWFnZSB0cnkgdG8gZml4IHByb2JsZW0gd2hlcmUgdHJ5IGNvbXBpbGUKCSAgcnVucyBjbWFrZQoKMjAwNS0wOS0xNSAxMTowNSAgbWFydGluawoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogY2xlYW5lciBjb2RlIGNvdmVyYWdlCgoyMDA1LTA5LTE1IDA0OjUzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMTQgMTE6MTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBvbmx5IGFkZCBvcHRpb25hbCBxdCBzdHVmZiB0bwoJICBRVF9JTkNMVURFUwoKMjAwNS0wOS0xNCAwOToxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEVOSDogaWYgcXQ0IHFtYWtlIGlzIGZvdW5kIHRoZW4gc2V0CgkgIFFUX1FNQUtFX0VYRUNVVEFCTEUgdG8gdGhhdCB2YWx1ZSBzbyB0aGF0IHRoZSBzYW1lIG9uZSB3aWxsIGJlCgkgIHVzZWQgaW4gRmluZFF0NC5jbWFrZQoKMjAwNS0wOS0xNCAwNDo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTEzIDEyOjU1ICBtYXJ0aW5rCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBjb3ZlcmFnZSBjbGVhbnVwIGZvciBub24gWENvZGUgYnVpbGRzCgoyMDA1LTA5LTEzIDEwOjQwICBtYXJ0aW5rCgoJKiBUZXN0cy9PdXRPZlNvdXJjZS86IENNYWtlTGlzdHMudHh0LCB0ZXN0ZHAuaC5pbiwKCSAgT3V0T2ZTb3VyY2VTdWJkaXIvQ01ha2VMaXN0cy50eHQsIE91dE9mU291cmNlU3ViZGlyL3NpbXBsZS5jeHg6CgkgIEVOSDogdGVzdCBnZXQgZGlyZWN0b3J5IHByb3BlcnRpZXMgYWJpbGl0eSB0byBnZXQgcHJvcHMgZnJvbQoJICBzdWJkaXJzCgoyMDA1LTA5LTEzIDEwOjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuaDogRU5IOiBhZGRlZCBESVJFQ1RPUlkgb3B0aW9uIHRvCgkgIEdFVF9ESVJFQ1RPUllfUFJPUEVSVElFUwoKMjAwNS0wOS0xMyAxMDozMyAgbWFydGluawoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBFTkg6IG1pc3NpbmcgZ2V0X2RpcmVjdG9yeV9wcm9wZXJ0eSBjb21tYW5kCgoyMDA1LTA5LTEzIDA5OjI1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogYWRkIHNvbWUgY2hlY2tzIG9uIHRoZSBxbWFrZSBpbnN0YWxsCgoyMDA1LTA5LTEzIDA4OjUyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiBmaXggaWYgc3RhdGVtZW50CgoyMDA1LTA5LTEzIDA0OjUyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMTIgMjI6NDYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IGFkZCBkb2NzIGZvciBRVF9SRVFVSVJFRAoKMjAwNS0wOS0xMiAyMjozOSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdC5jbWFrZSwgRmluZFF0NC5jbWFrZTogRU5IOiBtb3JlIGZpbmRxdCBmaXhlcwoKMjAwNS0wOS0xMiAxNDoyNiAgbWFydGluawoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvU3ViRGlyL0NNYWtlTGlzdHMudHh0OiBFTkg6IGNvbnZlcnQgdG8gd29yawoJICB3aXRoIHRoZSBuZXcgc3ludGF4IGZvciBBRERfU1VCRElSRUNUT1JZCgoyMDA1LTA5LTEyIDEzOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuaDogRU5IOiBiZXR0ZXIgZm9ybWF0IGZvcgoJICBBRERfU1VCRElSRUNUT1JZIGNvbW1hbmQKCjIwMDUtMDktMTIgMTE6NDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kUXQuY21ha2UsIEZpbmRRdDQuY21ha2U6IEVOSDogYWRkIG5ldyBwbGFjZSB0bwoJICBzZWFyY2ggZm9yIHF0NCBpbiByZWdpc3RyeQoKMjAwNS0wOS0xMiAxMToyNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEVOSDogZml4IHR5cG8KCjIwMDUtMDktMTIgMTA6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiB1c2UgdGhlIGZpbmRxdDMgZnJvbSB0aGlzIGNtYWtlIGFuZAoJICBub3QgdGhlIG9uZSBjb25maWd1cmVpbmcgY21ha2UKCjIwMDUtMDktMTIgMTA6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IGFkZCBhIGJldHRlciBtZXNzYWdlCgoyMDA1LTA5LTEyIDEwOjI4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2U6IEVOSDogYWRkIG1vcmUgbGlicmFyaWVzIGZvciBxdDMKCjIwMDUtMDktMTIgMDk6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiB1c2UgY29ycmVjdCB2YXJpYWJsZSBmb3IgcW1ha2UKCjIwMDUtMDktMTIgMDk6NTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBhZGQgYSBiZXR0ZXIgbWVzc2FnZQoKMjAwNS0wOS0xMiAwOTozNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEVOSDogYWRkIHNvbWUgbWVzc2FnZXMgbm90IGVycm9ycyBmb3IKCSAgZmluZHF0CgoyMDA1LTA5LTEyIDA5OjMyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDMuY21ha2UsIE1vZHVsZXMvRmluZFF0NC5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBtb3JlCgkgIHF0IGNoYW5nZXMKCjIwMDUtMDktMTIgMDk6MDkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvVXNlUXQ0LmNtYWtlOiBFTkg6IGFkZCAtRCBvcHRpb25zIGZvciBxdCBzdHVmZgoKMjAwNS0wOS0xMiAwOTowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdC5jbWFrZSwgRmluZFF0NC5jbWFrZTogRU5IOiBtYWtlIHN1cmUgdGhlIGNvcnJlY3QKCSAgcW1ha2UgaXMgdXNlZAoKMjAwNS0wOS0xMiAwNDozNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTExIDA0OjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMTAgMjI6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IG9ubHkgcHJpbnQgZXJyb3JzIGlmIFFUX1JFUVVJUkVEIGlzCgkgIHNldAoKMjAwNS0wOS0xMCAxMDozMyAgaG9mZm1hbgoKCSogYm9vdHN0cmFwLCBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwgU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBCVUc6CgkgIHRyeSB0byBmaXggcXQgcHJvYmxlbXMKCjIwMDUtMDktMTAgMDQ6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0wOSAyMTo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2UsIE1vZHVsZXMvRmluZFF0My5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQ0LmNtYWtlLCBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBjbGVhbgoJICB1cCB0aGUgZmluZCBxdCBzdHVmZiBzb21lCgoyMDA1LTA5LTA5IDE3OjA0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ2hlY2tRdEluc3RhbGxlZC5jbWFrZSwgRmluZFF0LmNtYWtlOiBFTkg6IHRyeSB0byBmaXgKCSAgdGhpcyBmaW5kIHF0IHN0dWZmCgoyMDA1LTA5LTA5IDEzOjIzICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9DTWFrZS5uc2kuaW46IEVOSDogdG8gc3VwcG9ydCBib3RoIGFkbWluIGFuZAoJICBsb2NsYSBpbnN0YWxscwoKMjAwNS0wOS0wOSAxMTozMiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrUXRJbnN0YWxsZWQuY21ha2UsIEZpbmRRdC5jbWFrZTogRU5IOiBtYWtlIEZpbmRRdAoJICBkZWZhdWx0IHRvIHF0MyBhbmQgcHJpbnQgYSBtZXNzYWdlLCBhbmQgYWRkCgkgIENoZWNrUXRJbnN0YWxsZWQuY21ha2UKCjIwMDUtMDktMDkgMDU6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0wOCAxNToyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eDogRU5IOiByZW1vdmUgVU1SCgoyMDA1LTA5LTA4IDE1OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEJVRzogZml4IHNwZWxsaW5nIGVycm9yCgoyMDA1LTA5LTA4IDE0OjU5ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuSW5mb3JtYXRpb24uY21ha2UsIE1vZHVsZXMvRmluZEN1cnNlcy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kSk5JLmNtYWtlLCBNb2R1bGVzL0ZpbmRKUEVHLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRKYXZhLmNtYWtlLCBNb2R1bGVzL0ZpbmRNYXRsYWIuY21ha2UsCgkgIE1vZHVsZXMvRmluZE1vdGlmLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFF0NC5jbWFrZS5iYWssIE1vZHVsZXMvRmluZFpMSUIuY21ha2UsCgkgIE1vZHVsZXMvVXNlUXQ0LmNtYWtlLCBNb2R1bGVzL1VzZVNXSUcuY21ha2UsCgkgIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IG1lcmdlIHdpdGggbWFpbiB0cnVuawoKMjAwNS0wOS0wOCAxNDozNSAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgQlVHOiBmaXggeGNvZGUgMTUgKHJlYWxseSBiaWxsIEhvZmZtYW4pCgoyMDA1LTA5LTA4IDE0OjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEJVRzogYnVnIG51bSAxOTk0IGxpYnJhcnkKCSAgbGlua2luZyB3aGVuIGEgY29uZmlnIGlzIG5vdCBzcGVjaWZpZWQgYnV0IGRlYnVnIGFuZCBvcHQgbGlicyBhcmUKCjIwMDUtMDktMDggMTE6MzggIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kQ3Vyc2VzLmNtYWtlLCBGaW5kSlBFRy5jbWFrZSwgRmluZFpMSUIuY21ha2U6IEVOSDoKCSAgY2xlYW4gdXAgc29tZSBzdHVmZgoKMjAwNS0wOS0wOCAxMTozOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9Vc2VTV0lHLmNtYWtlOiBFTkg6IGFkZCBhYmlsaXR5IHRvIHNldCBvdXRkaXIgaW4gc3dpZwoKMjAwNS0wOS0wOCAxMDowMyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lSmF2YUNvbXBpbGVyLmNtYWtlLCBGaW5kSk5JLmNtYWtlLAoJICBGaW5kSmF2YS5jbWFrZTogRU5IOiBhZGQgc3VwcG9ydCBmb3IgamF2YSAxLjUKCjIwMDUtMDktMDggMTA6MDEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE1hdGxhYi5jbWFrZTogRU5IOiBhZGQgTWF0bGFiIHN1cHBvcnQKCjIwMDUtMDktMDggMDk6NTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE1vdGlmLmNtYWtlOiBFTkg6IGFkZCBhIGZpbmQgbW90aWYKCjIwMDUtMDktMDggMDk6NTggIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kUXQ0LmNtYWtlLCBVc2VRdDQuY21ha2U6IEVOSDogYWRkIEtlbiBNb3JlbGFuZHMKCSAgZml4ZXMgZm9yIEZpbmRRVAoKMjAwNS0wOS0wOCAwNTowNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTA3IDE3OjA1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvVlRLQ29tcGF0aWJpbGl0eS5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBhZGQgYSBmaXggZm9yIFZUSyBvbiB0aGUgbWFjIGFuZCBhIHdheSB0byBmaXggc29tZSBwcm9qZWN0cwoJICB3aXRoIGEgc2luZ2xlIGZpbGUgaW4gdGhlIGNtYWtlIG1vZHVsZXMgZGlyZWN0b3J5CgoyMDA1LTA5LTA3IDA1OjAwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMDYgMjM6MzEgIGFuZHkKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbVRlc3QuaCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IEVOSDoKCSAgQWRkIGEgd2F5IGZvciB0ZXN0IHRvIGludGVudGlvbmFsbHkgZmFpbAoKMjAwNS0wOS0wNiAxMjo1NSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9BSVguY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZTIxR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVhDb2RlMjFPYmplY3QuY3h4LCBTb3VyY2UvY21YQ29kZTIxT2JqZWN0LmgsCgkgIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmN4eCwgU291cmNlL2NtWENvZGVPYmplY3QuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW4sCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogTWVyZ2Ugd2l0aCBtYWluIHRyZWUKCjIwMDUtMDktMDYgMDU6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0wNSAwOToxNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtWENvZGVPYmplY3QuaDogRU5IOiBmaXgKCSAgd2FybmluZ3MKCjIwMDUtMDktMDUgMDQ6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0wNCAwNDo0NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA5LTAzIDIyOjE2ICBob2ZmbWFuCgoJKiBib290c3RyYXA6IEVOSDogZml4IGJvb3RzdHJhcCwgbWF5YmUgdGhpcyBzaG91bGQgc29tZWhvdyBncmVwIGF3awoJICB0aGUgc291cmNlcyBmcm9tIHRoZSBjbWFrZWxpc3QgZmlsZS4uLi4KCjIwMDUtMDktMDMgMDQ6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOS0wMiAxNjoyOSAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsWENvZGUyMUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGUyMUdlbmVyYXRvci5oLCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBjbVhDb2RlMjFPYmplY3QuY3h4LCBjbVhDb2RlMjFPYmplY3QuaCwKCSAgY21YQ29kZU9iamVjdC5jeHgsIGNtWENvZGVPYmplY3QuaDogRU5IOiBhZGQgcmVhbCBzdXBwb3J0IGZvcgoJICBYY29kZTIxCgoyMDA1LTA5LTAyIDA4OjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEJVRzogbm90IGFsbCBNYWNzIGFyZSBjYXNlIGluc2Vuc2l0aXZlIGlmCgkgIHRoZXkgbW91bnQgbmZzIGRpcmVjdG9yaWVzCgoyMDA1LTA5LTAyIDA1OjA1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDktMDEgMTc6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGZpeCBOT05FCgoyMDA1LTA5LTAxIDA1OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMzEgMTk6NDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW46IEVOSDogQWRkZWQgY3lnY2hlY2sga25vd2xlZGdlCgkgIGZvciAtLWxkZCBvcHRpb24gb24gQ3lnd2luLiAgQWRkZWQgZXJyb3IgbWVzc2FnZSBmb3IgLS1sZGQgb3B0aW9uCgkgIHdoZW4gbm8gdG9vbCBpcyBhdmFpbGFibGUgYnV0IHRoZSBvcHRpb24gd2FzIHN0aWxsIHJlcXVlc3RlZC4KCjIwMDUtMDgtMzEgMDU6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0zMCAxMzo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogRU5IOiB1c2UgbmF0aXZlCgkgIERlcGxveW1lbnQgYW5kIERldmVsb3BtZW50IGRpcmVjdG9yaWVzCgoyMDA1LTA4LTMwIDA0OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMjkgMTc6MDkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IGFkZCBmbGFncyBmb3IgZGVidWcgcmVsZWFzZSBmb3IKCSAgYWl4CgoyMDA1LTA4LTI5IDE2OjE5ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvRmluZEphdmEuY21ha2UsCgkgIE1vZHVsZXMvRmluZFF0My5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21EZXBlbmRzQy5jeHgsIFNvdXJjZS9jbURlcGVuZHNDLmgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwgU291cmNlL2NtVmVyc2lvbi5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW4sIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0N1c3RvbUNvbW1hbmQvZm9vLmguaW4sCgkgIFRlc3RzL0N1c3RvbUNvbW1hbmQvZm9vLmluLCBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWVyZ2Ugd2l0aCBjdnMgYWdhaW4KCSAgYW5kIGNoYW5nZSB2ZXJzaW9uCgoyMDA1LTA4LTI5IDE1OjQ5ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZTogRU5IOiBQaWNraW5nIGJldHRlciBkZWZhdWx0IGZvcgoJICBDTUFLRV9JTlNUQUxMX1BSRUZJWCBvbiBXaW5kb3dzIGJ5IHVzaW5nIFByb2dyYW1GaWxlcyBlbnZpcm9ubWVudAoJICB2YXJpYWJsZS4gIE5vdyB0aGF0IGluc3RhbGwgYWN0dWFsbHkgd29ya3Mgb24gV2luZG93cyBJJ20gbWFraW5nCgkgIHRoaXMgZW50cnkgbm9uLWFkdmFuY2VkIGFsc28uCgoyMDA1LTA4LTI5IDA0OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMjggMDQ6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0yNyAwNTowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTI2IDE3OjAyICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRKYXZhLmNtYWtlOiBFTkg6IE1vcmUgcGF0aHMgZm9yIGphdmEKCjIwMDUtMDgtMjYgMTY6MjAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4OiBDT01QOiBTaW1wbGlmeSBsb2dpYyBhbmQKCSAgcmVtb3ZlIHN1biBjb21waWxlIGVycm9yCgoyMDA1LTA4LTI2IDA1OjAwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMjUgMDU6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0yNCAxMToxOCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHg6IEJVRzogUHJldmVudCBmcm9tCgkgIGNyZWF0aW5nIGJvZ3VzIGZpbGVzCgoyMDA1LTA4LTI0IDA0OjU0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMjMgMTM6MjUgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFF0My5jbWFrZTogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBmaW5kaW5nIHF0LW10ZWR1LAoJICB0aGUgZWR1Y2F0aW9uYWwgdmVyc2lvbiBvZiBRdC4KCjIwMDUtMDgtMjMgMTA6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogbWFrZSBzdXJlIGNvcnJlY3QgcGF0aCB0eXBlIGlzIHVzZWQKCjIwMDUtMDgtMjMgMDQ6NDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0yMiAwNDo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTIxIDA0OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMjAgMDU6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0xOSAxNzo1NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZTogQlVHOiBGaXhlZCBPVVRQVVRfTkFNRSBmZWF0dXJlCgkgIGZvciBWUzYgZ2VuZXJhdG9yLiAgSXQgd2FzIG5vdCB3b3JraW5nIGZvciBEZWJ1ZyBidWlsZHMgYW5kIHdhcwoJICBub3QgcGF5aW5nIGF0dGVudGlvbiB0byB0aGUgZXhlY3V0YWJsZSBvdXRwdXQgcGF0aC4KCjIwMDUtMDgtMTkgMTc6NTYgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IEluc3RhbGwgcnVsZSBzaG91bGQgdGFrZQoJICBidWlsZCBjb25maWd1cmF0aW9uIGludG8gYWNjb3VudC4KCjIwMDUtMDgtMTkgMTc6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgT1VUUFVUX05BTUUKCjIwMDUtMDgtMTkgMTA6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogSWYgdGhlIHNjYW5uZXIgaXMKCSAgbm90IGRlZmluZWQgdGhpcyB3b3VsZCBjcmFzaC4gRm9yIGV4YW1wbGUgd2hlbiB1c2luZyBuZXcgbGFuZ3VhZ2UKCjIwMDUtMDgtMTkgMDk6MzggIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogQWRkZWQgY21ha2UgLUUgY3JlYXRlX3N5bWxpbmsgY29tbWFuZCB0aGF0CgkgIGJlaGF2ZXMgbGlrZSBsbiAtcy4KCjIwMDUtMDgtMTkgMDk6MjkgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlOiBCVUc6IE5lZWQgdG8gdGVzdCB2b2lkKiBub3QKCSAgInZvaWQgKiIgYmVjYXVzZSB0aGUgSW50ZWwgY29tcGlsZXIgaWNjIGV4cGFuZHMgdGhlIGFzdGVyaXNrLgoJICBUaGFua3MgdG8gRmlsaXBlIFNvdXNhIGZvciB0aGUgcGF0Y2guCgoyMDA1LTA4LTE5IDA5OjIyICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogQlVHOiBSZW1vdmluZyBleGUgVkVSU0lPTgoJICBhdHRyaWJ1dGUgdGVzdCB1bnRpbCBpdCBpcyBpbXBsZW1lbnRlZCBpbiB0aGUgWENvZGUgZ2VuZXJhdG9yLgoKMjAwNS0wOC0xOSAwNDo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTE4IDE2OjE3ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IENPTVA6IEFkZCBTVEQgbmFtZXNwYWNlCgoyMDA1LTA4LTE4IDE2OjA2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU2hhcmVkRm9yd2FyZC5oLmluOiBCVUc6IEZpeGVkIGRpcm5hbWUgaW4gYSBmZXcKCSAgY2FzZXMgb24gd2luZG93cy4gIE5vdyB1c2luZyBLV1NZU19TSEFSRURfRk9SV0FSRF9DT05GSUdfTkFNRQoJICBzZXR0aW5nIGluc3RlYWQgb2YgQ01BS0VfSU5URElSIGRpcmVjdGx5IHRvIGdpdmUgY2hvaWNlIHRvIHVzZXIKCSAgY29kZS4gIFVwZGF0ZWQgZG9jdW1lbnRhdGlvbiB0byBpbmNsdWRlCgkgIEBLV1NZU19OQU1FU1BBQ0VAX1NIQVJFRF9GT1JXQVJEX0NPTkZJR19OQU1FLAoJICBAS1dTWVNfTkFNRVNQQUNFQF9TSEFSRURfRk9SV0FSRF9PUFRJT05fUFJJTlQsIGFuZAoJICBAS1dTWVNfTkFNRVNQQUNFQF9TSEFSRURfRk9SV0FSRF9PUFRJT05fTEREIHNldHRpbmdzLgoKMjAwNS0wOC0xOCAxMzo1MCAgYW5keQoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgY21DVGVzdFRlc3RIYW5kbGVyLmg6IEVOSDoKCSAgSW1wcm92ZSBsb2cgZmlsZSBzdHJhdGVneQoKMjAwNS0wOC0xOCAxMDowMiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eDogRU5IOiBTZXQgdXBkYXRlIG9wdGlvbnMKCjIwMDUtMDgtMTggMDk6MjMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TaGFyZWRGb3J3YXJkLmguaW46IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgV2luZG93cy4KCjIwMDUtMDgtMTggMDk6MjEgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvZm9vLmguaW46IENPTVA6IEF2b2lkIEMrKyBjb21tZW50IGluIEMKCSAgdHJhbnNsYXRpb24gdW5pdC4KCjIwMDUtMDgtMTggMDk6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNDLmN4eDogQ09NUDogV29yay1hcm91bmQgaXRlcmF0b3IvY29uc3RfaXRlcmF0b3IKCSAgY29tcGFyaXNvbiBwcm9ibGVtIG9uIEJvcmxhbmQgNS41LgoKMjAwNS0wOC0xOCAwNTo0MSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTE3IDE3OjU2ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBCVUc6IEl0IHNlZW1zIHRoZQoJICBhdXRvLW9iamVjdC1kZXBlbmRzIGZlYXR1cmUgZG9lcyBub3Qgd29yayBpbiBWaXN1YWwgU3R1ZGlvLiAgSSdtCgkgIHJlc3RvcmluZyB0aGUgZXhwbGljaXQgT0JKRUNUX0RFUEVORFMgbGluZXMuCgoyMDA1LTA4LTE3IDE3OjM5ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogUnVuU2luZ2xlQ29tbWFuZCBzaG91bGQgdHJhbnNsYXRlCgkgIE5VTEwgY2hhcmFjdGVycyBpbiB0aGUgb3V0cHV0IHRvIHZhbGlkIHRleHQuCVRoaXMgc2hvdWxkIGZpeCB0aGUKCSAgbWlzc2luZy1vdXRwdXQgcHJvYmxlbSBjYXVzZWQgYnkgTlVMTC1jaGFyYWN0ZXJzIGluIFZTIGJ1aWxkCgkgIG91dHB1dC4KCjIwMDUtMDgtMTcgMTc6MDQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogQXV0b21hdGljIHB3ZC9jd2QgcGF0aAoJICB0cmFuc2xhdGlvbiBtdXN0IGNoZWNrIHRoYXQgdGhlIGdlbmVyYXRlZCBsb2dpY2FsLXRvLXBoeXNpY2FsCgkgIG1hcHBpbmcgaXMgY29ycmVjdCBieSB1c2luZyByZWFscGF0aC4KCjIwMDUtMDgtMTcgMTY6MTkgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgU2ltcGxlSW5zdGFsbAoJICB0ZXN0IHRvIHRlc3QgbmV3IHZlcnNpb25lZCBleGVjdXRhYmxlIGFuZCBPVVRQVVRfTkFNRSBzdXBwb3J0LgoKMjAwNS0wOC0xNyAxNjoxMSAga2luZwoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIEFkZGVkIHZlcnNpb25lZCBleGVjdXRhYmxlIHN1cHBvcnQuICBUaGlzIHBhcnRpYWxseSBhZGRyZXNzZXMKCSAgYnVnIzIxNDMuICBBbHNvIG1hZGUgT1VUUFVUX05BTUUgd29yayB3aGVuIGluc3RhbGxpbmcKCSAgZXhlY3V0YWJsZXMuCgoyMDA1LTA4LTE3IDE2OjA2ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZGVkIC1FIGNtYWtlX3N5bWxpbmtfZXhlY3V0YWJsZSBjb21tYW5kCgkgIHRvIGhlbHAgY3JlYXRlIHN5bWJvbGljIGxpbmtzIGZvciB2ZXJzaW9uZWQgZXhlY3V0YWJsZXMuCgoyMDA1LTA4LTE3IDE2OjA1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IERvIG5vdCBtYWtlIGEgZmlsZQoJICBkZXBlbmQgb24gYSB2aXJ0dWFsIHRhcmdldC4gIFRoYXQgY2F1c2VzIGV2ZXJ5dGhpbmcgdG8gYWx3YXlzCgkgIHJlYnVpbGQuCgoyMDA1LTA4LTE3IDE0OjE2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogTW9yZSBlcnJvciByZWdleAoKMjAwNS0wOC0xNyAxMzoyMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogQ2Fubm90IHVzZQoJICBmaXJzdC9sYXN0IGluc2VydGlvbiBjb25zdHJ1Y3RvciBvZiBzdGQ6OnNldCBiZWNhdXNlIGl0IGlzIG5vdAoJICBhdmFpbGFibGUgb24gYWxsIHBsYXRmb3Jtcy4KCjIwMDUtMDgtMTcgMTE6NDggIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvOiBDTWFrZUxpc3RzLnR4dCwgZm9vLmluLCBmb28uaC5pbjogRU5IOgoJICBBZGRpbmcgdGVzdCBmb3IgYXV0by1vYmplY3QtZGVwZW5kcyBmZWF0dXJlLglJdCBoYXMgYmVlbiB0ZXN0ZWQKCSAgd2l0aCB0aGUgTWFrZWZpbGUgZ2VuZXJhdG9yLglIb3BlZnVsbHkgdGhpcyB3aWxsIHdvcmsgZm9yIHRoZQoJICBWaXN1YWwgU3R1ZGlvIGFuZCBYQ29kZSBnZW5lcmF0b3JzLgoKMjAwNS0wOC0xNyAxMTo0MyAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzQy5jeHgsIGNtRGVwZW5kc0MuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IEFkZGluZyBzdXBwb3J0IGZvcgoJICBhdXRvbWF0aWNhbGx5IGFkZGluZyB0aGUgT0JKRUNUX0RFUEVORFMgZm9yIGdlbmVyYXRlZCBoZWFkZXIKCSAgZmlsZXMuCgoyMDA1LTA4LTE3IDA1OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMTYgMDg6MzIgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaDogRU5IOiBmaWxlIGlzIG5vdyBjb25maWd1cmVkCgoyMDA1LTA4LTE2IDA1OjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMTUgMDU6NDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0xNCAwNTo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTEzIDA1OjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMTIgMTE6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0xMSAxNDowMiAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZVJDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VHZW5lcmljU3lzdGVtLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlSmF2YUNvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlUkNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZVJDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEZvcnRyYW5Db21waWxlci5jbWFrZSwgTW9kdWxlcy9DVGVzdC5jbWFrZSwKCSAgTW9kdWxlcy9DVGVzdFRhcmdldHMuY21ha2UsIE1vZHVsZXMvQ2hlY2tDU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tDWFhTb3VyY2VDb21waWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlLCBNb2R1bGVzL0RhcnQuY21ha2UsCgkgIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2UsIE1vZHVsZXMvRmluZEdMVVQuY21ha2UsCgkgIE1vZHVsZXMvRmluZEpOSS5jbWFrZSwgTW9kdWxlcy9GaW5kT3BlbkFMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRQaHlzRlMuY21ha2UsIE1vZHVsZXMvRmluZFB5dGhvbkludGVycC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUXQuY21ha2UsIE1vZHVsZXMvRmluZFF0LmNtYWtlLmJhaywKCSAgTW9kdWxlcy9GaW5kUXQzLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdDQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFF0NC5jbWFrZS5iYWssIE1vZHVsZXMvRmluZFNETC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kU0RMLmNtYWtlLmJhaywgTW9kdWxlcy9GaW5kU0RMX2ltYWdlLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTRExfaW1hZ2UuY21ha2UuYmFrLCBNb2R1bGVzL0ZpbmRTRExfbWl4ZXIuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF9taXhlci5jbWFrZS5iYWssIE1vZHVsZXMvRmluZFNETF9uZXQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF9uZXQuY21ha2UuYmFrLCBNb2R1bGVzL0ZpbmRTRExfc291bmQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFNETF90dGYuY21ha2UsIE1vZHVsZXMvRmluZFNETF90dGYuY21ha2UuYmFrLAoJICBNb2R1bGVzL0ZpbmRUaHJlYWRzLmNtYWtlLCBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uY21ha2UsCgkgIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwgTW9kdWxlcy9Vc2Vfd3hXaW5kb3dzLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi1nNzcuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWDY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vZzc3LmNtYWtlLAoJICBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oLCBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5oLAoJICBTb3VyY2UvY21DVGVzdC5jeHgsIFNvdXJjZS9jbUNUZXN0LmgsIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtQ3VzdG9tQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUN1c3RvbUNvbW1hbmQuaCwgU291cmNlL2NtRGVwZW5kcy5jeHgsCgkgIFNvdXJjZS9jbURlcGVuZHMuaCwgU291cmNlL2NtRGVwZW5kc0MuY3h4LCBTb3VyY2UvY21EZXBlbmRzQy5oLAoJICBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHgsIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmgsCgkgIFNvdXJjZS9jbURlcGVuZHNKYXZhLmN4eCwgU291cmNlL2NtRGVwZW5kc0phdmEuaCwKCSAgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHgsIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4LAoJICBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0VGVzdFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldFRlc3RQcm9wZXJ0eUNvbW1hbmQuaCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlMjFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxYQ29kZTIxR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgU291cmNlL2NtTGlzdEZpbGVMZXhlci5jLAoJICBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmluLmwsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsCgkgIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmgsIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXRUZXN0c1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0VGVzdHNQcm9wZXJ0aWVzQ29tbWFuZC5oLCBTb3VyY2UvY21Tb3VyY2VHcm91cC5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUdyb3VwLmgsIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFNvdXJjZS9jbVRlc3QuY3h4LCBTb3VyY2UvY21UZXN0LmgsCgkgIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmgsIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2NtYWtlLmgsIFNvdXJjZS9jdGVzdC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEVtcHR5QmluYXJ5RGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsCgkgIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL1dYRGlhbG9nL0NNYWtlU2V0dXAuY3BwLAoJICBTb3VyY2UvV1hEaWFsb2cvQ01ha2VTZXR1cC5wamQsCgkgIFNvdXJjZS9XWERpYWxvZy9DTWFrZVNldHVwRnJhbWUuY3BwLAoJICBTb3VyY2UvV1hEaWFsb2cvQ29tbWFuZExpbmVJbmZvLmNwcCwKCSAgU291cmNlL1dYRGlhbG9nL0NvbW1hbmRMaW5lSW5mby5oLAoJICBTb3VyY2UvV1hEaWFsb2cvY21ha2VzZXR1cC54bWwsCgkgIFNvdXJjZS9XWERpYWxvZy9iaW4vRmluZHd4V2luLmNtYWtlLCBTb3VyY2Uva3dzeXMvQmFzZTY0LmMsCgkgIFNvdXJjZS9rd3N5cy9CYXNlNjQuaC5pbiwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvQ29uZmlndXJlLmguaW4sIFNvdXJjZS9rd3N5cy9GdW5kYW1lbnRhbFR5cGUuaC5pbiwKCSAgU291cmNlL2t3c3lzL1Byb2Nlc3MuaC5pbiwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jbWFrZSwKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIFNvdXJjZS9rd3N5cy90ZXN0SGFzaFNUTC5jeHgsIFNvdXJjZS9rd3N5cy90ZXN0aGFzaC5jeHgsCgkgIFRlc3RzL0J1bmRsZVRlc3QvQnVuZGxlVGVzdC5jeHgsIFRlc3RzL0J1bmRsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluLCBUZXN0cy9DVGVzdFRlc3QyL3Rlc3QuY21ha2UuaW4sCgkgIFRlc3RzL0NUZXN0VGVzdDMvdGVzdC5jbWFrZS5pbiwKCSAgVGVzdHMvQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS90ZXN0Y2ZsYWdzLmMsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvdGVzdGNmbGFncy5jLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS90ZXN0Y2ZsYWdzLmMsCgkgIFRlc3RzL01hY3JvVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTWFrZUNsZWFuL1RvQ2xlYW4vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL091dE9mU291cmNlL091dE9mU291cmNlU3ViZGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9zaW1wbGUuY3h4LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci90ZXN0bGliLmN4eCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvdGVzdGxpYi5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NtY3VybC9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlL1RyeUNvbXBpbGVGcm9tU291cmNlLmNtYWtlOiBFTkg6IG1vdmUKCSAgY3ZzIG9udG8gYnJhbmNoIGFuZCB0cnkgZm9yIGJldGEgMgoKMjAwNS0wOC0xMSAxMzoyMCAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogYWRkZWQKCSAgYmV0dGVyIGVycm9yIGNoZWNraW5nIGZvciBjYXNlcyB3aGVuIHRoZXJlIGlzIGEgQ01ha2VDYWNoZS50eHQKCSAgZmlsZSBidXQgaXQgaXMgbm90IHJlYWRhYmxlCgoyMDA1LTA4LTExIDExOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMTAgMTY6MTggIGpvcmdiCgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBDb21tYW5kTGluZUluZm8uY3BwLCBDb21tYW5kTGluZUluZm8uaCwKCSAgY21ha2VzZXR1cC54bWw6IEltcGxlbWVudGVkIG5ldyBwYXJzZXIgd2hpY2ggY2FuIGhhbmRsZToKCSAgLUciZ2VuZXJhdG9yIiAobGVnYWN5IGZvcm1hdCkgLUcgImdlbmVyYXRvciIgKG5ldyBmb3JtYXQpCgoyMDA1LTA4LTEwIDEyOjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBmaXggYnVnCgkgIDIwODcgbGliIHByZWZpeCBzdHJpcHBlZCBvZmYgb24gd2luZG93cwoKMjAwNS0wOC0xMCAxMjo1MCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQ0LmNtYWtlOiBFTkg6IHNvbWUgY2xlYW4gdXAgZnJvbSBDbGludG9uCgoyMDA1LTA4LTEwIDEyOjAxICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZE9wZW5BTC5jbWFrZSwgRmluZFNETC5jbWFrZSwgRmluZFNETF9pbWFnZS5jbWFrZSwKCSAgRmluZFNETF9taXhlci5jbWFrZSwgRmluZFNETF9uZXQuY21ha2UsIEZpbmRTRExfc291bmQuY21ha2UsCgkgIEZpbmRTRExfdHRmLmNtYWtlOiBFTkg6IGFkZCBFcmljIFdpbmdzIEZpbmRTREwgdXBkYXRlcwoKMjAwNS0wOC0xMCAxMTo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTEwIDEwOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EZXBlbmRzQy5jeHg6IEVOSDogZml4IGJ1ZyBpbiBkZXBlbmQgZmlsZSByZW1vdmluZyBmb3IKCSAgZGVsZXRlZCBkZXBlbmQgZmlsZXMKCjIwMDUtMDgtMTAgMDg6NDggIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBGaW5kUXQuY21ha2UsIEZpbmRRdDQuY21ha2U6IEVOSDogZml4ZWQgdXAgcXQgc3R1ZmYKCSAgZnJvbSBDbGludG9uIFN0aW1wc29uCgoyMDA1LTA4LTA5IDE1OjQyICBqb3JnYgoKCSogU291cmNlL1dYRGlhbG9nLzogQ01ha2VTZXR1cC5jcHAsIENvbW1hbmRMaW5lSW5mby5jcHAsCgkgIENvbW1hbmRMaW5lSW5mby5oLCBjbWFrZXNldHVwLnhtbDogSW1wbGVtZW50ZWQgLUcgb3B0aW9uCgoyMDA1LTA4LTA5IDEzOjEyICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQlVHOiBkbyBub3Qgc2VhcmNoIHRoZQoJICB1c2VyJ3MgcGF0aCBmb3IgdGV4dCBleGVjdXRhYmxlcyB3aGVuIGEgZnVsbCBwYXRoIGlzIHByb3ZpZGVkIHRvCgkgIHRoZSB0ZXN0CgoyMDA1LTA4LTA5IDExOjM2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMDkgMTA6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZml4IGZvciBzdW4gbWFrZQoJICB3aXRoIHNwYWNlcwoKMjAwNS0wOC0wOCAxNzoxNCAgam9yZ2IKCgkqIFNvdXJjZS9XWERpYWxvZy86IENNYWtlU2V0dXAuY3BwLCBDTWFrZVNldHVwLnBqZCwKCSAgQ01ha2VTZXR1cEZyYW1lLmNwcCwgQ29tbWFuZExpbmVJbmZvLmNwcCwgQ29tbWFuZExpbmVJbmZvLmgsCgkgIGNtYWtlc2V0dXAueG1sOiBTdGFydGVkIG9uIGNvbW1hbmQgbGluZSBwYXJzaW5nLCBhZGRlZCBzdHJpbmcKCSAgcGFyc2UgbWV0aG9kIGZvciBkZWZhdWx0IGdlbmVyYXRvcgoKMjAwNS0wOC0wOCAxNToyMyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBoYXZlIHRoZQoJICBidWlsZC5tYWtlIGZpbGUgaW5jbHVkZSBmbGFncy5tYWtlIGFuZCB1c2UgdGhlIGxhbmd1YWdlIGZsYWdzCgoyMDA1LTA4LTA4IDEzOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHg6IEVOSDogZml4IGZvciBlYXJsaWVyIGZpeCBvbgoJICBzb3VyY2Ugd2l0aCByZWxhdGl2ZSBwYXRoCgoyMDA1LTA4LTA4IDEyOjAwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHg6IEJVRzogRG8gbm90IGNvbnZlcnQgU09VUkNFCgkgIGFyZ3VtZW50IGZyb20gcmVsYXRpdmUgdG8gZnVsbCBwYXRoLglJdCBicmVha3MgdGhlIG9sZC1zdHlsZQoJICBTT1VSQ0U9PVRBUkdFVCB0cmljayBhbmQgdGhlIFNPVVJDRSBhcmd1bWVudCBpcyBvbmx5IHByZXNlbnQgZm9yCgkgIG9sZC1zdHlsZSBjb21tYW5kcyBhbnl3YXkuICBUaGlzIGFkZHJlc3NlcyBidWcjMjEyMC4KCjIwMDUtMDgtMDggMTE6MzMgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IE5lZWQgVFNEIHRhcmdldCB0byBiZSBidWlsdAoJICBiZWZvcmUgU2ltcGxlSW5zdGFsbC4KCjIwMDUtMDgtMDggMTE6MjggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRG8gbm90IGVzY2FwZQoJICBDTUFLRV9DT01NQU5EIHR3aWNlLgoKMjAwNS0wOC0wOCAxMTowMiAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBmaXggYW5kIGlzc3VlIHdpdGgKCSAgc3BhY2VzIGluIHBhdGhzCgoyMDA1LTA4LTA4IDEwOjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDgtMDggMDk6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogV2hlbiBleGl0aW5nIGJlZm9yZSB0aGUgY29uZmlndXJlIHN0ZXAgaW4KCSAgc2NyaXB0IG1vZGUgd2UgbXVzdCBhY2NvdW50IGZvcgoJICBjbVN5c3RlbVRvb2xzOjpHZXRFcnJvck9jY3VyZWRGbGFnKCkgZm9yIHRoZSByZXR1cm4gY29kZS4KCjIwMDUtMDgtMDcgMTA6MzAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0wNiAxMDo1MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTA1IDE3OjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDUtMDgtMDUgMTQ6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogc29tZSBmaXhlcyBmb3IgY3dkCgkgIHByb2JsZW1zIHdpdGggcmVidWlsZF9jYWNoZSBvcHRpb24KCjIwMDUtMDgtMDUgMTE6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0wNCAxNzoxMiAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IElmIFZUS19MSUJSQVJZX1BST1BFUlRJRVMgaXMKCSAgc2V0IHRoZW4gdGhlIHByb3BlcnRpZXMgaXQgbGlzdHMgd2lsbCBiZSBhZGRlZCB0byBWVEsgbGlicmFyeQoJICB0YXJnZXRzIHdpdGggU0VUX1RBUkdFVF9QUk9QRVJUSUVTLiAgVGhpcyB3aWxsIGJlIHVzZWZ1bCB0bwoJICBlbmFibGUgc2hhcmVkIGxpYnJhcnkgdmVyc2lvbmluZy4KCjIwMDUtMDgtMDQgMTE6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0wMyAxNjoxMCAga2luZwoKCSogU291cmNlL2NtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oOiBFTkg6IENsYXJpZmllZCBkb2N1bWVudGF0aW9uCgkgIGZ1cnRoZXIuCgoyMDA1LTA4LTAzIDE0OjE2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogTW9yZSBidWlsZCBlcnJvcnMKCjIwMDUtMDgtMDMgMTQ6MTUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBNb3JlIGhhbmRsaW5nIG9mCgkgIGdjb3YgNC4wCgoyMDA1LTA4LTAzIDEzOjM0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEVOSDogTW9yZSBzdXBwb3J0IGZvcgoJICBnY292IDQuMAoKMjAwNS0wOC0wMyAxMzoxOSAgYW5keQoKCSogTW9kdWxlcy86IENUZXN0LmNtYWtlLCBDVGVzdFRhcmdldHMuY21ha2U6IEVOSDogSW5pdGlhbCBpbXBvcnQKCjIwMDUtMDgtMDMgMTM6MTkgIGFuZHkKCgkqIE1vZHVsZXMvOiBEYXJ0LmNtYWtlLCBGaW5kSk5JLmNtYWtlOiBTVFlMRTogRml4IHR5cG8KCjIwMDUtMDgtMDMgMTE6NTYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBBZGQgc3VwcG9ydCBmb3IgdGhlCgkgIG5ldyBnY2MgdGhhdCB1c2VzIGZpbGVzIHdpdGggZXh0ZW5zaW9uIC5nY2RhCgoyMDA1LTA4LTAzIDExOjUwICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QyL3Rlc3QuY21ha2UuaW46IENPTVA6IEZpeCBmb3IgcHJveHkgdGVzdAoKMjAwNS0wOC0wMyAxMToyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTAyIDE3OjQxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogL25vbG9nbyBtdXN0IGJlIGZpcnN0CgoyMDA1LTA4LTAyIDE2OjQ0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdDQuY21ha2U6IEVOSDogYWRkIGNoYW5nZXMgZm9yIHF0NCBmcm9tIENsaW50b24KCSAgU3RpbXBzb24KCjIwMDUtMDgtMDIgMTY6MzQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0NC5jbWFrZTogRU5IOiBhZGQgY2hhbmdlcyBmb3IgcXQ0IGZyb20gQ2xpbnRvbgoJICBTdGltcHNvbgoKMjAwNS0wOC0wMiAxMzo0MCAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGNoYW5nZSBuYW1lIGZyb20gWENvZGUgdG8gWGNvZGUgbm8KCSAgbmVlZCB0byB0ZXN0IGJvb3RzdHJhcCBmb3IgeGNvZGUKCjIwMDUtMDgtMDIgMTM6MDIgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBjaGFuZ2UgbmFtZSBmcm9tIFhDb2RlIHRvIFhjb2RlIG5vCgkgIG5lZWQgdG8gdGVzdCBib290c3RyYXAgZm9yIHhjb2RlCgoyMDA1LTA4LTAyIDEzOjAxICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZ2V0IGFyb3VuZCBwcm9ibGVtIHdoZXJlCgkgIE9CSlJPT1QgaGFzIGJlZW4gc2V0IGJ5IGRlZmF1bHQgZm9yIGFsbCBwcm9qZWN0cyBpbiBYY29kZSBndWkKCjIwMDUtMDgtMDIgMTE6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wOC0wMiAxMTowNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBGSVg6IGZpeCBiYWQgZGVwZW5kIGluZm8gYW5kCgkgIENPTVBJTEVfRkxBR1MgcHJvYmxlbSBhbmQgcmVtb3ZlIGV4dHJhIGNlcnIgY2FsbHMKCjIwMDUtMDgtMDIgMTA6MDcgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluOiBDT01QOiBUcnkgdG8gZml4IHRlc3QgYnkgdGFraW5nCgkgIGFyZzEgaW50byBhY291bnQKCjIwMDUtMDgtMDIgMDk6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IGFkZCBhZHZhbmNlZCB2YWx1ZXMKCjIwMDUtMDgtMDEgMTY6NDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVMZXhlci5jLCBjbUxpc3RGaWxlTGV4ZXIuaW4ubDogQlVHOiBVbnF1b3RlZAoJICBhcmd1bWVudHMgY2FuIGhhdmUgcXVvdGVzIHRoYXQgYXJlIG5vdCBhdCB0aGUgYmVnaW5uaW5nLCBidXQgb25seQoJICBhbiBldmVuIG51bWJlciBvZiB0aGVtLgoKMjAwNS0wOC0wMSAxMjowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA4LTAxIDEwOjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogZmlyc3Qgc3RlcCB0byBvbmx5CgkgIHJlYnV1aWxkaW5nIG9uIGZsYWcgY2hhbmdlcwoKMjAwNS0wOC0wMSAwOTo0NCAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBtYWtlIHN1cmUKCSAgQ01BS0VfQ19GTEFHUyBhcmUgbm90IGNsb2JiZXJlZAoKMjAwNS0wOC0wMSAwOToyNCAga2luZwoKCSogU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHg6IEJVRzogUGF0Y2ggZnJvbSBGaWxpcGUgU291c2EuCgkgIFFUX1dSQVBfQ1BQIHNob3VsZCBnZW5lcmF0ZSB0aGUgZmlsZSBtb2NfZGxnbWFpbi51aS5jeHggaW5zdGVhZAoJICBvZiBtb2NfZGxnbWFpbi5jeHguCgoyMDA1LTA3LTMxIDIzOjA1ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrQ1hYU291cmNlQ29tcGlsZXMuY21ha2UsCgkgIFRlc3RzL01hY3JvVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGQgQysrIHRlc3QgdG9vCgoyMDA1LTA3LTMxIDIzOjAyICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrQ1NvdXJjZUNvbXBpbGVzLmNtYWtlLAoJICBUZXN0cy9NYWNyb1Rlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIGEgdGVzdCBmb3IgQyBzb3VyY2UgZmlsZQoJICBsaWtlIEFDX1RSWV9DT01QSUxFCgoyMDA1LTA3LTMxIDIyOjI1ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSBhbnNpCgkgIGZsYWdzCgoyMDA1LTA3LTMxIDExOjUxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21HZXRUZXN0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXRUZXN0UHJvcGVydHlDb21tYW5kLmgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZS5oLCBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBjbVNldFRlc3RzUHJvcGVydGllc0NvbW1hbmQuaCwgY21UZXN0LmN4eCwgY21UZXN0Lmg6IEVOSDogQWRkIHNldAoJICBhbmQgZ2V0IHRlc3QgcHJvcGV0eSBjb21tYW5kCgoyMDA1LTA3LTMxIDExOjQyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMzAgMjE6NTggIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL3Rlc3RjZmxhZ3MuYywKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL3Rlc3RjZmxhZ3MuYywKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS90ZXN0Y2ZsYWdzLmM6IEVOSDogbm8gYysrCgkgIGNvbW1lbnRzIGluIGEgYyBmaWxlCgoyMDA1LTA3LTMwIDExOjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMjkgMTQ6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eDogRU5IOyBiZXR0ZXIgd2FybmluZyBtZXNzYWdlIGFuZAoJICBmaXggdHlwZSBwZXIganVsaWVuCgoyMDA1LTA3LTI5IDE0OjAyICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBkbyBub3QgdGVzdCBmb3IKCSAgYyBhbmQgY3h4IGZsYWdzIG9uIHZpc3VhbCBzdHVkaW8gYXMgaXQgZG9lcyBub3Qgd29yayB5ZXQKCjIwMDUtMDctMjkgMTM6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2U6IEVOSDogY2hhbmdlIGxvYyBvZiBsb2cKCSAgZmlsZXMKCjIwMDUtMDctMjkgMTE6NTYgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXgvRXhlY3V0YWJsZS90ZXN0Y2ZsYWdzLmMsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvdGVzdGNmbGFncy5jLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL3Rlc3RjZmxhZ3MuYzogRU5IOiBhZGQgbmV3IHRlc3QKCSAgdG8gbWFrZSBzdXJlIGMgYW5kIGN4eCBmbGFncyBhcmUgZ29pbmcgdG8gdGhlIHJpZ2h0IGZpbGVzCgoyMDA1LTA3LTI5IDExOjUyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMjkgMTE6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4IGRlcGVuZGVuY2llcy4KCSAgTG9va3MgbGlrZSBhbGwgZGVwZW5kZW5jaWVzIHdlcmUgbWlzc2luZyBzdWJkaXJlY3RvcnkKCjIwMDUtMDctMjkgMTA6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiB1bmRvIGxhc3QgY2hhbmdlCgoyMDA1LTA3LTI5IDEwOjAyICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogc3VwcG9ydCB2ZXJzaW9ucyBncmVhdGVyCgkgIHRoYW4gMjAKCjIwMDUtMDctMjkgMDk6MTkgIG1hcnRpbmsKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZVJDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlLCBNb2R1bGVzL0ZpbmRUaHJlYWRzLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uY21ha2UsIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLCBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY214bWxycGMvQ01ha2UvVHJ5Q29tcGlsZUZyb21Tb3VyY2UuY21ha2U6IEVOSDogcHV0CgkgIGNtYWtlIGZpbGVzIGludG9hIENNYWtlRmlsZXMgc3ViZGlyIHRvIGNsZWFuIHVwIGJpbiB0cmVlCgoyMDA1LTA3LTI4IDE1OjI0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDUtMDctMjggMTQ6NTIgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIHN1cmUgYyBmbGFncyBhcmUKCSAgdXNlZCBmb3IgYyBhbmQgY3h4IGZsYWdzIGFyZSB1c2VkIGZvciBjeHgsIHJlYWxseSBCaWxsCgoyMDA1LTA3LTI4IDEzOjIxICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogYWRkCgkgIG1ldGhvZCB0byBhdHRlbXB0IHRvIGNoZWNrIGlmIGEgZmlsZSBpcyB0ZXh0IG9yIGJpbmFyeQoKMjAwNS0wNy0yOCAxMzoxMiAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IG1ha2Ugc3VyZSBjdXN0b20gY29tbWFuZHMKCSAgZGVwZW5kIG9uIGZ1bGwgcGF0aCBmaWxlcyBvbmx5OiBCaWxsIGFzIEFuZHkKCjIwMDUtMDctMjggMTE6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0yOCAwOToxNCAgbWFydGluawoKCSogU291cmNlLzogY21DdXN0b21Db21tYW5kLmN4eCwgY21DdXN0b21Db21tYW5kLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBhbHdheXMgd3JpdGUgb3V0IGFsbAoJICBjdXN0b20gY29tbWFuZHMKCjIwMDUtMDctMjcgMTc6MjMgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBJbml0aWFsaXplRnJvbVBhcmVudCBzaG91bGQgY29weQoJICBpbmNsdWRlIGZpbGUgcmVndWxhciBleHByZXNzaW9ucy4KCjIwMDUtMDctMjcgMTY6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogUlVOX1RFU1RTIHRhcmdldCBub3cgdXNlcwoJICBwcm9wZXIgQ01BS0VfQ0ZHX0lOVERJUiBzZXR0aW5nIHRvIGdldCAkKEludERpcikgb3IgJChPdXREaXIpCgkgIGRlcGVuZGluZyBvbiB0aGUgZ2VuZXJhdG9yLgoKMjAwNS0wNy0yNyAxNjozNyAga2luZwoKCSogU291cmNlL2NtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4OiBCVUc6IEhhY2sgdG8gc3VwcG9ydCBidWlsZGluZwoJICBleGlzdGluZyB0cmVlcyB3aXRoIFVUSUxJVFlfU09VUkNFIGNvbW1hbmRzIGFuZCB0aGUgbmV3IFZTCgkgIGdlbmVyYXRvciBkaXJlY3Rvcnkgc3RydWN0dXJlLgoKMjAwNS0wNy0yNyAxNTo0NiAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBHZW5lcmF0ZSBSVU5fVEVTVCB0YXJnZXQgaWYKCSAgYW55IHRlc3RzIGFyZSB0aGVyZQoKMjAwNS0wNy0yNyAxMzozNiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBFTkg6IEdlbmVyYXRvciBub3cgY3JlYXRlcyBhCgkgIHNlcGFyYXRlIGludGVybWVkaWF0ZSBmaWxlcyBkaXJlY3RvcnkgZm9yIGVhY2ggdGFyZ2V0LiAgVGhpcyBpcwoJICBuZWVkZWQgZm9yIE1TVkMgOCB0byBzdXBwb3J0IHBhcmFsbGVsIGJ1aWxkcy4KCjIwMDUtMDctMjcgMTI6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBmaXggc29tZSB3YXJuaW5ncyBhbmQKCSAgY2xlYW51cCBzb21lCgoyMDA1LTA3LTI3IDExOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMjcgMTE6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogbWF5YmUgZml4IGZvcnRyYW4KCSAgaXNzdWUKCjIwMDUtMDctMjcgMTE6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBmaXggc29tZSB3YXJuaW5ncyBhbmQKCSAgY2xlYW51cCBzb21lCgoyMDA1LTA3LTI3IDExOjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNKYXZhLmN4eCwgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGZpeCBzb21lIHdhcm5pbmdzIGFuZAoJICBjbGVhbnVwIHNvbWUKCjIwMDUtMDctMjcgMDk6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRGVwZW5kcy5jeHgsIGNtRGVwZW5kcy5oLCBjbURlcGVuZHNDLmN4eCwKCSAgY21EZXBlbmRzQy5oLCBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21EZXBlbmRzRm9ydHJhbi5oLAoJICBjbURlcGVuZHNKYXZhLmN4eCwgY21EZXBlbmRzSmF2YS5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbWFrZS5jeHg6IEVOSDogcmVkdWNlIHRoZQoJICBudW1iZXIgb2YgZmlsZXMgcHJvZHVjZWQgc3RpbGwgbmVlZHMgYSBiaXQgbW9yZSBjbGVhbnVwCgoyMDA1LTA3LTI2IDE3OjQwICBraW5nCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogQWRkZWQgVlM4IHN1cHBvcnQgZm9yIERBUlRfQ1hYX05BTUUuCgoyMDA1LTA3LTI2IDEzOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IG1ha2Ugc3VyZSBzb3VyY2UgZmlsZSBkZXBlbmRzIGFyZSB1c2VkCgkgIHRvIGRldGVybWluZSBpZiBjdXN0b20gY29tbWFuZHMgYXJlIHVzZWQKCjIwMDUtMDctMjYgMTM6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogaWYgaXQgaXMgbm90IGEKCSAgY21ha2UgdGFyZ2V0IG9yIGEgZnVsbCBwYXRoIGRvIG5vdCBwdXQgZGVwZW5kIGluZm9ybWF0aW9uIGluIHRoZQoJICBjb21tYW5kCgoyMDA1LTA3LTI2IDEzOjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHg6IEVOSDogbWFrZSBzdXJlIGN1c3RvbSBjb21tYW5kCgkgIGRlcGVuZCBvbiBmbHVpZCBzbyBpZiBmbHRrIGlzIHBhcnQgb2YgcHJvamVjdCBmbHVpZCBnZXRzIGJ1aWx0CgkgIGZpcnN0CgoyMDA1LTA3LTI2IDExOjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMjYgMTE6MzcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBGdW5kYW1lbnRhbFR5cGUuaC5pbjogRU5IOiBBZGRlZAoJICBGdW5kYW1lbnRhbFR5cGUgaGVhZGVyIGRlZmluaW5nIHBsYXRmb3JtLWluZGVwZW5kZW50IGZpeGVkCgkgIHNpemUvc2lnbmVkbmVzcyBpbnRlZ2VyIHR5cGVzLgoKMjAwNS0wNy0yNiAxMTozNiAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IEVOSDogQWRkZWQKCSAgVEVTVF9LV1NZU19DWFhfU0FNRV9MT05HX0FORF9fX0lOVDY0LAoJICBURVNUX0tXU1lTX0NYWF9TQU1FX0xPTkdfTE9OR19BTkRfX19JTlQ2NCwKCSAgVEVTVF9LV1NZU19DQU5fQ09OVkVSVF9VSTY0X1RPX0RPVUJMRSwgYW5kCgkgIFRFU1RfS1dTWVNfQ0hBUl9JU19TSUdORUQuCgoyMDA1LTA3LTI2IDExOjM0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBCYXNlNjQuYywgQmFzZTY0LmguaW4sIENvbmZpZ3VyZS5oLmluLAoJICBQcm9jZXNzLmguaW46IEVOSDogTW92ZWQga3dzeXNfbnMgYW5kIGt3c3lzRVhQT1JUIG1hY3JvcyB0bwoJICBDb25maWd1cmUuaCBpbiB0aGUgY2FzZSBvZiBidWlsZGluZyBhIGt3c3lzIHNvdXJjZSBmaWxlLiAgVGhpcwoJICBhbGxvd3MgbW9yZSB0aGFuIG9uZSBoZWFkZXIgdG8gYmUgaW5jbHVkZWQgaW4gYSBrd3N5cyBzb3VyY2UgZmlsZQoJICB3aXRob3V0IHJlZGVmaW5pbmcgdGhlIG1hY3Jvcy4KCjIwMDUtMDctMjYgMDk6MTcgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdDMvdGVzdC5jbWFrZS5pbjogRU5IOiBBZGQgc3VwcG9ydCBmb3IgbXVsdGktc3RyaW5nCgkgIGNvbXBpbGVyIG5hbWUsIGFuZCBpbXByb3ZlIHN1cHBvcnQgZm9yIHN1YnZlcnNpb24KCjIwMDUtMDctMjUgMTY6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGxpYiBjYXNlIGJ1ZwoJICBjb3JyZWN0bHkKCjIwMDUtMDctMjUgMTE6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0yNCAxMTo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTIzIDExOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMjMgMTA6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogdW5kbyBmaXgKCjIwMDUtMDctMjIgMTc6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0yMiAxNTo0MSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBtb3JlIGVmZmljZW50IGZpeAoJICBmb3IgYnVnICMgMjA2MwoKMjAwNS0wNy0yMiAxNTozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGNhc2UKCSAgbWlzbWF0Y2hlZCBsaWIgYnVnICMgMjA2MwoKMjAwNS0wNy0yMiAxNTozMiAgaG9mZm1hbgoKCSogU291cmNlL2NtRGVwZW5kc0MuY3h4OiBFTkg6IHN0cmluZyArPSBpcyB2ZXJ5IHNsb3csIHNvIGRvbid0IHVzZQoJICBpdAoKMjAwNS0wNy0yMiAwODo0MCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDogRU5IOiBCZXR0ZXIgaGFuZGxpbmcgb2YKCSAgcmVtb3ZlZCBmaWxlcyBhbmQgcmVtb3ZlIHdhcm5pbmcKCjIwMDUtMDctMjIgMDg6MzkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiBNb3JlIHJlZ3VsYXIKCSAgZXhwcmVzc2lvbnMKCjIwMDUtMDctMjEgMTU6NTQgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yCgkgIGRldGVjdGluZyBmaWxlcyB0aGF0IHdlcmUgcmVtb3ZlZAoKMjAwNS0wNy0yMSAxMDoyNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTIxIDA5OjA3ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4OiBCVUc6IFJlbW92ZSBkdXBsaWNhdGUKCSAgcHJlZml4CgoyMDA1LTA3LTIwIDIyOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IHdhcm5pbmcKCjIwMDUtMDctMjAgMTU6NDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sIE1vZHVsZXMvQ01ha2VDSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVGb3J0cmFuQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkNvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlSmF2YUNvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlUkNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZVJDSW5mb3JtYXRpb24uY21ha2UsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBtYWtlIHN1cmUgZmxhZ3Mgc2V0IGluIENDIG9yIENYWCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc3RheQoJICB3aXRoIHRoZSBjb21waWxlcgoKMjAwNS0wNy0yMCAxMjo1NCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLCBDTWFrZUNYWEluZm9ybWF0aW9uLmNtYWtlLAoJICBQbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IG1vdmUgZmxhZ3MgbmV4dCB0byBjb21waWxlciwgc28KCSAgaWYgZW52IGNvbnRhaW5zIGNvbXBpbGVyIGFuZCBzb21lIGZsYWcsIHRoZXkgc3RheSB0b2dldGhlcgoKMjAwNS0wNy0yMCAxMjo1MyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGphdmEgZG9lcyBub3Qgd29yayB1bmRlciBtaW5ndwoKMjAwNS0wNy0yMCAxMjo0OCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdC5jbWFrZSwgRmluZFF0NC5jbWFrZTogRU5IOiBtYWtlIHN1cmUgcW1ha2UgaXMgb24KCSAgdGhlIG1hY2hpbmUgYmVmb3JlIHJ1bm5pbmcgaXQKCjIwMDUtMDctMjAgMTI6NDAgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy90ZXN0SGFzaFNUTC5jeHg6IEVOSDogUmVuYW1lIHRlc3QKCjIwMDUtMDctMjAgMTI6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBJbml0aWFsaXplIHZhcmlhYmxlCgoyMDA1LTA3LTIwIDEyOjAyICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgdGVzdGhhc2guY3h4OiBFTkg6IFJlbmFtZSB0ZXN0CgoyMDA1LTA3LTIwIDEwOjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMTkgMTg6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIGl0IHNvIHRoYXQgYm9vdHN0cmFwCgkgIGRvZXMgbm90IHVzZSB4bWwgcGFyc2VyCgoyMDA1LTA3LTE5IDE3OjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogZml4IGZvciBidWcgMTg2NiwgbWFrZSAtRywtRCAtQwoJICBvcHRpb25zIGFsbG93IGZvciBzcGFjZSBiZXR3ZWVuIGFyZyBhbmQgdmFsdWUKCjIwMDUtMDctMTkgMTY6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUZpbGVDb21tYW5kLmN4eCwKCSAgY21HbG9iYWxYQ29kZTIxR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDogRU5IOiBpZiBYY29kZTIxIGlzIGluc3RhbGxlZCB0aGVuCgkgIGNyZWF0ZSAyMSBjb21wYXRpYmxlIHByb2plY3QgZmlsZXMKCjIwMDUtMDctMTkgMTU6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGUyMUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGUyMUdlbmVyYXRvci5oOiBFTkg6IGFkZCBuZXcgc3R1YiBnZW5lcmF0b3IKCjIwMDUtMDctMTkgMTU6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmg6IEVOSDogYWRkIG1vcmUgZG9jcwoKMjAwNS0wNy0xOSAxNDozNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2U6IEVOSDogbWFrZSBLRGV2ZWxvcDMgZGVmYXVsdCB0bwoJICBDTUFLRV9WRVJCT1NFX01BS0VGSUxFCgoyMDA1LTA3LTE5IDExOjQ4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZTogRU5IOiBtYWtlIEtEZXZlbG9wMyBkZWZhdWx0IHRvCgkgIENNQUtFX1ZFUkJPU0VfTUFLRUZJTEUKCjIwMDUtMDctMTkgMTA6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0xOCAxMjo1MyAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY3Rlc3QuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0Q29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDoKCSAgRU5IOiBBZGQgYSB3YXkgdG8gc3VibWl0IGV4dHJhIGZpbGVzIHRvIHRoZSBkYXNoYm9hcmQKCjIwMDUtMDctMTggMTE6NDYgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZSwgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oLAoJICBTb3VyY2UvY3Rlc3QuY3h4LCBUZXN0cy9DVGVzdFRlc3QyL3Rlc3QuY21ha2UuaW46IEVOSDogU2V2ZXJhbAoJICBpbXByb3ZlbWVudHMgYW5kIGNsZWFudXBzOiAxLiBBZGQgbG9uZyBjb21tYW5kIGxpbmUgYXJndW1lbnRzIGZvcgoJICBldmVyeSBhcmd1bWVudCAyLiBBZGQgYSB3YXkgdG8gb3ZlcndyaXRlIENUZXN0IGNvbmZpZ3VyYXRpb24gYnkKCSAgcHJvdmlkaW5nIC0tb3ZlcndyaXRlIFRpbWVPdXQ9MTAgMy4gSW1wcm92ZSBhcmd1bWVudCBwYXJzaW5nLiAgNC4KCSAgQWRkIHN1Ym1pdCBpbmRleCBhcmd1bWVudAoKMjAwNS0wNy0xOCAxMTozMiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHg6IEVOSDogQ2xlYW51cCBmaWxlIG5hbWUKCjIwMDUtMDctMTggMTE6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBFTkg6IENsZWFudXAgdGhlIGhlbHAgYSBiaXQKCjIwMDUtMDctMTggMDg6NDcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IGZpeCBxdCBidWcKCjIwMDUtMDctMTggMDM6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0xNyAwMzoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTE2IDAzOjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMTUgMTU6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6IEVOSDogZml4IGJ1ZyAxOTYwCgoyMDA1LTA3LTE1IDEzOjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5oOiBCVUc6IGZpeCBmb3IgYnVnIDE4MzgKCjIwMDUtMDctMTUgMTI6NTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEdMVVQuY21ha2U6IEJVRzogZml4IGZvciBidWcgODUyCgoyMDA1LTA3LTE1IDEyOjM5ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZFF0LmNtYWtlOiBFTkg6IGZpeCBoYXJkIGNvZGVkIGluY2x1ZGUgZnJvbSBwYXRjaAoKMjAwNS0wNy0xNSAxMjoxNCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRRdC5jbWFrZSwgRmluZFF0My5jbWFrZSwgRmluZFF0NC5jbWFrZTogRU5IOiBhZGQKCSAgbmV3IHF0IHN0dWZmIGZyb20gd2FyZmllbGRAYndoLmhhcnZhcmQuZWR1LCB0aGFua3MKCjIwMDUtMDctMTUgMTI6MDEgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDogQlVHOiBjb252ZXJ0ZWQgdG8gMS44IGZvcm0gb2YgY3VzdG9tCgkgIGNvbW1hbmRzCgoyMDA1LTA3LTE1IDExOjQ4ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRQeXRob25JbnRlcnAuY21ha2U6IEVOSDogQWRkIHJlZ2lzdHJ5IGZvciAyLjQKCjIwMDUtMDctMTUgMTE6NDUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkludGVycC5jbWFrZTogQlVHOiBTZXQgUFlUSE9OSU5URVJQX0ZPVU5ECgoyMDA1LTA3LTE1IDExOjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvV1hEaWFsb2cvYmluL0ZpbmR3eFdpbi5jbWFrZTogRU5IOiBmaXggZm9yIG9sZGVyIHZlcnNpb25zCgkgIG9mIGNtYWtlCgoyMDA1LTA3LTE1IDExOjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBmaXggc3RhdGljIGJ1aWxkIG9mIHZ0awoJICB3aXRoIGNtYWtlIGJ5IGhhdmluZyBjdXN0b20gdGFyZ2V0cyBjaGFpbiBkZXBlbmQgaW5mb3JtYXRpb24KCjIwMDUtMDctMTUgMTE6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogcmVtb3ZlIGNvbW1lbnRlZAoJICBjb2RlCgoyMDA1LTA3LTE1IDExOjM2ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlIG1lc3NhZ2VzIGFib3V0IG5vdCBydW5uaW5nCgkgIGphdmEgdGVzdAoKMjAwNS0wNy0xNSAxMTozNCAgaG9mZm1hbgoKCSogU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHg6IEVOSDogZml4IGNvbXBpbGUgZXJyb3IgYnVnIyAyMDIwIG9uCgkgIG1hYwoKMjAwNS0wNy0xNSAwODozNiAgYW5keQoKCSogTW9kdWxlcy9GaW5kUHl0aG9uSW50ZXJwLmNtYWtlOiBFTkg6IEluaXRpYWwgaW1wb3J0CgoyMDA1LTA3LTE1IDAzOjExICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMTQgMTc6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS9XWERpYWxvZy86IENNYWtlTGlzdHMudHh0LCBiaW4vRmluZHd4V2luLmNtYWtlOiBFTkg6IGZpeAoJICB3eGRpYWxvZyB0byBidWlsZCB3aXRoIHhjb2RlCgoyMDA1LTA3LTE0IDE2OjQ2ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGFuIGluc3RhbGwgdGFyZ2V0IGZvcgoJICBXWERpYWxvZwoKMjAwNS0wNy0xNCAxNjowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBmb3IgYnVnIDk5MiwgbWFjIGJ1bmRsZQoJICBpbnN0YWxsIGZpeAoKMjAwNS0wNy0xNCAxNToxMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE4NTAgd3JhcHBpbmcgY2FuIGxlYXZlCgkgIG91dCBmaWxlcyBpZiB0aGV5IGFyZSBhIHN1YnN0cmluZyBvZiBhbm90aGVyIGZpbGUKCjIwMDUtMDctMTQgMTQ6MTUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogRU5IOiBTb21lIG1vcmUgY2xlYW51cHMKCSAgYW5kIGFkZCBjdGVzdCBjdXN0b20gdmVjdG9yIGZvciByZWd1bGFyIGV4cHJlc3Npb24gdG8gZXhjbHVkZQoJICBmcm9tIGNvdmVyYWdlCgoyMDA1LTA3LTE0IDE0OjE1ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogTG9vayBmb3IgY3VzdG9tIGZpbGVzIGluIGFsbCBkaXJlY3RvcmllcwoKMjAwNS0wNy0xNCAxMzo1MCAgaG9mZm1hbgoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvOiB0ZXN0bGliLmN4eCwgdGVzdGxpYi5oOgoJICBFTkg6IGFkZCBtaXNzaW5nIGZpbGVzCgoyMDA1LTA3LTE0IDEzOjI1ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwKCSAgY21DVGVzdENvdmVyYWdlSGFuZGxlci5oOiBFTkg6IEFkZCBjdXN0b20gc3VwcmVzc2lvbiByZWd1bGFyCgkgIGV4cHJlc3Npb25zCgoyMDA1LTA3LTE0IDEyOjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBUZXN0cy9PdXRPZlNvdXJjZS9PdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eDogRklYOiBmaXggYnVnCgkgIDIwNDMgYm9ybGFuZCBjb21waWxlciBhbmQgZGxsIHByb2JsZW0gYW5kIGFkZCBhIHRlc3QgZm9yIGl0CgoyMDA1LTA3LTE0IDExOjI0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHg6IEJVRzogRml4IGxpbmUgbnVtYmVyCgkgIGluY29uc2lzdGVuY3ksIGltcHJvdmUgb3V0cHV0CgoyMDA1LTA3LTE0IDEwOjE1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGFkZCBzdXBwb3J0IGZvcgoJICBib3JsYW5kIGV4ZSB3aXRoIHNoYXJlZCBsaWJzIGJhY2sgaW4KCjIwMDUtMDctMTQgMDk6NDQgIGFuZHkKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogRG8gNCBmaWxlcwoKMjAwNS0wNy0xNCAwOTozMCAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBBZGQgYSB0ZXN0IGZvcgoJICBjbUdlbmVyYXRlZEZpbGVTdHJlYW0KCjIwMDUtMDctMTQgMDk6MjkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZyBhbmQgZml4CgkgIHRoZSBsb2dpYwoKMjAwNS0wNy0xNCAwOToyOSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBCVUc6IFJlbmFtZSB0bXAgZmlsZXMKCjIwMDUtMDctMTQgMDM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0xMyAxNjo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiByZW1vdmUgcGFydCBvZgoJICBwYXRjaCBmcm9tIGJ1ZyAxOTY1IHRoYXQgc2V0IGV4ZWN1dGFibGUgcGF0aHMKCjIwMDUtMDctMTMgMTY6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogcmV2ZXJ0IHBhcnQgb2YKCSAgcGF0Y2ggdGhhdCBzZXQgZXhlY3V0YWJsZSBkZWJ1ZyBwcmVmaXggYXMgaXQgYnJlYWtzIHRvbyBtdWNoCgkgIHN0dWZmCgoyMDA1LTA3LTEzIDE2OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogYWRkIC1MIGFzIHBvc3NpYmxlIGxpYnJhcnkgZmxhZwoKMjAwNS0wNy0xMyAxNjoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBzdXBwb3J0IGZvciBidW5kbGVzCgoyMDA1LTA3LTEzIDE2OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IHRyeSB0byBmaXggZmFpbGVkCgkgIHRlc3QKCjIwMDUtMDctMTMgMTU6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgYnVuZGxlIHRlc3QKCjIwMDUtMDctMTMgMTU6NDMgIGhvZmZtYW4KCgkqIFRlc3RzL0J1bmRsZVRlc3QvOiBCdW5kbGVUZXN0LmN4eCwgQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGEKCSAgYnVuZGxlIHRlc3QKCjIwMDUtMDctMTMgMTE6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oLCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6CgkgIEZJWDogYXBwbHkgcGF0Y2ggZnJvbSBidWcjIDE5NjUKCjIwMDUtMDctMTMgMTA6MTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdFRlc3RDb21tYW5kLmN4eDogRU5IOiBBZGQKCSAgdGltZW91dCBzdXBwb3J0CgoyMDA1LTA3LTEzIDA5OjQ5ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZyBvbiB3aW5kb3dzCgoyMDA1LTA3LTEzIDA5OjA4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlOiBFTkg6IGZpeCBmb3IgZGFyd2luIGZyb20gZXJpYyB3aW5nCgoyMDA1LTA3LTEzIDA5OjA2ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZE9wZW5BTC5jbWFrZSwgRmluZFBoeXNGUy5jbWFrZSwgRmluZFNETC5jbWFrZSwKCSAgRmluZFNETF9pbWFnZS5jbWFrZSwgRmluZFNETF9taXhlci5jbWFrZSwgRmluZFNETF9uZXQuY21ha2UsCgkgIEZpbmRTRExfdHRmLmNtYWtlOiBFTkg6IGFkZCBhIGJ1bmNoIG9mIGZpbmQgc2RsIHN0dWZmIGZyb20gZXJpYwoJICB3aW5nCgoyMDA1LTA3LTEzIDA4OjI5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogQ1lHV0lOLWc3Ny5jbWFrZSwgSVJJWDY0LmNtYWtlLCBnNzcuY21ha2U6CgkgIEZJWDogZm9yIDE4NTIgZml4IGZvcnRyYW4gY2FzZQoKMjAwNS0wNy0xMyAwMzoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTEyIDE3OjMwICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNS0wNy0xMiAxNzoyNCAgaG9mZm1hbgoKCSogQ01ha2VTeXN0ZW1Db25maWcudHh0LmluLCBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcudHh0OiBFTkg6CgkgIHJlbW92ZSB1bnVzZWQgZmlsZXMKCjIwMDUtMDctMTIgMTc6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNQbHVnaW5BUEkuaDogRU5IOiBjaGFuZ2UgdmVyc2lvbgoKMjAwNS0wNy0xMiAxNzoyMyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzLzogY21jdXJsL0NNYWtlTGlzdHMudHh0LCBjbXhtbHJwYy9DTWFrZUxpc3RzLnR4dDogYWRkCgkgIC1kbCBvbiB1bml4CgoyMDA1LTA3LTEyIDE3OjIyICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNtYWtlX3JlbGVhc2Uuc2gsIGNvbmZpZ19EYXJ3aW4sCgkgIGNvbmZpZ19IUC1VWCwgY29uZmlnX1N1bk9TLCByZWxlYXNlX2Rpc3BhdGNoLnNoOiBtb3ZlIHJlbGVhc2UKCSAgc3R1ZmYgb2ZmIGJyYW5jaAoKMjAwNS0wNy0xMiAxNjo1NiAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLnR4dDogdXBkYXRlIGNoYW5nZXMKCjIwMDUtMDctMTIgMTY6NTEgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IEVOSDogdXBkYXRlIGNoYW5nZXMgZm9yIDIuMgoKMjAwNS0wNy0xMiAxNTo0MCAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0RhcndpbjogW25vIGxvZyBtZXNzYWdlXQoKMjAwNS0wNy0xMiAxNToyNiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0RhcndpbjogW25vIGxvZyBtZXNzYWdlXQoKMjAwNS0wNy0xMiAxNToxMSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjb25maWdfRGFyd2luLCByZWxlYXNlX2Rpc3BhdGNoLnNoOiBmaXhlcyBmb3IKCSAgb3N4CgoyMDA1LTA3LTEyIDE1OjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgYmluL0ZpbmR3eFdpbi5jbWFrZTogRml4ZXMgZm9yCgkgIG1hY29zeAoKMjAwNS0wNy0xMiAxNTowNiAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIGJpbi9GaW5kd3hXaW4uY21ha2U6IEVOSDogZml4ZXMKCSAgZm9yIG1hY29zeAoKMjAwNS0wNy0xMiAxNDoyMSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBkbCBsaWIKCjIwMDUtMDctMTIgMTM6NTQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19TdW5PUzogcHV0IGl0IGJhY2sKCjIwMDUtMDctMTIgMTM6MjEgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBCVUc6IFJldmVydAoJICB0aGUgY2hhbmdlIHRvIEZpbGVJc0RpcmVjdG9yeS4gQWRkIEZpbGVJc1N5bWxpbmsgYW5kIHRyZWF0CgkgIHN5bWxpbmtzIGFzIGZpbGVzIHdoZW4gcmVtb3ZpbmcgZGlyZWN0b3J5CgoyMDA1LTA3LTEyIDEyOjQwICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvY21jdXJsL0NNYWtlTGlzdHMudHh0OiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDA1LTA3LTEyIDEyOjMxICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQlVHOiBHbyBiYWNrIHRvIHRoZSBvcmlnaW5hbAoJICBkaXJlY3RvcnkgYWZ0ZXIgZXhhbWluaW5nIHRoZSBjdXJyZW50IGRpcmVjdG9yeQoKMjAwNS0wNy0xMiAxMjozMCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IEJVRzogTWFrZSBzdXJlIGl0IGFsd2F5cwoJICBzdGFydHMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoZW4gc2VhcmNoaW5nIGZvciB0ZXN0cwoKMjAwNS0wNy0xMiAxMDozOSAgYW5keQoKCSogU291cmNlLzoga3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBDVGVzdC9jbUNUZXN0RW1wdHlCaW5hcnlEaXJlY3RvcnlDb21tYW5kLmN4eDogQlVHOiBXaGVuIHJlbW92aW5nCgkgIGRpcmVjdG9yeSwgdXNlIGxzdGF0IGluc3RlYWQgb2Ygc3RhdCB0byBtYWtlIHN1cmUgdGhhdCBzeW1saW5rcwoJICBhcmUgdHJlYXRlZCBhcyBmaWxlcyBhbmQgbm90IGFzIGRpcmVjdG9yaWVzCgoyMDA1LTA3LTEyIDEwOjI1ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfU3VuT1M6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDUtMDctMTIgMTA6MDggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19TdW5PUzogW25vIGxvZyBtZXNzYWdlXQoKMjAwNS0wNy0xMiAwOTozNiAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0hQLVVYOiB1c2UgZ21ha2UKCjIwMDUtMDctMTIgMDg6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBGaXggcHJvYmxlbSB3aXRoIHZpc3VhbCBzdHVkaW8gaW4KCSAgcmVsZWFzZSBtb2RlCgoyMDA1LTA3LTEyIDAzOjEwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMTEgMTg6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggZnJvbSBtYWluIHRyZWUKCjIwMDUtMDctMTEgMTg6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgY3Vyc2VzIGluY2x1ZGUKCSAgZGlyZWN0b3J5CgoyMDA1LTA3LTExIDE3OjU4ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfRGFyd2luOiB0dXJuIG9mZiB3eCBkaWFsb2cgZm9yIG5vdwoKMjAwNS0wNy0xMSAxNzoxNSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogZ2V0IHRoZSBjb3JyZWN0IHZlcnNpb24KCjIwMDUtMDctMTEgMTc6MTEgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY21ha2VfcmVsZWFzZS5zaC5pbiwKCSAgY29uZmlnX0NZR1dJTl9OVC01LjEsIGNvbmZpZ19JUklYNjQsIGNvbmZpZ19MaW51eCwKCSAgY3lnd2luLXBhY2thZ2Uuc2guaW4sIHJlbGVhc2VfZGlzcGF0Y2guc2gsIFJFQURNRTogRU5IOiBtZXJnZQoJICBjaGFuZ2VzIGZyb20gYnJhbmNoZXMKCjIwMDUtMDctMTEgMTY6NTcgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfZGlzcGF0Y2guc2g6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDUtMDctMTEgMTY6MDkgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY21ha2VfcmVsZWFzZS5zaC5pbiwKCSAgY29uZmlnX0NZR1dJTl9OVC01LjEsIGNvbmZpZ19JUklYNjQsIGN5Z3dpbi1wYWNrYWdlLnNoLmluLAoJICByZWxlYXNlX2Rpc3BhdGNoLnNoOiBtb3ZlIHN0dWZmIGZyb20gMi4wIG92ZXIgdG8gMi4yCgoyMDA1LTA3LTExIDE1OjIxICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfTGludXg6IG1vdmUgY29uZmlnIGxpbml4IHRvIDIuMiBicmFuY2gKCjIwMDUtMDctMTEgMTU6MTEgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfZGlzcGF0Y2guc2g6IGNoYW5nZSB0byBtdXNlCgoyMDA1LTA3LTExIDE1OjA1ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2Rpc3BhdGNoLnNoOiBFTkg6IGFkZCBmcm9tIEhFQUQKCjIwMDUtMDctMTEgMTU6MDQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfZGlzcGF0Y2guc2g6IGFkZCBmcm9tIGJyYW5jaAoKMjAwNS0wNy0xMSAxNDo1NSAgbWFydGluawoKCSogQ2hhbmdlTG9nLm1hbnVhbDogRU5IOiBjb21taXQgc29tZSBjaGFuZ2UgbG9ncwoKMjAwNS0wNy0xMSAxNDo1NCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1BsdWdpbkFQSS5oLCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoLmluOiBFTkg6IGZpeCB1cCBzb21lIHZlcnNpb24KCSAgc3R1ZmYKCjIwMDUtMDctMTEgMTI6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogcHJvdmlkZSBkZWZhdWx0CgkgIHVwZGF0ZSBvcHRpb25zIGlmIG5vbmUgd2VyZSBwcm92aWRlZAoKMjAwNS0wNy0xMSAxMTo1OSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDogRU5IOiBBZGQgZGVmYXVsdCB1cGRhdGUKCSAgb3B0aW9ucwoKMjAwNS0wNy0xMSAxMTozNyAgbWFydGluawoKCSogQ2hhbmdlTG9nLm1hbnVhbDogRU5IOiBhZGRlZCBDaGFuZ2VMb2cgYXMgaW4gcHJpb3IgcmVsZWFzZQoKMjAwNS0wNy0xMSAxMTozNiAgbWFydGluawoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiBFTkg6IG1lcmdlIGZyb20gdGhlIG1haW4KCSAgdHJlZSB0byBoYW5kbGUgcmVsYXRpdmUgZmlsZXMKCjIwMDUtMDctMTEgMTE6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogbWVyZ2VkIGZyb20gQ1ZTIGZpeAoJICBmb3IgU05WIHdhcm5pbmcKCjIwMDUtMDctMTEgMTE6MTYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEJVRzogUmVtb3ZlIHdhcm5pbmcgd2hlbgoJICB1c2luZyBDVlMKCjIwMDUtMDctMTEgMDM6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0xMCAwMzowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTA5IDAzOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMDggMTE6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eDogRU5IOiBzbGlnaHRseSBtb2RpZmllZAoJICB2ZXJzaW9uIG9mIEFsZXgncyByZWxhdGl2ZSBwYXRoIGFyZ3VtZW50cyBmb3IgY3VzdG9tIGNvbW1hbmRzCgoyMDA1LTA3LTA4IDEwOjEzICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IHJlbGVhc2UgY29tbWl0CgoyMDA1LTA3LTA4IDEwOjAwICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiByZXYgdG8gMjIKCjIwMDUtMDctMDggMDk6NTUgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IHVwZGF0ZSByZXYgdG8gMjMKCjIwMDUtMDctMDggMDk6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5yYzogRU5IOiBtaW5vciB2ZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0wOCAwOTowNSAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IENPTVA6IEZpeGVkIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuCgoyMDA1LTA3LTA4IDAzOjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMDcgMTY6MDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogRU5IOiBjb25maWd1cmUgZmlsZSB3aWxsCgkgIGFzc3VtZSBzdGFydCBzb3VyY2UgZGlyIGlmIGEgZnVsbCBwYXRoIGlzIG5vdCBwcm92aWRlZAoKMjAwNS0wNy0wNyAxNTowNiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IGxpYnJhcnkgcmV0dXJuIHZhbHVlcyB3ZXJlIG5vdCBVTklYCgkgIHNsYXNoZXMgb24gV2luOTgKCjIwMDUtMDctMDcgMTM6NTUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4OiBCVUc6IG1vciBlbWlzc2luZyBjb252ZXJ0IHRvIHVuaXgKCSAgc2xhc2hlcwoKMjAwNS0wNy0wNyAxMTo0NCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBjbGVhbmVkIHVwIHNvbWUgb2xkCgkgIG1ldGhvZHMgYW5kIHZhcnMKCjIwMDUtMDctMDcgMTA6MjEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogUmVtb3ZpbmcKCSAgQ01BS0VfSElERV9UQVJHRVRfRElSUyBzaW5jZSBpdCBoYXMgYmVlbiBzdXBlcmNlZGVkIGJ5CgkgIENNQUtFX1RBUkdFVF9ESVJfUFJFRklYLgoKMjAwNS0wNy0wNyAxMDoxNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBBZGRlZCB1c2Ugb2YKCSAgQ01BS0VfVEFSR0VUX0RJUl9QUkVGSVggdmFyaWFibGUgdG8gcHJlcGVuZCBhIHByb2plY3Qtc3BlY2lmaWVkCgkgIHN0cmluZyB0byB0aGUgbmFtZXMgb2YgYWxsIHRoZSB0YXJnZXQtbmFtZS5kaXIgZGlyZWN0b3JpZXMuCgoyMDA1LTA3LTA3IDEwOjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGFkZGVkIGFiaWxpdHkgdG8KCSAgcHJlZml4IHRhcmdldCBkaXJlY3RvcmllcyB3aXRoIGEgLiB0byBtYWtlIHRoZW0gbm90IHNob3cgdXAgaW4KCSAgbHMuIEZyb20gcGF0Y2ggZnJvbSBBbGV4CgoyMDA1LTA3LTA3IDA5OjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IHdpbjk1IHJldHVybmluZyBub24gdW5peCBwYXRoIGZvciBjbWFrZQoJICBjb21tYW5kCgoyMDA1LTA3LTA3IDA5OjA2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBFeHRlbmRlZCB0ZXN0IDAgdG8gcnVuIHRoZQoJICBleGVjdXRhYmxlIHR3aWNlIHVzaW5nIHRoZSBzYW1lIHByb2Nlc3Mgb2JqZWN0LiAgVGhpcyB0ZXN0cyB0aGUKCSAgcmV1c2FiaWxpdHkgb2YgdGhlIG9iamVjdHMuCgoyMDA1LTA3LTA3IDA5OjA1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEJVRzogRml4ZWQgcmV1c2FiaWxpdHkgb2YgcHJvY2VzcwoJICBvYmplY3QgYnkgY2xlYXJpbmcgZWFjaCBwaXBlJ3MgQ2xvc2VkIGZsYWcgd2hlbiBjbGVhbmluZyB1cC4KCjIwMDUtMDctMDcgMDM6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0wNiAxNjoxNiAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBCVUc6IGZpeCBmb3IgYm9vdHN0cmFwIHByb2JsZW0KCjIwMDUtMDctMDYgMTU6NTEgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21GaWxlQ29tbWFuZC5jeHgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHg6IFNUWUxFOiBGaXggdHlwb3MKCjIwMDUtMDctMDYgMTU6NDkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDUtMDctMDYgMTU6MjcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IEVOSDogSW1wcm92ZSBzdXBwb3J0IGZvciB2YXJpb3VzCgkgIHZlcnNpb25zIG9mIGdjb3YKCjIwMDUtMDctMDYgMTU6MjUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogUmVwbGFjZSB3aXRoIHRoZSBvbmUgZnJvbSBJbnNpZ2h0QXBwCgoyMDA1LTA3LTA2IDE1OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eDogQlVHOiBwcm9qZWN0IGNvbW1hbmQgc2hvdWxkIGFsc28gd29yawoJICB3aXRoIGxvd2VyIGNhc2UKCjIwMDUtMDctMDYgMTU6MjQgIG1hcnRpbmsKCgkqIFRlc3RzL1NpbXBsZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBtaW5vciBmaXggdG8gcHJvamVjdCBuYW1lIHRvCgkgIG1hdGNoIEFERF9URVNUIGNhbGwKCjIwMDUtMDctMDYgMTU6MTEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHg6IEJVRzogT24gd2luZG93cyB0aGVyZSBjYW4KCSAgYmUgYSBwcm9ibGVtIGJlY2F1c2Ugc2NwIGRvZXMgbm90IGhhbmRsZSBkcml2ZSBuYW1lcy4gVGhpcyB1c2VzCgkgIHJlbGF0aXZlIHBhdGggZm9yIHNjcAoKMjAwNS0wNy0wNiAwMzoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA3LTA1IDE2OjEzICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IE1ha2VSZWxlYXNlLmNtYWtlLmluLCBSZWxlYXNlLmNtYWtlOiBFTkg6IGEKCSAgc3RhcnQgb24gVU5JWCByZWxlYXNlCgoyMDA1LTA3LTA1IDE1OjQzICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9SZWxlYXNlLmNtYWtlOiBFTkg6IGJldHRlciByZWxlYXNlIHN1cHBvcnQKCjIwMDUtMDctMDUgMTI6MzggIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogTWFrZVJlbGVhc2UuY21ha2UuaW4sIFJlbGVhc2UuY21ha2U6IEVOSDoKCSAgYmV0dGVyIHJlbGVhc2Ugc3VwcG9ydAoKMjAwNS0wNy0wNSAxMToxNyAgYW5keQoKCSogTW9kdWxlcy9GaW5kRENNVEsuY21ha2U6IEVOSDogSW1wcm92ZW1lbnRzIGJ5IEp1bGllbgoKMjAwNS0wNy0wNSAxMDowOCAgbWFydGluawoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eDogRU5IOiByZXZlcnQgYmFjayB0byBzdHJpbmcgcmVwbGFjZW1lbnQKCSAgdmVyc2lvbgoKMjAwNS0wNy0wNSAwOToyMSAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiB1dGlsIHRhcmdldHMgbm93CgkgIHNob3cgdXAgaW4gbG9jbGEgbWFrZWZpbGUgYW5kIG1ha2UgcmVidWlsZF9jYWNoZSBub3cgd29ya3MgaW4KCSAgc3ViZGlycwoKMjAwNS0wNy0wNSAwOTowMCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgZGVidWcgb3B0aW1pemVkIGxpbmsKCSAgbGlicmFyaWVzCgoyMDA1LTA3LTA1IDAzOjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMDQgMDM6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNy0wMyAxMjowNiAgYW5keQoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBPbmx5IHRydW5jYXRlIGZpbGVzIHdoZW4gbm90IGluIHRyeQoJICBjb21waWxlLiBBbHNvbSBtb3ZlIHRydW5jYXRpbmcgY29kZSBjbG9zZXIgdG8gY29uZmlndXJlCgoyMDA1LTA3LTAzIDAzOjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMDIgMjI6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBJbXByb3ZlIHBlcmZvcm1hbmNlIG9mIE1ha2VYTUxTYWZlLAoJICBpbXByb3ZlIHBlcmZvcm1hbmNlIG9mIHJlYWRpbmcgY3VzdG9tIGN0ZXN0IGZpbGVzLCBhbmQgcmVtb3ZlCgkgIGVycm9yIHdoZW4gcnVubmluZyBjdGVzdCBvbiBkaXJlY3Rvcnkgd2l0aG91dAoJICBEYXJ0Q29uZmlndXJhdGlvbi50Y2wKCjIwMDUtMDctMDIgMjI6MzIgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eDogU1RZTEU6IFVuaWZ5IG51bWJlciBvZgoJICBzcGFjZXMKCjIwMDUtMDctMDIgMjI6MzEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiBJbXByb3ZlIHBlcmZvcm1hbmNlIGJ5CgkgIGNvbXBpbGluZyByZWd1bGFyIGV4cHJlc3Npb25zIHdoZW4gbmVlZGVkCgoyMDA1LTA3LTAyIDIyOjMwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBjbUNUZXN0VGVzdEhhbmRsZXIuaDogRU5IOgoJICBJbXByb3ZlIHBlcmZvcm1hbmNlIG9mIHRlc3RpbmcgYW5kIGRvIG5vdCBjb21wbGFpbiBpZgoJICBEYXJ0VGVzdGZpbGUudHh0IGlzIG5vdCBmb3VuZCBvciBpZiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QKCjIwMDUtMDctMDIgMjI6MjUgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOiBTdGFydCBhZGRpbmcgdGhlIGNvZGUgdGhhdCB3aWxsCgkgIHRydW5jYXRlIG91dHB1dCBsb2dzCgoyMDA1LTA3LTAyIDAxOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDctMDEgMTA6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsIGNtVGFyZ2V0LmN4eDogRU5IOiBhZGRlZAoJICBBbGV4YW5kZXIncyB0YXJnZXQgcHJvcGVydHkgVFlQRQoKMjAwNS0wNy0wMSAxMDoyMyAgbWFydGluawoKCSogU291cmNlLzogY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldERpcmVjdG9yeVByb3BlcnR5Q29tbWFuZC5oOiBFTkg6IGFkZGVkIHBhdGNoIGZyb20gQWxleGFuZGVyCgkgIE5ldW5kb3JmIHRvIGdldCBERUZJTklUSU9OUwoKMjAwNS0wNi0zMCAxNTo1NCAgam9yZ2IKCgkqIFNvdXJjZS9XWERpYWxvZy9iaW4vOiBGaW5kVVBYLmNtYWtlLCBGaW5kd3hXLmNtYWtlLAoJICBGaW5kd3hXaW4uY21ha2UsIFVzZXd4Vy5jbWFrZTogaW5pdGlhbCBjaGVja2luIGZvciBiaW4gZGlyCgoyMDA1LTA2LTMwIDE1OjU0ICBqb3JnYgoKCSogU291cmNlL1dYRGlhbG9nLzogQ01ha2VJY29uLnhwbSwgQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAuY3BwLAoJICBDTWFrZVNldHVwLmgsIENNYWtlU2V0dXAucGpkLCBDTWFrZVNldHVwLnJjLCBDTWFrZVNldHVwRnJhbWUuY3BwLAoJICBDTWFrZVNldHVwRnJhbWUuaCwgQ29tbWFuZExpbmVJbmZvLmNwcCwgQ29tbWFuZExpbmVJbmZvLmgsCgkgIE5HRGlhbG9nLmV4ZS5tYW5pZmVzdCwgTkdEaWFsb2cuaWNvLCBQcm9wZXJ0eUxpc3QuY3BwLAoJICBQcm9wZXJ0eUxpc3QuaCwgYWJvdXQuaHRtbCwgYWJvdXRkbGcuY3BwLCBhYm91dGRsZy5oLAoJICBhcHBfcmVzb3VyY2VzLmNwcCwgYXBwX3Jlc291cmNlcy5oLCBjaGFuZ2Vsb2cudHh0LAoJICBjbWFrZV9pY29uLmdpZiwgY21ha2VfaWNvbi54cG0sIGNtYWtlX2xvZ28ueHBtLAoJICBjbWFrZXNldHVwLmRvbmUueG1sLCBjbWFrZXNldHVwLnhtbCwgY29uZmlnLmgsIG9wdGlvbnNkbGcuY3BwLAoJICBvcHRpb25zZGxnLmgsIHByb2dyZXNzZGxnLmNwcCwgcHJvZ3Jlc3NkbGcuaDogSW5pdGlhbCBjaGVja2luIG5ldwoJICB3eCBkaWFsb2cKCjIwMDUtMDYtMzAgMTU6NTIgIGpvcmdiCgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBDTWFrZUljb24uZ2lmLCBDTWFrZUljb24uaWNucywgQ01ha2VJY29uLnhwbSwKCSAgQ01ha2VMaXN0cy50eHQsIFJlYWRNZS5NYWMudHh0LCBjbVdYQ2FjaGVQcm9wZXJ0eS5jeHgsCgkgIGNtV1hDYWNoZVByb3BlcnR5LmgsIGNtV1hDb21tYW5kTGluZUluZm8uY3h4LAoJICBjbVdYQ29tbWFuZExpbmVJbmZvLmgsIGNtV1hNYWluRnJhbWUuY3h4LCBjbVdYTWFpbkZyYW1lLmgsCgkgIHd4Q01ha2VTZXR1cC5jeHgsIHd4aW5jbHVkZXMuaDogZGVsZXRlZCBvbGQgd3gtZGlhbG9nCgoyMDA1LTA2LTMwIDEzOjM5ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogYWRkZWQgdGVzdGluZwoJICBvZiB0aGUgV0hJTEUgY29tbWFuZAoKMjAwNS0wNi0zMCAxMzozOSAgbWFydGluawoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBFTkg6IGFkZGVkIHdoaWxlIGNvbW1hbmQKCjIwMDUtMDYtMzAgMTM6MjcgIG1hcnRpbmsKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogRU5IOiBhZGRlZCB3aGlsZSBjb21tYW5kCgoyMDA1LTA2LTMwIDEzOjA5ICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IENNYWtlLm5zaS5pbiwgTWFrZVJlbGVhc2UuY21ha2UuaW4sCgkgIFJlbGVhc2UuY21ha2UsIFdpbjMyUmVsZWFzZS5zaC5pbjogRU5IOiBiZXR0ZXIgcmVsZWFzZSBzY3JpcHRzCgoyMDA1LTA2LTMwIDExOjMzICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9SZWxlYXNlLmNtYWtlOiBFTkg6IGhhcmQgY29kZWQgZm9yIFZTIDcxIG5tYWtlCgkgIGZvciBub3cKCjIwMDUtMDYtMzAgMTE6MTggIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHOiBGaXhlZCBlc2NhcGVkIHF1b3RlIGF0CgkgIGVuZCBvZiAuCgoyMDA1LTA2LTMwIDA5OjUzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogYWRkZWQgbG9jYWwgaGVscCBhbmQKCSAgaW5zdGFsbCB0YXJnZXRzCgoyMDA1LTA2LTMwIDA5OjIxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQmFzZTY0LmM6IEJVRzogRG8gbm90IGluY3JlbWVudCBvcHRyIGJ5IDIgYWZ0ZXIKCSAgc3RvcmluZyBvbmx5IG9uZSBjaGFyYWN0ZXIuICBBbHNvIGZpeGVkIHBvc3NpYmlsaXR5IG9mIHN0b3JpbmcKCSAgdW5pbml0aWFsaXplZCBjaGFyYWN0ZXJzIGZyb20gdGhlIGxhc3QgdHJpcGxldC4KCjIwMDUtMDYtMzAgMDU6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0yOSAxMjowNyAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IE5lZWQgdG8gdXNlIHRoZSAtYwoJICBvcHRpb24gZm9yIGltcGxpYiB0byBwcm9kdWNlIGNhc2Utc2Vuc2l0aXZlIHN5bWJvbHMgaW4gdGhlIC5saWIKCSAgZmlsZXMuCgoyMDA1LTA2LTI5IDA4OjQ2ICBtYXJ0aW5rCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogQ09NUDogc2h1dCB1cCB3YXJuaW5nCgoyMDA1LTA2LTI5IDA1OjQ5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMjggMTU6MDAgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogQ01ha2UubnNpLmluLCBDTWFrZUluc3RhbGwuYm1wOiBFTkg6IGFkZGVkCgkgIG91ciBvd24gYml0bWFwCgoyMDA1LTA2LTI4IDEwOjU1ICBtYXJ0aW5rCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9DTWFrZS5uc2kuaW4sCgkgIFV0aWxpdGllcy9SZWxlYXNlL1dpbjMyUmVsZWFzZS5zaC5pbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaC5pbiwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvUmVsZWFzZS5jbWFrZSwgQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkZWQgc29tZQoJICByZWxlYXNlIHN1cHBvcnQKCjIwMDUtMDYtMjggMDU6NDUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0yNyAxNTo1OSAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IGRvbnQgcGFzcyB1bnZlcmlmaWVkIGNoYXIgKiB0bwoJICBzdHJlYW1zCgoyMDA1LTA2LTI3IDEyOjQ1ICBtYXJ0aW5rCgoJKiBUZXN0cy9TaW1wbGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogY29udmVydCB0byBsb3dlciBjYXNlCgoyMDA1LTA2LTI3IDEyOjQ0ICBtYXJ0aW5rCgoJKiBFeGFtcGxlLzogQ01ha2VMaXN0cy50eHQsIERlbW8vQ01ha2VMaXN0cy50eHQsCgkgIEhlbGxvL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVwZHRlIHRvIGxvd2VyIGNhc2UgYW5kIHVzaW5nCgkgIEFERF9TVUJESVJFQ1RPUlkKCjIwMDUtMDYtMjcgMTE6MzkgIG1hcnRpbmsKCgkqIENUZXN0Q3VzdG9tLmN0ZXN0LmluOiBFTkg6IG1vZHMgdG8gd2FybmluZyBleGNsdWRlcyBiYXNlZCBvbiBuZXcKCSAgbG9jYWl0b24gb2YgY3VybAoKMjAwNS0wNi0yNyAwNTo1MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTI2IDA1OjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMjUgMDU6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0yNCAxMzoyOSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogQlVHOiBFeGl0IHByb3Blcmx5IG9uIFNDUAoJICBzdWJtaXNzaW9uCgoyMDA1LTA2LTI0IDA5OjQxICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZ3MKCjIwMDUtMDYtMjQgMDk6MDYgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19jdXJsX3RyYW5zcG9ydC5jOiBFTkg6IE1vdmUgY3VybCB0bwoJICB1dGlsaXRpZXMKCjIwMDUtMDYtMjQgMDk6MDAgIGFuZHkKCgkqIFV0aWxpdGllcy9jbWN1cmwvOiBhbWlnYW9zLmMsIGFtaWdhb3MuaCwgYXJwYV90ZWxuZXQuaCwgYmFzZTY0LmMsCgkgIGJhc2U2NC5oLCBjYS1idW5kbGUuaCwgY29ubmVjdC5jLCBjb25uZWN0LmgsIGNvbnRlbnRfZW5jb2RpbmcuYywKCSAgY29udGVudF9lbmNvZGluZy5oLCBjb29raWUuYywgY29va2llLmgsIGN1cmxfbWVtb3J5LmgsIGN1cmx4LmgsCgkgIGRpY3QuYywgZGljdC5oLCBlYXN5LmMsIGVzY2FwZS5jLCBlc2NhcGUuaCwgZmlsZS5jLCBmaWxlLmgsCgkgIGZvcm1kYXRhLmMsIGZvcm1kYXRhLmgsIGZ0cC5jLCBmdHAuaCwgZ2V0ZGF0ZS5jLCBnZXRkYXRlLmgsCgkgIGdldGVudi5jLCBnZXRpbmZvLmMsIGdldGluZm8uaCwgaGFzaC5jLCBoYXNoLmgsIGhvc3RhcmVzLmMsCgkgIGhvc3Rhc3luLmMsIGhvc3RpcC5jLCBob3N0aXAuaCwgaG9zdGlwNC5jLCBob3N0aXA2LmMsIGhvc3RzeW4uYywKCSAgaG9zdHRocmUuYywgaHR0cC5jLCBodHRwLmgsIGh0dHBfY2h1bmtzLmMsIGh0dHBfY2h1bmtzLmgsCgkgIGh0dHBfZGlnZXN0LmMsIGh0dHBfZGlnZXN0LmgsIGh0dHBfbmVnb3RpYXRlLmMsIGh0dHBfbmVnb3RpYXRlLmgsCgkgIGh0dHBfbnRsbS5jLCBodHRwX250bG0uaCwgaWYyaXAuYywgaWYyaXAuaCwgaW5ldF9udG9hX3IuaCwKCSAgaW5ldF9udG9wLmMsIGluZXRfbnRvcC5oLCBpbmV0X3B0b24uYywgaW5ldF9wdG9uLmgsIGtyYjQuYywKCSAga3JiNC5oLCBsZGFwLmMsIGxkYXAuaCwgbGxpc3QuYywgbGxpc3QuaCwgbWQ1LmMsIG1kNS5oLAoJICBtZW1kZWJ1Zy5jLCBtZW1kZWJ1Zy5oLCBtcHJpbnRmLmMsIG11bHRpLmMsIG5ldHJjLmMsIG5ldHJjLmgsCgkgIG53bGliLmMsIHByb2dyZXNzLmMsIHByb2dyZXNzLmgsIHNlY3VyaXR5LmMsIHNlY3VyaXR5LmgsIHNlbmRmLmMsCgkgIHNlbmRmLmgsIHNldHVwLmgsIHNoYXJlLmMsIHNoYXJlLmgsIHNwZWVkY2hlY2suYywgc3BlZWRjaGVjay5oLAoJICBzc2x1c2UuYywgc3NsdXNlLmgsIHN0cmVxdWFsLmMsIHN0cmVxdWFsLmgsIHN0cmVycm9yLmMsCgkgIHN0cmVycm9yLmgsIHN0cnRvay5jLCBzdHJ0b2suaCwgc3RydG9vZmZ0LmMsIHN0cnRvb2ZmdC5oLAoJICB0ZWxuZXQuYywgdGVsbmV0LmgsIHRpbWV2YWwuYywgdGltZXZhbC5oLCB0cmFuc2Zlci5jLCB0cmFuc2Zlci5oLAoJICB1cmwuYywgdXJsLmgsIHVybGRhdGEuaCwgdmVyc2lvbi5jLCBDTWFrZUxpc3RzLnR4dCwgY29uZmlnLmguaW4sCgkgIGN1cmwuY29weXJpZ2h0LCBDTWFrZS9DaGVja1R5cGVTaXplLmMuaW4sCgkgIENNYWtlL0NoZWNrVHlwZVNpemUuY21ha2UsIENNYWtlL0N1cmxUZXN0cy5jLAoJICBQbGF0Zm9ybXMvV2luZG93c0NhY2hlLmNtYWtlLCBQbGF0Zm9ybXMvY29uZmlnLWFpeC5oLAoJICBUZXN0aW5nL0NNYWtlTGlzdHMudHh0LCBUZXN0aW5nL2N1cmxndGsuYywgVGVzdGluZy9jdXJsdGVzdC5jLAoJICBUZXN0aW5nL2Z0cGdldC5jLCBUZXN0aW5nL2Z0cGdldHJlc3AuYywgVGVzdGluZy9mdHB1cGxvYWQuYywKCSAgVGVzdGluZy9nZXRpbm1lbW9yeS5jLCBUZXN0aW5nL2h0dHAtcG9zdC5jLCBUZXN0aW5nL2h0dHBwdXQuYywKCSAgVGVzdGluZy9tdWx0aXRocmVhZC5jLCBUZXN0aW5nL3BlcnNpc3RhbnQuYywgVGVzdGluZy9wb3N0aXQyLmMsCgkgIFRlc3Rpbmcvc2VwaGVhZGVycy5jLCBUZXN0aW5nL3NpbXBsZS5jLCBUZXN0aW5nL3NpbXBsZXNzbC5jLAoJICBUZXN0aW5nL3Rlc3Rjb25maWcuaC5pbiwgVGVzdGluZy93aW4zMnNvY2tldHMuYywgY3VybC9jdXJsLmgsCgkgIGN1cmwvY3VybHZlci5oLCBjdXJsL2Vhc3kuaCwgY3VybC9tcHJpbnRmLmgsIGN1cmwvbXVsdGkuaCwKCSAgY3VybC9zdGRjaGVhZGVycy5oLCBjdXJsL3R5cGVzLmg6IEVOSDogSW5pdGlhbCBpbXBvcnQKCjIwMDUtMDYtMjQgMDU6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0yMyAxNjowNiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogRU5IOiBNYWtlIGl0ZXJhdG9ycyBjb25zdAoKMjAwNS0wNi0yMyAxMzowNyAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBFTkg6IFBlcmZvcm0gc2Vjb25kIHRlc3QgaWYKCSAgc3VidmVyc2lvbiBleGlzdHMKCjIwMDUtMDYtMjMgMTM6MDQgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLAoJICBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q29uZmlndXJlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdEhhbmRsZXJDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdEhhbmRsZXJDb21tYW5kLmgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0NvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tDb21tYW5kLmgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXRDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5oLCBDVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsCgkgIGt3c3lzL0NUZXN0Q29uZmlnLmNtYWtlOiBFTkg6IFNldmVyYWwgaW1wcm92ZW1lbnRzIHdpdGggdGhlIHdheQoJICB0aGluZ3MgYXJlIGhhbmRsZWQuIEFsc28sIHN1cHBvcnQgbXVsdGlwbGUgc3VibWl0ZWQgZmlsZXMKCjIwMDUtMDYtMjMgMTI6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IENPTVA6IGZpeCBjb21waWxlciB3YXJuaW5ncwoKMjAwNS0wNi0yMyAxMTowMyAgbWFydGluawoKCSogU291cmNlLzogY21Gb3JFYWNoQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmN4eCwKCSAgY21NYWNyb0NvbW1hbmQuY3h4LCBjbVdoaWxlQ29tbWFuZC5jeHg6IEVOSDogY29udmVydGVkIG1hY3JvIHRvCgkgIHVzZSB2YXJpYWJsZXMgYW5kIGZpeGVkIHNvbWUgY2FzZSBpc3N1ZXMgd2l0aCBzb21lIGZ1bmN0aW9uCgkgIGJsb2NrZXJzCgoyMDA1LTA2LTIzIDEwOjI1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvaGFzaHRhYmxlLmh4eC5pbjogRU5IOiBBZGRlZCBzb21lIHNtYWxsZXIgcHJpbWVzIHRvCgkgIGFsbG93IHNtYWxsIGhhc2ggdGFibGUgc2l6ZXMgYW5kIHRoZXJlZm9yZSBzaG9ydGVyIGluaXRpYWwKCSAgY29uc3RydWN0aW9uIHRpbWVzLgoKMjAwNS0wNi0yMyAwNTo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTIyIDE0OjIwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5oOiBTVFlMRTogdXBkYXRlZCB0aGUgZG9jcyB0byBiZSBtb3JlCgkgIGFjY3VyYXRlCgoyMDA1LTA2LTIyIDE0OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5jeHg6IENPTVA6IGZpeCBwb3NzaWJsZSBwb3JvYmxlbSB3aXRoCgkgIGZyZWVkIG1lbW9yeQoKMjAwNS0wNi0yMiAxNDowNCAgbWFydGluawoKCSogU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4OiBDT01QOiBmaXggdW51c2VkIHZhcmlhYmxlCgoyMDA1LTA2LTIyIDEzOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5jeHg6IEVOSDogY2hhbmdlZCBGT1JFQUNIIHRvIHVzZQoJICB2YXJpYWJsZXMgaW5zdGVhZCBvZiBzdHJpbmcgcmVwbGFjZW1lbnQKCjIwMDUtMDYtMjIgMTA6NTQgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBCVUc6IEZpeCBkaXNwbGF5aW5nIG9mCgkgIHBlcmNlbnRhZ2UKCjIwMDUtMDYtMjIgMTA6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogY2xlYW4gcnVsZSB3YXNuJ3QKCSAgY2xlYW5pbmcgbGlicyBhbmQgZXhlY3V0YWJsZXMKCjIwMDUtMDYtMjIgMDk6MTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogc29tZSBiZXR0ZXIgY2hlY2tzCgoyMDA1LTA2LTIyIDA5OjA2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oLCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbU1ha2VEZXBlbmQuY3h4LAoJICBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHgsIGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwKCSAgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6IG1ha2UgTE9DQVRJT04gYW4gY29tcHV0ZWQgcHJvcGVydHkKCSAgb2YgdGhlIHRhcmdldCBhbmQgZ2V0IHJpZCBvZiBhIGJ1bmNoIG9mIGNvbnN0IGp1bmsKCjIwMDUtMDYtMjIgMDU6NDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0yMSAxNjo0NCAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eDogRU5IOiBSZW1vdmUgc3RyYXkgYWJvcnQKCjIwMDUtMDYtMjEgMTY6MjkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBmaXggZm9yIEJTRCBtYWtlcyBubwoJICBsb25nZXIgdXNlIGRpciBuYW1lIGFzIGEgdGFyZ2V0CgoyMDA1LTA2LTIxIDE0OjIwICBraW5nCgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDogQlVHOiBGaXhlZCBlcnJvciBtZXNzYWdlIGZvcm1hdHRpbmcKCSAgd2hlbiB0cnkgcnVuIGV4ZWN1dGFibGUgY29tbWFuZCBjYW5ub3QgYmUgZm91bmQuCgoyMDA1LTA2LTIxIDExOjAxICBhbmR5CgoJKiBTb3VyY2UvY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4OiBCVUc6IEZpeCBlc2NhcGluZyB0bwoJICBtYWtlIE9TWCB3b3JrIGFnYWluCgoyMDA1LTA2LTIxIDEwOjMzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogQlVHOiBVc2Ugc2xlZXAoMSkgaW5zdGVhZCBvZgoJICB1c2xlZXAoMTAwMDAwMCkgYmVjYXVzZSBzb21lIFVOSVggc3lzdGVtcyBzcGVjaWZ5IHRoYXQgdGhlCgkgIGFyZ3VtZW50IHRvIHVzbGVlcCBtdXN0IGJlIGxlc3MgdGhhbiAxMDAwMDAwLgoKMjAwNS0wNi0yMSAwOTozNCAgbWFydGluawoKCSogU291cmNlLzogY21DdXN0b21Db21tYW5kLmN4eCwgY21DdXN0b21Db21tYW5kLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBhZGQgdGVzdCB0byBtYWtlIHN1cmUKCSAgY3VzdG9tIGNvbW1hbmRzIGFyZSB1c2VkCgoyMDA1LTA2LTIxIDA1OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMjAgMTc6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBJbml0aWFsaXplIGhhbmRsZXIgYmVmb3JlIHByb2Nlc3NpbmcgaXQKCjIwMDUtMDYtMjAgMTc6MzcgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvLk5vRGFydENvdmVyYWdlOiBFTkg6IFVudGlsIHRoZXJlIGlzIHNvbWUKCSAgdGVzdCBmb3IgY3Vyc2VzIGRpYWxvZywgbm8gbmVlZCB0byBkbyBjb3ZlcmFnZQoKMjAwNS0wNi0yMCAxNjozMSAgbWFydGluawoKCSogTW9kdWxlcy86IERhcnQuY21ha2UsIFRlc3RDWFhBY2NlcHRzRmxhZy5jbWFrZSwKCSAgUGxhdGZvcm0vRGFyd2luLmNtYWtlOiBFTkg6IGZpeGVkIHNvbWUgc3BlbGxpbmcgZXJyb3JzCgoyMDA1LTA2LTIwIDE2OjI0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogZ29vZiBpbiBuZXcgZmVhdHVyZSBmaXhlZAoKMjAwNS0wNi0yMCAxNDoxNSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiByZW1vdmVkIHVudXNlZCBmaWxlcwoKMjAwNS0wNi0yMCAxNDowMCAgbWFydGluawoKCSogRG9jcy9DTWFrZTA0LnJ0ZiwgU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogbW9kaWZpZWQgR0VUX1RBUkdFVF9QUk9QRVJUSUVTIHRvCgkgIHdvcmsgd2l0aCBhbGwgdGFyZ2V0cwoKMjAwNS0wNi0yMCAxMzo0OSAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy90ZXN0U3lzdGVtVG9vbHMuY3h4OiBFTkg6IGZpeCB0ZXN0LCBpdCBoYXMgdG8gcmV0dXJuCgkgIGEgdHJ1ZS9mYWxzZSB2YWx1ZSBvdGhlcndpc2UgaXQganVzdCBwYXNzZXMgdGhlIHRlc3QsIGFuZCBhZGQKCSAgdGVzdCBmb3IgRXNjYXBlQ2hhcnMKCjIwMDUtMDYtMjAgMTM6MTAgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBUZXN0QmlnRW5kaWFuLmNtYWtlLCBVc2VTV0lHLmNtYWtlOiBCVUc6IGZpeCBzb21lCgkgIG1pc3NpbmcgcXVvdGVzIGZvciBTVFJFUVVBTCBJRiBzdGF0ZW1lbnRzCgoyMDA1LTA2LTIwIDEyOjU1ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZTogRU5IOiBhZGRlIGRiYWNrIGluCgkgIENNQUtFX1ZFUkJPU0VfTUFLRUZJTEUgdGhhdCB3YXMgYWNjIHJlbW92ZWQKCjIwMDUtMDYtMjAgMTE6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6IEVOSDogQWRkZWQgZG9jdW1lbnRhdGlvbgoJICBvZiBWRVJTSU9OIGFuZCBTT1ZFUlNJT04gcHJvcGVydGllcy4KCjIwMDUtMDYtMjAgMTE6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBFTkg6IG5vIGxvbmdlciB1c2VkCgoyMDA1LTA2LTIwIDExOjQ5ICBtYXJ0aW5rCgoJKiBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dDogQ09NUDogY29udmVydGVkIHRvIGxvd2VyY2FzZSBjb21tYW5kcwoKMjAwNS0wNi0yMCAxMTo0NyAgbWFydGluawoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBFTkg6IHVwZGF0ZWQgZW1hY3MgbW9kZSB0byBpbmNsdWRlIGxvd2VyY2FzZQoJICBjb21tYW5kcyBhbmQgbWlzc2luZyBjb21tYW5kIEVORE1BQ1JPCgoyMDA1LTA2LTIwIDA4OjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogQ09NUDogc2VlIGFib3V0IGZpeGluZwoJICB3YXJuaW5nCgoyMDA1LTA2LTIwIDA3OjQyICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QzL3Rlc3QuY21ha2UuaW46IEVOSDogU2tpcCBzdm4gdGVzdCBmb3Igbm93CgoyMDA1LTA2LTIwIDA1OjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMTkgMDY6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0xOCAwNToyOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTE3IDIzOjE1ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IEZpeCBwcm9ibGVtcyB3aXRoIG9sZCBjbWFrZQoKMjAwNS0wNi0xNyAxNTo1MCAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRMZXhlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuaW4ubCwKCSAgY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oLCBjbUxpc3RGaWxlQ2FjaGUuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBFTkg6IEltcHJvdmUgaGFuZGxpbmcgb2YgZXNjYXBlZAoJICBjaGFyYWN0ZXJzCgoyMDA1LTA2LTE3IDE1OjQ0ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogUGFzcyBjdGVzdCBjb25maWcgdHlwZSB0bwoJICBzdWJwcm9jZXNzZXMKCjIwMDUtMDYtMTcgMTU6NDMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBFTkg6IFBhc3MgY29uZmlndXJhdGlvbiB0eXBlCgkgIHRvIHN1YnByb2Nlc3NlcwoKMjAwNS0wNi0xNyAxNDoxMyAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEVuYWJsaW5nIG5ldyB0ZXN0IDcgb2YgcHJvY2VzcwoJICBleGVjdXRpb24uCgoyMDA1LTA2LTE3IDE0OjA3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzcy5oLmluOiBFTkg6IEFkZGVkIHBvbGxpbmcgZmVhdHVyZSB0bwoJICBkb2N1bWVudGF0aW9uIG9mIFdhaXRGb3JEYXRhLgoKMjAwNS0wNi0xNyAxNDowNSAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IEZpeGVkIHBvbGxpbmcgZmVhdHVyZSBvZgoJICBXYWl0Rm9yRGF0YS4KCjIwMDUtMDYtMTcgMTM6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFTkg6IEFkZGVkIHRlc3QgNyB0byBleHBvc2UgcHJvYmxlbXMKCSAgd2l0aCBwb2xsaW5nIGJ5IFdhaXRGb3JEYXRhLgoKMjAwNS0wNi0xNyAxMzo1NyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogRml4ZWQgcG9sbGluZyBjYXBhYmlsaXR5IG9mCgkgIFdhaXRGb3JEYXRhLgoKMjAwNS0wNi0xNyAxMzoxNCAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBFTkg6IE1ha2UgQ1ZTIG9uZSBuaWdodGx5CgoyMDA1LTA2LTE3IDEzOjA3ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QzL3Rlc3QuY21ha2UuaW46IEVOSDogQWRkIHN1YnZlcnNpb24gdGVzdAoKMjAwNS0wNi0xNyAxMzowNCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY21Db21tYW5kLmgsIGNtT2JqZWN0LmgsCgkgIGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5oOiBFTkg6IEFkZCBzdXBlcmNsYXNzIGZvciBhbGwKCSAgY29tbWFuZHMgYW5kIGhhbmRsZXJzLiBJbXByb3ZlIGhhbmRsZXJzIHRvIGhhdmUgaW5pdGlhbGl6YXRpb24KCSAgY29kZSwgYW5kIHN0YXJ0IGluaXRpYWxpemluZyBjdGVzdCB3aGVuIHN0YXJ0IGlzIGludm9rZWQKCjIwMDUtMDYtMTcgMTE6NDYgIG1hbGF0ZXJyZQoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmh4eC5pbjogRU5IOiBGaXggQnVnICMxOTUwLAoJICBwcm92aWRlIGEgZGlyZWN0IGFjY2VzcyB0byB0aGUgaW5wdXQuIE1pbm9yIGNsZWFudXAgKGNvbnZlbmllbmNlKQoKMjAwNS0wNi0xNyAwOTo0OSAga2luZwoKCSogU291cmNlLzogY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsIGNtTWFrZWZpbGUuaCwgY21WZXJzaW9uLmg6CgkgIEVOSDogRW5hYmxpbmcgYWJpbGl0eSBmb3IgQ01BS0VfTUlOSU1VTV9SRVFVSVJFRCB2ZXJzaW9uIHRvCgkgIGluY2x1ZGUgcGF0Y2ggbGV2ZWwuCVN1Ym1pdHRlZCBieSBBbGV4YW5kZXIgTmV1bmRvcmYuCgoyMDA1LTA2LTE3IDA4OjQ1ICBhbmR5CgoJKiBUZXN0cy9NYWNyb1Rlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogRml4IHRlc3Qgb24gSFAKCjIwMDUtMDYtMTcgMDU6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0xNiAxNjo0MiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogV2hlbiBydW5uaW5nIHRoZSBzYW1lCgkgIGN0ZXN0IGFzIHRoZSBvbmUgd2UgYXJlIHRlc3RpbmcsIG1ha2Ugc3VyZSB0byBydW4gYXMgc2VwYXJhdGUKCSAgcHJvY2VzcwoKMjAwNS0wNi0xNiAxNjozMyAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGQgZXh0cmEgYXJndW1lbnQKCjIwMDUtMDYtMTYgMTY6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eCwgVGVzdHMvQ1Rlc3RUZXN0My90ZXN0LmNtYWtlLmluOiBFTkg6IFJldHVybgoJICBlcnJvciBpZiB0aGVyZSBpcyBhbiBFUlJPUl9NRVNTQUdFLiBBbHNvIGZpeCB0YWcgZm9yIHRoZSB0ZXN0CgoyMDA1LTA2LTE2IDE1OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21Db21tYW5kLmg6IENPTVA6IEZpeCBidWlsZCBlcnJvciBvbiBXaW5kb3dzCgoyMDA1LTA2LTE2IDE0OjU2ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL01hY3JvVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTWFjcm9UZXN0L21hY3JvVGVzdC5jOiBFTkg6IEFkZCB0ZXN0IG9mIG1hY3JvCgoyMDA1LTA2LTE2IDE0OjU2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogQmVmb3JlIHJ1bm5pbmcgY29uZmlncmUsIHJlbW92ZQoJICBhbGwgbWFjcm9zLiBBbHNvLCBiYWNrdXAgdGhlIGNvbW1hbmQgbmFtZXMuIEFsc28sIG1ha2UgY29tbWFuZAoJICBuYW1lcyBjYXNlIGluc2Vuc2l0aXZlCgoyMDA1LTA2LTE2IDE0OjA1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmQuaCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBjbUZMVEtXcmFwVUlDb21tYW5kLmgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5oLAoJICBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLCBjbVZUS1dyYXBKYXZhQ29tbWFuZC5oLAoJICBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsIGNtVlRLV3JhcFRjbENvbW1hbmQuaDogRU5IOiBBZGQKCSAgY2xhc3NuYW1lIHRvIGNvbW1hbmRzCgoyMDA1LTA2LTE2IDEzOjI5ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QzL3Rlc3QuY21ha2UuaW46IEVOSDogSW5pdGlhbCBpbXBvcnQKCjIwMDUtMDYtMTYgMTM6MTggIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0Q29tbWFuZC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eCwKCSAgVGVzdHMvQ1Rlc3RUZXN0Mi90ZXN0LmNtYWtlLmluOiBFTkg6IFNldmVyYWwgaW1wcm92ZW1lbnRzIHRvCgkgIENUZXN0OgoKCSAgMS4gU3VwcG9ydCBmb3Igc2hvd2luZyBsaW5lIG51bWJlcnMgd2hlbiBkZWJ1Z2dpbmcgY3Rlc3QKCSAgLS1zaG93LWxpbmUtbnVtYmVycyAyLiBNb2RpZnkgdGhlIGN0ZXN0IGluaXRpYWxpemF0aW9uIGNvZGUsIHNvCgkgIHRoYXQgaXQgY2FuIGJlIGRlbGF5ZWQgMy4gSGFuZGxlcnMgbm93IGhhdmUgY29ycmVzcG9uZGluZyBjb21tYW5kCgkgIGlmIHRoZXkgd2VyZSBpbnZva2VkIGZyb20gdGhlIGNvbW1hbmQgKHNvIGZhciBvbmx5IHVwZGF0ZQoJICBhY3R1YWxseSB1c2UgdGhhdCkgNC4gU3RhcnQgY29tbWFuZCBpcyBzaW1wbGlmaWVkIGFuZCB0aGUKCSAgZnVuY3Rpb25hbGl0eSBpcyBtb3ZlZCB0byBDVGVzdCA1LiBVcGRhdGUgY2FuIHBlcmZvcm0gaW5pdGlhbAoJICBjaGVja291dCBpZiBDVEVTVF9DSEVDS09VVF9DT01NQU5EIGlzIHNldCA2LiBBZGQgdGVzdCB0aGF0IGNoZWNrcwoJICBvdXQga3dzeXMgYW5kIHBlcmZvcm0gdGVzdHMgb24gdGhlIGZyZXNoIGNoZWNrb3V0CgoyMDA1LTA2LTE2IDExOjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGZpcnN0IGN1dCBhdCBzdXBwb3J0IGZvciBleGUgd2l0aAoJICBzYW1lIG5hbWUgYXMgbGliCgoyMDA1LTA2LTE2IDExOjQ4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogYWRkIGZpcnN0IGN1dCBhdCBzdXBwb3J0CgkgIGZvciBleGUgd2l0aCBzYW1lIG5hbWUgYXMgbGliCgoyMDA1LTA2LTE2IDExOjQ3ICBtYXJ0aW5rCgoJKiBUZXN0cy9TYW1lTmFtZS86IENNYWtlTGlzdHMudHh0LCBFeGUxL0NNYWtlTGlzdHMudHh0LAoJICBFeGUxL2Nvbmx5LmMsIExpYjEvQ01ha2VMaXN0cy50eHQsIExpYjEvbGliYzEuYywgTGliMS9saWJjMS5oOgoJICBFTkg6IGFkZCBzYW1lIG5hbWUgdGVzdAoKMjAwNS0wNi0xNiAxMDoyMyAgbWFydGluawoKCSogU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IHJlcGxhY2UgYnJhY2tldHMgd2l0aCBtb3JlCgkgIGdlbmVyaWMgZmluZAoKMjAwNS0wNi0xNiAxMDoyMiAgbWFydGluawoKCSogU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4OiBFTkg6IG1ha2UgbW9yZSBzcGVjaWZpYyBpbgoJICByZWplY3Qgc2VsZiBsaW5raW5nCgoyMDA1LTA2LTE2IDA1OjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMTUgMTU6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbUNvbW1hbmQuaDogRU5IOiBBZGQgYWNjZXNzb3IgZm9yIE1ha2VmaWxlIGFuZCBtYWtlCgkgIFNldEVycm9yIHB1YmxpYwoKMjAwNS0wNi0xNSAxNToyOSAgaG9mZm1hbgoKCSogQ1Rlc3RDb25maWcuY21ha2U6IEVOSDogYWRkIGZvciB0ZXN0aW5nCgoyMDA1LTA2LTE1IDEwOjU0ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QyL3Rlc3QuY21ha2UuaW46IEJVRzogRml4IHR5cG8KCjIwMDUtMDYtMTUgMTA6NTMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RNZW1DaGVja0NvbW1hbmQuY3h4LAoJICBjbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eDogRU5IOiBQYXNzIGluIG1lbWNoZWNrIGNvbW1hbmQgb3B0aW9ucwoJICBhbmQgc3VwcHJlc2lvbnMsIGFuZCBjaGFuZ2Ugc2tpbiB0byB0b29sCgoyMDA1LTA2LTE1IDEwOjUzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvdmVyYWdlQ29tbWFuZC5jeHg6IEVOSDogSGFuZGxlIHBhc3NpbmcgaW4KCSAgY292ZXJhZ2UgY29tbWFuZAoKMjAwNS0wNi0xNSAwODo1NCAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBsb2dnaW5nIHRvIGltcHJvdmUgY292ZXJhZ2UKCjIwMDUtMDYtMTUgMDU6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0xNCAxNTo1MyAgYW5keQoKCSogVXRpbGl0aWVzLy5Ob0RhcnRDb3ZlcmFnZTogRU5IOiBObyBuZWVkIHRvIGRvIGNvdmVyYWdlIG9mCgkgIHV0aWxpdGllcwoKMjAwNS0wNi0xNCAxNTo0OSAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oOiBFTkg6IE1vcmUgY2xlYW51cHMKCjIwMDUtMDYtMTQgMTQ6MDEgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdDIvdGVzdC5jbWFrZS5pbjogRU5IOiBBbHNvIHBlcmZvcm0gbWVtb3J5IGNoZWNraW5nCgkgIGFuZCBjb3ZlcmFnZQoKMjAwNS0wNi0xNCAxNDowMCAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUNvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VDb21tYW5kLmgsIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0NvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tDb21tYW5kLmgsIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eDoKCSAgRU5IOiBBZGQgY29tbWFuZHMgZm9yIG1lbW9yeSBjaGVja2luZyBhbmQgY292ZXJhZ2UKCjIwMDUtMDYtMTQgMTM6MjIgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuY3h4LCBjbUNvbW1hbmRBcmd1bWVudExleGVyLmluLmw6CgkgIEVOSDogSW1wcm92ZSB2YXJpYWJsZSBuYW1lIHJlZ3VsYXIgZXhwcmVzc2lvbgoKMjAwNS0wNi0xNCAxMjo0OCAgYW5keQoKCSogU291cmNlLzogY21NYWNyb0NvbW1hbmQuY3h4LCBjbWFrZS5jeHgsIGNtYWtlLmg6IEVOSDogU2F2ZQoJICBjb21tYW5kIHRoYXQgbWFjcm8gb3ZlcndyaXRlcwoKMjAwNS0wNi0xNCAxMTo0MiAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDoKCSAgRU5IOiBTZXBhcmF0ZSBzdGFuZGFyZCBvdXRwdXQgYW5kIHN0YW5kYXJkIGVycm9yIGZvciBwcm9ibGVtYXRpYwoJICBjb21tYW5kcwoKMjAwNS0wNi0xNCAwMzowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTEzIDE4OjAzICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogYWRkCgkgIG1ldGhvZCB0byBlc2NhcGUgc29tZSBjaGFycyBpbiBhIHN0cmluZwoKMjAwNS0wNi0xMyAxNDoyOSAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eDogRU5IOiBIYW5kbGUKCSAgbm9uLWV4aXN0aW5nIHZhcmlhYmxlcwoKMjAwNS0wNi0xMyAxMTowMCAgYW5keQoKCSogYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBVc2UKCSAgdGhlIG5ldyBwYXJzZXIgdGhhdCBzdXBwb3J0cyBuZXN0ZWQgdmFyaWFibGVzCgoyMDA1LTA2LTEzIDEwOjI3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLnk6CgkgIEVOSDogTW9yZSBjbGVhbnVwcwoKMjAwNS0wNi0xMyAxMDoxMSAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuY3h4LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5oOiBFTkg6IE1vcmUgb3B0aW1pemF0aW9uCgoyMDA1LTA2LTEzIDEwOjAxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRBcmd1bWVudExleGVyLmN4eCwgY21Db21tYW5kQXJndW1lbnRMZXhlci5oLAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci5jeHgsIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VyVG9rZW5zLmg6CgkgIEVOSDogSW5pdGlhbCBpbXBvcnQKCjIwMDUtMDYtMTMgMTA6MDAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmN4eCwKCSAgY21Db21tYW5kQXJndW1lbnRQYXJzZXJIZWxwZXIuaDogRU5IOiBIYW5kbGUgZXJyb3JzIGFuZCBvcHRpbWl6ZQoJICBhIGJpdAoKMjAwNS0wNi0xMyAxMDowMCAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50TGV4ZXIuaW4ubDogRU5IOiBSZW1vdmUgc29tZSBhbGxvY2F0aW9ucwoKMjAwNS0wNi0xMyAwOTo1OSAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZEFyZ3VtZW50UGFyc2VyLnk6IEVOSDogUmVhcmFuZ2UgYW5kIGNsZWFudXAKCjIwMDUtMDYtMTMgMDk6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4LCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmg6CgkgIEVOSDogbWFkZSBjb25maWd1cmUgZmlsZSBpbW1lZGlhdGUgYnkgZGVmYXVsdCBmb3IgMi4yIG9yIGxhdGVyCgoyMDA1LTA2LTEyIDAzOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMTEgMDM6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0xMCAxMToyNyAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IHJlbW92ZSBvbGQgMS4yIGNvbXBhdGFiaWxpdHkgZnJvbQoJICBjbWFrZSAyLjIKCjIwMDUtMDYtMTAgMTA6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiByZW1vdmUgb2xkIDEuMiBjb21wYXRhYmlsaXR5IGZyb20KCSAgY21ha2UgMi4yCgoyMDA1LTA2LTEwIDEwOjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtYWtlLmN4eCwgY21ha2UuaCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IGFkZGVkIHN1cHBvcnQgZm9yIGZvcmNpbmcgcmVjb21wdXRhdGlvbgoJICBvZiBkZXBlbmRzCgoyMDA1LTA2LTEwIDEwOjA5ICBtYXJ0aW5rCgoJKiBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBjaGFuZ2UgdG8gd29yayB3aXRoIG5ldyBGTFRLCgkgIGNvbW1hbmQKCjIwMDUtMDYtMTAgMTA6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBjbUZMVEtXcmFwVUlDb21tYW5kLmg6IEVOSDoKCSAgY2hhbmdlIHdvcmtpbmdzIG9mIGNvbW1hbmQgc28gdGhhdCBpdCBjYW4gYWxsIGhhcHBpbmcgaW4gdGhlCgkgIGluaXRpYWwgcGFzcyBzdGlsbCB3b3JrcyB0aGUgb2xkIHdheSBidXQgY29tcGxhaW5zCgoyMDA1LTA2LTEwIDEwOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHg6IEVOSDogYWxsb3cgbGlicyB3aXRoIG5vIHNvdXJjZXMKCSAgYnV0IGNvbXBsYWluCgoyMDA1LTA2LTEwIDA5OjAxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogQmUgbW9yZQoJICB2ZXJib3NlCgoyMDA1LTA2LTEwIDA4OjU2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuY3h4OiBFTkg6IEJlIG1vcmUgdmVyYm9zZQoKMjAwNS0wNi0xMCAwODo0MCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IHJlbW92ZWQgb2xkCgkgIGNvbnZlcnQgY2FsbHMKCjIwMDUtMDYtMTAgMDI6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNi0wOSAxNDozNyAgbWFydGluawoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21ha2UuY3h4LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlZAoJICBVTUcyCgoyMDA1LTA2LTA5IDE0OjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JVEtXcmFwVGNsQ29tbWFuZC5jeHg6IEVOSDogZGVwcmVjYXRlIG9sZCBJVEsgd3JhcAoJICBjb21tYW5kCgoyMDA1LTA2LTA5IDExOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IEJVRzogZml4IEtEZXYgZ2VuIHRvIGNhbGwKCSAgcGFyZW50IGNsYXNzIEdlbmVyYXRlCgoyMDA1LTA2LTA5IDExOjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsIGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5oOiBFTkg6CgkgIG1ha2UgS0RldiBzdWIgb2ZmIG9mIEdlbjMKCjIwMDUtMDYtMDkgMTE6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEVOSDogcmVtb3ZlZCBvbGQgMS4yIGNvbXBhdGFiaWxpdHkKCjIwMDUtMDYtMDkgMTE6MjMgIG1hcnRpbmsKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBFTkg6IG5vIGxvbmdlciB0ZXN0IElUSyBjb21tYW5kCgoyMDA1LTA2LTA5IDA5OjQ4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogc29tZSBiZXR0ZXIgZXJyb3IKCSAgcmVwb3J0aW5nIGFuZCBtb3JlIHJvYnVzdCBoYW5kbGlnbiBvZiBiYWQgdGFyZ2V0cwoKMjAwNS0wNi0wOSAwODoxOSAga2luZwoKCSogU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluOiBDT01QOiBEaXNhYmxlIG1vcmUgd2FybmluZ3MuCgoyMDA1LTA2LTA5IDA4OjE4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogQ09NUDogRml4CgkgIG5vLWFzc2lnbm1lbnQtb3BlcmF0b3Igd2FybmluZyBhbmQgZGlzYWJsZSB0eXBlZGVmLW5hbWUgc3lub255bQoJICB3YXJuaW5nLgoKMjAwNS0wNi0wOSAwODowMyAga2luZwoKCSogU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oLmluOiBDT01QOiBEaXNhYmxlIHVzZWxlc3Mgd2FybmluZ3MuCgoyMDA1LTA2LTA5IDA4OjAyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ29uZmlndXJlLmh4eC5pbjogRU5IOiBDKysgY29uZmlndXJhdGlvbiBzaG91bGQKCSAgaW5jbHVkZSBDIGNvbmZpZ3VyYXRpb24uCgoyMDA1LTA2LTA5IDA3OjUxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBOZWVkIHdpbmRvd3MuaCBldmVuIG9uIGN5Z3dpbgoJICB0byBnZXQgQ3JlYXRlRmlsZSBBUEkuCgoyMDA1LTA2LTA5IDA3OjQwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUmVndWxhckV4cHJlc3Npb24uY3h4OiBDT01QOiBGaXhlZCBjb252ZXJzaW9uCgkgIHdhcm5pbmdzLgoKMjAwNS0wNi0wOSAwNDoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTA4IDE2OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5jeHg6IEJVRzogZmF0YWwgZXJyb3IgaW4gaW5jbHVkZSBmaWxlCgkgIHNob3VsZCBub3QgY2F1c2UgcmVwb3J0IG9mIG1pc3NpbmcgaW5jbHVkZSBmaWxlCgoyMDA1LTA2LTA4IDE2OjM5ICBtYXJ0aW5rCgoJKiBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmUgYmFkIGFkZCB0YXJnZXQKCSAgY29tbWFuZHMKCjIwMDUtMDYtMDggMTY6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmN4eDoKCSAgRU5IOiBiZXR0ZXIgZXJyb3IgY2hlY2tpbmcgZm9yIGFkZCBsaWJyYXJ5IG9yIGV4ZWN1dGFibGUgd2l0aCBubwoJICBzb3VyY2UgZmlsZXMKCjIwMDUtMDYtMDggMTY6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogcHJldmVudCBzZWdmYXVsdAoJICB3aGVuIG5vIHNvdXJjZXMgcHJvdmlkZWQgZm9yIGxpYgoKMjAwNS0wNi0wOCAxNDoxOCAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRMZXhlci5pbi5sLCBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci55LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmg6IEVOSDogSGFuZGxlIG1vcmUgY2FzZXMKCjIwMDUtMDYtMDggMTQ6MTEgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsIFdyYXBwaW5nL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IHJlbW92ZSByZXF1aXJlbWVudHMgb24gMS4yCgoyMDA1LTA2LTA4IDEyOjI2ICBtYXJ0aW5rCgoJKiBUZXN0cy86IE91dE9mU291cmNlL1N1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBEZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0LCBKdW1wL0NNYWtlTGlzdHMudHh0LAoJICBKdW1wL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsIFByZU9yZGVyL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LCBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogc2hpZnQgdG8gdXNpbmcgQUREX1NVQkRJUkVDVE9SWQoKMjAwNS0wNi0wOCAxMDo0MSAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kQXJndW1lbnRMZXhlci5pbi5sLCBjbUNvbW1hbmRBcmd1bWVudFBhcnNlci55LAoJICBjbUNvbW1hbmRBcmd1bWVudFBhcnNlckhlbHBlci5jeHgsCgkgIGNtQ29tbWFuZEFyZ3VtZW50UGFyc2VySGVscGVyLmg6IEVOSDogSW5pdGlhbCBpbXBvcnQgKG5vdCB3b3JraW5nCgkgIHlldCkKCjIwMDUtMDYtMDggMDk6NTkgIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogRU5IOiBFeHBlcmltZW50aW5nIHdpdGggYXV0by1kYXRlZCBjb3B5cmlnaHQuCgoyMDA1LTA2LTA4IDA5OjUyICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cAoKMjAwNS0wNi0wOCAwNDowOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTA3IDEyOjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IGZpeCBmb3IgaW5jb3JyZWN0IHNldHRpbmcKCSAgb2YgQ09ORklaR1VSQVRJT05fVFlQRVMKCjIwMDUtMDYtMDcgMTA6NTUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBCVUc6IFJlbW92ZSBkZWJ1Z2dpbmcgY29kZQoKMjAwNS0wNi0wNyAxMDo0NyAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbWFrZS5jeHg6IEVOSDogZml4CgkgIHByb2JsZW0gd2l0aCBkZXBlbmRlbmN5IHNjYW5uaW5nCgoyMDA1LTA2LTA3IDA5OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2t3c3lzL0V4dHJhVGVzdC5jbWFrZS5pbiwgVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW4sCgkgIFRlc3RzL0NUZXN0VGVzdDIvdGVzdC5jbWFrZS5pbjogRU5IOiBBZGQgY2FwYWJpbGl0eSB0byBpbmNsdWRlCgkgIGZpbGVzIHRvIERhcnRUZXN0ZmlsZS50eHQgYW5kIGFkZCBleGFtcGxlIG9mIHRoYXQKCjIwMDUtMDYtMDcgMDk6MDYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIGNtQ1Rlc3RUZXN0SGFuZGxlci5oOiBFTkg6CgkgIFVzZSBDTWFrZSBmb3IgcGFyc2luZyBEYXJ0VGVzdGZpbGUudHh0CgoyMDA1LTA2LTA3IDA4OjQ0ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiBBZGRlZCBzZWFyY2ggbG9jYXRpb25zIGZvciBhIEZyZWVCU0QKCSAgbG9jYXRpb24uICBDb250cmlidXRlZCBieSBBbGV4YW5kZXIgTmV1bmRvcmYuCgoyMDA1LTA2LTA3IDA0OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMDYgMDk6MjMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogQlVHOiBJbml0aWFsaXplIHRoZQoJICBpdGVyYXRvciB0byBwcmV2ZW50IHNlZy1mYXVsdAoKMjAwNS0wNi0wNiAwNDoxOSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTA1IDE1OjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDYtMDMgMTY6MTAgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLAoJICBDVGVzdC9jbUNUZXN0QnVpbGRBbmRUZXN0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEFuZFRlc3RIYW5kbGVyLmg6IEVOSDogTW92ZSB0aGUgYnVpbGQtYW5kLXRlc3QKCSAgY29kZSB0byBhIGhhbmRsZXIKCjIwMDUtMDYtMDMgMTQ6NDIgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsCgkgIGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5oOiBFTkg6IEFkZCBhIG1ldGhvZCB0byBwYXJzZSBjb21tYW5kIGxpbmUKCSAgYXJndW1lbnQgaW5zaWRlIHRoZSBoYW5kbGVyCgoyMDA1LTA2LTAzIDE0OjQyICBhbmR5CgoJKiBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogVGVzdCBzZXR0aW5nIG9mCgkgIGVudmlyb25tZW50IHZhcmlhYmxlcwoKMjAwNS0wNi0wMyAxNDoxNyAgYW5keQoKCSogU291cmNlL2NtU2V0Q29tbWFuZC5jeHg6IEJVRzogUmVtb3ZlIG1lbW9yeSBsZWFrCgoyMDA1LTA2LTAzIDEyOjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmgsIGNtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuaDogRU5IOiBubyBsb25nZXIgdXNlZAoKMjAwNS0wNi0wMyAxMjo1OCAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBFTkg6IHJlbW92ZWQgb2xkIGNvbW1hbmRzCgoyMDA1LTA2LTAzIDExOjI5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuY3h4OiBCVUc6IFJlbW92ZSB1bnVzZWQgY29kZQoKMjAwNS0wNi0wMyAxMToyNiAgbWFydGluawoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogc2h1dCB1cCBidWdneSBnY2Mgc3RsIGhlYWRlcgoKMjAwNS0wNi0wMyAwNDowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTAyIDE4OjEwICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY3Rlc3QuY3h4OiBFTkg6IEFkZCBkZWJ1ZyBmbGFnCgoyMDA1LTA2LTAyIDE2OjQ3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4OiBCVUc6IEZpeAoJICB0aGUgb3JkZXIgb2YgdGhpbmdzIHRvIG1ha2Ugc3VibWl0IGhhbmRsZXIgbm90IGNyYXNoIHdoZW4gcHJveGllcwoJICBhcmUgc2V0CgoyMDA1LTA2LTAyIDE1OjE0ICBtYXJ0aW5rCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogdXBkYXRlZCBjb21tYW5kcwoKMjAwNS0wNi0wMiAxNTowOSAgbWFydGluawoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlZCBvbGQgY29tbWFuZAoKMjAwNS0wNi0wMiAxNDo1NiAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogRU5IOiByZW1vdmVkIG9sZAoJICBjb21tYW5kcwoKMjAwNS0wNi0wMiAxNDo0OCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogRU5IOiBDbGVhbnVwIG91dHB1dCBldmVuCgkgIG1vcmUKCjIwMDUtMDYtMDIgMTQ6MjQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5oOiBFTkg6IHJlbW92ZWQgdGhlIEFCU1RSQUNUX0ZJTEVTIGNvbW1hbmQKCjIwMDUtMDYtMDIgMTQ6MjEgIG1hcnRpbmsKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogRU5IOiB1cGRhdGVkIHRvIHJlbW92ZSBBQlNUUkFDVF9GSUxFUyBhbmQgYWRkCgkgIEFERF9TVUJESVJFQ1RPUlkKCjIwMDUtMDYtMDIgMTQ6MTAgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlZCB1c2Ugb2YKCSAgQUJTVFJBQ1QgY29tbWFuZAoKMjAwNS0wNi0wMiAxMzo0MSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IG5vdyBhbHNvIHByb3ZpZGVzIG9iaiBydWxlcwoJICBmb3IgbG9jYWwgTWFrZWZpbGVzCgoyMDA1LTA2LTAyIDEyOjI2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IENPTVA6IFJlbW92ZSBjb21waWxlCgkgIHdhcm5pbmcKCjIwMDUtMDYtMDIgMTE6NDcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBjbUNUZXN0QnVpbGRIYW5kbGVyLmg6CgkgIEVOSDogT25jZSB0aGUgbnVtYmVyIG9mIGVycm9ycyBvciB3YXJuaW5ncyB3YXMgcmVhY2hlZCwgc3RvcAoJICBjb3VudGluZyB0aGVtLiBBbHNvIGZpeCBjb21waWxlIHdhcm5pbmcgb24gYmFkIGNvbXBpbGVycwoKMjAwNS0wNi0wMiAwOTozNSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eDogQlVHOiBPbiB3aW5kb3dzIHRoZXJlIGFyZQoJICBwcm9ibGVtcyB3aGVuIG9wZW5pbmcgZmlsZSBhcyBhc2NpaQoKMjAwNS0wNi0wMiAwNDowMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA2LTAxIDE1OjU5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwgY21DVGVzdEJ1aWxkSGFuZGxlci5oOgoJICBFTkg6IFN0cmVhbWxpbmUgYnVpbGQgcHJvY2Vzcy4gVGhpcyByZWR1Y2VzIHRoZSBtZW1vcnkgZm9vdHByaW50LAoJICBzaW5jZSBvbmx5IHNvbWUgbnVtYmVyIG9mIGxpbmVzIG9mIG91dHB1dCB3aWxsIGJlIGluIG1lbW9yeSBhdAoJICB0aGUgdGltZS4gQWxzbywgdGhpcyB3aWxsIHJlcG9ydCB0aGUgYnVpbGQgZXJyb3JzIGFuZCB3YXJuaW5ncyBhcwoJICBpdCBnb2VzIHRocm91Z2ggdGhlIGJ1aWxkCgoyMDA1LTA2LTAxIDEzOjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogbWlub3IgcGVyZiBpbXByb3ZlbWVudAoKMjAwNS0wNi0wMSAxMzoyNCAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogZG8gbm90IGFkZCBoZWxwCgkgIHRhcmdldCBpZiB0aGVyZSBpcyBhIHJlYWwgdGFyZ2V0IG5hbWVkIGhlbHAKCjIwMDUtMDYtMDEgMTM6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEJVRzogRml4ZWQgbmFtZSBnaXZlbgoJICB0byBjbGVhbiB0YXJnZXQgbGlzdGluZyBmb3IgZXhlY3V0YWJsZSBhbmQgbGlicmFyeSB0YXJnZXRzLgoKMjAwNS0wNi0wMSAxMToxOCAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTA2LTAxIDA5OjI1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogQlVHOiBSZW1vdmUgZHVwbGljYXRlIHRhcmdldHMKCSAgd2hlbiBpbiBkaWZmZXJlbnQgZ2VuZXJhdG9ycwoKMjAwNS0wNi0wMSAwODo1OSAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTA2LTAxIDA4OjU2ICBtYXJ0aW5rCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogQ09NUDogc3VwcHJlc3Mgd2FybmluZ3MgaW4gM3JkIHBhcnR5IGxpYnMKCjIwMDUtMDYtMDEgMDg6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNS0wNi0wMSAwODo1MCAgbWFydGluawoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDUtMDYtMDEgMDg6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LAoJICBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmg6IEVOSDogbWFkZSBpbW1lZGlhdGUKCjIwMDUtMDYtMDEgMDg6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBNYWtlIENNYWtlIC0tYnVpbGQtYW5kLXRlc3QgdG8gYmUKCSAgdmVyYm9zZSBieSBkZWZhdWx0CgoyMDA1LTA2LTAxIDA4OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIGRlcXVlCgoyMDA1LTA2LTAxIDAzOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMzEgMTg6NDAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIGN0ZXN0LmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBDT01QOiBSZW1vdmUgRVJST1IgcmVzZXJ2ZWQgd29yZAoJICBvciBzb21ldGhpbmcgYW5kIHJlcGxhY2Ugd2l0aCBFUlJPUl9NRVNTQUdFCgoyMDA1LTA1LTMxIDE3OjMyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjdGVzdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0Q29uZmlndXJlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RHZW5lcmljSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6CgkgIEVOSDogQWRkIHN1cHBvcnQgZm9yIHdyaXRpbmcgb3V0cHV0IGZpbGUuIFdoaWxlIGRvaW5nIHRoYXQsCgkgIHJlZGVzaWduIHRoZSB3YXkgY3Rlc3QgZG9lcyBvdXRwdXQuIFRoZXJlIG1heSBzdGlsbCBiZSBwcm9ibGVtcwoJICB3aXRoIGNvbW1hbmRzIGZhaWxpbmcsIGJ1dCB0aGF0IHNob3VsZCBiZSBmaXhlZCBieSBhcHBseWluZyB0aGUKCSAgc2ltaWxhciBjb25jZXB0IHRvIHdob2xlIENNYWtlCgoyMDA1LTA1LTMxIDE2OjIwICBtYXJ0aW5rCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBzaHV0IHVwIHNvbWUgd2FybmluZyBvbiBTR0kKCjIwMDUtMDUtMzEgMTY6MTYgIG1hcnRpbmsKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dDogQlVHOiBzaHV0IGRvd25ncmFkZSBYTUxSUEMKCSAgc3VwcG9ydAoKMjAwNS0wNS0zMSAxNToxMCAgbWFydGluawoKCSogU291cmNlLzogY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmg6IEVOSDogcmVtb3ZlZCB0aGUgUFJFT1JERVIgb3B0aW9uIGZyb20KCSAgdGhlIEFkZFN1YkRpcmVjdG9yeSBjb21tYW5kCgoyMDA1LTA1LTMxIDE0OjA5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQ09NUDogZml4IGEgd2FyaW5nCgoyMDA1LTA1LTMxIDExOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IG5vdyB1c2VzIE1ha2VmaWxlMiB0bwoJICBjbGVhbnVwIHpzaCBpc3N1ZXMgYW5kIHByb3ZpZGVkIHNvbWUgbW9yZSBkb2N1bWVudGF0aW9uCgoyMDA1LTA1LTMxIDEwOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBTVFlMRTogYWRkIHNvbWUgYmV0dGVyIGNvbW1lbnRzCgkgIGFuZCByZW1vdmUgc29tZSB1bnVzZWQgY29kZQoKMjAwNS0wNS0zMSAwNDoxMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTMwIDE3OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIGlvbWFuaXAKCjIwMDUtMDUtMzAgMDQ6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0yOSAwNDowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTI4IDA4OjQ0ICBsb3JlbnNlbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogd2FybmluZy4KCjIwMDUtMDUtMjggMDQ6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0yNyAyMjoxMSAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IGFkZAoJICBjb252ZW5pZW5jZSBmdW5jdGlvbiB0byBjb252ZXJ0IFdpbmRvd3MgY29tbWFuZCBsaW5lIGFyZ3MgaW50bwoJICBVbml4IGFyZ2MvYXJndi4gUHVsbGVkIGFuZCBjbGVhbmVkIGZyb20gUFYvVlYvVkogaW5pdCBjb2RlCgoyMDA1LTA1LTI3IDE2OjE3ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBFTkg6IFVzZSBnZW5lcmF0ZWQgZmlsZQoJICBzdHJlYW0gZm9yIGZpbGVzCgoyMDA1LTA1LTI3IDExOjI2ICBhbmR5CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IERhcnQgY2hhbmdlCgoyMDA1LTA1LTI3IDA0OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMjYgMTg6MTUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHg6IEVOSDogRml4IGZvciBjaGFuZ2VzIGluCgkgIFhNTC1SUEMgZm9yIERhcnQyCgoyMDA1LTA1LTI2IDE3OjMwICBhbmR5CgoJKiBNb2R1bGVzL0NNYWtlVlM4RmluZE1ha2UuY21ha2UsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IENPTVA6IEZpeCBmb3Igc3VwcG9ydCBvZgoJICBWUyA4LjAgYmV0YSAyCgoyMDA1LTA1LTI2IDA0OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMjUgMTU6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBhZGRlZCBjbGVhbiB0YXJnZXQgZm9yCgkgIHN1YmRpcnMKCjIwMDUtMDUtMjUgMTI6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRGVwZW5kcy5jeHgsIGNtRGVwZW5kcy5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEJVRzogYSBmaXggZm9yIGNvbnN0YW50CgkgIHJlY29tcHV0aW5nIG9mIGRlcGVuZHMKCjIwMDUtMDUtMjUgMTE6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogRU5IOiBuZXcgZm9ydHJhbiBkZXBlbmRzIHRvIG1hdGNoCgkgIG5ldyBVbml4IEdlbgoKMjAwNS0wNS0yNSAxMToxOCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsIGNtYWtlLmN4eDogRU5IOiBzd2l0Y2ggdG8gdXNpbmcKCSAgbmV3IFVuaXggTWFrZWZpbGUgZ2VuZXJhdG9yIGZvciBVbml4IGFzIHdlbGwKCjIwMDUtMDUtMjUgMDQ6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0yNCAxNjozNiAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBmaXggZm9yIGRpcmVjdG9yeQoJICBvZiBlbXB0eSBkZXBlbmQubWFrZSBmaWxlcwoKMjAwNS0wNS0yNCAxNjoxMSAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBidWlsZGluZyBsaWJzCgkgIGNhdXNlZCBhbGwgZ2VuZXJhdGVkIGZpbGVzIHRvIGJlIGRlbGV0ZWQKCjIwMDUtMDUtMjQgMTU6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5oOiBTVFlMRTogZml4IHRoZSBkb2NzCgoyMDA1LTA1LTI0IDE0OjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IHNvbWUgbW9yZSBjbGVhbnVwIGFuZAoJICBjaGFuZ2VzIHRvIGhvdyBjdXN0b20gY29tbWFuZHMgYXJlIHN0b3JlZAoKMjAwNS0wNS0yNCAxMToxNyAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBvcHRpbWl6YXRpb24gdG8gbm90IHVzZQoJICByZXF1aXJlcyBzdGVwIHVubGVzcyBhIGxhbmd1YWdlIHJlcXVpcmVzIGl0CgoyMDA1LTA1LTI0IDEwOjQ1ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlOiBFTkg6IGFkZGVkIHJlcXVpcmVzIGZsYWcKCjIwMDUtMDUtMjQgMDQ6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0yMyAwMzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTIyIDAzOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMjEgMDM6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0yMCAxMjowOSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBmaXggZm9yIGVtcHR5CgkgIGN1c3RvbSBjb21tYW5kcwoKMjAwNS0wNS0yMCAxMTowMSAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBhZGRlZCBoZWxwIHRhcmdldCBhbmQgbWFkZQoJICBjdXN0b20gY29tbWFuZHMgZXhlY3V0ZSBpbiBzdGFydCBvdXRwdXQgZGlyZWN0b3J5CgoyMDA1LTA1LTIwIDA4OjQ1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGZpeCB3YXJuaW5nIGFuZAoJICBhbHNvIGFkZCBiYWNrIGluIGJ1aWxkLm1ha2UKCjIwMDUtMDUtMjAgMDM6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0xOSAxNTo1NSAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTA1LTE5IDE1OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogZml4ZXMgZm9yIHN1YmRpciBidWlsZAoJICBNYWtlZmlsZXMKCjIwMDUtMDUtMTkgMTQ6MzYgIGFuZHkKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRU5IOiBCZSBtb3JlIHZlcmJvc2UsIGhhbmRsZQoJICBuZXR3b3JrIHBhdGhzLCBhbmQgd3JpdGUgY29tcGlsZXIgb3V0cHV0IHRvIHRoZSBsb2cgZmlsZXMKCjIwMDUtMDUtMTkgMTM6MzIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTA1LTE5IDEzOjI2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBCVUc6IGZpeCBmb3IgYmFkCgkgIGRlcGVuY3kgY2xlYXJpbmcKCjIwMDUtMDUtMTkgMTA6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBzb21lIHBlcmZvcm1hbmNlCgkgIGltcHJvdmVtZW50cwoKMjAwNS0wNS0xOSAwMzo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTE4IDE2OjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OiBFTkg6IGZpeCBmb3IgbWFrZXMgdGhhdAoJICBkbyBub3QgaGFuZGxlIHRhcmdldHMgd2lodG91dCBhIHJ1bGUgdG8gYnVpbGQgdGhlbQoKMjAwNS0wNS0xOCAxMzo0NiAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwgY21UYXJnZXQuY3h4OiBFTkg6IGFub3RoZXIgc3RlcAoJICB0byB0aGUgbmV4dCBnZW5lcmF0b3Igc3RpbGwgbm90IG9wdGltaXplZCB5ZXQKCjIwMDUtMDUtMTggMDQ6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0xNyAxNDozOSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBDT01QOiBzb21lIHdhcm5pbmcgZml4ZXMgYW5kCgkgIGNsZWFudXAKCjIwMDUtMDUtMTcgMTQ6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogaW1wbGVtZW50ZWQKCSAgcHJvdmlkZXMgcmVxdWlyZXMgY29kZQoKMjAwNS0wNS0xNyAxMToxNSAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBzb21lIG1vcmUgcmVvcmcKCjIwMDUtMDUtMTcgMDM6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0xNiAxNDoxNyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oOiBCVUc6CgkgIENoYW5naW5nIHRvIGEgbmV3IHRlc3QgZm9yIHdoZXRoZXIgdG8gZG8gcmVsYXRpdmUgcGF0aAoJICBjb252ZXJzaW9uLiAgTm93IG9ubHkgcGF0aHMgaW5zaWRlIHRoZSBzb3VyY2Ugb3IgYmluYXJ5IHRyZWVzIGFyZQoJICBjb252ZXJ0ZWQuCgoyMDA1LTA1LTE2IDEzOjQyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzVU5JWC5jLCB0ZXN0UHJvY2Vzcy5jOiBFTkg6IFJlbW92aW5nCgkgIHByZXZpb3VzIGRlYnVnIGNvZGUuCgoyMDA1LTA1LTE2IDEwOjUzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4OgoJICBFTkg6IHNvbWUgdXBkYXRlcyB0byB0aGUgcHJvdmlkZXMgcmVxdWlyZXMgY29kZQoKMjAwNS0wNS0xNSAwMzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTE0IDA0OjAxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMTMgMTU6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IEVOSDogcmVtb3ZlIGR1cGxpY2F0ZQoJICBwcm92aWRlIHJ1bGUgZm9yIGZvcnRyYW4KCjIwMDUtMDUtMTMgMTU6NTAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQ09NUDogc2h1dCB1cCB3YXJuaW5nCgoyMDA1LTA1LTEzIDE0OjQ1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU2hhcmVkRm9yd2FyZC5oLmluOiBFTkg6IEFkZGVkIGtub3dsZWRnZSBvZiBGcmVlQlNELgoKMjAwNS0wNS0xMyAxNDo0NCAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzc1VOSVguYywgdGVzdFByb2Nlc3MuYzogRU5IOiBBZGRpbmcKCSAgZGVidWdnaW5nIGNvZGUgZm9yIGZyZWVic2QuCgoyMDA1LTA1LTEzIDE0OjEzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogQlVHOiBtaW5vciBjbGVhbnVwIGFuZAoJICBmaXggZm9yIGNvbnZlbmllbmNlIHJ1bGVzCgoyMDA1LTA1LTEzIDE0OjEyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGZpbHggZm9yIG9sZCBidWcgaW4gcmVsIHBhdGgKCSAgY29tcHV0YWl0b24gY29kZQoKMjAwNS0wNS0xMyAwOTo1NCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oLCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogd2FybmluZyBmaXhlcyBhbmQgc29tZQoJICBmaXJzdCBzdGVwcyBpbiBjbGVhbmluZyB1cCB0aGUgY29udmVydCBjb2RlCgoyMDA1LTA1LTEzIDA0OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMTIgMTY6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IFVuZG8gZml4IGFzIGl0IGJyb2tlCgkgIHRoZSBkYXNoYm9hcmQKCjIwMDUtMDUtMTIgMTM6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBidWcgd2hlcmUKCSAgZGVidWcsIHJlbGVhc2UgZXRjIGZsYWdzIHdlcmUgbm90IHVzZWQgZm9yIGxpbmtlciBvcHRpb25zLCBCVUcKCSAgMTc4MSBmaXgKCjIwMDUtMDUtMTIgMTE6NTMgIG1hcnRpbmsKCgkqIGJvb3RzdHJhcDogRU5IOiBtb3ZlZCBnZW4zIGludG8gYm9vdHN0cmFwIHByb2Nlc3MKCjIwMDUtMDUtMTIgMTE6MjYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5jeHg6IENPTVA6IHNodXQgdXAgdW51c2VkCgkgIHZhcgoKMjAwNS0wNS0xMiAxMToyNCAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBmaXggYmFkIGdlbmVyYXRvciBuYW1lCgoyMDA1LTA1LTEyIDEwOjU4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogZGVmZXIgcmVsYXRpdmUgcGF0aHMKCjIwMDUtMDUtMTIgMTA6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLCBjbWFrZS5jeHg6IEVOSDogYWRkZWQgbmV3CgkgIGdlbmVyYXRvcgoKMjAwNS0wNS0xMiAwMzo1MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTExIDEzOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURlcGVuZHMuY3h4LCBjbURlcGVuZHMuaCwgY21EZXBlbmRzQy5jeHgsCgkgIGNtRGVwZW5kc0MuaCwgY21EZXBlbmRzRm9ydHJhbi5jeHgsIGNtRGVwZW5kc0ZvcnRyYW4uaCwKCSAgY21EZXBlbmRzSmF2YS5jeHgsIGNtRGVwZW5kc0phdmEuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBFTkg6IHNvbWUgY2hhbmdlcyB0byB0aGUKCSAgZGVwZW5kcyBzaWduYXR1cmUgdG8gYmUgbW9yZSBmbGV4aWJsZQoKMjAwNS0wNS0xMSAxMjo0NCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGFub3RoZXIgc25hcHNob3QKCjIwMDUtMDUtMTEgMTA6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaDogRU5IOiBhZGRlZAoJICBuZXcgbWV0aG9kcyB0byBjb252ZXJ0IHRvIEhvbWVSZWxhdGl2ZSBwYXRocwoKMjAwNS0wNS0xMSAwODo0NSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBzbmFwc2hvdAoKMjAwNS0wNS0xMSAwMzo1NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTEwIDE2OjQxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBSZW1vdmluZyBRTlggaGFjayBmb3IgdGVzdCA2IG5vdwoJICB0aGF0IHRoZSBwcm9ibGVtIGhhcyBiZWVuIGZpeGVkLgoKMjAwNS0wNS0xMCAxNjozNiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogc3RydWN0IHRpbWV2YWwgdXNlcyB1bnNpZ25lZAoJICB0eXBlcyBvbiBhdCBsZWFzdCBvbmUgcGxhdGZvcm0gKFFOWCkuICBBbG90IG9mIHRoZSB0aW1lIGxvZ2ljCgkgIGFzc3VtZXMgYSBzaWduZWQgdHlwZS4gIFN3aXRjaCB0byB1c2luZyBhIHNpZ25lZCByZXByZXNlbnRhdGlvbgoJICB0aGF0IGlzIGNvbnZlcnRlZCB0byB0aGUgbmF0aXZlIHJlcHJlc2VudGF0aW9uIG9ubHkgZm9yIHN5c3RlbQoJICBjYWxscy4KCjIwMDUtMDUtMTAgMTE6MTEgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6CgkgIEFsbG93IGNoYW5naW5nIG9mIGZpbGUgbmFtZQoKMjAwNS0wNS0xMCAxMTowMCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzQy5jeHgsIGNtRGVwZW5kc0MuaDogQlVHOiBSZS1pbXBsZW1lbnRlZAoJICBkZXBlbmRlbmN5IGxpbmUgcGFyc2luZyB0byBkZWFsIHdpdGggcXVvdGVkIHBhdGhzIGFuZCBlc2NhcGVkCgkgIHNwYWNlcy4KCjIwMDUtMDUtMTAgMTA6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHg6IEVOSDogUmVtb3ZlIHRoZSBvbGQgY29kZQoKMjAwNS0wNS0xMCAwMzo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTA5IDE1OjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eDogRU5IOiBzb21lIG1vcmUgZml4ZXMKCjIwMDUtMDUtMDkgMDg6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaDogRU5IOiBzb21lIG1vcmUgY2xlYW51cAoKMjAwNS0wNS0wOSAwMzo1NyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTA4IDEzOjQ5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4LAoJICBUZXN0cy9DVGVzdFRlc3QyL3Rlc3QuY21ha2UuaW46IEVOSDogQWRkIG5vdGVzCgoyMDA1LTA1LTA4IDEzOjQ4ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN0YXJ0Q29tbWFuZC5jeHg6IEVOSDogUmVtb3ZlIGVycm9yIGFib3V0IG5vdAoJICBiZWluZyBhYmxlIHRvIHVwZGF0ZSBDVGVzdCBjb25maWd1cmF0aW9uCgoyMDA1LTA1LTA4IDEzOjQ4ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwgY21DVGVzdEJ1aWxkQ29tbWFuZC5oOgoJICBFTkg6IFJlbW92ZSBtZW1vcnkgbGVhayBhbmQgcmVtZW1iZXIgZ2xvYmFsIGdlbmVyYXRvciBmb3IgbmV4dAoJICB0aW1lCgoyMDA1LTA1LTA4IDEzOjQ3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBtZXRob2Qgc28gdGhhdCBjdGVzdAoJICBoYW5kbGVycyBhbmQgY29tbWFuZHMgY2FuIGFkZCBub3RlcwoKMjAwNS0wNS0wOCAwNDowMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTA3IDAzOjU2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMDYgMTQ6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IzLmg6IEVOSDogdXBkYXRlcwoKMjAwNS0wNS0wNiAxMjozOCAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogQ09NUDogRml4ZWQgZm9yY2VkIGJvb2wgY29udmVyc2lvbiB3YXJuaW5nLgoKMjAwNS0wNS0wNiAwOTo1OCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzLmN4eCwgY21EZXBlbmRzLmgsIGNtRGVwZW5kc0MuY3h4LAoJICBjbURlcGVuZHNDLmgsIGNtRGVwZW5kc0ZvcnRyYW4uY3h4LCBjbURlcGVuZHNGb3J0cmFuLmgsCgkgIGNtRGVwZW5kc0phdmEuY3h4LCBjbURlcGVuZHNKYXZhLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwgY21ha2UuY3h4OiBFTkg6IEFkZGVkIG9wdGlvbmFsCgkgIHZlcmJvc2Ugb3V0cHV0IHRvIGJ1aWxkIHN5c3RlbSBkZXBlbmRlbmN5IGNoZWNrLgoKMjAwNS0wNS0wNiAwMzo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTA1IDEyOjQ1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjMuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMy5oOiBFTkg6IGJhY2t1cCBvZiB3b3JrIGluIHByb2dyZXNzCgoyMDA1LTA1LTA1IDEwOjQwICBhbmR5CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogSWYgdGhlcmUgaXMgYSBmYXRhbCBlcnJvciwgc3RvcAoJICBwcm9jZXNzaW5nIGxpc3QgZmlsZQoKMjAwNS0wNS0wNSAxMDoyNiAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogQWRkZWQgc3BhY2UgYWZ0ZXIKCSAgL2NsZWFuIHRvIGF2b2lkIHB1dHRpbmcgaXQgdG9nZXRoZXIgd2l0aCB0aGUgYnVpbGQgY29uZmlndXJhdGlvbi4KCSAgVGhpcyBmaXhlcyB0aGUgZmFpbHVyZSBvZiB0aGUgY29tcGxleHQgdGVzdCBvbiB0aGUgc2Vjb25kIHJ1biBpbgoJICB0aGUgc2FtZSB0cmVlLgoKMjAwNS0wNS0wNSAxMDoxOSAgYW5keQoKCSogU291cmNlL2t3c3lzL0NUZXN0Q29uZmlnLmNtYWtlOiBFTkg6IEFkZCBjb25maWd1cmF0aW9uIGZpbGUgZm9yCgkgIGt3c3lzCgoyMDA1LTA1LTA1IDEwOjE5ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NUZXN0VGVzdDIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NUZXN0VGVzdDIvdGVzdC5jbWFrZS5pbjogRU5IOiBBZGQgbmV3IHN0eWxlIGN0ZXN0IHByb2plY3QKCjIwMDUtMDUtMDUgMTA6MTggIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmN4eCwKCSAgY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4OiBFTkg6IEFkZCBkZWZhdWx0IGNvbmZpZ3VyZSBydWxlcyBmb3IKCSAgQ01ha2UgcHJvamVjdHMgYW5kIGFkZCBkZWZhdWx0IHJ1bGVzIGZvciBzdWJtaXNzaW9uCgoyMDA1LTA1LTA1IDEwOjE4ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBFTkg6IEFkZCB2YXJpYWJsZSB0aGF0CgkgIGhvbGRzIGNtYWtlIGV4ZWN1dGFibGUKCjIwMDUtMDUtMDUgMTA6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0Lmg6IEVOSDogQWRkIGFjY2Vzc29ydCBmb3IgQ01ha2UgZXhlY3V0YWJsZQoKMjAwNS0wNS0wNSAwOTo0NSAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEVOSDogRGlzYWJsaW5nIHRlc3QgNiBvbiBRTlggdW50aWwKCSAgcHJvY2VzcyBraWxsaW5nIGNhbiBiZSByZXNvbHZlZC4gIEl0IHdpbGwganVzdCBmYWlsIGFsd2F5cyBmb3IKCSAgbm93LgoKMjAwNS0wNS0wNSAwOToyMSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEZpeCBsb2dpYyBmb3IgdmVyYm9zZQoKMjAwNS0wNS0wNSAwOTowOSAga2luZwoKCSogU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW46IENPTVA6IFJlbW92ZWQgdW51c2VkIHBhcmFtZXRlcgoJICB3YXJuaW5nLgoKMjAwNS0wNS0wNSAwOTowOCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogQWRkZWQgd29yay1hcm91bmQgdG8gYXZvaWQKCSAgd2FybmluZ3MgYWJvdXQgdW5yZWZlcmVuY2VkIGlubGluZSBmdW5jdGlvbnMgZnJvbSBTR0kgdGVybWlvcy4KCjIwMDUtMDUtMDUgMDk6MDUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBDT01QOiBBZGRlZCBpbml0aWFsaXplciB0byBhdm9pZAoJICB3YXJuaW5nLiAgSXQgaXMgbm90IHJlYWxseSBuZWVkZWQsIHRob3VnaC4KCjIwMDUtMDUtMDUgMDM6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNS0wNCAxMTozNyAgYW5keQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkCgkgIHNwbGl0IHRoYXQgc3BsaXRzIG9uIGFyYml0cmFyeSBzZXBhcmF0b3IKCjIwMDUtMDUtMDQgMTE6MTYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogQWxsb3cgc3BhY2VzIGluCgkgIHVwZGF0ZSBjb21tYW5kCgoyMDA1LTA1LTA0IDExOjEzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwgY21DVGVzdEJ1aWxkQ29tbWFuZC5oLAoJICBjbUNUZXN0Q29uZmlndXJlQ29tbWFuZC5jeHgsIGNtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmgsCgkgIGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LCBjbUNUZXN0U3VibWl0Q29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RTdWJtaXRDb21tYW5kLmgsIGNtQ1Rlc3RUZXN0Q29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RUZXN0Q29tbWFuZC5oLCBjbUNUZXN0VXBkYXRlQ29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RVcGRhdGVDb21tYW5kLmg6IEVOSDogSW1wcm92ZSBzeW50YXgKCjIwMDUtMDUtMDQgMTE6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogRml4IGJvb3RzdHJhcCB0ZXN0IG9uIG1hY2hpbmVzCgkgIHdpdGggc3BhY2VzIGluIHRoZSBwYXRoCgoyMDA1LTA1LTA0IDExOjEyICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IEV4cG9zZQoJICBDb252ZXJ0VG9Vbml4T3V0cHV0UGF0aAoKMjAwNS0wNS0wNCAwMzo1MCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA1LTAzIDE1OjI4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBDVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eDoKCSAgRU5IOiBBZGQgU2l0ZSBhbmQgQnVpbGROYW1lLCBtYWtlIHN1cmUgdGhhdCB0aGUgcmVzdCBvZiB0aGUKCSAgZGVmYXVsdCAtUyBydWxlIGRvZXMgbm90IGhhcHBlbiwgYW5kIG1ha2Ugc3VyZSB0aGF0IG5ldyB0YWcgd2lsbAoJICBiZSBjcmVhdGVkCgoyMDA1LTA1LTAzIDE1OjIwICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IE5vIG5lZWQgdG8gY29udmVydCB0byBvdXRwdXQKCSAgcGF0aAoKMjAwNS0wNS0wMyAxNToxOSAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbkxleGVyLmN4eCwgY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmwsCgkgIGNtRGVwZW5kc0phdmFMZXhlci5jeHgsIGNtRGVwZW5kc0phdmFMZXhlci5pbi5sOiBDT01QOiBSZW1vdmVkCgkgIHdhcm5pbmdzIGFib3V0IHVucmVhY2hhYmxlIGNvZGUgYW5kIGNvbnN0YW50IGNvbnRyb2wgZXhwcmVzc2lvbnMuCgkgIEFkZGVkIHRoZSBjaGFuZ2VzIHRvIHRoZSBpbnN0cnVjdGlvbnMgaW4gdGhlIGlucHV0IGxleCBmaWxlcy4KCjIwMDUtMDUtMDMgMTQ6NTggIGtpbmcKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmgsCgkgIGt3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuY3h4LAoJICBrd3N5cy90ZXN0aGFzaC5jeHg6IENPTVA6IEFkZGVkIHByYWdtYSBkaXJlY3RpdmVzIGZvciBTR0kKCSAgY29tcGlsZXJzIHRvIGF2b2lkIHVzZWxlc3Mgd2FybmluZ3MuCgoyMDA1LTA1LTAzIDE0OjU3ICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4LAoJICBjbUN1cnNlc01haW5Gb3JtLmN4eDogQ09NUDogQ2hhbmdlZCB3aGlsZSgxKSB0byBmb3IoOzspIHRvIGF2b2lkCgkgIHdhcm5pbmcgYWJvdXQgY29uc3RhbnQgY29udHJvbCBleHByZXNzaW9uLgoKMjAwNS0wNS0wMyAxNDo1MyAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IENPTVA6IFJlbW92ZWQgc3RyYXkKCSAgc2VtaWNvbG9uLgoKMjAwNS0wNS0wMyAxNDoyOCAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBDT01QOiBBZGRlZCBoYWNrIHRvIGF2b2lkIFNHSQoJICB0ZXJtaW9zLmggd2FybmluZ3MuCgoyMDA1LTA1LTAzIDE0OjI4ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNKYXZhTGV4ZXIuY3h4LCBjbURlcGVuZHNKYXZhTGV4ZXIuaW4ubDogQ09NUDoKCSAgTmVlZCAjdW5kZWYgRUNITyB0byBhdm9pZCBjb25mbGljdCB3aXRoIHN5c3RlbSBFQ0hPIGRlZmluaXRpb24uCgoyMDA1LTA1LTAzIDE0OjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUmVndWxhckV4cHJlc3Npb24uaHh4LmluOiBDT01QOiBDaGFuZ2VkIHR5cGUgb2YKCSAgcmVnbWxlbiB0byBhdm9pZCB3YXJuaW5ncyB3aGVuIG90aGVyIGxlbmd0aHMgYXJlIGNvbnZlcnRlZCB0byBpdC4KCjIwMDUtMDUtMDMgMTA6MDIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFTkg6IEFkZGluZyB0ZXN0IG9mIHJ1bm5pbmcKCSAgZXhlY3V0YWJsZSB3aXRoIGZvcndhcmQgc2xhc2hlcyBvbiB3aW5kb3dzLgoKMjAwNS0wNS0wMyAwOTo0MCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0Q29uZmlndXJlQ29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4LCBDVGVzdC9jbUNUZXN0U3VibWl0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0Q29tbWFuZC5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IENsZWFudXBzCgoyMDA1LTA1LTAzIDA4OjE3ICBhbmR5CgoJKiBDVGVzdENvbmZpZy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUNUZXN0LmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4LCBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5oLAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdENvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXRIYW5kbGVyLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RDb21tYW5kLmg6IEVOSDogUHJvbW90ZSBzdWJtaXQgaW50byBhCgkgIGZ1bGwgaGFuZGxlciwgYWRkIHRlc3QgYW5kIHN1Ym1pdCBjb21tYW5kIGFuZCBkbyBzb21lIGNsZWFudXBzCgoyMDA1LTA1LTAzIDA0OjE1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMDIgMTU6NTEgIGFuZHkKCgkqIENUZXN0Q29uZmlnLmNtYWtlLCBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHg6IEVOSDogTWFrZSBjdGVzdCBidWlsZAoJICBjb21tYW5kIHdvcmsKCjIwMDUtMDUtMDIgMTU6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5oOiBFTkg6IE1ha2UgQWRkQ01ha2VQYXRoIHB1YmxpYwoKMjAwNS0wNS0wMiAxNTo1MCAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmg6IEVOSDogTWFrZSBGaW5kTWFrZVByb2dyYW0gcHVibGljCgoyMDA1LTA1LTAyIDE0OjE1ICBhbmR5CgoJKiBDVGVzdENvbmZpZy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUNUZXN0LmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZENvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RDb25maWd1cmVDb21tYW5kLmgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eDogRU5IOiBNb3JlIGNvbW1hbmRzLiBTdGFydAoJICB3b3JraW5nIG9uIG5ldyBzdHlsZSBjdGVzdCBjb25maWd1cmF0aW9uCgoyMDA1LTA1LTAyIDAzOjQyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDUtMDEgMDM6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0zMCAxNTozNiAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBDT01QOiBSZW1vdmUgd2FybmluZwoKMjAwNS0wNC0zMCAwNDoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTI5IDEyOjUwICBhbmR5CgoJKiBTb3VyY2UvY21CdWlsZENvbW1hbmQuY3h4OiBFTkg6IFRyeSB0byBzZWUgaWYKCSAgR2VuZXJhdGVCdWlsZENvbW1hbmQgcHJvZHVjZXMgYXByb3ByaWF0ZSByZXN1bHQKCjIwMDUtMDQtMjkgMTE6NDkgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oOiBFTkg6IEFkZCBvcHRpb24gdG8gaWdub3JlIGVycm9ycy4gT25seQoJICB3b3JrcyBvbiBtYWtlCgoyMDA1LTA0LTI5IDEwOjExICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IENPTVA6IENvbnZlcnRpbmcKCSAgSU5TVEFMTC0+QUxMX0JVSUxEIGRlcGVuZGVuY3kgaW1wbGVtZW50YXRpb24gdG8gdXNlIHRoZQoJICBBZGRVdGlsaXR5IG1ldGhvZCBvbiBhIHRhcmdldC4gIFRoaXMgc2lnbmlmaWNhbnRseSBzaW1wbGlmaWVzIHRoZQoJICBpbXBsZW1lbnRhdGlvbiBhbmQgcmVtb3ZlcyB3YXJuaW5ncyBhYm91dCBoaWRpbmcgdmlydHVhbAoJICBmdW5jdGlvbnMuCgoyMDA1LTA0LTI5IDEwOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA1LTA0LTI5IDEwOjA2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBpbnN0YWxsIGRlcGVuZCBvbgoJICBhbGwKCjIwMDUtMDQtMjkgMDQ6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0yOCAxODozNCAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBTdGFydCB3b3JraW5nIG9uIGNvbW1hbmQgdGhhdCB3aWxsIGFic3RyYWN0IGdlbmVyYXRpbmcgb2YKCSAgYnVpbGQgY29tbWFuZAoKMjAwNS0wNC0yOCAxODoxOCAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBFTkg6IFN0YXJ0IHdvcmtpbmcgb24gYSBtZXRob2QKCSAgdGhhdCBhYnN0cmFjdHMgZ2VuZXJhdGluZyBvZiBidWlsZCBjb21tYW5kCgoyMDA1LTA0LTI4IDE3OjMzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmg6IEVOSDogU3RhcnQKCSAgd29ya2luZyBvbiBjb21tYW5kIHRoYXQgd2lsbCBhYnN0cmFjdCBnZW5lcmF0aW5nIG9mIGJ1aWxkIGNvbW1hbmQKCjIwMDUtMDQtMjggMTY6MjEgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaDogRU5IOiBBZGRlZCBkZXBlbmRlbmN5IGZyb20KCSAgSU5TVEFMTCB0YXJnZXQgdG8gQUxMX0JVSUxEIHRhcmdldCBzbyB0aGF0IHRhcmdldHMgYnVpbGQgYmVmb3JlCgkgIGJlaW5nIGluc3RhbGxlZC4KCjIwMDUtMDQtMjggMTE6NDcgIGtpbmcKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBCVUc6IEF2b2lkIGluZmluaXRlIGxvb3AgZHVyaW5nCgkgIGluc3RhbGxhdGlvbi4KCjIwMDUtMDQtMjggMDk6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBCVUc6IEV4dGVuZGluZyBhbGwgdGltZW91dHMgdG8gaGVscAoJICBvdXQgc2xvd2VyIG1hY2hpbmVzLgoKMjAwNS0wNC0yOCAwOToxNCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IEFkZCBpbnRlcm5hbCBlcnJvcgoKMjAwNS0wNC0yOCAwNTowNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTI3IDExOjQ2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBFTkg6IEFkZGVkIGRlcGVuZGVuY3kKCSAgb24gYWxsIGZvciBpbnN0YWxsIHJ1bGUgdG8gbWFrZSBzdXJlIGJ1aWxkIGlzIHVwIHRvIGRhdGUgYmVmb3JlCgkgIGluc3RhbGxpbmcuICBUaGlzIGJlaGF2aW9yIGNhbiBiZSBkaXNhYmxlZCBieSBzZXR0aW5nCgkgIENNQUtFX1NLSVBfSU5TVEFMTF9BTExfREVQRU5ERU5DWSB0byB0cnVlLgoKMjAwNS0wNC0yNyAxMTozMyAga2luZwoKCSogU291cmNlL2NtU291cmNlRmlsZS5jeHg6IEJVRzogRG8gbm90IGxlYXZlIC4uLyBpbiB0aGUgZnVsbCBwYXRoCgkgIHRvIGEgc291cmNlIGZpbGUuICBVc2luZyBDb2xsYXBzZUZ1bGxQYXRoIHNpbXBsaWZpZXMgdGhlIGNvZGUKCSAgYW55d2F5LgoKMjAwNS0wNC0yNyAxMDowMSAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEJVRzogRXh0ZW5kaW5nIHRpbWVvdXQgb2YgdGVzdCA2IGZyb20KCSAgMC4xIHNlY29uZHMgdG8gMyBzZWNvbmRzLiAgVGhpcyBzaG91bGQgYXZvaWQgbWlzc2VkIHNpZ25hbHMgYW5kCgkgIGludGVybWl0dGVudCBmYWlsdXJlcy4KCjIwMDUtMDQtMjcgMDk6MTIgIGtpbmcKCgkqIFRlc3RzL0N1c3RvbUNvbW1hbmQvQ01ha2VMaXN0cy50eHQ6IEJVRzogVXNlIGNvcHkgdG8gcHJvZHVjZQoJICBkb2MxcHJlLnR4dCBpbnN0ZWFkIG9mIGVjaG8uCVRoZSByZWRpcmVjdGlvbiBkb2VzIG5vdCBsaWtlCgkgIGZvcndhcmQgc2xhc2hlcyBvbiBXaW45eC4KCjIwMDUtMDQtMjcgMDQ6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0yNiAxNzoxMSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZSwgRmluZFRocmVhZHMuY21ha2U6CgkgIEJVRzogRml4IHRyeS1jb21waWxlIGZvciBzeXMvcHJjdGwuaC4gIEl0IG5lZWRzIHRvIGluY2x1ZGUKCSAgc3lzL3R5cGVzLmggZmlyc3QgYWNjb3JkaW5nIHRvIHRoZSBtYW4gcGFnZS4KCjIwMDUtMDQtMjYgMTQ6MTIgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ludGVybmFsX3N0ZGlvX2NvcmUuaC5pbiwKCSAgVXRpbGl0aWVzL2NteG1scnBjL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY214bWxycGMvaW50ZXJuYWxfc3RkaW9fY29yZS5oLmluOiBFTkg6IFJlbW92aW5nCgkgIHN0ZGlvX2NvcmUgaGFjay4gIEEgYmV0dGVyIHdvcmstYXJvdW5kIGhhcyBiZWVuIHB1dCBpbgoJICBjbVN0YW5kYXJkSW5jbHVkZXMuaC4KCjIwMDUtMDQtMjYgMTQ6MTEgIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogQ09NUDogQWRkaW5nIGluY2x1c2lvbiBvZiBzdGRhcmcuaAoJICB0byB3b3JrLWFyb3VuZCBTR0kgaGVhZGVyIGJ1ZyBpbiA3LjQuMm0uCgoyMDA1LTA0LTI2IDExOjU1ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIHByZS1idWlsZCBhbmQKCSAgcG9zdC1idWlsZCB0ZXN0IGZvciBjdXN0b20gdGFyZ2V0cy4KCjIwMDUtMDQtMjYgMTE6MzEgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogTG9va3MgbGlrZSBzdGQ6OnN0cmluZyBjaGFuZ2VzCgkgIHRoZSByZXN1bHQgb2YgY19zdHIoKSBjYWxsLiBUaGlzIGZpeGVzIHBvdGVudGlhbCBwcm9ibGVtcwoKMjAwNS0wNC0yNiAxMToxNSAgYW5keQoKCSogU291cmNlL2NtYWtld2l6YXJkLmg6IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA1LTA0LTI2IDExOjA5ICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZXdpemFyZC5oLCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IENPTVA6CgkgIFJlbW92ZSB3YXJuaW5ncwoKMjAwNS0wNC0yNiAxMTowOCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oOiBCVUc6IEZpeGVkIG9yZGVyaW5nIG9mIG11bHRpcGxlCgkgIGNvbW1hbmRzIGluIGEgY3VzdG9tIHRhcmdldCB3aGVuIGltcGxlbWVudGVkIGFzIGN1c3RvbSBjb21tYW5kcy4KCSAgQWxzbyBhZGRlZCBzdXBwb3J0IHRvIGV4ZWN1dGUgcHJlLWJ1aWxkIHJ1bGVzIGZpcnN0IHRvIGJlCgkgIGNvbnNpc3RlbnQgd2l0aCBtYWtlZmlsZSBnZW5lcmF0b3IuCgoyMDA1LTA0LTI2IDA4OjUxICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IEFkZGVkIGluY2x1c2lvbiBvZgoJICBwcmUtYnVpbGQgcnVsZXMgZm9yIGN1c3RvbSB0YXJnZXRzLgoKMjAwNS0wNC0yNiAwNDo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTI1IDA5OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA1LTA0LTI1IDAzOjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMjQgMTY6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eDogQ09NUDogRml4IHByb2JsZW0gb24gY29tcGlsZXJzIHRoYXQKCSAgY2Fubm90IGltcGxpY2l0bHkgY29udmVydCBzdGQ6OnN0cmluZyB0byBjbVN0ZFN0cmluZwoKMjAwNS0wNC0yNCAxNTo1OSAgYW5keQoKCSogYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkVGVzdENvbW1hbmQuaCwgU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtVGVzdC5jeHgsCgkgIFNvdXJjZS9jbVRlc3QuaDogRU5IOiBJbXByb3ZlIGludGVybmFsIHRlc3QgaGFuZGxpbmcgYnkgY3JlYXRpbmcKCSAgYSB0ZXN0IGNsYXNzLiBDb21tYW5kIGNtRW5hYmxlVGVzdGluZyBub3cgb25seSBzZXRzCgkgIENNQUtFX1RFU1RJTkdfRU5BQkxFRCBhbmQgY21BZGRUZXN0IG9ubHkgYWRkcyBhIHRlc3QgdG8gdGhlIGxpc3QuCgkgIFRoZSBhY3R1YWwgdGVzdCBmaWxlcyBhcmUgd3JpdHRlbiBieSBsb2NhbCBnZW5lcmF0b3IuIFRoaXMgd2F5IHdlCgkgIGNhbiBhdCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUgcmVwbGFjZSBEYXJ0VGVzdGZpbGUgd2l0aCBzb21lCgkgIFhNTCBmaWxlCgoyMDA1LTA0LTI0IDE0OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogVGhlIGFyZ3VtZW50IGlzIC0tY3Rlc3QtY29uZmlnCgoyMDA1LTA0LTI0IDEzOjU3ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IFN1cHBvcnQgZm9yIG1vZGlmaWVkCgkgIGFuZCBjb25mbGljdHMgaW4gc3VidmVyc2lvbgoKMjAwNS0wNC0yNCAxMzoxNSAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvY214bWxycGMvQ01ha2VMaXN0cy50eHQ6IEJVRzogT2xkZXIgU0dJIGNvbXBpbGVycyBzdGlsbAoJICBoYXZlIGludGVybmFsL3N0ZGlvX2NvcmUuaCBidXQgZG8gbm90IHN1cHBvcnQgI2luY2x1ZGVfbmV4dC4KCSAgV2UnbGwgaGF2ZSB0byB0cnktY29tcGlsZSB0byB0ZXN0IHdoZXRoZXIgdGhpcyBoYWNrIGlzIG5lZWRlZC4KCjIwMDUtMDQtMjQgMTI6MzIgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEJVRzogUmVtZW1iZXIgaWYgdGhlcmUgd2FzCgkgIHVwZGF0ZSBlcnJvcgoKMjAwNS0wNC0yNCAwMjoyNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTIzIDAyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMjIgMTY6MTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIENyZWF0ZWQgY21UYXJnZXQ6OkdldExpYnJhcnlOYW1lcyB0byByZXBsYWNlCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyOjpHZXRMaWJyYXJ5TmFtZXMuICBBZGRlZAoJICBjbVRhcmdldDo6R2V0TGlicmFyeUNsZWFuTmFtZXMgdG8gYmUgdXNlZCBieQoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi4gIE5vdyB3aGVuIGEgbGlicmFyeSBpcyBsaW5rZWQgYm90aAoJICB0aGUgc2hhcmVkIGFuZCBzdGF0aWMgdmVyc2lvbnMgYXJlIHJlbW92ZWQgZnJvbSB0aGUgYnVpbGQgdHJlZS4KCSAgSW4gdGhpcyB3YXkgd2UgYXZvaWQgaGF2aW5nIGJvdGgga2luZHMgb2YgbGlicmFyaWVzIHByZXNlbnQgd2hlbgoJICB0aGUgdXNlciBzd2l0Y2hlcyBCVUlMRF9TSEFSRURfTElCUyBvbi9vZmYuICBUaGlzIHByZXZlbnRzCgkgIHByb2JsZW1zIHdpdGggdHVybmluZyBvZmYgc2hhcmVkIGxpYnJhcmllcyBhbmQgdGhlbiBleHBlY3RpbmcgdGhlCgkgIGxpbmtlciB0byB1c2UgdGhlIHN0YXRpYyBsaWJyYXJpZXMgb25seSB0byBmaW5kIGl0IGlzIHVzaW5nIHRoZQoJICBvdXQtb2YtZGF0ZSBzaGFyZWQgdmVyc2lvbnMuCgoyMDA1LTA0LTIyIDE1OjIzICBraW5nCgoJKiBTb3VyY2UvOiBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBFTkg6CgkgIEFkZGVkIGNtVGFyZ2V0OjpHZXRCYXNlTmFtZSBhbmQgY21UYXJnZXQ6OkdldEZ1bGxOYW1lIG1ldGhvZHMgYW5kCgkgIHJlbW92ZWQgY21Mb2NhbEdlbmVyYXRvcjo6R2V0RnVsbFRhcmdldE5hbWUgYW5kCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyOjpHZXRCYXNlVGFyZ2V0TmFtZS4gIFRoaXMKCSAgZnVuY3Rpb25hbGl0eSBpcyBtb3JlIHNlbnNpYmx5IGltcGxlbWVudGVkIGluIGNtVGFyZ2V0LiAgSXQgaXMKCSAgYWxzbyBuZWVkZWQgZm9yIGFuIHVwY29taW5nIGZlYXR1cmUgaW4gd2hpY2ggYm90aCB0aGUgc2hhcmVkIGFuZAoJICBzdGF0aWMgdmVyc2lvbnMgb2YgYSBsaWJyYXJ5IHdpbGwgYmUgcmVtb3ZlZCBiZWZvcmUgb25lIGlzCgkgIGxpbmtlZC4KCjIwMDUtMDQtMjIgMTM6NTIgIGtpbmcKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IENPTVA6IENvbW1lbnRlZCBvdXQgdW51c2VkCgkgIHZhcmlhYmxlIHVudGlsIHRoZSBjb3JyZXNwb25kaW5nIGxvZ2ljIGlzIGZpbmlzaGVkLgoKMjAwNS0wNC0yMiAxMTo1NyAga2luZwoKCSogU291cmNlL2t3c3lzLzogaGFzaHRhYmxlLmh4eC5pbiwga3dzeXNfc3RsX3N0cmluZy5oeHguaW46IENPTVA6CgkgIFJlbW92ZWQgbGluZSBjb250aW51YXRpb24gY2hhcmFjdGVycyBmcm9tICNpZiBsaW5lcyB0byBhdm9pZAoJICBsaW5lZmVlZCBwcm9ibGVtcyBvbiBjeWd3aW4uCgoyMDA1LTA0LTIyIDA5OjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogQlVHOiBEcmFzdGljYWxseSBleHRlbmRpbmcgdGVzdDUncwoJICB0aW1lb3V0cyB0byBnZXQgaXQgdG8gcGFzcyB3aGVuIHJ1bm5pbmcgb24gYSBoZWF2aWx5LWxvYWRlZAoJICBtYWNoaW5lLgoKMjAwNS0wNC0yMiAwOToyMiAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogRml4ZWQKCSAgYXNzaWdubWVudC1pbi1jb25kaXRpb25hbCB3YXJuaW5nLgoKMjAwNS0wNC0yMiAwOToyMSAga2luZwoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eDogQ09NUDogRml4ZWQgY29uc3RhbnQKCSAgY29uZGl0aW9uYWwgd2FybmluZy4KCjIwMDUtMDQtMjIgMDk6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQ09NUDogRml4ZWQgdW51c2VkIHBhcmFtZXRlciBhbmQKCSAgY29uc3RhbnQgY29uZGl0aW9uYWwgd2FybmluZ3MuCgoyMDA1LTA0LTIyIDAzOjAzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMjEgMTg6MjMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogUmVvcmdhbml6ZSBhIGJpdCBhbmQKCSAgbWFrZSBzdXJlIHRvIHJlcG9ydCBhbiBlcnJvciBpZiB0aGVyZSBhcmUgbW9kaWZpZWQgZmlsZXMgb3IKCSAgY29uZmxpY3RzCgoyMDA1LTA0LTIxIDE3OjAwICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mb3JtLmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9pbnRlcm5hbF9zdGRpb19jb3JlLmguaW4sCgkgIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NteG1scnBjL2ludGVybmFsX3N0ZGlvX2NvcmUuaC5pbiwKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwYy5oOiBDT01QOiBVc2luZyBhIG5ldyB3b3JrLWFyb3VuZCBmb3IKCSAgc3RkYXJnLmggcHJvYmxlbSBvbiBTR0kuCgoyMDA1LTA0LTIxIDE2OjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvaGFzaHRhYmxlLmh4eC5pbjogQlVHOiBGaXhlZCBoYXNoX2FsbG9jYXRvcl9uIHNpemUKCSAgY29tcHV0YXRpb24uCgoyMDA1LTA0LTIxIDE2OjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdGhhc2guY3h4OiBFTkg6IEFkZGVkIGluY2x1ZGUtd29yay1hcm91bmQgZm9yCgkgIGhhc2h0YWJsZS5oeHguaW4gZGVwZW5kZW5jeS4KCjIwMDUtMDQtMjEgMTY6MDUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3NVTklYLmMsIFByb2Nlc3NXaW4zMi5jOiBCVUc6IERvIG5vdCBjbG9zZQoJICBzdGRvdXQvc3RkZXJyIHBpcGVzIGluIHBhcmVudCBpZiB0aGV5IGFyZSBzaGFyZWQuCgoyMDA1LTA0LTIxIDEzOjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBDT01QOiBEbyBub3QgZG8gdmFfbGlzdCBoYWNrIGlmCgkgIHRoZXJlIGlzIG5vIHN0ZDo6IG5hbWVzcGFjZS4KCjIwMDUtMDQtMjEgMTM6NDcgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvQ29uZmlndXJlLmh4eC5pbiwgU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBDT01QOiBBZGRlZCBLV1N5cwoJICB0cnktY29tcGlsZXMgS1dTWVNfU1RMX0hBU19BTExPQ0FUT1JfVEVNUExBVEUgYW5kCgkgIEtXU1lTX1NUTF9IQVNfQUxMT0NBVE9SX09CSkVDVFMuICBOZWVkZWQgZm9yIG1vcmUgb2xkLXN0bCBzdXBwb3J0CgkgIGluIHRoZSBoYXNodGFibGUuCgoyMDA1LTA0LTIxIDA5OjMzICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMvQ01ha2VMaXN0cy50eHQ6IENPTVA6IERvIG5vdCBidWlsZCB0aGUgZmlsZQoJICB3aGVuIHdpZGUgY2hhciBpcyBub3Qgc2V0IHNpbmNlIHRoZSBmaWxlIHdvdWxkIGJlIGVtcHR5CgoyMDA1LTA0LTIxIDAyOjUwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMjAgMTY6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0yMCAwODo1MyAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEJVRzogQWRqdXN0aW5nIHRpbWVvdXRzIGZvciB0ZXN0cyA0CgkgIGFuZCA1IHRvIGF2b2lkIGVhcmx5IGtpbGxpbmcuCgoyMDA1LTA0LTE5IDE4OjM1ICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjLmg6IENPTVA6IEF0dGVtcHQgdG8gZml4IHByb2JsZW0gd2l0aAoJICBidWlsZGluZyBvbiBTR0kKCjIwMDUtMDQtMTkgMTg6MjYgIGFuZHkKCgkqIFNvdXJjZS86IEN1cnNlc0RpYWxvZy9mb3JtL2Zvcm0uaCwga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOgoJICBDT01QOiBBdHRlbXB0IHRvIGZpeCBwcm9ibGVtIHdpdGggYnVpbGRpbmcgb24gU0dJCgoyMDA1LTA0LTE5IDExOjUyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBXaGVuIGtpbGxpbmcgYSBjaGlsZCBhbGwgdGhlCgkgIHBpcGUgcmVhZCBlbmRzIHNob3VsZCBiZSBjbG9zZWQuICBUaGlzIHdpbGwgYWxsb3cgYSBjaGlsZCB0aGF0IGlzCgkgIGJsb2NraW5nIHdoaWxlIHdhaXRpbmcgdG8gd3JpdGUgdG8gdGhlIHBpcGUgdG8gd2FrZSB1cCBhbmQKCSAgcmVjZWl2ZSB0aGUga2lsbCBzaWduYWwgcHJvcGVybHkgb24gY3lnd2luLgoKMjAwNS0wNC0xOSAxMDo1MiAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEJVRzogRXhwYW5kZWQgZGlmZmVyZW5jZSBpbiB0aW1lb3V0cwoJICBiZXR3ZWVuIHRlc3RzIDQgYW5kIDUgc28gdGhhdCA1IGRvZXMgbm90IHRpbWVvdXQgd2hpbGUgd2FpdGluZwoJICBmb3IgNCB0byB0aW1lb3V0LiAgVGhpcyBzaG91bGQgZml4IHRoZSBpbnRlcm1pdHRlbnQgZmFpbHVyZSBvZgoJICB0ZXN0IDUgb24gY3lnd2luLiAgRU5IOiBXaGVuIGEgbWlzbWF0Y2ggaXMgcmVwb3J0ZWQgaXQgbm93CgkgIHJlcG9ydHMgd2hhdCBpdCB3YXMgYXMgd2VsbCBhcyB3aGF0IGl0IHNob3VsZCBoYXZlIGJlZW4uCgoyMDA1LTA0LTE5IDA5OjUyICBraW5nCgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2RhdGEuYzogQ09NUDogRml4IE1BS0VfV0NTX0JMT0NLX05VTEwKCSAgd2hlbiBIQVZFX1VOSUNPREVfV0NIQVIgaXMgb2ZmLgoKMjAwNS0wNC0xOSAwOTo1MiAga2luZwoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19jb25maWcuaC5pbjogQlVHOiBOZWVkIHRvIHVzZQoJICAjY21ha2VkZWZpbmUgZm9yIEhBVkVfVU5JQ09ERV9XQ0hBUi4KCjIwMDUtMDQtMTkgMDk6NTIgIGtpbmcKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dDogQlVHOiBEbyBub3QgcHJvdmlkZQoJICBIQVZFX1VOSUNPREVfV0NIQVIgb3B0aW9uIGlmIHdjaGFyLmggaXMgbm90IGF2YWlsYWJsZS4KCjIwMDUtMDQtMTUgMTg6NTcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBCVUc6IEZvciBzb21lIHJlYXNvbiB0aGUKCSAgbm9uLXRlbXBsYXRlIGFsbG9jYXRvciB0ZXN0IGNvbXBpbGVzIG9uIFZTNiBldmVuIHRob3VnaCBpdHMKCSAgYWxsb2NhdG9yIGlzIGEgdGVtcGxhdGUuICBBZGRpbmcgOjpzaXplX3R5cGUgdG8gYmUgc3VyZSBpdAoJICBhY2Nlc3NlcyBhIG1lbWJlciBvZiB0aGUgYWxsb2NhdG9yLgoKMjAwNS0wNC0xNSAxODo0OSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IEJVRzogRml4IGl0ZXJhdG9yIHRyYWl0cwoJICB0ZXN0IHRvIHVzZSBhIHJlYWwgaXRlcmF0b3IgaW5zdGVhZCBvZiBpbnQqLgoKMjAwNS0wNC0xNSAxNjoxMCAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBCVUc6IENhbm5vdCB1c2UgV2luMzIgaW1wbGVtZW50YXRpb24KCSAgZm9yIGN5Z3dpbiBwcm9jZXNzZXMgYmVjYXVzZSB0aGVuIGN5Z3dpbiBwYXRocyB0byBleGVjdXRhYmxlcwoJICBsaWtlIC91c3IvYmluL2xzIGFyZSBub3QgZm91bmQuCgoyMDA1LTA0LTE1IDE2OjAwICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oeHguaW4sIFNvdXJjZS9rd3N5cy9oYXNoX2Z1bi5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9oYXNodGFibGUuaHh4LmluLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eCwKCSAgU291cmNlL2t3c3lzL2t3c3lzX2NzdGRkZWYuaHh4LmluOiBDT01QOiBBZGRlZAoJICBLV1NZU19DWFhfSEFTX0NTVERERUYgdHJ5LWNvbXBpbGUgdG8gS1dTeXMgdG8gcHJvdmlkZQoJICBrd3N5cy9jc3RkZGVmIGhlYWRlciAodG8gZ2V0IHNpemVfdCBmb3IgaGFzaF9mdW4uaHh4KS4KCjIwMDUtMDQtMTUgMTU6MzAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IGhhc2hfbWFwLmh4eC5pbiwgaGFzaF9zZXQuaHh4LmluLAoJICBoYXNodGFibGUuaHh4LmluOiBDT01QOiBSZXBsYWNlZCBrd3N5c19zdGwgd2l0aAoJICBAS1dTWVNfTkFNRVNQQUNFQF9zdGwgdG8gcHJvcGVybHkgdXNlIHRoZSBjb25maWd1cmVkIG5hbWVzcGFjZS4KCjIwMDUtMDQtMTUgMTU6MTggIGJhcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBtb3ZlCgkgIGNvbnZlbmllbmNlIG1ldGhvZCB0byBnZXQgT1MgbmFtZSBhbmQgdmVyc2lvbiBmcm9tIEtXQXBwIHRvCgkgIEtXU3lzLgoKMjAwNS0wNC0xNSAxNDo0NyAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBTVFlMRTogRml4IGVuZ2xpc2gKCjIwMDUtMDQtMTUgMTM6NTYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogQWRkZWQgbWlzc2luZyB2YXJpYWJsZQoJICBpbml0aWFsaXphdGlvbiB0aGF0IHdhcyBhY2NpZGVudGFsbHkgcmVtb3ZlZCBvbiB0aGUgcHJldmlzb3VzCgkgIGNvbW1pdC4KCjIwMDUtMDQtMTUgMTM6MzUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBDaGFuZ2luZyBrd3N5c1Byb2Nlc3MKCSAgaW1wbGVtZW50YXRpb24gb24gQ3lnd2luIHRvIHVzZSB0aGUgV2luMzIgaW1wbGVtZW50YXRpb24gaW5zdGVhZAoJICBvZiB0aGUgVU5JWCBpbXBsZW1lbnRhdGlvbi4gIFRoaXMgbWFrZXMgZGVhbGluZyB3aXRoIG1pc2JlaGF2aW5nCgkgIGNoaWxkcmVuIHdvcmsgYmV0dGVyLiAgVGhlIEtXU3lzIFdpbjMyIHByb2Nlc3MgaW1wbGVtZW50YWlvbiBpcwoJICBtb3JlIHJvYnVzdCB0aGFuIHRoZSBDeWd3aW4gaW1wbGVtZW50YXRpb24gKHBhcnRseSBiZWNhdXNlIGl0CgkgIGRvZXNuJ3QgaGF2ZSB0byBleGFjdGx5IHJlcHJvZHVjZSB0aGUgUE9TSVggYXBpKS4KCjIwMDUtMDQtMTUgMTA6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogQlVHOiB3b3JrIGFyb3VuZCBmb3IgYnVnZ3kgVGlnZ2VyCgkgIE9TWCBzeXN0ZW1zIHRoYXQgcmVhZCB0d28gY29waWVzIG9mIHRoZSBzYW1lIGZpbGUgaW4gYSBkaXJlY3RvcnkKCjIwMDUtMDQtMTUgMDk6NTQgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvQ29uZmlndXJlLmh4eC5pbiwgU291cmNlL2t3c3lzL2hhc2hfbWFwLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL2hhc2hfc2V0Lmh4eC5pbiwgU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBFTkg6IEFkZGVkIEtXU3lzCgkgIHRyeS1jb21waWxlcyBLV1NZU19TVExfSEFTX0lURVJBVE9SX1RSQUlUUywKCSAgS1dTWVNfU1RMX0hBU19JVEVSQVRPUl9DQVRFR09SWSwKCSAgS1dTWVNfU1RMX0hBU19fX0lURVJBVE9SX0NBVEVHT1JZLCBhbmQKCSAgS1dTWVNfU1RMX0hBU19BTExPQ0FUT1JfTk9OVEVNUExBVEUgdG8gZ2V0IHRoZSBoYXNoIHRhYmxlIHRvCgkgIGNvbXBpbGUgb24gb2xkIEhQIGFuZCBTdW4gY29tcGlsZXJzLgoKMjAwNS0wNC0xNSAwOTozNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTE1IDA5OjA1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvaGFzaF9tYXAuaHh4LmluOiBDT01QOiBSZXBsYWNpbmcgX1NlbGVjdDFzdCB3aXRoIGEKCSAgc3BlY2lhbGl6ZWQgaGFzaF9zZWxlY3Qxc3QgdGhhdCBhdm9pZHMgcmVxdWlyaW5nIHRoZSBzdGwgcGFpciB0bwoJICBoYXZlIGZpcnN0X3R5cGUgZGVmaW5lZC4gIFRoZSBvbGQgSFAgU1RMIGRvZXMgbm90IGRlZmluZQoJICBmaXJzdF90eXBlIGFuZCBzZWNvbmRfdHlwZSBpbiBpdHMgcGFpci4KCjIwMDUtMDQtMTUgMDg6NTkgIGtpbmcKCgkqIGJvb3RzdHJhcCwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvQ29uZmlndXJlLmh4eC5pbiwgU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBFTkg6IEFkZGVkCgkgIEtXU1lTX0NYWF9IQVNfQVJHVU1FTlRfREVQRU5ERU5UX0xPT0tVUCB0cnktY29tcGlsZSB0byBLV1N5cy4KCSAgTmVlZGVkIHRvIG9wdGlvbmFsbHkgYnJpbmcgaGFzaCB0YWJsZSBjb21wYXJpc29uIG9wZXJhdG9ycyBpbnRvCgkgIHRoZSBnbG9iYWwgbmFtZXNwYWNlIHdoZW4gYXJndW1lbnQgZGVwZW5kZW50IGxvb2t1cCBpcyBub3QKCSAgc3VwcG9ydGVkLgoKMjAwNS0wNC0xNSAwODoyNSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogUmVtb3ZlZCBleHRyYSB2YXJpYWJsZQoJICBpbml0aWFsaXphdGlvbnMgdG8gYXZvaWQgQm9ybGFuZCB3YXJuaW5ncy4KCjIwMDUtMDQtMTQgMDQ6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0xMyAyMzowNCAga2luZwoKCSogU291cmNlL2t3c3lzLzogaGFzaF9tYXAuaHh4LmluLCBoYXNoX3NldC5oeHguaW4sCgkgIGhhc2h0YWJsZS5oeHguaW46IENPTVA6IFJlbW92ZSBmcmllbmQgdGVtcGxhdGVzIGFuZCBhbHdheXMgdXNlCgkgIHRlbXBsYXRlIGZyaWVuZHMgKHBvc3NpYmx5IHdpdGggPD4pLglOZWVkZWQgdG8gd29yay1hcm91bmQgU3VuCgkgIENDIGJ1Zy4KCjIwMDUtMDQtMTMgMjM6MDMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0U3lzdGVtVG9vbHMuY3h4OiBDT01QOiBEaXNhYmxlIE1TVkMgZGVidWcgc3ltYm9sCgkgIHRydW5jYXRpb24gd2FybmluZy4KCjIwMDUtMDQtMTMgMTg6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4OiBFTkg6IEZvciBzYW5pdHksIGNyZWF0ZQoJICBkaXJlY3RvcnkgYmVmb3JlIGNyZWF0aW5nIGdlbmVyYXRlZCBmaWxlIHN0cmVhbQoKMjAwNS0wNC0xMyAxNzo1OCAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IFRoZSB0ZXN0MSBleGVjdXRhYmxlIGhhcyBiZWVuIHJlbW92ZWQKCSAgZnJvbSBrd3N5cy4gIEluc3RlYWQgdXNpbmcgdGVzdElPUyBmb3IgdGhlIGt3c3lzIHRlc3QuCgoyMDA1LTA0LTEzIDE2OjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IFNUWUxFOiBSZW5hbWluZyBrd3N5cy1oYXNoIHRlc3QgdG8KCSAga3dzeXMtdGVzdGhhc2ggZm9yIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgdGVzdHMuCgoyMDA1LTA0LTEzIDE2OjU1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogQ09NUDogUmVtb3ZpbmcgcmV0dXJuIHZhbHVlIGZyb20KCSAgdGVzdDYuICBJdCBpcyBhbiBpbmZpbml0ZSBsb29wLCBzbyB0aGUgcmV0dXJuIGNhdXNlcyB3YXJuaW5ncy4KCSAgSXQgd2lsbCBuZXZlciByZXR1cm4gYW55d2F5LgoKMjAwNS0wNC0xMyAxNjo0NyAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIHRlc3QxLmN4eDogRU5IOiBSZW1vdmluZyBvbGQKCSAgdGVzdDEuYyBQcm9jZXNzIGV4ZWN1dGlvbiBleGFtcGxlLiAgSXQgaXMgZnVsbHkgcmVwbGFjZWQgYnkKCSAgdGVzdFByb2Nlc3MuCgoyMDA1LTA0LTEzIDE2OjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBCYXNlNjQuYywgQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LCBEaXJlY3RvcnkuY3h4LAoJICBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYywgUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBTeXN0ZW1Ub29scy5jeHgsIHRlc3QxLmN4eCwgdGVzdENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgdGVzdElPUy5jeHgsIHRlc3RQcm9jZXNzLmMsIHRlc3RTeXN0ZW1Ub29scy5jeHgsIHRlc3RoYXNoLmN4eDoKCSAgQ09NUDogQWRkaW5nIHdvcmstYXJvdW5kIGZvciBDTWFrZSBkZXBlbmRlbmN5IHNjYW5uaW5nCgkgIGxpbWl0YXRpb24uICBBbnkgY29uZmlndXJlZCBoZWFkZXIgaW5jbHVkZWQgYnkgS1dTWVNfSEVBREVSKCkgaW4KCSAgYSAuYyBvciAuY3h4IGZpbGUgaW4ga3dzeXMgaXRzZWxmIG11c3QgdXNlIHRoaXMgaGFjayB0byBnZXQKCSAgZGVwZW5kZW5jaWVzLgoKMjAwNS0wNC0xMyAxNjozNSAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtU291cmNlRmlsZS5jeHgsIGNtU291cmNlRmlsZS5oOiBFTkg6CgkgIFNwZWVkdXAgYnkgc3RvcmluZyBzb3VyY2UgbmFtZSB3aXRob3V0IGxhc3QgZXh0ZW5zaW9uCgoyMDA1LTA0LTEzIDE2OjM0ICBhbmR5CgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IFNwZWVkdXAgYnkgb25seSBnZXR0aW5nIHRoZSBzb3VyY2Ugb25jZQoKMjAwNS0wNC0xMyAxNjoyNSAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEltcHJvdmUgcGVyZm9ybWFuY2UgYnkgdXNpbmcKCSAgdmVjdG9yIG9mIGNoYXIgaW5zdGVhZCBvZiBzdHJpbmcKCjIwMDUtMDQtMTMgMTY6MDUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0U3lzdGVtVG9vbHMuY3h4OiBCVUc6IE9ubHkgZG8gfiB0ZXN0IGlmIEhPTUUKCSAgdmFyaWFibGUgaXMgZGVmaW5lZC4KCjIwMDUtMDQtMTMgMTU6NTcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBCVUc6IEF2b2lkIGVycm9yIGRpYWdub3N0aWMgcG9wdXBzIG9uCgkgIHdpbmRvd3MgZm9yIHRlc3QgdGhhdCBjcmFzaGVzIG9uIHB1cnBvc2UuCgoyMDA1LTA0LTEzIDE1OjM5ICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oeHguaW4sIFNvdXJjZS9rd3N5cy9oYXNodGFibGUuaHh4LmluLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eDogQ09NUDogQWRkZWQKCSAgS1dTWVNfU1RMX0hBU19BTExPQ0FUT1JfTUFYX1NJWkVfQVJHVU1FTlQgY2hlY2sgZm9yIG5vbi1zdGFuZGFyZAoJICBhcmd1bWVudCB0byBzdGwgYWxsb2NhdG9yPD46Om1heF9zaXplIG1ldGhvZC4gIE5lZWRlZCBmb3Iga3dzeXMKCSAgaGFzaHRhYmxlIHRvIGNvbXBpbGUgb24gU3VuIENDLgoKMjAwNS0wNC0xMyAxNToyOSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHg6IEJVRzoKCSAgYWxsb2NhdG9yPD46OnJlYmluZDw+IHRlc3Qgc2hvdWxkIHVzZSBrd3N5c19zdGw6OmFsbG9jYXRvciwgbm90CgkgIHN0ZDo6YWxsb2NhdG9yLgoKMjAwNS0wNC0xMyAxNToyMiAga2luZwoKCSogU291cmNlL2t3c3lzL2hhc2h0YWJsZS5oeHguaW46IENPTVA6IEZpeCBmb3IgU3VuIENDIHN0bCBhbGxvY2F0b3IKCSAgc2lnbmF0dXJlIG9mIGFsbG9jYXRlIG1ldGhvZC4KCjIwMDUtMDQtMTMgMTU6MDQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9oYXNodGFibGUuaHh4LmluOiBCVUc6IFdoZW4gY29uc3RydWN0aW5nIHRoZSBidWNrZXQKCSAgdmVjdG9yIHR5cGUgdGhlIGFsbG9jYXRvciBnaXZlbiBtdXN0IGhhdmUgYmVlbiByZWJvdW5kIHRvIF9Ob2RlKgoJICBhbHJlYWR5IGJlY2F1c2UgR0NDIDMuNCdzIHZlY3RvciB0eXBlIGRvZXMgbm90IHJlYmluZCBpdC4KCjIwMDUtMDQtMTMgMTQ6NDMgIGtpbmcKCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBiZXR0ZXIgZXJyb3IgbWVzc2FnZQoJICB3aGVuIFRSWV9DT01QSUxFIGRvZXMgbm90IHJlY29nbml6ZSBhbiBleHRlbnNpb24uCgoyMDA1LTA0LTEzIDE0OjM3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpeCBHZXRGaWxlbmFtZU5hbWUgdG8gbm90IHVzZQoJICB1bmluaXRpYWxpemVkIHNlYXJjaCBwb3NpdGlvbiBpbiB3aW4zMiB2ZXJzaW9uLgoKMjAwNS0wNC0xMyAxNDoxMyAga2luZwoKCSogYm9vdHN0cmFwOiBCVUc6IEFkZGVkIG1vcmUgdHJ5LWNvbXBpbGVzIGZyb20ga3dzeXMuCgoyMDA1LTA0LTEzIDE0OjEzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eDogQlVHOiBGaXhlZCBtZW1iZXIKCSAgdGVtcGxhdGUgdGVzdCB0byBub3QgcHJvZHVjZSBhIHRlc3QgcHJvZ3JhbSB0aGF0IGNyYXNoZXMgd2hlbiBpdAoJICBydW5zLgoKMjAwNS0wNC0xMyAxMzo1OSAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBTcGVlZHVwIGltcHJvdmVtZW50cwoKMjAwNS0wNC0xMyAxMzo1NyAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sIFByb2Nlc3MuaC5pbiwKCSAgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmMsIHRlc3QxLmN4eCwKCSAgdGVzdENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwgdGVzdElPUy5jeHgsIHRlc3RQcm9jZXNzLmMsCgkgIHRlc3RTeXN0ZW1Ub29scy5jeHgsIHRlc3RoYXNoLmN4eDogRU5IOiBEbyBrd3N5cyB0ZXN0aW5nIGFzIHBhcnQKCSAgb2YgY21ha2UgdGVzdGluZywgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBhcmUgbm90IGV4cGVyaW1lbnRhbCBhbmQKCSAgYWRkIHNpbXBsZSB0ZXN0IGZvciBzeXN0ZW10b29scwoKMjAwNS0wNC0xMyAxMzo0MyAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogQlVHOiBmaXggY2xlYW4gYWN0aW9uCgoyMDA1LTA0LTEzIDEyOjQ0ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogTW92ZSBtaW5vcgoJICB2ZXJzaW9uIHRvIDIuMC42CgoyMDA1LTA0LTEzIDA5OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggaW5zZXJ0IGZvciA2NCBiaXQKCjIwMDUtMDQtMTMgMDg6MDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaHh4LmluLCBoYXNoX2Z1bi5oeHguaW4sCgkgIGhhc2hfbWFwLmh4eC5pbiwgaGFzaF9zZXQuaHh4LmluLCBoYXNodGFibGUuaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4LCB0ZXN0aGFzaC5jeHg6IEVOSDogQWRkaW5nIFNHSSBoYXNoX21hcAoJICBhbmQgaGFzaF9zZXQgaW1wbGVtZW50YXRpb24gcG9ydGVkIGZyb20gU1RMIHRvIEtXU3lzLiAgVGhpcyBhbHNvCgkgIGFkZHMgdHJ5LWNvbXBpbGVzIGZvciBLV1NZU19TVExfSEFTX0FMTE9DQVRPUl9SRUJJTkQsCgkgIEtXU1lTX0NYWF9IQVNfRlVMTF9TUEVDSUFMSVpBVElPTiwKCSAgS1dTWVNfQ1hYX0hBU19NRU1CRVJfVEVNUExBVEVTLCBhbmQKCSAgS1dTWVNfQ1hYX0hBU19OVUxMX1RFTVBMQVRFX0FSR1MuCgoyMDA1LTA0LTEzIDA4OjA1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfc3RsLmh4eC5pbjogRU5IOiBBZGRlZAoJICBfX0hQQUNDX1VTSU5HX01VTFRJUExJRVNfSU5fRlVOQ1RJT05BTCBmaXggZnJvbSB2dGtzdGQuCgoyMDA1LTA0LTEzIDA0OjM5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMTIgMTU6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IEFtYmlndWl0eSBpbgoJICBpbnNlcnQgY2FsbAoKMjAwNS0wNC0xMiAxNToxMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGFkZCBtaXNzaW5nIGhlYWRlciBmb3IgYm9ybGFuZAoKMjAwNS0wNC0xMiAxMzozMyAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogRml4ZWQgYW1iaWd1b3VzIGNhbGwgdG8KCSAgaW5zZXJ0IG1ldGhvZCBvZiBzdHJpbmcuCgoyMDA1LTA0LTEyIDEzOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTWFjcm9Db21tYW5kLmN4eCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMKCjIwMDUtMDQtMTIgMTM6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURlcGVuZHMuY3h4OiBFTkg6IGRvIG5vdCBjb2xsYXBzZSBmdWxsIHBhdGggZm9yIGN3ZAoKMjAwNS0wNC0xMiAxMzoyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRU5IOiBtYWtlIHJlZ2V4IHN0YXRpYyBzbyBpdCBpcyBub3QKCSAgcmVjb21wdXRlZCBmb3IgZWFjaCBsaW5lIG9mIHRoZSBjYWNoZQoKMjAwNS0wNC0xMiAxMzoyNSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDoKCSAgb3B0aW1pemF0aW9uIG9mIGN3ZCBhbmQgZG8gbm90IGxlYWsgbGlicmFyeSBoYW5kbGUKCjIwMDUtMDQtMTIgMDk6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBsb2NhbCBnZW4gd2FzIHNldHRpbmcgcHJvaiBkaXIKCSAgd2hlbiBpdCBzaG91bGRudAoKMjAwNS0wNC0xMiAwOTozNSAgbWFydGluawoKCSogVGVzdHMvT3V0T2ZTb3VyY2UvT3V0T2ZTb3VyY2VTdWJkaXIvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWxzbwoJICB0ZXN0IGZvciBjb3JyZWN0IFByb2ogZGlyIHNldHRpbmdzCgoyMDA1LTA0LTEyIDAzOjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMTEgMTI6MzggIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBmaXggR2V0TG9uZ1BhdGhOYW1lCgkgIGZvciBhbGwgdmVyc2lvbnMgb2Ygd2luZG93cwoKMjAwNS0wNC0xMSAxMjoyMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggR2V0TG9uZ1BhdGhOYW1lIGZvcgoJICBXaW5kb3dzTlQKCjIwMDUtMDQtMTEgMDQ6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0xMCAwNDowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTA5IDAyOjM4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMDggMTI6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LCBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmg6CgkgIEJVRzogaGFuZGxlIGNhc2UgaW5zZW5zaXRpdmUgbGlicmFyeSBleHRlbnNpb25zIG9uIHdpbmRvd3MKCjIwMDUtMDQtMDggMDg6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IGJ1aWxkIG9uIG1pbmd3CgoyMDA1LTA0LTA4IDAyOjM3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMDcgMTc6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBCVUc6IG1vdmUgZml4IGZvciAtRSBvcHRpb24gdG8gYnJhbmNoCgoyMDA1LTA0LTA3IDE3OjI0ICBob2ZmbWFuCgoJKiBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IG1lcmdlIGZyb20gbWFpbiB0cmVlIGZpeAoJICBmb3IgY29tbWFuZCBsaW5lIHRlc3QKCjIwMDUtMDQtMDcgMTc6MjIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBhZGQgZXJyb3IgY2hlY2tpbmcgb24gR2V0TG9uZ1BhdGgKCjIwMDUtMDQtMDcgMTc6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogaWYgc2hvcnQgcGF0aCBvciBsb25nIHBhdGgKCSAgZmFpbHMgcmV0dXJuIHRoZSBvcmlnaW5hbCBpbnB1dAoKMjAwNS0wNC0wNyAxNjo1OCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBjaGVjayByZXR1cm4gdmFsdWUgb2YKCSAgR2V0TG9uZ1BhdGgKCjIwMDUtMDQtMDcgMTY6MTIgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6IE1lcmdlIGluIGZpeCBmb3Igd2luMzIgcHJvY2VzcwoJICBzdHVmZgoKMjAwNS0wNC0wNyAxNjowOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBmaXggaW5zdGFsbCB0ZXN0IHdpdGggeGNvZGUsIHRoZSB4Y29kZSBnZW5lcmF0b3IgZG9lcyBub3QKCSAgc3VwcG9ydCBsaWJyYXJ5IHZlcnNpb25pbmcgeWV0CgoyMDA1LTA0LTA3IDE1OjA5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IEF2b2lkIGNvbnZlcnRpbmcKCSAgdGhlIHN1YmRpcmVjdG9yeSBuYW1lIHRvIGEgcmVsYXRpdmUgcGF0aCB0d2ljZS4KCjIwMDUtMDQtMDcgMTQ6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBEbyBub3QgcmVwZWF0IHBhdGhzIHdoZW4gdHJ5aW5nIHRoZQoJICBsaWIvIHRvIGxpYjY0LyByZXBsYWNlbWVudC4KCjIwMDUtMDQtMDcgMTQ6MzAgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGRpbmcgYXV0b21hdGljIGdlbmVyYXRpb24gb2YKCSAgc2V2ZXJhbCA2NC1iaXQgc2VhcmNoIHBhdGggZm9ybXMuCgoyMDA1LTA0LTA3IDE0OjI3ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsIEZpbmRBVklGaWxlLmNtYWtlLAoJICBGaW5kRkxUSy5jbWFrZSwgRmluZEdMVVQuY21ha2UsIEZpbmRHVEsuY21ha2UsIEZpbmRKTkkuY21ha2UsCgkgIEZpbmRKUEVHLmNtYWtlLCBGaW5kSmF2YS5jbWFrZSwgRmluZE1QRUcuY21ha2UsIEZpbmRNUEVHMi5jbWFrZSwKCSAgRmluZE9wZW5HTC5jbWFrZSwgRmluZFBIUDQuY21ha2UsIEZpbmRQTkcuY21ha2UsCgkgIEZpbmRQZXJsTGlicy5jbWFrZSwgRmluZFB5dGhvbkxpYnMuY21ha2UsIEZpbmRRdC5jbWFrZSwKCSAgRmluZFJ1YnkuY21ha2UsIEZpbmRTREwuY21ha2UsIEZpbmRTV0lHLmNtYWtlLCBGaW5kVENMLmNtYWtlLAoJICBGaW5kVElGRi5jbWFrZSwgRmluZFgxMS5jbWFrZSwgRmluZFpMSUIuY21ha2U6IEVOSDogUmVtb3ZpbmcKCSAgZXh0cmEgNjQtYml0IHNlYXJjaCBwYXRocy4gIFRoZXkgYXJlIG5vdyBjb25zdHJ1Y3RlZAoJICBhdXRvbWF0aWNhbGx5IGZyb20gdGhlIHBhdGhzIGxpc3RlZC4KCjIwMDUtMDQtMDcgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEJVRzogRml4IHJ1bGUgbmFtZSBmb3IKCSAgc3ViZGlyZWN0b3J5IHRyYXZlcnNhbCB0byB1c2UgcmVsYXRpdmUgcGF0aHMuICBUaGlzIHdhcyBicm9rZW4gYnkKCSAgdGhlIHJlY2VudCBzdWJkaXJlY3RvcnkgY2hhbmdlcy4KCjIwMDUtMDQtMDcgMTM6NDYgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUphdmFDb21waWxlci5jbWFrZSwgRmluZEFWSUZpbGUuY21ha2UsCgkgIEZpbmRGTFRLLmNtYWtlLCBGaW5kR0xVVC5jbWFrZSwgRmluZEdUSy5jbWFrZSwgRmluZEpOSS5jbWFrZSwKCSAgRmluZEpQRUcuY21ha2UsIEZpbmRKYXZhLmNtYWtlLCBGaW5kTVBFRy5jbWFrZSwgRmluZE1QRUcyLmNtYWtlLAoJICBGaW5kT3BlbkdMLmNtYWtlLCBGaW5kUEhQNC5jbWFrZSwgRmluZFBORy5jbWFrZSwKCSAgRmluZFBlcmxMaWJzLmNtYWtlLCBGaW5kUHl0aG9uTGlicy5jbWFrZSwgRmluZFF0LmNtYWtlLAoJICBGaW5kUnVieS5jbWFrZSwgRmluZFNETC5jbWFrZSwgRmluZFNXSUcuY21ha2UsIEZpbmRUQ0wuY21ha2UsCgkgIEZpbmRUSUZGLmNtYWtlLCBGaW5kWDExLmNtYWtlLCBGaW5kWkxJQi5jbWFrZTogRU5IOiBBZGRpbmcKCSAgc3VwcG9ydCBmb3IgNjQtYml0IGxpYnJhcnkgcGF0aHMuICBDb250cmlidXRlZCBieSBQZXRlciBWYW5yb29zZS4KCjIwMDUtMDQtMDcgMTM6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbjogQlVHOiBmaXggZm9yIGJ1ZyAxNzE3IGluY29ycmVjdCBwYXRoCgkgIHNlbnQgdG8gZGFydCBzZXJ2ZXIKCjIwMDUtMDQtMDcgMTI6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiByZW1vdmUgZGVidWcgc3RhdGVtZW50CgoyMDA1LTA0LTA3IDEyOjEyICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmg6IG1vdmUgZml4IGZvciByZWxhdGl2ZSBwYXRocyBmcm9tIG1haW4KCSAgdHJlZQoKMjAwNS0wNC0wNyAxMjoxMSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE3MTcgdXNlCgkgIHRoZSBjb3JyZWN0IHBhdGggZm9yIERhcnQgc2VydmVyIG9uIHdhcm5pbmdzIGFuZCBlcnJvcnMKCjIwMDUtMDQtMDcgMTA6MzcgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmg6IG1vdmUgZnJvbSBtYWluIHRyZWUKCjIwMDUtMDQtMDcgMDI6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0wNiAxNjo1MyAga2luZwoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBTVFlMRTogRml4ZWQgc3BlbGxpbmcgb2YgIm1lbW1vcnkiLgoKMjAwNS0wNC0wNiAxNjoxNSAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBCVUc6IEF2b2lkIGR1cGxpY2F0ZSBkZWZpbml0aW9uIGJ5CgkgIHVzaW5nIGNtc3lzX1NUTF9TVFJJTkdfTkVRX0NIQVJfREVGSU5FRCBhbmQKCSAgY21zeXNfU1RMX1NUUklOR19OT19ORVFfQ0hBUi4KCjIwMDUtMDQtMDYgMTY6MTQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19zdGxfc3RyaW5nLmh4eC5pbjogRU5IOiBBZGRlZCBwcm9wZXIKCSAgbmFtZXNwYWNlZCB2ZXJzaW9uIG9mIEtXU1lTX1NUTF9TVFJJTkdfSVNUUkVBTV9ERUZJTkVELAoJICBLV1NZU19TVExfU1RSSU5HX09TVFJFQU1fREVGSU5FRCwgYW5kCgkgIF9TVExfU1RSSU5HX05FUV9DSEFSX0RFRklORUQgbWFjcm9zLgoKMjAwNS0wNC0wNiAxNTowNiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4teGxjLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlc3RzL0ZvcnRyYW4vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlbW92ZWQKCSAgQ01BS0VfR0VORVJBVE9SX05FVyBub3cgdGhhdCB0aGUgb2xkIHVuaXggbWFrZWZpbGUgZ2VuZXJhdG9yIGlzCgkgIG5ldmVyIHVzZWQuCgoyMDA1LTA0LTA2IDEzOjM0ICBraW5nCgoJKiBib290c3RyYXA6IEJVRzogVGhlIGJvb3RzdHJhcCBzY3JpcHQgc2hvdWxkIHBlcmZvcm0gdGhlCgkgIEtXU1lTX1NUTF9TVFJJTkdfSEFWRV9ORVFfQ0hBUiB0ZXN0IGZvciBrd3N5cy4KCjIwMDUtMDQtMDYgMTE6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBiZXR0ZXIgZml4IGZvciA2NCBiaXQsIGFkZCA2NCB0byB0aGUKCSAgbmFtZSBvZiBhbGwgZGlyZWN0b3JpZXMgaW4gdGhlIHNlYXJjaCBwYXRoCgoyMDA1LTA0LTA2IDEwOjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogYWxsb3cgc3ViIHByb2plY3RzIHRvIHVzZQoJICB0YXJnZXRzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZSBzdWItcHJvamVjdAoKMjAwNS0wNC0wNiAwOTo0NyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogcmVtb3ZlIGNlcnIgc3R1ZmYKCjIwMDUtMDQtMDYgMDk6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEZpeCBidWcgaW4gIT0gc3R1ZmYKCjIwMDUtMDQtMDYgMDQ6MjggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0wNSAyMToxMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogaGFjayBmaXggZm9yIG9sZCBzZ2kgdW50aWwKCSAgYm9vdHN0cmFwIGlzIGZpeGVkCgoyMDA1LTA0LTA1IDE3OjA2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZSwgU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IHRyeQoJICB0byBhZGRyZXNzIEJ1ZyAxNjczIC4KCjIwMDUtMDQtMDUgMTY6MjQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogRml4IGZvciBidWcgQnVnICMxMjg3IC0gY21ha2UgdXNlCgkgIE1lc2FHTCBieSBkZWZhdWx0IGluc3RlYWQgb2YgbGliR0wgLSBSZXR1cm4gdG8gYnVnIGxpc3QKCjIwMDUtMDQtMDUgMTQ6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE2MzYgYWRkCgkgIGV4dGVuc2lvbnMgdG8gQVVYX1NPVVJDRV9ESVJFQ1RPUlkgZmlsZXMKCjIwMDUtMDQtMDUgMTM6MzkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZERDTVRLLmNtYWtlOiBNb3ZlIGZyb20gbWFpbiB0cmVlLAoJICBmaXggZm9yIDE2NTIKCjIwMDUtMDQtMDUgMTM6MzcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZERDTVRLLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDE2NTIKCjIwMDUtMDQtMDUgMTM6MzAgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IGZpeAoJICBvbiBicmFuY2ggZm9yIDE2NjAgbGFuZ3VhZ2UgTk9ORSB3b3JraW5nCgoyMDA1LTA0LTA1IDEzOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE2NjAKCjIwMDUtMDQtMDUgMTI6NTQgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWw6IGZpeGVzIG9uIGJyYW5jaAoKMjAwNS0wNC0wNSAxMjo1MiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBidWcgMTcwMiBiZXR0ZXIKCSAgZXJyb3Igb24gYmFkIEdVSUQKCjIwMDUtMDQtMDUgMTI6NTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogbW92ZSBmaXggZnJvbSBtYWluCgkgIHRyZWUgZm9yIGJ1ZyAxNjgwCgoyMDA1LTA0LTA1IDExOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE3MDAKCjIwMDUtMDQtMDUgMTA6MjIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDE3MDIsIGJldHRlcgoJICBlcnJvciBtZXNzYWdlIGZvciBHVUlEIG1pc3NpbmcKCjIwMDUtMDQtMDUgMDg6MjUgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6CgkgIEFkZGVkIENsb3NlIG1ldGhvZCBhbmQgdXBkYXRlZCBPcGVuIG1ldGhvZCB0byBhbGxvdyBzdHJlYW1zIHRvIGJlCgkgIHJldXNlZC4KCjIwMDUtMDQtMDUgMDQ6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0wNCAxNzowMSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9Vc2VTV0lHLmNtYWtlLAoJICBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4OiBGSVg6IHN3aWcgZml4ZXMgZnJvbQoJICBtYWluIHRyZWUKCjIwMDUtMDQtMDQgMTY6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvVXNlU1dJRy5jbWFrZTogRU5IOiBtYWtlIHN1cmUgc291cmNlIGZsYWdzIGRvbid0IGhhdmUgdG8KCSAgYmUgc2V0CgoyMDA1LTA0LTA0IDE2OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4OiBFTkg6IGdldCBkaXJlY3RvcnkKCSAgcHJvcGVydHkgc2hvdWxkIHJldHVybiBhbiBlbXB0eSB2YXJpYWJsZSBpZiBpdCBpcyBub3Qgc2V0LCBub3QKCSAganVzdCBoYXZlIGFuIGVycm9yCgoyMDA1LTA0LTA0IDE2OjEzICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEVOSDogZml4IGZvciBidWcgMTMwNAoKMjAwNS0wNC0wNCAxNTo1NSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9Vc2VTV0lHLmNtYWtlOiBFTkg6IG1vdmUgY2hhbmdlcyBmcm9tCgkgIG1haW4gdHJlZQoKMjAwNS0wNC0wNCAxNTo1MiAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IG1vdmUgZnJvbSBtYWluIHRyZWUKCSAgdGltZXpvbmUgZml4CgoyMDA1LTA0LTA0IDE1OjUxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEZJWDogZml4IGZvciBidWcgMTczMAoKMjAwNS0wNC0wNCAxNTo0MSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Xcml0ZUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOgoJICBtb3ZlIGZpeCBmb3IgcmVhZCBvbmx5IGZpbGUgY29uZmlndXJlIHRvIGJyYW5jaAoKMjAwNS0wNC0wNCAxMjoyMiAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlLCBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBCeSBkZWZhdWx0IGRpc2FibGUgbmV3IGZpbGVzLgoKMjAwNS0wNC0wNCAwMzowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTA0LTAzIDAzOjE3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDQtMDIgMDI6MTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wNC0wMSAxNTo0OCAgYW5keQoKCSogU291cmNlLzogY21BZGRUZXN0Q29tbWFuZC5jeHgsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDoKCSAgRU5IOiBNb3JlIGN0ZXN0IGNoYW5nZXMgYW5kIG1vdmUgU2V0dXBUZXN0IHRvIHN1cGVyY2xhc3MKCjIwMDUtMDQtMDEgMTU6NDUgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZSwgU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IFJlbmFtZSB0aGUKCSAgRGFydENvbmZpZ3VyYXRpb24udGNsIHRvIENUZXN0Q29uZmlndXJhdGlvbi5pbmkKCjIwMDUtMDQtMDEgMTQ6NTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQWRkVGVzdENvbW1hbmQuY3h4LCBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLAoJICBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eCwgY3Rlc3QuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBFTkg6IFN0YXJ0IGFkZGluZyBzdXBwb3J0IGZvciBDVGVzdAoJICB0ZXN0ZmlsZXMKCjIwMDUtMDQtMDEgMDI6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0zMSAxODowMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBXaGVuIGdlbmVyYXRpbmcKCSAgdGhlIG5hbWUgb2YgdGhlIGN1c3RvbSBydWxlIGZpbGUgdGhlIGNoYXJhY3RlciA6IHNob3VsZCBiZQoJICByZXBsYWNlZCB3aXRoIGFuIHVuZGVyc2NvcmUgYmVjYXVzZSBpdCBtaWdodCBiZSBhIG5vbi1maWxlLW5hbWUKCSAgcGFydCBvZiBhIHBhdGguCgoyMDA1LTAzLTMxIDExOjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IElUSyBidWlsZCB3aXRoIHhjb2RlLAoJICBhcyBsb25nIGFzIHlvdSBidWlsZCBpdCBpbiBsaXR0bGUgcGFydHMsIHRoaXMgZml4ZXMgdGhlIGhlYWRlcm1hcAoJICBwcm9ibGVtCgoyMDA1LTAzLTMxIDEwOjAwICBtYXJ0aW5rCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogRU5IOiBzaHV0IHVwIHdhcm5pbmcgaW4gM3JkIHBhcnR5IHBhY2thZ2VzCgoyMDA1LTAzLTMxIDAyOjIwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMzAgMTY6MTEgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBJdCBpcyBwb3NzaWJsZSBmb3IgdGhlIG5pZ2h0bHkgc3RhcnQKCSAgdGltZSB0byBiZSBvdmVyIDI0IGhvdXJzIGluIHRoZSBmdXR1cmUgd2hpY2ggcmVxdWlyZXMgdHdvIGRheXMgdG8KCSAgYmUgc3VidHJhY3RlZC4gIFVzaW5nIGEgd2hpbGUgbG9vcCB0byBtYWtlIHN1cmUgZW5vdWdoIGRheXMgYXJlCgkgIGFkZGVkIG9yIHN1YnRyYWN0ZWQuCUl0IHNob3VsZCBuZXZlciBiZSBhYmxlIHRvIGl0ZXJhdGUgbW9yZQoJICB0aGFuIHR3aWNlLgoKMjAwNS0wMy0zMCAxNTo0MSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRklYOgoJICBNZXJnZSBmcm9tIG1haW4gdHJlZTogZml4IGZvciBWUyAyMDA1IGJldGEKCjIwMDUtMDMtMzAgMTU6MjcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBUZXN0IGZvciBzdGwgc3Rpcm5nIG9wZXJhdG9yIT0KCSAgZm9yIGNoYXIqIG5lZWRzIHRvIGtub3cgcmVzdWx0IG9mIEtXU1lTX1NUTF9IQVZFX1NURC4KCjIwMDUtMDMtMzAgMDI6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0yOSAxNTozNCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOgoJICBFTkg6IHJlbW92ZWQgR2V0UGFyZW50UHJvamVjdHMKCjIwMDUtMDMtMjkgMTU6MzMgIG1hcnRpbmsKCgkqIFRlc3RzL091dE9mU291cmNlL1N1YkRpci9DTWFrZUxpc3RzLnR4dDogRU5IOiBiZXR0ZXIgdGVzdCBmb3IKCSAgc3ViZGlycwoKMjAwNS0wMy0yOSAxNToyNiAgaGVuZGVyc29uCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgU2hhcmVkRm9yd2FyZC5oLmluOiBFTkg6IGNvcHlpbmcKCSAgQnJhZCdzIGluc3RhbGxhdGlvbiBjaGFuZ2VzIGZyb20gdGhlIG1haW4gdHJlZSB0byB0aGUgUGFyYVZpZXcKCSAgMi4wIGJyYW5jaAoKMjAwNS0wMy0yOSAxMDozNCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBCVUc6IEZpeCBkZXBlbmRlbmNpZXMgb2YgY3VzdG9tCgkgIGNvbW1hbmRzIHRoYXQgYXJlIHJlbGF0aXZlIHBhdGhzIHRvIGZpbGVzIG9yIG90aGVyIGN1c3RvbSBjb21tYW5kCgkgIG91dHB1dHMuCgoyMDA1LTAzLTI5IDEwOjEwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29uZmlndXJlLmh4eC5pbiwKCSAga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eCwga3dzeXNfc3RsX3N0cmluZy5oeHguaW46IEVOSDogQWRkZWQKCSAgb3BlcmF0b3IhPSBmb3Igc3RsIHN0cmluZyBhbmQgY2hhciogd2hlbiB0aGUgc3lzdGVtIGRvZXMgbm90CgkgIHByb3ZpZGUgb25lLgoKMjAwNS0wMy0yOSAwODoyMCAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9rd3N5cy9Db25maWd1cmUuaHh4LmluLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlLAoJICBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eCwKCSAgU291cmNlL2t3c3lzL2t3c3lzX3N0bC5oLmluLCBTb3VyY2Uva3dzeXMva3dzeXNfc3RsLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzX3N0bF9zdHJpbmcuaHh4LmluOiBFTkg6IEFkZGVkIGlzdHJlYW0gYW5kCgkgIG9zdHJlYW0gb3BlcmF0b3JzIGZvciBzdGwgc3RyaW5nIGluIEtXU3lzIHdoZW4gdXNpbmcgb2xkIHN0cmVhbXMKCSAgdGhhdCBkbyBub3QgcHJvdmlkZSB0aGVtLgoKMjAwNS0wMy0yOSAwODowOSAga2luZwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDoKCSAgU3BsaXRQYXRoIG5vdyBzdXBwb3J0cyBzbGFzaGVzIGluIGJvdGggZGlyZWN0aW9ucyBpbiB0aGUgaW5wdXQKCSAgcGF0aCBidXQgc3RpbGwgcHJvZHVjZXMgZm9yd2FyZCBzbGFzaGVzIGluIHRoZSByb290IGNvbXBvbmVudC4KCjIwMDUtMDMtMjkgMDI6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0yOCAxODowMCAgYW5keQoKCSogYm9vdHN0cmFwOiBCVUc6IFRoZSAgaXMgcmVwbGFjZWQgYnkgY3ZzLi4uIFRoaXMgaXMgc2FmZXIgYW55d2F5CgoyMDA1LTAzLTI4IDE3OjQ2ICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogbW92ZQoJICBFc3RpbWF0ZUZvcm1hdExlbmd0aCB0byBrd3N5cwoKMjAwNS0wMy0yOCAxMzoyMCAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlTGlzdHMudHh0LCBDTWFrZVNldHVwLnJjLAoJICBDTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5oLCByZXNvdXJjZS5oLAoJICBDTWFrZUdlbkRpYWxvZy5jcHAsIENNYWtlR2VuRGlhbG9nLmg6IEVOSDogY2hhbmdlIGhvdyB0aGUKCSAgZ2VuZXJhdG9yIGlzIHNlbGVjdGVkIGFuZCB3aGF0IHRoZSBsYXN0IG9uZSB1c2VkIHdhcwoKMjAwNS0wMy0yOCAwMjoxMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTI3IDAyOjE4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMjYgMDk6NTggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2UsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIGt3c3lzX3N0bC5oLmluLCBrd3N5c19zdGwuaHh4LmluLCBrd3N5c19zdGxfc3RyaW5nLmh4eC5pbjogQ09NUDoKCSAgUmVtb3Zpbmcgc3RsIHN0cmluZyBpbyBvcGVyYXRvcnMgY2hhbmdlIHVudGlsIHRoZSBDTWFrZSBib290c3RyYXAKCSAgc2NyaXB0IGNhbiBiZSBmaXhlZC4KCjIwMDUtMDMtMjYgMDg6MTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2UsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIGt3c3lzX3N0bC5oLmluLCBrd3N5c19zdGwuaHh4LmluLCBrd3N5c19zdGxfc3RyaW5nLmh4eC5pbjogRU5IOgoJICBBZGRlZCBpc3RyZWFtIGFuZCBvc3RyZWFtIG9wZXJhdG9ycyBmb3Igc3RsIHN0cmluZyB3aGVuIHVzaW5nIG9sZAoJICBzdHJlYW1zIHRoYXQgZG8gbm90IHByb3ZpZGUgdGhlbS4KCjIwMDUtMDMtMjYgMDI6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0yNSAxODo1NSAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IFdoZW4gaW4tc291cmNlIGJ1aWxkLCBkbyBub3QgZG8KCSAgYm9vdHN0cmFwIHRlc3QKCjIwMDUtMDMtMjUgMTg6NDYgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZW1vdmUgY3VybCBidWlsZCB0ZXN0aW5nCgoyMDA1LTAzLTI1IDE2OjQwICBraW5nCgoJKiBTb3VyY2UvY21BZGRTdWJEaXJlY3RvcnlDb21tYW5kLmg6IEVOSDogQ2xhcmlmaWVkIGRvY3VtZW50YXRpb24KCSAgb2YgdGhlIGNvbW1hbmQuCgoyMDA1LTAzLTI1IDE0OjIzICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogRm9yIGRldmVsb3BtZW50IHZlcnNpb25zIHJlcG9ydCB2ZXJzaW9uIHdoZW4KCSAgZG9pbmcgYm9vdHN0cmFwCgoyMDA1LTAzLTI1IDA4OjQxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgU2hhcmVkRm9yd2FyZC5oLmluOiBFTkg6IEFkZGluZwoJICBTaGFyZWRGb3J3YXJkIEMgaGVhZGVyIHRvIGhlbHAgY3JlYXRlIGZvcndhcmRpbmcgZXhlY3V0YWJsZXMgb24KCSAgVU5JWCBzeXN0ZW1zIHRoYXQgY29uZmlndXJlIHRoZSBzaGFyZWQgbGlicmFyeSBydW50aW1lIHNlYXJjaAoJICBwYXRoIGFuZCB0aGVuIHJlcGxhY2UgdGhlbXNlbHZlcyB3aXRoIHRoZSByZWFsIGV4ZWN1dGFibGUuICBUaGlzCgkgIGlzIHVzZWZ1bCB0byBjcmVhdGUgYmluYXJ5IGRpc3RyaWJ1dGlvbnMgdGhhdCB3b3JrIGZyb20gYW55CgkgIGV4dHJhY3RlZCBsb2NhdGlvbiBldmVuIHdpdGggc2hhcmVkIGxpYnJhcmllcy4KCjIwMDUtMDMtMjUgMDg6MDkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogUmUtaW1wbGVtZW50ZWQKCSAgQ29sbGFwc2VGdWxsUGF0aCB0byBub3QgbmVlZCB0byBjaGFuZ2UgZGlyZWN0b3JpZXMuICBPcGVyYXRpb24gaXMKCSAgbm93IGZ1bGx5IHN0cmluZyBiYXNlZC4KCjIwMDUtMDMtMjUgMDg6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBBZGp1c3RlZCBHZXROaWdodGx5VGltZSBjb21wdXRhdGlvbiB0bwoJICBub3QgZGVwZW5kIG9uIHRpbWVfdCBiZWluZyBhIHNpZ25lZCB0eXBlLgoKMjAwNS0wMy0yNSAwMjoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTI0IDAyOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMjMgMDg6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHg6IGZpeCBmb3IgeGNvZGUKCjIwMDUtMDMtMjMgMDI6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0yMiAxNDoyNyAgaG9mZm1hbgoKCSogU291cmNlL2NtRHluYW1pY0xvYWRlci5oOiBGSVg6IGZpeCBidWcgMTY5MAoKMjAwNS0wMy0yMiAxNDowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IHRyeSB0byBoYW5kbGUgbW9yZSBzb3VyY2UKCSAgZmlsZSB0eXBlcwoKMjAwNS0wMy0yMiAxMzozMiAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IGp1c3QgdXNlIHRoZSBmaWxlIG5hbWUKCjIwMDUtMDMtMjIgMTE6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBzdXJlIHByb2plY3QgbWFwIGlzCgkgIGNsZWFyZWQgZWFjaCB0aW1lLgoKMjAwNS0wMy0yMiAxMDoyOSAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBiZXR0ZXIgbmFtZXMgZm9yCgkgIGZpbGVzCgoyMDA1LTAzLTIyIDEwOjIzICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogSW5pdGlhbGl6aW5nIGZyb20gcGFyZW50IHNob3VsZCBjb3B5CgkgIGxpbmsgZGlyZWN0b3JpZXMgYXMgd2VsbC4KCjIwMDUtMDMtMjIgMDg6MzYgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGNoZWNrIGZvciBpbnZhbGlkCgkgIGNoYXJhY3RlcnMgaW4gb3V0cHV0IG5hbWUuCgoyMDA1LTAzLTIyIDA3OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIGNvbW1lbnRlZCBjb2RlCgoyMDA1LTAzLTIyIDA3OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBhZGRpbmcgb2YgcmMKCSAgZmlsZXMKCjIwMDUtMDMtMjIgMDI6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0yMSAwMjozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTIwIDAyOjM0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTkgMDk6MDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTAzLTE5IDAyOjM4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTggMTE6MjkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTAzLTE4IDEwOjU4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBFTkg6IHJlbW92ZSBjbVN1YkRpcmVjdG9yeSBmcm9tCgkgIHVudXNlZCBmaWxlcz8KCjIwMDUtMDMtMTggMTA6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUFkZERlZmluaXRpb25zQ29tbWFuZC5oLCBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUJvb3RzdHJhcENvbW1hbmRzLmN4eCwgU291cmNlL2NtQnVpbGRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUJ1aWxkTmFtZUNvbW1hbmQuaCwgU291cmNlL2NtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaCwKCSAgU291cmNlL2NtQ29tbWFuZC5oLCBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLAoJICBTb3VyY2UvY21FbHNlQ29tbWFuZC5oLCBTb3VyY2UvY21FbmFibGVMYW5ndWFnZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBTb3VyY2UvY21FbmRGb3JFYWNoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FbmRJZkNvbW1hbmQuaCwgU291cmNlL2NtRW5kV2hpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuaCwgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuaCwKCSAgU291cmNlL2NtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLAoJICBTb3VyY2UvY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsIFNvdXJjZS9jbUxvYWRDYWNoZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eCwgU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eCwgU291cmNlL2NtTWFjcm9Db21tYW5kLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmgsIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuaCwKCSAgU291cmNlL2NtUHJvamVjdENvbW1hbmQuaCwgU291cmNlL2NtUmVtb3ZlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmgsIFNvdXJjZS9jbVNldENvbW1hbmQuaCwKCSAgU291cmNlL2NtU2V0RGlyZWN0b3J5UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmgsIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmgsIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLCBTb3VyY2UvY21XaGlsZUNvbW1hbmQuaCwKCSAgVGVzdHMvT3V0T2ZTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL091dE9mU291cmNlL1N1YkRpci9DTWFrZUxpc3RzLnR4dDogRU5IOiBiaWcgY2hhbmdlIHRoYXQKCSAgaW5jbHVkZXMgaW1tZWRpYXRlIHN1YmRpciBzdXBwb3J0LCByZW1vdmluZyB0aGUgbm90aW9uIG9mCgkgIGluaGVyaXRlZCBjb21tYW5kcywgbWFrZWZpbGVzIG5vIGxvbmdlciByZWFkIGluIHRoZSBwYXJlbnQKCSAgbWFrZWZpbGVzIGJ1dCBpbnN0ZWFkIGluaGVyaXQgdGhpZXIgcGFyZW50IG1ha2VmaWxlcyBjdXJyZW50CgkgIHNldHRpbmdzCgoyMDA1LTAzLTE4IDEwOjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUFkZFN1YkRpcmVjdG9yeUNvbW1hbmQuaDogRU5IOiBhZGRlZCBpbW1lZGlhdGUgc3ViZGlyZWN0b3J5CgkgIGNvbW1hbmQKCjIwMDUtMDMtMTggMDk6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVN1YkRpcmVjdG9yeS5oOiBFTkg6IGJhZCBpZGVhCgoyMDA1LTAzLTE4IDAyOjM0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTcgMTg6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEJVRzogTmVlZCB0byBjb2xsYXBzZQoJICBmdWxsIHBhdGhzIGJlZm9yZSBkZXBlbmRpbmcgb24gdGhlbSB0byByZW1vdmUgLi8gYW5kIC4uLyB0byBtYWtlCgkgIHN1cmUgdGFyZ2V0IG5hbWVzIG1hdGNoLgoKMjAwNS0wMy0xNyAxNTozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhZGQgc291cmNlIGdyb3VwcyB4Y29kZQoKMjAwNS0wMy0xNyAxMzowNiAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQ09NUDogVXNpbmcgcHJvcGVyIF9fUU5YX18KCSAgcHJlcHJvY2Vzc29yIHRlc3QuCgoyMDA1LTAzLTE3IDAyOjQxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTYgMTU6MzEgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy86IENNYWtlTGlzdHMudHh0LCB3aW4zMl9wdGhyZWFkcy5jOiBDT01QOiBGaXgKCSAgbW9yZSBwdGhyZWFkcyBwcm9ibGVtcyBvbiB3aW5kb3dzCgoyMDA1LTAzLTE2IDEzOjI2ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL2NtZXhwYXQvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL2NtemxpYi9DTWFrZUxpc3RzLnR4dDogQ09NUDogTW9yZSBjbGVhbnVwcwoKMjAwNS0wMy0xNiAxMzoyNCAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19jdXJsX3RyYW5zcG9ydC5jOiBDT01QOiBSZW1vdmUgd2FybmluZ3MKCjIwMDUtMDMtMTYgMTI6NTQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBNYWtlIHN1cmUgdG8gdXNlIGludGVybmFsIHpsaWIKCjIwMDUtMDMtMTYgMTI6NTQgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogRU5IOiBDbGVhbnVwIG9mIHRoZSBvdXRwdXQKCjIwMDUtMDMtMTYgMTE6MTAgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dDogQlVHOiBObyBuZWVkIHRvIGxpbmsgdGhyZWFkcwoJICBsaWJyYXJpZXMgd2hlbiBwdGhyZWFkcyBhcmUgbm90IGZvdW5kCgoyMDA1LTAzLTE2IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBPbmx5IGluY2x1ZGUgbWFsbG9jLmggb24gUU5YLgoKMjAwNS0wMy0xNiAxMDoxNSAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEZJWDogdGhhdCB3YXMgd3JvbmcKCjIwMDUtMDMtMTYgMDk6NTUgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEJVRzogRG8gbm90CgkgIGFkZCBRdCB3cmFwcGluZyB0ZXN0IHVubGVzcyBRVCBpcyBmb3VuZCBhbmQgUVRfVUlDX0VYRUNVVEFCTEUgaXMKCSAgZm91bmQuCgoyMDA1LTAzLTE2IDA5OjQxICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBOZWVkIG1hbGxvYy5oIGZvciBtYWxsb2MvZnJlZQoJICBvbiBRTlguCgoyMDA1LTAzLTE2IDAyOjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTUgMTE6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eDogRU5IOiBvbmx5IHN1cHBvcnQgcmVsIHBhdGhzCgkgIGZvciBub3cKCjIwMDUtMDMtMTUgMDg6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVMZXhlci5jLCBjbUxpc3RGaWxlTGV4ZXIuaW4ubDogQ09NUDogRGVmaW5pbmcKCSAgWVlfTk9fSU5QVVQgdG8gcmVtb3ZlIGNvbXBpbGF0aW9uIG9mIHVudXNlZCB5eWlucHV0IGZ1bmN0aW9uLiAgSXQKCSAgd2FzIHByb2R1Y2luZyBhIHdhcm5pbmcgYWJvdXQgdW5yZWFjaGFibGUgY29kZS4KCjIwMDUtMDMtMTUgMDg6MTMgIGtpbmcKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IENPTVA6IFJlbW92ZWQgd2FybmluZyBkdWUgdG8gdW5zaWduZWQKCSAgZW51bSB0eXBlLgoKMjAwNS0wMy0xNSAwMjozOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTE0IDEzOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21ha2UuY3h4OiBFTkg6IG1ha2UgeGNvZGUgY29tcGlsZSBvbmx5CgkgIG9uIGFwcGxlCgoyMDA1LTAzLTE0IDEyOjI1ICBtYXJ0aW5rCgoJKiBib290c3RyYXA6IEVOSDogb29wcyBmb3Jnb3QgdG8gY2hlayB0aGlzIGluCgoyMDA1LTAzLTE0IDEyOjE4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1FOWC5jbWFrZTogRU5IOiB0cnkgdG8gZml4IHJwYXRoIG9uIHFueAoKMjAwNS0wMy0xNCAxMToyOCAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oLCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU3ViZGlyQ29tbWFuZC5jeHgsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEVOSDogYWRkCgkgIHN1cHBvcnQgZm9yIG91dCBvZiBzb3VyY2Ugc291cmNlCgoyMDA1LTAzLTE0IDExOjI2ICBtYXJ0aW5rCgoJKiBUZXN0cy9PdXRPZlNvdXJjZS86IENNYWtlTGlzdHMudHh0LAoJICBPdXRPZlNvdXJjZVN1YmRpci9DTWFrZUxpc3RzLnR4dCwgT3V0T2ZTb3VyY2VTdWJkaXIvc2ltcGxlLmN4eCwKCSAgU3ViRGlyL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZGVkIG5ldyB0ZXN0IGZvciBvdXQgb2YgZGlyIHNvdXJjZQoJICB0cmVlcwoKMjAwNS0wMy0xNCAwOToyMyAgbWFydGluawoKCSogU291cmNlL2NtU3ViRGlyZWN0b3J5Lmg6IEVOSDogYWRkZWQgbmV3IHN0cnVjdHVyZSB0byBob2xkCgkgIHN1YmRpcmVjdG9yaWVzCgoyMDA1LTAzLTE0IDA4OjE1ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLmN4eCwgY21EZXBlbmRzRm9ydHJhblBhcnNlci55OgoJICBDT01QOiBBZGRlZCBfX0lOVEVMX0NPTVBJTEVSIHRvIHRlc3QgZm9yIHl5ZXJyb3JsYWIgd2FybmluZwoJICBzdXBwcmVzc2lvbi4KCjIwMDUtMDMtMTQgMDM6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0xMyAwMzowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTEyIDAyOjM1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMTEgMTM6MTIgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogdHJ5IHRvIHNlZSBpZgoJICB0aGVyZSBpcyBzdGlsbCBhIHByb2JsZW0KCjIwMDUtMDMtMTEgMTI6NTYgIGtpbmcKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHg6IEJVRzogRG8gbm90IHJlcG9ydCBhbgoJICBlcnJvciByZW1vdmluZyB0aGUgYmluYXJ5IGRpcmVjdG9yeSBpZiBpdCBkb2Vzbid0IGV4aXN0LgoKMjAwNS0wMy0xMSAxMTo0OCAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IGFkZCBsYXN0CgkgIHR3byBzbWFsbCBmdW5jcyBmcm9tIHZ0a1N0cmluZy4gRG9uZSByZW1vdmluZyBkZXBzCgoyMDA1LTAzLTExIDEwOjUzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oOgoJICBGSVg6IGZpeCBjcmFzaGluZyB0ZXN0IFN1YkRpciBmb3IgeGNvZGUKCjIwMDUtMDMtMTEgMTA6NDMgIGJhcnJlCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5oeHguaW4sIFN5c3RlbVRvb2xzLmN4eDogRU5IOiB1cGRhdGUKCSAgZG9jdW1lbnRhdGlvbiwgc29ydCBtZXRob2RzIGludG8gY2F0ZWdvcmllcwoKMjAwNS0wMy0xMSAxMDoyOSAgaG9mZm1hbgoKCSogU291cmNlL2N0ZXN0LmN4eDogRklYOiBmaXggb3V0cHV0IG9mIHBhc3NpbmcgdGVzdHMKCjIwMDUtMDMtMTEgMTA6MTUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vUU5YLmNtYWtlOiBFTkg6IEluaXRpYWwgYXR0ZW1wdCBhdCBRTlggc3VwcG9ydC4KCSAgU3VibWl0dGVkIGJ5IFRpbSBBcm5leS4KCjIwMDUtMDMtMTEgMTA6MDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwgUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBTeXN0ZW1Ub29scy5jeHg6IENPTVA6IEFkZGVkIG1pc3NpbmcgaW5jbHVkZSBvZiBzdHJpbmcuaC4KCjIwMDUtMDMtMTEgMTA6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogQ09NUDogQWRkaW5nIHN0ZGxpYi5oIHRvIHN0YW5kYXJkCgkgIGluY2x1ZGVzLiAgV2UgYXJlIHVzaW5nIGZ1bmN0aW9ucyBmcm9tIGl0IGFsbCBvdmVyIHRoZSBwbGFjZQoJICBhc3N1bWluZyBpdCBoYXMgYmVlbiBpbmNsdWRlZCBoZXJlLgoKMjAwNS0wMy0xMSAwOTozMSAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBDT01QOiBmaXgKCSAgc29tZSB3YXJuaW5ncwoKMjAwNS0wMy0xMSAwODozOCAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogQ09NUDogZml4IGEgd2FybmluZwoKMjAwNS0wMy0xMSAwMjozMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTEwIDE3OjQ5ICBiYXJyZQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiByZW1vdmUgZGVwcyB0byB2dGtTdHJpbmcgYnkKCSAgdXNpbmcgS1dTeXMgKGEgaGFuZGZ1bCBvZiBmdW5jdGlvbnMgaGF2ZSBiZWVuIG1vdmVkIHRvIEtXU3lzKQoKMjAwNS0wMy0xMCAxNzo0NCAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmh4eC5pbiwgU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHJlbW92ZQoJICBkZXBzIHRvIHZ0a1N0cmluZyBieSB1c2luZyBLV1N5cyAoYSBoYW5kZnVsIG9mIGZ1bmN0aW9ucyBoYXZlCgkgIGJlZW4gbW92ZWQgdG8gS1dTeXMpCgoyMDA1LTAzLTEwIDE3OjM0ICBiYXJyZQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogcmVtb3ZlCgkgIGRlcHMgdG8gdnRrU3RyaW5nIGJ5IHVzaW5nIEtXU3lzIChhIGhhbmRmdWwgb2YgZnVuY3Rpb25zIGhhdmUKCSAgYmVlbiBtb3ZlZCB0byBLV1N5cykKCjIwMDUtMDMtMTAgMTM6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuaCwgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBjbVRyeVJ1bkNvbW1hbmQuY3h4LCBjbWFrZS5jeHgsIGNtYWtlLmg6CgkgIEVOSDogY2xlYW51cCBieSByZW1vdmluZyBhbGwgdGhlIG9sZiBsb2NhbCBnZW5lcmF0ZSBqdW5rIHRoYXQgaQoJICBub3QgbG9uZ2VyIG5lZWRlZAoKMjAwNS0wMy0xMCAxMjo1MCAgYmFycmUKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmh4eC5pbiwgU3lzdGVtVG9vbHMuY3h4OiBFTkg6IG1vdmUKCSAgZnVuY3Rpb24gZnJvbSB2dGtLV0RpcmVjdG9yeVV0aWxpdGllcyBhbmQgdnRrU3RyaW5nIHRvCgkgIFN5c3RlbVRvb2xzCgoyMDA1LTAzLTEwIDEwOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IGJldHRlciBkb2NzCgoyMDA1LTAzLTEwIDAyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMDkgMTg6MDcgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfc2VyaWFsaXplLmM6IEJVRzogVGhpcyBpcyB3ZWlyZCwgYnV0CgkgIG1hcnF1ZWUgZG9lcyBub3Qgc2VlbSB0byBoYW5kbGUgYmFzZTY0IHdpdGggbmV3IGxpbmVzCgoyMDA1LTAzLTA5IDE4OjA2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEJVRzogeG1scnBjIGRvZXMgdGhlIGJhc2U2NAoJICBlbmNvZGluZwoKMjAwNS0wMy0wOSAxNTo1MSAgYW5keQoKCSogYm9vdHN0cmFwOiBCVUc6IFJlbW92ZSBhd2ssIHJlbW92ZSBwcm9ibGVtcyBhbmQgYWRkIGZ1bGwgc3BhY2VzCgkgIGluIHRoZSBwYXRoIHN1cHBvcnQKCjIwMDUtMDMtMDkgMDI6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wOCAxODozOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBSZW1vdmluZwoJICBqdW1wLWFuZC1idWlsZCBvcmRlcmluZyBjaGFuZ2UgdW50aWwgd2UgY2FuIHByZXZlbnQgZXh0cmEganVtcHMKCSAgZnJvbSBhbHdheXMgb2NjdXJpbmcuCgoyMDA1LTAzLTA4IDE3OjI3ICBraW5nCgoJKiBib290c3RyYXA6IEJVRzogRml4IGZvciBzcGFjZXMgaW4gdGhlIHBhdGggd2hlbiBjb25zdHJ1Y3RpbmcKCSAgY21Cb290c3RyYXBDb21tYW5kcyBkZXBlbmRlbmNpZXMuCgoyMDA1LTAzLTA4IDE2OjAxICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBFTkg6IFJlbW92aW5nIC4uLgoJICBlbGxpcHNpcyBmcm9tIGVuZCBvZiBlY2hvIGxpbmVzLiAgSXQgaXMganVzdCBjbHV0dGVyLgoKMjAwNS0wMy0wOCAxNTo1NSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRU5IOiBBZGRpbmcgZXh0cmEKCSAgZGVwZW5kZW5jaWVzIHRvIGp1bXAtYW5kLWJ1aWxkIHJ1bGVzIHRoYXQgZm9yY2UgYSBzaW5nbGUgb3JkZXJpbmcKCSAgdG8gcHJldmVudCBwYXJhbGxlbCBqdW1wcy4gIFRoaXMgYXZvaWRzIHByb2JsZW1zIHdpdGggdHdvIGp1bXBzCgkgIHJlYWNoaW5nIHRoZSBzYW1lIHRhcmdldCBpbiBwYXJhbGxlbCB3aGljaCBoYXBwZW5lZCBvY2Nhc2lvbmFsbHkKCSAgd2l0aCB0aGUgb2xkIGdlbmVyYXRvci4KCjIwMDUtMDMtMDggMTU6MzUgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEVOSDogUmVtb3ZlZCAiQ2hlY2tpbmcKCSAgYnVpbGQgc3lzdGVtIGluIC4uLiIgbWVzc2FnZS4gIEl0IGlzIGFsd2F5cyBwYWlyZWQgd2l0aCBhbgoJICBFbnRlcmluZyBvciBKdW1waW5nIG1lc3NhZ2UgYW5kIGlzIG5vdCBuZWNlc3NhcnkuCgoyMDA1LTAzLTA4IDEzOjQzICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQWRkZWQgb3B0aW9uCgkgIENNQUtFX1NLSVBfUlVMRV9ERVBFTkRFTkNZIHRvIHNraXAgbWFraW5nIGJ1aWxkIHJ1bGVzIGRlcGVuZCBvbgoJICB0aGVpciBvd24gcnVsZSBmaWxlcy4gIEl0IGNhbiBiZSBhZGRlZCB0byB0aGUgY2FjaGUgYnkgdGhlIHVzZXIKCSAgb3IgYWRkZWQgYnkgdGhlIHByb2plY3QgaW4gYSBsaXN0IGZpbGUuCgoyMDA1LTAzLTA4IDExOjM3ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IE9ubHkgYWRkIGxlYWRpbmcKCSAgLi8gdG8gY3VzdG9tIGNvbW1hbmQgZXhlY3V0YWJsZSBpZiB0aGUgY29tbWFuZCBpcyByZWFsbHkKCSAgc3BlY2lmaWVkIGFzIG9uZSBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuCgoyMDA1LTAzLTA4IDExOjI1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IFdoZW4gYSBjdXN0b20KCSAgY29tbWFuZCdzIGV4ZWN1dGFibGUgaXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHRoZSByZWxhdGl2ZQoJICBwYXRoIHRvIGl0IG5lZWRzIGEgIi4vIi4KCjIwMDUtMDMtMDggMDk6MjUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5oOiBFTkg6IFVwZGF0aW5nIEtkZXZlbG9wIGdlbmVyYXRvciB0bwoJICB1c2UgdGhlIG5ldyBtYWtlZmlsZSBnZW5lcmF0b3IuICBUaGUgb2xkIG9uZSBubyBsb25nZXIgd29ya3MKCSAgYW55d2F5IGJlY2F1c2UgbG9jYWwgZ2VuZXJhdGVzIGFyZSBub3cgZGlzYWJsZWQuCgoyMDA1LTAzLTA4IDA5OjI0ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzLmN4eDogQlVHOiBEZXBlbmRlbmN5IHNjYW5zIGFuZCBjaGVja3MgbXVzdAoJICBhbHdheXMgc2V0IHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHRoZSBkaXJlY3RvcnkKCSAgY29udGFpbmluZyB0aGUgTWFrZWZpbGUuCgoyMDA1LTAzLTA4IDAyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDMtMDcgMTg6NDggIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy93aW4zMl9wdGhyZWFkcy5jOiBDT01QOiBUcnkgdG8gcmVtb3ZlIHdhcm5pbmcKCSAgb24gbWluZ3cKCjIwMDUtMDMtMDcgMTU6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogQlVHOiBXaGVuIGNoZWNraW5nIGZvciB1cHBlci1jYXNlCgkgIG1vZHVsZXMgZG8gbm90IHVzZSBhbiB1cHBlci1jYXNlIC5NT0QgZXh0ZW5zaW9uLgoKMjAwNS0wMy0wNyAxMzo1MSAgYW5keQoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHg6IEJVRzogSGFuZGxlCgkgIHJlc3RyaWN0aXZlIHBlcm1pc3Npb25zCgoyMDA1LTAzLTA3IDEyOjE0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA1LTAzLTA3IDEyOjExICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogQWRkIHByb3BlciBkZXBlbmRlbmNpZXMgZm9yIGNtQm9vdHN0cmFwQ29tbWFuZHMKCjIwMDUtMDMtMDcgMTE6MDMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogQlVHOiBSZW1vdmUgbWVtb3J5CgkgIGxlYWsKCjIwMDUtMDMtMDcgMDI6MjggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wNiAxMjoxMCAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjL2xpbmtsaXN0Lmg6IENPTVA6IFRyeSB0byByZW1vdmUgd2FybmluZ3Mgb24KCSAgd2luZG93cwoKMjAwNS0wMy0wNiAxMToyNiAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogQ01ha2VMaXN0cy50eHQsIHhtbHJwY19jb25maWcuaC5pbjogRU5IOiBGaXgKCSAgdGhlIHN5bWFudGljIG9mIHVuaWNvZGVfd2NoYXIKCjIwMDUtMDMtMDYgMTE6MjMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfdXRmOC5jOiBDT01QOiBSZW1vdmUgd2FybmluZyBvbiBnY2MKCjIwMDUtMDMtMDYgMDg6NTIgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9zeW5jaF9jbGllbnQuYzogQlVHOiBGaXggZGVzdHJ1Y3Rpb24gb2YKCSAgb2JqZWN0cwoKMjAwNS0wMy0wNiAwODo1MSAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZSwgU291cmNlL2NtQ1Rlc3QuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IENPTVA6IFJlbW92ZSB3YXJuaW5nIGFuZCBmaXggdGhlCgkgIGxvZ2ljCgoyMDA1LTAzLTA2IDA4OjE3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IERvIG5vdCBidWlsZCBjbXc5eGNvbSBvbiBDeWd3aW4KCjIwMDUtMDMtMDYgMDI6MjcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wNSAwODoyNSAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBXb3JrIG9uIHhtbHJwYyBzdWJtaXQKCjIwMDUtMDMtMDUgMDg6MTIgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogQ09NUDogUmVtb3ZlIGNvbXBpbGUgZXJyb3IKCjIwMDUtMDMtMDUgMDI6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wNCAxNzoxMSAgYW5keQoKCSogU291cmNlLzogQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHgsIENUZXN0L2NtQ1Rlc3RTdWJtaXQuaCwKCSAgY21DVGVzdC5jeHg6IEVOSDogU3RhcnQgd29ya2luZyBvbiB4bWxycGMgY29kZS4gVGhpcyBjb2RlIGRvZXMKCSAgbm90IHdvcmssIGJ1dCBpdCB3aWxsIGF0IGxlYXN0IHRlc3QgY29tcGlsaW5nIHdpdGggY214bWxycGMKCjIwMDUtMDMtMDQgMTU6MDQgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9zeW5jaF9jbGllbnQuYzogRU5IOiBQcmludCBtb3JlIHN0YXRlcwoJICBpbmNsdWRpbmcgTlkKCjIwMDUtMDMtMDQgMTQ6MjcgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogTW9yZSBjbGVhbnVwcyBhbmQKCSAgc3RhcnQgbGlua2luZyBjdGVzdCB0byBYTUwtUlBDCgoyMDA1LTAzLTA0IDExOjM3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogTW9yZSBjbGVhbnVwcyBhbmQgcmVvcmdhbml6YXRpb24KCjIwMDUtMDMtMDQgMTA6MDUgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cHMKCjIwMDUtMDMtMDQgMTA6MDQgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9DTWFrZUxpc3RzLnR4dDogQlVHOiBUaGlzIGNtYWtlbGlzdHMgZmlsZSBpcyBub3QKCSAgdXNlZCBhbnkgbW9yZQoKMjAwNS0wMy0wNCAxMDowMyAgYW5keQoKCSogYm9vdHN0cmFwOiBCVUc6IEhhbmRsZSB3aGVuIGluaXRpYWwgY21ha2UgZmFpbHMKCjIwMDUtMDMtMDQgMDk6NDYgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfcmVnaXN0cnkuYzogQ09NUDogUmVtb3ZlIHdhcm5pbmcgYWJvdXQKCSAgY29kZSBiZWluZyB1bnVzZWQKCjIwMDUtMDMtMDQgMDI6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wMyAyMjozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiBmaXggZm9yIGZpbmRpbmcgdGhlIGNvcnJlY3QKCSAgdGFyZ2V0IGluIHRoZSBjdXJyZW50IHByb2plY3QKCjIwMDUtMDMtMDMgMTk6NDIgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogbWFrZSBpdCBwYXNzCgkgIGFueXdheSBzbyBJIGNhbiBzZWUgZGVidWcgaW5mbwoKMjAwNS0wMy0wMyAxODo0NiAgaG9mZm1hbgoKCSogU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiB0cnkgYW5kCgkgIGRlYnVnIHRoZSBmYWlsZWQgdGVzdCBvbiB0aGUgY29udGludW91cwoKMjAwNS0wMy0wMyAxODoxNSAgaG9mZm1hbgoKCSogU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiB0cnkKCSAgbnVtYmVyIHR3byB3aXRoIHRvcG9sb2dpY2FsIHNvcnQKCjIwMDUtMDMtMDMgMTc6MjEgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGMuaDogQ09NUDogT2ssIHJlbW92ZSB3YXJuaW5ncyBiZWNhdXNlIG9mCgkgIHJlbW92YWwgb2Ygd2FybmluZ3MKCjIwMDUtMDMtMDMgMTc6MDAgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogQ09NUDogRml4IHR5cG8KCjIwMDUtMDMtMDMgMTY6NTggIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogQlVHOiBDb21wIHNjaSAxMDEuCgkgIFN0cmluZ3MgZ28gYXdheSBhdCB0aGUgZW5kIG9mIHRoZSBmdW5jdGlvbgoKMjAwNS0wMy0wMyAxNjo1MyAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbi5jeHgsIGNtRGVwZW5kc0ZvcnRyYW4uaCwgY21ha2UuY3h4OgoJICBFTkg6IEltcGxlbWVudGluZyBleHBsaWNpdCBjbWFrZV9jb3B5X2Y5MF9tb2QgY2FsbGJhY2sgdG8gY29weQoJICBGb3J0cmFuOTAgbW9kdWxlcyB0byB0aGUgc3RhbXAgZmlsZXMgbW9yZSByZWxpYWJseS4gIFRoaXMgcmVtb3ZlcwoJICB0aGUgdGVtcG9yYXJ5IGhhY2sgZm9yIHBlci1wbGF0Zm9ybSB1cHBlci0vbG93ZXItIGNhc2UuCgoyMDA1LTAzLTAzIDE2OjEyICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2NvbmZpZy5oLmluOiBDT01QOiBzZXRlbnYgaXMgbm90IG5lZWRlZAoJICBhbnkgbW9yZQoKMjAwNS0wMy0wMyAxNTo1MiAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19hdXRoY29va2llLmM6IENPTVA6IFRyeSB0byByZW1vdmUKCSAgc2V0ZW52IHdhcm5pbmcKCjIwMDUtMDMtMDMgMTU6NDkgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGMuaDogRU5IOiBSZW1vdmUgd2FybmluZ3MKCjIwMDUtMDMtMDMgMTU6MjIgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0MuY3h4LCBjbURlcGVuZHNDLmg6IEJVRzogRml4ZWQgc2Nhbm5pbmcgdG8KCSAgYWNjb3VudCBmb3IgZG91YmxlLXF1b3RlIGluY2x1ZGVzLgoKMjAwNS0wMy0wMyAxMjowMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzX2lvc19zc3RyZWFtLmguaW46IEVOSDogQWRkZWQKCSAgIm9zdHJpbmdzdHJlYW0oY29uc3Qga3dzeXNfc3RsOjpzdHJpbmcmIHMpIiBhbmQgInZvaWQgc3RyKGNvbnN0CgkgIGt3c3lzX3N0bDo6c3RyaW5nJiBzKSIgY29tcGF0aWJpbGl0eSBtZXRob2RzLgoKMjAwNS0wMy0wMyAwOToyNSAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogeG1scnBjX2F1dGhjb29raWUuYywgeG1scnBjX2NsaWVudC5jLAoJICB4bWxycGNfZGF0YS5jLCB4bWxycGNfZXhwYXQuYywgeG1scnBjX3BhcnNlLmMsIHhtbHJwY19yZWdpc3RyeS5jLAoJICB4bWxycGNfc2VyaWFsaXplLmMsIHhtbHJwY19zdHJ1Y3QuYywgeG1scnBjX3N0cnV0aWwuYywKCSAgeG1scnBjX3V0ZjguYzogQ09NUDogUmVtb3ZlIHdhcm5pbmdzIG9uIGJvcmxhbmQKCjIwMDUtMDMtMDMgMDg6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbWFrZS5jeHg6IEVOSDogcmVtb3ZlIGNvZGUgd2FycmlvcgoJICBjbGFzc2VzCgoyMDA1LTAzLTAzIDA4OjQ1ICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMvOiB4bWxycGNfc3RydXRpbC5jLCB4bWxycGNfc3VwcG9ydC5jOiBDT01QOgoJICBSZW1vdmUgd2FybmluZ3MKCjIwMDUtMDMtMDMgMDI6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMy0wMiAxODo1NiAgaG9mZm1hbgoKCSogU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuY3h4LAoJICBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiByZXZlcnNlCgkgIGxhc3QgY2hhbmdlcyB0byBhdm9pZCBkYXNoYm9hcmQgZmFpbHVyZXMKCjIwMDUtMDMtMDIgMTc6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGZpeAoJICBsaWJyYXJ5IG9yZGVyaW5nIHN0dWZmIHRvIHVzZSBhIHRvcG9sb2dpY2FsIHNvcnQKCjIwMDUtMDMtMDIgMTc6MzggIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYzogQlVHOiBBdHRlbXB0IHRvIGdldAoJICBlcnJvciBjb2RlCgoyMDA1LTAzLTAyIDE3OjE5ICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2N1cmxfdHJhbnNwb3J0LmM6IEVOSDogVGVtcG9yYXJ5IHByb3h5CgkgIHN1cHBvcnQKCjIwMDUtMDMtMDIgMTE6NDggIGFuZHkKCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogQlVHOiBBdHRlbXB0IHRvIGZpeCBzb3J0aW5nCgkgIHN0YWJpbGl0eSB1c2luZyBtb3JlIGRldGVybWluaXN0aWMgY29tcGFyZSBmdW5jdGlvbgoKMjAwNS0wMy0wMiAxMTowNCAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogeG1scnBjX2NsaWVudC5jLCB4bWxycGNfcGFyc2UuYzogQ09NUDoKCSAgUmVtb3ZlIG1vcmUgd2FybmluZ3MKCjIwMDUtMDMtMDIgMTA6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmgsIGNtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5oOiBFTkg6IG5vdyB1c2UgeGNvZGUgaW5zdGVhZAoKMjAwNS0wMy0wMiAxMDozNSAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwYy5oOiBDT01QOiBFbnVtIHNob3VsZCByZWFsbHkgbm90IGhhdmUKCSAgY29tbWEgYXQgdGhlIGVuZAoKMjAwNS0wMy0wMiAwOTozNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBQYXkgYXR0ZW50aW9uIHRvCgkgIEZvcmNlVW5peFBhdGhzIHNldHRpbmcgaW4gY21TeXN0ZW1Ub29scyBmb3IKCSAgQ29udmVydFRvUXVvdGVkT3V0cHV0UGF0aCBhbmQgZm9yIGRlcGVuZGVuY3kgc2Nhbm5pbmcuCgoyMDA1LTAzLTAyIDA5OjAyICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEJVRzogV2UgbmVlZCB0byB0ZXN0IHRoZSBjb21waWxlcgoJICBmb3IgdGhlIGNhc2Ugb2YgdGhlIG1vZCBmaWxlIG5hbWVzLiAgRm9yIG5vdyB0aGlzIGlzIGEgdGVtcG9yYXJ5CgkgIGhhY2sgdG8gdXNlIHVwcGVyIGNhc2Ugb24gU0dJIGFuZCBsb3dlciBjYXNlIG9uIFN1bi4KCjIwMDUtMDMtMDIgMDg6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEJVRzogU0dJIG1ha2UgY2FuCgkgIHN1cHBvcnQgc3VmZml4ZXMgb25seSB1cCB0byAzMiBjaGFyYWN0ZXJzLiAgUmVuYW1pbmcKCSAgLmhwdXhfbWFrZV9tdXN0X2hhdmVfc3VmZml4ZXNfbGlzdCB0bwoJICAuaHB1eF9tYWtlX25lZWRzX3N1ZmZpeF9saXN0LgoKMjAwNS0wMy0wMiAwMjozMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAzLTAxIDE3OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEZJWDogc3dpdGNoIHRvIHN0YWJsZV9zb3J0IHRvCgkgIGF2b2lkIGNyYXNoCgoyMDA1LTAzLTAxIDE0OjMwICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEJVRzogQ2hhbmdlIGVycm9yIHRvIHdhcm5pbmcKCjIwMDUtMDMtMDEgMTQ6MjEgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0OiBDT01QOiBDTWFrZSBzaG91bGQgYmUgYnVpbGQgc3RhdGljLiBBbHNvCgkgIHByb3BhZ2F0ZSBidWlsZF9zaGFyZWRfbGlicyB0byBjdXJsCgoyMDA1LTAzLTAxIDEzOjM2ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEJVRzogTW9kdWxlIGZpbGUgbmFtZXMgYXJlIGNhc2UKCSAgaW5zZW5zaXRpdmUuCUFsd2F5cyB1c2UgbG93ZXIgY2FzZSBubyBtYXR0ZXIgdGhlIHJlYWwgbmFtZSBvZgoJICB0aGUgbW9kdWxlLgoKMjAwNS0wMy0wMSAxMzozMiAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0phdmEuY3h4OiBDT01QOiBSZW1vdmVkIHVudXNlZCBwYXJhbWV0ZXIgd2FybmluZy4KCjIwMDUtMDMtMDEgMTI6MjcgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBFbmFibGluZwoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMiBieSBkZWZhdWx0LgoKMjAwNS0wMy0wMSAxMjoyNiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IERhcndpbi14bGMuY21ha2UsIERhcndpbi5jbWFrZTogRU5IOiBBZGRpbmcKCSAgc3VwcG9ydCBmb3Igc2hhcmVkIGxpYnJhcnkgdmVyc2lvbmluZyB1c2luZyB0aGUgLWluc3RhbGxfbmFtZQoJICBvcHRpb24gb24gdGhlIE9TWCBsaW5rZXIuICBUaGlzIGlzIGFjdHVhbGx5IG5lZWRlZCB0byBzdXBwb3J0CgkgIHJlbGF0aXZlIC1vIHBhdGhzIHdoaWNoIGFyZSB1c2VkIGJ5CgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLgoKMjAwNS0wMy0wMSAxMjoyNiAga2luZwoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEVuYWJsaW5nIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyCgkgIChuZXcgbWFrZWZpbGUgZ2VuZXJhdG9yKSBieSBkZWZhdWx0LgoKMjAwNS0wMy0wMSAxMjoyMCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzSmF2YS5jeHgsIGNtRGVwZW5kc0phdmEuaCwgQ01ha2VMaXN0cy50eHQsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRU5IOiBGcmFtZXdvcmsgZm9yIGphdmEKCSAgZGVwZW5kZW5jeSBzY2FubmVyLiAgUmlnaHQgbm93IGl0IGRvZXMgbm90aGluZyBidXQgYWx3YXlzIHJlcG9ydHMKCSAgc3VjY2Vzcy4gIFRoaXMgaXMgZW5vdWdoIHRvIGdldCB0aGUgSmF2YSB0ZXN0IHRvIHBhc3Mgd2l0aCB0aGUKCSAgbmV3IGdlbmVyYXRvciBiZWNhdXNlIHRoZSBvbGQgaW1wbGVtZW50YXRpb24gZGlkIG5vdCBkbwoJICBkZXBlbmRlbmNpZXMgYW55d2F5LgoKMjAwNS0wMy0wMSAxMjoxMyAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmg6IEJVRzogQWRkZWQgRklMRVMgbW9kZSB0bwoJICBJTlNUQUxMX1BST0dSQU1TIGNvbW1hbmQgdG8gbWFrZSB0aGUgc2luZ2xlIGFyZ3VtZW50IGNhc2UKCSAgdW5hbWJpZ3VvdXMuCgoyMDA1LTAzLTAxIDExOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEZJWDogZml4IHNwYWNlcyBpbiBwYXRocwoKMjAwNS0wMy0wMSAxMToyMSAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogc3luY2hfY2xpZW50LmMsIHhtbHJwY19jdXJsX3RyYW5zcG9ydC5jOgoJICBDT01QOiBBdHRlbXB0IHRvIHJlbW92ZSB3YXJuaW5ncwoKMjAwNS0wMy0wMSAxMTowMSAga2luZwoKCSogVXRpbGl0aWVzL2NteG1scnBjL3dpbjMyX3B0aHJlYWRzLmM6IENPTVA6ICNpZiBXSU4zMiAtPiAjaWZkZWYKCSAgX1dJTjMyIGZvciBCb3JsYW5kLgoKMjAwNS0wMy0wMSAxMDo1NCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogRW5hYmxlIFhNTFJQQy4uLiBwbGVhc2UgZG8gbm90IGJyZWFrCgkgIGV2ZXJ5d2hlcmUuLi4KCjIwMDUtMDMtMDEgMTA6MTEgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXhtbHJwYy9DTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgdGVzdAoKMjAwNS0wMy0wMSAxMDowNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBSZXBsYWNlZCBwcmV2aW91cwoJICBmaXggd2l0aCBhbiBpbXBsZW1lbnRhdGlvbiBvZiBwcm9wZXJseSBmb3JtYXR0aW5nIHRoZSBjdXN0b20KCSAgYnVpbGQgY29kZSBpbiB0aGUgZ2VuZXJhdGVkIGZpbGUuCgoyMDA1LTAzLTAxIDA5OjUwICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2N1cmxfdHJhbnNwb3J0LmM6IEVOSDogTW9yZSByZW1vdmluZyBvZgoJICBwdGhyZWFkcwoKMjAwNS0wMy0wMSAwOTowNyAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogQ01ha2VMaXN0cy50eHQsIHhtbHJwY19hdXRoY29va2llLmMsCgkgIHhtbHJwY19jb25maWcuaC5pbiwgeG1scnBjX2N1cmxfdHJhbnNwb3J0LmMsIHhtbHJwY19wdGhyZWFkcy5oLAoJICB4bWxycGNfdHJhbnNwb3J0Lmg6IEVOSDogQXR0ZW1wdCB0byByZW1vdmUgdGhyZWFkaW5nIGNvZGUKCjIwMDUtMDMtMDEgMDI6MjggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0yOCAxNzoxMiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIHRoZSByZXN0IG9mIHhtbHJwYyBzdHVmZgoKMjAwNS0wMi0yOCAxNjoyNiAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjLzogQ01ha2VMaXN0cy50eHQsIHN5bmNoX2NsaWVudC5jLCB4bWxycGMuaCwKCSAgeG1scnBjX2NsaWVudC5jLCB4bWxycGNfY29uZmlnLmguaW46IEVOSDogQWRkIGV4YW1wbGUKCjIwMDUtMDItMjggMTY6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEZJWFRISVMgVEhJTkc6IGZpeCB0aGUKCSAgYnVnCgoyMDA1LTAyLTI4IDE1OjMwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IGZpeCB0eXBlbwoKMjAwNS0wMi0yOCAxNTowNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhZGQgcmUgcnVuIGNtYWtlIGlmIGlucHV0cyBjaGFuZ2UKCjIwMDUtMDItMjggMDI6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0yNyAxNzozNCAgYW5keQoKCSogVXRpbGl0aWVzL2NteG1scnBjL3htbHJwYy5oLCBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX2FycmF5LmMsCgkgIFV0aWxpdGllcy9jbXhtbHJwYy94bWxycGNfY3VybF90cmFuc3BvcnQuYywKCSAgVXRpbGl0aWVzL2NteG1scnBjL3htbHJwY19wYXJzZS5jLAoJICBVdGlsaXRpZXMvY214bWxycGMveG1scnBjX3N0cnVjdC5jLCBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzoKCSAgQ09NUDogUmVtb3ZlIHdhcm5pbmdzIGFib3V0IHNoYWRvdyB2YXJpYWJsZXMKCjIwMDUtMDItMjcgMTc6MzMgIGFuZHkKCgkqIFV0aWxpdGllcy9jbWV4cGF0L3htbHBhcnNlLmM6IENPTVA6IFJlbW92ZSBjb21waWxlIHdhcm5pbmcgYWJvdXQKCSAgc2hhZG93IHZhcmlhYmxlcwoKMjAwNS0wMi0yNyAwMzowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTI2IDE2OjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IHJlbW92ZSBzb21lIHdhcm5pbmdzCgoyMDA1LTAyLTI2IDAzOjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMjUgMjA6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDUtMDItMjUgMTc6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgY21PcmRlckxpbmtEaXJlY3Rvcmllcy5oOiBFTkg6IGNsZWFuIHVwIGFuZCB1c2Ugb3JkZXIgbGluawoJICBkaXJlY3RvcmllcwoKMjAwNS0wMi0yNSAxNDoyMSAgaG9mZm1hbgoKCSogVXRpbGl0aWVzL2NtZXhwYXQveG1sdG9rX2ltcGwuYzogQ09NUDogZml4IHdhcm5pbmdzCgoyMDA1LTAyLTI1IDE0OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogbWFrZSBzdXJlIGhlYWRlciBmaWxlcwoJICBhcmUgaW4gdGhlIGhlYWRlciBmaWxlIGdyb3VwCgoyMDA1LTAyLTI1IDExOjIzICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogUmVwbGFjZWQKCSAgT3V0cHV0RWNoby9wcmUtZWNoby9wb3N0LWVjaG8gd2l0aCBBcHBlbmRFY2hvLiAgVGhpcyBhbGxvd3MgZm9yCgkgIG1vcmUgZmxleGlibGUgZWNobyBzcGVjaWZpY2F0aW9ucyBhbmQgYmV0dGVyIHByZXNlcnZlcyBlY2hvIHRleHQuCgoyMDA1LTAyLTI1IDA5OjMxICBraW5nCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgZnVsbAoJICBwcmUtYnVpbGQvcHJlLWxpbmsvcG9zdC1idWlsZCB0ZXN0aW5nIGZvciBib3RoIGxpYnJhcnkgYW5kCgkgIGV4ZWN1dGFibGUgdGFyZ2V0cy4KCjIwMDUtMDItMjUgMDk6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEVOSDogQWRkaW5nIGluY2x1c2lvbgoJICBvZiBwcmUtYnVpbGQgYW5kIHByZS1saW5rIGNvbW1hbmRzIHdoZW4gYnVpbGRpbmcgZXhlY3V0YWJsZXMgYW5kCgkgIGxpYnJhcmllcy4KCjIwMDUtMDItMjUgMDk6MTQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEJVRzoKCSAgQ29udmVydFRvUXVvdGVkT3V0cHV0UGF0aCBtdXN0IHJlcGxhY2Ugc2xhc2hlcyBpbiByb290IGNvbXBvbmVudAoJICBvbiB3aW5kb3dzLgoKMjAwNS0wMi0yNSAwOTowNiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEFkZGVkCgkgIENvbnZlcnRUb1F1b3RlZE91dHB1dFBhdGggbWV0aG9kIGFuZCB1c2VkIGl0IHRvIHByb3Blcmx5IGdlbmVyYXRlCgkgIGV4dGVybmFsIG9iamVjdCByZWZlcmVuY2VzIHdpdGggc3BhY2VzIGluIHRoZSBwYXRoLgoKMjAwNS0wMi0yNSAwMzowOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTI0IDE5OjMyICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogUmVtb3ZlZCBpbnN0YW5jZXMKCSAgb2YgY2FsbGluZyBDb252ZXJ0VG9SZWxhdGl2ZU91dHB1dFBhdGggdHdpY2Ugb24gdGhlIHNhbWUgcGF0aC4KCjIwMDUtMDItMjQgMTk6MjggIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byBjb25maWd1cmUgcmVsYXRpdmUKCSAgcGF0aCBzdXBwb3J0IGZvciBMb2NhbEdlbmVyYXRlIHRvIHN1cHBvcnQgb2xkIG1ha2VmaWxlIGdlbmVyYXRvci4KCjIwMDUtMDItMjQgMTg6MzUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IENvbnZlcnRlZCBzb21lCgkgIENvbnZlcnRUb1JlbGF0aXZlT3V0cHV0UGF0aCBjYWxscyB0bwoJICBDb252ZXJ0VG9PcHRpb25hbGx5UmVsYXRpdmVPdXRwdXRQYXRoIGluIHByZXBhcmF0aW9uIGZvciBtYWtpbmcKCSAgQ29udmVydFRvUmVsYXRpdmVPdXRwdXRQYXRoIGFsd2F5cyBjb252ZXJ0LiAgU29tZSBvZiB0aGVzZSBtaWdodAoJICBiZSBhYmxlIHRvIGJlIHN3aXRjaGVkIGJhY2sgYnV0IHdlIHdpbGwgZmlyc3QgaGF2ZSB0byB0ZXN0IHdoYXQKCSAgcGF0aHMgY2FuIGJlIHJlbGF0aXZlIGluIHRoZSBnZW5lcmF0ZSBWUyBwcm9qZWN0IGZpbGVzLgoKMjAwNS0wMi0yNCAxNzo0NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGZpeCByZWxhdGl2ZSBwYXRocyBpbiB4Y29kZQoKMjAwNS0wMi0yNCAxNjoyNSAga2luZwoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IENvbnZlcnRlZCBzb21lCgkgIENvbnZlcnRUb1JlbGF0aXZlT3V0cHV0UGF0aCBjYWxscyB0bwoJICBDb252ZXJ0VG9PcHRpb25hbGx5UmVsYXRpdmVPdXRwdXRQYXRoIGluIHByZXBhcmF0aW9uIGZvciBtYWtpbmcKCSAgQ29udmVydFRvUmVsYXRpdmVPdXRwdXRQYXRoIG5vdCBjaGVjayBDTUFLRV9VU0VfUkVMQVRJVkVfUEFUSFMuCgoyMDA1LTAyLTI0IDE2OjE5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IFRoZSBwYXRoIHRvIHRoZQoJICBzb3VyY2UgZmlsZSBpbiBhIGNvbXBpbGUgbGluZSBzaG91bGQgYmUgbWFkZSByZWxhdGl2ZSBvbmx5IHdoZW4KCSAgQ01BS0VfVVNFX1JFTEFUSVZFX1BBVEhTIGlzIG9uLgoKMjAwNS0wMi0yNCAxNjowNCAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogTWVyZ2VkIGltcGxlbWVudGF0aW9ucyBvZgoJICBDb252ZXJ0VG9SZWxhdGl2ZSpQYXRoIG1ldGhvZHMuICBUaGUgbWFpbiBDb252ZXJ0VG9SZWxhdGl2ZVBhdGgKCSAgbWV0aG9kIGlzIG5vdyBpbiBjbUdsb2JhbEdlbmVyYXRvci4gIEl0IGNvbnZlcnRzIHBhdGhzIG9ubHkgaWYKCSAgdGhleSBhcmUgYXQgbGVhc3QgaW5zaWRlIHRoZSBkZWVwZXN0IGNvbW1vbiBkaXJlY3RvcnkgYmV0d2VlbiB0aGUKCSAgdG9wLWxldmVsIHNvdXJjZSBhbmQgYnVpbGQgdHJlZXMuICBFYWNoIGNtTG9jYWxHZW5lcmF0b3IgaW5zdGFuY2UKCSAgY2FsbHMgdGhpcyBnbG9iYWwgbWV0aG9kIHdpdGggaXRzIG93biBvdXRwdXQgZGlyZWN0b3J5IGFzIHRoZQoJICAibG9jYWwiIGFyZ3VtZW50IGZyb20gd2hpY2ggcGF0aHMgYXJlIHJlbGF0aXZlLiAgQWRkZWQgc2VwYXJhdGUKCSAgQ29udmVydFRvT3B0aW9uYWxseVJlbGF0aXZlIHBhdGggdGhhdCBwYXlzIGF0dGVudGlvbiB0byB0aGUKCSAgQ01BS0VfVVNFX1JFTEFUSVZFX1BBVEhTIG9wdGlvbi4KCjIwMDUtMDItMjQgMTU6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eDogQ09NUDogcmVtb3ZlIGNvbXBpbGVyIHdhcm5pbmcKCjIwMDUtMDItMjQgMTU6MzQgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmg6CgkgIEVOSDogZml4IHNwYWNlcyBpbiBwYXRocyBwcm9ibGVtcwoKMjAwNS0wMi0yNCAxNDo0NyAga2luZwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkZWQKCSAgQ29tcGFyZVBhdGggbWV0aG9kLgoKMjAwNS0wMi0yNCAxNDoyNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaDogRU5IOiByZW1vdmUKCSAgdW51c2VkIGNvZGUKCjIwMDUtMDItMjQgMTM6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQ09NUDogSFAgY29tcGlsZXIgZG9lcyBub3QgbGlrZQoJICBpbml0aWFsaXppbmcgYSAgY29uc3Qgc3RkOjpzdHJpbmcgJiB3aXRoIGEgY29uc3QgY2hhciogKHdoaWNoCgkgIHJlcXVpcmVzIHRoZSByZWZlcmVuY2UgdG8gYmUgYm91bmQgdG8gYSB0ZW1wb3Jhcnkgd2l0aCB0aGUgc2NvcGUKCSAgb2YgdGhlIHJlZmVyZW5jZSkuCgoyMDA1LTAyLTI0IDEzOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21PcmRlckxpbmtEaXJlY3Rvcmllcy5jeHg6IEVOSDogY2xlYW4gdXAgYW5kIHJlbW92ZSBzb21lCgkgIGRlYnVnIGNvZGUKCjIwMDUtMDItMjQgMTM6MTYgIGhvZmZtYW4KCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU9yZGVyTGlua0RpcmVjdG9yaWVzLmN4eCwKCSAgU291cmNlL2NtT3JkZXJMaW5rRGlyZWN0b3JpZXMuaDogRU5IOiBhZGQgYSBuZXcgbGlicmFyeSBwYXRoCgkgIG9yZGVyaW5nIGFsZ29yaXRobSB0byBtYWtlIHN1cmUgLUwgcGF0aHMgd2lsbCBwaWNrIHRoZSBjb3JyZWN0CgkgIGxpYnJhcmllcyBpZiBwb3NzaWJsZQoKMjAwNS0wMi0yNCAxMjo0NCAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0MuY3h4OiBCVUc6IEF2b2lkIHB1dHRpbmcgYSBsZWFkaW5nIC4vIG9uIHRoZQoJICBkZXBlbmRlbmN5IG5hbWVzLgoKMjAwNS0wMi0yNCAxMjoxOSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBCVUc6IFVzaW5nIGEgYmV0dGVyIHRlY2huaXF1ZSB0bwoJICBwcm9kdWNlIHRoZSBydWxlIGZpbGUgbmFtZSBmb3IgYSBjdXN0b20gY29tbWFuZCB3aGVuIHRoZSBvdXRwdXQKCSAgaXMgbm90IGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBvciBsb3dlci4KCjIwMDUtMDItMjQgMTE6NDYgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ01ha2VMaXN0cy50eHQ6IEJVRzogQWRkZWQgaW5zdGFsbGF0aW9uIG9mIC5pbgoJICBmaWxlcyBhcyB3ZWxsIGFzIC5jbWFrZSBmaWxlcy4KCjIwMDUtMDItMjQgMTA6MzIgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogT25seSB1c2UgdGhlIGV4aXN0aW5nCgkgIENNYWtlKGxhbmcpQ29tcGlsZXIuY21ha2UgZmlsZSBmcm9tIHRoZSBidWlsZCB0cmVlIGlmIGl0IHdhcwoJICBnZW5lcmF0ZWQgYnkgdGhlIHNhbWUgdmVyc2lvbiBvZiBDTWFrZS4KCjIwMDUtMDItMjQgMTA6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBGaXhlZCBHZXRDYWNoZU1pbm9yVmVyc2lvbiB0byBub3QKCSAgYWx3YXlzIHJldHVybiAwLgoKMjAwNS0wMi0yNCAxMDoxNCAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBDT01QOiBSZW1vdmUgY29tcGlsZSB3YXJuaW5nIGluIGJvb3RzdHJhcAoJICBzdGFnZQoKMjAwNS0wMi0yNCAwOToyMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBEbyBub3QgY3Jhc2ggd2hlbgoJICB0aGUgbGluayBsYW5ndWFnZSBmb3IgYSB0YXJnZXQgaXMgbm90IGtub3duLgoKMjAwNS0wMi0yNCAwOToyMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBOZWVkIHByb3BlcgoJICBuZXdsaW5lIGFyZ3VtZW50IHRvIENvbnN0cnVjdFNjcmlwdCBjYWxsLgoKMjAwNS0wMi0yNCAwMzo0NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTIzIDIwOjQxICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIG91dHB1dCBwYXRoIHN0dWZmCgoyMDA1LTAyLTIzIDIwOjI4ICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMvOiBDTWFrZUxpc3RzLnR4dCwgY2FzcHJpbnRmLmMsIGNhc3ByaW50Zi5oLAoJICBpbmxpbmUuaCwgbGlua2xpc3QuaCwgeG1scnBjLmgsIHhtbHJwY19jbGllbnQuaCwKCSAgeG1scnBjX2NsaWVudF9pbnQuaCwgeG1scnBjX2NvbmZpZy5oLmluLCB4bWxycGNfY3VybF90cmFuc3BvcnQuYywKCSAgeG1scnBjX2RhdGEuYywgeG1scnBjX3B0aHJlYWRzLmgsIHhtbHJwY19zdXBwb3J0LmM6IENPTVA6IFNldmVyYWwKCSAgV2luZG93cyBmaXhlcwoKMjAwNS0wMi0yMyAxNDozNiAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBlbXB0eQoJICB0YXJnZXQgb3IgY29uZmlnIHN0cmluZ3MgaW4gdGhlIEJ1aWxkIG1ldGhvZAoKMjAwNS0wMi0yMyAxMzo1MCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBGSVg6IGZpeCB0byBtYWtlIHRoaXMgd29yawoJICB3aXRoIG5ldyBjdXN0b20gY29tbWFuZCBzdHVmZgoKMjAwNS0wMi0yMyAwMzowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTIyIDE1OjMxICBraW5nCgoJKiBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHg6IEVOSDogQWRkZWQgQ01BS0VfUFJPSkVDVF9OQU1FCgkgIHZhcmlhYmxlIHRvIHBsYXkgdGhlIHJvbGUgb2YgQ01BS0VfU09VUkNFX0RJUiBhbmQKCSAgQ01BS0VfQklOQVJZX0RJUiBmb3IgdGhlIHRvcC1sZXZlbCBwcm9qZWN0IG5hbWUuCgoyMDA1LTAyLTIyIDE1OjIyICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OgoJICBFTkg6IEFkZGVkIGJldHRlciBkZWZhdWx0IGluc3RhbGwgbG9jYXRpb24gZm9yIHdpbmRvd3MgYnVpbGRzLgoJICBUaGUgcHJldmlvdXMgZGVmYXVsdCAvdXNyL2xvY2FsIGRpZCBub3QgbWFrZSBtdWNoIHNlbnNlLiAgTm93CgkgICIlU3lzdGVtRHJpdmUlL1Byb2dyYW0gRmlsZXMvUFJPSkVDVF9OQU1FIiBpcyB1c2VkLCB3aGljaCBpcyB0aGUKCSAgd2luZG93cyBlcXVpdmFsZW50IHRvIC91c3IvbG9jYWwuCgoyMDA1LTAyLTIyIDE0OjUyICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHgsIGNtTG9hZENvbW1hbmRDb21tYW5kLmg6IEVOSDoKCSAgTE9BRF9DT01NQU5EIGNvbW1hbmQgd2lsbCBub3cgc2V0IGEgdmFyaWFibGUgY2FsbGVkCgkgIENNQUtFX0xPQURFRF9DT01NQU5EXzxDT01NQU5EX05BTUU+IHRvIHRoZSBmdWxsIHBhdGggb2YgdGhlCgkgIGxvYWRlZCBtb2R1bGUgaWYgbG9hZGluZyB3YXMgc3VjY2Vzc2Z1bC4gIE90aGVyd2lzZSB0aGUgdmFyaWFibGUKCSAgaXMgbm90IHNldCAod2lsbCBldmFsdWF0ZSB0byBlbXB0eSBzdHJpbmcpLiAgVGhpcyBpcyB1c2VmdWwgYm90aAoJICBpbiB0ZXN0aW5nIHdoZXRoZXIgbG9hZGluZyB3b3JrZWQgYW5kIGZvciBpbnN0YWxsaW5nIGxvYWRlZAoJICBjb21tYW5kIG1vZHVsZXMuCgoyMDA1LTAyLTIyIDEzOjA4ICBhbmR5CgoJKiBVdGlsaXRpZXMvY214bWxycGMvOiBDTWFrZUxpc3RzLnR4dCwgWG1sUnBjQ3BwLmNwcCwgWG1sUnBjQ3BwLmgsCgkgIGJvb2wuaCwgbWFsbG9jdmFyLmgsIHRyYW5zcG9ydF9jb25maWcuaCwgd2luMzJfcHRocmVhZHMuYywKCSAgeG1scnBjLmgsIHhtbHJwY19hbWNvbmZpZy5oLmluLCB4bWxycGNfYXJyYXkuYywKCSAgeG1scnBjX2F1dGhjb29raWUuYywgeG1scnBjX2Jhc2U2NC5jLCB4bWxycGNfY2dpLmMsIHhtbHJwY19jZ2kuaCwKCSAgeG1scnBjX2NsaWVudC5jLCB4bWxycGNfY2xpZW50LmgsIHhtbHJwY19jbGllbnRfaW50LmgsCgkgIHhtbHJwY19jb25maWcuaC5pbiwgeG1scnBjX2N1cmxfdHJhbnNwb3J0LmMsCgkgIHhtbHJwY19jdXJsX3RyYW5zcG9ydC5oLCB4bWxycGNfZGF0YS5jLCB4bWxycGNfZXhwYXQuYywKCSAgeG1scnBjX2ludC5oLCB4bWxycGNfbGlieG1sMi5jLCB4bWxycGNfcGFyc2UuYywKCSAgeG1scnBjX3B0aHJlYWRzLmgsIHhtbHJwY19yZWdpc3RyeS5jLCB4bWxycGNfc2VyaWFsaXplLmMsCgkgIHhtbHJwY19zZXJ2ZXIuaCwgeG1scnBjX3NlcnZlcl9hYnlzcy5jLCB4bWxycGNfc2VydmVyX2FieXNzLmgsCgkgIHhtbHJwY19zZXJ2ZXJfYWJ5c3NfaW50LmgsIHhtbHJwY19zdHJ1Y3QuYywgeG1scnBjX3N0cnV0aWwuYywKCSAgeG1scnBjX3N1cHBvcnQuYywgeG1scnBjX3RyYW5zcG9ydC5jLCB4bWxycGNfdHJhbnNwb3J0LmgsCgkgIHhtbHJwY191dGY4LmMsIHhtbHJwY194bWxwYXJzZXIuaCwKCSAgQ01ha2UvVHJ5Q29tcGlsZUZyb21Tb3VyY2UuY21ha2U6IEVOSDogSW5pdGlhbCBpbXBvcnQKCjIwMDUtMDItMjIgMTI6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTAyLTIyIDEyOjEwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oOiBCVUc6IEZpeGVkIGZvcm1hdHRpbmcgb2YKCSAgZ2VuZXJhdGVkIGRvY3VtZW50YXRpb24uCgoyMDA1LTAyLTIyIDEyOjA0ICBraW5nCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIHRlc3QgZm9yIG11bHRpcGxlCgkgIGNvbW1hbmRzIGluIGEgY3VzdG9tIGNvbW1hbmQuCgoyMDA1LTAyLTIyIDEwOjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEJVRzogZml4IHRlc3QgZXhlY3V0aW9uCgoyMDA1LTAyLTIyIDEwOjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogYmV0dGVyIGVycm9yIGhhbmRsaW5nCgoyMDA1LTAyLTIyIDEwOjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLCBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgY21DUGx1Z2luQVBJLmN4eCwKCSAgY21DdXN0b21Db21tYW5kLmN4eCwgY21DdXN0b21Db21tYW5kLmgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtSVRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21RVFdyYXBDUFBDb21tYW5kLmN4eCwgY21RVFdyYXBVSUNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBUY2xDb21tYW5kLmN4eDogRU5IOiBVcGRhdGVkIGltcGxlbWVudGF0aW9uIG9mIGN1c3RvbQoJICBjb21tYW5kcy4gIE11bHRpcGxlIGNvbW1hbmQgbGluZXMgYXJlIG5vdyBzdXBwb3J0ZWQgZWZmZWN0aXZlbHkKCSAgYWxsb3dpbmcgZW50aXJlIHNjcmlwdHMgdG8gYmUgd3JpdHRlbi4gIEFsc28gcmVtb3ZlZCBleHRyYQoJICB2YXJpYWJsZSBleHBhbnNpb25zIGFuZCBjbGVhbmVkIHVwIHBhc3Npbmcgb2YgY29tbWFuZHMgdGhyb3VnaCB0bwoJICB0aGUgZ2VuZXJhdG9ycy4gIFRoZSBjb21tYW5kIGFuZCBpbmRpdmlkdWFsIGFyZ3VtZW50cyBhcmUgbm93CgkgIGtlcHQgc2VwYXJhdGUgYWxsIHRoZSB3YXkgdW50aWwgdGhlIGdlbmVyYXRvciB3cml0ZXMgdGhlbSBvdXQuCgkgIFRoaXMgY2xlYW5zIHVwIGFsb3Qgb2YgZXNjYXBpbmcgaXNzdWVzLgoKMjAwNS0wMi0yMiAwOToxMiAgbWFydGluawoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5oLCBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIGN0ZXN0LmN4eDogRU5IOiBjdGVzdCBub3cgdXNlcyBDTWFrZQoJICBnbG9iYWwgZ2VuZXJhdG9yIHRvIGRvIHRoZSBidWlsZCBwYXJ0IG9mIGJ1aWxkLWFuZC10ZXN0CgoyMDA1LTAyLTIyIDA5OjA4ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IE5lZWQgdG8gcmV0dXJuIGJlZm9yZSBjb25maWd1cmUgc3RlcCB3aGVuCgkgIHJ1bm5pbmcgaW4gc2NyaXB0IG1vZGUuCgoyMDA1LTAyLTIyIDA4OjIyICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogQWRkaW5nIGNtQ3VzdG9tQ29tbWFuZExpbmUgYW5kCgkgIGNtQ3VzdG9tQ29tbWFuZExpbmVzIHN1YmNsYXNzZXMgb2Ygc3RkOjp2ZWN0b3IgaW5zdGFudGlhdGlvbnMgdG8KCSAgcmVwcmVzZW50IG11bHRpcGxlIGNvbW1hbmRzIGZvciBhIHNpbmdsZSBjdXN0b20gY29tbWFuZC4gIFRoZXNlCgkgIHdpbGwgYmUgdXNlZCBpbiBhbiB1cGNvbWluZyBjaGVja2luLgoKMjAwNS0wMi0yMiAwMzowMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTIxIDAzOjA3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMjAgMDM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0xOSAwMjo0MyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTE4IDE2OjE5ICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmg6IEJVRzoKCSAgY21Tb3VyY2VGaWxlIGluc3RhbmNlcyBzaG91bGQgZGVsZXRlIHRoZWlyIG93biBjdXN0b20gY29tbWFuZHMKCSAgd2hlbiBhIG5ldyBvbmUgaXMgc2V0LgoKMjAwNS0wMi0xOCAxNjoxMiAga2luZwoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQ09NUDogVXNpbmcgY29uc3RfaXRlcmF0b3IgaW5zdGVhZCBvZgoJICBpdGVyYXRvciB0byB3YWxrIHRocm91Z2ggY3VzdG9tIGNvbW1hbmQgZGVwZW5kZW5jaWVzLgoKMjAwNS0wMi0xOCAxNjoxMiAga2luZwoKCSogU291cmNlL2NtVGFyZ2V0Lmg6IENPTVA6IEFkZGVkIG1pc3NpbmcgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgoJICBjbU1ha2VmaWxlLiAgVGhpcyB3YXMgb25seSB3b3JraW5nIGJlY2F1c2UgY21DdXN0b21Db21tYW5kLmgKCSAgZGVjbGFyZWQgaXQuCgoyMDA1LTAyLTE4IDE1OjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBzcGFjZXMgaW4gdGhlCgkgIHBhdGgKCjIwMDUtMDItMTggMTU6NDMgIGtpbmcKCgkqIFRlc3RzL0V4dGVybmFsT0JKL0NNYWtlTGlzdHMudHh0OiBCVUc6IFdlIHN0aWxsIHdhbnQgdG8gcHJpbnQgb3V0CgkgIHRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgb2JqZWN0IHdhcyBmb3VuZCBpZiBpdCB3YXMgZm91bmQgYnkgdGhlCgkgIGdsb2IuCgoyMDA1LTAyLTE4IDE0OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IHJlbW92ZSB3YXJuaW5nCgoyMDA1LTAyLTE4IDE0OjIyICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogQlVHOiBEaXNhYmxpbmcgREFSVF9ST09UIHJlbW92YWwgdW50aWwgd2UgY2FuIGdldAoJICBEYXJ0IHRvIHN1Ym1pdCB3aXRob3V0IGl0LgoKMjAwNS0wMi0xOCAxMzozMiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9FeHRlcm5hbE9CSi9DTWFrZUxpc3RzLnR4dDogRU5IOiBhbGwgdGVzdHMgYXJlIHBhc3NpbmcgZm9yCgkgIFhDb2RlCgoyMDA1LTAyLTE4IDAyOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMTcgMTc6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgY21YQ29kZU9iamVjdC5oOiBFTkg6IG1vcmUgdGVzdHMgYXJlCgkgIHBhc3NpbmcsIHJlbGF0aXZlIHBhdGhzLCBhbmQgZXh0ZXJuYWwgb2JqZWN0cyBhcmUgdGhlIG9uZXMgbGVmdAoJICBub3cKCjIwMDUtMDItMTcgMTY6NTkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBCVUc6IERldGVjdCB3aGVuCgkgIFRlc3RzVG9SdW5JbmZvcm1hdGlvbiBpcyBub3Qgc2V0CgoyMDA1LTAyLTE3IDE2OjExICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eDogRU5IOiBTb21lCgkgIG1vcmUgZ2VuZXJhbGl6YXRpb24KCjIwMDUtMDItMTcgMTU6MjMgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLAoJICBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVDb21tYW5kLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUNvbW1hbmQuaCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OgoJICBFTkg6IENsZWFudXBzIGFuZCBhZGQgQ1RFU1RfVVBEQVRFIGNvbW1hbmQKCjIwMDUtMDItMTcgMTU6MjIgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5jeHgsCgkgIGNtQ1Rlc3RHZW5lcmljSGFuZGxlci5oOiBFTkg6IEFkZCBhIHdheSB0byBzZXQgb3B0aW9ucyBvZiB0aGUKCSAgaGFuZGxlciBnZW5lcmljbHkKCjIwMDUtMDItMTcgMTE6MjggIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IEFkZGluZwoJICBrd3N5czo6U3lzdGVtVG9vbHM6OkZpbGVUaW1lQ29tcGFyZSBtZXRob2QgdG8gY29tcGFyZSBmaWxlCgkgIG1vZGlmaWNhdGlvbiB0aW1lcyB3aXRoIHRoZSBoaWdoZXN0IHJlc29sdXRpb24gcG9zc2libGUgb24gdGhlCgkgIGZpbGUgc3lzdGVtLgoKMjAwNS0wMi0xNyAxMToyNyAga2luZwoKCSogYm9vdHN0cmFwOiBFTkg6IEFkZGVkIHRyeS1jb21waWxlIEtXU1lTX1NUQVRfSEFTX1NUX01USU0uICBUaGlzCgkgIHRlc3RzIHdoZXRoZXIgc3RydWN0IHN0YXQgaGFzIHRoZSBleHRyYSBzdF9tdGltIG1lbWJlciB0aGF0IGhhcwoJICBoaWdoIHJlc29sdXRpb24gdGltZXMuCgoyMDA1LTAyLTE3IDEwOjUxICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RTdGFydENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3RhcnRDb21tYW5kLmg6IEVOSDogQ2xlYW51cHMgYW5kIGFkZCBDVEVTVF9TVEFSVAoJICBjb21tYW5kCgoyMDA1LTAyLTE3IDEwOjUxICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yIHNpbmdsZSAnCgoyMDA1LTAyLTE3IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29uZmlndXJlLmh4eC5pbiwKCSAga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmN4eDogRU5IOiBBZGRlZCB0cnktY29tcGlsZQoJICBLV1NZU19TVEFUX0hBU19TVF9NVElNLiAgVGhpcyB0ZXN0cyB3aGV0aGVyIHN0cnVjdCBzdGF0IGhhcyB0aGUKCSAgZXh0cmEgc3RfbXRpbSBtZW1iZXIgdGhhdCBoYXMgaGlnaCByZXNvbHV0aW9uIHRpbWVzLgoKMjAwNS0wMi0xNyAxMDo0NSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEZJWDogZml4IGZvciBidWcgMTQwOQoKMjAwNS0wMi0xNyAxMDo0MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kQ3Vyc2VzLmNtYWtlOiBGSVg6IGZpeCBmb3IgYnVnIDE0MzgKCjIwMDUtMDItMTcgMTA6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEZJWDogZml4IGZvciBidWcgMTYwNgoKMjAwNS0wMi0xNyAxMDoxOCAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0MuY3h4OiBFTkg6IFJlbW92aW5nIGNvbGxhcHNpbmcgb2YgZmlsZXMgdG8gZnVsbAoJICBwYXRoIGJlZm9yZSBjaGVja2luZy4gIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHNldAoJICBjb3JyZWN0bHkgYmVjYXVzZSB0aGUgZGVwZW5kZW5jeSBsaW5lcyBhcmUgdXNlZCBieSBtYWtlIGFueXdheS4KCSAgVGhpcyBkcmFzdGljYWxseSBpbXByb3ZlcyB0aGUgc3BlZWQgb2YgZGVwZW5kZW5jeSBjaGVja2luZy4KCjIwMDUtMDItMTcgMTA6MDMgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBdm9pZCBnZW5lcmF0aW5nIGR1cGxpY2F0ZQoJICBydWxlcyBmb3IgYW4gb2JqZWN0IGZpbGUuICBBIHdhcm5pbmcgYWJvdXQgZHVwbGljYXRlIHNvdXJjZSBmaWxlcwoJICBpbiBhIHRhcmdldCBpcyBub3cgZ2VuZXJhdGVkLgoKMjAwNS0wMi0xNyAwODo1MCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRU5IOiBBZGRlZCBnZW5lcmF0aW9uCgkgIG9mIHRlc3QgdGFyZ2V0IHRvIHJ1biBjdGVzdC4KCjIwMDUtMDItMTcgMDc6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogUmVtb3ZpbmcgImd1ZXNzIHdoZW4gdGhlcmUgaXMgYSBzcGFjZSBpbgoJICB0aGUgcGF0aCIgY2hlY2sgZm9yIGNoZGlyIGNvbW1hbmQuICBJdCBpcyB0aGUgcmVzcG9uc2liaWxpdHkgb2YKCSAgdGhlIGNhbGxlciBvZiB0aGUgY29tbWFuZCB0byBlbnN1cmUgdGhlIGFyZ3VtZW50cyBhcmUgcHJvcGVybHkKCSAgcXVvdGVkIG9uIHRoZSBjb21tYW5kIGxpbmUuCgoyMDA1LTAyLTE3IDA3OjUzICBraW5nCgoJKiBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEJVRzogRml4IGZvciBzcGFjZSBpbiBwYXRoCgkgIGZvciBjaGRpciB0ZXN0LiAgV2UganVzdCBuZWVkIHRvIGRvdWJsZS1xdW90ZSB0aGUgYXJndW1lbnRzLgoKMjAwNS0wMi0xNyAwMjo0MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTE2IDE5OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogYWRkIENNQUtFX0NGR19JTlRESVIKCjIwMDUtMDItMTYgMTg6NDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogRU5IOiB1c2UKCSAgQUxMX0JVSUxEIHRhcmdldAoKMjAwNS0wMi0xNiAxNjozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBFTkg6IG1vcmUKCSAgdGVzdHMgYXJlIHBhc3NpbmcKCjIwMDUtMDItMTYgMTY6MDYgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RFbXB0eUJpbmFyeURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUNUZXN0U2NyaXB0SGFuZGxlci5jeHg6IEJVRzogUmVwb3J0IGVycm9ycwoKMjAwNS0wMi0xNiAxNjowMyAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBPbiB3aW5kb3dzIGFsbG93IHJlbW92aW5nIG9mCgkgIGZpbGVzIHRoYXQgYXJlIHJlYWQtb25seQoKMjAwNS0wMi0xNiAxNDozOCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDogQ09NUDogUmVtb3ZlIHVudXNlZAoJICB2YXJpYWJsZQoKMjAwNS0wMi0xNiAxNDoyNCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmg6IENPTVA6IFJlbW92ZSB3YXJuaW5nCgoyMDA1LTAyLTE2IDE0OjI0ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IEltcHJvdmUgb3V0cHV0LCBhbmQKCSAgaGFuZGxlICdHJyBmaWxlcyBpbiBzdWJ2ZXJzaW9uCgoyMDA1LTAyLTE2IDEzOjQ1ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBCVUc6IElmIHByb2plY3QgaXMgdXAgdG8KCSAgZGF0ZSwgaGFuZGxlIHRoYXQgY2FzZQoKMjAwNS0wMi0xNiAxMzozNiAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBCVUc6IENsZWFuIHRoZSBtZXNzYWdlcwoKMjAwNS0wMi0xNiAxMzozMCAgYW5keQoKCSogTW9kdWxlcy86IERhcnQuY21ha2UsIERhcnRDb25maWd1cmF0aW9uLnRjbC5pbjogRU5IOiBSZW9yZ2FuaXplCgkgIGFuZCBhZGQgc3VidmVyc2lvbiBzdXBwb3J0CgoyMDA1LTAyLTE2IDEzOjI5ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBSZW1vdmUgREFSVF9ST09UIHRvIGZvcmNlCgkgIERhcnRDb25maWd1cmF0aW9uLnRjbCB0byBiZSB1cCB0byBkYXRlCgoyMDA1LTAyLTE2IDEzOjI4ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsIGNtQ1Rlc3RVcGRhdGVIYW5kbGVyLmg6CgkgIEVOSDogSW5pdGlhbCBpbXBsZW1lbnRhdGlvbiBvZiBTVk4gc3VwcG9ydC4gQ2xvc2VzIEJ1ZyAjMTYwMSAtCgkgIEFkZCBzdWJ2ZXJzaW9uIHN1cHBvcnQKCjIwMDUtMDItMTYgMTM6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZW1haW4uY3h4LAoJICBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEJVRzogZml4IENvbW1hbmRMaW5lIHRlc3QKCSAgcHJvYmxlbXMgd2l0aCBzcGFjZXMgYW5kIHRlc3RpbmcgZm9yIHRoZSByZXR1cm4gdmFsdWUKCjIwMDUtMDItMTYgMTI6MzEgIG1hcnRpbmsKCgkqIENUZXN0Q3VzdG9tLmN0ZXN0LmluOiBFTkg6IGFkZCBzdXBwIGZvciB4bGMgbGlua2luZyBvbiBkYXJ3aW4KCjIwMDUtMDItMTYgMDk6MTcgIGFuZHkKCgkqIFV0aWxpdGllcy9jbXpsaWIvQ01ha2VMaXN0cy50eHQ6IENPTVA6IGF0dGVtcHQgdG8gZml4IHdhcm5pbmcgb24KCSAgVmlzdWFsIFN0dWRpbyA3CgoyMDA1LTAyLTE2IDA5OjAwICBob2ZmbWFuCgoJKiBDVGVzdEN1c3RvbS5jdGVzdC5pbjogQ09NUDogYWRkIGEgd2FybmluZyBpZ25vcmUgZm9yIGdjYyAzLjQuMgoKMjAwNS0wMi0xNiAwODo1NiAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBSZW1vdmluZyBkZWJ1Z2dpbmcgY29kZSBub3cKCSAgdGhhdCB0aGUgcHJvYmxlbSBoYXMgYmVlbiBmaXhlZCBvbiB0aGUgcmVtb3RlIGRhc2hib2FyZC4KCjIwMDUtMDItMTYgMDI6MTggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0xNSAxNzoyNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhZGQgY3VzdG9tIGNvbW1hbmRzLCBzdGlsbCBmYWlsaW5nIGEgYnVuY2ggb2YgdGVzdHMKCjIwMDUtMDItMTUgMTY6MDMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogUHJlc2VydmUgdHJhaWxpbmcgc2xhc2ggc3RhdGUKCSAgd2hlbiB0cmFuc2xhdGluZyBwYXRocy4KCjIwMDUtMDItMTUgMDk6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogbWFrZSBzdXJlIHBhdGhzIGRvIG5vdCBlbmQgaW4KCSAgLyBiZWZvcmUgYWRkaW5nIG9uZQoKMjAwNS0wMi0xNSAwOTowMiAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBTVFlMRTogQWRkZWQgVE9ETyBjb21tZW50IGZvcgoJICBjaGVja2luZyBkZXBlbmRlbmNpZXMuCgoyMDA1LTAyLTE1IDA5OjAxICBraW5nCgoJKiBUZXN0cy9Gb3J0cmFuLzogQ01ha2VMaXN0cy50eHQsIHRlc3RfbW9kdWxlX2ltcGxlbWVudGF0aW9uLmY5MCwKCSAgdGVzdF9tb2R1bGVfaW50ZXJmYWNlLmY5MCwgdGVzdF9tb2R1bGVfbWFpbi5mOTA6IEVOSDogQWRkZWQKCSAgRm9ydHJhbiA5MCB0ZXN0IGlmIHRoZSBwbGF0Zm9ybSBzdXBwb3J0cyBpdC4KCjIwMDUtMDItMTUgMDg6NDAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogQWRkaW5nIGRlYnVnZ2luZyBjb2RlIHRvCgkgIHJlbW90ZWx5IGRlYnVnIGEgZmFpbGluZyBkYXNoYm9hcmQgdGVzdC4KCjIwMDUtMDItMTUgMDg6MjggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogQWRkaW5nIGRlYnVnZ2luZyBjb2RlIHRvCgkgIHJlbW90ZWx5IGRlYnVnIGEgZmFpbGluZyBkYXNoYm9hcmQgdGVzdC4KCjIwMDUtMDItMTUgMDI6MTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0xNCAxNjo0NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsIGNtTG9jYWxHZW5lcmF0b3IuaDogRU5IOiBnZXR0aW5nIGNsb3NlcgoKMjAwNS0wMi0xNCAxNjoxNSAgYW5keQoKCSogVGVzdHMvTWFrZUNsZWFuL0NNYWtlTGlzdHMudHh0OiBDT01QOiBUcnkgdG8gZml4IHRlc3Qgb24gSFAKCjIwMDUtMDItMTQgMTQ6MzUgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDVGVzdEN1c3RvbS5jdGVzdC5pbiwgQ2hhbmdlTG9nLm1hbnVhbCwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogbWVyZ2UgZnJvbSBtYWluCgkgIHRyZWUKCjIwMDUtMDItMTQgMTA6MTYgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBvbmx5IGRvIG9iamMrKyB0ZXN0IHdpdGggR05VIG9mCgkgIGNvdXJzZQoKMjAwNS0wMi0xNCAxMDoxNiAgbWFydGluawoKCSogQ1Rlc3RDdXN0b20uY3Rlc3QuaW46IEVOSDogYWRkZWQgc3VwcCBmb3IgQ3VybCBjb2Rpbmcgc3R5bGUKCjIwMDUtMDItMTQgMDk6MjEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLXhsYy5jbWFrZTogRU5IOiBtb3ZlIHhsYyBzdHVmZiB0byBicmFuY2gKCjIwMDUtMDItMTQgMDg6NDQgIGtpbmcKCgkqIFRlc3RzL01ha2VDbGVhbi9DTWFrZUxpc3RzLnR4dDogQ09NUDogTmVlZCBBTlNJIGZsYWdzIGZvciBDCgkgIGV4ZWN1dGFibGUuCgoyMDA1LTAyLTE0IDAyOjE0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMTMgMDI6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0xMiAwMjoxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTExIDE2OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZCBjb21tYW5kIHRvIGNvcHkgZGlyZWN0b3J5IHdpdGggY29udGVudAoKMjAwNS0wMi0xMSAxNjoyNSAgYW5keQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDoKCSAgSW1wbGVtZW50IGNvcHkgb2YgZGlyZWN0b3J5IHdpdGggY29udGVudAoKMjAwNS0wMi0xMSAxNDozNiAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3BwLCBDTWFrZVNldHVwRGlhbG9nLmg6IEZJWDoKCSAgZml4IGZvciBidWcgMTEzNQoKMjAwNS0wMi0xMSAxNDoyNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgbW9yZSB3b3JrIG9uIGxpbmtpbmcgZmxhZ3MKCjIwMDUtMDItMTEgMTQ6MjIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbjogRklYOiBmaXggYnVnIDE0OTUKCjIwMDUtMDItMTEgMTQ6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEZJWDogZml4IGZvciBidWcgMTQ2MAoKMjAwNS0wMi0xMSAxNDoxOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9Vc2VTV0lHLmNtYWtlOiBGSVg6IGZpeCBidWcgMTMwMwoKMjAwNS0wMi0xMSAxNDoxMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRklYOiBmaXhlcyBidWdzIDExNTIgYW5kCgkgIDExNTQKCjIwMDUtMDItMTEgMDI6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0xMCAxNjoxOCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IFNwbGl0CgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyIGF3YXkgZnJvbQoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yIHRvIGJlIGEgc3RhbmQtYWxvbmUgZ2VuZXJhdG9yLgoKMjAwNS0wMi0xMCAxNDoxOSAga2luZwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDoKCSAgSW5pdGlhbGl6aW5nIHRyYW5zbGF0aW9uIG1hcCB1c2luZyB0aGUgUFdEIGVudmlyb25tZW50IHZhcmlhYmxlCgkgIGFuZCBnZXRjd2QgZnVuY3Rpb25zIHRvIGF1dG9tYXRpY2FsbHkgdHJhbnNsYXRlIGxvZ2ljYWwgcGF0aHMKCSAgaW52b2x2aW5nIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiAgQWxzbyBhZGRlZCB0aGUgSm9pblBhdGgKCSAgbWV0aG9kIHRvIGFpZCB1c2VycyBvZiB0aGUgU3BsaXRQYXRoIG1ldGhvZC4KCjIwMDUtMDItMTAgMTA6MzUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IENPTVA6IHN0ZDo6IC0+IGt3c3lzX3N0bDo6CgoyMDA1LTAyLTEwIDEwOjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmgsIGt3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IEFkZGVkIFN5c3RlbVRvb2xzOjpTcGxpdFBhdGgKCSAgbWV0aG9kIHRvIHNwbGl0IGFueSBmaWxlIHBhdGggaW50byBpdHMgYmFzaWMgY29tcG9uZW50cy4KCjIwMDUtMDItMTAgMDg6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDUtMDItMTAgMDg6MjIgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggZm9yIGJ1ZyAxMTAwLgoJICBJZiBFWEVDVVRBQkxFX09VVFBVVF9QQVRIIG9yIExJQlJBUllfT1VUUFVUX1BBVEggaXMgYSByZWxhdGl2ZQoJICBwYXRoIGl0IHNob3VsZCBiZSBjb252ZXJ0ZWQgdG8gYSBmdWxsIHBhdGggcmVsYXRpdmUgdG8gZWFjaCBidWlsZAoJICBkaXJlY3RvcnkuCgoyMDA1LTAyLTEwIDA3OjQ2ICBraW5nCgoJKiBVdGlsaXRpZXMvY216bGliLzogQ01ha2VMaXN0cy50eHQsIHpjb25mLmg6IENPTVA6IERpc2FibGluZwoJICB3YXJuaW5ncyBpbiB6bGliIGNvZGUgdG8gYXZvaWQgY2hhbmdpbmcgaXQgdG9vIG11Y2guCgoyMDA1LTAyLTEwIDA3OjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTAyLTEwIDAyOjE0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMDkgMjM6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaDogRU5IOiBmaXggYnVnIDEzMjQKCjIwMDUtMDItMDkgMjM6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmgsIGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5oOiBFTkg6IG1vdmUgbW9zdCBvZiB0aGUgdG8gZ2xvYmFsCgkgIGdlbmVyYXRvcgoKMjAwNS0wMi0wOSAyMzowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuaCwKCSAgTW9kdWxlcy9UZXN0QmlnRW5kaWFuLmNtYWtlOiBFTkg6IGZpeCBmb3IgMTQ1MAoKMjAwNS0wMi0wOSAyMjo0NiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRKTkkuY21ha2UsIEZpbmRKYXZhLmNtYWtlOiBFTkg6IGJ1ZyBmaXggMTU3MwoKMjAwNS0wMi0wOSAyMjo0NSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogRU5IOiBidWcgZml4IDE1NzQKCjIwMDUtMDItMDkgMTE6NDAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oLAoJICBUZXN0cy9NYWtlQ2xlYW4vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL01ha2VDbGVhbi9Ub0NsZWFuL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRpbmcgY2xlYW5pbmcgb2YgY3VzdG9tCgkgIGNvbW1hbmQgb3V0cHV0cyBkdXJpbmcgIm1ha2UgY2xlYW4iLgoKMjAwNS0wMi0wOSAwOTozNiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IE1vdmVkIHJlZmVyZW5jZSBmcm9tIGxvY2FsCgkgIGRyaXZlciB0YXJnZXRzIChsaWtlIGJ1aWxkLmxvY2FsKSBpbnRvIGluZGl2aWR1YWwgdGFyZ2V0IHJ1bGUKCSAgZmlsZXMuICBNYWluIHJ1bGUgaXMgbm93IGVtcHR5LCBleGNlcHQgdGhhdCBjbGVhbi5sb2NhbCBtYXkKCSAgcmVtb3ZlIGZpbGVzIHJlZ2lzdGVyZWQgZm9yIGNsZWFuaW5nLgoKMjAwNS0wMi0wOSAwOTozMiAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGluZyBNYWtlQ2xlYW4gdGVzdCB0byB0ZXN0CgkgIGNsZWFuaW5nIGZvciBtYWtlZmlsZSBnZW5lcmF0b3JzLgoKMjAwNS0wMi0wOSAwOToyMSAga2luZwoKCSogVGVzdHMvTWFrZUNsZWFuLzogQ01ha2VMaXN0cy50eHQsIGNoZWNrX2NsZWFuLmMuaW4sCgkgIFRvQ2xlYW4vQ01ha2VMaXN0cy50eHQsIFRvQ2xlYW4vVG9DbGVhbkZpbGVzLmNtYWtlLmluLAoJICBUb0NsZWFuL3RvY2xlYW4uY3h4OiBFTkg6IEFkZGluZyB0ZXN0IG9mICJtYWtlIGNsZWFuIi4KCjIwMDUtMDItMDggMTc6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIGNtWENvZGVPYmplY3QuaDogRU5IOiBhZGQgbGluayBsaWJyYXJ5IHN0dWZmCgoyMDA1LTAyLTA4IDEwOjEzICBhbmR5CgoJKiBUZXN0cy9TeXN0ZW1JbmZvcm1hdGlvbi9DTWFrZUxpc3RzLnR4dDogRU5IOiBEaXNwbGF5IGFsbCBvdXRwdXQKCSAgaW4gY3Rlc3QKCjIwMDUtMDItMDcgMTc6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbVhDb2RlT2JqZWN0LmN4eCwKCSAgY21YQ29kZU9iamVjdC5oOiBFTkg6IGZpeCBidWcgaW4gdGFyZ2V0IGxpbmtpbmcKCjIwMDUtMDItMDcgMTY6MTggIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguZmlsZS5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmZpbGUuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmZpbGUuY3h4OiBFTkg6IEFkZGVkCgkgIHBhcnRpYWwgdGVzdCBmb3IgaW5jbHVkZSByZWd1bGFyIGV4cHJlc3Npb25zLgoKMjAwNS0wMi0wNyAxNjoxNiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQ09NUDogUmVtb3ZlZCB1c2VsZXNzCgkgIGV4cHJlc3Npb24gd2FybmluZy4KCjIwMDUtMDItMDcgMTY6MTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kcy5jeHgsIGNtRGVwZW5kcy5oLCBjbURlcGVuZHNDLmN4eCwKCSAgY21EZXBlbmRzQy5oLCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEVOSDogSW1wbGVtZW50ZWQKCSAgc3VwcG9ydCBmb3IgaW5jbHVkZS9jb21wbGFpbiByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBkZXBlbmRlbmN5CgkgIHNjYW5uaW5nLiAgVGhpcyBub3cgaW5jbHVkZXMgdGhlIHBvc3NpYmlsaXR5IHRoYXQgc2Nhbm5pbmcgd2lsbAoJICByZXR1cm4gZmFpbHVyZSBhbmQgdGhlIGJ1aWxkIHdpbGwgc3RvcC4KCjIwMDUtMDItMDcgMTU6MTAgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCBnZW5lcmF0aW9uIG9mCgkgIENNYWtlRGlyZWN0b3J5SW5mb3JtYXRpb24uY21ha2UgZmlsZSBpbiBlYWNoIGRpcmVjdG9yeSBuZXh0IHRvCgkgIHRoZSBNYWtlZmlsZS4gIFRoZSBpbmNsdWRlIGZpbGUgc2VhcmNoIHBhdGggaXMgbm93IHN0b3JlZCBpbiB0aGlzCgkgIGZpbGUgaW5zdGVhZCBvZiBkdXBsaWNhdGluZyBpdCBmb3IgZXZlcnkgb2JqZWN0IGZpbGUuIFRoaXMgd2lsbAoJICBhbHNvIGFsbG93IG1vcmUgaW5mb3JtYXRpb24gdG8gYmUgcGFzc2VkIGluIHRoZSBmdXR1cmUuCgoyMDA1LTAyLTA3IDE1OjA5ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFTkg6IEFkZGVkIEdldENvbXBsYWluUmVndWxhckV4cHJlc3Npb24KCSAgbWV0aG9kLgoKMjAwNS0wMi0wNyAwOTowNSAga2luZwoKCSogVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vRHVtcEluZm9ybWF0aW9uLmN4eDogQlVHOiBOZWVkIHRvIGluY2x1ZGUKCSAgZnVsbCBvdXRwdXQgdG8gYmUgYSB1c2VmdWwgdGVzdC4KCjIwMDUtMDItMDcgMDU6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0wNiAwNToyNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAyLTA1IDA3OjUwICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGVkIHBvc3QtYnVpbGQgY29tbWFuZAoJICB0byBkcml2ZSBpbnN0YWxsYXRpb24gdGhyb3VnaCB0aGUgbmF0aXZlIGJ1aWxkIHN5c3RlbS4KCjIwMDUtMDItMDUgMDU6MjcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0wNCAxNzo1OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtWENvZGVPYmplY3QuY3h4LAoJICBjbVhDb2RlT2JqZWN0Lmg6IEVOSDogdGhpcyB2ZXJzaW9uIGNhbiBidWlsZCBjbWFrZQoKMjAwNS0wMi0wNCAxNzozOCAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEZpeGVkIC0tYnVpbGQtdGFyZ2V0IGltcGxlbWVudGF0aW9uIHRvCgkgIHdvcmsgd2l0aCBWaXN1YWwgU3R1ZGlvIGdlbmVyYXRvcnMuCgoyMDA1LTAyLTA0IDE1OjE0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogSW1wbGVtZW50ZWQgZXh0ZXJuYWwgb2JqZWN0CgkgIGZlYXR1cmUuCgoyMDA1LTAyLTA0IDE0OjEzICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkaW5nIHRlc3QgZm9yIGV4dGVybmFsIG9iamVjdCBmaWxlCgkgIGZlYXR1cmUuCgoyMDA1LTAyLTA0IDEzOjU4ICBraW5nCgoJKiBUZXN0cy9FeHRlcm5hbE9CSi86IENNYWtlTGlzdHMudHh0LCBleGVjdXRhYmxlLmN4eCwKCSAgT2JqZWN0L0NNYWtlTGlzdHMudHh0LCBPYmplY3QvZXh0ZXJuYWxfbWFpbi5jeHgsCgkgIE9iamVjdC9leHRlcm5hbF9vYmplY3QuY3h4OiBFTkg6IEFkZGluZyB0ZXN0IGZvciBleHRlcm5hbCBvYmplY3QKCSAgZmlsZSBmZWF0dXJlLgoKMjAwNS0wMi0wNCAxMDowNiAga2luZwoKCSogTW9kdWxlcy9DTWFrZVRlc3RGb3J0cmFuQ29tcGlsZXIuY21ha2U6IEVOSDogQWRkZWQgdGVzdCBmb3IKCSAgRm9ydHJhbjkwIHN1cHBvcnQuCgoyMDA1LTAyLTA0IDA1OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMDMgMTk6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eDogQ09NUDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA1LTAyLTAzIDE3OjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21YQ29kZU9iamVjdC5jeHgsIGNtWENvZGVPYmplY3QuaDogRU5IOgoJICBkZXBlbmRzIHdvcmsgYmV0d2VlbiB0YXJnZXRzCgoyMDA1LTAyLTAzIDA4OjM5ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzSmF2YVBhcnNlckhlbHBlci5jeHg6IENPTVA6IEZpeCB3YXJuaW5nIGFib3V0CgkgIHByaW50ZiBmb3JtYXQgYW5kIGdpdmVuIHR5cGUuCgoyMDA1LTAyLTAzIDA1OjI5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDItMDIgMTc6MTYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21YQ29kZU9iamVjdC5jeHgsIGNtWENvZGVPYmplY3QuaDogRU5IOgoJICBnZXR0aW5nIGNsb3NlcgoKMjAwNS0wMi0wMiAxNzowNSAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueSwKCSAgY21EZXBlbmRzSmF2YVBhcnNlci5jeHgsIGNtRGVwZW5kc0phdmFQYXJzZXIueTogQ09NUDogQWRkaW5nCgkgIHdhcm5pbmcgd29yay1hcm91bmQgZm9yIHVudXNlZCBjYXNlIGxhYmVsIHl5ZXJyb3JsYWIgb24gSFAKCSAgY29tcGlsZXIuCgoyMDA1LTAyLTAyIDEzOjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogbW92ZSBBZGRGbGFncyBzdHVmZiB1cCB0bwoJICBMb2NhbEdlbmVyYXRvciBmcm9tIExvY2FsVW5peCBnZW5lcmF0b3IKCjIwMDUtMDItMDIgMDU6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMi0wMSAxNzoxNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBjbG9zZXIKCjIwMDUtMDItMDEgMTU6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbVhDb2RlT2JqZWN0LmN4eDogRU5IOgoJICBnZXR0aW5nIGNsb3NlcgoKMjAwNS0wMi0wMSAxNDoyOCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNS0wMi0wMSAxMzoxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUZpbmRYQ29kZS5jbWFrZTogRU5IOiBhZGQgdHJ5Y29tcGlsZSBjb2RlIGZvciB4Y29kZQoKMjAwNS0wMi0wMSAxMzowNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhZGQgdHJ5Y29tcGlsZSBjb2RlIGZvciB4Y29kZQoKMjAwNS0wMi0wMSAxMToyOCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhblBhcnNlci5jeHgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgQ09NUDogRGlzYWJsaW5nIHdhcm5pbmcgaW4gZ2VuZXJhdGVkIGNvZGUuCgoyMDA1LTAyLTAxIDEwOjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNKYXZhTGV4ZXIuaCwgY21EZXBlbmRzSmF2YUxleGVyLmluLmw6IENPTVA6CgkgIFJlbW92aW5nICNsaW5lIGRpcmVjdGl2ZXMgZnJvbSAuaCBmaWxlIHRvIGF2b2lkIGJvZ3VzIFN1bgoJICB3YXJuaW5nLgoKMjAwNS0wMi0wMSAxMDo0MiAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtRGVwZW5kc0ZvcnRyYW4uY3h4LAoJICBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuY3h4LCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaCwKCSAgY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmwsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuY3h4LAoJICBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLmgsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueSwKCSAgY21EZXBlbmRzRm9ydHJhblBhcnNlclRva2Vucy5oLCBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuYywKCSAgY21EZXBlbmRzRm9ydHJhblBhcnNlci5jOiBFTkg6IENoYW5nZWQgb3ZlciB0byB1c2luZyBDKysgZm9yCgkgIGJ1aWxkaW5nIGZsZXgvYmlzb24gZ2VuZXJhdGVkIGZpbGVzLglJdCByZWR1Y2VzIHRoZSBudW1iZXIgb2YKCSAgY2hhbmdlcyB0aGF0IG5lZWQgdG8gYmUgbWFkZSBhZnRlciBnZW5lcmF0aW9uLgoKMjAwNS0wMi0wMSAwNTozOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTMxIDA1OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMzAgMDU6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0yOSAwNzo1NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQ09NUDogUmVtb3ZlZCBzaGFkb3dlZAoJICB2YXJpYWJsZSB3YXJuaW5nLgoKMjAwNS0wMS0yOSAwNToyMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTI4IDE4OjEyICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IEFkZGVkIG1pc3NpbmcgbGFiZWxzIHRvCgkgIGNhc2UuCgoyMDA1LTAxLTI4IDE3OjQ2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbURlcGVuZHNKYXZhTGV4ZXIuY3h4LCBjbURlcGVuZHNKYXZhTGV4ZXIuaW4ubDogQ09NUDoKCSAgQW5vdGhlciBib3JsYW5kIHByb2JsZW0KCjIwMDUtMDEtMjggMTc6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0phdmFMZXhlci5jeHgsIGNtRGVwZW5kc0phdmFMZXhlci5pbi5sLAoJICBjbURlcGVuZHNKYXZhUGFyc2VyLmN4eCwgY21EZXBlbmRzSmF2YVBhcnNlci55LAoJICBjbURlcGVuZHNKYXZhUGFyc2VyVG9rZW5zLmg6IENPTVA6IFJlbW92ZSBtb3JlIHdhcm5pbmdzL2Vycm9ycwoKMjAwNS0wMS0yOCAxNzoyNSAga2luZwoKCSogU291cmNlL2NtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHg6IENPTVA6IEZpeCB1bnVzZWQgcGFyYW1ldGVyCgkgIHdhcm5pbmcgd2hlbiBib290c3RyYXBwaW5nLgoKMjAwNS0wMS0yOCAxNzoyNCAgYW5keQoKCSogU291cmNlLzogY21EZXBlbmRzSmF2YUxleGVyLmN4eCwgY21EZXBlbmRzSmF2YUxleGVyLmluLmwsCgkgIGNtRGVwZW5kc0phdmFQYXJzZXIuY3h4LCBjbURlcGVuZHNKYXZhUGFyc2VyLnksCgkgIGNtRGVwZW5kc0phdmFQYXJzZXJUb2tlbnMuaDogQ09NUDogUmVtb3ZlIHdhcm5pbmdzCgoyMDA1LTAxLTI4IDE3OjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oOgoJICBFTkg6IG1vdmUgZXhlY3V0YWJsZSB4Y29kZSBzdHVmZiB0byBhIG1ldGhvZAoKMjAwNS0wMS0yOCAxNzoxOCAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0phdmFQYXJzZXJIZWxwZXIuY3h4OiBDT01QOiBSZW1vdmVkIGRlZmF1bHQKCSAgYXJndW1lbnQgZnJvbSBtZXRob2QgZGVmaW5pdGlvbi4KCjIwMDUtMDEtMjggMTc6MTQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgamF2YSBkZXBlbmRlbmN5CgoyMDA1LTAxLTI4IDE3OjEzICBhbmR5CgoJKiBTb3VyY2UvOiBjbURlcGVuZHNKYXZhUGFyc2VyLmN4eCwgY21EZXBlbmRzSmF2YVBhcnNlci55LAoJICBjbURlcGVuZHNKYXZhUGFyc2VySGVscGVyLmN4eCwgY21EZXBlbmRzSmF2YVBhcnNlckhlbHBlci5oLAoJICBjbURlcGVuZHNKYXZhUGFyc2VyVG9rZW5zLmg6IEVOSDogSW5pdGlhbCBpbXBvcnQgb2YgamF2YSBwYXJzZXIKCjIwMDUtMDEtMjggMTc6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuUGFyc2VyLnk6IFNUWUxFOiBBZGQgc29tZSBkaWZmIGhlbHBpbmcKCSAgY29tbWVudHMKCjIwMDUtMDEtMjggMTc6MDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIuYywgY21EZXBlbmRzRm9ydHJhblBhcnNlci55LAoJICBjbURlcGVuZHNGb3J0cmFuUGFyc2VyVG9rZW5zLmg6IENPTVA6IERpc2FibGVkIHdhcm5pbmdzIGluCgkgIGdlbmVyYXRlZCBjb2RlLgoKMjAwNS0wMS0yOCAxNjo1NiAgYW5keQoKCSogU291cmNlLzogY21EZXBlbmRzSmF2YUxleGVyLmN4eCwgY21EZXBlbmRzSmF2YUxleGVyLmgsCgkgIGNtRGVwZW5kc0phdmFMZXhlci5pbi5sOiBFTkg6IEluaXRpYWwgaW1wb3J0IG9mIGphdmEgcGFyc2VyCgoyMDA1LTAxLTI4IDE2OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGFic29sdXRlIHBhdGhzCgoyMDA1LTAxLTI4IDE2OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oOgoJICBFTkg6IGNyZWF0ZSBtYWluR3JvdXAKCjIwMDUtMDEtMjggMTQ6MTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBJbXBsZW1lbnRlZCBmdWxsIHBlci1vYmplY3QKCSAgdGVzdCBmb3Igd2hldGhlciBwcm92aWRlcy1yZXF1aXJlcyBtb2RlIGlzIG5lZWRlZC4gIFRoaXMgd2lsbAoJICBzdGlsbCB1c2UgYSByZWN1cnNpdmUgbWFrZSBmb3IgYW55IEZvcnRyYW4gb2JqZWN0IGV2ZW4gaWYgaXQKCSAgZG9lc24ndCBoYXZlIHJlcXVpcmVzLiAgSXQgaXMgcG9zc2libGUgdG8gYXZvaWQgaXQgYnV0IHdlIGNhbiBkbwoJICB0aGF0IGxhdGVyLgoKMjAwNS0wMS0yOCAxMzoyMCAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBFTkg6IEJldHRlciBjaGVja2luZyBmb3IgRGFydC4gQ2xvc2VzIEJ1ZwoJICAjMTUwNSAtIENvbmZpZ3VyYXRpb24gZmFpbHMgdG8gY3JlYXRlIE1ha2VmaWxlCgoyMDA1LTAxLTI4IDEzOjAwICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IHByZXZlbnQgLVAgb3Igc2NyaXB0IHRvIGJlIHBhc3NlZCBhcwoJICBob21lZGlyZWN0b3J5CgoyMDA1LTAxLTI4IDEyOjAxICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IFNUWUxFOiBBZGRlZCBhbm90aGVyIHNvbHV0aW9uCgkgIHByb3Bvc2FsIGZvciBvdXQtb2YtZGlyZWN0b3J5IG1vZHVsZXMuCgoyMDA1LTAxLTI4IDEwOjQ1ICBraW5nCgoJKiBTb3VyY2UvY21EZXBlbmRzRm9ydHJhbi5jeHg6IEVOSDogQWRkZWQgcHJvdmlkZXMvcmVxdWlyZXMgb3V0cHV0CgkgIGZvciBtb2R1bGVzLgoKMjAwNS0wMS0yOCAxMDoxMiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IEFkZCBlcnJvciByZWdleAoKMjAwNS0wMS0yOCAwODozMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFTkg6IHJlbW92ZSBkZWJ1ZyBwcmludAoKMjAwNS0wMS0yOCAwNToyMCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTI3IDE5OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IGZpeCB3YXJuaW5nCgoyMDA1LTAxLTI3IDE3OjQ1ICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogRW5hYmxlIGNvbXByZXNzaW9uIGFuZCB1c2UgdGhlIG5ldwoJICB0cmlnZ2VyIHNjcmlwdAoKMjAwNS0wMS0yNyAxNzo0MyAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4LCBNb2R1bGVzL0RhcnRDb25maWd1cmF0aW9uLnRjbC5pbjogRU5IOiBFbmFibGUKCSAgY29tcHJlc3Npb24gd2l0aCBEYXJ0Q29uZmlndXJhdGlvbiBmaWxlCgoyMDA1LTAxLTI3IDE3OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21YQ29kZU9iamVjdC5jeHg6IEVOSDoKCSAgeGNvZGUgYWxtb3N0IHdvcmtpbmcgZm9yIHNpbXBsZSBleGUsIGJ1dCBub3QgeWV0CgoyMDA1LTAxLTI3IDE2OjQ5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmg6IENPTVA6IEZpeCBidWlsZCBvbiBzdW4KCjIwMDUtMDEtMjcgMTY6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbVhDb2RlT2JqZWN0LmN4eDogRU5IOiBmaXgKCSAgYSBmZXcgbW9yZSB4Y29kZSB0aGluZ3MKCjIwMDUtMDEtMjcgMTY6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVhDb2RlT2JqZWN0LmN4eDogRU5IOiBhZGQgbWlzc2luZyA7CgoyMDA1LTAxLTI3IDE2OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5oLAoJICBjbVhDb2RlT2JqZWN0LmN4eDogRU5IOiBhZGQgbW9yZSB4Y29kZSBzdHVmZgoKMjAwNS0wMS0yNyAxNTo1NCAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdEdlbmVyaWNIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RNZW1DaGVja0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0TWVtQ2hlY2tIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFRlc3RIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuaDoKCSAgRU5IOiBTZXZlcmFsIGNsZWFudXBzIGFuZCBpbXByb3ZlbWVudHMKCjIwMDUtMDEtMjcgMTM6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RSdW5TY3JpcHRDb21tYW5kLmN4eCwKCSAgY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LCBjbUNUZXN0U2NyaXB0SGFuZGxlci5oOiBFTkg6IGNsZWFuIHVwCgkgIHJ1bm5pbmcgb2YgZGVmYXVsdCBzY3JpcHQKCjIwMDUtMDEtMjcgMTE6NDMgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwKCSAgQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q29uZmlndXJlSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0R2VuZXJpY0hhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5oOgoJICBFTkg6IEFkZCBhIHN1cGVyY2xhc3MgdG8gYWxsIGhhbmRsZXJzCgoyMDA1LTAxLTI3IDExOjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0UnVuU2NyaXB0Q29tbWFuZC5jeHgsCgkgIGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgY21DVGVzdFNjcmlwdEhhbmRsZXIuaCwKCSAgY21DVGVzdFNsZWVwQ29tbWFuZC5jeHg6IENPTVA6IGZpeCBzb21lIGNvbXBpbGVyIHdhcm5pbmdzL2Vycm9ycwoKMjAwNS0wMS0yNyAxMDo0NyAgbWFydGluawoKCSogU291cmNlL2N0ZXN0LmN4eDogRU5IOiBhZGRlZCBtaXNzaW5nIGRvY3VtZW50YXRpb24KCjIwMDUtMDEtMjcgMTA6MTQgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0Q29uZmlndXJlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmgsCgkgIENUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmN4eDoKCSAgRU5IOiBBZGQgY29tcHJlc3Npb24gc3VwcG9ydCB0byBYTUwgZmlsZXMKCjIwMDUtMDEtMjcgMTA6MTQgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6CgkgIEFkZCBjb21wcmVzc2lvbiBzdXBwb3J0CgoyMDA1LTAxLTI3IDEwOjExICBhbmR5CgoJKiBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IExpbmsgdG8gY216bGliCgoyMDA1LTAxLTI3IDEwOjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ1Rlc3QvY21DVGVzdENvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdEVtcHR5QmluYXJ5RGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RFbXB0eUJpbmFyeURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgQ1Rlc3QvY21DVGVzdFJ1blNjcmlwdENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0UnVuU2NyaXB0Q29tbWFuZC5oLCBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmgsIENUZXN0L2NtQ1Rlc3RTbGVlcENvbW1hbmQuY3h4LAoJICBDVGVzdC9jbUNUZXN0U2xlZXBDb21tYW5kLmg6IEVOSDogYWRkZWQgbW9yZSBjYXBhYmlsaXRpZXMgdG8KCSAgY3Rlc3QKCjIwMDUtMDEtMjcgMDU6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0yNiAxNjoxOSAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueTogQ09NUDogQWRkZWQgaW5zdHJ1Y3Rpb24gdG8KCSAgcmVtb3ZlIFRBQnMgZnJvbSBnZW5lcmF0ZWQgZmlsZS4KCjIwMDUtMDEtMjYgMTY6MTggIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEVOSDoKCSAgQWRkZWQgaG9vayBpbnRvIEZvcnRyYW4gZGVwZW5kZW5jeSBzY2FubmVyLgoKMjAwNS0wMS0yNiAxNjoxNyAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbkxleGVyLmMsIGNtRGVwZW5kc0ZvcnRyYW5MZXhlci5oLAoJICBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLmMsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXJUb2tlbnMuaDogRU5IOgoJICBBZGRlZCBnZW5lcmF0ZWQgbGV4ZXIgYW5kIHBhcnNlciBzb3VyY2VzLgoKMjAwNS0wMS0yNiAxNjoxMCAga2luZwoKCSogU291cmNlLzogY21EZXBlbmRzRm9ydHJhbkxleGVyLmluLmwsIGNtRGVwZW5kc0ZvcnRyYW5QYXJzZXIueToKCSAgQ09NUDogQWRkZWQgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgYWJvdXQgaG93IHRvIG1vZGlmeSB0aGUKCSAgZ2VuZXJhdGVkIGZpbGVzLgoKMjAwNS0wMS0yNiAxNjowOSAga2luZwoKCSogU291cmNlL2NtRGVwZW5kc0ZvcnRyYW4uY3h4OiBDT01QOiBBZGRlZCBjb25zdHJ1Y3RvciB0bwoJICBjbURlcGVuZHNGb3J0cmFuRmlsZSB0byBhdm9pZCB1c2luZyBpbml0aWFsaXplciBsaXN0LiAgQWxzbwoJICBpbmNsdWRlZCBhc3NlcnQuaC4KCjIwMDUtMDEtMjYgMTU6NTggIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuUGFyc2VyLnk6IENPTVA6IEFkZGVkIGZvcndhcmQgZGVjbGFyYXRpb24KCSAgb2YgeXlsZXguCgoyMDA1LTAxLTI2IDE1OjU1ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBBZGQgemxpYiBmcm9tIFZUSwoKMjAwNS0wMS0yNiAxNTo1NSAgYW5keQoKCSogVXRpbGl0aWVzL2NtemxpYi86IC5Ob0RhcnRDb3ZlcmFnZSwgQ01ha2VMaXN0cy50eHQsIGFkbGVyMzIuYywKCSAgY21femxpYl9tYW5nbGUuaCwgY29tcHJlc3MuYywgY3JjMzIuYywgZGVmbGF0ZS5jLCBkZWZsYXRlLmgsCgkgIGV4YW1wbGUuYywgZ3ppby5jLCBpbmZibG9jay5jLCBpbmZibG9jay5oLCBpbmZjb2Rlcy5jLAoJICBpbmZjb2Rlcy5oLCBpbmZmYXN0LmMsIGluZmZhc3QuaCwgaW5mZml4ZWQuaCwgaW5mbGF0ZS5jLAoJICBpbmZ0cmVlcy5jLCBpbmZ0cmVlcy5oLCBpbmZ1dGlsLmMsIGluZnV0aWwuaCwgbWFrZXRyZWUuYywKCSAgbWluaWd6aXAuYywgdHJlZXMuYywgdHJlZXMuaCwgdW5jb21wci5jLCB6Y29uZi5oLCB6bGliLmRlZiwKCSAgemxpYi5oLCB6bGliLnJjLCB6bGliRGxsQ29uZmlnLmguaW4sIHp1dGlsLmMsIHp1dGlsLmg6IEVOSDoKCSAgSW5pdGlhbCBpbXBvcnQgZnJvbSBWVEsKCjIwMDUtMDEtMjYgMTU6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbURlcGVuZHNGb3J0cmFuLmN4eDogRU5IOiBSZW1vdmVkIExleGVyL1BhcnNlciBwcmVmaXgKCSAgYmVmb3JlIF95eSBzeW1ib2xzLiAgSnVzdCBjbURlcGVuZHNGb3J0cmFuX3l5IGlzIGVub3VnaC4KCjIwMDUtMDEtMjYgMTU6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IHZlcnNpb24gbnVtYmVyCgoyMDA1LTAxLTI2IDE1OjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbURlcGVuZHNGb3J0cmFuLmN4eCwgY21EZXBlbmRzRm9ydHJhbi5oLAoJICBjbURlcGVuZHNGb3J0cmFuTGV4ZXIuaW4ubCwgY21EZXBlbmRzRm9ydHJhblBhcnNlci5oLAoJICBjbURlcGVuZHNGb3J0cmFuUGFyc2VyLnk6IEVOSDogQWRkZWQgRm9ydHJhbiBkZXBlbmRlbmN5IHNjYW5uZXIKCSAgaW1wbGVtZW50YXRpb24uCgoyMDA1LTAxLTI2IDE0OjI1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uaDogRU5IOgoJICBBZGRlZCBkZWZhdWx0IGNvbnN0cnVjdG9yIGFuZCBPcGVuIG1ldGhvZC4KCjIwMDUtMDEtMjYgMTE6MTMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RUZXN0SGFuZGxlci5jeHgsIGNtQ1Rlc3RUZXN0SGFuZGxlci5oOiBFTkg6CgkgIEFkZCBzdXBwb3J0IGZvciBzaHJpbmtpbmcgdGhlIG91dHB1dCBvZiB0aGUgdGVzdAoKMjAwNS0wMS0yNiAxMDoxMCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRU5IOiBBZGQgbWV0aG9kIHRvIHBvcHVsYXRlCgkgIGN1c3RvbSBpbnRlZ2VycwoKMjAwNS0wMS0yNiAwNTo1OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTI1IDE2OjM2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHg6IENPTVA6IGZpeCB3YXJuaW5ncwoKMjAwNS0wMS0yNSAxNjozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXggd2FybmluZ3MKCjIwMDUtMDEtMjUgMTY6MDkgIGhvZmZtYW4KCgkqIGJvb3RzdHJhcDogRU5IOiBhZGQgeGNvZGUgc3R1ZmYgdG8gYm9vdHN0cmFwCgoyMDA1LTAxLTI1IDE1OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21HbG9iYWxYQ29kZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuaCwgY21YQ29kZU9iamVjdC5jeHgsIGNtWENvZGVPYmplY3QuaCwKCSAgY21ha2UuY3h4OiBFTkg6IGFkZCBpbml0aWFsIG5vbi13b3JraW5nIFhDb2RlIHN0dWZmCgoyMDA1LTAxLTI1IDA1OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMjQgMTc6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsWENvZGVHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFhDb2RlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxYQ29kZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxYQ29kZUdlbmVyYXRvci5oLAoJICBjbVhDb2RlT2JqZWN0LmN4eCwgY21YQ29kZU9iamVjdC5oOiBFTkg6IGluaXRpYWwgeGNvZGUgc3R1ZmYKCjIwMDUtMDEtMjQgMDU6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0yMyAwNTo1NiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTIyIDA1OjUxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMjEgMTY6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtWENvZGVPYmplY3QuY3h4LCBjbVhDb2RlT2JqZWN0Lmg6IEVOSDogc3RhcnQgeGNvZGUKCSAgc3R1ZmYKCjIwMDUtMDEtMjEgMTI6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBFTkg6IG1vdmUgcHJvamVjdCBtYXAgdG8gZ2xvYmFsCgkgIGdlbmVyYXRvciBiYXNlCgoyMDA1LTAxLTIxIDExOjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21XaGlsZUNvbW1hbmQuY3h4OiBDT01QOiBmaXggdW51c2VkIHZhciB3YXJuaW5nCgoyMDA1LTAxLTIxIDEwOjI3ICBob2ZmbWFuCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQm9vdHN0cmFwQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmgsCgkgIFNvdXJjZS9jbVdoaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogc3BsaXQgdXAKCSAgY21Db21tYW5kcyBpbnRvIHR3byBmaWxlcwoKMjAwNS0wMS0yMSAwOTozNyAgbWFydGluawoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtV2hpbGVDb21tYW5kLmN4eCwgY21XaGlsZUNvbW1hbmQuaCwKCSAgY21FbmRXaGlsZUNvbW1hbmQuY3h4LCBjbUVuZFdoaWxlQ29tbWFuZC5oOiBFTkg6IGFkZGVkIHdoaWxlCgkgIGNvbW1hbmQKCjIwMDUtMDEtMjEgMDU6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0yMCAxNToyNiAgbWFydGluawoKCSogU291cmNlL2NtU2V0Q29tbWFuZC5jeHg6IENPTVA6IGZpeCB1bnVzZWQgdmFyIHdhcm5pbmcKCjIwMDUtMDEtMjAgMTQ6MzggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtU2V0Q29tbWFuZC5jeHgsIGNtU2V0Q29tbWFuZC5oOiBFTkg6IG5vdyB0aGUgc2V0CgkgIGNvbW1hbmQgY2FuIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMKCjIwMDUtMDEtMjAgMTI6MzAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlci5jbWFrZS5pbiwgQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsIENNYWtlRm9ydHJhbkNvbXBpbGVyLmNtYWtlLmluLAoJICBDTWFrZUphdmFDb21waWxlci5jbWFrZS5pbiwgQ01ha2VSQ0NvbXBpbGVyLmNtYWtlLmluLAoJICBDTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBQbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLCBQbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLmluOiBFTkg6CgkgIHN0dWZmIHRvIGtlZXAgY29tcGlsZXIgdGVzdHMgZnJvbSByZS1ydW5uaW5nIGFsbCB0aGUgdGltZQoKMjAwNS0wMS0yMCAxMjoyOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4OgoJICBFTkg6IGFkZCBzb21lIGNvbW1lbnRzIG9uIGhvdyB0aGlzIGNvdWxkIGJlIG1vdmVkIHRvIGdsb2JhbAoJICBnZW5lcmF0b3IKCjIwMDUtMDEtMjAgMDQ6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0xOSAxMjowNiAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmluLmwsIGNtTGlzdEZpbGVMZXhlci5jOiBFTkg6IE1hbmdsZWQKCSAgbGV4ZXIgc3ltYm9scyB0byBiZWdpbiBpbiBjbUxpc3RGaWxlTGV4ZXJfeXkgaW5zdGVhZCBvZiBqdXN0IHl5CgkgIHRvIGF2b2lkIGNvbmZsaWN0IHdpdGggb3RoZXIgbGV4ZXJzIHRoYXQgbWF5IGJlIGFkZGVkLgoKMjAwNS0wMS0xOSAwNzoyMyAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IFJlbW92ZWQgdW5xdW90ZWQgdmVyc2lvbiBvZgoJICBPQkpFQ1RTIG1ha2UgdmFyaWFibGUuICBRdW90ZWQgc2VlbXMgdG8gd29yayBldmVyeXdoZXJlLiAgQlVHOgoJICBGaXhlZCBBcHBlbmRBbnlEZXBlbmQgdG8gcHJvcGVybHkgaWRlbnRpZnkgZXhlY3V0YWJsZSB0YXJnZXRzLgoJICBCVUc6IFVzZWQgQ3JlYXRlTWFrZVZhcmlhYmxlIHRvIGZpeCB2YXJpYWJsZSBuYW1lIGZvciBPQkpFQ1RTCgkgIGxpc3Qgd2hlbiB0YXJnZXQgaGFzIGEgLiBpbiBpdHMgbmFtZS4KCjIwMDUtMDEtMTkgMDU6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0xOCAxODoxMSAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogQWRkIHByb3BlcgoJICBsaW5rIGRpcmVjdG9yeQoKMjAwNS0wMS0xOCAxNzoyOSAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogQ09NUDogQWRkIGNtZXhwYXQKCSAgdG8gY29tcGxleAoKMjAwNS0wMS0xOCAxNzowOSAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtRGVwZW5kcy5jeHgsIGNtRGVwZW5kcy5oLAoJICBjbURlcGVuZHNDLmN4eCwgY21EZXBlbmRzQy5oLCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmgsIGNtYWtlLmN4eDogRU5IOiBTcGxpdCBkZXBlbmRlbmN5CgkgIHNjYW5uaW5nIGFuZCBjaGVja2luZyBpbnRvIHNlcGFyYXRlIGNtRGVwZW5kcyBzdXBlcmNsYXNzIHdpdGgKCSAgbGFuZ3VhZ2Utc3BlY2lmaWMgc3ViY2xhc3NlcyBzdWNoIGFzIGNtRGVwZW5kc0MuCgoyMDA1LTAxLTE4IDE2OjQ3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IE9rLCBhY3R1YWxseSBsaW5rIHRvIHRoZSBsaWJyYXJ5Li4uLgoKMjAwNS0wMS0xOCAxNTo1NCAgYW5keQoKCSogU291cmNlL2NtWE1MUGFyc2VyLmN4eCwgVXRpbGl0aWVzL2NtZXhwYXQveG1scGFyc2UuYzogQ09NUDogVHJ5CgkgIHRvIHJlc29sdmUgY29tcGlsZSBlcnJvcnMgYmVjYXVzZSBvZiBtaXNzaW5nIGluY2x1ZGVzIGFuZCB3cm9uZwoJICBpbmNsdWRlIHBhdGgKCjIwMDUtMDEtMTggMTQ6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbVhNTFBhcnNlci5jeHg6IENPTVA6IFVzZSBjbU9TdHJpbmdTdHJlYW0gbm90CgkgIG9zdHJpbmdzdHJlYW0KCjIwMDUtMDEtMTggMTM6NDEgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbVhNTFBhcnNlci5jeHgsIGNtWE1MUGFyc2VyLmg6IEVOSDogQWRkCgkgIFhNTCBwYXJzZXIKCjIwMDUtMDEtMTggMTE6MTUgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IFNUWUxFOiBBZGRlZCBUT0RPCgkgIGNvbW1lbnQgZm9yIGFub3RoZXIgbWlzc2luZyBmZWF0dXJlIChleHRlcm5hbCBvYmplY3QgZmlsZXMpLgoKMjAwNS0wMS0xOCAwOTowNiAgYW5keQoKCSogVXRpbGl0aWVzL0RveHlnZW4vZG9jX21ha2VhbGwuc2guaW46IEVOSDogQ2xlYW51cAoKMjAwNS0wMS0xOCAwODo1OCAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIGNtYWtlX3VuaW5zdGFsbC5jbWFrZS5pbjogRU5IOiBBZGQgdW5pbnN0YWxsLgoJICBUaGlzIGlzIG5vdCByZWFsbHkgYSBmZWF0dXJlIGJ1dCBtb3JlIG9mIGFuIGV4YW1wbGUgb24gaG93IHRvIGRvCgkgIGl0LgoKMjAwNS0wMS0xOCAwNDoxNyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTE3IDE2OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogd2hlbiBjdGVzdCBpcyBsb29raW5nIGZvciBjbWFrZSBsb29rIGluCgkgIHRoZSBidWlsZCBkaXJlY3RvcnkgYXMgd2VsbCBhcyB3aGVyZSBjdGVzdCBpcyBzbyB0aGF0IHB1cmlmeSB3aWxsCgkgIHdvcmsKCjIwMDUtMDEtMTcgMTU6MjAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUNDb21waWxlci5jbWFrZS5pbiwgQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwKCSAgUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHOiBmaXggcnVubmluZyBvZiBjbCBpbiB0cnljb21waWxlcwoKMjAwNS0wMS0xNyAxNTowOSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEFkZGluZyBwYXJ0aWFsCgkgIGltcGxlbWVudGF0aW9uIG9mIHByb3ZpZGVzLXJlcXVpcmVzIG1vZGUuCgoyMDA1LTAxLTE3IDE1OjA5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IEZpeCBmb3IgcmVsYXRpdmUKCSAgcGF0aCBjb252ZXJzaW9uIHdoZW4gcGF0aCBpcyBhIHN1YnNldCBvZiByZWxhdGl2ZSBwYXRoIHJvb3QuCgoyMDA1LTAxLTE3IDE0OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6CgkgIEJVRzogbWFrZSBzdXJlIGhhbmRsZXMgYXJlIGFsd2F5cyBjbG9zZWQgZXZlbiBpZiBXYWl0IGlzIG5vdAoJICBjYWxsZWQuCgoyMDA1LTAxLTE3IDA0OjQxICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMTUgMDQ6NDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0xMyAxMjozOCAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBCVUc6IGZpeAoJICBmcm9tIG1haW4gdHJlZQoKMjAwNS0wMS0xMyAxMjoyNiAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBCVUc6IGZpeCBmb3IgQnVnICMxNDY2IGRlbGV0ZQoJICBjYWNoZSBsZWF2ZXMgZmlsZSBidXR0b24gYW5kIGNhbiBjcmFzaAoKMjAwNS0wMS0xMyAwMzo1OCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTEyIDEzOjU4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogbm93IGxpbWl0cyB3YXJuaW5ncwoJICBhbmQgZXJyb3IgcmVwb3J0IHRvIDUwIGVhY2gKCjIwMDUtMDEtMTIgMTM6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiBub3cgbGltaXRzIHdhcm5pbmdzCgkgIGFuZCBlcnJvciByZXBvcnQgdG8gNTAgZWFjaAoKMjAwNS0wMS0xMiAxMDoxMSAgbWlsbGVyanYKCgkqIFNvdXJjZS9rd3N5cy9CYXNlNjQuYzogQlVHOiBlbmNvZGluZyAyIGJ5dGVzIGludG8gNCBieXRlcyB3YXMKCSAgYWNjZXNzaW5nIGEgM3JkIGJ5dGUgZnJvbSB0aGUgc291cmNlCgoyMDA1LTAxLTEyIDA0OjQzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMTEgMDU6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0xMCAwNTowNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTA4IDA1OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDUtMDEtMDcgMTE6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0wNSAwNToxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTA0IDE4OjI0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQWRkZWQgaW5zdGFsbCB0YXJnZXQKCSAgaW1wbGVtZW50YXRpb24uICBBbHNvIGFkZGVkIG1pc3NpbmcgaW5jbHVkZSBvZiBhc3NlcnQuaC4KCjIwMDUtMDEtMDQgMTc6NDEgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCByZWxhdGl2ZSBwYXRoIHN1cHBvcnQKCSAgKG1vc3RseSBkb25lKS4gIE1hbnkgcGF0aHMgYXJlIHdyaXR0ZW4gcmVsYXRpdmUgZXZlbiBpZgoJICBDTUFLRV9VU0VfUkVMQVRJVkVfUEFUSFMgaXMgbm90IG9uIGp1c3QgdG8ga2VlcCBtYWtlZmlsZXMgc2hvcnQuCgoyMDA1LTAxLTA0IDE2OjI2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBFTkg6IE1hZGUKCSAgQ29uZmlndXJlT3V0cHV0UGF0aHMgdmlydHVhbCB0byBoZWxwIG5ldyBnZW5lcmF0b3IuCgoyMDA1LTAxLTA0IDE1OjM4ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtaWNsLmNtYWtlOiBhZGQgaW50ZWwKCSAgY29tcGlsZXIgY29uZmlnIGZpbGUKCjIwMDUtMDEtMDQgMTI6MTIgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBmaXggZm9yIGJ1ZyAxNDQ1CgoyMDA1LTAxLTA0IDEwOjU1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQgYQoJICBkZWxheSBtZXRob2QKCjIwMDUtMDEtMDQgMDk6NTYgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4OiBCVUc6IEFwcGxpZWQgcGF0Y2ggYXR0YWNoZWQKCSAgdG8gYnVnICMxNDUzLgoKMjAwNS0wMS0wNCAwODo0MiAgbWFydGluawoKCSogU291cmNlL2NtU2V0Q29tbWFuZC5jeHg6IEVOSDogZml4ZWQgU0VUIGNvbW1hbmQgdG8gYWNjZXB0IGNhY2hlCgkgIHZhbHVlcyB3aXRoIG1vcmUgdGhhbiBvbmUgdmFsdWUKCjIwMDUtMDEtMDQgMDQ6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNS0wMS0wMiAwNTowNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA1LTAxLTAxIDIxOjAyICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMzEgMDU6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0zMCAwNTowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTI5IDA1OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMjggMDU6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0yNyAwNToyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTI2IDA1OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMjUgMDU6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0yNCAwNToxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTIzIDA1OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMjIgMDU6MTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0yMSAwNToxNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTIwIDA1OjA5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMTkgMDU6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0xOCAwNToxMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTE3IDA1OjA2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMTYgMjI6MTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6IGZpeCB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzCgoyMDA0LTEyLTE2IDIyOjE4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlOiBmaXggbnVtYmVyIG9mIGFyZ3VtZW50cwoKMjAwNC0xMi0xNiAxNzoyNiAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9PcGVuQlNELmNtYWtlOiBFTkg6IGZpeCBmb3IgT3BlbkJTRAoKMjAwNC0xMi0xNiAwNTo1MiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTE1IDA1OjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMTQgMDU6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0xMyAwNTowMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTEyIDA1OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMTEgMDU6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0xMCAwNToxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTA5IDE2OjE0ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogRml4IHRvIGF2b2lkIHJlbGF0aXZlIHBhdGggd2l0aAoJICAuLnMgYWxsIHRoZSB3YXkgdG8gdGhlIHJvb3QuCgoyMDA0LTEyLTA5IDE1OjU2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IFN1cHBvcnQgZm9yIGN1c3RvbQoJICBjb21tYW5kIG91dHB1dHMgaW4gc3ViZGlyZWN0b3JpZXMgb2YgY3VycmVudCBidWlsZCB0cmVlIGxvY2F0aW9uLgoKMjAwNC0xMi0wOSAxNToyMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBBcHBlbmRBbnlEZXBlbmQKCSAgbXVzdCBoYW5kbGUgbm9uLWV4aXN0aW5nIGZpbGVzLgoKMjAwNC0xMi0wOSAxNToxMSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEFkZGVkIHBvc3QtYnVpbGQgcnVsZXMgdG8KCSAgZXhlY3V0YWJsZXMgYW5kIGxpYnJhcmllcy4gIEdlbmVyYWxpemVkIEFwcGVuZExpYkRlcGVuZCBtZXRob2QgdG8KCSAgQXBwZW5kQW55RGVwZW5kLiAgVGhpcyB0YWtlcyBtb3N0IG9mIHRoZSBmdW5jdGlvbmFsaXR5IG9mCgkgIEFwcGVuZEN1c3RvbURlcGVuZCB0b28sIGFuZCBnZW5lcmFsaXplZCBqdW1wLWFuZC1idWlsZCB0bwoJICBleGVjdXRhYmxlcy4KCjIwMDQtMTItMDkgMTM6NTIgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBJbXBsZW1lbnRlZCB1dGlsaXR5CgkgIHRhcmdldHMuICBUaGlzIGludm9sdmVkIHB1bGxpbmcgcGFydCBvZiB0aGUgY3VzdG9tIGNvbW1hbmQgcnVsZQoJICBpbXBsZW1lbnRhdGlvbiBvdXQgaW50byBzaGFyZWQgbWV0aG9kcy4KCjIwMDQtMTItMDkgMDU6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0wOCAwNTowNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTA3IDA1OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMDYgMTI6MzkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBUcnU2NC5jbWFrZSwgVHJ1ZTY0LmNtYWtlOiBGSVg6IGZpeCBmb3IgYnVnCgkgIDEzMjUsIFRydTY0IG5vdCBUcnVlNjQKCjIwMDQtMTItMDYgMTI6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBidWcgMTM5Niwgb2JqZWN0CgkgIGZpbGVzIGNvdWxkIG5vdCBiZSB1c2VkIGFzIHNvdXJjZXMgYW55IG1vcmUKCjIwMDQtMTItMDYgMTE6MTAgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eCwgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuaCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDQtMTItMDYgMDU6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMi0wNSAwNDoyMiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTA0IDA0OjM2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMDMgMDk6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBtaW5vciBmaXggZm9yIHdpbmRvd3MKCjIwMDQtMTItMDMgMDk6MDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBmaXggZm9yIHJlbGF0aXZlIHBhdGhzCgoyMDA0LTEyLTAzIDA2OjI3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTItMDIgMTM6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBmaXggZm9yIDEzNjkgYmVmb3JlIGluY2x1ZGUKCSAgZGlyZWN0b3JpZXMgbmVlZCB0byBiZSBhbHdheXMgYWRkZWQKCjIwMDQtMTItMDIgMTI6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IGZvciBidWcgMTM4NSwgL3RtcCBzaG91bGQKCSAgbm90IGJlIHVzZWQgb24gd2luZG93cwoKMjAwNC0xMi0wMiAwNjoxMyAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEyLTAxIDA3OjI4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX3NzdHJlYW0uaC5pbjogQ09NUDogTmVlZCB0byBjaG9vc2UgYmV0d2VlbgoJICA8bmV3PiBhbmQgPG5ldy5oPiBiYXNlZCBvbiB3aGV0aGVyIHN0YW5kYXJkIGhlYWRlcnMgYXJlCgkgIGF2YWlsYWJsZS4KCjIwMDQtMTItMDEgMDc6MjQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IGt3c3lzX2lvc19mc3RyZWFtLmguaW4sIGt3c3lzX2lvc19pb3N0cmVhbS5oLmluOgoJICBDT01QOiBEaXNhYmxpbmcgb2xkIHN0cmVhbXMgd2FybmluZ3Mgd2hlbiBpbmNsdWRpbmcgb2xkIGhlYWRlcnMKCSAgb24gTVNWQy4KCjIwMDQtMTItMDEgMDY6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0zMCAxODoyMCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzX2lvc19zc3RyZWFtLmguaW46IEJVRzogTmVlZCB0byBpbmNsdWRlIGhlYWRlcgoJICA8bmV3PiB0byB1c2UgcGxhY2VtZW50IG5ldyBzeW50YXguICBSZWFsbHkgdGhpcyBzaG91bGQgYmUgZml4ZWQKCSAgYnkgcmVwbGFjaW5nIHRoZSBzdHJlYW0gYnVmZmVyIHRvIHNldCBhIG5ldyBzdHJpbmcgaW5zdGVhZCBvZgoJICByZWNvbnN0cnVjdGluZyB0aGUgb2JqZWN0LCBidXQgdGhpcyB3aWxsIHJlcXVpcmUgcXVpdGUgYSBiaXQgb2YKCSAgd29yayB0byBkbyBwb3J0YWJseS4KCjIwMDQtMTEtMzAgMDY6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0yOSAwNjoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTI4IDA2OjE2ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMjcgMDY6MjggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0yNiAwNjoxNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTI1IDA2OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMjQgMDk6MjUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTdWJtaXQuY3h4LCBjbUNUZXN0U3VibWl0Lmg6IEVOSDogQWRkCgkgIHN1cHBvcnQgZm9yIHByb3h5IGF1dGhlbnRpY2F0aW9uICh0aGFua3MgSmVhbi1NaWNoZWwpCgoyMDA0LTExLTI0IDA1OjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMjMgMTc6MzQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IHRyeSBhbmQgZml4IGFpeCB4bEMgd2l0aCBnY2MKCjIwMDQtMTEtMjMgMTc6MjggIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IHRyeSBhbmQgZml4IGFpeCB4bEMgd2l0aCBnY2MKCjIwMDQtMTEtMjMgMTQ6MDcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQUlYLmNtYWtlOiBFTkg6IHRyeSB0byBmaXggYWl4IHdpdGggbmF0aXZlIGN4eAoJICBhbmQgZ2NjCgoyMDA0LTExLTIzIDEwOjQ4ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBFTkg6IE1ha2UgbW9yZSB0aGluZ3MgWE1MCgkgIHNhZmUKCjIwMDQtMTEtMjMgMDU6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0yMiAwNTo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTIxIDA1OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMjAgMDU6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0xOSAwOTo0MiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRU5IOiBNb3ZlZCBjdXN0b20KCSAgY29tbWFuZCBydWxlIGZpbGVzIGludG8gc3BlY2lhbCBDTWFrZUN1c3RvbUNvbW1hbmRzLmRpcgoJICBzdWJkaXJlY3RvcnkuCgoyMDA0LTExLTE5IDA5OjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogVW5pZmllZCBXcml0ZURlcGVuZFJ1bGVzLAoJICBXcml0ZUJ1aWxkUnVsZXMsIFdyaXRlQ2xlYW5SdWxlcywgYW5kIHRoZSBmdXR1cmUKCSAgV3JpdGVJbnN0YWxsUnVsZXMgaW50byBhIHNpbmdsZSBXcml0ZVBhc3NSdWxlcyBtZXRob2QuICBBbHNvCgkgIGFkZGVkIFdyaXRlVGFyZ2V0RGVwZW5kc1J1bGUgYW5kIFdyaXRlVGFyZ2V0Q2xlYW5SdWxlIG1ldGhvZHMgdG8KCSAgdW5pZnkgd3JpdGluZyBvZiBkZXBlbmQgYW5kIGNsZWFuIHJ1bGVzIGZvciBlYWNoIHRhcmdldC4KCjIwMDQtMTEtMTkgMDU6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0xOCAwODoyNSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTE3IDA4OjMzICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMTYgMDg6MTYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0xNSAwOTozOSAgbWFydGluawoKCSogU291cmNlL2N0ZXN0LmN4eDogQ09NUDogZml4IHdhcm5pbmcKCjIwMDQtMTEtMTUgMDg6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0xNCAwODoyMSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTEzIDA5OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY3Rlc3QuY3h4LCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaDogRU5IOiBhZGRlZCAtVSBvcHRpb24gdG8gdGFrZSB1bmlvbiBvZgoJICAtUiBhbmQgLUkKCjIwMDQtMTEtMTMgMDg6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0xMiAwNTozNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTExIDE3OjQwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdEJ1aWxkSGFuZGxlci5jeHg6IEVOSDogQW5vdGhlciBsaW5rZXIgZXJyb3IKCSAgb24gc3VuCgoyMDA0LTExLTExIDA1OjM0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMTAgMTU6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRklYOiBtYWtlIHN1cmUgdGhlCgkgIG9iamVjdCBmaWxlIG5hbWUgaXMgY29ycmVjdGx5IG1hbmdsZWQgZm9yIGRlcGVuZCBpbmZvcm1hdGlvbgoKMjAwNC0xMS0xMCAxMzoxNSAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQsIENUZXN0Q3VzdG9tLmN0ZXN0LmluOiBFTkg6IGFkZGVkIGN1c3RvbSBzdXBwIGZvcgoJICBjbWFrZQoKMjAwNC0xMS0xMCAxMDoyNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTA5IDA5OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMDggMDU6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMS0wNyAwNTo0NSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTA2IDA1OjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMDUgMTU6MDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCBwYXJ0aWFsIGNsZWFuIHRhcmdldAoJICBzdXBwb3J0LgoKMjAwNC0xMS0wNSAxNTowMyAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBNb3ZlZCBjb2RlIHRoYXQgY2hlY2tzCgkgIG91dHB1dCBwYXRoIHZhcmlhYmxlcyB0byBzZXBhcmF0ZSBDb25maWd1cmVPdXRwdXRQYXRocyBtZXRob2QuCgkgIE5lZWRlZCB0byBwcm92aWRlIGFjY2VzcyB0byB0aGUgc2FtZSBjb2RlIGZyb20gYSBzdWJjbGFzcy4KCjIwMDQtMTEtMDUgMDc6MzkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBJbXBsZW1lbnRlZCBWRVJCT1NFIG91dHB1dAoJICBzZXR0aW5nLgoKMjAwNC0xMS0wNSAwNTozOCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTA0IDA1OjM4ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTEtMDMgMTU6NDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogbWVyZ2VzIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwNC0xMS0wMyAxMTowMiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEdlbmVyYWxpemVkIGRyaXZlciB0YXJnZXRzCgkgIGFuZCBzdWJkaXJlY3RvcnkgdHJhdmVyc2FsIHJ1bGVzLiAgVGhlIGltcGxlbWVudGF0aW9ucyBvZiBhbGwsCgkgIGRlcGVuZCwgYnVpbGQsIGNsZWFuLCBpbnN0YWxsLCBldGMuIG5vdyBmb2xsb3cgYSBjb21tb24KCSAgZnJhbWV3b3JrLgoKMjAwNC0xMS0wMyAwODo1OSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IFJlbW92ZWQgdW5uZWVkZWQgcmVxdWlyZXMKCSAgcnVsZXMgbm93IHRoYXQgY2Fub25pY2FsIG5hbWVzIGFyZSBhdmFpbGFibGUuCgoyMDA0LTExLTAzIDA4OjQ2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQWRkZWQgY29udmVuaWVuY2UgcnVsZXMgdG8KCSAgYnVpbGQgdGFyZ2V0cyB3aXRob3V0IHNwZWNpZnlpbmcgZnVsbCBwYXRocy4KCjIwMDQtMTEtMDMgMDc6NTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5jeHgsIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHg6IFNUWUxFOiBBZGp1c3RlZCBzaWduYXR1cmUgb2YKCSAgY21HZW5lcmF0ZWRGaWxlU3RyZWFtIHRvIG1ha2UgY29weS1pZi1kaWZmZXJlbnQgbW9yZSBleHBsaWNpdHkuCgoyMDA0LTExLTAzIDA3OjI3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uaDogQ09NUDogRml4IG5ldwoJICBjbUdlbmVyYXRlZEZpbGVTdHJlYW0gZm9yIE1TVkMuCgoyMDA0LTExLTAzIDA3OjIzICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsCgkgIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uY3h4LCBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4OiBFTkg6IFJlLWltcGxlbWVudGVkCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbSB0byBsb29rIGxpa2UgYSByZWFsIHN0cmVhbSBhbmQgcmVwbGFjZSB0aGUKCSAgZGVzdGluYXRpb24gZmlsZSBhdG9taWNhbGx5LglUaGlzIHdpbGwgYXZvaWQgcHJvYmxlbXMgd2l0aCB0aGUKCSAgcHJvY2VzcyBiZWluZyB0ZXJtaW5hdGVkIHdoaWxlIGdlbmVyYXRpbmcgYSBmaWxlLgoKMjAwNC0xMS0wMyAwNTozNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTAyIDE4OjA5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBFTkg6IEFkZGVkIHBhcnRpYWwgUkMKCSAgbGFuZ3VhZ2UgZGVwZW5kZW5jeSBzY2FubmluZyAoanVzdCB1c2luZyBDIGRlcGVuZGVuY2llcyBmb3Igbm93KS4KCjIwMDQtMTEtMDIgMTc6MzggIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCBkZXBlbmRlbmNpZXMgYmV0d2VlbgoJICBsaWJyYXJpZXMuCgoyMDA0LTExLTAyIDE3OjE5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBCVUc6IFJlbW92ZWQgZGVidWdnaW5nCgkgIG91dHB1dC4KCjIwMDQtMTEtMDIgMTc6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBJbXBsZW1lbnRlZCBnZW5lcmF0aW9uIG9mCgkgIGN1c3RvbSBjb21tYW5kIHJ1bGUgZmlsZXMuCgoyMDA0LTExLTAyIDE3OjExICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBDT01QOiBSZW1vdmUgY29tcGlsZSB3YXJuaW5nCgoyMDA0LTExLTAyIDA4OjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEJVRzogRml4ZWQgc3ViZGlyZWN0b3J5CgkgIGltcGxlbWVudGF0aW9uIGZvciBCb3JsYW5kIE1ha2UuCgoyMDA0LTExLTAyIDA3OjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogSW1wbGVtZW50ZWQgc3ViZGlyZWN0b3J5CgkgIHJ1bGVzIGZvciBhbGwgdGFyZ2V0LgoKMjAwNC0xMS0wMiAwNDo0OSAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTExLTAxIDE2OjU3ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBUZXN0cy9EZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9EZXBlbmRlbmN5LzEvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0RlcGVuZGVuY3kvMS9PbmVTcmMuYzoKCSAgQlVHOiBhZGQgYSB0ZXN0IGZvciBhIHNpbmdsZSBjaGFyIGRpciwgYW5kIGZpeCBidWcgaW50cm9kdWNlZCBpbgoJICAxLjUzLCBidXQgd2Ugc3RpbGwgY2FuIG5vdCBoYW5kbGUgYSBzcGFjZSBhcyB0aGUgc3RhcnQgb2YgYQoJICBkaXJlY3RvcnkgbmFtZQoKMjAwNC0xMS0wMSAwNDozNCAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEwLTMxIDAzOjQwICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTAtMzAgMDQ6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMC0yOSAxODoxNSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEFkZGVkIGZyYW1ld29yayBmb3IKCSAgc3ViZGlyZWN0b3J5IHRyYXZlcnNhbC4KCjIwMDQtMTAtMjkgMTc6MTggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEJVRzogRGVwZW5kZW5jeQoJICBtYWtlZmlsZSBsaW5lcyBtdXN0IGJlIGF0IGxlYXN0IHRocmVlIGNoYXJhY3RlcnMgbG9uZyB0byBob2xkIGEKCSAgZGVwZW5kZW5jeS4KCjIwMDQtMTAtMjkgMTY6NTAgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaCwgY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZGVkCgkgIGJ1aWxkIHN5c3RlbSBpbnRlZ3JpdHkgY2hlY2sgdG8gY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuCgkgIFRoaXMgbm93IHVzZXMgYSBzcGVjaWFsIC0tY2hlY2stYnVpbGQtc3lzdGVtIGZsYWcgdG8gY21ha2Ugd2hpY2gKCSAgcmVwbGFjZXMgLS1jaGVjay1yZXJ1bi4gIEludGVncml0eSBvZiBkZXBlbmRlbmNpZXMgaXMgYWxzbwoJICBjaGVja2VkIGR1cmluZyBnZW5lcmF0aW9uLgoKMjAwNC0xMC0yOSAxNTozMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBGSVg6IGZpeCBzaGFyZWQgZmxhZwoKMjAwNC0xMC0yOSAxNTozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSBkZWJ1ZyBwcmludAoKMjAwNC0xMC0yOSAxNDo1NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBGaXhlcyBmb3IgQm9ybGFuZAoJICBNYWtlLgoKMjAwNC0xMC0yOSAxMzo1NSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQlVHOiBGaXhlcyBmb3IgTk1ha2UuCgoyMDA0LTEwLTI5IDEzOjA0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQ2hhbmdlZCBBcHBlbmRSZWN1cnNpdmVNYWtlCgkgIHRvIEdldFJlY3Vyc2l2ZU1ha2VDYWxsIGFuZCBpbXBsZW1lbnRlZCBqdW1wLWFuZC1idWlsZCBvbiBXaW5kb3dzCgkgIGFuZCBVTklYLgoKMjAwNC0xMC0yOSAxMTo0MiAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsCgkgIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluLAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQS5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0EuY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9Mb2FkZWRDb21tYW5kLmN4eCwKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvTG9hZGVkQ29tbWFuZC5jeHgsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IG1vdmUgMi4wLjUgdG8gTGF0ZXN0UmVsZWFzZQoKMjAwNC0xMC0yOSAxMDo1MiAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IENsZWFuZWQgdXAgZm9ybWF0IG9mCgkgIGdlbmVyYXRlZCBtYWtlZmlsZXMuCUNvbnNvbGlkYXRlZCBydWxlIGdlbmVyYXRpb24gaW50byBzaW5nbGUKCSAgV3JpdGVNYWtlUnVsZSBtZXRob2QuICBBZGRlZCBzcGVjaWFsIHRhcmdldHMgbGlrZSByZWJ1aWxkX2NhY2hlCgkgIGFuZCBlZGl0X2NhY2hlLgoKMjAwNC0xMC0yOSAwNDozNiAgYW5keQoKCSogU291cmNlL2NtVmVyc2lvbi5jeHg6IFNUWUxFOiBOaWdodGx5IFZlcnNpb24gdXBkYXRlCgoyMDA0LTEwLTI4IDE1OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IEVOSDogYWRkIGEgY2hlY2sgZm9yIGVtcHR5CgkgIGluY2x1ZGUgZGlyZWN0b3JpZXMKCjIwMDQtMTAtMjggMTU6MzEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBDcmVhdGUKCSAgQ01ha2UyLjAuNSB2ZXJzaW9uCgoyMDA0LTEwLTI4IDA3OjQ2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4OiBDT01QOiBGaXggbG9jYWwgc2hhZG93CgkgIHdhcm5pbmdzLgoKMjAwNC0xMC0yOCAwNzo0MyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogQ09NUDogRml4IGZvciBNYWMKCSAgc3BlY2lmaWMgY29kZS4KCjIwMDQtMTAtMjggMDQ6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMC0yNyAxNjowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGxvb2sgaW4gdGhlIHdpbmRvd3MgTElCIGVudiB2YXJpYWJsZQoJICBmb3IgbGlicmFyaWVzCgoyMDA0LTEwLTI3IDE2OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IERPQzogZG9jdW1lbnRhdGlvbiBjaGFuZ2UKCjIwMDQtMTAtMjcgMTU6NTggIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLAoJICBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogbWVyZ2UgZnJvbSBtYWluCgkgIHRyZWUgYnVnIGZpeGVzCgoyMDA0LTEwLTI3IDEyOjA1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogRG8gbm90IHRyeSB0byBoYW5kbGUKCSAgdW5pbXBsZW1lbnRlZCB0YXJnZXQgdHlwZXMgeWV0LiAgRml4ZXMgZm9yIHByb2plY3RzIHdpdGgKCSAgc3ViZGlyZWN0b3JpZXMuCgoyMDA0LTEwLTI3IDExOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21ha2VtYWluLmN4eDogQlVHOiBJZiBib290c3RyYXAgY21ha2UgaXMgcnVuIHdpdGggbm8KCSAgYXJndW1lbnQgcHJvZHVjZSBlcnJvcgoKMjAwNC0xMC0yNyAxMDo1MyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBwdXQgZXJyb3IgY2hlY2tpbmcgZm9yCgkgIG1pc3NpbmcgbGlua2VyIGxhbmd1YWdlcwoKMjAwNC0xMC0yNyAxMDo0NyAgYW5keQoKCSogYm9vdHN0cmFwLCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtYWtlLmN4eCwgU291cmNlL2NtYWtlLmgsCgkgIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBQRVJGOiBSZW1vdmUgc2V2ZXJhbCBjbGFzc2VzIGZyb20gdGhlCgkgIGJvb3RzdHJhcCBhbmQgc28gbWFraW5nIGJvb3RzdHJhcCBzbWFsbGVyIGFuZCBmYXN0ZXIKCjIwMDQtMTAtMjcgMTA6NDUgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eDogU1RZTEU6IFJlbW92ZSB1bnVzZWQgY29kZQoKMjAwNC0xMC0yNyAxMDo0NSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IEFkZGVkIGV4ZWN1dGFibGUKCSAgZGVwZW5kZW5jaWVzIG9uIGxpYnJhcmllcyBpbmNsdWRpbmcganVtcC1hbmQtYnVpbGQgc3VwcG9ydC4KCjIwMDQtMTAtMjcgMTA6NDUgIGFuZHkKCgkqIE1vZHVsZXMvVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlOiBCVUc6IENoZWNrIGZvciB0aGUgdmFyaWFibGUKCSAgZmlyc3QgdGltZQoKMjAwNC0xMC0yNyAwODo0OSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEFkZCBhIHNwYWNlIGJlZm9yZQoJICB0aGUgOiBvbmx5IGlmIHRoZSB0YXJnZXQgbmFtZSBpcyBvbmUgbGV0dGVyIGxvbmcuICBUaGlzIHdvcmtzCgkgIGFyb3VuZCBidWdzIGluIHNvbWUgc2hlbGxzJyB0YWIgY29tcGxldGlvbiBvZiB0YXJnZXQgbmFtZXMuCgoyMDA0LTEwLTI3IDA4OjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQWRkZWQgZ2VuZXJhdGlvbiBvZiBydWxlcwoJICBmb3Igc2hhcmVkIGxpYnJhcmllcyBhbmQgbW9kdWxlcy4KCjIwMDQtMTAtMjcgMDg6MjAgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCBydWxlcyB0byBidWlsZAoJICBleGVjdXRhYmxlcy4JQWxzbyBiZWdhbiB0byBjb25zb2xpZGF0ZSBmbGFnIGxpc3QgY29uc3RydWN0aW9uCgkgIGludG8gc2VwYXJhdGUgbWV0aG9kcy4KCjIwMDQtMTAtMjcgMDQ6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMC0yNiAyMDoxMyAgYW5keQoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQlVHOiBIYW5kbGUgRE9TIGZpbGVzIHVuIHVuaXggZmlsZQoJICBzeXN0ZW1zCgoyMDA0LTEwLTI2IDE3OjIzICBhbmR5CgoJKiBNb2R1bGVzL1Rlc3RDWFhBY2NlcHRzRmxhZy5jbWFrZTogQlVHOiBPbmx5IHRlc3QgZm9yIGN4eCBmbGFncwoJICB0aGUgZmlyc3QgdGltZSBhcm91bmQKCjIwMDQtMTAtMjYgMTY6MDcgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHg6IEVOSDogRG8gbm90IGdlbmVyYXRlCgkgIHRvdWNoIHJ1bGUgZm9yIHRhcmdldCBsZXZlbCBkZXBlbmRlbmNpZXMuICBUaGVyZSBhcmUgbm8KCSAgYnVpbGQtdGltZSBkZXBlbmRlbmNpZXMgYnkgZGVmYXVsdC4KCjIwMDQtMTAtMjYgMTU6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IG1vdmUgc3R1ZmYKCSAgZnJvbSBtYWluIHRyZWUgdG8gYnJhbmNoCgoyMDA0LTEwLTI2IDE0OjQ5ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmg6IEVOSDogQWRkZWQgZ2VuZXJhdGlvbiBvZiBydWxlIHRvCgkgIGJ1aWxkIG9iamVjdCBmaWxlLgoKMjAwNC0xMC0yNiAxNDozMyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBoYW5kbGUgcmVhZCBvbmx5IGRpcmVjdG9yaWVzCgkgIHdpdGggY29uZmlndXJlIGZpbGUgZGVzdGluYXRpb24KCjIwMDQtMTAtMjYgMTQ6MTIgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0xMC0yNiAxMzowMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRVJSOiBNaXNzaW5nIHN0ZDo6IG9uCgkgIGVuZGwuCgoyMDA0LTEwLTI2IDEyOjU1ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZGVkIG9iamVjdCBmaWxlIGRlcGVuZGVuY3kgc2Nhbm5pbmcgdG8KCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuICBUaGlzIG5lZWRzIGEgaG9vayBpbiBjbWFrZS5jeHguCgoyMDA0LTEwLTI2IDEyOjU0ICBraW5nCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMiB0byBidWlsZC4KCjIwMDQtMTAtMjYgMTI6NTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuaDogRU5IOiBBZGRlZCBvYmplY3QgZmlsZQoJICBkZXBlbmRlbmN5IHNjYW5uaW5nLgoKMjAwNC0xMC0yNiAxMDoyNCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IEhhbmRsZSBtb3JlIFJFTUFSS1Mgb24KCSAgU0dJCgoyMDA0LTEwLTI2IDEwOjE1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IFNwbGl0CgkgIHBhcnQgb2YgR2V0SW5jbHVkZUZsYWdzIG1ldGhvZCBpbnRvIHNlcGFyYXRlCgkgIEdldEluY2x1ZGVEaXJlY3RvcmllcyBtZXRob2QuCgoyMDA0LTEwLTI2IDA4OjQ1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBDT01QOiBBdHRlbXB0IHRvIGZpeCB3YXJuaW5ncyBvbgoJICBTR0kKCjIwMDQtMTAtMjYgMDQ6NDAgIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMC0yNSAxNjozOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmg6IEVOSDogYWRkIHNvbWUgbW9yZSBjb21tZW50cwoKMjAwNC0xMC0yNSAxNTowOCAgaG9mZm1hbgoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsIExvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuaC5pbiwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmguaW46IEVOSDogY2xlYW4gdXAgbG9hZGVkCgkgIGNvbW1hbmQgdGVzdCBzbyB5b3UgY2FuIHRlbGwgd2hhdCByZWFsbHkgZmFpbGVkCgoyMDA0LTEwLTI1IDEzOjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IENPTVA6IHJlbW92ZSBhbiB1bnVzZWQgdmFyaWFibGUgd2FybmluZwoKMjAwNC0xMC0yNSAxMzoyNCAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0xvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4OiBFTkg6IG1vdmUgc3R1ZmYKCSAgZnJvbSBtYWluIHRyZWUgdG8gZml4IHRoZSBydW5zaW5nbGUgcHJvZ3JhbSBtZXNzCgoyMDA0LTEwLTI1IDEzOjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBGSVg6IGdvIGJhY2sKCSAgdG8gbm90IHRyeWluZyB0byBoYW5kbGUgc3BhY2VzIGluIHRoZSBwYXRoIGZvciBydW4gc2luZ2xlIGNvbW1hbmQKCSAgYW5kIGNvbW1lbnQgaXQgc28gdGhhdCBwZW9wbGUga25vdyB0byBjYWxsIHRoZSByaWdodCB0aGluZwoKMjAwNC0xMC0yNSAxMjoyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IENPTVA6IHJlbW92ZSB3YXJuaW5ncwoKMjAwNC0xMC0yNSAxMjoxNSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBhZGQgdGVzdCBiYWNrCgkgIGZvciBzaW5nbGUgY2hhciBleGUKCjIwMDQtMTAtMjUgMTE6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgVGVzdHMvTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0xvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4OiBGSVg6IGZpeAoJICBSdW5TaW5nbGVDb21tYW5kIHRvIHdvcmsgd2l0aCBzcGFjZXMgaW4gdGhlIHBhdGgsIGFuZCB3aXRoIGFuCgkgIGFscmVhZHkgcXVvdGVkIGNvbW1hbmQKCjIwMDQtMTAtMjUgMTA6MDQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBbGxvdyBkaXNhYmxpbmcgb2YgbG9uZyBydW5uaW5nIHRlc3RzCgoyMDA0LTEwLTI1IDA0OjM0ICBhbmR5CgoJKiBTb3VyY2UvY21WZXJzaW9uLmN4eDogU1RZTEU6IE5pZ2h0bHkgVmVyc2lvbiB1cGRhdGUKCjIwMDQtMTAtMjQgMTE6MzggIGFuZHkKCgkqIFNvdXJjZS9jbVZlcnNpb24uY3h4OiBTVFlMRTogTmlnaHRseSBWZXJzaW9uIHVwZGF0ZQoKMjAwNC0xMC0yMiAyMTo1MiAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogcmVtb3ZlIHJ1biBwcm9ncmFtCgkgIHRlc3QgdW50aWwgcnVuIHNpbmdsZSBjb21tYW5kIGlzIGZpeGVkCgoyMDA0LTEwLTIyIDIxOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IHVuZG8gbGFzdCBjaGVjayBpbiBhcyBpdCBicmVha3MgYm9ybGFuZAoJICB3aXRoIHNwYWNlcyBzb21lIGhvdwoKMjAwNC0xMC0yMiAxNzo1MSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtQ1Rlc3QuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0EuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0EuY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9BLmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogZml4ZXMgZnJvbQoJICBtYWluIHRyZWUKCjIwMDQtMTAtMjIgMTc6MDUgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0EuY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQS5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQS5jeHg6IEVOSDogYWRkIG1pc3NpbmcgZmlsZQoKMjAwNC0xMC0yMiAxNzowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRklYOiBmaXggdGhlCgkgIHByb2JsZW0gd2hlcmUgYSB0YXJnZXQgaXMgYSBzaW5nbGUgY2hhcmFjdGVyIGFuZCBubWFrZSBnZXRzCgkgIGNvbmZ1c2VkIGFuZCBhZGQgYSB0ZXN0IGZvciBpdAoKMjAwNC0xMC0yMiAxNjo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQ09NUDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA0LTEwLTIyIDE1OjQ1ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IENPTVA6IFJlbW92ZSB1bm5lY2Vzc2FyeSBjb21taXQKCjIwMDQtMTAtMjIgMTU6NDQgIGFuZHkKCgkqIGJvb3RzdHJhcCwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4LCBTb3VyY2UvY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsCgkgIFNvdXJjZS9jbVZlcnNpb24uY3h4LCBTb3VyY2UvY21WZXJzaW9uLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9DVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHg6IEVOSDogQWRkIGRldmVsb3BtZW50CgkgIHZlcnNpb24gc3VwcG9ydCBpbiBDTWFrZQoKMjAwNC0xMC0yMiAxMDoxOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IENPTVA6IHJlbW92ZSB3YXJuaW5nCgoyMDA0LTEwLTIxIDE3OjI5ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsOiBhZGQgLjAuNQoKMjAwNC0xMC0yMSAxNzoxMSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbDogYWRkIC4wLjUKCjIwMDQtMTAtMjEgMTY6MDcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBCVUc6IEZpeCByZXBvcnRpbmcgb2YgcGF0aAoJICBhbmQgZnVsbCBjb21tYW5kIHdoZW4gdGVzdCBwcm9ncmFtIHdhcyBub3QgZm91bmQKCjIwMDQtMTAtMjEgMTU6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHg6IENPTVA6IGZpeCB3YXJuaW5ncwoKMjAwNC0xMC0yMSAxNDo1NSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBDT01QOiBmaXggd2FybmluZwoKMjAwNC0xMC0yMSAxNDozNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWc3Ny5jbWFrZSwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oOiBFTkg6IGFkZCB0aGUgYWJpbGl0eSB0byBnZW5lcmF0ZSBjdXN0b20KCSAgY29tbWFuZHMgZm9yIGEgbGFuZ3VhZ2UgdGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFuIElERQoKMjAwNC0xMC0yMSAxMzozNCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBCVUc6IEhhbmRsZSByZW1hcmtzIG9uIFNHSQoJICBwcm9wZXJseQoKMjAwNC0xMC0yMSAxMTo1OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmg6IEVOSDogYmV0dGVyIHN1cHBvcnQgZm9yIGtkZXZlbG9wMwoKMjAwNC0xMC0yMCAxMjozNyAgYW5keQoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eDogQ09NUDogUmVtb3ZlIHdhcm5pbmcKCjIwMDQtMTAtMjAgMDg6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogZml4IHdhcm5pbmcgb24gTFJCCgoyMDA0LTEwLTIwIDA4OjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IENPTVA6IHJlbW92ZSB3YXJuaW5nCgoyMDA0LTEwLTE5IDE1OjA5ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DTWFrZVRlc3RGb3JGcmVlVkMuY3h4LAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFNvdXJjZS9jbUNUZXN0LmgsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4LCBTb3VyY2UvY21HbG9iLmN4eCwgU291cmNlL2NtR2xvYi5oLAoJICBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmMsIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuaCwKCSAgU291cmNlL2NtTGlzdEZpbGVMZXhlci5pbi5sLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5oLCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9QYXRoRGlhbG9nLmNwcCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2gsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19JUklYNjQ6IEVOSDogbW92ZSAyLjAuNCB0byBMUkIKCjIwMDQtMTAtMTkgMTQ6NTcgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWw6IHVwZGF0ZSBjaGFuZ2UgbG9nCgoyMDA0LTEwLTE5IDE0OjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IG1lcmdlIGZyb20gbWFpbiB0cmVlLCBhZGQgbW9yZSB3YXJuaW5nIGNhc2VzCgkgIHRvIGN0ZXN0CgoyMDA0LTEwLTE5IDE0OjUxICBob2ZmbWFuCgoJKiBib290c3RyYXA6IEVOSDogcGVyZmVyIGdtYWtlIGZvciBib290c3RyYXAKCjIwMDQtMTAtMTkgMTM6MjUgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluOiBFTkg6IERpc3BsYXkgdmVyc2lvbiBvZiBjdGVzdAoJICBmaXJzdAoKMjAwNC0xMC0xOSAxMzoyNSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4OiBFTkg6IEFkZCByZWd1bGFyIGV4cHJlc3Npb24KCSAgZm9yIHJlbWFya3Mgb24gSVJJWAoKMjAwNC0xMC0xOSAxMzowMiAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGlmIHRoZSBwYXRocyBzaGFyZSBub3RoaW5nIHRoZW4KCSAganVzdCByZXR1cm4gdGhlIHJlbW90ZSBwYXRoIHdpdGggbm8gLi4KCjIwMDQtMTAtMTkgMTI6NDggIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBSZW1vdmUgaW5zdGFuY2VzIG9mIC8vIGluIHRoZSBvdXRwdXQKCjIwMDQtMTAtMTkgMTI6MzggIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRUhOOiBFdmVuIG1vcmUgY2xlYW51cAoKMjAwNC0xMC0xOSAxMDo1OSAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9DVGVzdFRlc3QvdGVzdC5jbWFrZS5pbjogRVJSOiBGaXgKCSAgcHJvYmxlbXMgb24gd2luZG93cwoKMjAwNC0xMC0xOCAxODoxMSAgd2lsbAoKCSogYm9vdHN0cmFwOiBDT01QOiBGaXggb24gc3VuCgoyMDA0LTEwLTE4IDE3OjI0ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogUmVtb3ZlIGJvZ3VzIGNsZWFuIHN0ZXAKCjIwMDQtMTAtMTggMTU6MzcgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBPaywgdGhpcyBzaG91bGQgbWFrZSB0aGUgdGVzdAoJICBhY3R1YWxseSBkbyBzb21ldGhpbmcKCjIwMDQtMTAtMTggMTU6MDUgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBEbyBib290c3RyYXAgdGVzdCBvbiBhbGwgdW5peCBzeXN0ZW1zCgoyMDA0LTEwLTE4IDEzOjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogYmV0dGVyIGNvbW1lbnRzIGFuZCB2YXJpYWJsZSBuYW1lcwoKMjAwNC0xMC0xOCAxMjozMyAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBib290c3RyYXAgdGVzdAoKMjAwNC0xMC0xOCAxMTo0OCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IG1ha2Ugc3VyZSBvdXRwdXQKCSAgcGF0aCBpcyB1c2VkIGZvciB0YXJnZXQgd2l0aCBjYW5vbmljYWwgbmFtZQoKMjAwNC0xMC0xOCAxMTozNCAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEFkZCBjaGVjayBmb3IgcHJldmlvdXMgYm9vdHN0cmFwIGluIHRoZSBzb3VyY2UKCSAgdHJlZSB3aGVuIGRvaW5nIG91dC1vZi1zb3VyY2UgYnVpbGQKCjIwMDQtMTAtMTcgMjI6NDcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IEJVRzogRml4IG91dHB1dCB0byBtYXRjaCB0aGUgRGFydAoJICBvdXRwdXQKCjIwMDQtMTAtMTcgMjI6NDcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4OiBFTkg6IENsZWFudXBzIGFuZCB1bmlmeQoJICBvdXRwdXQKCjIwMDQtMTAtMTcgMjI6NDYgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBTcGVjaWZ5IGZ1bGwgcGF0aCB0byB0aGUKCSAgZXhlY3V0YWJsZQoKMjAwNC0xMC0xNyAyMjo0NiAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRU5IOiBBZGQgbWV0aG9kIHRvIGdldCB0aGUKCSAgcmVsYXRpdmUgcGF0aCB0byBzb3VyY2Ugb3IgYnVpbGQKCjIwMDQtMTAtMTcgMTk6NDUgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4LAoJICBjbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmg6IEVOSDogVXBkYXRlIHRvIHRoZSBuZXcgY292ZXJhZ2UgY29kZS4KCSAgSXQgbWF5IG5vdCBiZSBwZXJmZWN0IHlldCwgYnV0IGl0IGlzIGEgc3RhcnQKCjIwMDQtMTAtMTcgMTk6MDIgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluOiBFTkg6IFByb3BhZ2F0ZSBtb3JlIHRoaW5ncwoKMjAwNC0xMC0xNyAxODo1MCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkCgkgIG1ldGhvZCB0byBmaW5kIGZpbGUgaW4gcGFyZW50IGRpcmVjdG9yaWVzIGlmIGl0IGV4aXN0cwoKMjAwNC0xMC0xNyAxODo1MCAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW46IEVOSDogUHJvcGFnYXRlIE1FTU9SWUNIRUNLX0NPTU1BTkQKCSAgYW5kIENPVkVSQUdFX0NPTU1BTkQgdG8gdGhlIENUZXN0IHRlc3QKCjIwMDQtMTAtMTcgMTg6NDkgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogSGFuZGxlIGNvdmVyYWdlIGVycm9ycwoKMjAwNC0xMC0xNSAwOToyNCAga2luZwoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZGVkIC0tY2hlY2stcmVydW4gb3B0aW9uIHRvCgkgIGFsbG93IGEgcnVudGltZSBjaGVjayBvZiB3aGV0aGVyIGEgbmV3IGdlbmVyYXRlIHNob3VsZCByZWFsbHkgYmUKCSAgZG9uZS4KCjIwMDQtMTAtMTUgMDk6MjMgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkZWQKCSAgRmlsZVRpbWVDb21wYXJlIG1ldGhvZCB0byBjb21wYXJlIGZpbGUgbW9kaWZpY2F0aW9uIHRpbWVzLgoJICBDdXJyZW50bHkgdGhlIHJlc29sdXRpb24gaXMgbGltaXRlZCB0byBvbmUgc2Vjb25kLgoKMjAwNC0xMC0xNSAwODo1NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyLmN4eDogRU5IOiBBZGRlZCBnZW5lcmF0aW9uCgkgIG9mIHJ1bGUgdG8gYnVpbGQgb2JqZWN0IGZpbGUuCgoyMDA0LTEwLTE0IDE2OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogbWFrZSBzdXJlIGFsbCByZXR1cm5zIGZvcgoJICBDb252ZXJ0VG9SZWxhdGl2ZU91dHB1dFBhdGggZ2V0IHBhc3NlZCBieSBDb252ZXJ0VG9PdXRwdXRQYXRoCgoyMDA0LTEwLTE0IDE1OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogbm93IHRoYXQgc3lzdGVtIHRvb2xzIHJlbGF0aXZlCgkgIHBhdGggd29ya3MsIGNsZWFuIHVwIHRoZSBjb252ZXJ0IHRvIHJlbGF0aXZlIG91dHB1dCBwYXRoIGNvZGUKCjIwMDQtMTAtMTQgMTE6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4OiBDT01QOiByZW1vdmUgd2FybmluZwoKMjAwNC0xMC0xNCAxMTo0NiAgaG9mZm1hbgoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogQlVHOiBhbGxvdyBzcGxpdAoJICBzdHJpbmcgdG8ga25vdyBpZiBpdCBpcyBzZXBhcmF0aW5nIGEgcGF0aAoKMjAwNC0xMC0xMyAxMTozNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogQlVHOiBmaXggYW5kIGNvbW1lbnQKCSAgcmVsYXRpdmUgcGF0aCBmdW5jaXRvbgoKMjAwNC0xMC0xMiAxODoyOSAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBFTkg6IElmIGRhcnQgb3IgY3Rlc3QgYXJlIG5vdCBmb3VuZCwgdXNlCgkgIGN0ZXN0LiBGb3IgZGVmYXVsdCBkcm9wIGxvY2F0aW9uIGV0Yywgc3VwcG9ydCBodHRwIHN1Ym1pdCAoanVzdAoJICBzZXQgRFJPUF9NRVRIT0QgdG8gaHR0cC4gT25seSBsb29rIGZvciB0Y2xzaCBpZiBEQVJUX1JPT1QgaXMgc2V0CgoyMDA0LTEwLTEyIDEwOjU3ICBob2ZmbWFuCgoJKiBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogYWxsb3cga2RldmVsb3AgZm9yIGN5Z3dpbgoKMjAwNC0xMC0xMiAxMDoyMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxLZGV2ZWxvcEdlbmVyYXRvci5jeHg6IEJVRzogcmVtb3ZlIGJhZCBoZWFkZXJzCgoyMDA0LTEwLTEyIDA5OjUwICBob2ZmbWFuCgoJKiBib290c3RyYXAsIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogZG8gbm90IGJ1aWxkIGtkZXZsb3Agc3R1ZmYgd2hlbgoJICBib290c3RyYXBwaW5nCgoyMDA0LTEwLTExIDE2OjM1ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eDogRU5IOiBTdXBwb3J0IG5vdCB3cml0aW5nCgkgIGZpbGVzIHRvIHRoZSBzb3VyY2UgdHJlZS4gR2VuZXJhdGUgc2luZ2xlIHByb2plY3QgZmlsZSBmb3Igd2hvbGUKCSAgcHJvamVjdCwgc29tZSBvdGhlciBsaXR0bGUgY2xlYW51cHMKCjIwMDQtMTAtMTEgMTU6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeCBnZW5lcmF0ZWQgWE1MCgoyMDA0LTEwLTExIDE0OjQ3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IFNUWUxFOiBSZW1vdmUgYW5veWluZyBtZXNzYWdlCgoyMDA0LTEwLTExIDEzOjU3ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogT24gV2luZG93cywgcmVtb3ZlIGV4dHJhIENSIGNoYXJhY3RlcnMuCgkgIEhvcGVmdWxseSB0aGlzIHdpbGwgcmVzdWx0IGluIG5vdCBkdXBsaWNhdGVkIG5ldy1saW5lcwoKMjAwNC0xMC0xMSAxMTo1NyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggc3BsaXQgcHJvZ3JhbSBmcm9tIGFyZ3MgdG8KCSAgbm90IGdldCBzdHVjayBpbiBhbiBpbmZpbml0ZSBsb29wIGluIHNvbWUgY2FzZXMKCjIwMDQtMTAtMTEgMTE6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6IEVOSDogbWFrZSBzdXJlIHRoZSBjKysKCSAgY29tcGlsZXIgaXMgYSBjKysgY29tcGlsZXIKCjIwMDQtMTAtMTEgMTE6NDcgIGhvZmZtYW4KCgkqIGJvb3RzdHJhcDogRU5IOiBhZGQga2RldiB0byBib290c3RyYXAKCjIwMDQtMTAtMTEgMTE6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUdsb2JhbEtkZXZlbG9wR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxLZGV2ZWxvcEdlbmVyYXRvci5oLCBjbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsS2RldmVsb3BHZW5lcmF0b3IuaCwgY21ha2UuY3h4OiBORVc6IGFkZCBrZGV2ZWxvcCBwYXRjaAoJICBmcm9tIEFsZXhhbmRlciBOZXVuZG9yZgoKMjAwNC0xMC0xMSAwODowMiAga2luZwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVSUjogUmVwbGFjZWQKCSAgc3RkOjpzdHJpbmcgd2l0aCBrd3N5c19zdGw6OnN0cmluZyBmb3IgcG9ydGFiaWxpdHkuCgoyMDA0LTEwLTEwIDEyOjE0ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQKCSAgbWV0aG9kIHRvIHJldHJpZXZlIHBhcmVudCBkaXJlY3RvcnkgYW5kIGZvciBjaGVja2luZyBpZiBkaXJlY3RvcnkKCSAgaXMgYSBzdWJkaXJlY3Rvcnkgb2YgYW5vdGhlciBkaXJlY3RvcnkKCjIwMDQtMTAtMDYgMTI6NDEgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eDogRklYOiBtZXJnZQoJICBmcm9tIG1haW4gdHJlZSBtYWMgYnVuZGxlIGZpeAoKMjAwNC0xMC0wNiAxMjoyNSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oOiBFTkg6CgkgIG1lcmdlIGZyb20gbWFpbiB0cmVlIGZpeCBmb3IgYnVpbGQgb3ZlcnZpZXcgcGFnZQoKMjAwNC0xMC0wNSAxNjoxNiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFUlI6IFRvbyBtdWNoIGNvbW1pdHMKCjIwMDQtMTAtMDUgMTY6MTQgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwgQ1Rlc3QvQ01ha2VMaXN0cy50eHQsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBQRVJGOiBTZXZlcmFsIGNsZWFudXBzLCBhbmQgcmVtb3ZlIG5lZWQKCSAgZm9yIEN1cmwgZGlyZWN0b3J5IHRvIGJlIGluIGluY2x1ZGUgcGF0aAoKMjAwNC0xMC0wNSAxMTozNyAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRklYOiBjb3JyZWN0bHkgaGFuZGxlIGlmIHBhdGggdGFibGUgY2FuIG5vdAoJICBvcGVuCgoyMDA0LTEwLTA1IDExOjI5ICBob2ZmbWFuCgoJKiBib290c3RyYXA6IEVOSDogcGljayBuYXRpdmUgY29tcGlsZXJzIGZpcnN0LCBhbmQgYUNDIGJlZm9yZSBDQwoKMjAwNC0xMC0wNSAxMDo1OSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggcmVhbHBhdGggcHJvYmxlbSBhbmQgdW5peAoJICBzbGFzaGVzCgoyMDA0LTEwLTA1IDEwOjEzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEVSUjogRml4IFRSVUUgYnVpbGQgcHJvYmxlbSBhbmQKCSAgcmVwbGFjZSBlcnJvciBjb3V0cyB3aXRoIGNlcnJzCgoyMDA0LTEwLTA1IDEwOjAwICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogRml4IFdpbmRvd3MgYnVpbGQKCjIwMDQtMTAtMDUgMDk6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBDT01QOiBmaXgKCSAgc29tZSBjb21waWxlIGlzc3VlcyB3aXRoIGluc2VydAoKMjAwNC0xMC0wNSAwOTowMSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogQ09NUDogZml4IGJhZCBpbmNsdWRlIGZpbGUKCjIwMDQtMTAtMDUgMDg6NDkgIGFuZHkKCgkqIGJvb3RzdHJhcDogRVJSOiBGaXggYm9vdHN0cmFwCgoyMDA0LTEwLTA1IDA4OjMzICBhbmR5CgoJKiBNb2R1bGVzLzogQ2hlY2tUeXBlU2l6ZS5jLmluLCBDaGVja1R5cGVTaXplLmNtYWtlLAoJICBDaGVja1R5cGVTaXplLmM6IEVOSDogQWRkIG9wdGlvbiBvZiBhZGRpbmcgcmFuZG9tIGluY2x1ZGUgZmlsZXMKCSAgYmVmb3JlIGRvaW5nIENoZWNrVHlwZVNpemUKCjIwMDQtMTAtMDUgMDg6MzIgIGFuZHkKCgkqIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2U6IEVOSDogV2hlbiB0ZXN0IGZhaWxzLCB3cml0ZSBvdXQKCSAgdGhlIG91dHB1dAoKMjAwNC0xMC0wNCAxNjoxNSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yMi5oOiBFTkg6IFN0YXJ0ZWQgbmV3IG1ha2VmaWxlCgkgIGdlbmVyYXRvciBpbXBsZW1lbnRhdGlvbi4gIEl0IHdpbGwgdGVtcG9yYXJpbHkgYmUgY2FsbGVkCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IyIHVudGlsIGl0IGlzIHJlYWR5IHRvIHJlcGxhY2UgdGhlCgkgIG9yaWdpbmFsIGNvbXBsZXRlbHkuCgoyMDA0LTEwLTA0IDEyOjMxICBtYXJ0aW5rCgoJKiBDTWFrZS5ydGYsIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOgoJICBFTkg6IE1hdGhpZXVzIHN1cHBvcnQgZm9yIHBhdGggY29udmVyc2lvbnMKCjIwMDQtMTAtMDQgMTI6MDIgIGFuZHkKCgkqIFRlc3RzL0NUZXN0VGVzdC90ZXN0LmNtYWtlLmluOiBCVUc6IFVzZSBrd3N5cyBmcm9tIHRoZSBzb3VyY2UKCSAgdHJlZQoKMjAwNC0xMC0wNCAwODowNiAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW46IEVOSDogQmV0dGVyIHNvcnRpbmcgb2YgcmVzdWx0cwoKMjAwNC0xMC0wMyAwNzoyNyAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW46IEJVRzogRml4IHByb2JsZW0gd2l0aCBzcGFjZXMgaW4KCSAgdGhlIHBhdGgKCjIwMDQtMTAtMDMgMDc6MTQgIGFuZHkKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IEJVRzogQXR0ZW1wdCB0byByZW1vdmUgbWVtb3J5IGxlYWsKCjIwMDQtMTAtMDEgMTM6MjMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogQlVHOiBBZGQgcmVndWxhciBleHByZXNzaW9uCgkgIHRvIHZlY3RvcgoKMjAwNC0xMC0wMSAxMzoxMCAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW46IEVOSDogVXNlIGV4aXN0aW5nIENUZXN0IGFuZCBjbWFrZQoKMjAwNC0xMC0wMSAxMjoyMSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5oOiBFTkg6IEFkZCBDVEVTVF9FWEVDVVRBQkxFX05BTUUgdG8KCSAgQ1Rlc3Qgc2NyaXB0aW5nLiBUaGlzIHdheSB5b3UgZG8gbm90IGhhdmUgdG8gc3BlY2lmeSBjdGVzdAoJICBleGVjdXRhYmxlIGluIENURVNUX0NPTU1BTkQsIGJ1dCBqdXN0IGEgdmFyaWFibGUKCjIwMDQtMTAtMDEgMTE6MzYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFUlI6IEFkZGVkIG1pc3NpbmcgaW5jbHVkZSBvZgoJICBzdHJpbmcuaAoKMjAwNC0xMC0wMSAxMToxMyAgYW5keQoKCSogVGVzdHMvQ1Rlc3RUZXN0L3Rlc3QuY21ha2UuaW46IEVOSDogTGV0IHVzIHJlY29nbml6ZSBpdCBvbiB0aGUKCSAgZGFzaGJvYXJkCgoyMDA0LTA5LTMwIDE4OjQ1ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cCBDVGVzdCB0ZXN0CgoyMDA0LTA5LTMwIDE4OjQ1ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QvdGVzdC5jbWFrZS5pbjogRU5IOiBEbyBrd3N5cyBpbnN0ZWFkIG9mIENNYWtlCgoyMDA0LTA5LTMwIDE4OjA2ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0QnVpbGRIYW5kbGVyLmN4eCwgY21DVGVzdEJ1aWxkSGFuZGxlci5oOgoJICBFUlI6IEZpeCBmb3Igbm9uLWdjYy9pY2MgY29tcGlsZXJzCgoyMDA0LTA5LTMwIDE3OjQyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBBZGRlZCBvcHRpb25hbCBkaXNwbGF5IG9mIG91dHB1dAoJICBmb3IgdGVzdHMuICBBdm9pZCBwcmludGluZyBhbG90IG9mIG91dHB1dCBmb3IgdGVzdCA2LgoKMjAwNC0wOS0zMCAxNzoyNyAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuaDogRVJSOiBGaXggZXJyb3IKCjIwMDQtMDktMzAgMTY6MjQgIGFuZHkKCgkqIGJvb3RzdHJhcDogQlVHOiBDaGVjayBpZiB0aGUgY29tcGlsZXIgaXMgZ251LiBJZiBpdCBpcywgZG8gbm90IGRvCgkgIHNwZWNpYWwgcGxhdGZvcm0gdGVzdHMuIEZpeGVzIEJ1ZyAjMTIxNSAtIGJvb3RzdHJhcCB1c2VzIG5hdGl2ZQoJICBmbGFncyB3aXRoIGdudSBjb21waWxlciBvbiBPU0YKCjIwMDQtMDktMzAgMTY6MjAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBjbUNUZXN0QnVpbGRIYW5kbGVyLmg6CgkgIEVOSDogQWRkIHN1cHBvcnQgZm9yIFNvdXJjZUZpbGUgYW5kIExpbmVOdW1iZXIKCjIwMDQtMDktMjkgMTY6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuaCwgY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oLAoJICBjbUR5bmFtaWNMb2FkZXIuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9hZENhY2hlQ29tbWFuZC5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21UYXJnZXQuY3h4LCBjbWFrZXdpemFyZC5jeHg6IEVOSDogc2hvcnRlbiB0aGUKCSAgc3ltYm9scyBhIGJpdCBhbmQgcmVtb3ZlIG1hcHMgb2Ygc3RkOjpzdHJpbmcgZm9yIG1hcCBvZgoJICBjbVN0ZFN0cmluZwoKMjAwNC0wOS0yOSAxNDoxNCAgYW5keQoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdFRlc3RIYW5kbGVyLmN4eCwgY21DVGVzdFRlc3RIYW5kbGVyLmg6IEJVRzoKCSAgUmVtb3ZlIG1heGltdW0gc2l6ZSBvZiB0ZXN0IG91dHB1dAoKMjAwNC0wOS0yOSAxMzoyMSAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbjogRVJSOiBGaXggV2luZG93cyBidWlsZAoKMjAwNC0wOS0yOSAxMjoyMCAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5oeHguaW46IEVOSDogTW92ZQoJICBwZXJtaXNzaW9ucyBjb2RlIHRvIGt3c3lzIHNvIHRoYXQgY29weWZpbGUgY2FuIHVzZSBpdC4gRml4ZXMgQnVnCgkgICMxMTMzIC0gY21ha2UgLUUgY29weSBmaWxlIGRpciBzZXRzIHRoZSB3cm9uZyBwZXJtaXNzaW9ucyBvbiB0aGUKCSAgZGVzdGluYXRpb24gZGlyZWN0b3J5CgoyMDA0LTA5LTI5IDExOjUyICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBCVUc6IElmIGV4dHJhIHVwZGF0ZQoJICBmYWlsZXMsIGNvbnRpbnVlIHdpdGggZGFzaGJvYXJkLiBDbG9zZXMgQnVnICM4OTQgLSBGYXRhbCBDVlMKCSAgdXBkYXRlIGVycm9yIGtpbGxzIHRlc3QsIGFuZCBpcyBub3QgcmVwb3J0ZWQKCjIwMDQtMDktMjkgMTE6MTggIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogV2hlbiBjb3B5IGZpbGUsIGlmIHRoZSBvdXRwdXQKCSAgZmlsZSBleGl0cywgZGVsZXRlIGl0IGZpcnN0CgoyMDA0LTA5LTI5IDA4OjU4ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWxsb3cgQ01ha2UgdG8gdXNlCgkgIENvbW1hbmRMaW5lQXJndW1lbnRzIHdpdGhvdXQgd2FybmluZwoKMjAwNC0wOS0yOSAwODozNCAgYW5keQoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmh4eC5pbjogRU5IOiBBZGQgbG90cyBvZgoJICBjb21tZW50cwoKMjAwNC0wOS0yOSAwNzo1NiAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBDb21tYW5kTGluZUFyZ3VtZW50cy5oeHguaW46IEVOSDogQWRkIGFjY2VzcyB0byBsYXN0IGFyZ3VtZW50CgkgIHBhcnNlZAoKMjAwNC0wOS0yOCAxNzo1MSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogRW5hYmxlIENvbW1hbmQgTGluZSBBcmd1bWVudHMKCjIwMDQtMDktMjggMTc6NTEgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgY21DVGVzdFNjcmlwdEhhbmRsZXIuaDoKCSAgRU5IOiBNb3ZlIGFsbCBleHRyYWN0aW5nIG9mIHZhcmlhYmxlcyB0byBFeHRyYWN0VmFyaWFibGVzLiBUaGlzCgkgIHdheSBpdCBpcyBlYXN5IHRvIGtub3cgd2hhdCB2YXJpYWJsZXMgYXJlIHVzZWQKCjIwMDQtMDktMjggMTE6MzQgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFTkg6IEFkZCBhY2Nlc3NvciBmb3IgQXJndjAKCjIwMDQtMDktMjggMDk6MDAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmgsIGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eDoKCSAgRU5IOiBBZGQgc29tZSBkb2N1bWVudGF0aW9uCgoyMDA0LTA5LTI3IDE2OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IG1ha2Ugc3VyZSByZWxlYXNlCgkgIGZsYWdzIGFyZSByZXBsYWNlZAoKMjAwNC0wOS0yNyAxNToyMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFsbG93IGZvciBhIGRpZmZlcmVudCBqbmkuaCB0byBlbmFibGUKCSAgamF2YSB0ZXN0aW5nCgoyMDA0LTA5LTI3IDE1OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWxsb3cgZm9yIGEgZGlmZmVyZW50IGpuaS5oIHRvIGVuYWJsZQoJICBqYXZhIHRlc3RpbmcKCjIwMDQtMDktMjcgMTU6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogc3BhY2UgaW4gcGF0aCBwcm9ibGVtCgoyMDA0LTA5LTI3IDE0OjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIGpuaS5oIHRvIGRldGVybWluZSBqYXZhIHZlcnNpb24KCjIwMDQtMDktMjcgMTQ6MzUgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21DVGVzdC5jeHgsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IG1lcmdlIGZyb20gbWFpbiB0cmVlIGFuZAoJICBjaGFuZ2UgdmVyc2lvbiB0byAyLjAuNAoKMjAwNC0wOS0yNyAxNDoyMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSBqbmkuaCB0byBkZXRlcm1pbmUgamF2YSB2ZXJzaW9uCgoyMDA0LTA5LTI3IDEzOjM2ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogSWYgbm90ZXMgZmlsZSBpcyBtaXNzaW5nLCBjcmVhdGUgZW1wdHkKCSAgbm90ZXMgZmlsZSB3aXRoIGVycm9yIG1lc3NhZ2UKCjIwMDQtMDktMjcgMTM6MDMgIGhvZmZtYW4KCgkqIFRlc3RzL0ZvcnRyYW4vQ01ha2VMaXN0cy50eHQ6IGNsZWFuIHVwIG91dHB1dCBvZiB0ZXN0IGFuZCBmb3JjZQoJICB2ZXJib3NlIG1ha2VmaWxlcwoKMjAwNC0wOS0yNyAxMTozNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUphdmFDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IG1ha2Ugc3VyZSBqYXZhIGphcgoJICBmaWxlcyBhcmUgbm90IGxpYmZvby5qYXIgYnV0IGFyZSBqdXN0IGZvby5qYXIKCjIwMDQtMDktMjcgMTE6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBiZXR0ZXIgbWVzc2FnZSBmb3Igc2tpcHBpbmcgamF2YQoKMjAwNC0wOS0yNyAwOTo0OSAgYW5keQoKCSogTW9kdWxlcy9Eb2N1bWVudGF0aW9uLmNtYWtlOiBFTkg6IFJlcGxhY2UgSU5DTFVERShGaW5kLi4uKSB3aXRoCgkgIEZJTkRfUEFDS0FHRSguLi4pCgoyMDA0LTA5LTI0IDE2OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogdXNlIGNvcnJlY3QgYXJncyBmb3IgdGVzdCBvZiBqYXZhCgoyMDA0LTA5LTI0IDE2OjM0ICBob2ZmbWFuCgoJKiBUZXN0cy9KYXZhLzogQ01ha2VDaGVja0phdmFQYXRoLmphdmEsIENNYWtlTGlzdHMudHh0OiB0cnkgYW5kIGdldAoJICB0aGlzIGphdmEgdGVzdCB0byB3b3JrCgoyMDA0LTA5LTI0IDE2OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogb25seSB1c2UgbmV3ZXIgamF2YSBmb3IgdGVzdGluZwoKMjAwNC0wOS0yNCAxNTo0MCAgaG9mZm1hbgoKCSogVGVzdHMvSmF2YS86IENNYWtlQ2hlY2tKYXZhUGF0aC5qYXZhLCBDTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQKCSAgc29tZSBqYXZhIGNvZGUgdG8gdHJ5IGFuZCBmaW5kIHRoZSBzeXN0ZW0gcGF0aAoKMjAwNC0wOS0yNCAxNDozNyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IEJVRzogTElOS19GTEFHUyBhcmUgbm93IGFsbAoJICBMSU5LXyhMQU5HKV9GTEFHUwoKMjAwNC0wOS0yNCAxMTozNSAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggY3Jhc2ggd2l0aCB2czYKCjIwMDQtMDktMjQgMTE6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBjaGVjayBmb3IgYWxsIHBhcnRzIG9mIGphdmEKCjIwMDQtMDktMjQgMTE6MDUgIGhvZmZtYW4KCgkqIFRlc3RzL0phdmEvQ01ha2VMaXN0cy50eHQ6IEVOSDogcmVtb3ZlIGNsYXNzcGF0aCBzbyB0aGF0IHRoaXMKCSAgdGVzdCBwYXNzZXMgd2l0aCBvbGRlciBqYXZhIGNvbXBpbGVycyB0aGF0IGNsb2JlciB0aGUgc3lzdGVtCgkgIGNsYXNzIHBhdGggd2l0aCB0aGUgLWNsYXNzcGF0aCBvcHRpb24KCjIwMDQtMDktMjQgMTA6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiByZXBsYWNlIGFsbCBlbmFibGVkCgkgIGxhbmd1YWdlcyBpbiBydWxlIHZhcnMKCjIwMDQtMDktMjQgMDk6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEVOSDogY2hhbmdlIGlnbm9yZSBmdW5jdGlvbiBzbyB0aGF0CgkgIGl0IGZpcnN0IGNoZWNrcyB0byBzZWUgaWYgdGhlIGV4dGVuc2lvbiBoYXMgYSBsYW5ndWFnZQoKMjAwNC0wOS0yNCAwOToxMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2U6IEVOSDogdXNlIGMrKyB3aXRoIGMrKyBhbmQgYyBmbGFncwoJICB3aXRoIGMKCjIwMDQtMDktMjQgMDg6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogY29ycmVjdGx5IGlnbm9yZSBmaWxlcwoKMjAwNC0wOS0yMyAxNzo0OSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiB0ZW1wb3JhcnkgZml4IHRvIHRyeSBhbmQgZ2V0IGEgY2xlYW4KCSAgZGFzaGJvYXJkCgoyMDA0LTA5LTIzIDE1OjAyICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBFUlI6IEZpeCBtZW1vcnkgcHJvYmxlbQoKMjAwNC0wOS0yMyAxMTo1MyAgYW5keQoKCSogU291cmNlL2t3c3lzL0NvbW1hbmRMaW5lQXJndW1lbnRzLmN4eDogU1RZTEU6IE9ubHkgYWxsb2NhdGUgYXMKCSAgbXVjaCBzcGFjZSBhcyBuZWVkZWQKCjIwMDQtMDktMjMgMTE6NDUgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHg6IEVOSDogTWFrZQoJICBHZXRSZW1haW5pbmdBcmd1bWVudHMgYWN0dWFsbHkgd29yawoKMjAwNC0wOS0yMyAxMTo0NCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBvbmx5IHJlcGxhY2UgdGhlIGxhbmd1YWdlCgkgIGJlaW5nIHVzZWQgaW4gZXhwYW5kIHJ1bGUgdmFyaWFibGVzCgoyMDA0LTA5LTIzIDA5OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IFNUWUxFOiByZW1vdmUgd2FybmluZwoKMjAwNC0wOS0yMyAwOTowOCAgaG9mZm1hbgoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiByZW1vdmUgd2FybmluZwoKMjAwNC0wOS0yMyAwODo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVJDSW5mb3JtYXRpb24uY21ha2UsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6CgkgIEVOSDogZml4IHByb2JsZW1zIHdpdGggLmRlZiBhbmQgUkMgZmlsZXMKCjIwMDQtMDktMjMgMDg6MjAgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2Ugc3VyZSBjbWFrZSBoYXMgMi4wCgoyMDA0LTA5LTIzIDA3OjUzICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogQXR0ZW1wdCB0byBkZXRlY3QgYSBub24tcGFyYWxsZWwgbWFrZQoKMjAwNC0wOS0yMiAxNzo1MCAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBmaXggcGVyZmVyZWQgbGlua2VyIGxhbmd1YWdlIGNvZGUKCjIwMDQtMDktMjIgMTc6NDEgIGhvZmZtYW4KCgkqIFRlc3RzL0phdmEvQ01ha2VMaXN0cy50eHQ6IHVzZSB2ZXJib3NlIG1ha2VmaWxlcwoKMjAwNC0wOS0yMiAxNjo1MSAgaG9mZm1hbgoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IG1ha2UgaXQgdmVyYm9zZQoKMjAwNC0wOS0yMiAxNjo0NCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogZml4IGNvbXBpbGF0aW9uCgoyMDA0LTA5LTIyIDE1OjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHg6IHJlbW92ZSB3YXJuaW5ncwoKMjAwNC0wOS0yMiAxNDo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZTogQlVHOiBsZXQgdGhlIGdlbmVyYXRvciBxdW90ZQoJICB0aGUgcGF0aAoKMjAwNC0wOS0yMiAxNDo0MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwgTW9kdWxlcy9DTWFrZUNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDb21tb25MYW5ndWFnZUluY2x1ZGUuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVSQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRm9ydHJhbkluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlR2VuZXJpY1N5c3RlbS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUphdmFDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUphdmFJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVJDQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VSQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0UkNDb21waWxlci5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9BSVguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vRnJlZUJTRC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9JUklYLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0lSSVg2NC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1jb21vLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL01QLVJBUy5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9OZXRCU0QuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vT1NGMS5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9SSVNDb3MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vVUxUUklYLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VOSVhfU1YuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbUVuYWJsZUxhbmd1YWdlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUVuYWJsZUxhbmd1YWdlQ29tbWFuZC5oLCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwgU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4LCBUZXN0cy9Gb3J0cmFuL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9KYXZhL0EuamF2YSwgVGVzdHMvSmF2YS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvSmF2YS9IZWxsb1dvcmxkLmphdmE6IEVOSDogbWFqb3IgY2hhbmdlcyB0byBzdXBwb3J0CgkgIGFkZGl0aW9uIG9mIGxhbmd1YWdlcyBmcm9tIGNtYWtlIG1vZHVsZXMgZGlyZWN0b3J5LgoKMjAwNC0wOS0yMiAxMDowNiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IG9ubHkgdHJ5IHRvIHVzZSBmb3J0cmFuIGlmIHRoZQoJICBnZW5lcmF0b3IgaXMgbWFrZSBiYXNlZAoKMjAwNC0wOS0yMiAwODo1MCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbjogQlVHOiBmaXggR05VIGNoZWNrCgkgIHZhcmlhYmxlIGFuZCBhZGQgbmV3IHZhcmlhYmxlcyB1c2VkIGJ5IGVuYWJsZSBsYW5ndWFnZQoKMjAwNC0wOS0yMSAxMjo1MSAgaG9mZm1hbgoKCSogU291cmNlL2NtTGlzdEZpbGVMZXhlci5oOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0wOS0yMSAxMjo0NyAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtTGlzdEZpbGVMZXhlci5jLAoJICBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmluLmwsIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OgoJICBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0wOS0yMCAxNDozOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kSmF2YS5jbWFrZTogRU5IOiBsb29rIGZvciBqYXZhIGluIG1vcmUgcGxhY2VzCgoyMDA0LTA5LTIwIDEzOjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogYnJhbmNoIG9ubHkgZml4IGZvcgoJICBWU0V4dGVybmFsSW5jbHVkZQoKMjAwNC0wOS0yMCAwODo1MSAga2luZwoKCSogU291cmNlL2NtTGlzdEZpbGVMZXhlci5jLCBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmluLmwsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBCVUcjMTE3OTogRml4IGZvciAgc3ludGF4IGluCgkgIHVucXVvdGVkIGFyZ3VtZW50cy4KCjIwMDQtMDktMTcgMTY6NDYgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4LCBTb3VyY2UvY21HbG9iLmN4eCwgU291cmNlL2NtR2xvYi5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5oLCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1ZTRXh0ZXJuYWxJbmNsdWRlL21haW4uY3BwLAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIxL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIxL2xpYjEuY3BwLAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIxL2xpYjEuaCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvTGliMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvTGliMi9saWIyLmNwcCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvTGliMi9saWIyLmg6IG1lcmdlIGZyb20gbWFpbiB0cmVlCgoyMDA0LTA5LTE3IDE2OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZQoJICBidWcgMTA0MQoKMjAwNC0wOS0xNyAxNTo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyAxMDQxLAoJICBfTUJDUyBzb21ldGltZXMgYWRkZWQgZm9yIFVOSUlDT0RFIHdoaWNoIGlzIGJhZAoKMjAwNC0wOS0xNyAwOToxNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUphdmFDb21waWxlci5jbWFrZS5pbjogQlVHOiBjb21taXQgYnVnIDExMjMKCjIwMDQtMDktMTcgMDk6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmg6IEJVRzogMTE2MyBmaXggZG9jdW1lbnRhdGlvbgoKMjAwNC0wOS0xNiAxNzoxNiAgaG9mZm1hbgoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSBmaXggYnVnIDExMjIKCjIwMDQtMDktMTYgMTc6MTMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmN4eDogRU5IOiBBdHRlbXB0IHRvIGhhbmRsZQoJICBJbnRlbCdzIHJlbWFya3MuIENsb3NlIEJ1ZyAjMTE1NiAtIEJldHRlciBzdXBwb3J0IGZvciBpY2MKCSAgJ3JlbWFyaycKCjIwMDQtMDktMTYgMTI6MzkgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkIG1pc3NpbmcgaW5jbHVkZQoKMjAwNC0wOS0xNiAxMDo1OCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogQWRkCgkgIG1ldGhvZCB0byByZXRyaWV2ZSB0aGUgdGVybWluYWwgd2lkdGgKCjIwMDQtMDktMTYgMTA6NDkgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9Db21tYW5kTGluZUFyZ3VtZW50cy5jeHg6IEVOSDogYSBiaXQgbW9yZSBjbGVhbnVwLgoJICBUaGUgaGVscCBzaG91bGQgcmVhbGx5IGJlIHJlcGxhY2VkIGJ5IHNvbWV0aGluZyBsaWtlCgkgIGNtRG9jdW1lbnRhdGlvbgoKMjAwNC0wOS0xNiAxMDo0OCAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFRlc3RzL1ZTRXh0ZXJuYWxJbmNsdWRlL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBWU0V4dGVybmFsIGZvcgoJICB2aXN1YWwgc3R1ZGlvIDYKCjIwMDQtMDktMTYgMTA6MjcgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFTkg6IENvbmRlbnNlIGhlbHAgc3RyaW5nLCBhZGQKCSAgc3VwcG9ydCBmb3Igc2V0dGluZyBsaW5lIGxlbmd0aCBhbmQgbWFrZSBpdCB3b3JrCgoyMDA0LTA5LTE1IDE1OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBleHRlcm5hbCBwcm9qZWN0CgkgIGNvbW1hbmQgZm9yIFZTIDcgYW5kIDcxCgoyMDA0LTA5LTE1IDE0OjA4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2IuY3h4LCBjbUdsb2IuaDogRU5IOiBSZW1vdmUgZG91YmxlIHNsYXNoCgoyMDA0LTA5LTE1IDEzOjMzICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iLmN4eDogQlVHOiBBdHRlbXB0IHRvIGZpeCBidWcgb24gV2luZG93cyAoYW5kIGFwcGxlKQoJICB3aGVyZSBmaWxlcyByZXR1cm5lZCBhcmUgYWxsIGxvd2VyY2FzZQoKMjAwNC0wOS0xNSAxMzozMSAgYW5keQoKCSogU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4OiBCVUc6IFByb3BhZ2F0ZSBmaWxlIG5hbWUgYW5kIGxpbmUKCSAgbnVtYmVyIGluc2lkZSBGT1JFQUNILiBGaXhlcyBCdWcgIzExNjkgLSBFcnJvIG1lc3NhZ2VzIGluc2lkZQoJICBGT1JFQUNIIGhhdmUgYmFkIGZpbGVuYW1lIGFuZCBsaW5lIG51bWJlcgoKMjAwNC0wOS0xNSAxMzowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciB2cyA3MAoJICBnZW5lcmF0b3IKCjIwMDQtMDktMTUgMTI6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogY2xlYW4gdXAgb2YKCSAgSU5DTFVERV9FWFRFUk5BTF9NU1BST0pFQ1QgY29udHJpYnV0ZWQgYnkgQ2xpbnRvbiBTdGltcHNvbgoKMjAwNC0wOS0xNSAxMTozMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IG1ha2Ugc3VyZSBlbnYgQ0MgYW5kIENYWAoJICBhcmUgbm90IHNldCBmb3IgVlMgSURFIGJ1aWxkcwoKMjAwNC0wOS0xNSAxMDozNSAgbWFydGluawoKCSogVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogcHJvZHVjZSBiZXR0ZXIKCSAgb3V0cHV0CgoyMDA0LTA5LTE1IDEwOjMyICBtYXJ0aW5rCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lRm9ydHJhbkNvbXBpbGVyLmNtYWtlOiBFTkg6IGRvIG5vdCBjaGVjayBmb3IgZ251CgkgIGZvciB2aXN1YWwgc3R1ZGlvCgoyMDA0LTA5LTE1IDA5OjIyICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBDb21tYW5kTGluZUFyZ3VtZW50cy5jeHgsCgkgIENvbW1hbmRMaW5lQXJndW1lbnRzLmh4eC5pbjogRU5IOiBNb3ZlIGNhbGxiYWNrIHN0cnVjdHVyZSBvdXQgb2YKCSAgdGhlIHB1YmxpYyBpbnRlcmZhY2UuIEFsc28gYmxvY2sgdGhlIHdhcm5pbmcgb24gVmlzdWFsIFN0dWRpbwoJICBEZWJ1ZwoKMjAwNC0wOS0xNCAxNjozNCAgaG9mZm1hbgoKCSogVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvOiBDTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgYSB0ZXN0IGZvcgoJICBleHRlcm5hbCBwcm9qZWN0cwoKMjAwNC0wOS0xNCAxNjowMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVlNFeHRlcm5hbEluY2x1ZGUvbWFpbi5jcHAsCgkgIFRlc3RzL1ZTRXh0ZXJuYWxJbmNsdWRlL0xpYjEvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1ZTRXh0ZXJuYWxJbmNsdWRlL0xpYjEvbGliMS5jcHAsCgkgIFRlc3RzL1ZTRXh0ZXJuYWxJbmNsdWRlL0xpYjEvbGliMS5oLAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIyL2xpYjIuY3BwLAoJICBUZXN0cy9WU0V4dGVybmFsSW5jbHVkZS9MaWIyL2xpYjIuaDogRU5IOiBhZGQgYSB0ZXN0IGZvciBleHRlcm5hbAoJICBwcm9qZWN0cwoKMjAwNC0wOS0xNCAxNDowNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHg6IGJ1ZyBmaXhlcyBmb3IgZXh0ZXJuYWwKCSAgcHJvamVjdHMKCjIwMDQtMDktMTQgMTE6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFUlI6IEZpeCBib3JsYW5kIGJ1aWxkCgoyMDA0LTA5LTE0IDExOjM5ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBFUlI6IEFkZCBtaXNzaW5nIGluY2x1ZGUKCjIwMDQtMDktMTQgMTA6MzQgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IENvbW1hbmRMaW5lQXJndW1lbnRzLmN4eCwKCSAgQ29tbWFuZExpbmVBcmd1bWVudHMuaHh4LmluOiBFTkg6IFVzZSBjb25zdCBjb3JyZWN0bmVzcyBmb3IKCSAgYXJndW1lbnRzCgoyMDA0LTA5LTE0IDA5OjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggaW5jbHVkZSBleHRlcm5hbAoJICBwcm9qZWN0IGJ1ZwoKMjAwNC0wOS0xMyAxOTowNiAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICB0ZXN0Q29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBFUlI6IE1vcmUgbWlzc2luZyBpb3MgYW5kIGluY2x1ZGVzCgoyMDA0LTA5LTEzIDE4OjU3ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4OiBFUlI6IEZpeCBJT1MgbmFtZXNwYWNlCgoyMDA0LTA5LTEzIDE2OjE1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29tbWFuZExpbmVBcmd1bWVudHMuY3h4LAoJICBDb21tYW5kTGluZUFyZ3VtZW50cy5oeHguaW4sIHRlc3RDb21tYW5kTGluZUFyZ3VtZW50cy5jeHg6IEVOSDoKCSAgTW92ZSBjb21tYW5kIGxpbmUgYXJndW1lbnQgcGFyc2luZyBjb2RlIHRvIGt3c3lzCgoyMDA0LTA5LTEwIDE0OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21ha2VtYWluLmN4eDogRU5IOiBmaXggd2FybmluZyBjb3JyZWN0bHkKCjIwMDQtMDktMTAgMTE6MTkgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCB3YXJuaW5nIG1lc3NhZ2VzIGlmIGN1cnNlcyBsaWJyYXJ5IGlzCgkgIG5vdCBmb3VuZAoKMjAwNC0wOS0xMCAxMToxNSAgYW5keQoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEVOSDogVXNlIEZJTkRfUEFDS0FHRSBpbnN0ZWFkIG9mCgkgIElOQ0xVREUoRmluZC4uLgoKMjAwNC0wOS0xMCAwODo0MiAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBmaXggZGFzaDggd2FybmluZwoKMjAwNC0wOS0xMCAwODozMCAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5oOiBmaXggSFBVWCBidWdzCgoyMDA0LTA5LTA5IDE2OjA1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LWlmb3J0LmNtYWtlOiBhZGQgaWZvcnQgc3VwcG9ydAoKMjAwNC0wOS0wOSAxMjo1OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtYWtlbWFpbi5jeHg6IFdBUjogcmVtb3ZlIGEgd2FybmluZyBvbiBpNjQKCjIwMDQtMDktMDkgMTE6NTAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2U6IHRyeSB0byBmaXggZm9ydHJhbiBvbiBocAoKMjAwNC0wOS0wOSAxMDo1MiAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RUZXN0SGFuZGxlci5jeHg6IG1pc3NpbmcgaW5jbHVkZQoKMjAwNC0wOS0wOSAwOTozMSAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RDb3ZlcmFnZUhhbmRsZXIuY3h4OiBtaXNzaW5nIGluY2x1ZGUKCjIwMDQtMDktMDkgMDg6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLAoJICBDVGVzdC9jbUNUZXN0Q292ZXJhZ2VIYW5kbGVyLmN4eCwgQ1Rlc3QvY21DVGVzdENvdmVyYWdlSGFuZGxlci5oLAoJICBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0VGVzdEhhbmRsZXIuaCwKCSAgQ1Rlc3QvY21DVGVzdFVwZGF0ZUhhbmRsZXIuY3h4OiBtb3JlIGNsZWFudXAgb2YgY3Rlc3QKCjIwMDQtMDktMDggMTc6NTMgIGhvZmZtYW4KCgkqIFRlc3RzL0ZvcnRyYW4vQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIG1vcmUgb3V0cHV0IGZvciBmb3J0cmFuIHNvCgkgIEkgY2FuIGZpZ3VyZSBvdXQgd2hhdCBpcyBnb2luZyBvbiB3aXRoIG90aGVyIGZvcnRyYW4gY29tcGlsZXJzCgoyMDA0LTA5LTA4IDEwOjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6CgkgIEJVRzogZG9uJ3QgY2xvc2UgdGhlIHBpcGVzIHRvbyBlYXJseQoKMjAwNC0wOS0wNyAxNjo1NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUR1bXBEb2N1bWVudGF0aW9uLmN4eCwKCSAgY21FbmFibGVUZXN0aW5nQ29tbWFuZC5jeHgsIGNtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsCgkgIGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwKCSAgY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IGFkZAoJICBiZXR0ZXIgZXJyb3IgcmVwb3J0aW5nIGZvciBmaWxlIG9wZW4gZmFpbHVyZXMKCjIwMDQtMDktMDcgMTY6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwga3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBGaXgKCSAgbGVha2VkIGZpbGUgYW5kIHJlZ2lzdHJ5IGRlc2NyaXB0b3JzCgoyMDA0LTA5LTA3IDEyOjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmgsIGNtQ1Rlc3QuY3h4OiBkdWggZXJyb3JzCgoyMDA0LTA5LTA3IDExOjQ1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBtb3JlIHdhcm5pbmdzCgoyMDA0LTA5LTA3IDExOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBtb3JlIHdhcm5pbmdzCgoyMDA0LTA5LTA3IDEwOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IG1vcmUgY2xlYW51cAoKMjAwNC0wOS0wNyAxMDozNyAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsCgkgIENUZXN0L2NtQ1Rlc3RCdWlsZEhhbmRsZXIuY3h4LCBDVGVzdC9jbUNUZXN0QnVpbGRIYW5kbGVyLmg6IG1vcmUKCSAgY2xlYW51cAoKMjAwNC0wOS0wNyAwOToxNyAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsCgkgIENUZXN0L2NtQ1Rlc3RDb25maWd1cmVIYW5kbGVyLmN4eCwKCSAgQ1Rlc3QvY21DVGVzdENvbmZpZ3VyZUhhbmRsZXIuaCwgQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4LAoJICBDVGVzdC9jbUNUZXN0U2NyaXB0SGFuZGxlci5oLCBDVGVzdC9jbUNUZXN0VXBkYXRlSGFuZGxlci5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RVcGRhdGVIYW5kbGVyLmg6IHNvbWUgYnVnIGZpeGVzIGZvciBteSByZWNlbnQKCSAgY2hlY2tpbnMgYW5kIHNvbWUgbW9yZSBjbGVhbnVwCgoyMDA0LTA5LTA2IDE0OjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFNjcmlwdEhhbmRsZXIuY3h4OiBhbm90aGVyIHBsYXRmb3JtIGZpeAoKMjAwNC0wOS0wNiAxNDoxNyAgbWFydGluawoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTY3JpcHRIYW5kbGVyLmg6IGFub3RoZXIgcGxhdGZvcm0gZml4CgoyMDA0LTA5LTA2IDEzOjU0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGplc3VzCgoyMDA0LTA5LTA2IDEzOjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IG9vcHMKCjIwMDQtMDktMDYgMTI6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IGZpeCB3YXJuaW5nCgoyMDA0LTA5LTA2IDEyOjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogc3RhcnRpbmcgY2xlYW51cAoJICBvZiBjdGVzdAoKMjAwNC0wOS0wNiAxMjo0NiAgbWFydGluawoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogd2FybmluZyBmaXgKCjIwMDQtMDktMDYgMTI6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTY3JpcHRIYW5kbGVyLmN4eCwgY21DVGVzdFNjcmlwdEhhbmRsZXIuaDoKCSAgYnJva2Ugb3V0IHBhcnQgb2YgdGVzdCBzY3JpcHRpbmcgaW50byBzZXBlcmF0ZSBjbGFzcwoKMjAwNC0wOS0wMyAxNTo0NyAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9DTWFrZVRlc3RGb3JGcmVlVkMuY3h4LAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IG1lcmdlIGZyb20gbWFpbiB0cmVlIGZpeCBmb3IKCSAgZnJlZSB2YyB0b29scwoKMjAwNC0wOS0wMyAxNToxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlVGVzdEZvckZyZWVWQy5jeHgsIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSAoJICBiZXR0ZXIgdGVzdCBmb3IgZnJlZSBWQyB0b29scwoKMjAwNC0wOS0wMyAxMzo0OSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4OiByZW1vdmUgd2FybmluZwoKMjAwNC0wOS0wMyAxMzo0OCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4OiBmaXggZm9yIGRhcndpbgoKMjAwNC0wOS0wMyAxMzoyNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA0LTA5LTAzIDEyOjAzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VGb3J0cmFuQ29tcGlsZXIuY21ha2UuaW4sCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4OgoJICBFTkg6IGRlZmluZSBsYW5ndWFnZSBleHRlbnNpb25zIGluIGNtYWtlIGZpbGVzIGFuZCBub3QgaGFyZAoJICBjb2RlZCwgYWxzbyBmaXggdHJ5Y29tcGlsZSBwcm9ibGVtCgoyMDA0LTA5LTAzIDEyOjAxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogY2hlY2sgZm9yIG1zIGZyZWUgY29tbWFuZAoJICBsaW5lIHRvb2xzCgoyMDA0LTA4LTMxIDE4OjUxICBraW5nCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eDogQlVHOiBGaXhlZCBsaW5lIG51bWJlciBvZiBlbmQgb2YgZmlsZQoJICBlcnJvciBtZXNzYWdlLgoKMjAwNC0wOC0zMSAxODozOSAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUxleGVyLmMsCgkgIGNtTGlzdEZpbGVMZXhlci5oLCBjbUxpc3RGaWxlTGV4ZXIuaW4ubDogQlVHIzEwNDk6IEFkZGVkIGVycm9yCgkgIG1lc3NhZ2Ugd2hlbiBmaWxlIGVuZHMgaW4gYW4gdW50ZXJtaW5hdGVkIHN0cmluZy4KCjIwMDQtMDgtMzEgMTA6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogQlVHOiBGaXggY3Jhc2ggd2hlbiBDTUFLRV9ERUJVR19QT1NURklYCgkgIGlzIG5vdCBzZXQuCgoyMDA0LTA4LTMxIDEwOjIwICBhbmR5CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IENsZWFudXBzCgoyMDA0LTA4LTMxIDA4OjI1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNfaW9zX2lvc2Z3ZC5oLmluOiBFUlI6IFJlbW92ZWQgaW5jbHVzaW9uIG9mCgkgIGZzdHJlYW0gaGVhZGVyLiAgVGhpcyBmaWxlIGlzIG1lYW50IGFzIGEgY29tcGF0aWJpbGl0eSBoZWFkZXIgZm9yCgkgIGlvc2Z3ZCBhbmQgdGhlcmVmb3JlIHNob3VsZCBub3QgaW5jbHVkZSBhbnkgb3RoZXIgaGVhZGVyLgoJICBXaGF0ZXZlciB3YXMgZml4ZWQgYnkgYWRkaW5nIHRoZSBpbmNsdWRlIG9mIGZzdHJlYW0gaGVyZSBzaG91bGQKCSAgYmUgZml4ZWQgYnkgb3RoZXIgbWVhbnMuCgoyMDA0LTA4LTMwIDE1OjE1ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21DVGVzdC5jeHg6IG1lcmdlIGZpeGVzIGZyb20gbWFpbiB0cmVlCgoyMDA0LTA4LTMwIDE0OjA3ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDoKCSAgZml4IFJVTl9URVNUUyBhbmQgZ2VuZXJhdGVkIGhlYWRlciBmaWxlcyBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0wOC0zMCAxNDowMSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBTb3VyY2UvTUZDRGlhbG9nL1BhdGhEaWFsb2cuY3BwLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0wOC0zMCAxMzo1MCAgaG9mZm1hbgoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5oLCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIGt3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXhlcyBmb3IgbWluZ3cgYW5kIENNYWtlc2V0dXAgd2l0aAoJICBzcGFjZXMgaW4gdGhlIHNvdXJjZSBkaXJlY3RvcnkKCjIwMDQtMDgtMzAgMTI6MTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2U6IE1ha2Ugc3VyZSBjbWFrZSB1c2VzCgkgIGNvbnNpc3RlbnQgbW9kdWxlIHByZWZpeGVzCgoyMDA0LTA4LTI3IDA5OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFTkg6IHJlbW92ZSB3YXJuaW5nCgoyMDA0LTA4LTI3IDA4OjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbVByb2plY3RDb21tYW5kLmN4eDogRU5IOiB0cnkgdG8gaW5pdGlhbGl6ZSBhbGwgbGFuZ3VhZ2VzIGF0IHRoZQoJICBzYW1lIHRpbWUKCjIwMDQtMDgtMjYgMjI6NTIgIGFuZHkKCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUMuY21ha2UsCgkgIENNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlLCBEb2N1bWVudGF0aW9uLmNtYWtlLAoJICBGaW5kRkxUSy5jbWFrZSwgRmluZEdMVS5jbWFrZSwgRmluZEdudXBsb3QuY21ha2UsCgkgIEZpbmRPcGVuR0wuY21ha2UsIEZpbmRQTkcuY21ha2UsIEZpbmRQZXJsLmNtYWtlLAoJICBGaW5kUHl0aG9uTGlicy5jbWFrZSwgRmluZFF0LmNtYWtlLCBGaW5kU2VsZlBhY2tlcnMuY21ha2UsCgkgIEZpbmRUQ0wuY21ha2UsIEZpbmRUaHJlYWRzLmNtYWtlLCBGaW5kVW5peENvbW1hbmRzLmNtYWtlLAoJICBGaW5kVlRLLmNtYWtlLCBGaW5kV2dldC5jbWFrZSwgRmluZFgxMS5jbWFrZSwKCSAgRmluZHd4V2lkZ2V0cy5jbWFrZSwgRmluZHd4V2luZG93cy5jbWFrZSwKCSAgVGVzdEZvckFOU0lTdHJlYW1IZWFkZXJzLmNtYWtlLCBVc2VWVEs0MC5jbWFrZSwKCSAgVXNlX3d4V2luZG93cy5jbWFrZSwgVXNld3hXaWRnZXRzLmNtYWtlLAoJICBQbGF0Zm9ybS9DWUdXSU4tZzc3LmNtYWtlOiBFTkg6IENsZWFudXAuIFVzZSByZWxhdGl2ZSBwYXRoIHRvCgkgIG1vZHVsZXMKCjIwMDQtMDgtMjYgMjE6NDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2U6IGhhY2sgdG8gdHJ5IGFuZCBmaXggc3VuIHBsYXRmb3JtCgoyMDA0LTA4LTI2IDE4OjAwICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEJVRzogT25seSBjb3VudCBibG9jayBvcGVuIHRva2VucyBpZiB0aGV5IGFyZQoJICBmb2xsb3dlZCBieSBhbiBvcGVuIHBhcmVuLgoKMjAwNC0wOC0yNiAxNzo0OSAgaG9mZm1hbgoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBFTkg6IHRyeSBjb21waWxlcyBpbiBDWFggcmVxdWlyZQoJICBDIHRvIGJlIGVuYWJsZWQgYXMgd2VsbAoKMjAwNC0wOC0yNiAxNjozNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHRyeSB0byBmaW5kIGZvcnRyYW4gY29tcGlsZXIgYmVmb3JlCgkgIGFkZGluZyB0aGUgdGVzdAoKMjAwNC0wOC0yNiAxNjoxMSAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IHRyeSB0byBmaW5kIGZvcnRyYW4gY29tcGlsZXIgYmVmb3JlCgkgIGFkZGluZyB0aGUgdGVzdAoKMjAwNC0wOC0yNiAxNjowMCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiByZW1vdmUgdGVzdCBmb3J0cmFuIGZvciBub3cKCjIwMDQtMDgtMjYgMTU6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQWRkIGEgZm9ydHJhbiB0ZXN0IGlmIHRoZXJlIGlzIGEgZm9ydHJhbgoJICBjb21waWxlcgoKMjAwNC0wOC0yNiAxNTo1MCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgU291cmNlL0NNYWtlTGlzdHMudHh0OiBBZGQgYSBmb3J0cmFuIHRlc3QgaWYgdGhlcmUgaXMgYSBmb3J0cmFuCgkgIGNvbXBpbGVyCgoyMDA0LTA4LTI2IDE0OjU1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlLmNtYWtlLCBNb2R1bGVzL0NNYWtlQ0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQ1hYSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDb21tb25MYW5ndWFnZUluY2x1ZGUuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZWZhdWx0TWFrZVJ1bGVWYXJpYWJsZXMuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5JbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUdlbmVyaWNTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VKYXZhQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VKYXZhSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdEZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9BSVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vQlNET1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9GcmVlQlNELmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0lSSVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWDY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL01QLVJBUy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9OZXRCU0QuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vT1NGMS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9PcGVuQlNELmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1JJU0Nvcy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9TQ09fU1YuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vU0lOSVguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vVHJ1ZTY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VMVFJJWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9VTklYX1NWLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VuaXhXYXJlLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtaWZvcnQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vWGVuaXguY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmN4eCwgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21ha2UuY3h4LCBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvRm9ydHJhbi9DTWFrZUxpc3RzLnR4dDogRU5IOiBtb3JlIHVuaWZvcm0gYXBwcm9hY2ggdG8KCSAgZW5hYmxlIGxhbmd1YWdlLCBvbmUgc3RlcCBjbG9zZXIgdG8gYmVpbmcgYWJsZSB0byBlbmFibGUgYQoJICBsYW5ndWFnZSB3aXRob3V0IG1vZGlmaW5nIGNtYWtlIHNvdXJjZSBjb2RlCgoyMDA0LTA4LTI2IDA5OjQ1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IE1ha2UgZGVmYXVsdCBkYXRlIHNob3J0ZXIKCjIwMDQtMDgtMjUgMTI6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBiZXR0ZXIgZXJyb3IgZGlzcGxheSBmb3IgZmFpbHVyZQoKMjAwNC0wOC0yNSAwODo0NCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IHByb2R1Y2UgYmV0dGVyIGVycm9yIG1lc3NhZ2UgZm9yIG1pc3NpbmcKCSAgdmFyaWFibGVzIGluIC1TIG1vZGUKCjIwMDQtMDgtMjQgMTE6MzAgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBGaXggdGhlIGxpc3Qgb2YKCSAgdGFyZ2V0cy4gVGhlIGJhc2UgdGFyZ2V0IG5hbWUgbm93IGluY2x1ZGVzIHRoZSBNQUNPU1hfQlVORExFIHBhdGgKCjIwMDQtMDgtMjQgMTE6MTcgIGFuZHkKCgkqIFNvdXJjZS9jbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eDogQlVHOiBJZiBtYWNkaXIgZG9lcyBub3QgZW5kCgkgIHdpdGggJy8nIHRoZW4gYWRkIGl0IGFsd2F5cywgbm90IGp1c3Qgd2hlbiBhZGRpbmcgY3VycmVudAoJICBkaXJlY3RvcnkKCjIwMDQtMDgtMjMgMTQ6MzMgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6CgkgIEltcGxlbWVudCBQcmVMb2FkLmNtYWtlIGZlYXR1cmUgZm9yIENNYWtlU2V0dXAKCjIwMDQtMDgtMjMgMTQ6MDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9DVGVzdC9DTWFrZUxpc3RzLnR4dDogZml4IHN5bnRheAoKMjAwNC0wOC0yMyAxMzo0NSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggb3V0IG9mIHRoZQoJICBib3ggYnVpbGQgb24gc2dpIHRvIG1hdGNoIGRhc2hib2FyZHMKCjIwMDQtMDgtMjMgMTE6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEphdmEuY21ha2U6IEJVRzogMTEwNyBhZGQgZXh0cmEgcGxhY2UgdG8gbG9vayBmb3IKCSAgamF2YQoKMjAwNC0wOC0yMyAxMToyOSAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBub3cgd2lsbCBjaGVjayBvdXQgc3JjIGRpciBpZiBpdCBoYXMgdGhlIG5lY2MKCSAgaW5mbwoKMjAwNC0wOC0yMyAxMToyMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kSmF2YS5jbWFrZTogQlVHOiAxMTA3IGFkZCBleHRyYSBwbGFjZSB0byBsb29rIGZvcgoJICBqYXZhCgoyMDA0LTA4LTE5IDEyOjUxICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogSGFuZGxlIGdtYWtlIGVycm9yIG1lc3NhZ2UKCjIwMDQtMDgtMTggMDk6MjggIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlOiBCVUc6IFVubHkgc2V0IGdjYwoJICBmbGFncyBmb3IgQyBjb21waWxlciBpZiBDTUFLRV9DT01QSUxFUl9JU19HTlVDQyBpcyBzZXQKCjIwMDQtMDgtMTggMDg6NTIgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBXaGVuIEdldE5pZ2h0bHlUaW1lIHJldHVybnMgcGFzdCB0aW1lLAoJICBmaXggZXZlcnl0aGluZy4gQWxzbywgcmV0dXJuIGNvcnJlY3QgdGltZSB3aGVuIHByaW50aW5nCgoyMDA0LTA4LTE3IDE5OjE4ICBhbmR5CgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi14bGMuY21ha2U6IEVOSDogSW5pdGlhbCBpbXBvcnQgZm9yIERhcndpbgoJICB1c2luZyB4bEMKCjIwMDQtMDgtMTcgMTY6MTMgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEVOSDogUmVsb2FkCgkgIFByZUxvYWQuY21ha2UgZXZlcnkgdGltZSB5b3UgZG8gY29uZmlndXJlCgoyMDA0LTA4LTE3IDE1OjM2ICBhbmR5CgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBFTkg6IEVuYWJsZSBwcmVsb2FkIGZvcgoJICBjY21ha2UKCjIwMDQtMDgtMTcgMTU6MzYgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaDogRU5IOiBNb3ZlIFByZUxvYWQuY21ha2UgY29kZSB0bwoJICBwdWJsaWMgbWV0aG9kIHNvIHRoYXQgY2NtYWtlIGFuZCBDTWFrZVNldHVwIGNhbiBjYWxsIGl0CgoyMDA0LTA4LTE3IDE0OjIzICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogQXR0ZW1wdCB0byBmaXggdGltZXpvbmUgcHJvYmxlbSB3aGVyZQoJICBzdGFydCB0aW1lIGFwcGVhcnMgb25lIGRheSBiZWZvcmUgdGhlIGFjdHVhbCBzdGFydCB0aW1lLiBBbHNvIGFkZAoJICB2ZXJib3NpdHkgdG8gR2V0TmlnaHRseVRpbWUKCjIwMDQtMDgtMTYgMDk6MDMgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19JUklYNjQ6IEJVRzogTmVlZCB0byBzZXQgSEFWRV9MSUJDUllQVE8KCSAgdG8gMCBpbnN0ZWFkIG9mIGxldHRpbmcgdGhlIHRlc3QgYmUgZG9uZS4KCjIwMDQtMDgtMTEgMjA6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogZml4IGl0CgoyMDA0LTA4LTExIDE2OjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsCgkgIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eDoKCSAgRU5IOiB1c2UgR2V0UmVxdWlyZWREZWZpbml0aW9uIGluc3RlYWQgb2YgR2V0RGVmaW5pdGlvbiBhbmQgY3Jhc2gKCjIwMDQtMDgtMTEgMTY6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogY2hhbmdlIFJVTl9URVNUUyB0byB1c2UKCSAgLUMgYW5kIG5vdCAtRCBhbHNvIHVzZSBHZXRSZXF1aXJlZERlZmluaXRpb24gd2hlcmUgbmVlZGVkCgoyMDA0LTA4LTExIDE2OjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogZml4ZXMgZm9yIFJVTl9URVNUUyBmcm9tIHZpc3VhbCBzdHVkaW8KCSAgSURFLCBmcHJpbnRmIGRvZXMgbm90IHByaW50IHJpZ2h0IGF3YXksIHNvIHN0ZDo6Y2VyciBoYWQgdG8gYmUKCSAgdXNlZC4gIEFsc28sIGFsbG93IC5cIHRvIHN0YXJ0IHRoZSBjb25maWcgdHlwZQoKMjAwNC0wOC0xMSAxNjozNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Rm9ydHJhbkNvbXBpbGVyLmNtYWtlLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6CgkgIEVOSDogbWlub3IgZm9ydHJhbiBmaXhlcwoKMjAwNC0wOC0xMSAwOTozMSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIENoYW5nZUxvZy5tYW51YWwsIERhcnRDb25maWcuY21ha2UsCgkgIERvY3MvY21ha2UtbW9kZS5lbCwgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VWUzhGaW5kTWFrZS5jbWFrZSwgTW9kdWxlcy9EYXJ0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmREb3h5Z2VuLmNtYWtlLCBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRLREUuY21ha2UsIE1vZHVsZXMvRmluZFF0LmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRTV0lHLmNtYWtlLCBNb2R1bGVzL1VzZVNXSUcuY21ha2UsCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21DVGVzdC5jeHgsIFNvdXJjZS9jbUNUZXN0LmgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eCwKCSAgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuaCwgU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmMsIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuaW4ubCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TdWJkaXJDb21tYW5kLmgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVGFyZ2V0LmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eCwgU291cmNlL2NtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL2NtYWtld2l6YXJkLmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuaCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9QYXRoRGlhbG9nLmNwcCwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYywgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL1Rlc3REcml2ZXIuY3h4LmluLCBUZXN0cy9TaW1wbGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NpbXBsZUluc3RhbGwvaW5zdC5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliNC5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliNC5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvVFNELmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0RfdXRpbHMuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9pbnN0LmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjQuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliNC5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvVGVzdFN1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvVFNELmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvVFNELmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9UZXN0U3ViRGlyL1RTRF91dGlscy5jeHgsCgkgIFV0aWxpdGllcy9Eb3h5Z2VuL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBNb3ZpbmcgbGF0ZXN0IHJlbGVhc2UgYnJhbmNoCgkgIHRvIENNYWtlLTItMC0zLgoKMjAwNC0wOC0wOSAxODozOSAgbWFydGluawoKCSogU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4OiBFTkg6IEFsbG93IHVzZXIgdG8gb3ZlcndyaXRlCgkgIFBsYXRmb3JtcyBmaWxlcwoKMjAwNC0wOC0wOSAxODoyMCAgbWFydGluawoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWljbC5jbWFrZTogRU5IOiBJbml0aWFsIGltcG9ydAoKMjAwNC0wOC0wOSAxNzo0MiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggZm9yIHRyeSBydW4gZmFpbGluZyBvbgoJICBzb21lIGN5Z3dpbiBidWlsZHMuICBBbGxvdyBhIGRyaXZlciBsZXR0ZXIgdG8gc3RhcnQgYSBmdWxsIHBhdGgKCSAgb24gY3lnd2luCgoyMDA0LTA4LTA5IDEzOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogZml4IGJ1ZyB3aGVyZSBjdXN0b20gY29tbWFuZAoJICBnZW5lcmF0ZWQgLmggZmlsZXMgZG8gbm90IGdldCB0aGUgaGVhZGVyX2ZpbGVfb25seSBmbGFnIHNldAoKMjAwNC0wOC0wNiAxNTowNSAgaG9mZm1hbgoKCSogVGVzdHMvRm9ydHJhbi86IENNYWtlTGlzdHMudHh0LCBoZWxsby5mOiBFTkg6IGluaXRpYWwgZm9ydHJhbgoKMjAwNC0wOC0wNiAxNDo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURlZmF1bHRNYWtlUnVsZVZhcmlhYmxlcy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUZvcnRyYW5Db21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUZvcnRyYW5Db21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Rm9ydHJhbkNvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi1nNzcuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vZzc3LmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBFTkg6IGluaXRpYWwgZm9ydHJhbiBzdXBwb3J0CgoyMDA0LTA4LTA1IDExOjU5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiByZW1vdmUgdmVyYm9zZSBRVCBtZXNzYWdlCgoyMDA0LTA4LTA1IDExOjUxICBraW5nCgoJKiBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHg6IEVSUjogUmVwbGFjaW5nIGhhY2sgY2FsbCB0bwoJICBDT05GSUdVUkVfRklMRSBjb21tYW5kIHdpdGggZGlyZWN0IGNhbGwgdG8KCSAgbV9NYWtlZmlsZS0+Q29uZmlndXJlRmlsZS4KCjIwMDQtMDgtMDUgMTA6MjcgIGtpbmcKCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHIzQyNzogTWVyZ2luZyBmaXggdG8KCSAgQ01ha2UgMi4wIHJlbGVhc2UgYnJhbmNoLgoKMjAwNC0wOC0wNSAxMDoxNyAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgQlVHIzQyNzogR2VuZXJhdGVkIG1ha2VmaWxlcyBuZWVkIHRvIGhhdmUgdGFyZ2V0cyB3aXRoIGNhbm9uaWNhbAoJICBuYW1lcyBmb3IgZWFjaCBleGVjdXRhYmxlIGFuZCBsaWJyYXJ5IHRhcmdldCBpbiBvcmRlciBmb3IKCSAgdHJ5LWNvbXBpbGVzIHRvIHdvcmsgY29ycmVjdGx5IHdoZW4gc3BlY2lmeWluZyB0aGUgdGFyZ2V0LgoKMjAwNC0wOC0wNSAwOToyOSAga2luZwoKCSogQ2hhbmdlTG9nLm1hbnVhbCwgU291cmNlL2NtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDogTWVyZ2luZyBmaXhlcyBmcm9tIG1haW4gdHJlZS4gIFNlZQoJICBDaGFuZ2VMb2cubWFudWFsIHNlY3Rpb24gb24gMi4wLjQgZm9yIGRldGFpbHMuCgoyMDA0LTA4LTA1IDA5OjE3ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIGNyYXNoIHdoZW4KCSAgQ01BS0VfQ1hYX1NUQUNLX1NJWkUgaXMgbm90IGRlZmluZWQuCgoyMDA0LTA4LTA0IDE3OjI0ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRml4IGNyYXNoIHdoZW4gYWRkaW5nIGEgY3VzdG9tCgkgIGNvbW1hbmQgdG8gYSBzb3VyY2UgZmlsZSB0aGF0IGNhbm5vdCBiZSBjcmVhdGVkLgoKMjAwNC0wOC0wNCAxNzoyMSAgaG9mZm1hbgoKCSogU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHg6IEVOSDogYWxsb3cgZGVidWcgb2YgdHJ5cnVuCgoyMDA0LTA4LTA0IDE2OjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5oLCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmgsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21NYWtlZmlsZS5jeHg6IEJVRzoKCSAgQ01BS0VfVFJZX0NPTVBJTEVfQ09ORklHVVJBVElPTiBzaG91bGQgYmUgb2J0YWluZWQgZnJvbSB0aGUKCSAgY21NYWtlZmlsZSBpbnN0YW5jZSBmb3IgdGhlIGxpc3RmaWxlIGNvbnRhaW5pbmcgdGhlIFRSWV9DT01QSUxFCgkgIGNhbGwsIG5vdCB0aGUgdG9wIGxldmVsIGxpc3RmaWxlLgoKMjAwNC0wOC0wNCAxNDozNCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFUlI6IFJlbW92ZWQgZHVwbGljYXRlIGRlZmF1bHQgYXJndW1lbnRzLgoKMjAwNC0wOC0wNCAxMzowNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21ha2UuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IGZpeCBpbmNvcnJlY3QKCSAgc2VsZWN0aW9uIG9mIHZpc3VhbCBzdHVkaW8gZ2VuZXJhdG9yCgoyMDA0LTA4LTA0IDEwOjQ1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuY3h4LCBjbUZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsIGNtTWFjcm9Db21tYW5kLmN4eCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBzcGVjaWFsCgkgIHZhcmlhYmxlcyBDTUFLRV9DVVJSRU5UX0xJU1RfRklMRSBhbmQgQ01BS0VfQ1VSUkVOVF9MSVNUX0xJTkUKCSAgdGhhdCBldmFsdWF0ZSB0byB0aGUgZmlsZSBuYW1lIGFuZCBsaW5lIG51bWJlciBpbiB3aGljaCB0aGV5CgkgIGFwcGVhci4gIFRoaXMgaW1wbGVtZW50cyB0aGUgZmVhdHVyZSByZXF1ZXN0IGZyb20gYnVnIDEwMTIuCgoyMDA0LTA4LTA0IDEwOjAwICBraW5nCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQlVHOiBGaXhlZAoJICB0eXBvIGluIG5hbWUgb2YgTVNWQyA4IHJlZ2lzdHJ5IGtleS4KCjIwMDQtMDgtMDQgMDg6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEVSUjogRml4IHdhcm5pbmdzIGFuZCBtZW1vcnkgbGVhawoKMjAwNC0wOC0wMyAxMDoyMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IEVOSDogY3JlYXRlIGEKCSAgc2VydmVyIHRoYXQgZG9lcyBub3QgdXNlIHZ0a1BWQXBwbGljYXRpb24gb3IgdGNsIHdyYXBwaW5nLiAgTW92ZQoJICBzZXZlcmFsIGNsYXNzZXMgZnJvbSBHVUkvQ2xpZW50IHRvIFNlcnZlcnMvRmlsdGVycy4gUmVtb3ZlIHVzZSBvZgoJICBQQVJBVklFV19ORVdfU09VUkNFX09SR0FOSVpBVElPTiBkZWZpbmUuCgoyMDA0LTA4LTAzIDA4OjEzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmg6IEJVRzogV2hlbiByZWd1bGFyCgkgIGV4cHJlc3Npb24gZmFpbGVzIHRvIGNvbXBpbGUsIHByb2R1Y2UgZXJyb3I6IEZpeGVzIHBhcnQgb2YgQnVnCgkgICMxMDI1IC0gQ01ha2Ugc2lsZW50bHkgaWdub3JlcyByZWd1bGFyIGV4cHJlc3Npb24gZmFpbHVyZQoKMjAwNC0wOC0wMiAwODozNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IHRoZXNlIGZsYWdzIGRvIG5vdCB0YWtlIGFyZ3VtZW50cywgc28KCSAgdGhleSBkbyBub3QgcmVhbGx5IG5lZWQgdG8gY2hlY2sgaWYgdGhleSBhcmUgbGFzdC4gRml4ZXMgQnVnCgkgICMxMDIwIC0gY3Rlc3QgZG9lc24ndCBwYXJzZSBpdHMgb3B0aW9ucyBjb3JyZWN0bHkKCjIwMDQtMDctMzAgMTU6NTAgIGFuZHkKCgkqIFNvdXJjZS86IGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaDogRU5IOiBTaW5jZSBpbnN0YWxsIHdvcmtzIG9uIFdpbmRvd3MKCSAgdG9vLCByZW1vdmUgdGhlIFVOSVgKCjIwMDQtMDctMzAgMDk6NDIgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBjaGFuZ2UKCSAgdmVyc2lvbiB0byAyLjAuMwoKMjAwNC0wNy0yOSAxNzoxNSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRU5IOiBBZGQgc29tZSBkb2N1bWVudGF0aW9uLCBhbmQKCSAgbWFrZSBzdXJlIHRoYXQgdGhlIGZsYWcgZ2l2ZW4gdG8gLUQgLVQgb3IgLU0gaXMgdmFsaWQuIEZpeGVzIEJ1ZwoJICAjMTAxNSAtIERvY3VtZW50YXRpb246IGN0ZXN0IC1ECgoyMDA0LTA3LTI5IDE3OjA3ICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogQWRkIE1lbUNoZWNrIHRvIHRoZSBsaXN0IG9mIE1ha2UKCSAgdGFyZ2V0cy4gQ2xvc2VzIEJ1ZyAjMTAxNiAtIFRlc3RpbmcgdGFyZ2V0cyBpbiBNYWtlZmlsZQoKMjAwNC0wNy0yOSAxNToyNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEFkZCBBSVggbGlua2VyIGVycm9yCgoyMDA0LTA3LTI5IDE0OjQ1ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsLCBNb2R1bGVzL0RhcnQuY21ha2UsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtQ1Rlc3QuaCwgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4LCBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OgoJICBtZXJnZXMgZnJvbSBtYWluIHRyZWUKCjIwMDQtMDctMjkgMTQ6MTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21ha2V3aXphcmQuaDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsCgkgIGNvbW1lbnQgc3BlbGxpbmcgZml4ZXMKCjIwMDQtMDctMjkgMTE6NDYgIGtpbmcKCgkqIENoYW5nZUxvZy5tYW51YWwsIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBCVUc6IEZpeGVkIGNyYXNoIHdoZW4KCSAgb3B0aW1pemVkL2RlYnVnIGFyZ3VtZW50IHRvIGEgbGluay1saWJyYXJpZXMgY29tbWFuZCBpcyBub3QKCSAgZm9sbG93ZWQgYnkgYSB2YWx1ZS4KCjIwMDQtMDctMjkgMTE6NDMgIGtpbmcKCgkqIFNvdXJjZS86IGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogQlVHOiBGaXhlZCBjcmFzaCB3aGVuIG9wdGltaXplZC9kZWJ1ZwoJICBhcmd1bWVudCBpcyBub3QgZm9sbG93ZWQgYnkgYSB2YWx1ZS4KCjIwMDQtMDctMjkgMTE6MTEgIGFuZHkKCgkqIFRlc3RzL1gxMS9DTWFrZUxpc3RzLnR4dDogRVJSOiBGaXggdGVzdCB0byB1c2UgcG9zdCBDTUFLRV9YX0xJQlMKCSAgdmFyaWFibGVzCgoyMDA0LTA3LTI5IDEwOjIyICBraW5nCgoJKiBDaGFuZ2VMb2cubWFudWFsOiBFTkg6IEFkZGVkIGNoYW5nZXMgZm9yCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oIGFuZCBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oCgoyMDA0LTA3LTI4IDA4OjEyICBraW5nCgoJKiBTb3VyY2UvOiBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oOiBFTkg6IEFkZGVkIGRvY3VtZW50YXRpb24KCSAgb2YgTE9DQVRJT04gdGFyZ2V0IHByb3BlcnR5LgoKMjAwNC0wNy0yNyAxMzo0MCAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyA5NzEsIHBpY2sgYSBiZXR0ZXIgZ2VuZXJhdG9yCgkgIGZyb20gdGhlIGNvbW1hbmQgbGluZQoKMjAwNC0wNy0yNyAwODo1MiAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBET0M6IEZpeCB0eXBvCgoyMDA0LTA3LTI3IDA4OjQ5ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEJVRzogQWxsb3cgc3VibWl0IGFuZCB0cmlnZ2VyIHVybAoJICB0byBjb250YWluID8uIEZpeGVzIEJ1ZyAjOTk3IC0gQ1Rlc3QgY2Fubm90IGhhbmRsZSBVUkxzIHdoaWNoCgkgIGNvbnRhaW4gYSAiPyIKCjIwMDQtMDctMjcgMDg6NDggIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBBbGxvdyBwcm9qZWN0IHRvIG92ZXJ3cml0ZQoJICBDTUFLRV9TWVNURU1fTkFNRSBwYXJ0IG9mIGRlZmF1bHQgQlVJTEROQU1FCgoyMDA0LTA3LTI2IDE2OjU5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21ha2V3aXphcmQuaDoKCSAgQlVHOiBmaXggZm9yIGJ1ZyA5OTgsIGZpeCBzcGVsbGluZyBlcnJvcnMKCjIwMDQtMDctMjYgMTY6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBTdXBwb3J0IFRocmVhZGluZyBQcm9ibGVtIGluIG1lbWNoZWNrCgoyMDA0LTA3LTI2IDE1OjUyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBtYXhpbXVtIHNpemUgb2YgdGVzdAoJICBvdXRwdXQKCjIwMDQtMDctMjQgMTk6NTggIGtpbmcKCgkqIFNvdXJjZS86IGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oOiBFTkg6IEFkZGVkIHdhcm5pbmcgYWJvdXQKCSAgdXNpbmcgdGhpcyBjb21tYW5kIHRvIGF2b2lkIGxpc3Rpbmcgc291cmNlcyBmb3IgYSBsaWJyYXJ5IGJ5CgkgIGhhbmQuICBJdCBpcyBzdXBwb3NlZCB0byBiZSB1c2VkIG9ubHkgZm9yIFRlbXBsYXRlcyBkaXJlY3Rvcmllcy4KCjIwMDQtMDctMjIgMTE6MjAgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIE1vZHVsZXMvRmluZEZMVEsuY21ha2UsIE1vZHVsZXMvRmluZFF0LmNtYWtlLAoJICBTb3VyY2UvY21DVGVzdC5jeHgsIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LCBTb3VyY2UvY21ha2UuY3h4LAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvVGVzdERyaXZlci5jeHguaW46IG1lcmdlIGZyb20gbWFpbiB0cmVlCgoyMDA0LTA3LTIyIDEwOjU5ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogRmluZEZMVEsuY21ha2UsIEZpbmRRdC5jbWFrZTogQlVHOiBwdXQgYmFjayBmbGFncyB0bwoJICBtYWludGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eQoKMjAwNC0wNy0yMCAxNjoxOCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogQlVHOiBFbmNvZGUgY3VycmVudCB0aW1lIHNvIHRoYXQKCSAgb24gc29tZSBpbnRlcm5hdGlvbmFsIGNvbXB1dGVycyB4c2x0IHdpbGwgbm90IGJyZWFrLiBBbHNvLCBmb3IKCSAgY29udGludW91cywgZG8gbm90IHJlcGVhdCBpZiB0aGVyZSB3ZXJlIGxvY2FsbHkgbW9kaWZpZWQgZmlsZXMgb3IKCSAgY29uZmxpY3QsIGJ1dCBvbmx5IHdoZW4gdGhpbmdzIGFjdHVhbGx5IHVwZGF0ZQoKMjAwNC0wNy0yMCAxMTowOSAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBJZiBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGlzCgkgIHRoZSBzYW1lIGZpbGUsIHRoZW4gZG8gbm90IGNvcHkgZmlsZSBhbHdheXMKCjIwMDQtMDctMjAgMTE6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBXaGVuIHJ1bm5pbmcgY21ha2Ugd2l0aCBQcmVMb2FkIG1ha2UKCSAgc3VyZSBDTUFLRV9DVVJSRU5UX1NPVVJDRS9CSU5BUllfRElSIHdvcmtzCgoyMDA0LTA3LTIwIDExOjAyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBFTkg6IHJlbW92ZSBkZWxldGVzCgoyMDA0LTA3LTE5IDEzOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBCVUc6IGZpeCBmb3IgOTgxIGN1cnNvcgoJICByZXR1cm5zIHRvIGNvcnJlY3QgcGxhY2UgaW4gaGVscCBzY3JlZW4KCjIwMDQtMDctMTkgMTM6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4OiBidWcgZml4IGZvciA5ODYKCjIwMDQtMDctMTYgMTY6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogYWRkIGEgbWVzc2FnZSBhdCB0aGUgZW5kIG9mIHRoZSBjbWFrZSBydW4KCSAgdGVsbGluZyB0aGUgdXNlciB3aGVyZSB0aGluZ3Mgd2VyZSB3cml0dGVuLgoKMjAwNC0wNy0xNiAxNToxOCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL1Rlc3REcml2ZXIuY3h4LmluOiBtYWtlIHN1cmUgdGVzdHMgZmx1c2ggb3V0cHV0CgoyMDA0LTA3LTE1IDE0OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IHNvcnQgZmxhZ3MsIGFuZAoJICBmaXggb3JkZXIgYW5kIGNhc2UgcHJvYmxlbXMgYW5kIGFkZCBhIGZldyBtb3JlCgoyMDA0LTA3LTE1IDEzOjUzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGJldHRlciBlcnJvciB3YXJuaW5nIGV4Y2VwdGlvbnMKCjIwMDQtMDctMTQgMTk6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA0LTA3LTE0IDE2OjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IEVOSDogdXNlIGEgbWFwIHRvIGZpbGwgb3V0CgkgIGZsYWdzLCBhbmQga2VlcCBjb21tYW5kIGxpbmUgY29uc2lzdGVudCB3aXRoIHRoZSBHVUkKCjIwMDQtMDctMTQgMTY6MDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEZpeCBicm93c2UgYnV0dG9uIHRvIHVzZQoJICBjb3JyZWN0IHdpbmRvd3Mgc3R5bGUgaW5pdGlhbCBkaXJlY3RvcnkKCjIwMDQtMDctMTMgMTc6MzMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBCVUc6IEZpeGVkIG9mZi1ieS1vbmUgZXJyb3IgaW4gdGVzdDYKCSAgZnVuY3Rpb24uCgoyMDA0LTA3LTEzIDE3OjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiB0ZXN0UHJvY2Vzcy5jLCBDTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBydW5hd2F5IG91dHB1dC4KCjIwMDQtMDctMTMgMTY6NTAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBSZS1hcnJhbmdlZCBoYW5kbGluZyBvZiB0aGUgdHdvCgkgIHRocmVhZHMgcGVyIHBpcGUgdG8gaW1wcm92ZSByZWFkYWJpbGl0eSBvZiBjb2RlLgoKMjAwNC0wNy0xMyAxNjoyMyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IEZpeCBmb3IgcmVhZCBwaXBlIHdha2V1cCB3aGVuCgkgIGNoaWxkIGlzIHdyaXRpbmcgYWxvdCBvZiBkYXRhIGFuZCBtYXkgZmlsbCB0aGUgcGlwZSBidWZmZXIgYmVmb3JlCgkgIFdyaXRlRmlsZSBpcyBjYWxsZWQuCgoyMDA0LTA3LTEzIDExOjA2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBzdWJtaXQgZWxhcHNlZCB0aW1lcyBhcyB3ZWxsCgoyMDA0LTA3LTEzIDEwOjAzICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogQlVHOiBUaGVzZSByZWd1bGFyIGV4cHJlc3Npb25zIHdlcmUgd3JvbmcKCSAgYmVjYXVzZSBcXHQgZG9lcyBub3QgbWF0Y2ggdGFiLiBBbHNvLCB0aGlzIGZpeCBwcmV2ZW50cyB3aG9sZQoJICBmaWxlIHRvIGJlIGR1bXBlZCB0byB0aGUgY2FjaGUKCjIwMDQtMDctMDkgMTU6MzggIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBtZXJnZSBpbiBmaXhlcyBmcm9tIG5ldW5kb3JmIGF0IGtkZSBvcmcsCgkgIGJ1ZyA4NjkKCjIwMDQtMDctMDkgMTQ6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHg6IEJVRzogZml4CgkgIHNwZWxsaW5nIGVycm9ycyBCVUcgOTUyCgoyMDA0LTA3LTA5IDEzOjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZURvdE5ldFN5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogQlVHOiByZW1vdmUgdW51c2VkCgkgIHZhcmlhYmxlIENNQUtFX09CSkVDVF9GSUxFX1NVRkZJWCBmcm9tIGNtYWtlCgoyMDA0LTA3LTA5IDExOjQ5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRVJSOiBGaXhlZCBtaXNzaW5nIHJldHVybiB3YXJuaW5nLgoJICBDb2RlIHdhcyBub3QgcmVhY2hhYmxlIGFueXdheS4KCjIwMDQtMDctMDkgMDk6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiByZW1vdmUgZG91YmxlCgkgIGluY2x1ZGUgZmxhZ3MgZm9yIHJjIHJlc291Y2UgY29tcGlsZXMKCjIwMDQtMDctMDcgMTg6MTUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBBZGRlZCB3aW5kb3dzIGltcGxlbWVudGF0aW9uIG9mCgkgIERpc293bi9EZXRhY2guCgoyMDA0LTA3LTA3IDE3OjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBEbyBub3QgZGlzb3duIGlmIHByb2Nlc3MgaGFzCgkgIGFscmVhZHkgYmVlbiBraWxsZWQgb3IgdGhlIHRpbWVvdXQgZXhwaXJlZC4gIEFsc28gbmVlZCB0byBjYWxsCgkgIGt3c3lzUHJvY2Vzc0NsZWFudXAgdG8gZGlzb3duLgoKMjAwNC0wNy0wNyAxNzoyNyAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOgoJICBBZGRlZCBrd3N5c1Byb2Nlc3NfRGlzb3duIGFuIGt3c3lzUHJvY2Vzc19PcHRpb25fRGV0YWNoIHRvIGFsbG93CgkgIGRldGFjaGVkIHByb2Nlc3NlcyB0byBiZSBjcmVhdGVkLiAgQ3VycmVudGx5IGltcGxlbWVudGVkIG9ubHkgb24KCSAgVU5JWC4KCjIwMDQtMDctMDcgMTc6MDkgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy5tYW51YWwsIERhcnRDb25maWcuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VWUzhGaW5kTWFrZS5jbWFrZSwgTW9kdWxlcy9GaW5kU1dJRy5jbWFrZSwKCSAgTW9kdWxlcy9Vc2VTV0lHLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtQ1Rlc3QuaCwgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVFUV3JhcFVJQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmMsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvaW5zdC5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliNC5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliNC5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvVFNELmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0RfdXRpbHMuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9pbnN0LmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjQuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliNC5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvVGVzdFN1YkRpci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvVFNELmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvVFNELmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9UZXN0U3ViRGlyL1RTRF91dGlscy5jeHg6IG1lcmdlIGZyb20gbWFpbgoJICB0cmVlLCBzZWUgQ2hhbmdlTG9nLm1hbnVhbCBmb3IgY2hhbmdlcwoKMjAwNC0wNy0wNyAxNjowOSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IExhc3RNZW1DaGVjayBpcyBub3QgcmVhbGx5IGFuIFhNTCBmaWxlCgoyMDA0LTA3LTA3IDEzOjAzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRVJSOiBVc2luZyBLV1NZU1BFX1BJUEVfQlVGRkVSX1NJWkUKCSAgaW4gcGxhY2Ugb2Ygc2VwYXJhdGUgYnVmZmVyU2l6ZSBjb25zdGFudCBmb3IgY29uc2lzdGVuY3kuCgoyMDA0LTA3LTA1IDEyOjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVlM4RmluZE1ha2UuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW84R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvOEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgVkNFeHByZXNzIDIwMDUKCjIwMDQtMDctMDQgMDA6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBubyBjKysgY29tbWVudHMgaW4gYwoKMjAwNC0wNy0wMyAxMjowMCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IGZpeCBmb3IgaHAgYnVpbGQKCjIwMDQtMDctMDIgMTc6MzkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBOZWVkIGEgQy1vbmx5IGxpYnJhcnkgZm9yIEMKCSAgdGVzdHMuCgoyMDA0LTA3LTAyIDE2OjM5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHIzM5MjogSW1wbGVtZW50YXRpb24gb2YgcHJvY2VzcwoJICB0cmVlIGtpbGxpbmcgZm9yIHN5c3RlbXMgd2l0aCAvcHJvYyBmaWxlc3lzdGVtLgoKMjAwNC0wNy0wMiAxNjoyOSAga2luZwoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogQlVHIzk2OTogUGFydGlhbGx5IGZpeGVkIGJ5IGF0CgkgIGxlYXN0IHVzaW5nIHRoZSB0aW1lb3V0IGZvciB0aGUgaW5kaXZpZHVhbCBjYWxscyB0bwoJICBSdW5TaW5nbGVDb21tYW5kIGZyb20gd2l0aGluIHRoZSBpbm5lciBjdGVzdCBpbnN0YW5jZS4gIFRoaXMKCSAgc2hvdWxkIGJlIG1vZGlmaWVkIHRvIGluY3JlbWVudGFsbHkgYWRqdXN0IHJlbWFpbmluZyB0aW1lLgoKMjAwNC0wNy0wMiAxNjoyNyAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBNYWRlCgkgIFJ1blNpbmdsZUNvbW1hbmQgdGFrZSBhIGRvdWJsZSBhcyBpdHMgdGltZW91dCBsZW5ndGguCgoyMDA0LTA3LTAyIDE0OjA5ICBraW5nCgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEJVRzogRml4ZWQgZ2VuZXJhdGlvbiBvZiBpbnN0YWxsYXRpb24KCSAgbWFuaWZlc3QgdG8gYWNjb3VudCBmb3IgbGlicmFyeSB2ZXJzaW9uaW5nIHN5bWxpbmtzLglBbHNvCgkgIHJlbW92ZWQgREVTVERJUiBwcmVmaXggZnJvbSBnZW5lcmF0ZWQgbWFuaWZlc3QuCgoyMDA0LTA3LTAyIDE0OjA4ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogaW5zdGFsbF9tYW5pZmVzdC50eHQgc2hvdWxkIGJlCgkgIG92ZXJ3cml0dGVuIGVhY2ggdGltZSB0aGUgaW5zdGFsbCBpcyBydW4uCgoyMDA0LTA3LTAyIDEzOjM5ICBraW5nCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRVJSOiBSZW1vdmVkIGRlYnVnZ2luZyBjb2RlIGZyb20KCSAgdGVzdC4KCjIwMDQtMDctMDIgMTE6NTEgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogQlVHOiBJZiB0aGUgZGVzdGluYXRpb24gaXMgdGhlIHNhbWUgYXMKCSAgc291cmNlLCBkbyBub3QgY29weSBmaWxlLiBGaXhlcyBCdWcgIzk1NiAtIG1ha2UgaW5zdGFsbCBicm9rZW4KCjIwMDQtMDctMDIgMDk6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogQWxzbyByZWFkIFByZUxvYWQuY21ha2UgZnJvbSB0aGUgYmluYXJ5CgkgIHRyZWUKCjIwMDQtMDYtMzAgMTE6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogYWRkCgkgIENNQUtFX0ZJTEVfUEFUSCwgQ01BS0VfUFJPR1JBTV9QQVRILCBDTUFLRV9MSUJSQVJZX1BBVEgsIGFuZAoJICBzZWFyY2ggdGhlbSBmaXJzdCwgUEFUSCBzZWNvbmQsIGFuZCBsYXN0IHRoZSBwYXRocyBsaXN0ZWQgaW4gdGhlCgkgIEZJTkQgY2FsbAoKMjAwNC0wNi0zMCAwODo1OSAgYW5keQoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBFUlI6IEZpeCB0eXBvCgoyMDA0LTA2LTI5IDE2OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuY3h4OiBFTkg6IHJlbW92ZSBRVF9XUkFQX1VJIGZsYWcKCjIwMDQtMDYtMjkgMTA6MjIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFNXSUcuY21ha2U6IEJVRzogbWFrZSBzdXJlIGlmIHN3aWcgaXMgZm91bmQsIHdlIGtub3cKCSAgaXQgaXMgZm91bmQKCjIwMDQtMDYtMjkgMDk6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEJldHRlciBoYW5kbGluZyBvZgoJICBkZWJ1ZyBwb3N0Zml4IGFuZCBmaXggdGhlIHRlc3QKCjIwMDQtMDYtMjggMTY6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFUlI6IEZpeCB2aXN1YWwgc3R1ZGlvCgkgIGluc3RhbGwKCjIwMDQtMDYtMjggMTQ6MzkgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL2luc3QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9pbnN0LmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWI0LmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWI0LmgsIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9saWI0LmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjQuaDogQlVHOiBJbXBsZW1lbnQgaW5zdGFsbGluZyBvZiBzaGFyZWQKCSAgbGlicmFyeSB2ZXJzaW9uaW5nIGFuZCBhZGQgdGVzdCBmb3IgdGhlIHdob2xlIHRoaW5nCgoyMDA0LTA2LTI4IDExOjE0ICBhbmR5CgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEJVRzogQWRkIG1vcmUgY29tbWVudHMgYW5kIGZpeAoJICBDTUFLRV9TV0lHX0ZMQUdTCgoyMDA0LTA2LTI4IDA5OjA4ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRTV0lHLmNtYWtlOiBCVUc6IFJlcGxhY2UgTUFUQ0hFUyB3aXRoIFNUUkVRVUFMIGZvcgoJICBiZXR0ZXIgY2hlY2tpbmcsIGJldHRlciBjaGVja2luZyBmb3IgZXhpc3RlbmNlIG9mIHN3aWcgZGlyZWN0b3J5LAoJICB2ZXJpZnkgaWYgcmVxdWlyZWQgZmxhZyB3YXMgc2V0LCBzdXBwb3J0IGZlZG9yYSdzIGxvY2F0aW9uIG9mCgkgIHN3aWcuIEZpeGVzIEJ1ZyAjOTU1IC0gU3dpZyBvbiBmZWRvcmEgYW5kIEJ1ZyAjOTU0IC0KCSAgRklORF9QQUNLQUdFKFNXSUcgUkVRVUlSRUQpCgoyMDA0LTA2LTI2IDA4OjQwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEJVRzogU1dJR19GTEFHUyB3YXMgaWdub3JlZCBieSB0aGUgYWRkCgkgIHN3aWcgc291cmNlIHRvIG1vZHVsZSBjb21tYW5kCgoyMDA0LTA2LTI1IDE0OjA0ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBCdWlsZCBleHBhdCBhcyBhIHBhcnQgb2YgZGVmYXVsdCBidWlsZAoKMjAwNC0wNi0yNSAxNDowNCAgYW5keQoKCSogVXRpbGl0aWVzL2NtZXhwYXQvOiAuTm9EYXJ0Q292ZXJhZ2UsIENNYWtlTGlzdHMudHh0LCBDT1BZSU5HLAoJICBhc2NpaS5oLCBhc2NpaXRhYi5oLCBjbV9leHBhdF9tYW5nbGUuaCwgZXhwYXQuaCwKCSAgZXhwYXRDb25maWcuaC5pbiwgZXhwYXREbGxDb25maWcuaC5pbiwgaWFzY2lpdGFiLmgsIGxhdGluMXRhYi5oLAoJICBuYW1ldGFiLmgsIHV0Zjh0YWIuaCwgeG1scGFyc2UuYywgeG1scm9sZS5jLCB4bWxyb2xlLmgsIHhtbHRvay5jLAoJICB4bWx0b2suaCwgeG1sdG9rX2ltcGwuYywgeG1sdG9rX2ltcGwuaCwgeG1sdG9rX25zLmM6IEVOSDogSW5pdGlhbAoJICBpbXBvcnQgb2YgZXhwYXQKCjIwMDQtMDYtMjQgMDk6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcgb24KCSAgYm9ybGFuZAoKMjAwNC0wNi0yNCAwODo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eDogQlVHOiBleGVjIHByb2dyYW0gc2hvdWxkIG5vdAoJICBmYWlsIGlmIGl0IGNhbiBub3QgZXhlYyB0aGUgcHJvZ3JhbSwgYnV0IHNob3VsZCBvbmx5IHNldCB0aGUKCSAgcmV0dXJuIHZhbHVlIHRvIC0xIGFuZCBzZXQgdGhlIG91dHB1dCB0byB0aGUgcmVhc29uIGZvciB0aGUKCSAgZmFpbHVyZS4KCjIwMDQtMDYtMjMgMTY6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaCwgY21UcnlSdW5Db21tYW5kLmN4eCwKCSAgY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBCVUc6IGZpeCBzcGFjZXMgaW4gcGF0aCBvbiBtaW5ndywKCSAgYW5kIGNoYW5nZSBFWEVDX1BST0dSQU0gdG8gcmV0dXJuIGZhbHNlIHdoZW4gaXQgZG9lcyBub3QgcnVuLAoJICBhbHNvIGRvIG5vdCBjb252ZXJ0IHRoZSBkaXJlY3RvcnkgdG8gYW4gb3V0cHV0IHBhdGggZm9yCgkgIEVYRUNfUFJPR1JBTSBhcyB0aGlzIGlzIGRvbmUgYnkgdGhlIHByb2Nlc3MgZXhlY3V0aW9uLCBhbmQgZG9pbmcKCSAgaXQgdHdpY2UgbWF5IGNhdXNlIHRyb3VibGUgb24gc29tZSBzaGVsbHMuCgoyMDA0LTA2LTIzIDE2OjE1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEMrKyBjb21waWxlciBpcyBub3Qgc2V0IGZvciBjCgkgIG9ubHkgcHJvamVjdHMKCjIwMDQtMDYtMjMgMTA6MTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oOiBFTkg6IEFkZGluZyBNT0RJRklFRCBwcm9wZXJ0eSB0bwoJICBjYWNoZSB2YWx1ZXMgdGhhdCBoYXZlIGJlZW4gY2hhbmdlZCBieSB0aGUgdXNlci4KCjIwMDQtMDYtMjIgMTc6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggc3BhY2VzIGluIHBhdGggd2l0aCBtaW5ndyBhbmQKCSAgY3VzdG9tIGNvbW1hbmRzCgoyMDA0LTA2LTIxIDEyOjU5ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsOiB1cGRhdGUgY2hhbmdlcyBmb3IgcmVsZWFzZSAyLjAuMgoKMjAwNC0wNi0yMSAxMjo0OCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IGNoYW5nZQoJICB2ZXJzaW9uIG9uIGJyYW5jaAoKMjAwNC0wNi0yMSAxMjo0OCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IGNoYW5nZSBtaW5pbXVtIGNtYWtlCgoyMDA0LTA2LTE4IDE1OjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IG1lcmdlIGZyb20gbWFpbiB0cmVlLAoJICByZW1vdmUgYXV0b21hdGljIC1JIGZvciBzb3VyY2UKCjIwMDQtMDYtMTggMTU6NDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIGZpeCBkb2NzCgoyMDA0LTA2LTE4IDE1OjQ2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwKCSAgU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eDoKCSAgbWVyZ2UgZnJvbSBtYWluIHRyZWUsIHJlbW92ZSB1c2VsZXNzIHZhcmlhYmxlcwoKMjAwNC0wNi0xOCAxNToxNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEFkZGVkIHNwZWNpYWwgaGFjawoJICBmb3IgVlRLIDQuMC00LjQgdG8gcmUtZW5hYmxlIGF1dG9tYXRpYyBhZGRpdGlvbiBvZiBjdXJyZW50IHNvdXJjZQoJICBkaXJlY3RvcnkgdG8gLUkgcGF0aC4KCjIwMDQtMDYtMTggMTU6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBBZGRlZCBzcGVjaWFsIGhhY2sKCSAgZm9yIFZUSyA0LjAtNC40IHRvIHJlLWVuYWJsZSBhdXRvbWF0aWMgYWRkaXRpb24gb2YgY3VycmVudCBzb3VyY2UKCSAgZGlyZWN0b3J5IHRvIC1JIHBhdGguCgoyMDA0LTA2LTE4IDEzOjA0ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byBwcmVzZXJ2ZQoJICBhdXRvbWF0aWMgYWRkaXRpb24gb2Ygc291cmNlIHRyZWUgdG8gLUkgcGF0aCBpZgoJICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSBpcyBzZXQgdG8gYmVsb3cgMi4wLgoKMjAwNC0wNi0xOCAxMzowMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFUlI6IEZpeGVkIHR5cG8uCgoyMDA0LTA2LTE4IDEyOjU2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogTmVlZCB0byBwcmVzZXJ2ZQoJICBhdXRvbWF0aWMgYWRkaXRpb24gb2Ygc291cmNlIHRyZWUgdG8gLUkgcGF0aCBpZgoJICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSBpcyBzZXQgdG8gYmVsb3cgMi4wLgoKMjAwNC0wNi0xOCAxMDo1NCAga2luZwoKCSogRG9jcy86IGNtYWtlLW1vZGUuZWw6IEJVRzogRml4ZWQgcGFyc2luZyBvZiB1bnF1b3RlZCBhcmd1bWVudHMgdG8KCSAgYWxsb3cgZG91YmxlLXF1b3RlcyB3aXRoaW4gdGhlIGFyZ3VtZW50LgoKMjAwNC0wNi0xOCAxMDo1MSAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5pbi5sOiBCVUc6IEZpeGVkCgkgIHBhcnNpbmcgb2YgdW5xdW90ZWQgYXJndW1lbnRzIHRvIGFsbG93IGRvdWJsZS1xdW90ZXMgd2l0aGluIHRoZQoJICBhcmd1bWVudC4KCjIwMDQtMDYtMTYgMDk6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaDogY2xlYW4gdXAgZG9jdW1lbnRhdGlvbgoKMjAwNC0wNi0xNiAwOTo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eCwKCSAgTW9kdWxlcy9GaW5kRkxUSy5jbWFrZSwgTW9kdWxlcy9GaW5kUXQuY21ha2U6IGNsZWFuIHVwIGNvbW1hbmRzCgkgIHNvIHRoZXkgZG9uJ3QgbmVlZCBleHRyYSB2YXJpYWJsZQoKMjAwNC0wNi0xNSAxMTo1MiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBSZW1vdmluZyBhdXRvbWF0aWMKCSAgYWRkaXRpb24gb2YgYSAtSSBwYXRoIGZvciB0aGUgY3VycmVudCBzb3VyY2UgZGlyZWN0b3J5LiAgVGhpcyBpcwoJICBub3QgY29uc2lzdGVudCB3aXRoIHRoZSBWaXN1YWwgU3R1ZGlvIGdlbmVyYXRvcnMgd2hpY2ggZG8gbm90CgkgIHByb3ZpZGUgdGhpcyBwYXRoLiAgSXQgc2hvdWxkIG5vdCBiZSBhZGRlZCBhbnl3YXkgYmVjYXVzZSBpdCBpcwoJICBhZGRpbmcgYW4gaW5jbHVkZSBwYXRoIG5vdCByZXF1ZXN0ZWQgYnkgdGhlIENNYWtlTGlzdHMudHh0IGNvZGUuCgkgIFRoZSBjb2RlIEknbSByZW1vdmluZyB3YXMgb3JpZ2luYWxseSBhZGRlZCBpbiByZXZpc2lvbiAxLjE3IG9mCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCBhcyBhIHBhcnQgb2Ygc2V2ZXJhbCBvdGhlciBjaGFuZ2VzCgkgIGFuZCBoYXMgYSBjb21taXQgbG9nIGVudHJ5IG9mCgoJICAgICJzb21lIGJ1ZyBmaXhlcyIKCgkgIEl0IHdhcyBwcm9wYWdhdGVkIGZyb20gdGhlaXIgdG8gY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHguCgkgICBTaW5jZSBhbGwgb3VyIHByb2plY3RzIGJ1aWxkIGluIHRoZSBWUyBJREUgd2l0aG91dCB0aGlzIGluY2x1ZGUKCSAgcGF0aCwgaXQgc2hvdWxkIG5vdCBiZSBuZWVkZWQuICBVc2VycyBjYW4gZWFzaWx5IGZpeCBwcm9ibGVtcwoJICBjYXVzZWQgYnkgdGhpcyBieSBhZGRpbmcKCgkgICAgSU5DTFVERV9ESVJFQ1RPUklFUygke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0pCgoJICB0byB0aGVpciBDTWFrZUxpc3RzLnR4dCBjb2RlLiAgVGhpcyB3YXMgb2Z0ZW4gbmVjZXNzYXJ5CgkgIHByZXZpb3VzbHkgd2hlbiBhIHByb2plY3Qgd2FzIG9yaWdpbmFsbHkgd3JpdHRlbiBvbiBhIFVuaXggc3lzdGVtCgkgIGFuZCB0aGVuIGJ1aWx0IHdpdGggVmlzdWFsIFN0dWRpby4KCjIwMDQtMDYtMTUgMDg6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZml4CgkgIEdldEN1cnJlbnREaXJlY3RvcnkgcHJvYmxlbQoKMjAwNC0wNi0xNSAwODozMCAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IGZpeCBpbmNsdWRlIG9yZGVyIGJlY2F1c2Ugb2YKCSAgR2V0Q3VycmVudERpcmVjdG9yeSBkZWZpbmUgYW5kIHdpbmRvd3MuaCBwcm9ibGVtCgoyMDA0LTA2LTE0IDEzOjI1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRLREUuY21ha2U6IG1lcmdlIGZyb20gbWFpbiB0cmVlLCBuZXcgbW9kdWxlCgoyMDA0LTA2LTE0IDEyOjI5ICBob2ZmbWFuCgoJKiBVdGlsaXRpZXMvRG94eWdlbi9DTWFrZUxpc3RzLnR4dDogbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDQtMDYtMTQgMTI6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsCgkgIGFkZCBTVFJHUkVBVEVSCgoyMDA0LTA2LTE0IDEyOjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IG1lcmdlIGZyb20gbWFpbiB0cmVlLCBmaXggYm9vdHN0cmFwIG9uIG1hYwoKMjAwNC0wNi0xNCAxMjoyNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIGxvb2sgZm9yIGJvdGggRmwuaAoJICBhbmQgRmwuSAoKMjAwNC0wNi0xNCAxMjoyMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwKCSAgdXNlIGNtYWtlIHRvIGluc3RhbGwgaXRzZWxmLCB3aGVuIGJ1aWxkaW5nIGNtYWtlCgoyMDA0LTA2LTE0IDEyOjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZml4IGNvbXBvdW5kIGlmCgkgIGNyYXNoIG9uIHVuaXgKCjIwMDQtMDYtMTQgMTI6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgdXNlCgkgIGNvcnJlY3QgcGF0aCBmb3Igc3ViIHByb2plY3RzCgoyMDA0LTA2LTE0IDEyOjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IG1lcmdlIGZyb20gbWFpbiB0cmVlLCBtb3JlIC1JIHN0dWZmCgoyMDA0LTA2LTE0IDEyOjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IG1lcmdlIGZyb20gbWFpbiB0cmVlLCBkbyBub3QgdXNlIHJlZ2V4IGZvcgoJICBkaXJlY3RvaXJlcwoKMjAwNC0wNi0xNCAxMjoxNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRG94eWdlbi5jbWFrZTogRU5IOiBiZXR0ZXIgZmluZCBmb3IgZG94eWdlbgoKMjAwNC0wNi0xNCAxMjoxNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IGFkZCBOREVCVUcgdG8gd2luZG93cwoJICByZWxlYXNlIGJ1aWxkcyBmb3IgYm90aCBpZGUgYW5kIG5tYWtlCgoyMDA0LTA2LTE0IDEyOjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUlmQ29tbWFuZC5oLCBjbUlmQ29tbWFuZC5jeHg6IGFkZGVkIHN0cmVxdWFsCgoyMDA0LTA2LTE0IDExOjI0ICBhbmR5CgoJKiBUZXN0cy9DVGVzdFRlc3QvdGVzdC5jbWFrZS5pbjogRU5IOiBIYW5kbGUgc3BhY2VzIGluIHRoZSBwYXRoCgoyMDA0LTA2LTE0IDExOjIzICBhbmR5CgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEVSUjogT24gTWFjIHdlIG5lZWQKCSAgR0VUX1NPVVJDRV9GSUxFX1BST1BFUlRZIGZvciBidWlsZGluZyBjdXJsCgoyMDA0LTA2LTE0IDEwOjQ2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRLREUuY21ha2U6IEVOSDogYWRkIEZpbmRLREUgZnJvbSBBbGV4IGZyb20ga2RlLm9yZwoKMjAwNC0wNi0xNCAxMDozNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogZml4IGZvciBidWcgOTE1CgoyMDA0LTA2LTE0IDEwOjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggc3ViIHByb2plY3QgcGF0aAoJICBwcm9ibGVtCgoyMDA0LTA2LTExIDE1OjI3ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgQ01ha2VTeXN0ZW1Db25maWcudHh0LmluLAoJICBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcudHh0LCBDaGFuZ2VMb2cubWFudWFsLCBDaGFuZ2VMb2cudHh0LAoJICBEYXJ0Q29uZmlnLmNtYWtlLCBib290c3RyYXAsIERvY3MvY21ha2UtbW9kZS5lbCwKCSAgTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VJbXBvcnRCdWlsZFNldHRpbmdzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvQ01ha2VUZXN0R05VLmMsCgkgIE1vZHVsZXMvQ2hlY2tGb3JQdGhyZWFkcy5jLCBNb2R1bGVzL0NoZWNrRnVuY3Rpb25FeGlzdHMuYywKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jLAoJICBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsIE1vZHVsZXMvQ2hlY2tWYXJpYWJsZUV4aXN0cy5jLAoJICBNb2R1bGVzL0RhcnQuY21ha2UsIE1vZHVsZXMvRGFydENvbmZpZ3VyYXRpb24udGNsLmluLAoJICBNb2R1bGVzL0ZpbmREQ01USy5jbWFrZSwgTW9kdWxlcy9GaW5kR0xVVC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kR1RLLmNtYWtlLCBNb2R1bGVzL0ZpbmRJVEsuY21ha2UsCgkgIE1vZHVsZXMvRmluZEpOSS5jbWFrZSwgTW9kdWxlcy9GaW5kTUZDLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsIE1vZHVsZXMvRmluZFBIUDQuY21ha2UsCgkgIE1vZHVsZXMvRmluZFBlcmxMaWJzLmNtYWtlLCBNb2R1bGVzL0ZpbmRQaWtlLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUnVieS5jbWFrZSwgTW9kdWxlcy9GaW5kU1dJRy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kVENMLmNtYWtlLCBNb2R1bGVzL0ZpbmRUY2xzaC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kVlRLLmNtYWtlLCBNb2R1bGVzL0ZpbmR3eFdpZGdldHMuY21ha2UsCgkgIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZSwgTW9kdWxlcy9NYWNPU1hCdW5kbGVJbmZvLnBsaXN0LmluLAoJICBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uYywgTW9kdWxlcy9Vc2VTV0lHLmNtYWtlLAoJICBNb2R1bGVzL1VzZXd4V2lkZ2V0cy5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWDY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL09TRjEuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9UT0RPLCBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLAoJICBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLCBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNNYWtlTWluaW11bVJlcXVpcmVkLmgsIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4LAoJICBTb3VyY2UvY21DUGx1Z2luQVBJLmgsIFNvdXJjZS9jbUNUZXN0LmN4eCwgU291cmNlL2NtQ1Rlc3QuaCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmQuaCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21Db25maWd1cmUuY21ha2UuaC5pbiwgU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmgsIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4LAoJICBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmgsIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4LAoJICBTb3VyY2UvY21FbHNlQ29tbWFuZC5oLCBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUVuYWJsZVRlc3RpbmdDb21tYW5kLmgsIFNvdXJjZS9jbUVuZEZvckVhY2hDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRW5kRm9yRWFjaENvbW1hbmQuaCwgU291cmNlL2NtRW5kSWZDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBTb3VyY2UvY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eCwKCSAgU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbGVDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuaCwgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4LCBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmgsCgkgIFNvdXJjZS9jbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLAoJICBTb3VyY2UvY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmN4eCwgU291cmNlL2NtR2xvYi5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUlmQ29tbWFuZC5oLCBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluY2x1ZGVDb21tYW5kLmgsIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsIFNvdXJjZS9jbUxpc3RGaWxlQ2FjaGUuY3h4LAoJICBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmgsIFNvdXJjZS9jbUxpc3RGaWxlTGV4ZXIuYywKCSAgU291cmNlL2NtTGlzdEZpbGVMZXhlci5oLCBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmluLmwsCgkgIFNvdXJjZS9jbUxvYWRDYWNoZUNvbW1hbmQuaCwgU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eCwgU291cmNlL2NtTWFjcm9Db21tYW5kLmgsCgkgIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LCBTb3VyY2UvY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1lc3NhZ2VDb21tYW5kLmgsIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eCwgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5oLAoJICBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuaCwKCSAgU291cmNlL2NtUmVtb3ZlQ29tbWFuZC5oLCBTb3VyY2UvY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmgsIFNvdXJjZS9jbVNldENvbW1hbmQuaCwKCSAgU291cmNlL2NtU2V0RGlyZWN0b3J5UHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXREaXJlY3RvcnlQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmN4eCwgU291cmNlL2NtU291cmNlRmlsZS5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaCwKCSAgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLAoJICBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBTb3VyY2UvY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZUS1dyYXBKYXZhQ29tbWFuZC5oLCBTb3VyY2UvY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5oLAoJICBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5oLCBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4LAoJICBTb3VyY2UvY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21Xcml0ZUZpbGVDb21tYW5kLmgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgU291cmNlL2NtYWtldGVzdC5jeHgsIFNvdXJjZS9jbWFrZXdpemFyZC5jeHgsCgkgIFNvdXJjZS9jbWFrZXdpemFyZC5oLCBTb3VyY2UvY3Rlc3QuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1BhdGhXaWRnZXQuY3h4LAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZUNvbW1hbmRMaW5lSW5mby5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvUGF0aERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuaCwgU291cmNlL01GQ0RpYWxvZy9TdGRBZnguaCwKCSAgU291cmNlL01GQ0RpYWxvZy9yZXNvdXJjZS5oLCBTb3VyY2UvV1hEaWFsb2cvY21XWE1haW5GcmFtZS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9CYXNlNjQuYywgU291cmNlL2t3c3lzL0Jhc2U2NC5oLmluLAoJICBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9rd3N5cy9Db25maWd1cmUuaC5pbiwKCSAgU291cmNlL2t3c3lzL0NvbmZpZ3VyZS5oeHguaW4sIFNvdXJjZS9rd3N5cy9Db3B5cmlnaHQudHh0LAoJICBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eCwgU291cmNlL2t3c3lzL0RpcmVjdG9yeS5oeHguaW4sCgkgIFNvdXJjZS9rd3N5cy9FbmNvZGVFeGVjdXRhYmxlLmMsIFNvdXJjZS9rd3N5cy9Qcm9jZXNzLmguaW4sCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzRndkOXguYywgU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmMsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYywgU291cmNlL2t3c3lzL1JlZ3VsYXJFeHByZXNzaW9uLmN4eCwKCSAgU291cmNlL2t3c3lzL1JlZ3VsYXJFeHByZXNzaW9uLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzSGVhZGVyRHVtcC5wbCwKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jbWFrZSwKCSAgU291cmNlL2t3c3lzL2t3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIFNvdXJjZS9rd3N5cy9rd3N5c1ByaXZhdGUuaCwgU291cmNlL2t3c3lzL2t3c3lzX2lvc19mc3RyZWFtLmguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c19pb3NfaW9zZndkLmguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c19pb3NfaW9zdHJlYW0uaC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzX2lvc19zc3RyZWFtLmguaW4sIFNvdXJjZS9rd3N5cy9rd3N5c19zdGQuaC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzX3N0ZF9mc3RyZWFtLmguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c19zdGRfaW9zZndkLmguaW4sCgkgIFNvdXJjZS9rd3N5cy9rd3N5c19zdGRfaW9zdHJlYW0uaC5pbiwKCSAgU291cmNlL2t3c3lzL2t3c3lzX3N0ZF9zc3RyZWFtLmguaW4sIFNvdXJjZS9rd3N5cy9rd3N5c19zdGwuaC5pbiwKCSAgU291cmNlL2t3c3lzL3Rlc3QxLmN4eCwgU291cmNlL2t3c3lzL3Rlc3RJT1MuY3h4LAoJICBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYywgVGVtcGxhdGVzL0NNYWtlTGlzdHMudHh0LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvVGVzdERyaXZlci5jeHguaW4sCgkgIFRlbXBsYXRlcy9pbnN0YWxsLXNoLCBUZW1wbGF0ZXMvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21tYW5kTGluZVRlc3QvUHJlTG9hZC5jbWFrZSwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ29tcGxleC9WYXJUZXN0cy5jbWFrZSwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9maWxlMi5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9WYXJUZXN0cy5jbWFrZSwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9maWxlMi5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLmNtYWtlLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2ZpbGUyLmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ3VzdG9tQ29tbWFuZC9nZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL3dyYXBwZXIuY3h4LCBUZXN0cy9KdW1wL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9KdW1wL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0p1bXAvRXhlY3V0YWJsZS9qdW1wRXhlY3V0YWJsZS5jeHgsCgkgIFRlc3RzL0p1bXAvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvSnVtcC9MaWJyYXJ5L1NoYXJlZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvSnVtcC9MaWJyYXJ5L1NoYXJlZC9qdW1wU2hhcmVkLmN4eCwKCSAgVGVzdHMvSnVtcC9MaWJyYXJ5L1N0YXRpYy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvSnVtcC9MaWJyYXJ5L1N0YXRpYy9qdW1wU3RhdGljLmN4eCwKCSAgVGVzdHMvTGlua0xpbmVPcmRlci9Ud28uYywgVGVzdHMvTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIFRlc3RzL1ByZU9yZGVyL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9QcmVPcmRlci9zaW1wbGUuY3h4LAoJICBUZXN0cy9QcmVPcmRlci9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9QcmVPcmRlci9MaWJyYXJ5L3NpbXBsZUxpYi5jeHgsCgkgIFRlc3RzL1NpbXBsZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2ltcGxlL3NpbXBsZVdlLmNwcCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9Qb3N0SW5zdGFsbC5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9QcmVJbnN0YWxsLmNtYWtlLCBUZXN0cy9TaW1wbGVJbnN0YWxsL2Zvby5jLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL2Zvby5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsL2luc3QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL2xpYjEuY3h4LCBUZXN0cy9TaW1wbGVJbnN0YWxsL2xpYjEuaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWIyLmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWIyLmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliMy5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliMy5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9Qb3N0SW5zdGFsbC5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL1ByZUluc3RhbGwuY21ha2UsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9mb28uYywgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2Zvby5oLAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvaW5zdC5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9saWIxLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjEuaCwgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjIuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliMi5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliMy5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9saWIzLmgsCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9JbnB1dEZpbGUuaC5pbiwgVGVzdHMvU3ViRGlyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdWJEaXIvdmNsX2FsZ29yaXRobSt2Y2xfcGFpcitkb3VibGUuZm9vLmMsCgkgIFRlc3RzL1N1YkRpci9Bbm90aGVyU3ViZGlyL3BhaXIraW50LmludC5jLAoJICBUZXN0cy9TdWJEaXIvQW5vdGhlclN1YmRpci9zZWNvbmRvbmUuYywKCSAgVGVzdHMvU3ViRGlyL0Fub3RoZXJTdWJkaXIvdGVzdGZyb21zdWJkaXIuYywKCSAgVGVzdHMvU3ViRGlyL0V4YW1wbGVzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TdWJEaXIvRXhhbXBsZXMvZXhhbXBsZTEvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N1YkRpci9FeGFtcGxlcy9leGFtcGxlMS9leGFtcGxlMS5jeHgsCgkgIFRlc3RzL1N1YkRpci9FeGFtcGxlcy9leGFtcGxlMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3ViRGlyL0V4YW1wbGVzL2V4YW1wbGUyL2V4YW1wbGUyLmN4eCwKCSAgVGVzdHMvU3ViRGlyL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N1YkRpci9FeGVjdXRhYmxlL3Rlc3QuY3h4LAoJICBUZXN0cy9TdWJEaXIvVGhpcmRTdWJEaXIvcGFpcitpbnQuaW50MS5jLAoJICBUZXN0cy9TdWJEaXIvVGhpcmRTdWJEaXIvcGFpcl9wX2ludC5pbnQxLmMsCgkgIFRlc3RzL1N1YkRpci9UaGlyZFN1YkRpci90ZXN0ZnJvbWF1eHN1YmRpci5jLAoJICBUZXN0cy9TdWJEaXIvVGhpcmRTdWJEaXIvdGhpcmRvbmUuYywKCSAgVGVzdHMvU3dpZ1Rlc3QvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1N3aWdUZXN0L2V4YW1wbGUuY3h4LAoJICBUZXN0cy9Td2lnVGVzdC9leGFtcGxlLmgsIFRlc3RzL1N3aWdUZXN0L2V4YW1wbGUuaSwKCSAgVGVzdHMvU3dpZ1Rlc3QvcnVubWUucGhwNCwgVGVzdHMvU3dpZ1Rlc3QvcnVubWUucGlrZSwKCSAgVGVzdHMvU3dpZ1Rlc3QvcnVubWUucGwsIFRlc3RzL1N3aWdUZXN0L3J1bm1lLnB5LAoJICBUZXN0cy9Td2lnVGVzdC9ydW5tZS5yYiwgVGVzdHMvU3dpZ1Rlc3QvcnVubWUudGNsLAoJICBUZXN0cy9Td2lnVGVzdC9ydW5tZTIudGNsLAoJICBUZXN0cy9TeXN0ZW1JbmZvcm1hdGlvbi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vRHVtcEluZm9ybWF0aW9uLmN4eCwKCSAgVGVzdHMvVHJ5Q29tcGlsZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvVXNlV1gvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1VzZVdYL1dYLmN4eCwgVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1dyYXBwaW5nL3Z0a1Rlc3RNb2MuaCwgVXRpbGl0aWVzL0RveHlnZW4vQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9Eb3h5Z2VuL2RveHlmaWxlLmluLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfSVJJWDY0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9yZWxlYXNlX2Rpc3BhdGNoLnNoOiB1cGRhdGVkIHRvIDIuMC4xCgoyMDA0LTA2LTExIDE1OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBCVUc6IGZpeCBjcmFzaCBmb3IgaWYgc3RhdG1lbnQgZHVlIHRvIGJhZAoJICBtaWNyb3NvZnQgZG9jcyBvbiBkZXF1ZSBCVUcgaWQgOTE3CgoyMDA0LTA2LTA5IDE4OjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRyM4OTE6IFdoZW4gYnVpbGRpbmcKCSAgQ01ha2UgaXRzZWxmLCB1c2UgdGhlIG5ldyBjbWFrZSB0byBpbnN0YWxsIHNvIHRoYXQgdGhlIGN1cnJlbnQKCSAgY21ha2UgY2FuIGJlIG92ZXJ3cml0dGVuLgoKMjAwNC0wNi0wOSAxODowMSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFUlI6IERvIG5vdCB1c2UgdGhlIGJpbmFyeSBkaXJlY3RvcnkgYXMgYQoJICByZWd1bGFyIGV4cHJlc3Npb24uCgoyMDA0LTA2LTA5IDE3OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogRmlsZXMgaW4gdG9wLWxldmVsIGRpcmVjdG9yeSBvZiBzb3VyY2UKCSAgdHJlZSB3ZXJlIG5vdCByZXBvcnRlZCBpbiB1cGRhdGVzIGxvZy4KCjIwMDQtMDYtMDkgMTE6MzAgIGFuZHkKCgkqIERhcnRDb25maWcuY21ha2U6IEVOSDogQ2xlYW51cHMKCjIwMDQtMDYtMDkgMTE6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBFdmVuIGlmIHVwZGF0ZSBmYWlscyBpdCBzaG91bGQgcHJvZHVjZQoJICB2YWxpZCBYTUwKCjIwMDQtMDYtMDkgMTA6MzcgIGFuZHkKCgkqIERhcnRDb25maWcuY21ha2U6IEVOSDogVXNlIHZpZXdjdnMgaW5zdGVhZCBvZiBjdnN3ZWIKCjIwMDQtMDYtMDggMTc6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogc3VwcG9ydCBmb3IgZmxvYXRpbmcgcG9uaXQgc3RyaWRlcwoKMjAwNC0wNi0wOCAxNzoyNiAgYmFycmUKCgkqIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2UsIFV0aWxpdGllcy9Eb3h5Z2VuL0NNYWtlTGlzdHMudHh0OiBhKQoJICBuZXcgdmVyc2lvbiBvZiB0b29scyBsaWtlIERveHlnZW4gYW5kIEdyYXBodml6IG5vdyBzZXQgaW5zdGFsbAoJICBwYXRoIGluZm8gaW4gd2luMzIgcmVnaXN0ZXJ5LiB1c2UgaXQuICBiKSByZW1vdmUgRE9UX1BBVEgsIGl0IHdhcwoJICBwb2xsdXRpbmcgdGhlIGNhY2hlIChjYW4gYmUgY29tcHV0ZWQgZnJvbSBET1QsIHVwZGF0ZQoJICBDTWFrZUxpc3RzLnR4dCBhY2NvcmRpbmdseSBpZiBET1RfUEFUSCBpcyBub3QgZGVmaW5lZCkKCjIwMDQtMDYtMDcgMjE6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogdW5kbyBsYXN0IGJ1ZyBmaXggYmVjYXVzZSBpdAoJICBicmVha3MgY21ha2UsIHJlYnVpbGRfY2FjaGUgb24gUGFyYVZpZXcgZ2V0cyB0b25zIG9mIGVycm9ycyBhYm91dAoJICBub3QgYmVpbmcgYWJsZSB0byBjcmVhdGUgdGhlIGJpbiBkaXJlY3RvcnkKCjIwMDQtMDYtMDcgMTM6NTUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRzogRG8gbm90IGNyZWF0ZSBhIGRpcmVjdG9yeSBvbgoJICB0b3Agb2YgYSBmaWxlLgoKMjAwNC0wNi0wNyAxMjozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXQuaDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIGFkZCBzdXBwb3J0IGZvciBzY3AKCSAgc3VibWl0CgoyMDA0LTA2LTA3IDA5OjU0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZml4IG9yZGVyIG9mCgkgIGxpYnJhcmllcwoKMjAwNC0wNi0wNyAwOTo1MCAgaG9mZm1hbgoKCSogVGVzdHMvU2ltcGxlL0NNYWtlTGlzdHMudHh0OiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwNC0wNi0wNyAwOTo0OSAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIGZpeCBmaW5kCgkgIGxpYnJhcnkgc28gaXQgZG9lcyBub3QgZmluZCBkaXJlY3RvcmllcwoKMjAwNC0wNi0wNyAwOTo0OCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZGV0ZWN0IHByb2JsZW1zCgkgIHdyaXR0aW5nIGZpbGVzCgoyMDA0LTA2LTA3IDA5OjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IG1lcmdlciBmcm9tIG1haW4gdHJlZSwKCSAgZml4IHN1YmRpciBwcmVvcmRlcgoKMjAwNC0wNi0wNyAwOTo0NiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZml4IGluc3RhbGwKCSAgd2l0aCBzdWJkaXIgYW5kIG5vdCBleGVwYXRoCgoyMDA0LTA2LTA3IDA5OjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZml4CgkgIGNyYXNoIGluIGV4dGVybmFsIHByb2plY3QgaW5jbHVkZQoKMjAwNC0wNi0wNyAwOTo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBtZXJnZSBmcm9tIG1haW4gdHJlZSwgZG8gbm90CgkgIHdyaXRlIHRlc3QgZHJpdmVyIGVhY2ggdGltZSBjbWFrZSBpcyBydW4KCjIwMDQtMDYtMDcgMDk6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogY2hhbmdlcyBmcm9tIG1haW4gdHJlZSwKCSAgc29tZSBkaWZmZXJlbnQgLUkgb3B0aW9ucywgQ1RFU1RfREFTSEJPQVJEX1JPT1QgY29tcHV0YXRpb24sIHNvbWUKCSAgbW9yZSBlcnJvciBhbmQgd2FybmluZyBtYXRjaGVzCgoyMDA0LTA2LTA3IDA4OjUxICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEVSUjogUmVtb3ZlIHdhcm5pbmcKCjIwMDQtMDYtMDQgMTQ6NTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRVJSOiBEbyBub3QgYWRkIHRoZSBsaWJyYXJ5IGlmIG5vCgkgIHNvdXJjZXMgYXJlIHVzZWQuCgoyMDA0LTA2LTAzIDE5OjEyICBhbmR5CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRVJSOiBSZW1vdmUgdGVzdGluZiBvZiBQUkVPUkRFUgoJICBvbiBXaW5kb3dzCgoyMDA0LTA2LTAzIDE3OjA5ICBhbmR5CgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRVJSOiBUcnkgdG8gZml4IHNpbXBsZSBpbnN0YWxsIG9uCgkgIHZzNgoKMjAwNC0wNi0wMyAxNDo1NCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRml4IGZvciBidWcgOTAzIGNoYW5nZSBvcmRlciBvZiBmbHRrCgkgIGxpYnJhcmllcwoKMjAwNC0wNi0wMiAxMzozOSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHgsCgkgIENUZXN0L2NtQ1Rlc3RTdWJtaXQuaDogRU5IOiBJbXBsZW1lbnQgc2NwIHN1Ym1pc3Npb24KCjIwMDQtMDYtMDEgMTQ6MDggIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBIUC1VWC5jbWFrZSwgSVJJWC5jbWFrZSwgSVJJWDY0LmNtYWtlLAoJICBPU0YxLmNtYWtlLCBXaW5kb3dzLWJjYzMyLmNtYWtlLCBnY2MuY21ha2U6IEJVRyM4OTU6IEFkZGluZwoJICAtRE5ERUJVRyB0byBDIGFuZCBDKysgZmxhZ3MgZm9yIHJlbGVhc2UgYnVpbGRzLgoKMjAwNC0wNi0wMSAxMjo1NSAgYW5keQoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0QuY3h4LCBTaW1wbGVJbnN0YWxsL1Rlc3RTdWJEaXIvVFNELmgsCgkgIFNpbXBsZUluc3RhbGwvVGVzdFN1YkRpci9UU0RfdXRpbHMuY3h4LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9UZXN0U3ViRGlyL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvVGVzdFN1YkRpci9UU0QuY3h4LAoJICBTaW1wbGVJbnN0YWxsUzIvVGVzdFN1YkRpci9UU0QuaCwKCSAgU2ltcGxlSW5zdGFsbFMyL1Rlc3RTdWJEaXIvVFNEX3V0aWxzLmN4eDogRU5IOiBNb3JlIGVsYWJvcmF0ZQoJICBpbnN0YWxsIHRlc3QKCjIwMDQtMDYtMDEgMTI6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogbWFrZSBzdXJlIGZpbmQgbGlicmFyeSBkb2VzCgkgIG5vdCBmaW5kIGRpcmVjdG9yaWVzCgoyMDA0LTA2LTAxIDEyOjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgODcxLCBpbmNsdWRlCgkgIGV4dGVybmFsIHNob3VsZCB3b3JrIGZvciA3LjEgYW5kIDcuMAoKMjAwNC0wNi0wMSAxMTozMCAgYW5keQoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IEZpeCBidWcgaW4gY21ha2UgaW5zdGFsbCB3aGVuCgkgIGV4ZWMvbGlicmF5ciBvdXRwdXQgcGF0aCBub3QgZGVmaW5lZC4gQ2xvc2VzIEJ1ZyAjODk5IC0gc3ViZGlyCgkgIElOU1RBTExfVEFSR0VUUyBJTlNUQUxMX1BST0dSQU1TIGRvbnQgd29yawoKMjAwNC0wNi0wMSAwOTo1OCAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEZpeCBwcmVvcmRlci4gVGhpcwoJICBjYXVzZWQgcHJlb3JkZXIgdG8gbm90IHdvcmsgYW5kIHRoZSB0ZXN0IHBhc3NlZCBiZWNhdXNlIG9mCgkgIGp1bXAtb3ZlciBydWxlCgoyMDA0LTA1LTI4IDE1OjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBjdGVzdCAtUyBzdXBwb3J0IGZvciAgbXVsdGlwbGUKCSAgY3Rlc3QgY29tbWFuZCBhcmd1bWVudHMKCjIwMDQtMDUtMjcgMTI6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogQlVHOiBXaGVuIGNyZWF0aW5nIGEgdGVzdAoJICBkcml2ZXIsIGRvIG5vdCByZW1vdmUgdGhlIG9sZCBmaWxlLCBzbyBpZiBub3RoaW5nIGNoYW5nZXMsIGl0CgkgIHdpbGwgbm90IHJlYnVpbGQuIEZpeGVzIEJ1ZyAjODg1IC0gY21DcmVhdGVUZXN0U291cmNlIG92ZXJ3cml0ZQoJICBmaWxlIHdoZW4gcnVubmluZyBjbWFrZQoKMjAwNC0wNS0yNyAxMjo1MyAgYW5keQoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IERldGVjdCBpZiB0aGVyZSB3ZXJlIHByb2JsZW1zIHdyaXRpbmcKCSAgZmlsZQoKMjAwNC0wNS0yNyAxMToyMSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogVXBkYXRlZCB0byBub3QgaW5jbHVkZSBDVlMKCSAgZGlyZWN0b3JpZXMgaW4gY3lnd2luIHBhY2thZ2UuCgoyMDA0LTA1LTI2IDE1OjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGFkZGVkIGFub3RoZXIgZXJyb3Igc3RyaW5nIGFuZCBjaGFuZ2UgdGhlIC1JCgkgIG9wdGlvbiBzb21lCgoyMDA0LTA1LTI1IDE0OjM0ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogbWVyZ2VzIGZyb20KCSAgdGhlIG1haW4gdHJlZQoKMjAwNC0wNS0yNSAxMTozMSAgbWFydGluawoKCSogTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2UsIE1vZHVsZXMvRmluZFF0LmNtYWtlLAoJICBNb2R1bGVzL1VzZVNXSUcuY21ha2UsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbUdlbmVyYXRlZEZpbGVTdHJlYW0uaCwKCSAgU291cmNlL2NtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21NYWNyb0NvbW1hbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2V0RGlyZWN0b3J5UHJvcGVydGllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBTb3VyY2UvTUZDRGlhbG9nL3Jlc291cmNlLmgsCgkgIFRlc3RzL0NvbW1hbmRMaW5lVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0OgoJICBtZXJnZXMgZnJvbSB0aGUgbWFpbiB0cmVlCgoyMDA0LTA1LTI1IDExOjIwICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NNYWtlSW1wb3J0QnVpbGRTZXR0aW5ncy5jbWFrZSwgU291cmNlL2NtQ1Rlc3QuY3h4OgoJICBiZXR0ZXIgZXJyb3IgbWVzc2FnZQoKMjAwNC0wNS0yMSAxMTo1MiAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHNwZWVkIHVwIGZvciBOT1RGT1VORAoKMjAwNC0wNS0yMSAwOTo1MSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogRU5IOiBmaXggcmVydW4gb2YgY21ha2UKCSAgY29tbWFuZAoKMjAwNC0wNS0yMCAyMToyNyAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGJhY2sgb3V0IGNoYW5nZSBkdWUgdG8gYnJva2VuCgkgIGRhc2hib2FyZAoKMjAwNC0wNS0yMCAxNzozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHJlbW92ZSByZWdleCB1c2Ugd2hlcmUgc3RyY21wIGlzCgkgIGZhc3RlcgoKMjAwNC0wNS0yMCAxNjo1NiAgYW5keQoKCSogTW9kdWxlcy9Vc2VTV0lHLmNtYWtlLCBTb3VyY2UvY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtU2V0RGlyZWN0b3J5UHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXREaXJlY3RvcnlQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IEltcGxlbWVudAoJICBhZGRpdGlvbmFsIG1ha2UgY2xlYW4gZmlsZXMgYXMgYSBkaXJlY3RvcnkgcHJvcGVydHkgaW5zdGVhZCBvZgoJICBjbWFrZSB2YXJpYWJsZQoKMjAwNC0wNS0yMCAxNjozOSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQlVHOiBhbGxvdyBjdXJzb3IgdG8gYmUKCSAgY2hhbmdlZCBieSB0aGUgT1MKCjIwMDQtMDUtMjAgMTY6MzUgIGhvZmZtYW4KCgkqIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQ6IEJVRzogZG9udCBwdXQgdGhlIG91dHB1dCBvZiBhCgkgIHRyeSBjb21waWxlIGluIHRoZSBvdXRwdXQgYmVjYXVzZSB2aXN1YWwgc3RkdWlvIDcgaWRlIHdpbGwgdGhpbmcKCSAgdGhlcmUgd2VyZSBlcnJvcnMKCjIwMDQtMDUtMjAgMTY6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBCVUc6IG1ha2Ugc3VyZSBnbG9iYWwgZ2VuZXJhdGUKCSAgaXMgZG9uZSB3aGVuIGNtYWtlbGlzdCBmaWxlIGNoYWduZXMsIGFsc28gbWFrZSBzdXJlIGd1aWRzIGFyZQoJICBzdG9yZWQgaW4gdGhlIGNhY2hlIHNvIHRoZSAuc2xuIGZpbGUgZG9lcyBub3QgY2hhbmdlIGV2ZXJ5IHRpbWUKCjIwMDQtMDUtMjAgMTY6MjYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IGxvb2sgZm9yIHF0bW9jIGluIHNvbWUgb3RoZXIgcGxhY2VzCgoyMDA0LTA1LTIwIDE1OjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLnJjLCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsIE1GQ0RpYWxvZy9yZXNvdXJjZS5oOiB1cGRhdGVzIHRvCgkgIGd1aSB0byBkZWxldGUgY2FjaGUKCjIwMDQtMDUtMjAgMTM6MTUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogYWRkZWQgZXJyb3IKCjIwMDQtMDUtMTkgMTY6MDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IEVOSDogbWFrZSBpdCBydW4gbXVjaCBmYXN0ZXIKCjIwMDQtMDUtMTggMTU6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIHN1cmUKCSAgQURESVRJT05BTF9NQUtFX0NMRUFOX0ZJTEVTIHdvcmtzIHdpdGggc3BhY2VzIGluIHRoZSBwYXRoIGFuZCBpcwoJICBjb252ZXJ0ZWQgdG8gdGhlIGNvcnJlY3QgbmF0aXZlIHBhdGggdHlwZQoKMjAwNC0wNS0xOCAxNTozOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21FbmRGb3JFYWNoQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuY3h4OiBtZXJnZQoJICBmcm9tIG1haW4gdHJlZSwgZGV0ZWN0IG1pc3NpbmcgZW5kZm9yZWFjaAoKMjAwNC0wNS0xOCAxNTozOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21ha2VtYWluLmN4eDogbWVyZ2UgZnJvbSBtYWluCgkgIHRyZWUsIG1vdmUgZG9jIHN0dWZmIGFyb3VuZCBzbyBpdCBkb2VzIG5vdCBnaXZlIGNtYWtlIGRvY3MgdG8KCSAgY3Rlc3QKCjIwMDQtMDUtMTggMTU6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIGFkZCBzb21lIG1vcmUgb2JzY3VyZQoJICBvcHRpb25zIHRvIGN0ZXN0CgoyMDA0LTA1LTE4IDE1OjM3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEJVRzogODM1IGZpeAoKMjAwNC0wNS0xOCAxNTozNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVRlc3RHTlUuYzogQlVHOiA4MjUgZml4CgoyMDA0LTA1LTE4IDE0OjMzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVGVzdEdOVS5jOiBCVUc6IGZpeCBwcm9ibGVtIHdoZXJlIGNtYWtlIHRoaW5rcyB0aGUKCSAgaW50ZWwgY29tcGlsZXIgaXMgZ251CgoyMDA0LTA1LTE3IDE2OjMxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEVOSDogYXBwZW5kIHRvIHRoZSBsaXN0IG9mIGNsZWFuIGZpbGVzLAoJICBkb24ndCBqdXN0IHNldCB0aGVtCgoyMDA0LTA1LTE3IDE1OjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogY2hhbmdlCgkgIEFERElUSU9OQUxfTUFLRV9DTEVBTl9GSUxFUyB0byB3b3JrIHdpdGggc3BhY2VzIGluIHRoZSBwYXRoIGFuZAoJICBvbiB3aW5kb3dzIHdpdGggbm8gc3BhY2VzCgoyMDA0LTA1LTE3IDE1OjU1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1VzZVNXSUcuY21ha2U6IEJVRzogQnVnICM4MzUgZml4LCBhZGQgc3dpZyBnZW5lcmF0ZWQKCSAgZmlsZXMgdG8gY2xlYW4gdGFyZ2V0CgoyMDA0LTA1LTEzIDE2OjE3ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cubWFudWFsOiBhZGQgYSBoYW5kIGVkaXRlZCBjaGFuZ2Vsb2cKCjIwMDQtMDUtMTMgMTM6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogbmV3IGZlYXR1cmUgZm9yIGNvbnRpbnVvdXMgY2xlYW4gb25jZQoKMjAwNC0wNS0xMyAxMzowNyAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogUmVtb3ZlZCBzdXBwb3J0IGZvcgoJICB3eENNYWtlU2V0dXAgZGlhbG9nLgoKMjAwNC0wNS0xMyAxMDozNCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmguaW4sIENNYWtlTGlzdHMudHh0LCBQcm9jZXNzLmguaW4sCgkgIFByb2Nlc3NXaW4zMi5jLCBQcm9jZXNzV2luMzJLaWxsLmMsIFByb2Nlc3NXaW4zMktpbGwuaC5pbiwKCSAga3dzeXNIZWFkZXJEdW1wLnBsOiBNZXJnZSBjaGFuZ2VzIGZyb20gdGhlIG1haW4gdHJlZSwgZml4IGEgYnVnCgkgIGluIHRoZSBwcm9jZXNzIGtpbGwgY29kZQoKMjAwNC0wNS0xMyAxMDowOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IERvIG5vdCB3YWl0IGZvciBjaGlsZHJlbiB0bwoJICBleGl0IHdoZW4ga2lsbGluZyB0aGVtLiAgU29tZXRpbWVzIHRoZXkgZG8gbm90IHJlYWxseSBkaWUuCgoyMDA0LTA1LTEyIDE1OjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21FbmRGb3JFYWNoQ29tbWFuZC5jeHg6IGZpeCB3YXJuaW5nCgoyMDA0LTA1LTEyIDE0OjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVuZEZvckVhY2hDb21tYW5kLmN4eCwgY21Gb3JFYWNoQ29tbWFuZC5jeHg6IGJldHRlcgoJICBlcnJvciBjaGVja2luZyBmb3IgRk9SRUFDSAoKMjAwNC0wNS0xMiAwODo0NiAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBVcGRhdGVkIGZvciAyLjAuMAoJICByZWxlYXNlIHRhZy4KCjIwMDQtMDUtMTAgMTg6MDYgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ1Rlc3RUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9DVGVzdFRlc3QvdGVzdC5jbWFrZS5pbiwKCSAgVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBzb21lIGN0ZXN0CgkgIGNvdmVyYWdlCgoyMDA0LTA1LTEwIDE3OjUzICBhbmR5CgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbWFrZW1haW4uY3h4OiBCVUc6IE1vdmUKCSAgZG9jdW1lbnRhdGlvbiBzbyB0aGF0IGl0IGRvZXMgbm90IGFwZWFyIGluIGN0ZXN0CgoyMDA0LTA1LTEwIDE3OjQ0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBhIHdheSB0byBmb3JjZSBjdGVzdCB0bwoJICBiZSBhIG5ldyBwcm9jZXNzCgoyMDA0LTA1LTEwIDE2OjU4ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yIHVzaW5nCgkgIGN2cyBjaGVja291dCBpbnN0ZWFkIG9mIGN2cyBleHBvcnQuCgoyMDA0LTA1LTEwIDE2OjU1ICB3aWxsCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQWRkZWQgcmVnZXguCgoyMDA0LTA1LTEwIDE2OjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBOZWVkIHRvIHJlY29nbml6ZQoJICAtQiBsaW5rZXIgb3B0aW9ucy4KCjIwMDQtMDUtMTAgMTU6NDkgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL3JlbGVhc2VfZGlzcGF0Y2guc2g6IEVOSDogQWRkaW5nIHJlbGVhc2UKCSAgZGlzcGF0Y2ggc2NyaXB0LgoKMjAwNC0wNS0xMCAxNTo0OCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoLCBjb25maWdfQ1lHV0lOX05ULTUuMSwKCSAgY29uZmlnX0xpbnV4LCBjeWd3aW4tcGFja2FnZS5zaC5pbjogRU5IOiBVcGRhdGVkIHRvIGxhdGVzdAoJICB2ZXJzaW9uIGZyb20gMS44IGJyYW5jaC4KCjIwMDQtMDUtMTAgMTQ6NTQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBQcm9jZXNzV2luMzIuYywKCSAgUHJvY2Vzc1dpbjMyS2lsbC5jLCBQcm9jZXNzV2luMzJLaWxsLmguaW46IEVOSDogQWRkaW5nIG5hdGl2ZQoJICB3aW5kb3dzIHByb2Nlc3MgdHJlZSBraWxsIHRvIFByb2Nlc3NXaW4zMi5jLglUaGlzIHJlcGxhY2VzIHRoZQoJICBQcm9jZXNzV2luMzJLaWxsLmMgaW1wbGVtZW50YXRpb24uCgoyMDA0LTA1LTEwIDEzOjM4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBCYXNlNjQuaC5pbiwgUHJvY2Vzc1dpbjMyLmM6IEVSUjogQXZvaWRpbmcKCSAgbmFtZXNwYWNlIHBvbGx1dGlvbjoga3dfc3lzIC0+IGt3c3lzX25zLiAgQWxzbyB1bmRlZmluaW5nIHRoZQoJICBtYWNybyBhdCB0aGUgY29ycmVjdCB0aW1lLgoKMjAwNC0wNS0xMCAxMzoxNSAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzSGVhZGVyRHVtcC5wbDogRU5IOiBSZW5hbWluZyBrd3N5cyBtYWNybyB0bwoJICBrd3N5c19ucyB0byB3b3JrIGFyb3VuZCBib3JsYW5kIHByZXByb2Nlc3NvciBidWcuCgoyMDA0LTA1LTEwIDEzOjEwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzLmguaW4sIFByb2Nlc3NXaW4zMktpbGwuaC5pbjogRVJSOiBBdm9pZGluZwoJICBuYW1lc3BhY2UgcG9sbHV0aW9uOiBrd19zeXMgLT4ga3dzeXNfbnMuICBBbHNvIHVuZGVmaW5pbmcgdGhlCgkgIG1hY3JvIGF0IHRoZSBjb3JyZWN0IHRpbWUuCgoyMDA0LTA1LTEwIDEyOjQ1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vT1NGMS5jbWFrZSwKCSAgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oLCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jdGVzdC5jeHgsCgkgIFNvdXJjZS9rd3N5cy9CYXNlNjQuaC5pbiwgU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2Uva3dzeXMvUHJvY2Vzcy5oLmluLCBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmMsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzJLaWxsLmMsCgkgIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzJLaWxsLmguaW4sIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFRlbXBsYXRlcy9UZXN0RHJpdmVyLmN4eC5pbjogbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDQtMDUtMTAgMTI6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzJLaWxsLmM6IEVOSDogcmVtb3ZlIGV4dHJhIGluY2x1ZGUgZm9yCgkgIGNvbXBpbGUgd2l0aCBtaW5ndwoKMjAwNC0wNS0xMCAxMjowNiAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIFByb2Nlc3NXaW4zMktpbGwuYywKCSAgUHJvY2Vzc1dpbjMyS2lsbC5jeHg6IEVOSDogY2hhbmdlIHRvIGMgY29kZSBzbyBpdCBjYW4gYmUgYnVpbHQKCSAgd2l0aCBtaW5ndwoKMjAwNC0wNS0xMCAxMTowNCAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMktpbGwuY3h4OiBFTkg6IHJlbW92ZSB1bnVzZWQgaW5jbHVkZQoJICBmaWxlIHNvIGl0IHdpbGwgYnVpbGQgd2l0aCBtaW5ndwoKMjAwNC0wNS0xMCAxMDoyMCAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBmaXggZm9yIGNvbmZpZyB0eXBlIHBhc3NpbmcgYmV0d2VlbiBjdGVzdHMKCjIwMDQtMDUtMDkgMTI6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogc29tZSBjbGVhbnVwIGFuZCBmaXggZm9yIFBWTG9jYWwKCjIwMDQtMDUtMDggMTQ6NTUgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9UZXN0RHJpdmVyLmN4eC5pbjogQlVHOiByZW1vdmUgZGVidWcgcG9wIGhhY2tzLCBhbHNvCgkgIHJlbW92ZSBkdXBsaWNhdGUgY2FsbCB0byBhcmd2YyBmdW5jdGlvbgoKMjAwNC0wNS0wNyAxNDoyMiAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmguaW4sIFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1dpbjMyLmMsCgkgIFByb2Nlc3NXaW4zMktpbGwuaC5pbjogRVJSOiBPbiBCb3JsYW5kIHByZXByb2Nlc3NvciBnb2VzIGludG8KCSAgcmVjdXJzaW9uIHdoaWNoIGFkZHMgc29tZSB3ZWlkIHNwYWNlcyBpbiB0aGUgaW5jbHVkZSBuYW1lLiBUaGlzCgkgIGZpeGVzIGl0CgoyMDA0LTA1LTA3IDEzOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IGJldHRlciBkb2N1bWVudGF0aW9uCgoyMDA0LTA1LTA3IDEyOjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IGFkZCB0aGUgYWJpbGl0eSB0byBibG9jawoJICBwb3B1cCBlcnJvciBkaWFsb2dzIGluIHRlc3RzIG9uIHdpbmRvd3MKCjIwMDQtMDUtMDcgMTI6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQlVHOiBtYWtlIHN1cmUgdGhlIGNvcnJlY3Qgc3RhdGUgaXMKCSAgc2V0IGZvciBleHBpcmVkIHByb2Nlc3NlcwoKMjAwNC0wNS0wNyAxMToyNCAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBtaXNzaW5nIGhlYWRlciBmb3IgdW5peAoKMjAwNC0wNS0wNyAxMDo1MCAgbWFydGluawoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogdXBkYXRlZCB0ZXN0aW5nb3B0aW9ucyBmb3IKCSAgY29udGludW91cyBkYXNoYm9hcmRzCgoyMDA0LTA1LTA3IDEwOjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEFkZCBhIG1pc3NpbmcgZG9sbGFyIHNpZ24KCjIwMDQtMDUtMDcgMDg6MzUgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy9UZXN0RHJpdmVyLmN4eC5pbjogZml4IHdhcm5pbmcgbWF5YmUKCjIwMDQtMDUtMDYgMTY6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBtYWtlIHN1cmUgaW5zdGFsbCB3b3JrcyB3aXRoCgkgIHNwYWNlcyBpbiB0aGUgcGF0aAoKMjAwNC0wNS0wNiAxNTozNCAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIFByb2Nlc3NXaW4zMi5jLAoJICBQcm9jZXNzV2luMzJLaWxsLmN4eCwgUHJvY2Vzc1dpbjMyS2lsbC5oLmluOiBFTkg6IEFkZGluZyBwcm9jZXNzCgkgIHRyZWUga2lsbGluZyBmb3IgV2luMzIgcHJvY2VzcyBleGVjdXRpb24uCgoyMDA0LTA1LTA2IDE0OjMwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzcy5oLmluOiBFUlI6IEFkZGVkIHVuaXRzIHRvIFNldFRpbWVvdXQKCSAgZG9jdW1lbnRhdGlvbi4KCjIwMDQtMDUtMDYgMTA6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBmaXggY3Rlc3Qgc28gdGhhdCB0aGUgc2VhcmNoIHBhdGggZm9yCgkgIHRlc3QgZXhlY3V0YWJsZXMgcHJvZHVjZXMgYmV0dGVyIG91dHB1dCBhbmQgZG9lcyBub3QgdXNlIGNvbmZpZwoJICBkaXIgd2hlbiBpdCBpcyBub3Qgc2V0CgoyMDA0LTA1LTA2IDEwOjI5ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGZpeCBjb2xsYXBzZSBmdWxsIHBhdGggdG8KCSAgaGFuZGxlIGEgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkKCjIwMDQtMDUtMDYgMDk6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IGhvcnJpYmxlIGhhY2sKCjIwMDQtMDUtMDYgMDg6NTEgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy9UZXN0RHJpdmVyLmN4eC5pbjogZml4IHdhcm5pbmcKCjIwMDQtMDUtMDUgMTE6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogZml4IGZvciBpbiBzb3VyY2UgdGVzdGluZwoKMjAwNC0wNS0wNSAxMDo0MSAgbWFydGluawoKCSogTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlOiBhIGd1ZXNzIGF0IHNvbWUgT1NGIGNvbXBpbGVyIGZsYWdzCgoyMDA0LTA1LTA1IDEwOjIzICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cudHh0OiBjaGFuZ2UgbG9nIHVwLXRvIDIuMCBicmFuY2ggcG9pbnQKCjIwMDQtMDUtMDUgMTA6MjEgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IEVOSDogYWRkIG5ldyBjaGFuZ2UgbG9nIG1hcmtpbmcgMi4wIGJyYW5jaAoKMjAwNC0wNS0wNSAxMDoxOSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUNQbHVnaW5BUEkuaDogRU5IOiBtb3ZlIHZlcnNpb24gdG8gMi4xCgkgIGZvciBjdnMgYmVjYXVzZSAyLjAgaGFzIGJlZW4gYnJhbmNoZWQKCjIwMDQtMDUtMDUgMTA6MTcgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21DUGx1Z2luQVBJLmgsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogbW92ZSB2ZXJzaW9uIG51bWJlcnMgdG8KCSAgY21ha2UgMi4wIGZvciBicmFuY2gKCjIwMDQtMDUtMDUgMTA6MTMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbWFrZS5jeHg6IEVOSDogUmVtb3ZlIG1lbW9yeSBsZWFrCgoyMDA0LTA1LTA0IDE0OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGZpeCB0ZXN0cwoJICB0byB3b3JrIHdpdGggaW4gc291cmNlIGJ1aWxkcwoKMjAwNC0wNS0wNCAxNDoxOCAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBzdXBwb3J0IGluIHNvdXJjZSBidWlsZHMgYW5kIGFyZyBwYXNzaW5nCgoyMDA0LTA1LTA0IDExOjI0ICBhbmR5CgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBPbmx5IG1hbmdsZSBvYmplY3QKCSAgZmlsZXMgaWYgQ01BS0VfTUFOR0xFX09CSkVDVF9GSUxFX05BTUVTIGlzIHNldC4gT25seSBvbiBib3JsYW5kCgkgIGZvciBub3cuCgoyMDA0LTA1LTA0IDA5OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBmaXggd2FybmluZwoKMjAwNC0wNS0wMyAxNzo1MSAgYW5keQoKCSogVGVzdHMvU3dpZ1Rlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cCBleGFtcGxlIGEgYml0CgoyMDA0LTA1LTAzIDE2OjM4ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQWZ0ZXIgcnVubmluZyB0ZXN0IGNsZWFyIHJlc3VsdHMgZm9yCgkgIG1lbW9yeSBjaGVja2luZwoKMjAwNC0wNS0wMyAxNjozNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IFNraXAgdGVzdHMgdGhhdCBkbyBub3QgaGF2ZSBkZWZlY3RzCgoyMDA0LTA1LTAzIDE2OjM1ICBhbmR5CgoJKiBNb2R1bGVzLzogQ2hlY2tUeXBlU2l6ZS5jLCBDaGVja1R5cGVTaXplLmNtYWtlOiBFTkg6IHN1cHBvcnQKCSAgU1REREVGIGFuZCBjbGVhbnVwCgoyMDA0LTA1LTAzIDE1OjMzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBtaW5vciBiYWNrd2FyZHMgZml4CgoyMDA0LTA1LTAzIDEyOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IHRvIG1ha2Ugc3BhY2VzCgkgIGluIHBhdGhzIHdvcmsgZm9yIGp1bXAgb3ZlciB3aXRoIGJvcmxhbmQgYW5kIG5tYWtlIG9uIHNlY29uZAoJICBidWlsZAoKMjAwNC0wNS0wMyAxMjowMiAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IEVOSDogUmVtb3ZlCgkgIHdhcm5pbmcKCjIwMDQtMDUtMDMgMTA6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaDogRU5IOiBEb2N1bWVudGVkIHVzZSBvZiBcMSBzeW50YXggaW4KCSAgcmVwbGFjZSBleHByZXNzaW9uLgoKMjAwNC0wNS0wMyAwODo1MiAgaG9mZm1hbgoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IEVOSDogZml4CgkgIHdhcm5pbmdzIGluIHRlc3QKCjIwMDQtMDUtMDIgMTE6NTAgIGhvZmZtYW4KCgkqIFRlc3RzLzogTGlua0xpbmVPcmRlci9Ud28uYywKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBFTkg6IHJlbW92ZQoJICB3YXJuaW5ncyBpbiB0ZXN0cwoKMjAwNC0wNS0wMSAyMjowNSAgaG9mZm1hbgoKCSogU291cmNlL2N0ZXN0LmN4eDogQlVHOiBwdXRlbnYgc3ludGF4IHdhcyB3cm9uZyBhbmQgY2F1c2VkIGEgY3Jhc2gKCSAgb24gdGhlIFNHSQoKMjAwNC0wNS0wMSAxMDowOCAgbWFydGluawoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oOiBiZXR0ZXIgaWYgZXhwcmVzc2lvbgoJICBzdXBwb3J0CgoyMDA0LTA1LTAxIDEwOjA3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IGZpeCB0byBmaW5kIG9wZW5nbCBvbiBzb21lIG9zZiBzeXN0ZW1zCgoyMDA0LTA1LTAxIDA5OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogUmVtb3ZlIHdhcm5pbmcgYWJvdXQgc2hhZG93IHZhcmlhYmxlcwoKMjAwNC0wNC0zMCAxODoyMSAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgU3ViRGlyL1RoaXJkU3ViRGlyL3Rlc3Rmcm9tYXV4c3ViZGlyLmM6IEVOSDogUmVtb3ZlIHdhcm5pbmdzCgoyMDA0LTA0LTMwIDE3OjI4ICBhbmR5CgoJKiBUZXN0cy9TaW1wbGUvc2ltcGxlV2UuY3BwOiBFTkg6IFJlbW92ZSB3YXJuaW5nCgoyMDA0LTA0LTMwIDE1OjE3ICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IEFkZCBlbnZpcm9ubWVudCB2YXJpYWJsZSB0aGF0IERhcnQgc2V0cyBzbwoJICB0aGF0IHRlc3RzIGNhbiBrbm93IHRoZXkgYXJlIGJlaW5nIHRlc3RlZCBmcm9tIERhcnQvQ1Rlc3QKCjIwMDQtMDQtMzAgMTQ6MjcgIGhvZmZtYW4KCgkqIFRlc3RzL1N3aWdUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IGxpbmsgaW4gbW9yZSB0aGFuIGp1c3QgcHl0aG9uCgoyMDA0LTA0LTMwIDE0OjE0ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogUmVwb3J0IGZpbGVuYW1lIG9mIHRoZSBub3RlCgoyMDA0LTA0LTMwIDEzOjQxICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRTV0lHLmNtYWtlOiBFTkg6IE1vcmUgcGF0aHMKCjIwMDQtMDQtMzAgMTI6NTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFNXSUcuY21ha2U6IEVOSDogYWRkIGFub3RoZXIgcGxhY2UgdG8gbG9vayBmb3IKCSAgc3dpZy5leGUKCjIwMDQtMDQtMzAgMTI6NTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFNXSUcuY21ha2U6IEVOSDogdHJ5IHRvIGZpbmQgc3dpZy5leGUgaW4gU1dJR19ESVIKCjIwMDQtMDQtMzAgMTI6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBBZGQgc3VwcG9ydCBmb3Igbm90ZXMgaW4gVGVzdGluZy9Ob3RlcwoJICBzdWJkaXJlY3RvcnkuIFRoaXMgd2F5IHRlc3QgY2FuIHdyaXRlIG5vdGVzIHRoYXQgd2lsbCBiZSByZXBvcnRlZAoKMjAwNC0wNC0zMCAxMjoxNyAgYW5keQoKCSogVGVzdHMvU3dpZ1Rlc3QvOiBDTWFrZUxpc3RzLnR4dCwgZXhhbXBsZS5jeHgsIGV4YW1wbGUuaCwKCSAgZXhhbXBsZS5pLCBydW5tZS5waHA0LCBydW5tZS5waWtlLCBydW5tZS5wbCwgcnVubWUucHksIHJ1bm1lLnJiLAoJICBydW5tZS50Y2wsIHJ1bm1lMi50Y2w6IEVOSDogSGVyZSBpcyB0ZXN0IGZvciBzd2lnIG1vZHVsZQoKMjAwNC0wNC0zMCAxMjoxMSAgYW5keQoKCSogTW9kdWxlcy86IEZpbmRQSFA0LmNtYWtlLCBGaW5kUGVybExpYnMuY21ha2UsIEZpbmRQaWtlLmNtYWtlLAoJICBGaW5kUnVieS5jbWFrZSwgRmluZFNXSUcuY21ha2UsIFVzZVNXSUcuY21ha2U6IEVOSDogSW5pdGlhbAoJICBpbXBvcnQgb2Ygc3dpZy4gU3RhcnQgd29ya2luZyB0b3dhcmRzIEJ1ZyAjNzQ5IC0gQWRkIHN3aWcgc3VwcG9ydAoJICBtb2R1bGUgdG8gY21ha2UKCjIwMDQtMDQtMzAgMTE6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiByZW1vdmUgZHVwbGljYXRlCgkgIGRlcGVuZCBvbiBjYWNoZSBmaWxlIGFuZCB1c2Ugb2YgbWFrZSB2YXJpYWJsZSBpbiBtYWtlIHRhcmdldAoKMjAwNC0wNC0zMCAxMTozNiAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL1Rlc3REcml2ZXIuY3h4LmluOiBFTkg6IHJlbW92ZSB1bnVzZWQgdmFyaWFibGUKCjIwMDQtMDQtMzAgMTA6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmdzCgoyMDA0LTA0LTMwIDA4OjAyICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogYWRkIG1pc3NpbmcgaW5zdGFsbCBmaWxlCgoyMDA0LTA0LTI5IDE3OjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgYXV0b21hdGljIGFkanVzdG1lbnQgb2YKCSAgQysrIGZsYWdzIHRvIGluY2x1ZGUgLXRpbXBsaWNpdF9sb2NhbCBhbmQgLW5vX2ltcGxpY2l0X2luY2x1ZGUKCSAgZm9yIHRoZSBDb21wYXEgY29tcGlsZXIgb24gT1NGLgoKMjAwNC0wNC0yOSAxNzo0MSAgYW5keQoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eCwgU291cmNlL2NtTWFjcm9Db21tYW5kLmgsCgkgIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBBUkdWIGFuZCBBUkdOCgkgIHN1cHBvcnQgdG8gTUFDUk8gY29tbWFuZC4gQVJHViBpcyB0aGUgbGlzdCBvZiBhbGwgYXJndW1lbnRzIGFuZAoJICBBUkdOIGlzIHRoZSBsaXN0IG9mIGFsbCBub25leHBlY3RlZCBhcmd1bWVudHMKCjIwMDQtMDQtMjkgMTU6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmN4eCwgU291cmNlL2NtRm9yRWFjaENvbW1hbmQuaCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIFJBTkdFIHN1cHBvcnQgdG8KCSAgRk9SRUFDSAoKMjAwNC0wNC0yOSAxNDo1MSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oOiBCVUc6IEFkZCBhIHNhZmV0eQoJICBjaGVjayBzbyB0aGF0IHlvdSBjYW5ub3Qgc2VuZCBjbU9TdHJpbmdTdHJlYW0uc3RyKCkgdG8gb3RoZXIKCSAgc3RyZWFtIGFuZCBwcm9kdWNlIHRoZSBmdW5reSBoZXggbnVtYmVyLiBUaGlzIG1ha2VzIGl0IGltcG9zc2libGUKCSAgdG8gY29tcGlsZSBzdWNoIGEgY29kZS4gQWRkaW5nIHRoYXQgZXhwb3NlZCBhIHdob2xlIGJ1bmNoIG9mCgkgIHBsYWNlcyBpbiBDTWFrZSB3aGVyZSBzdHJlYW1zIHdlcmUgdXNlZCB3cm9uZ2x5CgoyMDA0LTA0LTI5IDEzOjI1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IE1vc3Qgb2YgdGltZSB3aGVuIGFza2luZyBpZgoJICBmaWxlIGV4aXN0cywgd2UgYWN0dWFsbHkgd2FudCB0byByZWFkIGl0Li4uIFNob3VsZCBmaXggQnVnICM4MDkgLQoJICBGSU5EX0lOQ0xVREUgc2hvdWxkIGNoZWNrIHJlYWRhYmlsaXR5CgoyMDA0LTA0LTI5IDEzOjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1N0ZEFmeC5oOiBFTkg6IHJlbW92ZSB3YXJuaW5nCgoyMDA0LTA0LTI5IDEyOjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5ncwoKMjAwNC0wNC0yOSAxMDoyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBmaXggY3Jhc2ggZnJvbSBidWcgaWQgODA2CgoyMDA0LTA0LTI4IDE0OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDQtMDQtMjggMTM6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwgTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBCVUc6CgkgIGZpeCBmb3IgYnVnIDEyMSBhZGQgc29tZSBkb2NzIGZvciBNRkMgZmxhZwoKMjAwNC0wNC0yOCAxMzoyMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJ1ZyAxMTYKCSAgcGxhdGZvcm0gZmlsZXMgY2FuIG5vdyBzcGVjaWZ5IGRpcmVjdG9yaWVzIHRoYXQgc2hvdWxkIG5vdCBiZQoJICBhZGRlZCBieSBDTUFLRQoKMjAwNC0wNC0yOCAxMjozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBUZW1wbGF0ZXMvVGVzdERyaXZlci5jeHguaW46CgkgIEVOSDogbWFrZSB0ZXN0IGRyaXZlciBtb3JlIGZsZXhpYmxlIGJ5IHVzaW5nIGEgY29uZmlndXJlZCBmaWxlCgkgIGluc3RlYWQgb2YgZ2VuZXJhdGluZyBhbGwgdGhlIGNvZGUuIGZpeGVzIGJ1ZyAyOAoKMjAwNC0wNC0yOCAxMDo1MiAgYW5keQoKCSogU291cmNlL2NtYWtlLmN4eCwgVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21tYW5kTGluZVRlc3QvUHJlTG9hZC5jbWFrZTogRU5IOiBBZGQgc3VwcG9ydCBmb3IKCSAgYXV0b21hdGljYWxseSBwcmVsb2FkZWQgY21ha2UgZmlsZS4gQ2xvc2VzIEJ1ZyAjODAyIC0gQWRkIGF1dG8KCSAgcHJlbG9hZCBmaWxlIHN1cHBvcnQgaW4gQ01ha2UKCjIwMDQtMDQtMjggMTA6MTUgIGFuZHkKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogRW5jb2RlIG9iamVjdCBmaWxlcyB3aXRoCgkgIGZ1bm55IGNoYXJhY3RlcnMgaW4gdGhlIG5hbWUuIEl0IHNob3VsZCBmaXggQnVnICM0MTggLSBCb3JsYW5kCgkgIDUuNS4xLCBUZW1wbGF0ZXMvKi5jeHggZmlsZXMgd2l0aCAnKycgY2hhcnMgdXNlZCBpbiBleGVjcwoKMjAwNC0wNC0yOCAxMDowOSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L1ZhclRlc3RzLmNtYWtlLCBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogYWRkIGEgdGVzdCBmb3IKCSAgRVFVQUwgaW4gaWYKCjIwMDQtMDQtMjggMTA6MDUgIGFuZHkKCgkqIFRlc3RzL1N1YkRpci9UaGlyZFN1YkRpci86IHBhaXJfcF9pbnQuaW50MS5jLAoJICB0ZXN0ZnJvbWF1eHN1YmRpci5jOiBFTkg6IE1vcmUgc3BlY2lhbCBjYXNlcwoKMjAwNC0wNC0yOCAxMDowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrSW5jbHVkZUZpbGUuY21ha2UsIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2U6IEVOSDoKCSAgZml4ZXMgZm9yIG9wdGlvbmFsIGZsYWcgYXJndW1lbnRzIHRvIGNoZWNrIGluY2x1ZGUgbWFjcm9zCgoyMDA0LTA0LTI4IDA5OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBCVUc6IGZpeCBsb2dpYyBpbiBFUVVBTCBpZiB0ZXN0CgoyMDA0LTA0LTI4IDA5OjUyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2U6IEJVRzogZml4IGZvciBidWcgODAsIGNoZWNrCgkgIGluY2x1ZGUgY3h4IG5vdyBoYXMgYW4gb3B0aW9uYWwgYXJndW1lbnQgdGhhdCBjYW4gaXMgYWRkZWQgdG8gdGhlCgkgIGN4eCBmbGFncwoKMjAwNC0wNC0yOCAwOTo1MSAgaG9mZm1hbgoKCSogU291cmNlLzogY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oOiBFTkg6IGFkZCBhIG51bWVyaWMgRVFVQUwKCSAgdG8gdGhlIElGIHN0YXRtZW50LCB2ZXJ5IHVzZWZ1bCBmb3IgdmFyaWFibGUgYXJndW1lbnRzIGluIE1BQ1JPUwoKMjAwNC0wNC0yNyAxNDoxNiAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmMsIEJhc2U2NC5oLmluLCBDTWFrZUxpc3RzLnR4dCwKCSAgQ29uZmlndXJlLmguaW4sIENvbmZpZ3VyZS5oeHguaW4sIENvcHlyaWdodC50eHQsIERpcmVjdG9yeS5jeHgsCgkgIERpcmVjdG9yeS5oeHguaW4sIEVuY29kZUV4ZWN1dGFibGUuYywgUHJvY2Vzcy5oLmluLAoJICBQcm9jZXNzRndkOXguYywgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmMsIFJFQURNRS50eHQsCgkgIFJlZ3VsYXJFeHByZXNzaW9uLmN4eCwgUmVndWxhckV4cHJlc3Npb24uaHh4LmluLCBTeXN0ZW1Ub29scy5jeHgsCgkgIFN5c3RlbVRvb2xzLmh4eC5pbiwga3dzeXNIZWFkZXJEdW1wLnBsLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2UsIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsCgkgIGt3c3lzUHJpdmF0ZS5oLCBrd3N5c19pb3NfZnN0cmVhbS5oLmluLCBrd3N5c19pb3NfaW9zZndkLmguaW4sCgkgIGt3c3lzX2lvc19pb3N0cmVhbS5oLmluLCBrd3N5c19pb3Nfc3N0cmVhbS5oLmluLCBrd3N5c19zdGwuaC5pbiwKCSAgdGVzdDEuY3h4LCB0ZXN0SU9TLmN4eCwgdGVzdFByb2Nlc3MuYzogRU5IOiBNb3ZlIHRvIFZvbFZpZXcKCSAgYnJhbmNoCgoyMDA0LTA0LTI3IDEyOjAzICBhbmR5CgoJKiBTb3VyY2UvY21HZXRUYXJnZXRQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBUZXN0cy9DdXN0b21Db21tYW5kL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZCBMT0NBVElPTiB0bwoJICBHRVRfVEFSR0VUX1BST1BFUlRZLiBDbG9zZXMgQnVnICMzNCAtIEFkZCB0byBHRVRfVEFSR0VUX1BST1BFUlRZCgkgIGxvY2F0aW9uIG9mIHRhcmdldAoKMjAwNC0wNC0yNyAxMjowMiAgYW5keQoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBHZXRTYWZlRGVmaW5pdGlvbiBpcyBub3cgaW4gY21NYWtlZmlsZQoKMjAwNC0wNC0yNyAxMTozMCAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGQgbWV0aG9kIHRvIGdldAoJICBkZWZpbml0aW9uIGV2ZW4gaWYgaXQgZG9lcyBub3QgZXhpc3RzCgoyMDA0LTA0LTI3IDExOjA4ICBhbmR5CgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogZ2VuZXJhdG9yLmN4eCwgd3JhcHBlci5jeHg6IEVSUjogUmVtb3ZlCgkgIHdhcm5pbmdzIGZyb20gdGVzdHMKCjIwMDQtMDQtMjcgMDk6MjIgIGFuZHkKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LCBUZXN0cy9TdWJEaXIvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N1YkRpci92Y2xfYWxnb3JpdGhtK3ZjbF9wYWlyK2RvdWJsZS5mb28uYywKCSAgVGVzdHMvU3ViRGlyL0Fub3RoZXJTdWJkaXIvcGFpcitpbnQuaW50LmMsCgkgIFRlc3RzL1N1YkRpci9Bbm90aGVyU3ViZGlyL3NlY29uZG9uZS5jLAoJICBUZXN0cy9TdWJEaXIvQW5vdGhlclN1YmRpci90ZXN0ZnJvbXN1YmRpci5jLAoJICBUZXN0cy9TdWJEaXIvVGhpcmRTdWJEaXIvcGFpcitpbnQuaW50MS5jLAoJICBUZXN0cy9TdWJEaXIvVGhpcmRTdWJEaXIvdGVzdGZyb21hdXhzdWJkaXIuYywKCSAgVGVzdHMvU3ViRGlyL1RoaXJkU3ViRGlyL3RoaXJkb25lLmM6IEJVRzogRml4IGF1cyBzb3VyY2UgZGlyIGFuZAoJICBhZGQgYmV0dGVyIHRlc3Rpbmcgb2YgaXQKCjIwMDQtMDQtMjcgMDg6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9hZENvbW1hbmRDb21tYW5kLmN4eCwgY21NYWNyb0NvbW1hbmQuY3h4OiBXUk46CgkgIHJlbW92ZSB3YXJuaW5ncwoKMjAwNC0wNC0yNiAxODo1MSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEFub3RoZXIgb25lIG9mIHRob3NlIG5hc3R5IGhleCBudW1iZXJzCgkgIGluIHRoZSBjdGVzdCBvdXRwdXQKCjIwMDQtMDQtMjYgMTg6NDkgIGFuZHkKCgkqIFRlc3RzL1N1YkRpci9Bbm90aGVyU3ViZGlyLzogc2Vjb25kb25lLmMsIHRlc3Rmcm9tc3ViZGlyLmM6IEVOSDoKCSAgQWRkIGV4dHJhIHRlc3QgZmlsZXMKCjIwMDQtMDQtMjYgMTc6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEVOSDogZml4IGZvciBidWcgaWQgMjcsIGFkZCBhCgkgIHNpZ25hbCBoYW5kbGVyIGZvciBjcmFzaGVzIGluIGxvYWRlZCBjb21tYW5kcwoKMjAwNC0wNC0yNiAxNzozMiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eCwKCSAgVGVzdHMvU3ViRGlyL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9TdWJEaXIvRXhlY3V0YWJsZS90ZXN0LmN4eDoKCSAgRU5IOiBXaGVuIHNvdXJjZSBmaWxlIGlzIGluIHN1YmRpcmVjdG9yeSBwdXQgb2JqZWN0IGZpbGUgaW4KCSAgc3ViZGlyZWN0b3J5LiBGaXhlcyBCdWcgIzI5MCAtIFNvdXJjZSBmaWxlcyBpbiBzdWJkaXJlY3RvcmllcwoJICBzaG91bGQgcHJvZHVjZSBvYmplY3QgZmlsZXMgaW4gc3ViZGlyZWN0b3JpZXMKCjIwMDQtMDQtMjYgMTM6NDIgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRU5IOiBBZGQgVENMX0ZPVU5ECgoyMDA0LTA0LTI2IDEzOjQyICBhbmR5CgoJKiBUZW1wbGF0ZXMvOiBDTWFrZUxpc3RzLnR4dCwgaW5zdGFsbC1zaDogRU5IOiBXaXRoIG5ldyBpbnN0YWxsCgkgIGZyYW1ld29yayB3ZSBkb24ndCBuZWVkIGluc3RhbGwtc2ggYW55IG1vcmUKCjIwMDQtMDQtMjYgMTM6NDIgIGFuZHkKCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uLzogQ01ha2VMaXN0cy50eHQsIER1bXBJbmZvcm1hdGlvbi5jeHg6CgkgIEVOSDpBZGQgdGVzdCBmb3IgR0VUL1NFVF9ESVJFQ1RPUllfUFJPUEVSVFkKCjIwMDQtMDQtMjYgMTE6MjMgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaDogQlVHOiBGaXggcmVzb2x2aW5nIG9mIGluZmluaXRlIGxvb3BzCgkgIHdoaWxlIENNYWtlU2V0dXAvY2NtYWtlIHN0aWxsIHJ1bm5pbmcKCjIwMDQtMDQtMjYgMTE6MTIgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBhZGRlZCB0ZXN0cyBmb3IgdmFyCgkgIGFyZ3Mgd2l0aCBtYWNyb3MKCjIwMDQtMDQtMjYgMTE6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFjcm9Db21tYW5kLmN4eCwgY21NYWNyb0NvbW1hbmQuaDogbWFjcm9zIG5vdyBzdXBwb3J0CgkgIHZhcmFyZ3MKCjIwMDQtMDQtMjYgMTE6MDAgIGtpbmcKCgkqIE1vZHVsZXMvRmluZElUSy5jbWFrZSwgTW9kdWxlcy9GaW5kVlRLLmNtYWtlLAoJICBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBCVUcjNjgyOiBBZGRpbmcgZW52aXJvbm1lbnQKCSAgdmFyaWFibGUgY2hlY2sgdG8gRklORF9QQUNLQUdFIGNvbW1hbmQuCgoyMDA0LTA0LTI2IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBTVFlMRTogUmVtb3ZlZCB0cmFpbGluZwoJICB3aGl0ZXNwYWNlLgoKMjAwNC0wNC0yNiAxMDoxOSAga2luZwoKCSogTW9kdWxlcy86IENoZWNrVmFyaWFibGVFeGlzdHMuYzogQlVHIzUwMjogRG8gbm90IGxldCBvcHRpbWl6aW5nCgkgIGNvbXBpbGVycyB0aGluayB0aGUgc3ltYm9sIGV4aXN0cy4gIFJlcXVpcmUgdGhlIHN5bWJvbCBieSBtYWtpbmcKCSAgdGhlIHJldHVybiB2YWx1ZSBkZXBlbmQgb24gaXQgdG8gZm9yY2UgbGlua2luZy4KCjIwMDQtMDQtMjMgMTY6MjYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGU6IEJVRzogZml4IGZvciBidWcgNzY5CgkgIENNQUtFX1NUQU5EQVJEX0xJQlJBUklFUyAgbm93IHVzZWQgaW4gaWRlcwoKMjAwNC0wNC0yMyAxNjoyMCAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtR2V0RGlyZWN0b3J5UHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXREaXJlY3RvcnlQcm9wZXJ0eUNvbW1hbmQuaCwgY21NYWtlZmlsZS5oLAoJICBjbVNldERpcmVjdG9yeVByb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXREaXJlY3RvcnlQcm9wZXJ0aWVzQ29tbWFuZC5oOiBFTkg6IEFkZAoJICBHRVQvU0VUX0RJUkVDVE9SWV9QUk9QRVJUWS9QUk9QRVJUSUVTIGNvbW1hbmRzIHNvIHRoYXQgd2UgY2FuCgkgIGNoYW5nZSBpbmNsdWRlIGRpcmVjdG9yaWVzIGFuZCBnZXQgYWxsIHNvcnRzIG9mIHRoaW5ncy4gQ2xvc2VzCgkgIEJ1ZyAjMjUgLSBHZXRfQ01BS0VfUFJPUEVSVElFUwoKMjAwNC0wNC0yMyAxMzoxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEVOSDogYWRkIHZlcmJvc2UgbWFrZQoJICBhYmlsaWxpdHkgdG8gdmlzdWFsIHN0dWRpbyA3CgoyMDA0LTA0LTIzIDEyOjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21TdWJkaXJDb21tYW5kLmN4eCwKCSAgVGVzdHMvUHJlT3JkZXIvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1ByZU9yZGVyL3NpbXBsZS5jeHgsCgkgIFRlc3RzL1ByZU9yZGVyL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1ByZU9yZGVyL0xpYnJhcnkvc2ltcGxlTGliLmN4eDogRU5IOiBhZGQgU1VCRElSIFBSRU9SREVSCgkgIGFuZCBmaXggY2xlYW4gZm9yIG5vbi1yZWxhdGl2ZSBwYXRocwoKMjAwNC0wNC0yMyAxMDowMyAgYW5keQoKCSogU291cmNlLzogY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaDoKCSAgRU5IOiBVbmlmeSB3aXRoIG90aGVyIHZhcmlhYmxlcwoKMjAwNC0wNC0yMyAwOToxMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogRU5IOiBhbGxvdyB2ZXJib3NlCgkgIG1ha2VmaWxlIGZsYWcgdG8gcmVtb3ZlIG5vbG9nbyBmcm9tIGFsbCBjb21tYW5kcyBzbyB5b3UgY2FuIHNlZQoJICB0aGVtIGluIHZpc3VhbCBzdHVkaW8gNgoKMjAwNC0wNC0yMyAwODo1MCAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFUlI6IEZpeGVkIHVudXNlZCB2YXJpYWJsZSBhc3NpZ25tZW50CgkgIHdhcm5pbmcuCgoyMDA0LTA0LTIyIDE4OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQWRkIER5bmFtaWNBbmFsaXN5cyBzdXBwb3J0LiBUaGUgb2xkCgkgIFB1cmlmeSBpcyBzdGlsbCBhdmFpbGFibGUgdGhyb3VnaCAtLWNvbXBhdGliaWxpdHktbW9kZQoKMjAwNC0wNC0yMiAxNzoyMyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmR3eFdpZGdldHMuY21ha2UsIFVzZXd4V2lkZ2V0cy5jbWFrZTogQlVHOiBmaXggZm9yCgkgIGJ1ZyA2MTgKCjIwMDQtMDQtMjIgMTc6MjAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEdMVVQuY21ha2U6IEJVRzogZml4IGZvciBidWcgNzQzCgoyMDA0LTA0LTIyIDE3OjA4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEJVRzogZml4IGZvciBidWcgNjA3CgoyMDA0LTA0LTIyIDE2OjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogYWRkIHN1cHBvcnQgZm9yCgkgIHN0YXRpYyBsaWJyYXJ5IHByb3BlcnR5IFNUQVRJQ19MSUJSQVJZX0ZMQUdTCgoyMDA0LTA0LTIyIDE2OjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmREQ01USy5jbWFrZTogRU5IOiBjb250cmlidXRpb24gZnJvbSBJYW4gU2NvdHQsCgkgIHRoYW5rcy4KCjIwMDQtMDQtMjIgMTU6NTkgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogdXBkYXRlIGNvbW1lbnRzCgoyMDA0LTA0LTIyIDE0OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IGFkZCBhIHByb3BlcnR5IGZvciBIQVNfQ1hYIHRvIGEgdGFyZ2V0CgkgIHRoYXQgd2lsbCBmb3JjZSB0aGUgdXNlIG9mIGEgYysrIGNvbXBpbGVyIGluIHRoZSBsaW5raW5nIG9mIGFuCgkgIGV4ZWN1dGFibGUgdGhhdCBjb250YWlucyBvbmx5IGMgY29kZQoKMjAwNC0wNC0yMiAxNDoxMSAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBWZXJpZnkgdGhhdCBnZXRlbnYgcmV0dXJuZWQKCSAgc29tZXRoaW5nIGJlZm9yZSB1c2luZyBpdAoKMjAwNC0wNC0yMiAxMzozNyAgbWFydGluawoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaDogdXBkYXRlIGRvY3MKCjIwMDQtMDQtMjIgMTM6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRmluZExpYnJhcnlDb21tYW5kLmgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHgsIGt3c3lzL1N5c3RlbVRvb2xzLmN4eCwKCSAga3dzeXMvU3lzdGVtVG9vbHMuaHh4LmluOiBCVUc6IGZpeCBmb3IgMzAxIENNQUtFX0xJQlJBUllfUEFUSCBhbmQKCSAgQ01BS0VfSU5DTFVERV9QQVRIIGVudiB2YXJzIG5vdyB1c2VkIGluIEZJTkRfTElCUkFSWSBhbmQKCSAgRklORF9QQVRIIGluIGFkZHRpb24gdG8gYW5kIGJlZm9yZSBQQVRICgoyMDA0LTA0LTIyIDExOjEyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2U6IEJVRzogZml4IGJhZCBpZiBzdGF0ZW1lbnRzCgoyMDA0LTA0LTIyIDA5OjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHIDE3ODogbWFrZSB0b3AgbGV2ZWwKCSAgY21ha2VsaXN0IGZpbGUgYSBzb3VyY2UgaW4gQUxMX0JVSUxECgoyMDA0LTA0LTIxIDE3OjU0ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHg6IEVSUjogRml4IGluc3RhbGwgb24KCSAgVlM3MQoKMjAwNC0wNC0yMSAxNjoyMyAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5oLAoJICBjbUxpc3RGaWxlTGV4ZXIuaW4ubDogRU5IOiBBZGRlZCBjbUxpc3RGaWxlTGV4ZXJfU2V0U3RyaW5nIG1ldGhvZAoJICB0byBhbGxvdyBhIHN0cmluZyB0byBiZSBwYXJzZWQgYXMgaW5wdXQuCgoyMDA0LTA0LTIxIDE2OjA3ICBob2ZmbWFuCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFNpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogYWRkIGRlcAoKMjAwNC0wNC0yMSAxNTowOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlOiBFTkg6IGZpeCBmb3IgbWluZ3cKCjIwMDQtMDQtMjEgMTE6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogQlVHOiBQdXQgYWxsIGZpbGVzIHRvIG1hbmlmZXN0CgoyMDA0LTA0LTIxIDExOjM2ICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eDogQlVHOiBGaXhlZCBjaGVjayBvZiBudW1iZXIKCSAgb2YgYXJndW1lbnRzLgoKMjAwNC0wNC0yMSAxMTozMyAga2luZwoKCSogTW9kdWxlcy86IEZpbmRJVEsuY21ha2UsIEZpbmRWVEsuY21ha2U6IEVOSDogVGVybWluYXRlIHdpdGggYQoJICBGQVRBTF9FUlJPUiBpZiBGSU5EX1BBQ0tBR0UgY29tbWFuZCB3YXMgY2FsbGVkIHdpdGggUkVRVUlSRUQKCSAgYXJndW1lbnQgYW5kIHBhY2thZ2Ugd2FzIG5vdCBmb3VuZC4KCjIwMDQtMDQtMjEgMTE6MzIgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRU5IOiBEbyBwcmVpbnN0YWxsIGFuZCBwb3N0aW5zdGFsbAoJICBzY3JpcHQgZXZlbiBpZiB0aGUgdGFyZ2V0IGlzIG5vdCBpbnN0YWxsZWQKCjIwMDQtMDQtMjEgMTA6MzQgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlbWFpbi5jeHgsIGN0ZXN0LmN4eDogRU5IOiBSZXBvcnQgZXJyb3IgYW5kIGV4aXQKCSAgd2hlbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZAoKMjAwNC0wNC0yMSAxMDozMyAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBQcmV2ZW50IGNyYXNoIHdoZW4gdGhlIGN1cnJlbnQKCSAgd29ya2luZyBkaXJlY3RvcnkgY2Fubm90IGJlIGVzdGFibGlzaGVkCgoyMDA0LTA0LTIwIDE4OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogSWYgdGhlIGxpbmUgZW5kcyB3aXRob3V0IG5ldy1saW5lCgkgIGNoYXJhY3RlciwgU3BsaXQgc2hvdWxkIHN0aWxsIHJldHVybiBzb21ldGhpbmcKCjIwMDQtMDQtMTkgMTc6MjEgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogUk5IOiBTdXBwb3J0IE5vRGFydENvdmVyYWdlIGluIHRoZSBiaW5hcnkKCSAgZGlyZWN0b3JvcnkKCjIwMDQtMDQtMTkgMTA6MzYgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGFja2FnZUNvbW1hbmQuaDoKCSAgRU5IIzY5NjogQWRkaW5nIFJFUVVJUkVEIG9wdGlvbiB0byBGSU5EX1BBQ0tBR0UgY29tbWFuZC4gIEl0IHdpbGwKCSAgdGVybWluYXRlIHRoZSBjbWFrZSBjb25maWd1cmUgc3RlcCBpZiB0aGUgcGFja2FnZSBpcyBub3QgZm91bmQuCgoyMDA0LTA0LTE4IDE0OjQxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oLAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHgsIGNtV3JpdGVGaWxlQ29tbWFuZC5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6CgkgIEVOSDogQWRkIGNoZWNrIGZvciBpbmZpbml0ZSBsb29wcy4gTWFrZSBzdXJlIHRoYXQgZmlsZXMgd3JpdHRlbgoJICB1c2luZyBXUklURV9GSUxFIGFuZCBGSUxFIFdSSVRFIGFyZSBub3QgdXNlZCBhcyBpbnB1dCBmaWxlcy4KCSAgRml4ZXMgQnVnICM2NzggLSBXUklURV9GSUxFIGFuZCBGSUxFKFdSSVRFLi4uKSBsZWFkIHRvIGluZmluaXRlCgkgIGxvb3BzCgoyMDA0LTA0LTE4IDEzOjE2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Tb3VyY2VGaWxlLmN4eDogRU5IOgoJICBBZGQgc3VwcG9ydCBmb3IgYWRkaW5nIG9iamVjdCBmaWxlcyBhbmQgc291cmNlcy4gVGhpcyB3YXkgeW91IGNhbgoJICB1c2UgZXh0ZXJuYWwgcHJvZ3JhbSBzdWNoIGFzIGFzc2VtYmxlciBvciBmb3J0cmFuIHRvIGdlbmVyYXRlCgkgIG9iamVjdCBmaWxlcy4gQWxzbyBzdGFyIG9mIGZpeGluZzogQnVnICM3NTcgLSBhZGQgLm8gZmlsZSBhcyBhCgkgIHNvdXJjZSBmaWxlCgoyMDA0LTA0LTE2IDE0OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGJldHRlciBhcmdzIGhhbmRsaW5nIGZvciAtSSBvcHRpb25zCgoyMDA0LTA0LTE2IDE0OjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBiZXR0ZXIgYXJncyBoYW5kbGluZyBmb3IgLUkKCSAgb3B0aW9uCgoyMDA0LTA0LTE2IDEzOjM2ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQmV0dGVyIHJlcG9ydGluZyBvZiB3aGF0IHRlc3RzIGZhaWxlZAoJICBhbmQgd3JpdGUgYSBmaWxlIHdpdGggZmFpbGVkIHRlc3RzCgoyMDA0LTA0LTE2IDA5OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDkxCgoyMDA0LTA0LTE1IDE2OjExICBhbmR5CgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogRU5IOiBBZGQgc3VwcG9ydAoJICBmb3IgSE9NRSBhbmQgRU5EIGtleXMuIEFsc28gZml4IEJ1ZyAjNjY2IC0gSW4gQ0NNYWtlIHdoZW4KCSAgZGVsZXRpbmcgc29tZXRoaW5nLCBpdCBkb2VzIG5vdCBzdG9wIGF0IHRoZSBiZWdpbm5pbmcgb2YgbGluZQoKMjAwNC0wNC0xNSAxNTo0NiAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogQlVHOiBQcmV2ZW50IGRlbGV0aW5nCgkgIG5vdCBleGlzdGluZyB2YXJpYWJsZXMgYW5kIHRoZXJlZm9yZSBwcmV2ZW50IGNyYXNoLiBGaXhlczogQnVnCgkgICM3NTAgLSBDQ01ha2UgY3Jhc2hlcyB3aGVuIGRlbGV0aW5nIGFsbCB2YXJpYWJsZXMKCjIwMDQtMDQtMTUgMTM6NTkgIGFuZHkKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvTGlicmFyeS9maWxlMi5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvZmlsZTIuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9maWxlMi5jeHg6IEVOSDogQWRkIHRlc3QgZm9yCgkgIFJFTU9WRV9ERUZJTklUSU9OCgoyMDA0LTA0LTE1IDEzOjU4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21SZW1vdmVEZWZpbml0aW9uc0NvbW1hbmQuY3h4LCBjbVJlbW92ZURlZmluaXRpb25zQ29tbWFuZC5oOgoJICBFTkg6IEFERCBSRU1PVkVfREVGSU5JVElPTiBjb21tYW5kLiBGaXggZmVhdHVyZSByZXF1ZXN0OiBCdWcgIzE4MgoJICAtIEFkZCBvcHBvc2l0ZSB0byBBRERfREVGSU5JVElPTlMKCjIwMDQtMDQtMTUgMTM6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4OiBCVUc6IGZpeCBmb3IgMjgyCgoyMDA0LTA0LTE1IDEzOjA5ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBIYW5kbGUgbWFrZSBpbnN0YWxsIHRhcmdldCBvbgoJICBWaXN1YWwgU3R1ZGlvIDYgYW5kIDcgYW5kIGluc3RhbGwgdGVtcGxhdGVzCgoyMDA0LTA0LTE1IDEyOjA3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBFTkg6IE9rLCB0aGF0IGlzIGl0LiBSZW1vdmUgb2xkCgkgIGluc3RhbGwgYW5kIHJlcGxhY2UgaXQgd2l0aCBuZXcKCjIwMDQtMDQtMTUgMTE6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE1GQy5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyA1MDYKCjIwMDQtMDQtMTUgMTE6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5jeHg6IEJVRzogZml4IGZvciBidWcgNjg5CgoyMDA0LTA0LTE1IDA4OjIyICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ2hlY2tGb3JQdGhyZWFkcy5jLCBDaGVja0Z1bmN0aW9uRXhpc3RzLmMsCgkgIENoZWNrVHlwZVNpemUuYywgQ2hlY2tWYXJpYWJsZUV4aXN0cy5jLCBUZXN0QmlnRW5kaWFuLmM6IEVOSDogZml4CgkgIHRlc3RzIGZvciBub24tYW5zaSBjIG9uIGhwIGFuZCByZW1vdmUgd2FybmluZ3MgZm9yIGFuc2kgYwoKMjAwNC0wNC0xNCAxNzowMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kSVRLLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDYwOAoKMjAwNC0wNC0xNCAxNjo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGV4dGVybmFsCgkgIHByb2plY3RzIGZvciB2YzcKCjIwMDQtMDQtMTQgMTU6NTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDaGVja0Z1bmN0aW9uRXhpc3RzLmMsIFRlc3RCaWdFbmRpYW4uYzogRU5IOiByZW1vdmUKCSAgd2FybmluZ3MgZnJvbSB0cnkgY29tcGlsZXMKCjIwMDQtMDQtMTQgMTQ6MjUgIGtpbmcKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbi5oOiBFTkg6IFJlbmFtZWQKCSAgLS1oZWxwLWxpc3QtY29tbWFuZHMgdG8gLS1oZWxwLWNvbW1hbmQtbGlzdCBhbmQgc3BsaXQgLS1oZWxwCgkgIFtjb21tYW5kXSBpbnRvIHNlcGFyYXRlIC0taGVscCBhbmQgLS1oZWxwLWNvbW1hbmQgY21kIG9wdGlvbnMuCgoyMDA0LTA0LTE0IDEzOjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaDogRU5IOiBBZGRlZAoJICAtLWhlbHAtbGlzdC1jb21tYW5kcyBvcHRpb24uCgoyMDA0LTA0LTE0IDA4OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDQtMDQtMTMgMTg6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBmaXggd2FybmluZwoKMjAwNC0wNC0xMyAxNjozMiAgaG9mZm1hbgoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY3Rlc3QuY3h4OiBFTkg6IGFkZCB0aGUgYWJpbGl0eQoJICB0byBydW4gYSBsaW1pdGVkIHN1Yi1zZXQgb2YgdGhlIHRlc3RzCgoyMDA0LTA0LTEyIDIxOjAxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEJVRzogZml4IGZvciBidWcgNTkzCgoyMDA0LTA0LTA5IDA5OjUzICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogRGlzcGxheSBzdHJpbmcgbm90IHNvbWUgd2VpcmQgcG9pbnRlcgoKMjAwNC0wNC0wOSAwODozNyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGFkZCBmdWxsIHBhdGgKCSAgbGlicmFyaWVzIHRvIHRoZSBkZXBlbmQgaW5mb3JtYXRpb24KCjIwMDQtMDQtMDggMTc6MTMgIGFuZHkKCgkqIE1vZHVsZXMvTWFjT1NYQnVuZGxlSW5mby5wbGlzdC5pbiwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oOiBFTkg6IEltcHJvdmUgTWFjIE9TWCBidW5kbGUKCSAgc3VwcG9ydAoKMjAwNC0wNC0wNyAxMjowNyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogZml4IHByb2JsZW0gd2l0aCBjdXN0b20KCSAgY29tbWFuZAoKMjAwNC0wNC0wNyAwOTo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogRU5IOiByZW1vdmUgd2FybmluZ3Mgb24gc2dpCgoyMDA0LTA0LTA1IDEwOjM1ICBraW5nCgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFUlI6IE5lZWQgdG8gdXNlIGxhdGVzdCB0ZXN0aW5nIGNvbmZpZ3VyYXRpb24KCSAgZXZlbiBvbiBicmFuY2guCgoyMDA0LTA0LTAyIDEzOjIxICBraW5nCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBCVUc6IF9MSU5LX1RZUEUgY2FjaGUgdmFyaWFibGUgc2hvdWxkIG5ldmVyCgkgIGJlIHN3aXRjaGVkIGZyb20gb3B0aW1pemVkIHRvIGRlYnVnIG9yIHZpY2UgdmVyc2EuCgoyMDA0LTA0LTAyIDA5OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0p1bXAvTGlicmFyeS9TaGFyZWQvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogZml4IGZvciBhcHBsZQoKMjAwNC0wNC0wMiAwODowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCB3YXJuaW5nIGFuZAoJICBzaGFkb3cgdmFyaWFibGUKCjIwMDQtMDQtMDEgMTY6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogZml4IGZvciBtaXNzaW5nIHZhbGlkIGltYWdlcwoKMjAwNC0wNC0wMSAxNToyOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NGd2Q5eC5jOiBFTkg6IEFkZGVkIGNvbW1lbnQgZm9yIGZ1dHVyZSB3b3JrCgkgIHRvIG1ha2UgZm9yd2FyZGluZyBleGVjdXRhYmxlIGFsd2F5cyBzdGF0aWNhbGx5IGxpbmtlZC4KCjIwMDQtMDQtMDEgMTQ6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBGaXggYnVnIG9uIHdpbmRvd3MuIFlvdSBjYW5ub3QgY291dAoJICBzdGQ6OnN0cmluZyBkaXJlY3RseQoKMjAwNC0wNC0wMSAxNDoxMSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0Lmg6IEVOSDogQWRkIGxvZ2dpbmcgb2Ygc3VibWl0dGluZwoKMjAwNC0wNC0wMSAwOTo1OSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBub24gcmVsYXRpdmUKCSAgcGF0aHMKCjIwMDQtMDQtMDEgMDg6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIG5vbgoJICByZWxhdGl2ZSBwYXRocyB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aAoKMjAwNC0wMy0zMSAxNjo0NCAga2luZwoKCSogTW9kdWxlcy9GaW5kVGNsc2guY21ha2U6IEVOSDogQWRkZWQgcmVnaXN0cnkgY2hlY2sgZm9yCgkgIEFjdGl2ZVN0YXRlIFRjbCA4LjQuNi4KCjIwMDQtMDMtMzEgMTE6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBSZWR1Y2UgbnVtYmVyIG9mCgkgIEdldEN1cnJlbnRXb3JraW5nRGlyZWN0b3J5CgoyMDA0LTAzLTMxIDExOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQ2hhbmdlIHRvIHRoZSBuZXcgZGlyZWN0b3J5CgoyMDA0LTAzLTMxIDEwOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtYWtlLmN4eDogRU5IOiBtYWtlIHJlbGF0aXZlIHBhdGhzIG9wdGlvbmFsIGFuZCBkZWZhdWx0IG9mZiwgYW5kCgkgIGFkZCBhIHRlc3QgZm9yIHRoZW0KCjIwMDQtMDMtMjkgMTM6MTYgIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogQlVHIzcyNDogTWVyZ2luZyAxLjI3LT4xLjI4CgkgIGNoYW5nZXMgdG8gQ01ha2UgMS44IGJyYW5jaC4KCjIwMDQtMDMtMjkgMTM6MTUgIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogQlVHIzcyNDogUHJlc2VydmluZyBjdXJyZW50CgkgIHdvcmtpbmcgZGlyZWN0b3J5IGR1cmluZyBmaWxlIHNlbGVjdGlvbi4KCjIwMDQtMDMtMjkgMTI6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogQlVHIzQ4NTogRml4aW5nIG9uIENNYWtlIDEuOAoJICBicmFuY2guCgoyMDA0LTAzLTI5IDEyOjA0ICBraW5nCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBCVUcjNjc5OgoJICBNZXJnaW5nIGZpeCB0byBDTWFrZSAxLjggYnJhbmNoLgoKMjAwNC0wMy0yOCAxNzo1OSAgYW5keQoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IFdoZW4KCSAgaW5zdGFsbGluZyBwcm9qZWN0LCB3cml0ZSBtYW5pZmVzdAoKMjAwNC0wMy0yOCAxNjozNiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZCBhIHdheSB0byBjbGVhbgoJICBhZGRpdGlvbmFsIGZpbGVzCgoyMDA0LTAzLTI4IDE2OjAwICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eDogRU5IOiBJZiBjb25maWd1cmUgZmlsZSBmYWlscyBkbyBub3QgY3JlYXRlCgkgIGRpcmVjdG9yeQoKMjAwNC0wMy0yOCAxMDoxNCAgYW5keQoKCSogU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4OiBFUlI6IFJlbW92ZSBkZWJ1ZwoKMjAwNC0wMy0yOCAxMDoxNCAgYW5keQoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IFN1cHBvcnQgcGF0aHMgd2l0aCBzcGFjZXMKCjIwMDQtMDMtMjggMDk6NDYgIGFuZHkKCgkqIFNvdXJjZS86IGNtSW5jbHVkZUNvbW1hbmQuaCwgY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBET0M6CgkgIEZpeCBjb21tZW50CgoyMDA0LTAzLTI3IDIwOjU5ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvUG9zdEluc3RhbGwuY21ha2UsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvUHJlSW5zdGFsbC5jbWFrZSwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvUG9zdEluc3RhbGwuY21ha2UsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9QcmVJbnN0YWxsLmNtYWtlOiBFTkg6IEFkZCBwcmUgYW5kIHBvc3QKCSAgaW5zdGFsbCBzY3JpcHQgc3VwcG9ydAoKMjAwNC0wMy0yNyAxOTo1MiAgYW5keQoKCSogU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5oLAoJICBUZXN0cy9Mb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIHN1cHBvcnQgZm9yCgkgIGltcG9ydGluZyBtb2R1bGVzIHdpdGhvdXQgc3BlY2lmeWluZyBwYXRoCgoyMDA0LTAzLTI3IDE5OjUyICBhbmR5CgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBFUlI6IFRoYXQgc2xhc2ggaXMgdW5uZWNlc3NhcnkKCjIwMDQtMDMtMjcgMTM6MjAgIHN0YXJyZXZlbGQKCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogRVJSOiBTaG91bGRuJ3QgYmUgYWRkaW5nIHhsaWJzIHRvCgkgIG9wZW5nbGxpYnMgb24gb3N4CgoyMDA0LTAzLTI1IDE2OjA2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGNvdmVyYWdlIGNoYW5nZSB0aGF0IHdpbGwgcHJvYmFibHkgZW5kIGluIGFuCgkgIGluZmluaXRlIGxvb3AKCjIwMDQtMDMtMjUgMDg6NDUgIGtpbmcKCgkqIFNvdXJjZS86IGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oOiBFTkg6IENsYXJpZmllZCBkb2N1bWVudGF0aW9uIGZvcgoJICBMSU5LX0xJQlJBUklFUyBhbmQgVEFSR0VUX0xJTktfTElCUkFSSUVTLgoKMjAwNC0wMy0yNCAxNjozMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEFkZGVkIHN1cHBvcnQgdG8KCSAgbGlicmFyeSBmbGFncyBwYXJzZXIgZm9yIC1XbCBhbmQgLVIgb3B0aW9ucy4KCjIwMDQtMDMtMjMgMTU6MDIgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogRVJSOiBGaXhlZCBpbmNvcnJlY3QKCSAgZG9jdW1lbnRhdGlvbiBmb3IgQ01BS0VfQ1hYX1dBUk5JTkdfTEVWRUwuICBTdWJtaXR0ZWQgYnkgRGF2aWQKCSAgQ29sZS4KCjIwMDQtMDMtMjAgMjA6MzcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBGaXggd2FybmluZwoKMjAwNC0wMy0xOSAxNDo0OCAga2luZwoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBFTkg6IENsYXJpZmllZCByZWN1cnNpdmUKCSAgVFJZX0NPTVBJTEUgZXJyb3IgbWVzc2FnZS4KCjIwMDQtMDMtMTkgMDk6MzQgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRVJSOiBGaXggd2FybmluZ3MgYWJvdXQgd3JvbmcgZm9ybWF0CgoyMDA0LTAzLTE4IDA5OjUyICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogRml4IGJ1aWxkIG9uIGJyb2tlbiBDKysgY29tcGlsZXMgd2l0aCBubwoJICAhPSBvcGVyYXRvciBmb3Igc3RkOjpzdHJpbmcKCjIwMDQtMDMtMTcgMTE6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEJVRzogY2hhbmdlIGRpcmVjdG9yeSBiZWZvcmUKCSAgcnVubmluZyB0ZXN0IGFuZCByZW1lbWJlciB0ZXN0IG51bWJlcgoKMjAwNC0wMy0xNyAwOTo0MiAgYmVyawoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5oLCBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogQlVHOiBXaGVuCgkgIGVycm9yIG9jY3VycywgdHJ5IGNvbXBpbGVzIHNob3VsZCBzdGlsbCB3b3JrCgoyMDA0LTAzLTE3IDA4OjIwICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5oOiBFUlI6IE9uIHNvbWUgY29tcGlsZXJzIHN0cnVjdHVyZSBpbnNpZGUgY2xhc3MKCSAgY2Fubm90IHJlZmVyZW5jZSBwcml2YXRlIHR5cGRlZnMgZnJvbSB0aGUgc2FtZSBjbGFzcwoKMjAwNC0wMy0xNiAxMjo1NCAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IEVSUjogQWRkZWQgbWlzc2luZwoJICBpbmNsdWRlIGZvciBhdXRvX3B0ci4KCjIwMDQtMDMtMTUgMTQ6NTQgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBBbHdheXMgaW5jbHVkZSBLV1N5cyBoZWFkZXIKCSAgZmlsZXMgZGlyZWN0b3J5CgoyMDA0LTAzLTE1IDEwOjQ0ICBraW5nCgoJKiBTb3VyY2UvY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eDogQlVHIzY3NTogSWYgbm90CgkgIGFwcGVuZGluZywgZG8gY29weS1pZi1kaWZmZXJlbnQgb24gZXhwb3J0ZWQgZmlsZS4KCjIwMDQtMDMtMTUgMDk6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0Lmg6IEVSUjogRml4IGJ1aWxkCgoyMDA0LTAzLTE0IDEyOjI4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBzdXBwb3J0IGZvciBmdXR1cmUgdGFncwoKMjAwNC0wMy0xNCAxMToyMyAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRU5IOiBDb3VudCB0ZXN0cyB3aGlsZSB0aGV5IGdvLgoJICBBbHNvIGluIHRoZSBsb2dzIHJlcG9ydCBtb3JlIHN0dWZmIGxpa2UgZWxhcHNlZCB0aW1lIGV0Yy4KCjIwMDQtMDMtMTIgMTQ6NDMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFUlI6IFNJR1NFR1YgPT0gU0lHQlVTIG9uIEJlT1MuCgoyMDA0LTAzLTEwIDE0OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oOiBFTkg6IHVwZGF0ZSB2czcxIGdlbmVyYXRvciB0bwoJICBzdXBwb3J0IGV4Y2x1ZGVkIHN1YmRpcnMKCjIwMDQtMDMtMDkgMTY6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaCwgVGVzdHMvU3ViRGlyL0V4ZWN1dGFibGUvdGVzdC5jeHg6IEVOSDoKCSAgYWRkIG5ldyBzdWJkaXJlY3RvcnkgZXhjbHVkZSBmcm9tIHRvcCBvcHRpb24KCjIwMDQtMDMtMDkgMTY6MjAgIGhvZmZtYW4KCgkqIFRlc3RzL1N1YkRpci86IENNYWtlTGlzdHMudHh0LCBFeGFtcGxlcy9DTWFrZUxpc3RzLnR4dCwKCSAgRXhhbXBsZXMvZXhhbXBsZTEvQ01ha2VMaXN0cy50eHQsIEV4YW1wbGVzL2V4YW1wbGUxL2V4YW1wbGUxLmN4eCwKCSAgRXhhbXBsZXMvZXhhbXBsZTIvQ01ha2VMaXN0cy50eHQsIEV4YW1wbGVzL2V4YW1wbGUyL2V4YW1wbGUyLmN4eCwKCSAgRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwgRXhlY3V0YWJsZS90ZXN0LmN4eDogRU5IOiBjcmVhdGUgbmV3CgkgIHRlc3QgdG8gdGVzdCBzdWJkaXIgZXhjbHVkZQoKMjAwNC0wMy0wOSAxMjozMSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBQcm9wZXJseSBidWlsZAoJICBXSU4zMiBleGVjdXRhYmxlcwoKMjAwNC0wMy0wOSAwNzo1MCAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBUcnkgdG8gcmVtb3ZlIHdhcm5pbmcKCjIwMDQtMDMtMDggMjI6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5oOiBFTkg6IEFkZCBjb21tZW50IGFib3V0CgkgIFJVTlRJTUVfRElSRUNUT1JZCgoyMDA0LTAzLTA4IDE5OjA1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaDogRU5IOiBNb3ZlIGltcGxlbWVudGF0aW9uIG9mIGNvbmZpZ3VyZV9maWxlIHRvCgkgIGNtTWFrZWZpbGUsIHNvIHRoYXQgb3RoZXIgY2xhc3NlcyBjYW4gdXNlIGl0CgoyMDA0LTAzLTA0IDEwOjA1ICBraW5nCgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oLAoJICBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvSW5wdXRGaWxlLmguaW46IEVOSDogQWRkZWQgU1RSSU5HKENPTkZJR1VSRQoJICAuLi4pIGNvbW1hbmQuCgoyMDA0LTAzLTAzIDE4OjE4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaDogRU5IOiBNb3ZlZCB2YXJpYWJsZSBhbmQgI2NtYWtlZGVmaW5lIHJlcGxhY2VtZW50CgkgIGZyb20gY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHggdG8gYSBDb25maWd1cmVTdHJpbmcgbWV0aG9kIG9uCgkgIGNtTWFrZWZpbGUuICBUaGlzIHdpbGwgZ2l2ZSBvdGhlciBjb21tYW5kcyBhY2Nlc3MgdG8gdGhlCgkgIGNvbmZpZ3VyYXRpb24gY29kZS4KCjIwMDQtMDItMjkgMTU6MTMgIGFuZHkKCgkqIFRlc3RzL0NPbmx5L0NNYWtlTGlzdHMudHh0OiBFUlI6IFRvbyBtdWNoIGNvbW1pdHMKCjIwMDQtMDItMjkgMTU6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgVGVzdHMvQ09ubHkvQ01ha2VMaXN0cy50eHQ6IEVSUjogRml4CgkgIEdldE1vZHVsZXNGaWxlCgoyMDA0LTAyLTI5IDE0OjIzICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogSGFuZGxlIGJhY2t0aWNrcyBhcwoJICBhIHZhbGlkIGxpYnJhcnkKCjIwMDQtMDItMjkgMDk6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBDbGVhbnVwIGFuZCByZW1vdmUKCSAgd2FybmluZwoKMjAwNC0wMi0yOSAwOTo1MSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHg6IEVSUjogRml4IGJ1aWxkIG9uIE1hYwoKMjAwNC0wMi0yOCAxODo1OSAgYW5keQoKCSogTW9kdWxlcy9NYWNPU1hCdW5kbGVJbmZvLnBsaXN0LmluLAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4LAoJICBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21UYXJnZXQuaDogRU5IOiBTdHlhcnQgd29ya2luZyBvbgoJICBidW5kbGVzIHN1cHBvcnQgYW5kIGFic3RyYWN0IFdJTjMyX0VYRUNVVEFCTEUKCjIwMDQtMDItMjQgMTg6NDggIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBGaXggY3Jhc2guIFdlIHNob3VsZCBjaGVjayBvdXRwdXQKCSAgYmVmb3JlIGFwcGVuZGluZyB0byBpdAoKMjAwNC0wMi0yNCAxMDowNSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogQlVHOiBDVlMgdXBkYXRlIGZpeC4gSWYgdGhlIENWUwoJICBjb21tYW5kIHdhcyBub3Qgc2V0IHRoZXJlIHdhcyBubyBpbmRpY2F0aW9uIHRoYXQgc29tZXRoaW5nIHdlbnQKCSAgd3JvbmcuIE5vdyBpdCB3aWxsIG1ha2Ugc3VyZSBpdCBkb2VzLiBBbHNvIHN0YXJ0IHdvcmtpbmcgb24KCSAgbXVsdGlwbGUgY29uZmlndXJhdGlvbiBzY3JpcHRzCgoyMDA0LTAyLTI0IDEwOjA0ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogUHV0IFByb2Nlc3MgZXhlY3V0aW9uIGVycm9ycyBpbgoJICBvdXRwdXQgYW5kIGhvbm9yIHZlcmJvc2l0eQoKMjAwNC0wMi0yMyAwOTo1NiAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4OiBFTkg6IEltcHJvdmUgY292ZXJhZ2UKCSAgc3VwcG9ydCBhbmQgYWRkIG1vcmUgdmVyYm9zaXR5CgoyMDA0LTAyLTIzIDA5OjU0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eDogRVJSOiBNZXJnaW5nIDEuNy0+MS45IGNoYW5nZXMgdG8KCSAgQ01ha2UgMS44IGJyYW5jaC4KCjIwMDQtMDItMjMgMDk6NTMgIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvUGF0aERpYWxvZy5jcHA6IEVSUjogTWVyZ2luZyAxLjIgLT4gMS4zIHdhcm5pbmcKCSAgZml4IHRvIENNYWtlIDEuOCBicmFuY2guCgoyMDA0LTAyLTIyIDIyOjA3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmgsIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwKCSAgY21FbHNlQ29tbWFuZC5oLCBjbUVuZElmQ29tbWFuZC5oLCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUZpbmRGaWxlQ29tbWFuZC5oLCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLCBjbUZpbmRQYXRoQ29tbWFuZC5oLAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLAoJICBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmgsIGNtUmVtb3ZlQ29tbWFuZC5oLAoJICBjbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5oLCBjbVdyaXRlRmlsZUNvbW1hbmQuaDogRU5IOiBNYWtlCgkgIG1vcmUgY29tbWFuZHMgc2NyaXB0YWJsZQoKMjAwNC0wMi0yMiAyMjowNiAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogQlVHOiBQcmV2ZW50IGNyYXNoIHdoZW4KCSAgZGVsZXRpbmcgdGhlIGxhc3QgY2FjaGUgaXRlbQoKMjAwNC0wMi0yMiAxMzoxNCAgYW5keQoKCSogU291cmNlLzogY21DUGx1Z2luQVBJLmN4eCwgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsCgkgIGNtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuaCwKCSAgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oLCBjbVFUV3JhcENQUENvbW1hbmQuaCwKCSAgY21RVFdyYXBVSUNvbW1hbmQuaCwgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4LCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuaCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5oLCBjbVZUS1dyYXBUY2xDb21tYW5kLmgsCgkgIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4OiBFTkg6IENsZWFudXBzCgoyMDA0LTAyLTIwIDE0OjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4LCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IE9rLCB3aGVuIGRvaW5nIGNtYWtlCgkgIC1QIHlvdSBzaG91bGQgbm90IGhhdmUgdG8gc3F1aXNoIGZpbGVuYW1lIG5leHQgdG8gLVAsIFRoZXJlCgkgIHNob3VsZCBiZSBzcGFjZSBiZXR3ZWVuCgoyMDA0LTAyLTIwIDA5OjI1ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogSGFuZGxlIHdyb25nIGxpYnJhcnkgb24gc3VuIGFuZCBubwoJICBwcm9qZWN0IG9uIHZpc3VhbCBzdHVkaW8gNwoKMjAwNC0wMi0xOSAxMDozMyAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IENvbW1lbnQgb3V0IHRlc3QKCjIwMDQtMDItMTkgMTA6MzIgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cAoKMjAwNC0wMi0xOSAxMDoyOSAgYW5keQoKCSogU291cmNlL2NtSWZDb21tYW5kLmg6IEVOSDogTWFrZSBJRiBjb21tYW5kIHNjcmlwdGFibGUKCjIwMDQtMDItMTkgMTA6MjggIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogQlVHOiBGaXhlZCBpZGVudGlmaWNhdGlvbiBvZiAoIGFuZCApIHRva2VucwoJICB0byBhdm9pZCBmaW5kaW5nIHRoZW0gaW4gc3RyaW5nIGxpdGVyYWxzLgoKMjAwNC0wMi0xOSAwOTozNSAgYW5keQoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmg6IEVOSDogTWFjcm8gc2hvdWxkIGJlIHNjcmlwdGFibGUKCjIwMDQtMDItMTkgMDk6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRVJSOiBEbyBub3QgZXhpdCB3aGVuIGZpbmQgYmFkIGN1c3RvbSBmaWxlcy4KCjIwMDQtMDItMTcgMDg6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4OiBCVUc6IGRvbid0IGNyYXNoIHdoZW4gbG9hZGluZyBhCgkgIG1vZHVsZSB0aGF0IGRvZXMgbm90IGV4aXN0CgoyMDA0LTAyLTE2IDEwOjU3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1BhdGhEaWFsb2cuY3BwOiBzaHV0IHVwIHVuZml4YWJsZSB3YXJuaW5nCgoyMDA0LTAyLTE2IDEwOjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZS5jbWFrZS5oLmluLCBjbUR5bmFtaWNMb2FkZXIuY3h4OiBFTkg6IHVzZQoJICBjbWFrZSB2YXJpYWJsZXMgZm9yIGNtRHluYW1pY0xvYWRlciB0byBmaWd1cmUgb3V0IGxpYnJhcnkgcHJlZml4CgkgIGFuZCBleHRlbnNpb25zCgoyMDA0LTAyLTE2IDA5OjUwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLCBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDoKCSAgQlVHOiBmaXggbWluZ3cgbW9kdWxlIGxvYWQgdGVzdHMKCjIwMDQtMDItMTQgMTY6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2U6IHNoYXJlZCBtb2R1bGVzIGFyZSBub3QgbGlua2VkCgkgIHNvIGRvIG5vdCB1c2UgbGliIHByZWZpeAoKMjAwNC0wMi0xMyAxMDo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWdjYy5jbWFrZSwgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDoKCSAgRU5IOiBjaGFuZ2UgbWluZ3cgdG8gdXNlIGxpYmZvby5kbGwgaW5zdGVhZCBvZiBmb28uZGxsIHNpbmNlIGl0CgkgIGNhbiBsaW5rIHRvIHRoZW0KCjIwMDQtMDItMTIgMjE6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiBBZGQgREVTVERJUiBzdXBwb3J0CgoyMDA0LTAyLTEyIDEzOjM4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eDogRVJSOiBGaXhlZCB1c2Ugb2YgX2ZpbmRmaXJzdCBmb3IgTVNWQwoJICA2LgoKMjAwNC0wMi0xMiAxMToyMyAgbWFydGluawoKCSogU291cmNlL2t3c3lzL0RpcmVjdG9yeS5jeHg6IGZpeCBpbmNvcnJlY3Qgc2lnbmF0dXJlIGZvciBmaW5kZmlyc3QKCjIwMDQtMDItMTIgMDk6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRml4IGluc3RhbGwgdGVzdCBmYWlsIG9uCgkgIG1pbmd3CgoyMDA0LTAyLTEyIDA4OjU4ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IExpa2UgY3lnd2luLCBtaW5ndyBkb2VzIG5vdAoJICBwcm9kdWNlIC5saWIgZmlsZSBmb3Igc2hhcmVkIGxpYnJhcmllcywgc28gc2VhcmNoIGZvciBkbGwgd2hlbgoJICBzZWFyY2hpbmcgZm9yIGxpYnJhcnkKCjIwMDQtMDItMTEgMTA6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRVJSOiBSZW1vdmUgd2FybmluZwoKMjAwNC0wMi0xMSAwODoyOCAgYW5keQoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IE9uIEN5Z3dpbiBzaGFyZWQKCSAgbGlicmFyaWVzIGhhdmUgb25seSAuZGxsIGZpbGUgbm8gLmxpYiBmaWxlLCBzbyB3aGVuIGZpbmRpbmcKCSAgbGlicmFyeSBvbiBjeWd3aW4sIHNlYXJjaCBhbHNvIGZvciAuZGxsLiBBbHNvIGZpeCBTaW1wbGVJbnN0YWxsCgkgIHRlc3Qgb24gY3lnd2luCgoyMDA0LTAyLTEwIDE1OjUzICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogVXNlIGZpbGVwYXRoIGZvbGxvd2VkIGJ5IGZpbGVuYW1lIG5vdAoJICBhbm90aGVyIGZpbGVwYXRoCgoyMDA0LTAyLTEwIDE1OjUxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBsb2dnaW5nIG9mIHRlc3RzIHdoaWxlCgkgIHJ1bm5pbmcuIFRoaXMgd2F5IHlvdSBjYW4gYWN0dWFsbHkgc2VlIHRoZSBvdXRwdXQgYXMgaXQgZ29lcwoKMjAwNC0wMi0wOSAxNjo0MCAgYW5keQoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL0NNYWtlTGlzdHMudHh0LAoJICBTaW1wbGVJbnN0YWxsUzIvQ01ha2VMaXN0cy50eHQ6IEVOSDogU29tZSBjbGVhbnVwIGFuZCB0cnkgdG8gZml4CgkgIFZpc3VhbCBTdHVkaW8gYnVpbGRzCgoyMDA0LTAyLTA5IDE1OjM0ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogLWwgb3Igd2hhdGV2ZXIKCSAgc2hvdWxkIGJlIGF0IGJlZ2lubmluZyBvZiBsaW5lLgoKMjAwNC0wMi0wOSAxMTozMyAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9TaW1wbGVJbnN0YWxsL2luc3QuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvaW5zdC5jeHg6IEVOSDogU29tZSBzeXN0ZW1zIGRvIG5vdCBoYW5kbGUKCSAgc3BhY2VzIGluIHRoZSBwYXRoCgoyMDA0LTAyLTA4IDIwOjA4ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBJbnN0YWxsIHN0YWdlMiB0bwoJICBoYW5kbGUgcnVudGltZSBwcm9ibGVtCgoyMDA0LTAyLTA4IDEzOjIzICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogQXR0ZW1wdCB0byBzdXBwb3J0IHRlc3RzIGluIGZ1bmt5CgkgIHN1YmRpcmVjdG9yaWVzCgoyMDA0LTAyLTA4IDEyOjA0ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1NpbXBsZUluc3RhbGwvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGQgc2Vjb25kIHBhcnQgb2YKCSAgU2ltcGxlSW5zdGFsbAoKMjAwNC0wMi0wNiAxNjo0MyAga2luZwoKCSogU291cmNlL2NtR2xvYi5jeHg6IEJVRyM0ODA6IE1lcmdpbmcgMS4xMC0+MS4xMSBjaGFuZ2VzIHRvIDEuOAoJICBicmFuY2guCgoyMDA0LTAyLTA2IDE1OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iLmN4eDogRU5IOiBXaGVuIG5vciBzcGVjaWZ5aW5nIGZ1bGwgcGF0aCwgbWFrZSBzdXJlCgkgIGl0IGFjdHVhbGx5IHdvcmtzLCBvbiBicm9rZW4gZmlsZXN5c3RlbXMgZml4IGNhc2Ugb2YgZmlsZXMuCgoyMDA0LTAyLTA2IDE1OjE4ICBhbmR5CgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVOSDogSGFuZGxlIHNjcmlwdCBtb2RlCgoyMDA0LTAyLTA2IDEzOjQ3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUVuZEZvckVhY2hDb21tYW5kLmgsIGNtRm9yRWFjaENvbW1hbmQuaCwKCSAgY21TdHJpbmdDb21tYW5kLmg6IEVOSDogTWFrZSBtb3JlIGNvbW1hbmRzIHNjcmlwdGFibGUKCjIwMDQtMDItMDYgMTA6NDkgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogRU5IOiBCZXR0ZXIgZmluZGluZyBvZiBKTkkKCjIwMDQtMDItMDUgMTA6MTIgIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFUlI6IEZpeCB0ZXN0IG9uIHdpbmRvd3Mgd2l0aAoJICBuZXR3b3JrIHBhdGhzCgoyMDA0LTAyLTA0IDA5OjQyICBiZXJrCgoJKiBUZXN0cy86IFNpbXBsZUluc3RhbGwvZm9vLmMsIFNpbXBsZUluc3RhbGwvZm9vLmgsCgkgIFNpbXBsZUluc3RhbGwvaW5zdC5jeHgsIFNpbXBsZUluc3RhbGxTMi9mb28uYywKCSAgU2ltcGxlSW5zdGFsbFMyL2Zvby5oLCBTaW1wbGVJbnN0YWxsUzIvaW5zdC5jeHg6IEVOSDogRml4IHRlc3Qgb24KCSAgSFAtVVgKCjIwMDQtMDItMDMgMTE6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRU5IOiBGaXggc3VwcG9ydCBmb3IgZGVidWcgcG9zdGZpeAoKMjAwNC0wMi0wMyAxMDo1MyAgYW5keQoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbVNldENvbW1hbmQuaDoKCSAgRU5IOiBBZGQgc3VwcG9ydCBmb3IgaW5zdGFsbCBwb3N0Zml4CgoyMDA0LTAyLTAzIDEwOjI1ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogQ2xlYW51cCBvdXRwdXQKCjIwMDQtMDItMDMgMDk6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IEZpeCBBRERfREVQRU5ERU5DSUVTCgkgIG9uIFVuaXggbWFrZWZpbGVzIGFuZCBmaXggU2ltcGxlSW5zdGFsbCB0ZXN0IG5vdCB0byBsaW5rIHRoZQoJICBtb2R1bGUKCjIwMDQtMDItMDIgMTg6MjMgIGFuZHkKCgkqIFRlc3RzLzogU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0OiBFTkg6IE1ha2UgdGVzdCB3b3JrIG9uIHdpbmRvd3MKCjIwMDQtMDItMDIgMTg6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBQcm9wYWdhdGUgYnVpbGQgdHlwZQoKMjAwNC0wMi0wMSAxNjo0OCAgYW5keQoKCSogVGVzdHMvOiBTaW1wbGVJbnN0YWxsL2xpYjIuaCwgU2ltcGxlSW5zdGFsbC9saWIzLmgsCgkgIFNpbXBsZUluc3RhbGxTMi9saWIyLmgsIFNpbXBsZUluc3RhbGxTMi9saWIzLmg6IEVOSDogRml4IGV4cG9ydHMKCjIwMDQtMDItMDEgMTI6NTMgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9mb28uYywgVGVzdHMvU2ltcGxlSW5zdGFsbC9mb28uaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9pbnN0LmN4eCwgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWIxLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbC9saWIxLmgsIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliMi5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGwvbGliMi5oLCBUZXN0cy9TaW1wbGVJbnN0YWxsL2xpYjMuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsL2xpYjMuaCwgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvZm9vLmMsIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9mb28uaCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2luc3QuY3h4LCBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliMS5jeHgsCgkgIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9saWIxLmgsIFRlc3RzL1NpbXBsZUluc3RhbGxTMi9saWIyLmN4eCwKCSAgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjIuaCwgVGVzdHMvU2ltcGxlSW5zdGFsbFMyL2xpYjMuY3h4LAoJICBUZXN0cy9TaW1wbGVJbnN0YWxsUzIvbGliMy5oOiBFTkg6IEFkZCBpbnN0YWxsIHRlc3QKCjIwMDQtMDEtMjkgMTA6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBrZWVwIG91dHB1dAoKMjAwNC0wMS0yOSAwOTowMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHJlbW92ZSBkZXBlbmQgb24KCSAgQ01ha2VDYWNoZSBmb3IgcmVidWlsZF9jYWNoZSB0YXJnZXQgdG8gYXZvaWQgZG91YmxlIHJlYnVpbGQgY2FjaGUKCjIwMDQtMDEtMjggMTM6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBBZnRlciBydW5uaW5nIGJ1aWx0aW4gY3Rlc3QsIGdvIGJhY2sgdG8KCSAgdGhlIG9yaWdpbmFsIGRpcmVjdG9yeQoKMjAwNC0wMS0yOCAxMToyMiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBFUlI6IFJlbW92ZSBjb3V0CgoyMDA0LTAxLTI4IDEwOjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEJVRzogQ29ycmVjdGVkIGRldGVjdGlvbiBvZgoJICBleGNlcHRpb25hbCBleGl0IGNvZGUuCgoyMDA0LTAxLTI4IDEwOjU5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBBZGRlZCBleGNlcHRpb24gc3RyaW5nIHRvCgkgIGFibm9ybWFsIHRlcm1pbmF0aW9uIHJlcG9ydC4KCjIwMDQtMDEtMjggMDk6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogSW5jbHVkaW5nIGV4Y2VwdGlvbiBzdHJpbmcgaW4gdGVzdCdzIGVycm9yCgkgIG91dHB1dC4KCjIwMDQtMDEtMjggMDg6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eDogRVJSOiBSZW1vdmUgd2FybmluZyBhYm91dCB1bnVzZWQKCSAgdmFyaWFibGUKCjIwMDQtMDEtMjcgMTc6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiByZW1vdmUgb2xkIGZpbGUKCjIwMDQtMDEtMjcgMTc6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBhZGQgYSBkeW5hbWljIGxvYWRlciBmbHVzaCBjYWNoZQoKMjAwNC0wMS0yNyAxNzoxMSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IE9ubHkgZGlzcGxheSB0aGUgcHJlY29udGV4dCBvcgoJICBwb3N0Y29udGV4dCB1cCB0byB0aGUgbmV4dCBvciBwcmV2aW91cyB3YXJuaW5nIG9yIGVycm9yCgoyMDA0LTAxLTI3IDE0OjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IEZNTQoKMjAwNC0wMS0yNyAxMjozNyAgYW5keQoKCSogU291cmNlLzogY21GaWxlQ29tbWFuZC5jeHgsIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuaCwgY21UYXJnZXQuaCwKCSAgTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IE1ha2UgaW5zdGFsbCBvbiB3aW5kb3dzIHNlZW1zIHRvCgkgIHdvcmsgbm93CgoyMDA0LTAxLTI3IDA5OjUzICBhbmR5CgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5jeHg6IEVSUjogRml4IGJ1aWxkIG9uIE1pbmd3LiBMb29rcyBsaWtlCgkgIE1pbmd3IGlzIG1vcmUgbGlrZSB2aXN1YWwgc3R1ZGlvLi4uIFRoYW5rcyBGcmVkIFdoZWVsZXIKCjIwMDQtMDEtMjcgMDk6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogZml4IGZvciBiYWNrdXAgcmVzdG9yZQoKMjAwNC0wMS0yNyAwOTowNSAgYW5keQoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBFUlI6IEFuZCB5ZXQgYW5vdGhlciBzZXQgb2YgY29uc3RhbnRzCgkgIGZvciBmaWxlIHBlcm1pc3Npb25zCgoyMDA0LTAxLTI3IDA5OjA1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21TeXN0ZW1Ub29scy5oOiBFUlI6IFByb3Blcmx5CgkgIGhhbmRsZSBtb2RlX3Qgb24gYm9ybGFuZAoKMjAwNC0wMS0yNiAxNzo1MiAgYW5keQoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBFUlIgRml4IGJvcmxhbmQKCjIwMDQtMDEtMjYgMTY6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggZm9yIHNwYWNlcyBpbiBwYXRoCgoyMDA0LTAxLTI2IDE2OjI0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5jeHg6IEVOSDogU2V2ZXJhbAoJICB3aW5kb3dzIGJ1Z3MgYW5kIGZpeGVzCgoyMDA0LTAxLTI2IDE2OjA1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6IEFkZCB1bml4IHN0eWxlCgkgIGluc3RhbGwgaW4gZmlsZSBjb21tYW5kCgoyMDA0LTAxLTI2IDE1OjUwICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBQcmVzZXJ2ZSBwZXJtaXNzaW9ucyB3aGVuIGNvcHlpbmcgZmlsZXMKCjIwMDQtMDEtMjYgMTU6MDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBjbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBGaXggYnVpbGQKCSAgcHJvYmxlbXMgb24gVmlzdWFsIFN0dWRpbyA2CgoyMDA0LTAxLTI2IDE0OjU1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZCBjb2RlIGZvcgoJICBzZXR0aW5nIGFuZCBnZXR0aW5nIHBlcm1pc3Npb25zCgoyMDA0LTAxLTI2IDE0OjQxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogSW1wcm92ZSBjYWxsaW5nIG9mCgkgIFJ1blNpbmdsZSBjb21tYW5kIGFuZCBmaXggY29tcGlsZSBlcnJvcgoKMjAwNC0wMS0yNiAxNDowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGZvcmdvdCByZXR1cm4gdmFsdWUKCjIwMDQtMDEtMjYgMTM6NTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogQWRkIHN1cHBvcnQgZm9yCgkgIENUZXN0Q3VzdG9tLmN0ZXN0LCB3aGljaCBtb2RpZmllcyBzb21lIGJlaGF2aW9yIG9mIGN0ZXN0CgoyMDA0LTAxLTI2IDEzOjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6IEJVRzogZml4IHB1dC9nZXQgZW52CgkgIHByb2JsZW1zCgoyMDA0LTAxLTI2IDEzOjMyICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVOSDogZml4IGZvciBidWlsZCBvbiBjeWd3aW4gbWluZ3cKCjIwMDQtMDEtMjUgMTk6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IEVSUjogRml4IHN0ZDo6CgkgIG5hbWVzcGFjZQoKMjAwNC0wMS0yNSAxOToyNSAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEdlbmVyYXRvci5oOiBFTkg6IFN0YXJ0IGFkZGluZyBuZXcgaW5zdGFsbGF0aW9uIGZyYW1ld29yawoKMjAwNC0wMS0yNCAxMjo1MiAga2luZwoKCSogVGVzdHMvSnVtcC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBCVUc6IER1ZSB0byBiYWNrd2FyZAoJICBvcmRlcmluZywgVmlzdWFsIFN0dWRpbyBHVUlzIG5lZWQgdGhlIGxpbmsgZGlyZWN0b3JpZXMgZm9yIHRoZQoJICBsaWJyYXJpZXMgdGhlIGZpcnN0IHRpbWUuCgoyMDA0LTAxLTIzIDE1OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IC5saWIgZnJvbSBhIC5kbGwKCSAgc2hvdWxkIGdvIGluIG1fTGlicmFyeU91dHB1dFBhdGggbm90IG1fRXhlY3V0YWJsZU91dHB1dFBhdGgKCjIwMDQtMDEtMjMgMTM6NDMgIGhvZmZtYW4KCgkqIFRlc3RzL0p1bXAvTGlicmFyeS9TaGFyZWQvQ01ha2VMaXN0cy50eHQ6IEJVRzogbGliZGlyIHdhcyBzZXQKCSAgd3Jvbmcgb24gd2luZG93cwoKMjAwNC0wMS0yMyAxMzo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGp1bXAgb3ZlciBmZWF0dXJlCgkgIHdhcyBub3Qgd29ya2luZyBmb3Igd2luZG93cwoKMjAwNC0wMS0yMyAxMzoxOSAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBGaXggdXJsCgoyMDA0LTAxLTIzIDEzOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgZGVidWcKCSAgZmxhZ3MgaW50byBwcm9qZWN0IGZpbGVzCgoyMDA0LTAxLTIzIDEzOjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogbW9yZSBmaXhlcyBmb3IKCSAgcmVsYXRpdmUgcGF0aCBzdHVmZgoKMjAwNC0wMS0yMyAxMjo0NiAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBBZGQgbmlnaHRseSByZXBvcnRpbmcKCjIwMDQtMDEtMjMgMTI6NDAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2U6IEVOSDogdXNlIENGTEFHUyBmb3IKCSAgdGVzdGluZyBmb3IgZ251CgoyMDA0LTAxLTIzIDExOjI2ICBhbmR5CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IE1vcmUgY29udGludW91cyBlLW1haWwgc3R1ZmYKCjIwMDQtMDEtMjMgMTE6MjIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBjb252ZXJ0IHRoZSAubwoJICBmaWxlcyB0byBub3QgaGF2ZSAuLwoKMjAwNC0wMS0yMyAwOTo1NCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEJVRzogRml4IHRvIGJ1aWxkIHJ1bGUgZ2VuZXJhdGlvbgoJICB3aXRoIHJlbGF0aXZlIHBhdGhzLgoKMjAwNC0wMS0yMyAwOTo0OCAga2luZwoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBJbXByb3ZpbmcgQ01ha2UgY29udGludW91cyBkYXNoYm9hcmRzLgoJICBTZW5kaW5nIGNvbnRpbnVvdXMgZW1haWwgZm9yIGFsbCBraW5kcyBvZiBmYWlsdXJlcy4KCjIwMDQtMDEtMjMgMDk6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IGZpeGVzIHRvIGJhY2t1cCByZXN0b3JlIG9wdGlvbnMKCjIwMDQtMDEtMjMgMDg6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogU1RZTEU6IERlbGV0ZWQgdHJhaWxpbmcgd2hpdGVzcGFjZS4KCjIwMDQtMDEtMjMgMDg6NTEgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRVJSOiBGaXhlZCBwcm9qZWN0IG5hbWUgZm9yIEp1bXAgdGVzdHMuCgoyMDA0LTAxLTIyIDE0OjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzLmguaW4sIFByb2Nlc3NVTklYLmM6IEVSUjogRml4ZWQgZnVuY3Rpb24KCSAgcHJvdG90eXBlcyB3aXRoIHplcm8gYXJndW1lbnRzIHRvIGJlIEMtc3R5bGUuCgoyMDA0LTAxLTIyIDExOjE2ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBJZiB3b3JraW5nIGRpcmVjdG9yeSBkb2VzIG5vdAoJICBleGlzdHMsIGV4aXQKCjIwMDQtMDEtMjIgMTE6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBJZiBhdCBsZWFzdCBvbmUgdGVzdCBmYWlscywgdGhlIHBlcmNlbnQKCSAgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiA5OQoKMjAwNC0wMS0yMiAxMDo1NCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogQlVHOiBGaXgganVtcC1vdmVyLWFuZC1idWlsZCBmb3IKCSAgbWlzc2luZyBsaWJyYXJpZXMgd2hlbiB0aGUgcmVsYXRpdmUgcGF0aCB0byB0aGUgbGlicmFyeSBpcwoJICBkaWZmZXJlbnQgYmV0d2VlbiB0aGUgc291cmNlIGFuZCBkZXN0aW5hdGlvbiBvZiB0aGUganVtcC4KCjIwMDQtMDEtMjIgMTA6NTEgIGtpbmcKCgkqIFRlc3RzL0p1bXAvTGlicmFyeS86IENNYWtlTGlzdHMudHh0LCBqdW1wU2hhcmVkLmN4eCwKCSAganVtcFN0YXRpYy5jeHgsIFNoYXJlZC9DTWFrZUxpc3RzLnR4dCwgU2hhcmVkL2p1bXBTaGFyZWQuY3h4LAoJICBTdGF0aWMvQ01ha2VMaXN0cy50eHQsIFN0YXRpYy9qdW1wU3RhdGljLmN4eDogRU5IOiBJbXByb3ZlZCB0ZXN0CgkgIHRvIGhhdmUgYSBkaWZmZXJlbnQgcmVsYXRpdmUgcGF0aCBuYW1lIGZvciBsaWJyYXJpZXMgYmV0d2VlbiB0aGUKCSAgRXhlY3V0YWJsZSBhbmQgTGlicmFyeSBkaXJlY3Rvcmllcy4KCjIwMDQtMDEtMjIgMTA6MzYgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBKdW1wV2l0aExpYk91dCBhbmQgSnVtcE5vTGliT3V0CgkgIHRvIHRlc3Qgd2hldGhlciBqdW1waW5nIG92ZXIgdG8gYnVpbGQgYSBtaXNzaW5nIGxpYnJhcnkgd29ya3MuCgoyMDA0LTAxLTIyIDEwOjMwICBraW5nCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGt3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOgoJICBDb3B5RmlsZUlmRGlmZmVyZW50IHNob3VsZCByZXR1cm4gc3VjY2VzcyBpZiB0aGUgZmlsZXMgZGlkIG5vdAoJICBkaWZmZXIgb3IgaWYgdGhlIGNvcHkgc3VjY2VlZGVkLiAgSXQgc2hvdWxkIHJldHVybiBmYWlsdXJlIG9ubHkKCSAgaWYgdGhlIGZpbGVzIHdlcmUgZGlmZmVyZW50IGFuZCB0aGUgY29weSBmYWlsZWQuCgoyMDA0LTAxLTIyIDEwOjIzICBraW5nCgoJKiBUZXN0cy9KdW1wL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVSUjogRml4ZWQgcG9zdC1idWlsZCBydWxlIHRvCgkgIGNvcHkgc2hhcmVkIGxpYnJhcnkgY29ycmVjdGx5LgoKMjAwNC0wMS0yMiAwOTo1NiAga2luZwoKCSogVGVzdHMvSnVtcC86IENNYWtlTGlzdHMudHh0LCBFeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBFeGVjdXRhYmxlL2p1bXBFeGVjdXRhYmxlLmN4eCwgTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgTGlicmFyeS9qdW1wU2hhcmVkLmN4eCwgTGlicmFyeS9qdW1wU3RhdGljLmN4eDogRU5IOiBBZGRpbmcgdGVzdAoJICBmb3IganVtcGluZyBvdmVyIGFuZCBidWlsZGluZyBhIG1pc3NpbmcgbGlicmFyeS4KCjIwMDQtMDEtMjEgMTg6MzkgIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VEZWZhdWx0TWFrZVJ1bGVWYXJpYWJsZXMuY21ha2U6IEVOSDogVGhpcyB3aWxsCgkgIHByb2JhYmx5IGJyZWFrIHNvbWUgb2JzY3VyZSB2ZXJzaW9uIG9mIGdjYywgYnV0IHVudGlsIHRoZW4sCgkgIGV2ZXJ5Ym9keSBkb2luZyBwcm9maWxpbmcgd2lsbCBiZSBoYXBweQoKMjAwNC0wMS0yMSAxNTo1NSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IDo6U3Rkb3V0IG1ldGhvZCBzaG91bGQgZmx1c2ggY291dAoJICBhZnRlciB3cml0aW5nIGRhdGEuCgoyMDA0LTAxLTIxIDE1OjEyICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZTogQlVHIzUzMDogTWVyZ2luZyAxLjkgLT4gMS4xMAoJICBjaGFuZ2VzIHRvIENNYWtlIDEuOCBicmFuY2guCgoyMDA0LTAxLTIxIDE1OjExICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZTogQlVHIzUzMDogVXNpbmcgI2Vycm9yIHRvIHJlcG9ydAoJICBhIG5pY2UgZXJyb3IgbWVzc2FnZSBpZiB0aGUgQyBjb21waWxlciBpcyBzZXQgdG8gYSBDKysgY29tcGlsZXIuCgoyMDA0LTAxLTIxIDE1OjA4ICBraW5nCgoJKiBNb2R1bGVzL1Rlc3RCaWdFbmRpYW4uYzogQlVHOiBVc2UgcmV0dXJuIHN0YXRlbWVudCBpbnN0ZWFkIG9mCgkgIGV4aXQuCgoyMDA0LTAxLTIxIDE1OjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogbWVyZ2UgZnJvbSB0aGUgbWFpbiB0cmVlCgoyMDA0LTAxLTIxIDE0OjQzICBraW5nCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogZW1wdHkgbWV0aG9kIG9uIHN0ZCBzdHJpbmcgaXMgYSB0ZXN0LAoJICBhbmQgZG9lcyBub3Qgc2V0IHRoZSBzdHJpbmcgdG8gZW1wdHkuCgoyMDA0LTAxLTIxIDE0OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogZml4IGxlYWsKCjIwMDQtMDEtMjEgMTQ6MDYgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBGaXhlZCBidWZmZXIgc2l6ZSBpbiBNYWtlWE1MU2FmZS4KCjIwMDQtMDEtMjEgMTM6MzggIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBCVUc6IEZpeCB2YWxncmluZCBlcnJvci4gSWYgd29ya2luZwoJICBkaXJlY3RvcnkgaXMgbm90IHNldCBkbyBub3QgZG8gY2hkaXIKCjIwMDQtMDEtMjEgMDk6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBpZiBhIHRlc3QgaXMgbm90IGZvdW5kLCBpdCBzaG91bGQgZmFpbAoKMjAwNC0wMS0yMSAwOToyNSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IG1ha2Ugc3VyZSB0ZXN0cyB0aGF0IGFyZSBub3QgcnVuIGZhaWwsCgkgIGFuZCBtYWtlIHN1cmUgdGhhdCBpdCBkb2VzIG5vdCB0cnkgdG8gcnVuIGRpcmVjdG9yaWVzIHdpdGggdGhlCgkgIHNhbWUgbmFtZSBhcyB0ZXN0cwoKMjAwNC0wMS0yMCAxNDozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGJ1ZyBmaXggZm9yIElCTQoJICBicm9rZW4geGxDIDYuMC4wLjQgY29tcGlsZXIKCjIwMDQtMDEtMjAgMTQ6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBkb250IGRvIHJlbGF0aXZlIHBhdGhzIHdoZW4KCSAgbm90aGluZyBpcyByZWxhdGl2ZQoKMjAwNC0wMS0xOSAwOTozMCAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3RQcm9jZXNzLmM6IEVSUjogRml4ZWQgdW51c2VkIGFyZ3VtZW50IHdhcm5pbmcuCgoyMDA0LTAxLTE5IDA5OjMwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVSUjogTXVzdCBpbmNsdWRlIERhcnQgbW9kdWxlIGFmdGVyCgkgIFBST0pFQ1QgY29tbWFuZC4KCjIwMDQtMDEtMTcgMTI6NDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBEYXJ0IHRlc3RpbmcKCSAgY29uZmlndXJhdGlvbi4KCjIwMDQtMDEtMTcgMTI6NDYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFTkg6IEFkZGVkIGEgcmVjdXJzaXZlIHByb2Nlc3MKCSAgZXhlY3V0aW9uIHRlc3QuCgoyMDA0LTAxLTE2IDE0OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGZpeCBzbyB0aGF0IGN0ZXN0IGlzIHJ1biBldmVuIHdpdGggYmFkIGNtYWtlCgkgIHJlc3VsdAoKMjAwNC0wMS0xNSAxNzowNyAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEhhbmRsZSBzcGFjZXMgaW4gdGhlIGRhcnQgb3V0cHV0IG9mIHRlc3QKCjIwMDQtMDEtMTUgMTQ6MDQgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogQlVHIzUxODogTWVyZ2luZyAxLjMwLT4xLjMxCgkgIGNoYW5nZXMgdG8gQ01ha2UgMS44IGJyYW5jaC4KCjIwMDQtMDEtMTUgMTM6NTcgIGFuZHkKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogRU5IOiBGaXggdHlwb3MgYWJvdXQKCSAgY29weWluZyBleGUgZmxhZ3MgdG8gc2hhcmVkIGZsYWdzIGFuZCB0byBtb2R1bGVzLiBCdWcgIzUxOCAtIE9uCgkgIGJvcmxhbmQsIGluaXRpYWwgZmxhZ3MgZm9yIGJ1bGRpbmcgbW9kdWxlIGFyZSB3cm9uZwoKMjAwNC0wMS0xNSAwODo1MCAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEFkZGVkIG1vcmUgZXJyb3Igc3RhdGUgY2hlY2tzIHRvCgkgIFJ1blNpbmdsZUNvbW1hbmQuCgoyMDA0LTAxLTEzIDEyOjI4ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogRG8gbm90IGlnbm9yZSBhcmd1bWVudCBhZnRlciBub2NtYWtlCgoyMDA0LTAxLTEzIDExOjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IGFkZCBubyBjbWFrZSBvcHRpb24KCjIwMDQtMDEtMTMgMDk6MDUgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2U6IEJVRzogTWVyZ2luZyAxLjIzLT4xLjI1CgkgIGNoYW5nZXMgdG8gMS44IGJyYW5jaCBmb3IgY29ycmVjdCBzZXR0aW5nIG9mIE1JTkdXIGZsYWcgb24gY3lnd2luCgkgIHdpdGggLW1uby1jeWd3aW4gZmxhZy4KCjIwMDQtMDEtMTMgMDk6MDEgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRjbHNoLmNtYWtlOiBNZXJnaW5nIDEuNi0+MS43IGNoYW5nZXMgdG8gMS44IGJyYW5jaAoJICB0byBpbXByb3ZlIGF1dG9tYXRpYyBmaW5kaW5nIG9mIFRjbC4KCjIwMDQtMDEtMTMgMDk6MDEgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogTWVyZ2luZyAxLjMwLT4xLjMxIGNoYW5nZXMgdG8gMS44IGJyYW5jaAoJICB0byBpbXByb3ZlIGF1dG9tYXRpYyBmaW5kaW5nIG9mIFRjbC4KCjIwMDQtMDEtMTMgMDk6MDAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2U6IEJVRzogdXNlIHRoZSBmbGFncyB3aGVuCgkgIHRlc3RpbmcgZm9yIHR5cGUgb2YgZ251IGNvbXBpbGVyCgoyMDA0LTAxLTEyIDE2OjE2ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IHRyeSB0byBnZXQgYWNjZXNzIHRvIHdvcmsgb24KCSAgYm9ybGFuZAoKMjAwNC0wMS0xMiAxMzo1MyAgaG9mZm1hbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiB1c2UgYWNjZXNzIG92ZXIgc3RhdCBmb3IKCSAgcGVyZm9ybWFuY2UKCjIwMDQtMDEtMTIgMTM6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBrd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogT25seSBsb29rIGZvcgoJICBleGVjdXRhYmxlIHVudGlsIGZvdW5kCgoyMDA0LTAxLTEyIDExOjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHA6IEJVRzogbWFrZSBzdXJlIHByb3BlcnR5IGxpc3QKCSAgaXMgY2xlYXJlZCBiZXR3ZWVuIGNhY2hlIGxvYWRpbmdzCgoyMDA0LTAxLTA5IDE1OjU3ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRUQ0wuY21ha2UsIEZpbmRUY2xzaC5jbWFrZTogRU5IOiBtYWtlIGl0IGEgYml0CgkgIHNtYXJ0ZXIgYXQgZmluZGluZyBzdHVmZjogbm93IHlvdSBuZWVkIG9ubHkgdG8gc2V0ICpPTkUqIG9mCgkgIChUQ0x8VEspX0lOQ0xVREVfUEFUSCwgKFRDTHxUSylfTElCUkFSWSwgVENMX1RDTFNIIGFuZCB0aGUgcmVzdAoJICB3aWxsIGJlIGZvdW5kLgoKMjAwNC0wMS0wOSAxNDoxNCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IGNsZWFuIHVwIHRoZSBvdXRwdXQgc29tZSBtb3JlCgoyMDA0LTAxLTA5IDE0OjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogY2xlYW4gdXAgb3V0cHV0CgoyMDA0LTAxLTA5IDEzOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IGFkZCBhbiBhYmlsaXR5IHRvIHNwZWNpZnkgYQoJICBidWlsZCBydW4gZGlyZWN0b3J5CgoyMDA0LTAxLTA5IDEyOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogY2xlYW4gdXAgb3V0cHV0CgoyMDA0LTAxLTA5IDEyOjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogYWRkIGEgbG9jYWwgdGFyZ2V0CgkgIGZvciBsaWJyYXJpZXMgYXMgd2VsbCBhcyBleGVjdXRhYmxlcwoKMjAwNC0wMS0wOSAxMToyMyAga2luZwoKCSogQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VGaW5kRnJhbWV3b3Jrcy5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvRGFydC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlLCBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwgTW9kdWxlcy9GaW5kVENMLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oLAoJICBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfTGludXgsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2N5Z3dpbi1wYWNrYWdlLnNoLmluOiBFTkg6IE1lcmdlZCBSZWxlYXNlLTEtOC0yCgkgIC0+IFJlbGVhc2UtMS04LTMgY2hhbmdlcyB0byBDTWFrZS1MYXRlc3RSZWxlYXNlIGJyYW5jaC4KCjIwMDQtMDEtMDkgMTA6MTMgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBVcGRhdGVkIHdhcm5pbmcgcmVnZXggdG8gbWF0Y2ggaW4gbW9yZQoJICBjYXNlcy4KCjIwMDQtMDEtMDkgMDg6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBpZiB0aGUgYnVpbGQgZmFpbHMgdGhlbiB0aGUgdGVzdCBmYWlscwoKMjAwNC0wMS0wOSAwNzoyMiAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBhcmd1bWVudHMgdG8gd3h3aW5kb3dzIHRlc3QKCjIwMDQtMDEtMDggMTU6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VDb21tYW5kTGluZUluZm8uY3BwOiBCVUc6IG1ha2Ugc3VyZQoJICByZWxhdGl2ZSBwYXRocyBpbiBjb21tYW5kIGxpbmUgb3B0aW9ucyBhcmUgZXhwYW5kZWQKCjIwMDQtMDEtMDggMDk6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtYWtlLmN4eDogQlVHOiBtYWtlCgkgIHN1cmUgbnVsbCB0ZXJtaW5hdG9yIGlzIGluIHRoZSByaWdodCBwbGFjZSBmb3IgcHV0ZW52IHN0YXRpYyBjaGFyCgkgIGFycmF5CgoyMDA0LTAxLTA4IDA5OjIzICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeCBlbnZpcm9ubWVudCB2YXJpYWJsZSBzZXR0aW5nLgoKMjAwNC0wMS0wOCAwOToxOSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggZW52aXJvbm1lbnQgdmFyaWFibGUKCSAgc2V0dGluZy4KCjIwMDQtMDEtMDggMDg6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5nCgoyMDA0LTAxLTA3IDE2OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IHRlbXAgcmVtb3ZlIG9mIG9wdGltaXphdGlvbiBpbnRlcm5hbCBjdGVzdAoJICB1c2UgcHV0ZW52IGNhdXNpbmcgdHJvdWJsZSBvbiBjeWd3aW4KCjIwMDQtMDEtMDcgMTY6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBwcmludCBlcnJvcnMgd2hlbiB0aGV5IGFyZSB0aGVyZQoKMjAwNC0wMS0wNyAxNDoyMiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IGluaXRpYWxpemUgaXZhcgoKMjAwNC0wMS0wNyAxMzoyNyAgbWFydGluawoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBtZXJnZSBmaXggZnJvbSBtYWluIHRyZWUKCjIwMDQtMDEtMDcgMTM6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiBmaXggY29tbWFuZCBsaW5lIHBhcnNlciBidWcKCjIwMDQtMDEtMDcgMTI6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiByZW1vdmUgd2FybmluZwoKMjAwNC0wMS0wNyAxMTozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5ncwoKMjAwNC0wMS0wNyAxMToyNCAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwKCSAgY21ha2UuY3h4LCBjdGVzdC5jeHg6IEVOSDogYWRkIG5ldyBmZWF0dXJlIHRvIGN0ZXN0IHNvIHRoYXQgaXQKCSAgY2FuIGNtYWtlLCBidWlsZCBhbmQgcnVuIGEgdGVzdCBleGVjdXRhYmxlCgoyMDA0LTAxLTA3IDA5OjIyICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCBjcmFzaCBpbgoJICBleHRlcm4gTVNWQyBwcm9qZWN0IHN1cHBvcnQuCgoyMDA0LTAxLTA3IDA5OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBmaXggY3Jhc2ggaW4KCSAgZXh0ZXJuYWwgZHNwIGluY2x1ZGUKCjIwMDQtMDEtMDcgMDk6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIGNyYXNoIGluCgkgIGV4dGVybiBNU1ZDIHByb2plY3Qgc3VwcG9ydC4KCjIwMDQtMDEtMDcgMDk6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBjcmFzaAoKMjAwNC0wMS0wNyAwOTowNyAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEFkZGVkIG1pc3NpbmcgR2VuZXJhdG9yIGF0dHJpYnV0ZXMgdG8KCSAgc3VibWl0dGVkIFhNTCBmaWxlcy4KCjIwMDQtMDEtMDcgMDg6MzcgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogbWVyZ2UgY2hhbmdlIGZyb20gbWFpbiB0cmVlCgoyMDA0LTAxLTA2IDE5OjEzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjdGVzdC5jeHg6IEVOSDogSW1wcm92ZSBub3RlcwoJICBzdXBwb3J0IChub3cgeW91IGNhbiBzcGVjaWZ5IHRoZW0gd2l0aCB0aGUgcmVzdCBvZiB0aGUgY29tbWFuZAoJICBsaW5lKSwgaW1wcm92ZSByZWFkaW5nIG9mIGNvbmZpZ3VyYXRpb24gZmlsZSAobm93IGl0IGFjdHVhbGx5CgkgIHJlcmVhZHMgY29uZmlndXJhdGlvbiBmaWxlIGFmdGVyIHJ1bm5pbmcKCSAgdXBkYXRlL2NvbmZpZ3VyZS9idWlsZC4uLikuIFJlbWVtYmVyIHRoZSBtb2RlbAoJICAobmlnaHRseS9leHBlcmltZW50YWwpIGFjcm9zcyBydW5zCgoyMDA0LTAxLTA2IDE2OjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBrd3N5c19zdGQuaC5pbiwga3dzeXNfc3RkX2ZzdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX2lvc2Z3ZC5oLmluLCBrd3N5c19zdGRfaW9zdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX3NzdHJlYW0uaC5pbjogRU5IOiBSZW1vdmluZyBlbXB0eSBzb3VyY2UgZmlsZSBub3cgdGhhdAoJICBtYWtlZmlsZSBkZXBlbmRlbmNpZXMgc2hvdWxkIGhhdmUgdXBkYXRlZC4KCjIwMDQtMDEtMDYgMTY6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBmaXggZm9yIGhwIG1ha2UgYW5kIHJlbGF0aXZlIHBhdGhzIG5ldmVyIGhhdmUgdGFyZ2V0cyB3aXRoIGEKCSAgLi8gYXQgdGhlIHN0YXJ0IG9mIHRoZSBuYW1lCgoyMDA0LTAxLTA2IDE1OjA2ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfTGludXg6IEZpeGVkIGJ1aWxkIGZvciBuZXcgbWFjaGluZS4KCjIwMDQtMDEtMDYgMTM6MjEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19MaW51eDogRU5IOiBVcGRhdGVkIGNvbmZpZ3VyYXRpb24gZm9yCgkgIG5ldyBidWlsZCBsb2NhdGlvbi4KCjIwMDQtMDEtMDUgMTY6MjkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2IuY3h4OiBmaXggZm9yIGdsb2IgY29tbWFuZAoKMjAwNC0wMS0wNSAxNTozMCAga2luZwoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDogQlVHOiBGaXhlZCB0eXBvIGluIGVycm9yCgkgIG1lc3NhZ2UuCgoyMDA0LTAxLTA1IDEzOjIwICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgVEFHIGZvciAxLjguMwoJICByZWxlYXNlLgoKMjAwNC0wMS0wNSAxMzoxOSAga2luZwoKCSogQ01ha2VMaXN0cy50eHQsIENNYWtlU3lzdGVtQ29uZmlnLnR4dC5pbiwKCSAgQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLnR4dCwgYm9vdHN0cmFwLAoJICBNb2R1bGVzL0NNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VJbXBvcnRCdWlsZFNldHRpbmdzLmNtYWtlLCBNb2R1bGVzL0NNYWtlTGlzdHMudHh0LAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvQ01ha2VUZXN0R05VLmMsCgkgIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0RhcnQuY21ha2UsIE1vZHVsZXMvRmluZEdUSy5jbWFrZSwgTW9kdWxlcy9GaW5kSk5JLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRKYXZhLmNtYWtlLCBNb2R1bGVzL0ZpbmRMQVRFWC5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZSwgTW9kdWxlcy9GaW5kVENMLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRUY2xzaC5jbWFrZSwgTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kV2lzaC5jbWFrZSwgTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9BSVguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vQlNET1MuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0ZyZWVCU0QuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vSVJJWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9JUklYNjQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vTVAtUkFTLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL05ldEJTRC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL09wZW5CU0QuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vUklTQ29zLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1NDT19TVi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9TSU5JWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9UcnVlNjQuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vVUxUUklYLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VOSVhfU1YuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vVW5peFdhcmUuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vWGVuaXguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vZ2NjLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNQbHVnaW5BUEkuaCwgU291cmNlL2NtQ1Rlc3QuY3h4LCBTb3VyY2UvY21DVGVzdC5oLAoJICBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LCBTb3VyY2UvY21Db21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4LCBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZURlcGVuZC5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oLCBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4LAoJICBTb3VyY2UvY21ha2UuY3h4LCBTb3VyY2UvY21ha2VtYWluLmN4eCwgU291cmNlL2NtYWtld2l6YXJkLmN4eCwKCSAgU291cmNlL2NtYWtld2l6YXJkLmgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jY21ha2UuY3h4LCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuY3BwLAoJICBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jLAoJICBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmMsIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dCwgVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0FJWCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0NZR1dJTl9OVC01LjEsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW4sIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19IUC1VWCwKCSAgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0lSSVg2NCwgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0xpbnV4LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfT1NGMSwgVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX1N1bk9TLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbjogRU5IOiBNZXJnaW5nIENNYWtlCgkgIFJlbGVhc2UtMS04LTIgdG8gQ01ha2UtTGF0ZXN0UmVsZWFzZS4KCjIwMDQtMDEtMDUgMTI6NTggIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRyM0MTY6IE1lcmdpbmcKCSAgMS40OS0+MS41MCBjaGFuZ2VzIHRvIDEuOCBicmFuY2guCgoyMDA0LTAxLTA1IDEyOjUzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBmaXggZm9yIGxvbmcgbGluZXMgd2l0aAoJICBwb3N0IGJ1aWxkIHJ1bGVzCgoyMDA0LTAxLTA1IDExOjIyICBraW5nCgoJKiBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eDogQlVHIzQyMTogTWVyZ2luZyAxLjE2LT4xLjE3CgkgIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDQtMDEtMDUgMTE6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4LCBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvV3JhcHBpbmcvdnRrVGVzdE1vYy5oOiBCVUc6IEZpeCBkZXBlbmRlbmN5IHRvIGlucHV0IGZpbGUKCSAgZm9yIFFUX1dSQVBfQ1BQLiBCdWcgIzQyMSAtIFFUX1dSQVBfQ1BQCgoyMDA0LTAxLTA1IDExOjAyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlOiBFUlI6IFJlbW92ZWQgdXNlIG9mCgkgIEZJTEUgY29tbWFuZCBhbmQgdXNpbmcgV1JJVEVfRklMRSBpbnN0ZWFkLiAgV2Ugd291bGQgc3RpbGwgbGlrZQoJICBDTWFrZSAxLjYgdG8gYmUgYWJsZSB0byBidWlsZCBDTWFrZSBDVlMsIGFuZCBrd3N5cyBpcyB1c2VkLgoKMjAwNC0wMS0wNSAxMDoyNiAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBFTkg6IHJlZHVjZSBmbGlja2VyCgoyMDA0LTAxLTAyIDE3OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cC5yYywgQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFByb3BlcnR5TGlzdC5jcHAsIFByb3BlcnR5TGlzdC5oOiBFTkg6IGZpeCBidWcgd2l0aCBhZHZhbmNlZAoJICBpdGVtcyBsb29zaW5nIGVkaXQgYW5kIGRvIGEgYmV0dGVyIGpvYiBzb3J0aW5nCgoyMDA0LTAxLTAyIDEwOjIzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IGZpeCBmb3IgbXVsdGlwbGUgbmV4dGVkIHByb2plY3RzCgoyMDAzLTEyLTMxIDA4OjU2ICBhbmR5CgoJKiBib290c3RyYXA6IEVSUjogRml4IGJvb3RzdHJhcCBmb3IgdGhlIGNoYW5nZXMgaW4ga3dzeXMKCjIwMDMtMTItMzAgMTc6MTUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4LCBrd3N5c19pb3NfZnN0cmVhbS5oLmluLAoJICBrd3N5c19pb3NfaW9zZndkLmguaW4sIGt3c3lzX2lvc19pb3N0cmVhbS5oLmluLAoJICBrd3N5c19pb3Nfc3N0cmVhbS5oLmluOiBFTkg6IFJlbmFtZWQgS1dTWVNfSU9TX0hBVkVfKiBtYWNyb3MgdG8KCSAgS1dTWVNfSU9TX1VTRV8qIHRvIGJlIG1vcmUgcmVhZGFibGUgaW4gdGhlIEMrKyBzb3VyY2VzLgoKMjAwMy0xMi0zMCAxNjoyMyAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYywKCSAgdGVzdDEuY3h4OiBFTkg6IEFkZGVkIEdldEV4Y2VwdGlvblN0cmluZyBtZXRob2QgdG8gcHJvdmlkZSBhbgoJICBlcnJvciBkZXNjcmlwdGlvbiB3aGVuIEdldFN0YXRlIHJldHVybnMgRXhjZXB0aW9uLgoKMjAwMy0xMi0zMCAxNDozMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFJlbW92ZWQgc3RyYXkKCSAgZGVidWdnaW5nIHN0YXRlbWVudCBsZWZ0IGZyb20gbWVyZ2UuCgoyMDAzLTEyLTMwIDEzOjQwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFUlI6IFVzZSBvZiBrd3N5c19zdGwgd2FzIG1lcmdlZAoJICBmcm9tIG1haW4gdHJlZS4gIFRoZSBDTWFrZSAxLjggYnJhbmNoIHN0aWxsIHVzZXMga3dzeXNfc3RkLgoKMjAwMy0xMi0zMCAxMzozOSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBNZXJnaW5nIDEuMzAtPjEuMzEgY2hhbmdlcyB0bwoJICBDTWFrZSAxLjggYnJhbmNoLgoKMjAwMy0xMi0zMCAxMzozOCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogQlVHOiBDb2xsYXBzZUZ1bGxQYXRoIHdhcyBjYWxsaW5nCgkgIFNwbGl0UHJvZ3JhbVBhdGggYmVmb3JlIGNoYW5naW5nIHRoZSB3b3JraW5nIGRpcmVjdG9yeSB0bwoJICBpbl9iYXNlLgoKMjAwMy0xMi0zMCAxMDoyNiAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IERvIG5vdCBjYWxsCgkgIGNtc3lzUHJvY2Vzc19HZXRFcnJvclN0cmluZyB1bmxlc3MgR2V0U3RhdGUgcmV0dXJucyBTdGF0ZV9FcnJvci4KCjIwMDMtMTItMzAgMDg6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgQlVHOiBib3JsYW5kIG1ha2UgdHJlYXRzIC4vdGFyZ2V0IGFuZCB0YXJnZXQgYXMgZGlmZmVyZW50IGFsc28KCSAgY29udmVydCB0byBvdXRwdXRwYXRocmVsYXRpdmUgbWF5IGdldCBwYXNzZWQgYSBxdW90ZWQgcGF0aAoKMjAwMy0xMi0zMCAwNzo1NSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IFJlbW92ZSB3YXJuaW5ncyBhYm91dCB1bnVzZWQgdmFyaWFibGVzCgoyMDAzLTEyLTI5IDE2OjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oOiBzZXRzIHZhcmlhYmxlIG5vdwoKMjAwMy0xMi0yOSAxNjoyNyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBvbmx5IGdlbmVyYXRlIHRlc3QKCSAgdGFyZ2V0IHdoZW4gZW5hYmxlZAoKMjAwMy0xMi0yOSAxNjoyNyAgbWFydGluawoKCSogU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4OiBzZXRzIHZhcmlhYmxlIG5vdwoKMjAwMy0xMi0yOSAxNjoxOSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlRmluZEZyYW1ld29ya3MuY21ha2UsIEZpbmRQeXRob25MaWJzLmNtYWtlLAoJICBGaW5kVENMLmNtYWtlOiBCVUcjNDIzOiBNZXJnZWQgZml4IHRvIDEuOCBicmFuY2guCgoyMDAzLTEyLTI5IDE2OjE4ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VGaW5kRnJhbWV3b3Jrcy5jbWFrZSwgRmluZFB5dGhvbkxpYnMuY21ha2UsCgkgIEZpbmRUQ0wuY21ha2U6IEJVRyM0MjM6IEZpeGVkIHNlYXJjaCBmb3IgZnJhbWV3b3JrcyBvbiBPU1guCgoyMDAzLTEyLTI5IDE2OjE1ICBraW5nCgoJKiBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBCVUcjNDA3OiBNZXJnZWQgZml4IHRvIDEuOCBicmFuY2guCgoyMDAzLTEyLTI5IDE2OjEwICBhbmR5CgoJKiBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBFTkg6IERvIG5vdCB1c2UgbnNsb29rdXAuIEFsbCB3ZQoJICByZWFsbHkgY2FyZSBpcyBob3N0bmFtZS4gSWYgc29tZWJvZHkgd2FudHMgc29tZXRoaW5nIGZhbmN5LCBqdXN0CgkgIHNldCBpdCB5b3Vyc2VsZi4gRml4ZXMgQnVnICM0MDcgLSBuc2xvb2t1cCBpcyBiZWluZyBkZXByZWNhdGVkCgkgIGZvciBSZWQgSGF0IGFuZCBGZWRvcmEgZGlzdHJpYnV0aW9ucwoKMjAwMy0xMi0yOSAxNTozNyAga2luZwoKCSogU291cmNlL2NtT3B0aW9uQ29tbWFuZC5jeHg6IEJVRyM0MDg6IE1lcmdlZCBmaXggdG8gMS44IGJyYW5jaC4KCjIwMDMtMTItMjkgMTU6MjYgIGFuZHkKCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4OiBFUlI6IEZpeCBwcm9ibGVtcyB3aXRoIE9QVElPTiBhbmQgLUQKCSAgb24gY29tbWFuZCBsaW5lLiBGaXggQnVnICM0MDggLSBVc2luZyAtRCB3aXRob3V0IGEgdHlwZSBkb2VzIG5vdAoJICBhbHdheXMgd29yawoKMjAwMy0xMi0yOSAxNToxNSAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZVN5c3RlbS5jbWFrZTogQlVHIzQyNjogTWVyZ2VkIGZpeCB0byAxLjgKCSAgYnJhbmNoLgoKMjAwMy0xMi0yOSAxNToxNCAga2luZwoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEJVRyM0MjU6IE1lcmdlZCBmaXggdG8gMS44IGJyYW5jaC4KCjIwMDMtMTItMjkgMTQ6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgQlVHOiB1c2UgLi8gaW5mcm9udCBvZiB0aGUgY3VycmVudCBkaXJlY3RvcnkKCjIwMDMtMTItMjkgMTQ6MjYgIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2U6IEVSUjogT24gc3lzdGVtcyB3aGVyZSB1bmFtZQoJICBkb2VzIG5vdCBzdXBwb3J0IC1wLCB0cnkgLW0uIEZpeGVzIEJ1ZyAjNDI2IC0KCSAgQ01BS0VfU1lTVEVNX1BST0NFU1NPUiB1bmtub3duIGFuZCBpbmNvbnNpc3RlbnQKCjIwMDMtMTItMjkgMTQ6MTkgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IEFkZCBRVF9BU1NJU1RBTlRDTElFTlRfTElCUkFSWQoJICBzdXBwb3J0LiBGaXhlcyBCdWcgIzQyNSAtIFN1Z2dzdGVkIG1vZCB0byBGaW5kUXQuY21ha2UgdG8gaGFuZGxlCgkgIHFhc3Npc3RhbnRjbGllbnQubGliCgoyMDAzLTEyLTI5IDEzOjQxICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBCVUcjNDI3OiBNZXJnZWQgZml4IHRvIDEuOCBicmFuY2guCgoyMDAzLTEyLTI5IDEzOjM3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHg6IEJVRyM0NDU6IE1lcmdpbmcgZml4IHRvIDEuOAoJICBicmFuY2guCgoyMDAzLTEyLTI5IDEzOjMyICBraW5nCgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eDogQlVHIzQ1MjogTWVyZ2luZyAxLjEwLT4xLjExIGNoYW5nZXMKCSAgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTItMjkgMTM6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuY3h4OiBCVUcjNDUyOiBGaXggdG8gYXJndW1lbnQgY2hlY2tpbmcgZm9yCgkgIFRPVVBQRVIgYW5kIFRPTE9XRVIgc3ViY29tbWFuZHMuCgoyMDAzLTEyLTI5IDEzOjI2ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEJVRzogQWRkZWQgbWlzc2luZyBpbmNsdWRlIHBhdGggdG8KCSAgc2VhcmNoLgoKMjAwMy0xMi0yOSAxMzoxNCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBSZW1vdmVkIGZ0aW1lIGFtYmlndWl0eQoJICBjcmVhdGVkIGJ5IHBvb3IgQysrIHN0YW5kYXJkIGhlYWRlcnMgcHJvdmlkZWQgYnkgQm9ybGFuZCA1LjUuCgoyMDAzLTEyLTI2IDE1OjAyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oLCBjdGVzdC5jeHg6IEVOSDogQWRkIG9wdGlvbiB0bwoJICBzdWJtaXQgbm90ZXMuIEltcGxlbWVudHMgQnVnICM0NjUgLSBBZGQgbm90ZXMgc3VwcG9ydCB0byBDVGVzdAoKMjAwMy0xMi0yNiAxNTowMCAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogQlVHOiBGb3IKCSAgY29uc2lzdGVuY3ksIHVzZSBjbVN0ZFN0cmluZy4gQWxzbywgdGhlcmUgd2FzIGEgYnVnIGluCgkgIFNwbGl0U3RyaW5nIHdoaWNoIG1ha2UgaXQgbG9zZSB0aGUgZmlyc3QgY2hhcmFjdGVyLgoKMjAwMy0xMi0yNCAxNTowMiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxHZW5lcmF0b3IuY3h4OiBCVUc6IE9uIFdpbmRvd3MgbmV0d29yayBwYXRocyBkbyBub3QKCSAgcmVhbGx5IHdvcmsgYXMgcmVndWxhciBwYXRocywgc28gd2hlbiB0aGUgYmluYXJ5IGRpcmVjdG9yeSBpcyBvbgoJICB0aGUgbmV0d29yaywgd2Ugd2lsbCBub3Qgc3VwcG9ydCByZWxhdGl2ZSBwYXRocwoKMjAwMy0xMi0yNCAxMzoxNyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBjZCBwd2QgdHJpY2sKCSAgZm9yIHBhdGggZm9yIGxpYm5hbWVzCgoyMDAzLTEyLTI0IDEwOjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogdXNlIGZ1bGwgcGF0aHMgdmlhCgkgIHB3ZCBmb3IgLUwgcGF0aHMgb24gdW5peCBzaGVsbHMKCjIwMDMtMTItMjQgMTA6MDcgIGttb3JlbAoKCSogU291cmNlL2t3c3lzL2t3c3lzX2lvc19pb3Nmd2QuaC5pbjogRml4ZWQgYSBwcm9ibGVtIHdoZXJlCgkgIGlmc3RyZWFtIHdhcyBub3QgdGhlIHNhbWUgYXMga3dzeXNfaW9zOjppZnN0cmVhbSBvbiBNU1ZDIDYuMC4KCjIwMDMtMTItMjQgMDk6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBGaXggY292ZXJhZ2UgdG8gYWN0dWFsbHkgd29yayBhbmQgYWRkCgkgIHN1cHBvcnQgZm9yIC5Ob0RhcnRDb3ZlcmFnZQoKMjAwMy0xMi0yMyAxNTowMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbEdlbmVyYXRvci5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBjbWFrZS5jeHgsIGNtYWtlLmg6IEJVRzoga2VlcCBtb3JlIG9mIHRoZSBjYXNlIGluZm9ybWF0aW9uCgoyMDAzLTEyLTIzIDEzOjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbEdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciB2dGsgYnVpbGQKCjIwMDMtMTItMjMgMTE6MDMgIGtpbmcKCgkqIGJvb3RzdHJhcDogRU5IOiBNZXJnaW5nIGNoYW5nZXMgZnJvbSBLV1N5cy1JT1MtYnAgdG8KCSAgS1dTeXMtSU9TLWIydC0xLW1wIHRvIG1haW4gdHJlZS4gIFRoaXMgY29ycmVzcG9uZHMgdG8gdGhlIHNhbWUKCSAgbWVyZ2UgaW4gS1dTeXMuICBGaXhlcyBmb3IgYm9vdHN0cmFwcGluZyBvbiBjeWd3aW4gYXJlIGFsc28KCSAgaW5jbHVkZWQuCgoyMDAzLTEyLTIzIDExOjAzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29uZmlndXJlLmh4eC5pbiwgRGlyZWN0b3J5LmN4eCwKCSAgUmVndWxhckV4cHJlc3Npb24uY3h4LCBSZWd1bGFyRXhwcmVzc2lvbi5oeHguaW4sIFN5c3RlbVRvb2xzLmN4eCwKCSAgU3lzdGVtVG9vbHMuaHh4LmluLCBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY21ha2UsCgkgIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHgsIGt3c3lzX2lvc19mc3RyZWFtLmguaW4sCgkgIGt3c3lzX2lvc19pb3Nmd2QuaC5pbiwga3dzeXNfaW9zX2lvc3RyZWFtLmguaW4sCgkgIGt3c3lzX2lvc19zc3RyZWFtLmguaW4sIGt3c3lzX3N0ZC5oLmluLCBrd3N5c19zdGRfZnN0cmVhbS5oLmluLAoJICBrd3N5c19zdGRfaW9zZndkLmguaW4sIGt3c3lzX3N0ZF9pb3N0cmVhbS5oLmluLAoJICBrd3N5c19zdGRfc3N0cmVhbS5oLmluLCBrd3N5c19zdGwuaC5pbiwgdGVzdDEuY3h4LCB0ZXN0SU9TLmN4eDoKCSAgRU5IOiBNZXJnaW5nIGNoYW5nZXMgZnJvbSBLV1N5cy1JT1MtYnAgdG8gS1dTeXMtSU9TLWIydC0xLW1wIHRvCgkgIG1haW4gdHJlZS4gIFRoaXMgaW50cm9kdWNlcyBzZXBhcmF0ZSBrd3N5c19pb3MgYW5kIGt3c3lzX3N0bAoJICBtYWNyb3MgbmVlZGVkIHRvIHN1cHBvcnQgYWxsIHBsYXRmb3Jtcy4KCjIwMDMtMTItMjMgMTA6NDQgIGtpbmcKCgkqIGJvb3RzdHJhcDogQlVHOiBGaXhlZCAzcmQgQysrIHRlc3QgdG8gdXNlIGVuZGwgY29ycmVjdGx5LiAgRml4ZWQKCSAgaW5jb3JyZWN0IHNwZWxsaW5nIG9mIGFwcHJvcHJpYXRlLgoKMjAwMy0xMi0yMyAxMDozOSAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IFNvbWUgY2xlYW51cHMgYW5kIGF0dGVtcHQgdG8gZml4IGN5Z3dpbiBwcm9ibGVtCgoyMDAzLTEyLTIzIDEwOjE2ICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogU29tZSBjbGVhbnVwcywgYWRkIHNldHRpbmdzIGNvbW1lbnQgdG8ga3dzeXMKCSAgaGVhZGVyIGZpbGVzLiBBZGQgcHJvcGVyIGRlcGVuZGVuY3kgdG8ga3dzeXMgaGVhZGVycwoKMjAwMy0xMi0yMyAwOTo1MyAga2luZwoKCSogYm9vdHN0cmFwOiBCVUc6IEZpeGVkIHVzZSBvZiBLV1NZU19JT1NfSEFWRV9TU1RSRUFNIHRlc3QgcmVzdWx0CgkgIGZvciBjbUNvbmZpZ3VyZS4KCjIwMDMtMTItMjMgMDk6MzEgIGtpbmcKCgkqIGJvb3RzdHJhcDogQlVHOiBNb3ZlZCB1c2Ugb2YgS1dTWVNfSU9TIHRlc3QgcmVzdWx0cyB0byBhZnRlciB0aGUKCSAgdGVzdHMgYXJlIHBlcmZvcm1lZC4JQWxzbyBjbGVhbmVkIHVwIG9yZGVyaW5nIG9mIHNvbWUgdGVzdHMuCgoyMDAzLTEyLTIzIDA5OjE3ICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogc3VwcG9ydCBuZXcgS1dTWVMgd2l0aCBJT1MKCjIwMDMtMTItMjIgMTY6MjEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBhZGQKCSAgcmVsYXRpdmUgcGF0aHMgdG8gdmlzdWFsIHN0dWRpbyA2IGFuZCA3IHByb2plY3QgZmlsZXMKCjIwMDMtMTItMjIgMTU6MTYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6CgkgIEVOSDogbW92ZSByZWxhdGl2ZSBwYXRoIHRvIHBhcmVudCBnZW5lcmF0b3IgY2xhc3MKCjIwMDMtMTItMjIgMTQ6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBtYWtlIG5ldyByZWxhdGl2ZQoJICBycGF0aCB3b3JrIHdpdGggc3BhY2VzCgoyMDAzLTEyLTIyIDEzOjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGZ1bGxwYXRocyBiYXNlZAoJICBvbiB0aGUgYWN0dWFsIGN1cnJlbnQgZGlyZWN0b3J5CgoyMDAzLTEyLTIyIDEzOjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGEgZnVsbCBwYXRoIGZvcgoJICBycGF0aAoKMjAwMy0xMi0yMiAxMjoyNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaCwgY21ha2UuY3h4OiBFTkg6IGFkZCBzdXBwb3J0IGZvciByZWxhdGl2ZSBwYXRocwoJICBpbiBtYWtlZmlsZXMKCjIwMDMtMTItMjIgMTE6MjAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4OiBFTkg6CgkgIEFsbCBwbGF0Zm9ybSB0ZXN0cyBhcmUgbm93IGluIGt3c3lzUGxhdGZvcm1DeHhUZXN0cy5jeHguICBUaGlzCgkgIG1ha2VzIHRoZSBsaXN0ZmlsZSBjb2RlIG11Y2ggbW9yZSByZWFkYWJsZS4KCjIwMDMtMTItMjAgMTM6MzIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCB0ZXN0SU9TLmN4eDogRU5IOiBBZGRlZCB0ZXN0SU9TCgkgIGZvciBrd3N5c19pb3MgdGVzdGluZy4KCjIwMDMtMTItMjAgMTM6MzEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19pb3Nfc3N0cmVhbS5oLmluOiBFUlI6IEZpeGVkIGlzdHJpbmdzdHJlYW0gdG8KCSAgd29yayB3aXRoIE1TVkMgNiBvbGQgc3RyZWFtcy4KCjIwMDMtMTItMjAgMTI6NDQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaHh4LmluLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4LCBrd3N5c19pb3NfZnN0cmVhbS5oLmluLAoJICBrd3N5c19pb3NfaW9zZndkLmguaW4sIGt3c3lzX2lvc19pb3N0cmVhbS5oLmluLAoJICBrd3N5c19pb3Nfc3N0cmVhbS5oLmluOiBFTkg6IFNob3J0ZW5lZCBhbmQgZ3JvdXBlZCBJT1MgYW5kIFNUTAoJICBmZWF0dXJlIG1hY3JvIG5hbWVzLgoKMjAwMy0xMi0xOSAxNjo1NiAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sIERpcmVjdG9yeS5jeHgsCgkgIFJlZ3VsYXJFeHByZXNzaW9uLmN4eCwgUmVndWxhckV4cHJlc3Npb24uaHh4LmluLCBTeXN0ZW1Ub29scy5jeHgsCgkgIFN5c3RlbVRvb2xzLmh4eC5pbiwga3dzeXNQbGF0Zm9ybUN4eFRlc3RzLmNtYWtlLAoJICBrd3N5c1BsYXRmb3JtQ3h4VGVzdHMuY3h4LCBrd3N5c19pb3NfZnN0cmVhbS5oLmluLAoJICBrd3N5c19pb3NfaW9zZndkLmguaW4sIGt3c3lzX2lvc19pb3N0cmVhbS5oLmluLAoJICBrd3N5c19pb3Nfc3N0cmVhbS5oLmluLCBrd3N5c19zdGQuaC5pbiwga3dzeXNfc3RkX2ZzdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX2lvc2Z3ZC5oLmluLCBrd3N5c19zdGRfaW9zdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX3NzdHJlYW0uaC5pbiwga3dzeXNfc3RsLmguaW4sIHRlc3QxLmN4eDogRU5IOiBTcGxpdAoJICBrd3N5c19zdGQgaW50byBrd3N5c19pb3MgYW5kIGt3c3lzX3N0bCBpbiBvcmRlciB0byBhdm9pZCBzdGQKCSAgbmFtZXNwYWNlIHBvbGx1dGlvbiBhbmQgc3VwcG9ydCBtb3JlIHBsYXRmb3Jtcy4KCjIwMDMtMTItMTggMTg6MDQgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBFdmVuIGJldHRlci4gT25seSByZXBsYWNlIHdoZW4gcGF0aAoJICBsb25nZXIgdGhhbiAyMCBjaGFyYWN0ZXJzLiBBbHNvIHJlcGxhY2UgcGFyZW50IGRpcmVjdG9yeS4gVGhhdAoJICB3YXkgaXQgd2lsbCByZXBsYWNlIGZvciByZWxhdGVkIHByb2plY3RzLgoKMjAwMy0xMi0xOCAxNzo0MiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEF0dGVtcHQgdG8gY2xlYW51cCB0aGUgYnVpbGQgb3V0cHV0CgoyMDAzLTEyLTE4IDE3OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGJ1ZyBmaXgKCjIwMDMtMTItMTggMTM6NDAgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBSZW1vdmUgZGVidWcKCjIwMDMtMTItMTggMTM6MTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRml4IEJ1ZyAjNDQ1IC0gU2FtZQoJICBsaWJyYXJ5IGluIG11bHRpcGxlIHByb2plY3RzIGNhbiBjYXVzZSBwcm9ibGVtcwoKMjAwMy0xMi0xOCAxMzowNCAgYW5keQoKCSogU291cmNlLzogY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHgsCgkgIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBCVUc6IEZpeCBCdWcgIzQ0NSAtIFNhbWUKCSAgbGlicmFyeSBpbiBtdWx0aXBsZSBwcm9qZWN0cyBjYW4gY2F1c2UgcHJvYmxlbXMKCjIwMDMtMTItMTcgMDk6NDIgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBNYXJrIHRoaW5ncyBhcyBhZHZhbmNlZAoKMjAwMy0xMi0xNyAwOTo0MCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFUlI6IFJlbW92ZSBkZWJ1ZwoKMjAwMy0xMi0xNyAwOToyNSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEFkZCBtb3JlIGVycm9yIHJlZ3VsYXIgZXhwcmVzc2lvbnMKCjIwMDMtMTItMTcgMDg6NDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmg6IEJVRyM0Mzk6CgkgIE1lcmdpbmcgZml4IHRvIDEuOCBicmFuY2guCgoyMDAzLTEyLTE3IDA4OjQ1ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRyM0Mzg6IE1lcmdpbmcgZml4IHRvIDEuOAoJICBicmFuY2guCgoyMDAzLTEyLTE3IDA4OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IGJldHRlciBjdGVzdCBkcml2ZXIgYW5kIHJldHVybiBjb2RlcwoKMjAwMy0xMi0xNyAwODozMCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmh4eC5pbjogRVJSOiBzdGQgLT4ga3dzeXNfc3RkLgoKMjAwMy0xMi0xNyAwODoyMSAgbWFydGluawoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBmaXggaW4gcXVvdGluZwoKMjAwMy0xMi0xNiAxNzozMCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IFB1cmlmeSBzdXBwb3J0IHNob3VsZCB3b3JrIG5vdy4KCjIwMDMtMTItMTYgMTc6MjAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmM6IEVOSDoKCSAgQWRkZWQgU2V0UGlwZVNoYXJlZCBtZXRob2QgdG8gYWxsb3cgc3Rkb3V0IGFuZCBzdGRlcnIgcGlwZXMgdG8gYmUKCSAgc2hhcmVkIHdpdGggdGhlIHBhcmVudCBwcm9jZXNzLgoKMjAwMy0xMi0xNiAxNjoxOSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEFkZCBzdXBwcmVzc2lvbiBmaWxlIHN1cHBvcnQgZm9yCgkgIHZhbGdyaW5kCgoyMDAzLTEyLTE2IDE2OjE5ICBhbmR5CgoJKiBNb2R1bGVzLzogRGFydC5jbWFrZSwgRGFydENvbmZpZ3VyYXRpb24udGNsLmluOiBFTkg6IEFkZAoJICBzdXBwcmVzc2lvbiBmaWxlCgoyMDAzLTEyLTE2IDE1OjU1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGRlZAoJICBHZXRFbnYgbWV0aG9kLgoKMjAwMy0xMi0xNiAxNTozOCAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgY29weXJpZ2h0LgoKMjAwMy0xMi0xNiAxNTozNyAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFUlI6IFN5c3RlbVRvb2xzIG5vdyBkZXBlbmRzIG9uCgkgIERpcmVjdG9yeS4KCjIwMDMtMTItMTYgMTQ6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogU2V2ZXJhbCBjbGVhbnVwcyBhbmQKCSAgYXR0ZW1wdCB0byBkbyBwdXJpZnkgc3VwcG9ydAoKMjAwMy0xMi0xNiAxNDoyNiAgbWFydGluawoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuY3h4LCBTeXN0ZW1Ub29scy5oeHguaW46IGlzIHRoZXJlIGFueQoJICBjaGFuY2UgdGhpc3dpbGwgd29yayBvbiBhbGwgcGxhdGZvcm1zIGhtbW0gYWRkZWQgcmVtb3ZlQWRpcmVjdG9yeQoKMjAwMy0xMi0xNiAxMzoxOCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IENsZWFudXAgb3V0cHV0CgoyMDAzLTEyLTE1IDE4OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogRml4IGNvdmVyYWdlIG9uIGdjYyAyLjk1CgoyMDAzLTEyLTE1IDE4OjMyICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVSUjogT2ssIHRoaW5rIGJlZm9yZSBjb21taXQuLi4gVGhpcyBmaXhlcwoJICB0d28gYnVpbGQgcHJvYmxlbXMuIFRoZSBtaXNzaW5nIGJyYWNlIGFuZCB0aGUgc3RkOjpzdHJpbmcKCSAgc2lnbmF0dXJlIGlzIGRpZmZlcmVudCBvbiBnY2MgMi45NSBhbmQgZ2NjIDMuMy4KCjIwMDMtMTItMTUgMTg6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRVJSOiBJbm5lciBsb29wIHVzZWQgdGhlIHNhbWUgY291bnRlciBhcwoJICBvdXRlci4gQnJva2UgY292ZXJhZ2UgY29kZQoKMjAwMy0xMi0xNSAxNzoyOCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRVJSOiBTVEQgZml4ZXMKCjIwMDMtMTItMTUgMTc6MjUgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZSwgTW9kdWxlcy9EYXJ0Q29uZmlndXJhdGlvbi50Y2wuaW4sCgkgIFNvdXJjZS9jbUNUZXN0LmN4eCwgU291cmNlL2NtQ1Rlc3QuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY3Rlc3QuY3h4LAoJICBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHgsIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmN4eDogRU5IOiBBZGQgaW5pdGlhbAoJICBtZW1vcnkgY2hlY2sgc3VwcG9ydCB3aGljaCB3b3JrcyBmb3IgVmFsZ3JpbmQKCjIwMDMtMTItMTUgMTY6MzAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IEJhc2U2NC5jLCBCYXNlNjQuaC5pbiwgQ29uZmlndXJlLmguaW4sCgkgIENvbmZpZ3VyZS5oeHguaW4sIENvcHlyaWdodC50eHQsIERpcmVjdG9yeS5jeHgsIERpcmVjdG9yeS5oeHguaW4sCgkgIEVuY29kZUV4ZWN1dGFibGUuYywgUHJvY2Vzcy5oLmluLCBQcm9jZXNzRndkOXguYywgUHJvY2Vzc1VOSVguYywKCSAgUHJvY2Vzc1dpbjMyLmMsIFJlZ3VsYXJFeHByZXNzaW9uLmN4eCwgUmVndWxhckV4cHJlc3Npb24uaHh4LmluLAoJICBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbiwga3dzeXNIZWFkZXJEdW1wLnBsLAoJICBrd3N5c1ByaXZhdGUuaCwga3dzeXNfc3RkLmguaW4sIGt3c3lzX3N0ZF9mc3RyZWFtLmguaW4sCgkgIGt3c3lzX3N0ZF9pb3Nmd2QuaC5pbiwga3dzeXNfc3RkX2lvc3RyZWFtLmguaW4sCgkgIGt3c3lzX3N0ZF9zc3RyZWFtLmguaW4sIHRlc3QxLmN4eCwgdGVzdFByb2Nlc3MuYzogRU5IOiBVcGRhdGVkCgkgIGNvcHlyaWdodC4KCjIwMDMtMTItMTUgMTI6NTYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogZml4IGNvbXBpbGVyIHdhcm5pbmcKCjIwMDMtMTItMTUgMTI6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBmaXggZm9yIGdjYyAzLjEKCjIwMDMtMTItMTQgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogU1RZTEU6IEZpeGVkIHR5cG8gb24gY29tbWVudC4KCjIwMDMtMTItMTQgMTM6NDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBVc2luZyBDcmVhdGVGaWxlIHdpdGgKCSAgRklMRV9GTEFHX0RFTEVURV9PTl9DTE9TRSB0byBhdXRvbWF0aWNhbGx5IGRlbGV0ZSB0aGUgV2luOXgKCSAgZm9yd2FyZGluZyBleGVjdXRhYmxlIGV2ZW4gaWYgdGhlIHBhcmVudCBwcm9jZXNzIGNyYXNoZXMuCgoyMDAzLTEyLTE0IDEzOjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNQcml2YXRlLmg6IEVOSDogQWRkZWQgS1dTWVNfTkFNRVNQQUNFX1NUUklORwoJICBtYWNyby4KCjIwMDMtMTItMTQgMTM6MDMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Db25maWd1cmUuaC5pbjogQlVHOiBGaXhlZCBkbGxpbXBvcnQuCgoyMDAzLTEyLTEzIDE0OjE5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogRVJSOiBBZGRlZCBpbmNsdWRlIG9mIHN5cy9zdGF0LmggZm9yCgkgIG9wZW4gZnVuY3Rpb25zIG1vZGUgYml0cy4KCjIwMDMtMTItMTMgMTQ6MTMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmM6IEVOSDoKCSAgQWRkZWQgU2V0UGlwZUZpbGUgbWV0aG9kIHRvIGFsbG93IHRoZSBwcm9jZXNzIHBpcGVsaW5lIHN0ZGluLAoJICBzdGRvdXQsIGFuZCBzdGRlcnIgdG8gYmUgcmVkaXJlY3RlZCBmcm9tL3RvIGZpbGVzLgoKMjAwMy0xMi0xMyAxMDozNiAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmM6IEVOSDogQ29kZSBpcyBub3cKCSAgcm9idXN0IHRvIE5ldyBtZXRob2QgcmV0dXJuaW5nIE5VTEwuCgoyMDAzLTEyLTEyIDE1OjQyICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0lSSVg2NC5jbWFrZTogRU5IOiBBZGRlZAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9TT05BTUVfQ19GTEFHIGFuZAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9TT05BTUVfQ1hYX0ZMQUcgc2V0dGluZ3MgdG8gZW5hYmxlIHNoYXJlZAoJICBsaWJyYXJ5IHZlcnNpb24gc3VwcG9ydCBmb3IgU0dJLgoKMjAwMy0xMi0xMiAxNDo0NCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZTogRU5IOiBBZGRlZAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9TT05BTUVfRkxBRyBzZXR0aW5nIHRvIGVuYWJsZSBzaGFyZWQgbGlicmFyeQoJICB2ZXJzaW9uIHN1cHBvcnQgZm9yIEhQLVVYLgoKMjAwMy0xMi0xMiAxNDozNCAga2luZwoKCSogTW9kdWxlcy9DTWFrZURlZmF1bHRNYWtlUnVsZVZhcmlhYmxlcy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlOiBFTkg6IFVzaW5nIHNlcGFyYXRlCgkgIENNQUtFX1NIQVJFRF9MSUJSQVJZX1NPTkFNRSBmbGFncyBmb3IgQyBhbmQgQ1hYLgoKMjAwMy0xMi0xMiAxNDoyMCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9TdW5PUy5jbWFrZTogRU5IOiBBZGRlZAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9TT05BTUVfRkxBRyBzZXR0aW5nIHRvIGVuYWJsZSBzaGFyZWQgbGlicmFyeQoJICB2ZXJzaW9uIHN1cHBvcnQgZm9yIFN1bk9TLgoKMjAwMy0xMi0xMiAwOToxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBDTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZToKCSAgRU5IOiByZWR1Y2UgdGhlIG51bWJlciBvZiB0aW1lcyBnbnUgaXMgdGVzdGVkIGZvcgoKMjAwMy0xMi0xMiAwODowOSAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBub3cgY2FuIGRvIGV4dHJhIHVwZGF0ZXMKCjIwMDMtMTItMTEgMTU6MzggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzo0MjcgdHJ5Y29tcGlsZSB0YXJnZXQgbXVzdCBiZQoJICBleGUKCjIwMDMtMTItMTEgMTA6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogQlVHOiBuZWVkIGEgZHVtbXkgZmlyc3QgYXJndW1lbnQKCSAgdG8gY21ha2UKCjIwMDMtMTItMTEgMDg6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmg6IGZpeCB0bwoJICB0aGUgc2lnbmF0dXJlIGFuZCBhcmd1bWVudCBwYXJzaW5nCgoyMDAzLTEyLTEwIDE5OjQ3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlbWFpbi5jeHg6IEVOSDogQXJndW1lbnQgZm9yIHNjcmlwdCBtb2RlCgkgIGlzIC1QIChwcm9jZXNzKSBhbmQgdGFrZSBvdXQgdGhlIGF1dG9tYXRpYyBzY3JpcHQgbW9kZQoKMjAwMy0xMi0xMCAwODo1NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogQlVHOiByb2xsIGJhY2sgY2hhbmdlIGZvcgoJICB2YXJpYWJsZSB1c2VkIGluIHBhdGgKCjIwMDMtMTItMDkgMTQ6MzMgIGtpbmcKCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogRU5IOiBBZGRpbmcgL3Vzci9pbmNsdWRlL3czMmFwaSBmb3IKCSAgT3BlbkdMIGhlYWRlciBzZWFyY2guCgoyMDAzLTEyLTA5IDExOjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpbGUgY29tcGFyaXNvbiBvbiB3aW5kb3dzCgkgIG11c3QgdGVzdCB0aGUgdm9sdW1lIHNlcmlhbCBudW1iZXIgYXMgd2VsbCBhcyB0aGUgZmlsZSBpbmRleC4KCjIwMDMtMTItMDkgMTA6MzMgIG1hcnRpbmsKCgkqIERhcnRDb25maWcuY21ha2U6IG1vdmUgc3RhcnQgdGltZSB1cCBvbmUgaG91cgoKMjAwMy0xMi0wOSAwOToxNiAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5pbi5sOiBFUlI6IFJlbW92ZWQKCSAgWVlfQlJFQUsgc3RhdGVtZW50cyBhZnRlciByZXR1cm4gc3RhdGVtZW50cyBiZWNhdXNlIHRoZXkgYXJlCgkgIHVucmVhY2hhYmxlLgoKMjAwMy0xMi0wOSAwOToxMSAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5pbi5sOiBFUlI6IEFkZGVkCgkgIG1pc3Npbmcgc3RhdGljIGtleXdvcmQgdG8gY21MaXN0RmlsZUxleGVyU2V0VG9rZW4gYW5kCgkgIGNtTGlzdEZpbGVMZXhlckFwcGVuZCBkZWZpbml0aW9ucy4KCjIwMDMtMTItMDkgMDg6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogdXNlIHZhcmlhYmxlcyBmb3Igb3V0cHV0CgkgIHBhdGhzCgoyMDAzLTEyLTA5IDA4OjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IHNvbWUgdXBkYXRlcyB0byBoYW5kbGUgaW5saW5lIGNhY2hlIGZpbGVzIGFuZAoJICBlbnZpcm9ubWVudCB2YXJpYWJsZXMKCjIwMDMtMTItMDggMTg6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBSZWltcGxlbWVudGVkIEV4cGFuZExpc3RBcmd1bWVudHMKCSAgdG8gcHJvcGVybHkgaGFuZGxlIGVzY2FwZWQgYmFja3NsYXNoZXMgdGhhdCBvY2N1ciByaWdodCBiZWZvcmUKCSAgc2VtaWNvbG9ucy4gIFRoaXMgaXMgaW1wb3J0YW50IGZvciBsaXN0cyBvZiBwYXRocyBlbmRpbmcgaW4KCSAgYmFja3NsYXNoZXMgb24gd2luZG93cy4KCjIwMDMtMTItMDggMTY6MTAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogYnVnIGZpeCB0byBlc2NhcGVkIHNlbWljb2xvbnMgaW4KCSAgYXJndW1lbnRzCgoyMDAzLTEyLTA4IDE1OjA1ICBraW5nCgoJKiBTb3VyY2UvY21MaXN0RmlsZUxleGVyLmluLmw6IEVSUjogRml4ZWQgY29tbWVudCBhYm91dCBob3cgdG8gcnVuCgkgIGZsZXggdG8gcmVmbGVjdCBuZXcgbmFtZSBvZiB0aGlzIGZpbGUuCgoyMDAzLTEyLTA4IDE0OjIwICBraW5nCgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlTGV4ZXIuaW4ubCwgY21MaXN0RmlsZUxleGVyLmw6IEVSUjogUmVuYW1pbmcKCSAgY21MaXN0RmlsZUxleGVyLmwgdG8gY21MaXN0RmlsZUxleGVyLmluLmwgdG8gYXZvaWQgbWFrZSBwcm9ncmFtcwoJICB0cnlpbmcgdG8gcnVuIGxleCBhdXRvbWF0aWNhbGx5IHdobiBidWlsZGluZyBjbUxpc3RGaWxlTGV4ZXIuYy4KCjIwMDMtMTItMDggMTQ6MTEgIGFuZHkKCgkqIGJvb3RzdHJhcDogRU5IOiBGaXggYm9vdHN0cmFwIHRvIGhhbmRsZSBsZXggcGFyc2VyCgoyMDAzLTEyLTA4IDEzOjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlTGV4ZXIuYywgY21MaXN0RmlsZUxleGVyLmw6IEVSUjogV2UgbXVzdAoJICBkZWZpbmUgWVlfTk9fVU5JU1REX0ggdG8gYnVpbGQgb24gd2luZG93cy4KCjIwMDMtMTItMDggMTM6MzYgIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxpc3RGaWxlQ2FjaGUuaCwKCSAgY21MaXN0RmlsZUxleGVyLmMsIGNtTGlzdEZpbGVMZXhlci5oLCBjbUxpc3RGaWxlTGV4ZXIubDogRU5IOgoJICBVc2luZyBsZXgtYmFzZWQgdG9rZW5pemVyIGFuZCBhIHNpbXBsZSByZWN1cnNpdmUtZGVzY2VudCBwYXJzZXIKCSAgaW4gcGxhY2Ugb2YgdGhlIG9sZCBoYW5kLWNvZGVkIHBhcnNlciBmb3IgQ01ha2UgbGlzdGZpbGVzLgoKMjAwMy0xMi0wOCAxMTozNSAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBTVFlMRTogUmVtb3ZlZCB0cmFpbGluZyB3aGl0ZXNwYWNlLgoKMjAwMy0xMi0wOCAxMTozMSAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBJbXByb3ZlZCBlcnJvciBtZXNzYWdlcyB3aGVuIHNvdXJjZSB0cmVlCgkgIGRvZXMgbm90IGhhdmUgYSBDTWFrZUxpc3RzLnR4dCBmaWxlLglObyBtYXR0ZXIgaG93IG1hbnkgY2FzZXMgd2UKCSAgY2hlY2ssIHRoZXJlIGFsd2F5cyBzZWVtcyB0byBiZSBhIHVzZXIgdGhhdCBmaW5kcyBhIGNhc2UgdGhhdAoJICBnaXZlcyBhIGNvbmZ1c2luZyBlcnJvciBtZXNzYWdlLi4uCgoyMDAzLTEyLTA4IDExOjIzICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2UsIE1vZHVsZXMvRGFydENvbmZpZ3VyYXRpb24udGNsLmluLAoJICBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogSW1wcm92ZSBjb3ZlcmFnZSBvbiBzeXN0ZW1zIHdpdGgKCSAgbXVsdGlwbGUgZ2NvdiBjb21tYW5kcwoKMjAwMy0xMi0wNyAxNDowOSAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOgoJICBDbGVhbmVkIHVwIHBpcGUgbnVtYmVyaW5nLgoKMjAwMy0xMi0wNSAxNjozOSAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IFVzaW5nIGNtTGlzdEZpbGVDYWNoZSB0byByZWFkIHRoZQoJICBEYXJ0VGVzdGZpbGUgaW5zdGVhZCBvZiBkdXBsaWNhdGluZyB0aGUgcGFyc2UgbG9vcC4KCjIwMDMtMTItMDUgMTQ6NTEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19zdGQuaC5pbjogRVJSOiBOZWVkIHRvIGluY2x1ZGUgQ29uZmlndXJlLmh4eAoJICB0byBnZXQga3dzeXNfc3RkIGRlZmluaXRpb24uCgoyMDAzLTEyLTA1IDExOjUzICBraW5nCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGt3c3lzL1Byb2Nlc3MuaC5pbiwKCSAga3dzeXMvUHJvY2Vzc1VOSVguYywga3dzeXMvUHJvY2Vzc1dpbjMyLmMsIGt3c3lzL3Rlc3QxLmN4eCwKCSAga3dzeXMvdGVzdFByb2Nlc3MuYzogRU5IOiBSZW1vdmVkIHBpcGUgc2VsZWN0aW9uIGFyZ3VtZW50IGZyb20KCSAgV2FpdEZvckRhdGEgbWV0aG9kIGluIGt3c3lzUHJvY2Vzcy4gIFRoaXMgZ3JlYXRseSBzaW1wbGlmaWVzIGl0cwoJICB1c2UuCgoyMDAzLTEyLTA1IDExOjM3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzLmguaW4sIFByb2Nlc3NGd2Q5eC5jLCBQcm9jZXNzV2luMzIuYzoKCSAgU1RZTEU6IFJlbW92ZWQgdHJhaWxpbmcgd2hpdGVzcGFjZS4KCjIwMDMtMTItMDUgMTE6MTkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQlVHOiBQcm9jZXNzIHN0YXJ0dXAtaW5mbyBzdHJ1Y3QKCSAgZHdGbGFncyB3ZXJlIGJlaW5nIHNldCBpbmNvcnJlY3RseSBkdWUgdG8gYSBjaGFuZ2UgaW4gc3RhdGVtZW50CgkgIG9yZGVyLgoKMjAwMy0xMi0wNSAxMDo0NSAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBFTkg6IE5ldyBpbmRlbnRhdGlvbiBpbXBsZW1lbnRhdGlvbiB0bwoJICBzdXBwb3J0IG11bHRpLWxpbmUgc3RyaW5ncy4KCjIwMDMtMTItMDQgMTQ6MzQgIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogU1RZTEU6IFJlbW92ZWQgdHJhaWxpbmcgd2hpdGVzcGFjZS4KCjIwMDMtMTItMDQgMTM6NTYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFUlI6IEFkZGVkIG1pc3Npbmcgc3RhdGljIHN0b3JhZ2UKCSAgY2xhc3Mgc3BlY2lmaWVyIGZvciBrd3N5c1Byb2Nlc3NDcmVhdGUuCgoyMDAzLTEyLTAzIDE0OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IHNvbWUgZml4ZXMgdG8gdGVzdCBoYXJuZXMKCjIwMDMtMTItMDMgMTM6MzcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFUlI6IFNvbWUgcGxhdGZvcm1zIGRlZmluZSBzdGRpbiwKCSAgc3Rkb3V0LCBhbmQgc3RkZXJyIGFzIG1hY3Jvcy4gIFJlbmFtaW5nIHRoZXNlIHN5bWJvbHMgdG8gU3RkSW4sCgkgIFN0ZE91dCwgYW5kIFN0ZEVyci4KCjIwMDMtMTItMDMgMDk6MjAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc0Z3ZDl4LmMsIFByb2Nlc3NVTklYLmMsCgkgIFByb2Nlc3NXaW4zMi5jOiBFTkg6IE1lcmdlZCBjaGFuZ2VzIGZyb20gS1dTeXMtTXVsdGlQcm9jZXNzLWJwIHRvCgkgIEtXU3lzLU11bHRpUHJvY2Vzcy1iMnQtMS1tcCB0byBtYWluIHRyZWUuICBUaGlzIGludHJvZHVjZXMKCSAgc3VwcG9ydCBmb3IgcHJvY2VzcyBwaXBlbGluZXMuCgoyMDAzLTEyLTAzIDA5OjEyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzcy5oLmluOiBFUlI6IEFkZGVkIG1pc3NpbmcgbWFjcm8gZGVmaW5pdGlvbgoJICBmb3Iga3dzeXNQcm9jZXNzX0FkZENvbW1hbmQuCgoyMDAzLTEyLTAyIDE3OjIzICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IEFkZGVkIGRvY3VtZW50YXRpb24KCSAgYWJvdXQgbG9jYXRpb24gb2YgY21DUGx1Z2luQVBJLmggaW4gY3lnd2luIHBhY2thZ2UuCgoyMDAzLTEyLTAyIDE3OjE2ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbjogQlVHOiBObyBsb25nZXIgbmVlZCB0bwoJICBjb3B5IENvcHlyaWdodC50eHQgaW50byBkb2MgZGlyZWN0b3J5LiAgSXQgaXMgZG9uZSBieSB0aGUgY21ha2UKCSAgaW5zdGFsbGF0aW9uLgoKMjAwMy0xMi0wMiAxNzoxNCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY3lnd2luLXBhY2thZ2Uuc2guaW46IEJVRzogTmVlZCB0byBwYXNzCgkgIGRhdGFkaXIvZG9jZGlyL21hbmRpciB0byBib290c3RyYXAgc2NyaXB0IGluc3RlYWQgb2Ygd3JpdGluZyBpbgoJICB0aGUgY2FjaGUuCgoyMDAzLTEyLTAyIDE2OjU3ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbjogRU5IOiBDeWd3aW4gbm93IHVzZXMKCSAgL3Vzci9zaGFyZS9kb2MgaW5zdGVhZCBvZiAvdXNyL2RvYy4KCjIwMDMtMTItMDIgMTY6NTcgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0aW5nCgkgIHZlcnNpb24gbnVtYmVyIHRvIDEuOC4zLgoKMjAwMy0xMi0wMiAxNjo1MCAgbWFydGluawoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBiZXR0ZXIgZXJyb3IgaGFuZGxpbmcKCjIwMDMtMTItMDEgMTk6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIGN0ZXN0LmN4eDogYSBzdGFydCBvbiB0aGUKCSAgZGFzaGJvYXJkIGRyaXZlcgoKMjAwMy0xMi0wMSAxMzowNyAga2luZwoKCSogTW9kdWxlcy86IENNYWtlVGVzdENDb21waWxlci5jbWFrZSwgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6CgkgIEJVRyM0MTE6IE1lcmdlZCBmaXggdG8gMS44IGJyYW5jaC4KCjIwMDMtMTItMDEgMTM6MDYgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlOgoJICBCVUcjNDExOiBSZS1vcmRlcmluZyBzdGF0ZW1lbnRzIHNvIGVycm9ycyBzaG93IHVwIGluCgkgIENNYWtlRXJyb3IubG9nLgoKMjAwMy0xMS0yOCAxNTozNyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IENsZWFuZWQgdXAgaW1wbGVtZW50YXRpb24gb2YKCSAgc3RkZXJyIGFuZCB3aW45eCBmb3J3YXJkaW5nIGV4ZWN1dGFibGUgZXJyb3IgcGlwZS4KCjIwMDMtMTEtMjggMTQ6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBSZW1vdmluZyBzcGVjaWFsIHRlcm1pbmF0aW9uCgkgIHBpcGUgZnJvbSBXaW5kb3dzIGltcGxlbWVudGF0aW9uLiAgSXQgZG9lcyBub3QgbmVlZCBpdCBiZWNhdXNlCgkgIFdhaXRGb3JNdWx0aXBsZU9iamVjdHMgY2FuIHdhaXQgd2l0aCBhIHRpbWVvdXQgZm9yIHRoZSBwcm9jZXNzIHRvCgkgIHRlcm1pbmF0ZS4gIFRoaXMgaXMgbm90IHRoZSBjYXNlIGluIFVOSVggYmVjYXVzZSB3YWl0cGlkIGhhcyBubwoJICB0aW1lb3V0LCBzbyB3ZSBuZWVkIHRoZSB0ZXJtaW5hdGlvbiBwaXBlIHRoZXJlLgoKMjAwMy0xMS0yOCAxNDowOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IFJlbW92ZWQgc3RyYXkgZGVidWdnaW5nIGNvZGUKCSAgdGhhdCBjYXVzZWQgd2luOXggbW9kZSB0byBhbHdheXMgYmUgdXNlZC4KCjIwMDMtMTEtMjggMTQ6MDIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBBZGRlZCBzcGVjaWFsIHRlcm1pbmF0aW9uIHBpcGUKCSAgdG8gYWxsb3cgdGltZW91dCB0byB3b3JrIGZvciBwcm9jZXNzZXMgdGhhdCBjbG9zZSB0aGVpciBvdXRwdXQKCSAgcGlwZXMuCgoyMDAzLTExLTI4IDEzOjA3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVOSDogRXJyb3IgbWVzc2FnZXMgZnJvbSB0aGUKCSAgZm9yd2FyZGluZyBleGVjdXRhYmxlIGFyZSBub3cgcmVhZCBjb21wbGV0ZWx5IGV2ZW4gaWYgdGhleSBhcmUKCSAgcmVwb3J0ZWQgaW4gbXVsdGlwbGUgYmxvY2tzLgoKMjAwMy0xMS0yOCAxMjo1OCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IEZpeGVkIGVycm9yIG1lc3NhZ2Ugd2hlbgoJICBwcm9jZXNzIGNvbnRyb2wgc3RydWN0dXJlIGluaXRpYWxpemF0aW9uIHJ1bnMgb3V0IG9mIG1lbW9yeS4KCjIwMDMtMTEtMjggMTI6NTIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRVJSOiBSZW1vdmVkIHVzZWxlc3MgaWYoY29tbWFuZCkgaW4KCSAgQWRkU3RyaW5nLgoKMjAwMy0xMS0yOCAxMjo0NyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IFJlbmFtZWQgQ01QRV8qIHRvIEtXU1lTUEVfKiBmb3IKCSAgY29uc2lzdGVuY3kgd2l0aCBQcm9jZXNzVU5JWC5jLgoKMjAwMy0xMS0yOCAxMjo0MiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IEJVRzogV2hlbiBhIGNoaWxkIGZhaWxzIHRvIGV4ZWMsIHdlCgkgIG5lZWQgdG8gcmVhZCB0aGUgZW50aXJlIGVycm9yIG1lc3NhZ2UsIG5vdCBqdXN0IHRoZSBmaXJzdCBibG9jay4KCjIwMDMtMTEtMjggMTI6MzEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFTkg6IFVOSVggaW1wbGVtZW50YXRpb24gb2YgcHJvY2VzcwoJICBwaXBlbGluZS4KCjIwMDMtMTEtMjggMTA6MDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFTkg6IEltcGxlbWVudGVkIFNldENvbW1hbmQgYW5kCgkgIEFkZENvbW1hbmQgZm9yIG11bHRpcGxlIHByb2Nlc3Mgc3VwcG9ydC4KCjIwMDMtMTEtMjggMDk6NDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3NVTklYLmM6IFNUWUxFOiBSZW1vdmVkIHRyYWlsaW5nIHdoaXRlc3BhY2UuCgoyMDAzLTExLTI3IDIzOjA4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzLmguaW4sIFByb2Nlc3NGd2Q5eC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOgoJICBXaW5kb3dzIGltcGxlbWVudGF0aW9uIG9mIHByb2Nlc3MgcGlwZWxpbmUuCgoyMDAzLTExLTI3IDEwOjI4ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IGNtYWtlX3N5bWxpbmtfbGlicmFyeSBzaG91bGQgcmV0dXJuIHRoZQoJICBhY2N1bXVsYXRlZCByZXN1bHQsIG5vdCBqdXN0IDAuCgoyMDAzLTExLTI2IDE3OjU5ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlOiBFTkg6IEFkZGluZyBpbXBsZW1lbnRhdGlvbiBvZgoJICBzaGFyZWQgbGlicmFyeSB2ZXJzaW9uIHN1cHBvcnQgb24gVU5JWC4gIFRoaXMgYWRkcmVzc2VzIHRoZQoJICBmZWF0dXJlIHJlcXVlc3QgZGVzY3JpYmVkIGluIGJ1ZyMzMi4KCjIwMDMtMTEtMjYgMTc6NTIgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VEZWZhdWx0TWFrZVJ1bGVWYXJpYWJsZXMuY21ha2U6IEVOSDogQWRkaW5nCgkgIGltcGxlbWVudGF0aW9uIG9mIHNoYXJlZCBsaWJyYXJ5IHZlcnNpb24gc3VwcG9ydCBvbiBVTklYLiAgVGhpcwoJICBhZGRyZXNzZXMgdGhlIGZlYXR1cmUgcmVxdWVzdCBkZXNjcmliZWQgaW4gYnVnIzMyLgoKMjAwMy0xMS0yNiAxNzozOCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBBZGRpbmcgaW1wbGVtZW50YXRpb24gb2YKCSAgc2hhcmVkIGxpYnJhcnkgdmVyc2lvbiBzdXBwb3J0IG9uIFVOSVguICBUaGlzIGFkZHJlc3NlcyB0aGUKCSAgZmVhdHVyZSByZXF1ZXN0IGRlc2NyaWJlZCBpbiBidWcjMzIuCgoyMDAzLTExLTI2IDE3OjM0ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IFRoZSBjbWFrZV9zeW1saW5rX2xpYnJhcnkgY29tbWFuZCBuZWVkcyB0bwoJICByZW1vdmUgZXhpc3RpbmcgZmlsZXMgYmVmb3JlIGNyZWF0aW5nIGxpbmtzLgoKMjAwMy0xMS0yNiAxNjozOCAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBBZGRlZCB1bmRvY3VtZW50ZWQgY21ha2Vfc3ltbGlua19saWJyYXJ5CgkgIHRvIGhlbHAgd2l0aCBidWlsZGluZyB2ZXJzaW9uZWQgc2hhcmVkIGxpYnJhcmllcy4KCjIwMDMtMTEtMjYgMTY6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IHJlbW92ZSBtb3JlIHdhcm5pbmdzCgoyMDAzLTExLTI2IDE2OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IHJlbW92ZSB3YXJuaW5ncwoKMjAwMy0xMS0yNiAxNjoxMSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFUlI6IEZpeGVkIHVudXNlZCBwYXJhbWV0ZXIgd2FybmluZ3MuCgoyMDAzLTExLTI2IDE2OjA0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBzb21lIHdhcm5pbmdzCgoyMDAzLTExLTI2IDE0OjUyICBraW5nCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZGVkCgkgIENyZWF0ZVN5bWxpbmsgbWV0aG9kLgoKMjAwMy0xMS0yNiAxNDozMCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBFTkg6IHJlbW92ZSByZW1vdmVjYWNoZSBlbnRyeQoJICBjYWxsCgoyMDAzLTExLTI2IDE0OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6CgkgIEVOSDogZ2VuZXJhdGUgYSBzbG4gYW5kIGRzdyBmaWxlIGZvciBlYWNoIHN1YiBwcm9qZWN0IGluIGEKCSAgcHJvamVjdAoKMjAwMy0xMS0yNiAxMTo0MSAga2luZwoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IERvIG5vdCB1c2UKCSAgc3RkOjpzdHJpbmcgdG8gYWNjdW11bGF0ZSBvdXRwdXQuICBVc2Ugc3RkOjp2ZWN0b3IgaW5zdGVhZC4gIFRoaXMKCSAgaXMgbXVjaCBiZXR0ZXIgYXQgbWVtb3J5IG1hbmFnZW1lbnQuCgoyMDAzLTExLTI1IDE2OjE0ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBTVFlMRTogUmVtb3ZlZCB0cmFpbGluZwoJICB3aGl0ZXBzYWNlLgoKMjAwMy0xMS0yNCAxNTo1MSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogQlVHOiBvc3hfaW5zdGFsbCBzaG91bGQgbWFrZQoJICB0aGUgUmVzb3VyY2VzIGRpcmVjdG9yeSBiZWZvcmUgY29weWluZyBmaWxlcyBpbnRvIGl0LgoKMjAwMy0xMS0yNCAxNDowNCAga2luZwoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogQlVHIzI2NjogTWVyZ2luZyAxLjE2LT4xLjE4IGNoYW5nZXMKCSAgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMjQgMTQ6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRyMzOTM6IE1lcmdpbmcKCSAgMS40MC0+MS40MSBjaGFuZ2VzIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTIxIDE0OjEzICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUcjMzkzOiBBZGRpbmcgWE1MCgkgIGVzY2FwaW5nIGZvciBhZGRpdGlvbmFsIHBlci1zb3VyY2UgY29tcGlsZSBmbGFncy4KCjIwMDMtMTEtMjEgMTM6MTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IEJVRzogcmVtb3ZlIGp1bmsgY29kZQoKMjAwMy0xMS0yMCAxNTo0MSAga2luZwoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogQlVHIzI2NjogQWRkZWQgY3lnd2luIG5hbWVzIGZvciB0aGUKCSAgbGlicmFyeS4gIE1vZHVsZSBub3cgZG9jdW1lbnRzIG91dHB1dCBhcyBQWVRIT05fTElCUkFSSUVTIGluc3RlYWQKCSAgb2YgUFlUSE9OX0xJQlJBUlkuCgoyMDAzLTExLTIwIDE1OjMxICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOiBTVFlMRTogUmVtb3ZlZCB0cmFpbGluZyB3aGl0ZXNwYWNlLgoKMjAwMy0xMS0yMCAxNTozMCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IEFJWC5jbWFrZSwgQlNET1MuY21ha2UsIERhcndpbi5jbWFrZSwKCSAgRnJlZUJTRC5jbWFrZSwgSFAtVVguY21ha2UsIElSSVguY21ha2UsIElSSVg2NC5jbWFrZSwKCSAgTVAtUkFTLmNtYWtlLCBOZXRCU0QuY21ha2UsIE9TRjEuY21ha2UsIE9wZW5CU0QuY21ha2UsCgkgIFJJU0Nvcy5jbWFrZSwgU0NPX1NWLmNtYWtlLCBTSU5JWC5jbWFrZSwgU3VuT1MuY21ha2UsCgkgIFRydWU2NC5jbWFrZSwgVUxUUklYLmNtYWtlLCBVTklYX1NWLmNtYWtlLCBVbml4V2FyZS5jbWFrZSwKCSAgV2luZG93cy1nY2MuY21ha2UsIFhlbml4LmNtYWtlLCBnY2MuY21ha2U6IEJVRyMzODM6IE1lcmdlZCBmaXggdG8KCSAgMS44IGJyYW5jaC4KCjIwMDMtMTEtMTQgMTA6NDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBBSVguY21ha2UsIEJTRE9TLmNtYWtlLCBEYXJ3aW4uY21ha2UsCgkgIEZyZWVCU0QuY21ha2UsIEhQLVVYLmNtYWtlLCBJUklYLmNtYWtlLCBJUklYNjQuY21ha2UsCgkgIE1QLVJBUy5jbWFrZSwgTmV0QlNELmNtYWtlLCBPU0YxLmNtYWtlLCBPcGVuQlNELmNtYWtlLAoJICBSSVNDb3MuY21ha2UsIFNDT19TVi5jbWFrZSwgU0lOSVguY21ha2UsIFN1bk9TLmNtYWtlLAoJICBUcnVlNjQuY21ha2UsIFVMVFJJWC5jbWFrZSwgVU5JWF9TVi5jbWFrZSwgVW5peFdhcmUuY21ha2UsCgkgIFdpbmRvd3MtZ2NjLmNtYWtlLCBYZW5peC5jbWFrZSwgZ2NjLmNtYWtlOiBCVUc6IGZpeCBmb3IgYnVnIDM4MwoJICBnY2MgZmxhZ3MgYXJlIG5vdyBhbHdheXMgc2V0IGlmIHRoZSBjb21waWxlciBpcyBnbnUKCjIwMDMtMTEtMTMgMTU6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4OiBCVUcjMzIxOiBNZXJnZWQgMS4xMy0+MS4xNAoJICBjaGFuZ2VzIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTEzIDE0OjQ1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eDogZml4ZWQgYXJndW1lbnQgcGFyc2luZwoKMjAwMy0xMS0xMyAxMzo1MiAga2luZwoKCSogU291cmNlLzogY21GaW5kRmlsZUNvbW1hbmQuaCwgY21GaW5kTGlicmFyeUNvbW1hbmQuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuaCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuaDogRU5IOiBEb2N1bWVudGF0aW9uCgkgIGltcHJvdmVtZW50cyBmcm9tIG1haW4gdHJlZS4KCjIwMDMtMTEtMTMgMTM6NTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmgsIGNtRmluZFByb2dyYW1Db21tYW5kLmg6IEVOSDogRG9jdW1lbnRhdGlvbgoJICBpbXByb3ZlbWVudHMuCgoyMDAzLTExLTEzIDEyOjQzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEJVRyMyOTk6IE1lcmdlZCAxLjgtPjEuOSBjaGFuZ2VzIHRvIDEuOAoJICBicmFuY2guCgoyMDAzLTExLTEyIDE3OjQ0ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEJVRyMyOTk6IEdUS19nbW9kdWxlX0xJQlJBUlkgaXMgb3B0aW9uYWwKCSAganVzdCBsaWtlIEdUS19ndGhyZWFkX0xJQlJBUlkuCgoyMDAzLTExLTEyIDE2OjUzICBraW5nCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6IEJVRyMzNzQ6IE1lcmdpbmcgMS4xMC0+MS4xMQoJICBjaGFuZ2VzIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTEyIDE2OjUzICBraW5nCgoJKiBNb2R1bGVzL1Rlc3RGb3JTVEROYW1lc3BhY2UuY21ha2U6IEJVRyMzNzQ6IE1lcmdpbmcgMS45LT4xLjEwCgkgIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMTIgMTY6NTEgIGtpbmcKCgkqIE1vZHVsZXMvOiBUZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLCBUZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOgoJICBCVUcjMzc0OiBBZGRpbmcgT1VUUFVUX1ZBUklBQkxFIE9VVFBVVCB0byBUUllfQ09NUElMRSBjb21tYW5kcy4KCjIwMDMtMTEtMTIgMTQ6NTcgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4OiBCVUcjMzczOiBNZXJnaW5nIDEuMzktPjEuNDAgdG8gMS44CgkgIGJyYW5jaC4KCjIwMDMtMTEtMTIgMTQ6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDM3MyBtYWtlIGRlcGVuZCBwcm9ibGVtCgoyMDAzLTExLTEyIDE0OjE3ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHIzM3MTogTWVyZ2luZwoJICAxLjE5LT4xLjIwIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMTIgMTQ6MTcgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUcjMzcxOiBNZXJnaW5nCgkgIDEuMTctPjEuMTggY2hhbmdlcyB0byAxLjggYnJhbmNoLgoKMjAwMy0xMS0xMiAxNDowNiAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBCdWcgIzM3MSAtIEFkZCBidWlsZAoJICBjb25maWd1cmF0aW9uIGZvciB0cnkgY29tcGlsZXMgdXNpbmcgY21ha2UgdmFyaWFibGUKCjIwMDMtMTEtMTIgMTA6MDMgIGtpbmcKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogQlVHIzE5OTogTWVyZ2luZyAxLjQ1LT4xLjQ2IGNoYW5nZXMgdG8gMS44CgkgIGJyYW5jaC4KCjIwMDMtMTEtMTIgMTA6MDAgIGtpbmcKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogQlVHIzE5OTogSWYKCSAgREFSVF9FWFBFUklNRU5UQUxfVVNFX1BST0pFQ1RfTkFNRSBpcyBzZXQsIHRoZSBQUk9KRUNUX05BTUUgd2lsbAoJICBiZSBpbmNsdWRlZCBpbiB0aGUgbmFtZSBvZiB0aGUgRXhwZXJpbWVudGFsIGFuZAoJICBFeHBlcmltZW50YWxTdWJtaXQgdGFyZ2V0cy4KCjIwMDMtMTEtMTEgMTI6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRyMzNjM6IE1lcmdlZAoJICAxLjM5LT4xLjQwIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMTEgMTI6NTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciAzNjMsCgkgIFZDTUlETFRvb2wgbm90IHVzZWQgZm9yIGlkbCBmaWxlcwoKMjAwMy0xMS0xMSAxMjo1MSAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUcjMzQ0OiBNZXJnZWQgMS42Ni0+MS42NyB0byAxLjggYnJhbmNoLgoKMjAwMy0xMS0xMSAxMjozNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEhhbmRsZSAtQyBwcm9wZXJseSBmb3IgZXhlY3V0YWJsZXMgdGhhdAoJICBhcmUgbm90IGluIHRoZSBwcm9qZWN0OyBGaXggQnVnICMzNDQgLSBjdGVzdCAtQyBEZWJ1ZwoKMjAwMy0xMS0xMSAxMTo0MiAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuaDogQlVHIzI1OTogTWVyZ2luZyAxLjE2LT4xLjE4IGNoYW5nZXMgdG8gMS44CgkgIGJyYW5jaC4KCjIwMDMtMTEtMTEgMTE6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHIzI1OTogTWVyZ2luZyAxLjYyLT4xLjYzIGFuZCAxLjY0LT4xLjY2CgkgIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMTEgMTE6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eDogQlVHIzI1OTogTWVyZ2luZyAxLjE4LT4xLjIwIGNoYW5nZXMKCSAgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMDYgMTY6MzggIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBBZGQgd2FybmluZyBleGNlcHRpb24gZm9yIFZUSyB0eXBlCgkgIHdhcm5pbmcgYmxvY2tpbmcKCjIwMDMtMTEtMDUgMTU6MDIgIGFuZHkKCgkqIFV0aWxpdGllcy9Eb3h5Z2VuL2RveHlmaWxlLmluOiBFTkg6IEhhbmRsZSBrd3N5cyBwcm9wZXJseQoKMjAwMy0xMS0wNSAxNTowMiAgYW5keQoKCSogVXRpbGl0aWVzL0RveHlnZW4vQ01ha2VMaXN0cy50eHQ6IEVOSDogQ2xlYW51cC4gV2UgZG8gbm90IHJlYWxseQoJICBuZWVkIHRvIHVzZSB2dGsgZm9yIGRvY3VtZW50YXRpb24uIFdlIG9ubHkgbmVlZCB1dGlsaXRpZXMvZG94eWdlbgoJICBkaXJlY3RvcnkKCjIwMDMtMTEtMDUgMTM6MDMgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUcjMzQ2OiBNZXJnaW5nIGZpeAoJICBmcm9tIG1haW4gdHJlZSB0byAxLjggYnJhbmNoLgoKMjAwMy0xMS0wNSAxMToxOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBidWcgMzQ2LAoJICBib3JsYW5kIHNob3VsZCBub3cgc3VwcG9ydCBkYXNoIGluIHRoZSBwYXRoCgoyMDAzLTExLTA1IDEwOjQ2ICBraW5nCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRyMyNTk6IEZpeCBmb3Igc3BhY2VzIGluIHBhdGhzIHRvCgkgIGV4ZWN1dGFibGUgYWRkZWQgdG8gcHJldmlvdXMgZml4ZXMgZm9yIHRoaXMgYnVnLgoKMjAwMy0xMS0wNSAxMDoxMyAga2luZwoKCSogTW9kdWxlcy86IEZpbmRUY2xzaC5jbWFrZSwgRmluZFdpc2guY21ha2U6IEJVRyMzMjI6IE1lcmdpbmcgZml4CgkgIGZyb20gbWFpbiB0cmVlIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTA0IDEyOjUwICBraW5nCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRyMzMjM6IE1lcmdpbmcgZml4IGZyb20gbWFpbiB0cmVlIHRvIDEuOAoJICBicmFuY2guCgoyMDAzLTExLTA0IDExOjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogZml4IGZvciBidWcgMzIzCgoyMDAzLTExLTA0IDA5OjQ1ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogTWVyZ2luZyBjaGFuZ2VzIGZyb20gcmV2aXNpb24gMS4yMzYKCSAgdG8gMS4yMzcgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTEtMDQgMDk6NDQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogTWVyZ2luZyBjaGFuZ2VzCgkgIGZyb20gcmV2aXNpb25zIDEuNDEgdG8gMS40NyB0byAxLjggYnJhbmNoLgoKMjAwMy0xMS0wNCAwOTozNiAga2luZwoKCSogTW9kdWxlcy86IEZpbmRUY2xzaC5jbWFrZSwgRmluZFdpc2guY21ha2U6IEVOSDogQWRkaW5nIHJlZ2lzdHJ5CgkgIGVudHJpZXMgdG8gc2VhcmNoIHBhdGguCgoyMDAzLTExLTA0IDA5OjA2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRyMzMTg6IE1lcmdpbmcgZml4CgkgIGZyb20gbWFpbiB0cmVlIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTA0IDA5OjAzICBraW5nCgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEJVRyMzMjA6IE1lcmdpbmcgZml4IGZyb20gbWFpbgoJICB0cmVlIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTA0IDA5OjAxICBraW5nCgoJKiBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eDogQlVHIzMxOTogTWVyZ2luZyBmaXggZnJvbSBtYWluCgkgIHRyZWUgKDEuMTUtPjEuMTYpIHRvIDEuOCBicmFuY2guCgoyMDAzLTExLTA0IDA5OjAwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzV2luMzIuYywgUmVndWxhckV4cHJlc3Npb24uY3h4OiBFUlI6CgkgIFJlbW92ZWQgZXh0cmEgdmFyaWFibGUgYXNzaWdubWVudHMuCgoyMDAzLTExLTA0IDA4OjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEJVRzogUmVtb3ZlZCBDbG9zZUhhbmRsZSBpbiBjYXNlIG9mCgkgIGVycm9yIGluIER1cGxpY2F0ZUhhbmRsZS4gIEFjY29yZGluZyB0byBkb2N1bWVudGF0aW9uLAoJICBEdXBsaWNhdGVIYW5kbGUgd2lsbCBjbG9zZSB0aGUgc291cmNlIGhhbmRsZSByZWdhcmRsZXNzIG9mIGVycm9yCgkgIGNvbmRpdGlvbi4KCjIwMDMtMTEtMDQgMDg6NTAgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eDogQlVHOiBDYW5ub3QgYWRkIGV4dHJhIGVzY2FwZXMgZm9yCgkgIGJhY2tzbGFzaGVzIGJlY2F1c2UgaXQgbWFrZXMgdGhlIGJlaGF2aW9yIGluY29uc2lzdGVudCB3aXRoCgkgIHByZXZpb3VzIHZlcnNpb25zIG9mIGNtYWtlLgoKMjAwMy0xMS0wMyAxNjo1OSAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBCVUc6IFRoaXMgZml4ZXMgcHJvYmxlbSB3aGVuCgkgIHN1Ym1pdHRpbmcgYnVncyBvbiBNYWM6IEJ1ZyAjMzIwIC0gV2hlbiBzdF9zaXplIGluIHN0YXQgaXMgNjQgYml0CgkgIGN0ZXN0IGRvZXMgbm90IHN1Ym1pdAoKMjAwMy0xMS0wMyAxNTo1NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eDogQlVHOgoJICBoYWNrIGZpeCBmb3IgcHJvYmxlbSBvZiBNUyB2cyA2IGFuZCBjdXN0b20gdGFyZ2V0IGNvbW1hbmRzCgoyMDAzLTExLTAzIDE1OjUzICBhbmR5CgoJKiBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eDogQlVHOiBGaXggQnVnICMzMTkgLSBDaGFuZ2UgaW4KCSAgUVRfV1JBUF9DUFAncyBiZWhhdmlvdXIKCjIwMDMtMTEtMDMgMTU6MzggIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogQ2xlYW51cCBwYXJzaW5nIG9mIGFyZ3VtZW50CgkgIHRvIGhlbHAgZml4IEJ1ZyAjMjU5IC0gQ01ha2UgZG9lcyBub3QgcXVvdGUgY29ycmVjdGx5IGluCgkgIERhcnRUZXN0ZmlsZS50eHQKCjIwMDMtMTEtMDMgMTU6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eDogQlVHIzI1OTogQUREX1RFU1QgY29tbWFuZCBnZW5lcmF0ZWQKCSAgaW4gRGFydFRlc3RmaWxlLnR4dCBub3cgcXVvdGVzL2VzY2FwZXMgYWxsIGFyZ3VtZW50cy4KCjIwMDMtMTEtMDMgMTE6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZvciBkZWJ1ZyBsaWJzCgkgIG5vdCB1c2luZyBvdXRwdXQgcGF0aAoKMjAwMy0xMC0zMSAxNzoyMiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUcjMzE4OgoJICBjbWFrZS5jaGVja19kZXBlbmRzIG5vdyBjb2xsZWN0cyBhbGwgZGVwZW5kZW5jaWVzIGZvcgoJICBjbWFrZS5kZXBlbmRzIGFuZCB0aGVuIHVzZXMgYSBzaW5nbGUgcnVsZS4KCjIwMDMtMTAtMzEgMTc6MDUgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHIzMxNzogTWVyZ2luZyAxLjIzLT4xLjI0CgkgIGNoYW5nZXMgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTAtMzEgMTc6MDEgIGtpbmcKCgkqIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGU6IEJVRyMzMTY6IE1lcmdlZCAxLjE1LT4xLjE2CgkgIGNoYW5nZXMgZnJvbSBtYWluIHRyZWUgdG8gMS44IGJyYW5jaC4KCjIwMDMtMTAtMzEgMTY6NTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHOiBmaXggZm9yIGJ1ZyMgMzE3CgoyMDAzLTEwLTMxIDE2OjU1ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBdHRlbXB0IHRvIGFkZCBkZWJ1ZyBsaWJyYXJ5CgkgIHBvc3RmaXggZm9yIHZpc3VhbCBzdHVkaW8gNgoKMjAwMy0xMC0zMSAxNjo1MyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL0VYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZTogRml4IGZvciBCVUc6IDMxNgoKMjAwMy0xMC0zMSAxMjo1NSAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBNZXJnZWQgYWxsIGNoYW5nZXMKCSAgZnJvbSBtYWluIHRyZWUgdXAgdG8gcmV2aXNpb24gMS4zOS4KCjIwMDMtMTAtMzEgMDk6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBSZXBvcnQgd2hlbiBoYXZpbmcgY29uZmxpY3RzCgoyMDAzLTEwLTMwIDE2OjEyICBraW5nCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHg6IEJVRyMzMTM6IEltcHJvdmluZyBlcnJvciBtZXNzYWdlIHdoZW4gbm8KCSAgQ01ha2VMaXN0cy50eHQgZmlsZSBpcyBmb3VuZCBpbiB0aGUgc291cmNlIHRyZWUuCgoyMDAzLTEwLTMwIDE0OjI3ICBraW5nCgoJKiBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHg6IEJVRzogQmFja2luZyBvdXQgcHJldmlvdXMgY2hhbmdlCgkgIHVudGlsIGEgZGVlcGVyIHByb2JsZW0gY2FuIGJlIGludmVzdGlnYXRlZC4KCjIwMDMtMTAtMzAgMTQ6MDAgIGtpbmcKCgkqIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eDogQlVHIzI1OTogRG8gbm90IGRvdWJsZSBxdW90ZQoJICBhcmd1bWVudHMgaWYgdGhleSBhcmUgYWxyZWFkeSBxdW90ZWQgd2hlbiB3cml0aW5nCgkgIERhcnRUZXN0ZmlsZS50eHQuCgoyMDAzLTEwLTMwIDEzOjQ3ICBraW5nCgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5oOiBCVUcjMTYzOiBNZXJnaW5nIDEuMTItPjEuMTMgY2hhbmdlcwoJICB0byAxLjggYnJhbmNoIGZvciAxLjguMiByZWxlYXNlLgoKMjAwMy0xMC0zMCAxMzo0NiAga2luZwoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuaDogQlVHIzE2MzogQWRkZWQgZG9jdW1lbnRhdGlvbiBvZgoJICBPVVRQVVRfVkFSSUFCTEUgYXJndW1lbnQuCgoyMDAzLTEwLTMwIDEzOjM1ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRMQVRFWC5jbWFrZTogQlVHIzI2MjogTWVyZ2luZyBmaXggZnJvbSBtYWluIHRyZWUKCSAgMS44LT4xLjkgdG8gMS44IGJyYW5jaCBmb3IgMS44LjIgcmVsZWFzZS4KCjIwMDMtMTAtMzAgMTM6MzMgIGtpbmcKCgkqIE1vZHVsZXMvRmluZExBVEVYLmNtYWtlOiBCVUcjMjYyOiBNYXJraW5nIERWSVBERl9DT05WRVJURVIgYXMKCSAgYWR2YW5jZWQuCgoyMDAzLTEwLTMwIDEzOjE4ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUcjMzExOiBNZXJnaW5nIDEuMTQxLT4xLjE0MiBjaGFuZ2VzIHRvIDEuOAoJICBicmFuY2ggZm9yIDEuOC4yIHJlbGVhc2UuCgoyMDAzLTEwLTMwIDEzOjE2ICBraW5nCgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRyMzMTA6IE1lcmdpbmcgMS42MC0+MS42MSBmcm9tIG1haW4gdHJlZSB0bwoJICAxLjggYnJhbmNoLgoKMjAwMy0xMC0zMCAxMDowNSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUc6IEZpeCBCdWcgIzMxMCAtIENUZXN0IHNlbmRzIHdyb25nIHRpbWUgdG8KCSAgY3ZzIG9uIFdpbmRvd3MKCjIwMDMtMTAtMjkgMTk6NDggIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2VtYWluLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBPaywgbm8gbW9yZSBhcmd1bWVudCBuZWVkZWQgZm9yIHNjcmlwdCBtb2RlCgoyMDAzLTEwLTI5IDA5OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IE1vcmUgc2NyaXB0aW5nIGNoYW5nZXMKCjIwMDMtMTAtMjkgMDk6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaCwgY21NYWtlZmlsZS5jeHgsIGNtYWtlbWFpbi5jeHg6IEVOSDoKCSAgU3RhcnQgaW5jbHVkZGluZyB0aGUgc2NyaXB0aW5nIHN1cHBvcnQKCjIwMDMtMTAtMjkgMDg6NTggIGFuZHkKCgkqIFNvdXJjZS86IGNtQ29tbWFuZC5oLCBjbU1lc3NhZ2VDb21tYW5kLmgsIGNtSW5jbHVkZUNvbW1hbmQuaDoKCSAgRU5IOiBTdGFydCBpbmNsdWRkaW5nIHRoZSBzY3JpcHRpbmcgc3VwcG9ydAoKMjAwMy0xMC0yOCAxNToyNiAgYW5keQoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBDb21tYW5kIHNob3VsZCBhbHNvIGJlIHF1b3RlZAoKMjAwMy0xMC0yOCAxMzoyMiAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICBCVUcjMzAzOiBNZXJnZWQgZml4IGZyb20gbWFpbiB0cmVlIHRvIDEuOCBicmFuY2ggZm9yIDEuOC4yCgkgIHJlbGVhc2UuCgoyMDAzLTEwLTI4IDEzOjE5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUcjMjAwOiBNZXJnZWQgZml4IHRvCgkgIDEuOCBicmFuY2ggZm9yIDEuOC4yIHJlbGVhc2UuCgoyMDAzLTEwLTI4IDExOjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGFkZCBwcmVwcm9jZXNzb3IKCSAgZmxhZ3MgdG8gcmVzb3VyY2UgY29tcGlsZXIKCjIwMDMtMTAtMjggMTE6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgQlVHOiBmaXggZm9yIGJ1ZyAzMDMgcGFzcyBtYWtlZmxhZ3MgdG8gc3ViIG1ha2VzCgoyMDAzLTEwLTI1IDE4OjIxICBhbmR5CgoJKiBVdGlsaXRpZXMvRG94eWdlbi9kb3h5ZmlsZS5pbjogRU5IOiBBZGQgYWxsIHN1YmRpcmVjdG9yaWVzCgoyMDAzLTEwLTE3IDE2OjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IG1ha2Ugc3VyZSAtTSBmbGFncwoJICBhcmUgbm90IGR1cGxpY2F0ZWQgYW5kIGFyZSBvbmx5IHNldCBpbiB0aGUgeG1sCgoyMDAzLTEwLTE3IDE2OjEwICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEJVRyMyNzY6IE1lcmdlIGZpeCBmb3IKCSAgc3BhY2VzIGluIHBhdGggZnJvbSBtYWluIHRyZWUuCgoyMDAzLTEwLTE3IDE2OjA5ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IEJVRzogRml4ZWQgc2FtZQoJICBzcGFjZXMtaW4tcGF0aHMgcHJvYmxlbSBmb3IgQ01ha2VUZXN0R05VLmMgYXMgaW4KCSAgQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UuCgoyMDAzLTEwLTE3IDE2OjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgdW5pY29kZQoJICBhbmQgZm9yIC9EIC1ECgoyMDAzLTEwLTE3IDA3OjQ1ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvY21XWE1haW5GcmFtZS5jeHg6IEVOSDogRml4IHByb2JsZW0gd2l0aCB3eCAyLjQKCjIwMDMtMTAtMTYgMTk6MTYgIGFuZHkKCgkqIFRlc3RzL1VzZVdYLzogQ01ha2VMaXN0cy50eHQsIFdYLmN4eDogRU5IOiBXZSBkbyBub3QgcmVhbGx5IG5lZWQKCSAgc3RyZWFtcy4gQWxzbyBmaXggdGhlIHRlc3Qgb24gd2luZG93cwoKMjAwMy0xMC0xNiAxOToxNSAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEVuYWJsZSB0ZXN0IG9uIHdpbmRvd3MKCjIwMDMtMTAtMTYgMTc6NTEgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQlVHIzc4OiBNZXJnZWQgZml4IGZyb20gbWFpbgoJICB0cmVlICgxLjIyLT4xLjIzKS4KCjIwMDMtMTAtMTYgMTM6NDIgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0aW5nCgkgIHZlcnNpb24gbnVtYmVyIGZvciAxLjguMiByZWxlYXNlLgoKMjAwMy0xMC0xNiAxMzowOSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lSmF2YUNvbXBpbGVyLmNtYWtlLCBGaW5kSk5JLmNtYWtlLAoJICBGaW5kSmF2YS5jbWFrZSwgRmluZFRDTC5jbWFrZTogQlVHIzI4MTogTWVyZ2luZyBmaXggZnJvbSBtYWluCgkgIHRyZWUuICBTZWUgYnVnIHJlcG9ydCBmb3IgcmV2aXNpb24gY2hhbmdlcy4KCjIwMDMtMTAtMTYgMTM6MDYgIGtpbmcKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHIzI3ODogTWVyZ2luZyBmaXggZnJvbSBtYWluIHRyZWUKCSAgKDEuNTktPjEuNjApIHRvIDEuOCBicmFuY2ggZm9yIDEuOC4yIHJlbGVhc2UuCgoyMDAzLTEwLTE2IDExOjA1ICBiYXJyZQoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lSmF2YUNvbXBpbGVyLmNtYWtlLCBGaW5kSk5JLmNtYWtlLAoJICBGaW5kSmF2YS5jbWFrZSwgRmluZFRDTC5jbWFrZTogRklYOiBmb3IgV2luZG93cyB1c2VycywgaXQgc2VlbXMKCSAgbG9naWNhbCB0byBmYXZvciBuYXRpdmUgd2luMzIgaW5zdGFsbGF0aW9uIGJlZm9yZSBDeWd3aW4gb25lcy4KCSAgT3RoZXJ3aXNlIHlvdSBjYW4gZW5kIHVwIHdpdGggYmFkIG1peGVzIChwYXJ0IG9mIHRoZSBqYXZhIHRvb2xzCgkgIHdlcmUgcGlja2VkIGZyb20gdGhlIFNESywgcGFydCBmcm9tIEN5Z3dpbikKCjIwMDMtMTAtMTYgMTA6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogYWxsb3cgVU5JQ09ERSB0byBiZQoJICBzcGVjaWZlZCBpbiB0aGUgY3h4IGZsYWdzIGFuZCBpZiBub3QgZGVmYXVsdCB0byBNQkNTCgoyMDAzLTEwLTE2IDEwOjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBFTkg6IGFsbG93IHVzZXJzIHRvCgkgIGNoYW5nZSB0byB1bmljb2RlCgoyMDAzLTEwLTE2IDA3OjQ5ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogSGFuZGxlIGFsbCB3aGl0ZSBzcGFjZXMsIGZpeCBwcm9ibGVtIG9uCgkgIGN5Z3dpbgoKMjAwMy0xMC0xNSAyMzo0MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3IgYnVnIDc4CgkgIHNob3VsZCBiZSBvbiAxLjggYnJhbmNoCgoyMDAzLTEwLTE1IDEwOjE5ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogQlVHIzI3NzogRml4IGZyb20gbWFpbiB0cmVlIDEuNSAtPgoJICAxLjYgbWVyZ2VkIHRvIDEuOCBicmFuY2guICBXaWxsIGJlIGluY2x1ZGVkIGluIDEuOC4yIHJlbGVhc2UuCgoyMDAzLTEwLTE1IDEwOjE0ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZTogRVJSOiBPbGQgLWZsYXRfbmFtZXNwYWNlCgkgIC11bmRlZmluZWQgc3VwcHJlc3MgZmxhZ3MgZm9yIENNQUtFX1NIQVJFRF9NT0RVTEVfQ1JFQVRFX0NfRkxBR1MKCSAgc2hvdWxkIGJlIGluY2x1ZGVkIHdoZW4gQ01BS0VfQkFDS1dBUkRTX0NPTVBBVElCSUxJVFkgaXMgMS42IG9yCgkgIGxvd2VyLgoKMjAwMy0xMC0xNSAxMDowNiAga2luZwoKCSogYm9vdHN0cmFwOiBCVUcjMTY4OiBNZXJnZWQgZml4IGZvciBIUC1VWCBhbnNpIEMgZmxhZ3MgYXMgc2Vjb25kCgkgIHBhcnQgb2YgdGhlIGZpeCBmb3IgdGhpcyBidWcgdG8gMS44IGJyYW5jaC4gIDEuMjQgLT4gMS4yNS4KCjIwMDMtMTAtMTUgMTA6MDEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEJVRyMyNjM6IE1lcmdlZCBzZWFyY2ggcGF0aAoJICBvcmRlcmluZyBmaXggZnJvbSBtYWluIHRyZWUgdG8gQ01ha2UgMS44IGJyYW5jaC4gIDEuMjIgLT4gMS4yNC4KCjIwMDMtMTAtMTUgMDk6NTYgIGtpbmcKCgkqIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogQlVHIzIwMTogTWVyZ2VkIHdhcm5pbmcKCSAgc3VwcHJlc3Npb24gc3VwcG9ydCBmcm9tIG1haW4gdHJlZSB0byAxLjggYnJhbmNoLiAgMS4xNi0+MS4xNy4KCjIwMDMtMTAtMTUgMDk6NTMgIGtpbmcKCgkqIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jbWFrZTogRG9jdW1lbnRhdGlvbiBmaXggZnJvbSBtYWluIHRyZWUuCgkgIDEuMTEtPjEuMTIuCgoyMDAzLTEwLTE1IDA5OjUyICBraW5nCgoJKiBNb2R1bGVzL0NoZWNrVmFyaWFibGVFeGlzdHMuY21ha2U6IEJVRzogTWVyZ2VkIHRyaXZpYWwgZml4IGZyb20KCSAgbWFpbiB0cmVlLiAgMS4xMCAtPiAxLjExLgoKMjAwMy0xMC0xNSAwOTo0OSAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZTogQlVHIzI2MzogTWVyZ2VkIGZpeCBmb3IKCSAgc3lzdGVtIHBhdGhzIGluIGFyIGFuZCByYW5saWIgZmluZCBjb21tYW5kcyB0byAxLjggYnJhbmNoLiAgV2lsbAoJICBiZSBpbmNsdWRlZCBpbiAxLjguMgoKMjAwMy0xMC0xNSAwOToyNiAga2luZwoKCSogU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHg6IEJVRyMxODY6IE1lcmdlZCBmaXggZnJvbSB0cnVuayB0bwoJICBicmFuY2guCgoyMDAzLTEwLTE1IDA5OjE4ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlOiBCVUcjMjc2OiBNZXJnZSBmaXggZm9yCgkgIHNwYWNlcyBpbiBwYXRoIGZyb20gbWFpbiB0cmVlLgoKMjAwMy0xMC0xNCAyMjozMCAga2luZwoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZTogQlVHOiBGaXggZm9yIHNwYWNlcyBpbgoJICBwYXRoIHdoZW4gbG9hZGluZyBDTWFrZVRlc3RHTlUuYy4KCjIwMDMtMTAtMTMgMTY6MDQgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvVXNlV1gvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1VzZVdYL1dYLmN4eDogRU5IOiBBZGQgdGVzdCBmb3IgRmluZHd4V2luZG93cy4gVGhhbmtzIHRvOgoJICBNYXRoaWV1IE1hbGF0ZXJyZQoKMjAwMy0xMC0xMyAxNToyNyAgYW5keQoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlOiBFTkg6IERvY3VtZW50YXRpb24gZml4CgoyMDAzLTEwLTEzIDExOjU4ICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRyMyNjk6IEZpeCBmb3Igc3BhY2VzIGluCgkgIHBhdGhzLiAgV2lsbCBiZSBpbmNsdWRlZCBpbiAxLjguMiByZWxlYXNlLgoKMjAwMy0xMC0xMyAxMTozMiAgYW5keQoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBFUlI6IGFsbG93IHNwYWNlcyBpbiB0aGUgcGF0aAoKMjAwMy0xMC0xMSAwODoxMiAga2luZwoKCSogTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlOiBCVUc6IE1lc3NhZ2UgZGVzY3JpYmluZwoJICB2YXJpYWJsZSB3YXMgdXNpbmcgcmVzdWx0IHZhcmlhYmxlLgoKMjAwMy0xMC0wOSAxNTo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRU5IOiBwdXQgdGhlIHN5c3RlbSBwYXRoIGFmdGVyIHRoZQoJICBwYXRocyBzcGVjaWZpZWQgb24gdG8gdGhlIEZJTkQgY29tbWFuZAoKMjAwMy0xMC0wNyAxMzo0NSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogVXBkYXRlZCBjeWd3aW4gZGVwZW5kZW5jaWVzLgoKMjAwMy0xMC0wNyAwOTo1MCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0NZR1dJTl9OVC01LjE6IEdDQyAyLjk1IGlzIG5vIGxvbmdlcgoJICBhdmFpbGFibGUgb24gY3lnd2luLgoKMjAwMy0xMC0wMiAxNDo1MCAgYW5keQoKCSogU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBFTkg6IEFkZAoJICBDTUFLRV9JR05PUkVfREVQRU5ERU5DSUVTX09SREVSSU5HIHRvIHByZXZlbnQgd2FybmluZ3MgYWJvdXQKCSAgZGVwZW5kZW5jeSBwcm9ibGVtcwoKMjAwMy0wOS0yNiAxMToyNyAga2luZwoKCSogTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2U6IEJVRzogQ29tcGFyaXNvbiBvZiBidWlsZAoJICB0b29sIHNob3VsZCBiZSBjYXNlLWluc2Vuc2l0aXZlLgoKMjAwMy0wOS0yNiAxMToxNSAga2luZwoKCSogTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2U6IEJVRzogQ29tcGFyaXNvbiBvZiBidWlsZAoJICB0b29sIHNob3VsZCBiZSBjYXNlLWluc2Vuc2l0aXZlLgoKMjAwMy0wOS0yNCAxNzo1MSAgYW5keQoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogRU5IOiBGaXggY29tbWVudAoKMjAwMy0wOS0yNCAxNzo1MSAgYW5keQoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogQmV0dGVyIHRlc3RpbmcKCjIwMDMtMDktMjQgMTc6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4OiBCVUc6IEZpeCBCdWcgIzE4NiAtIFFUX1dSQVBfVUkKCSAgdXNlcyB0aGUgcGF0aCB0d2ljZQoKMjAwMy0wOS0yNCAxMToxMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHIzE5MTogTWVyZ2luZyBmaXgKCSAgaW50byAxLjggYnJhbmNoIGZvciBpbmNsdXNpb24gaW4gMS44LjIgcmVsZWFzZS4KCjIwMDMtMDktMjQgMTE6MDMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogQ2hlY2sgZm9yIHdoZXRoZXIKCSAgdG8gdXNlIENNQUtFX0VYRV9MSU5LRVJfRkxBR1Mgc2hvdWxkIGxvb2sgYm90aCBmb3IgRVhFQ1VUQUJMRSBhbmQKCSAgV0lOMzJfRVhFQ1VUQUJMRSB0YXJnZXRzLgoKMjAwMy0wOS0yMyAxMzo1OCAga2luZwoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCVUcjMTg1OiBNZXJnZWQgZml4IGZyb20gbWFpbiB0cmVlIHRvIDEuOAoJICBicmFuY2guICBDaGFuZ2Ugd2lsbCBiZSBpbmNsdWRlZCBpbiAxLjguMiByZWxlYXNlLgoKMjAwMy0wOS0yMyAxMzo0OSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEFkZCBtaXNzaW5nIG5ld2xpbmUgQnVnICMxODUgLSBDVGVzdAoJICBleGNlcHRpb25zIG91dHB1dCBpcyBtaXNzaW5nIG5ldyBsaW5lCgoyMDAzLTA5LTE4IDExOjA1ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHJlbW92ZSAvdG1wX21udCBpbiBjb2xsYXBzZQoJICBmdWxsIHBhdGgKCjIwMDMtMDktMTUgMTU6NTggIGtpbmcKCgkqIGJvb3RzdHJhcDogQlVHOiBOZWVkIHRvIGNoZWNrIGZvciAtQWUgZmxhZyBvbiBIUC1VWCBjYyBjb21waWxlci4KCSAgTmVlZGVkIGZvciBBTlNJIEMgY29tcGlsYXRpb24uCgoyMDAzLTA5LTAyIDEzOjQ5ICBraW5nCgoJKiBib290c3RyYXA6IEJVRyMxNjg6IFVzaW5nIEMgY29tcGlsZXIgdG8gYnVpbGQgLmMgZmlsZXMgZHVyaW5nCgkgIGJvb3RzdHJhcCBpbnN0ZWFkIG9mIEMrKyBjb21waWxlci4KCjIwMDMtMDktMDIgMTM6MjcgIGtpbmcKCgkqIGJvb3RzdHJhcDogQlVHOiBNdXN0IHVzZSBDIGNvbXBpbGVyIHRvIGNvbXBpbGUgQyBmaWxlcyBkdXJpbmcKCSAgYm9vdHN0cmFwLCBub3QgQysrIGNvbXBpbGVyLgoKMjAwMy0wOC0yOSAwOTozOCAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogTWVyZ2VkIG1vcmUgZml4ZXMgZnJvbQoJICBtYWluIHRyZWUuCgoyMDAzLTA4LTI4IDE2OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBtYWtlIHN1cmUgZXhlIG91dHB1dCBwYXRoCgkgIGlzIHVzZWQgZm9yIGRlcCBoYWNrIHN0dWZmCgoyMDAzLTA4LTI4IDE2OjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBiYWQgZXZpbCBuYXN0eSBrZW4KCjIwMDMtMDgtMjggMTY6MDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBmaXggdG8gZXhlY3V0YWJsZSBkZXBlbmRzIGZvcgoJICBjdXN0b20gY29tbWFuZHMKCjIwMDMtMDgtMjggMTU6MDIgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19JUklYNjQ6IEVSUjogRG9uJ3QgbmVlZCBzZXBhcmF0ZSAtbjMyCgkgIGFuZCAtNjQgYmluYXJpZXMuCgoyMDAzLTA4LTI4IDE0OjU4ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBCVUc6IHJlbW92ZQoJICBidW5kbGVfbG9hZGVyIHN0dWZmIGl0IGRpZCBub3Qgd29yayB3aXRoIHNwYWNlcyBpbiB0aGUgcGF0aCBhbmQKCSAgaXMgbm90IG5lZWRlZCBmb3IgdGhpcyB0ZXN0CgoyMDAzLTA4LTI4IDE0OjU1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBNZXJnZWQgZml4IGZvciBidWcgd2l0aAoJICBjdXN0b20gY29tbWFuZHMgZGVwZW5kaW5nIG9uIGV4ZWN1dGFibGVzIGZyb20gbWFpbiB0cmVlLgoKMjAwMy0wOC0yOCAxNDo1MiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGJ1ZyB3aXRoIGN1c3RvbQoJICBjb21tYW5kcyBkZXBlbmRpbmcgb24gZXhlY3V0YWJsZXMKCjIwMDMtMDgtMjggMTQ6MDMgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQKCSAgZm9yIDEuOC4xIHJlbGVhc2UgbnVtYmVyLgoKMjAwMy0wOC0yNyAyMDozNSAgc3RhcnJldmVsZAoKCSogTW9kdWxlcy9QbGF0Zm9ybS9EYXJ3aW4uY21ha2UsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBFTkg6IHJlbW92ZQoJICB0aGUgLWZsYXRfbmFtZXNwYWNlIGFuZCAtdW5kZWZpbmVkIHN1cHByZXNzIGhhY2tzIGZyb20gRU5IOgoJICBDTUFLRV9TSEFSRURfTU9EVUxFX0NSRUFURV9DX0ZMQUdTIEVOSDogYW5kIGZpeCB0aGUgY29tcGxleAoJICBleGFtcGxlIHRvIHNwZWNpZnkgYSAtYnVuZGxlIGxvYWRlciBmb3IgdGhlIEVOSDogc2hhcmVkIG1vZHVsZQoJICB0aGF0IGl0IGJ1aWxkcy4KCjIwMDMtMDgtMjcgMTc6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmdzIGZyb20gdXNlCgkgIG9mIE5VTEwKCjIwMDMtMDgtMjcgMTY6NTAgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBDTWFrZVN5c3RlbUNvbmZpZy50eHQuaW4sCgkgIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy50eHQsIGJvb3RzdHJhcCwKCSAgTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLCBNb2R1bGVzL0NNYWtlVGVzdEdOVS5jLAoJICBNb2R1bGVzL0ZpbmRUaHJlYWRzLmNtYWtlLCBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL1RPRE8sIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwKCSAgU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBNZXJnaW5nIGNoYW5nZXMgZnJvbSB0cnVuayBpbnRvCgkgIDEuOCBicmFuY2guCgoJICAxLikgTWluR1cgc3VwcG9ydCAoYmV0YSkgMi4pIG1ha2UgVkVSQk9TRT0xIDMuKSBGaW5kVGhyZWFkcy5jbWFrZQoJICBmaXggNC4pIEZpbmR3eFdpbmRvd3MuY21ha2UgZml4IDUuKQoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UgdHlwbyBmaXggNi4pIGJvb3RzdHJhcAoJICBzcGFjZXMtaW4tcGF0aCBmaXgKCjIwMDMtMDgtMjcgMTY6NDIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1nY2MuY21ha2UsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEVOSDogTWluR1cKCSAgYnVpbGQgbm93IHBhc3NlcyBhbGwgdGhlIHRlc3RzCgoyMDAzLTA4LTI3IDE2OjA4ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNtYWtlX3JlbGVhc2Uuc2gsIGNvbmZpZ19BSVgsIGNvbmZpZ19EYXJ3aW4sCgkgIGNvbmZpZ19IUC1VWCwgY29uZmlnX0lSSVg2NCwgY29uZmlnX0xpbnV4LCBjb25maWdfT1NGMSwKCSAgY29uZmlnX1N1bk9TLCBjeWd3aW4tcGFja2FnZS5zaC5pbjogTWVyZ2luZyByZWxlYXNlIHNjcmlwdAoJICBjaGFuZ2VzIGZyb20gMS44IGJyYW5jaCB0byBtYWluIHRyZWUuCgoyMDAzLTA4LTI3IDE2OjAyICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLCBDTWFrZVRlc3RDWFhDb21waWxlci5jbWFrZToKCSAgRVJSOiBGaXhlZCB0eXBvIGluIGNvbW1lbnQuCgoyMDAzLTA4LTI3IDA4OjI5ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFUlI6IEZpeGVkIHBsYWNlbWVudCBvZiBjb2RlIGludHJvZHVjZWQgYnkgYQoJICBwYXRjaCBmcm9tIG1haW4gdHJlZS4gIFNvbWVob3cgaXQgZW5kZWQgdXAgb24gdGhlIHdyb25nIGxpbmVzLgoKMjAwMy0wOC0yNiAxNzoxMyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yCgkgICJtYWtlIFZFUkJPU0U9MSIgdG8gcnVuIG9uZS10aW1lIHZlcmJvc2UgbWFrZSBydW5zIHdpdGhvdXQKCSAgY2hhbmdpbmcgQ01BS0VfVkVSQk9TRV9NQUtFRklMRS4KCjIwMDMtMDgtMjYgMTU6MDggIGtpbmcKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2VtYWluLmN4eCwgY21ha2V3aXphcmQuY3h4LAoJICBjbWFrZXdpemFyZC5oOiBCVUcjMTY0OiBGaXhlZCBjcmFzaCBvZiBjbWFrZSAtaSB3aGVuIENNQUtFX1JPT1QKCSAgY2Fubm90IGJlIGZvdW5kLiAgTWFkZSByZXN1bHRpbmcgZXJyb3IgbWVzc2FnZSBjbGVhbmVyLgoKMjAwMy0wOC0yNiAxNTowNiAga2luZwoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZW1haW4uY3h4LCBjbWFrZXdpemFyZC5jeHgsCgkgIGNtYWtld2l6YXJkLmg6IEJVRzogRml4ZWQgY3Jhc2ggb2YgY21ha2UgLWkgd2hlbiBDTUFLRV9ST09UCgkgIGNhbm5vdCBiZSBmb3VuZC4gIE1hZGUgcmVzdWx0aW5nIGVycm9yIG1lc3NhZ2UgY2xlYW5lci4KCjIwMDMtMDgtMjIgMTI6NTMgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDoKCSAgRU5IOiBNb3ZlZCBkZWNpc2lvbiB0byBidWlsZCBNRkNEaWFsb2cgdXAgdG8gdG9wIGxldmVsLiAgSXQgaXMKCSAgdXNlZCBpbiBib3RoIHRoZSBTb3VyY2UgYW5kIFV0aWxpdGllcyBkaXJlY3Rvcmllcy4KCjIwMDMtMDgtMjIgMTE6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgaWZkZWYgY29kZQoJICBhbmQgdXNlIG1ha2VmaWxlIGRlZmluaXRpb25zCgoyMDAzLTA4LTIyIDExOjU2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtZ2NjLmNtYWtlOiBFTkg6IGFkZCBjb25maWd1cmUgZmlsZSBmb3IKCSAgZ2NjIHVuZGVyIHdpbmRvd3MKCjIwMDMtMDgtMjIgMDk6NTIgIGFuZHkKCgkqIGJvb3RzdHJhcCwgTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZTogRVJSOiBSZW9yZ2FuaXplIHRvIHRyeSB0bwoJICBmaXggdGhlIC1wdGhyZWFkIHByb2JsZW0gb24gc29tZSBzeXN0ZW1zCgoyMDAzLTA4LTIxIDE2OjIyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2UsIE1vZHVsZXMvQ01ha2VUZXN0R05VLmMsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsCgkgIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogYWRkIHRoZSB1bml4IG1ha2VmaWxlCgkgIGdlbmVyYXRvciBhcyBhbiBvcHRpb24gZnJvbSB0aGUgd2luZG93cyBHVUksIHRoaXMgYnVpbGRzIHdpdGgKCSAgbWluZ3csIGN5Z3dpbiwgYW5kIGNvbWJpbmF0aW9ucyBvZiBtYWtlIGNsLCBiY2MzMgoKMjAwMy0wOC0yMSAxMzoyNiAgYW5keQoKCSogTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlOiBFUlI6IElmIFdYX0NPTkZJR19MSUJTIGFyZSAsIHRoZW4KCSAgeW91IGdldCB3ZWlyZCBjbWFrZSBlcnJvci4gVGhpcyBzaG91bGQgZml4IGl0CgoyMDAzLTA4LTIxIDA5OjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvVE9ETzogW25vIGxvZyBtZXNzYWdlXQoKMjAwMy0wOC0yMCAxMjo1OSAga2luZwoKCSogU291cmNlLzogY21ha2VtYWluLmN4eCwgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcDogRU5IOiBBZGRlZCBkb2N1bWVudGF0aW9uIG9mIHNwZWNpZnlpbmcKCSAgYW4gZXhpc3RpbmcgYnVpbGQgdHJlZSBhcyBhbiBhcmd1bWVudC4KCjIwMDMtMDgtMTkgMTE6MDIgIGFuZHkKCgkqIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEVSUjogRml4IGNyYXNoIG9mIGNtYWtlIG9uCgkgIGJyb2tlbiBsb2FkIGNvbW1hbmRzCgoyMDAzLTA4LTE5IDEwOjUwICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogSVJJWDY0LmNtYWtlOiBFTkg6IEltcHJvdmVkIGRlZmF1bHQgY2hvaWNlIG9mCgkgIC02NCBjb21waWxlci9saW5rZXIgZmxhZ3MgYmFzZWQgb24gaG93IGNtYWtlIHdhcyBidWlsdC4KCjIwMDMtMDgtMTkgMTA6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEJVRzogTGFzdEVycm9yIGNhbiByZXR1cm4gMCwgc28KCSAgaGFuZGxlIHRoYXQgY2FzZQoKMjAwMy0wOC0xOSAwOTo0MSAga2luZwoKCSogYm9vdHN0cmFwOiBCVUc6IE1lcmdlZCBjbWFrZV9tYWtlX3Byb2Nlc3NvciBlcnJvciBtZXNzYWdlIHRvIDEuOAoJICBicmFuY2guCgoyMDAzLTA4LTE5IDA5OjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBCVUc6IE1lcmdlZCBmaXhlcyBmb3IgYnVncyAxNDYsCgkgIDE1MiwgYW5kIDE1MyB0byAxLjggYnJhbmNoLgoKMjAwMy0wOC0xOSAwOTozOSAga2luZwoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQlVHIzE1NDogTWVyZ2VkIGZpeCB0byAxLjggYnJhbmNoLgoKMjAwMy0wOC0xOSAwOTozOSAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRVJSOiBGaXhlZCB3YXJuaW5ncy4KCjIwMDMtMDgtMTkgMDk6MzMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVSUjogTWVyZ2VkIHdhcm5pbmcgZml4IGZyb20gbWFpbgoJICB0cmVlIHRvIENNYWtlIDEuOCBicmFuY2guCgoyMDAzLTA4LTE5IDA5OjMyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogUHJvY2Vzc1VOSVguYwoKMjAwMy0wOC0xOSAwOTozMiAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IE1lcmdlZCBlcnJvciBtZXNzYWdlIGZpeCB0bwoJICBDTWFrZSAxLjggYnJhbmNoLgoKMjAwMy0wOC0xOSAwOToyNyAga2luZwoKCSogTW9kdWxlcy9GaW5kTEFURVguY21ha2U6IEJVRyMxNTY6IEZpeGVkIHR5cG8gcHNkMnBkZiAtPiBwczJwZGYuCgkgIFdpbGwgYmUgaW5jbHVkZWQgaW4gMS44LjEgcmVsZWFzZS4KCjIwMDMtMDgtMTkgMDk6MTIgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY29uZmlnX0lSSVg2NDogQWRkZWQKCSAgTERGTEFHUyBzdXBwb3J0LgoKMjAwMy0wOC0xOSAwOTowNiAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0lSSVg2NDogRU5IOiBBZGRlZCBjb25maWd1cmF0aW9uIG9mIGJvdGgKCSAgLTY0IGFuZCAtbjMyIGJ1aWxkcy4KCjIwMDMtMDgtMTkgMDk6MDUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IKCSAgY29uZmlndXJhdGlvbiBvZiBpbnN0YWxsIHRyZWUuCgoyMDAzLTA4LTE5IDA4OjUzICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRMQVRFWC5jbWFrZTogQlVHOiBGaXggQnVnICMxNTYgLSBwczJwZGYgaXMgbm90IGZvdW5kCgkgIG9uIGxpbnV4CgoyMDAzLTA4LTE4IDE0OjMxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBCVUc6IFJlcG9ydCBmYWlsZWQgYXMgZmFpbGVkLi4uCgoyMDAzLTA4LTE4IDE0OjA2ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IFJlbW92ZSB1bnVzZWQgdmFyaWFibGUKCjIwMDMtMDgtMTggMTQ6MDUgIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEJVRzogRml4ZWQgQnVnICMxNTQgLSBVbmluaXRpYWxpemVkCgkgIHR5cGUgaW5pdGlhbGl6ZWQgdmFsdWUgY2FjaGUgdmFyaWFibGVzIHNob3VsZCByZXR1cm4gdmFsdWUKCjIwMDMtMDgtMTggMTE6MzAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEJVRzogRml4IEJ1ZyAjMTUzIC0gQ1Rlc3QgZG9lcwoJICBub3QgZGV0ZWN0IHRlc3RzIHRoYXQgYXJlIG5vdCBmb3VuZCBhbmQgQnVnICMxNTMgLSBDVGVzdCBkb2VzIG5vdAoJICBkZXRlY3QgdGVzdHMgdGhhdCBhcmUgbm90IGZvdW5kCgoyMDAzLTA4LTE3IDEyOjI0ICBob2ZmbWFuCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5nIGFuZCB1bm5lZWRlZAoJICBjYXN0CgoyMDAzLTA4LTE1IDA4OjQxICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEJVRzogRml4IHRlc3QgcmVwb3J0aW5nCgoyMDAzLTA4LTE0IDEzOjM0ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEVOSDogRml4IHZlcmJvc2Ugb3V0cHV0LCBmaXggZXJyb3IgbWVzc2FnZSwKCSAgYW5kIGZpeCB0aGUgZXhpdCBjb2RlIGNoZWNrCgoyMDAzLTA4LTE0IDA5OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IHJlbW92ZSBhIHdhcm5pbmcKCjIwMDMtMDgtMTMgMTg6MTcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogQmV0dGVyIGVycm9yIHJlcG9ydGluZwoKMjAwMy0wOC0xMyAxODowOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IE1hZGUgZXJyb3IgbWVzc2FnZSBjb25zaXN0ZW50CgkgIGJldHdlZW4gd2luOXggYW5kIG5vbi13aW45eCB2ZXJzaW9uIG9mIGVycm9yIHJlcG9ydGluZy4KCjIwMDMtMDgtMTMgMTQ6MjEgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFTkg6IFRyZWF0aW5nIFNJR0JVUyBhcyBhIGZhdWx0IGJ5CgkgIGRlZmF1bHQuCgoyMDAzLTA4LTEyIDE3OjI0ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogRG8gbm90IGhpZGUgY29uc29sZSB3aGVuIHJ1biBmcm9tCgkgIGN0ZXN0LgoKMjAwMy0wOC0xMiAxNzoxOCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEZpeCBoaWRkZW4gY29uc29sZSBmb3IgY3Rlc3QKCjIwMDMtMDgtMTIgMTc6MTcgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IFJlZG9pbmcgMS44LjAuCgoyMDAzLTA4LTEyIDE2OjM3ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBEaXNhYmxlIHVzZSBvZiBsaWJkbCBieSBjdXJsLgoKMjAwMy0wOC0xMiAxNjozNSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjb25maWdfQUlYLCBjb25maWdfRGFyd2luLCBjb25maWdfSFAtVVgsCgkgIGNvbmZpZ19JUklYNjQsIGNvbmZpZ19MaW51eCwgY29uZmlnX09TRjEsIGNvbmZpZ19TdW5PUzogRU5IOgoJICBVc2luZyB3cml0ZV9zdGFuZGFyZF9jYWNoZSB0byBzaG9ydGVuIGNvbmZpZyBmaWxlcy4KCjIwMDMtMDgtMTIgMTY6MzUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogVW5peCBidWlsZHMgc2hvdWxkIG5vdAoJICB1c2UgcmVlbnRyYW50IHZlcnNpb25zIG9mIG5ldHdvcmsgY2FsbHMuCgoyMDAzLTA4LTExIDE4OjI0ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfRGFyd2luOiBFTkg6IFVwZGF0ZWQgZm9yIG5ldyB3eCB2ZXJzaW9uLgoKMjAwMy0wOC0xMSAxODoyMSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogQlVHOiBDTWFrZS5hcHAgZGlyZWN0b3J5IGlzCgkgIG5vdyBpbiBiaW4sIG5vdCBTb3VyY2UuCgoyMDAzLTA4LTExIDE4OjE0ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jeWd3aW4tcGFja2FnZS5zaC5pbjogQlVHOiBUZXN0cyBhcmUgcnVuIGJ5CgkgIGJpbi9jdGVzdCBpbnN0ZWFkIG9mIFNvdXJjZS9jdGVzdC4KCjIwMDMtMDgtMTEgMTc6NTggIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY29uZmlnX0lSSVg2NCwKCSAgY29uZmlnX0xpbnV4OiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yIHBhcmFsbGVsIGJ1aWxkIGR1cmluZwoJICByZWxlYXNlLgoKMjAwMy0wOC0xMSAxNzo1MyAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEFkZCBlcnJvciBtZXNzYWdlIGZvciBtYWtlIG1pc3NpbmcKCjIwMDMtMDgtMTEgMTc6NDEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEJVRzogVGVzdCBmb3IgYnVpbGQgbmVlZHMgdG8KCSAgbG9vayBmb3IgYmluL2NjbWFrZSwgbm90IFNvdXJjZS9jY21ha2UuCgoyMDAzLTA4LTExIDE3OjM1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNtYWtlX3JlbGVhc2Uuc2gsIGNvbmZpZ19EYXJ3aW4sCgkgIGNvbmZpZ19IUC1VWCwgY29uZmlnX0lSSVg2NCwgY29uZmlnX1N1bk9TOiBNZXJnZSBmcm9tIDEuOCBicmFuY2guCgoyMDAzLTA4LTExIDE3OjM1ICBraW5nCgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byBjaGVjayBib3RoCgkgIENNQUtFX1dYV0lORE9XU19XWENPTkZJR19FWEVDVVRBQkxFIGFuZCBDTUFLRV9XWF9DT05GSUcuCgoyMDAzLTA4LTExIDE3OjM0ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEJVRzogQm9vdHN0cmFwcGluZyB3aXRoIHd4V2luZG93cyBzdXBwb3J0CgkgIG5lZWRzIFNFUEFSQVRFX0FSR1VNRU5UUyBjb21tYW5kLgoKMjAwMy0wOC0xMSAxNzozNCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBJbnN0YWxsaW5nIHJlYWRtZS50eHQgaW4gTW9kdWxlcwoJICBkaXJlY3RvcnkgdG8gYmUgY29uc2lzdGVudCB3aXRoIHdpbmRvd3MuCgoyMDAzLTA4LTExIDE3OjEwICBraW5nCgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byB1c2UKCSAgQ01BS0VfV1hXSU5ET1dTX1dYQ09ORklHX0VYRUNVVEFCTEUgaW4gcGxhY2Ugb2YgQ01BS0VfV1hfQ09ORklHCgkgIGlmIGl0IGlzIHNldC4KCjIwMDMtMDgtMTEgMTY6NTUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW46IEZpeGVkIHd4IGxvY2F0aW9uLgoKMjAwMy0wOC0xMSAxNjo0MyAga2luZwoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBCVUc6IEJvb3RzdHJhcHBpbmcgd2l0aCB3eFdpbmRvd3Mgc3VwcG9ydAoJICByZXF1aXJlcyBTRVBBUkFURV9BUkdVTUVOVFMgY29tbWFuZCBpbiBib290c3RyYXBwZWQgZXhlY3V0YWJsZS4KCjIwMDMtMDgtMTEgMTY6MzEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19IUC1VWDogRU5IOiBDbGVhbmVkIHVwIGxpbmsgb2YgZGxkLgoKMjAwMy0wOC0xMSAxNjozMSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX1N1bk9TOiBFTkg6IFN3aXRjaGluZyB0byBzeXN0ZW0KCSAgY29tcGlsZXIuCgoyMDAzLTA4LTExIDE1OjI3ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBVc2luZyBib290c3RyYXAgaW5zdGVhZCBvZgoJICBjb25maWd1cmUuCgoyMDAzLTA4LTExIDE1OjIyICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IEFsbG93IGNvbmZpZyBmaWxlcyB0bwoJICBzcGVjaWZ5IGEgbWFrZS4KCjIwMDMtMDgtMTEgMTU6MjEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19JUklYNjQ6IEVOSDogRW5hYmxpbmcgcGFyYWxsZWwgYnVpbGQuCgoyMDAzLTA4LTExIDE1OjE2ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBCVUc6IExvY2F0aW9uIG9mIGN0ZXN0IGhhcwoJICBjaGFuZ2VkIHRvIGJpbiwgbm90IFNvdXJjZS4KCjIwMDMtMDgtMTEgMTU6MTUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW46IFVwZGF0ZWQgZm9yIG5ldyBGaW5kd3hXaW5kb3dzLgoKMjAwMy0wOC0xMSAxNTowNyAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogVXBkYXRlIGZyb20gMS44IGJyYW5jaC4KCjIwMDMtMDgtMTEgMTU6MDYgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19EYXJ3aW46IFVwZGF0ZWQgZm9yIG5ldyBsb2NhdGlvbiBvZgoJICB3eFdpbmRvd3MuCgoyMDAzLTA4LTExIDE1OjAyICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfRGFyd2luOiBVcGRhdGVkIGZvciBuZXcgbG9jYXRpb24gb2YKCSAgd3hXaW5kb3dzLgoKMjAwMy0wOC0xMSAxNTowMSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBVcGRhdGVkIGZvciBuZXcgRlRQCgkgIGRpcmVjdG9yeSBzdHJ1Y3R1cmUuCgoyMDAzLTA4LTExIDE0OjU2ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEluc3RhbGxpbmcgcmVhZG1lLnR4dCBpbiBtb2R1bGVzIHRvCgkgIGJlIGNvbnNpc3RlbnQgd2l0aCB3aW5kb3dzLgoKMjAwMy0wOC0xMSAxNDo0NCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHg6IGFkZGVkIGJldGEgcmVsZWFzZSBzdXBwb3J0CgoyMDAzLTA4LTExIDE0OjQxICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1BsdWdpbkFQSS5oOiB2ZXJzaW9uIDE5CgoyMDAzLTA4LTExIDE0OjM3ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ1BsdWdpbkFQSS5oLAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBhZGRlZCB2ZXJzaW9uCgoyMDAzLTA4LTExIDEyOjIwICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IEFkZCBkb2N1bWVudGF0aW9uIGZvciAtRCBhbmQgYWRkIG1pc3NpbmcKCSAgdGFyZ2V0cwoKMjAwMy0wOC0xMSAxMjoxOCAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIENUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBFTkg6IENsZWFudXAgdGhlCgkgIG91dHB1dAoKMjAwMy0wOC0xMSAxMjoxNyAgYW5keQoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBFTkg6IFRha2UgUHVyaWZ5IG91dCBiZWNhdXNlIGl0IGlzIG5vdAoJICBpbXBsZW1lbnRlZCB5ZXQKCjIwMDMtMDgtMTEgMDk6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBSZW1vdmUgZGVidWcKCjIwMDMtMDgtMTAgMTg6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuaCwgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwKCSAgY21BZGRMaWJyYXJ5Q29tbWFuZC5oLCBjbUFkZFRlc3RDb21tYW5kLmgsCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oLCBjbUJ1aWxkQ29tbWFuZC5oLAoJICBjbUJ1aWxkTmFtZUNvbW1hbmQuaCwgY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsCgkgIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaCwgY21DVGVzdC5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgY21Db21tYW5kLmgsIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwgY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLAoJICBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmgsIGNtRW5kRm9yRWFjaENvbW1hbmQuaCwKCSAgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmgsCgkgIGNtRkxUS1dyYXBVSUNvbW1hbmQuaCwgY21GaWxlQ29tbWFuZC5oLCBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsCgkgIGNtRmluZEZpbGVDb21tYW5kLmgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFBhY2thZ2VDb21tYW5kLmgsIGNtRmluZFBhdGhDb21tYW5kLmgsCgkgIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwKCSAgY21Gb3JFYWNoQ29tbWFuZC5oLCBjbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmgsCgkgIGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5oLCBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBjbUdsb2IuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmgsIGNtSWZDb21tYW5kLmgsCgkgIGNtSW5jbHVkZUNvbW1hbmQuaCwgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwKCSAgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21Mb2FkQ29tbWFuZENvbW1hbmQuaCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTWFjcm9Db21tYW5kLmgsIGNtTWFrZURpcmVjdG9yeUNvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuaCwgY21NZXNzYWdlQ29tbWFuZC5oLAoJICBjbU9wdGlvbkNvbW1hbmQuaCwgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oLAoJICBjbVByb2plY3RDb21tYW5kLmgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5oLAoJICBjbVJlbW92ZUNvbW1hbmQuaCwgY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuaCwgY21TZXRDb21tYW5kLmgsCgkgIGNtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZS5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5oLAoJICBjbVNvdXJjZUZpbGVzUmVtb3ZlQ29tbWFuZC5oLCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5oLAoJICBjbVN0cmluZ0NvbW1hbmQuaCwgY21TdWJkaXJDb21tYW5kLmgsIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtVGFyZ2V0LmgsIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21UcnlDb21waWxlQ29tbWFuZC5oLCBjbVRyeVJ1bkNvbW1hbmQuaCwKCSAgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuaCwgY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwgY21WVEtXcmFwVGNsQ29tbWFuZC5oLAoJICBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5oLCBjbVdyaXRlRmlsZUNvbW1hbmQuaCwgY21ha2UuY3h4LAoJICBjbWFrZS5oLCBjbWFrZXdpemFyZC5jeHgsIGNtYWtld2l6YXJkLmg6IHJlbW92ZWQgcmVkdW5kZW50CgkgIGluY2x1ZGVzCgoyMDAzLTA4LTEwIDE2OjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VEZXBlbmQuY3h4LCBjbU1ha2VEZXBlbmQuaCwgY21Tb3VyY2VGaWxlLmN4eDoKCSAgcmVtb3ZlZCBkdXBsaWNhdGUgaW5jbHVkZXMKCjIwMDMtMDgtMTAgMTY6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogcmVtb3ZlZCBkdXBsaWNhdGUgaW5jbHVkZQoKMjAwMy0wOC0wOSAxOTozNyAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFUlI6IFJlbmFtZSBzb21lIHZhcmlhYmxlcyB0byByZW1vdmUgc2hhZG93CgkgIHdhcm5pbmcKCjIwMDMtMDgtMDggMTg6MjggIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEVOSDogQWRkIHJlZ3Jlc3Npb24gaW1hZ2VzCgkgIHN1cHBvcnQKCjIwMDMtMDgtMDggMTc6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBCZXR0ZXIgb3V0cHV0IGFuZCB1c2UgUnVuTWFrZUNvbW1hbmQgZm9yCgkgIGNvbmZpZ3VyZQoKMjAwMy0wOC0wOCAxMTo1OSAgYW5keQoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLCBDTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwKCSAgQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLCBDTWFrZVRlc3RDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VWUzZGaW5kTWFrZS5jbWFrZSwgQ01ha2VWUzcxRmluZE1ha2UuY21ha2UsCgkgIENNYWtlVlM3RmluZE1ha2UuY21ha2UsIENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGVzLmNtYWtlLCBDaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIENoZWNrVHlwZVNpemUuY21ha2UsIENoZWNrVmFyaWFibGVFeGlzdHMuY21ha2UsCgkgIEZpbmRIVE1MSGVscC5jbWFrZSwgRmluZE1GQy5jbWFrZSwgVGVzdEJpZ0VuZGlhbi5jbWFrZSwKCSAgVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlLCBUZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLAoJICBUZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOiBFTkg6IENsZWFudXBzIGFuZCBhZGQgbWlzc2luZwoJICBDTWFrZU91dHB1dC5sb2cgYW5kIENNYWtlRXJyb3IubG9nIGFwcGVuZGluZy4gQ2xvc2UgQnVnICMxMzYgLQoJICBWZXJpZnkgdGhhdCBhbGwgbW9kdWxlcyB0aGF0IGRvIHRyeSBjb21waWxlIHByb2R1Y2UKCSAgQ01ha2VFcnJvci5sb2cgYW5kIENNYWtlT3V0cHV0LmxvZwoKMjAwMy0wOC0wOCAxMToxOSAgbWFydGluawoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBhZGRlZCBzdGRpbwoKMjAwMy0wOC0wOCAxMDo0MCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogZmlkIHBvc3QgYnVpbGQgaXVlIG9uCgkgIHZzNiB1dGlsaXR5IHRhcmdldHMKCjIwMDMtMDgtMDggMTA6MjAgIGFuZHkKCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0R1bXBJbmZvcm1hdGlvbi5jeHg6IEVITjogQWxzbyBkaXNwbGF5CgkgIENvbmZpZ3VyZS5oIGFuZCBDb25maWd1cmUuaHh4IGZyb20gY21zeXMKCjIwMDMtMDgtMDggMTA6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBXaGVuIGZpeGluZyBjYWNoZSB2YWx1ZSB3aXRoCgkgIHVuaW5pdGlhbGl6ZWQgdHlwZSwgY29sbGFwc2UgZnVsbCBwYXRocyBmb3IgUEFUSCBhbmQgRklMRVBBVEguCgkgIENsb3NlcyBCdWcgIzgyIC0gU3BlY2lmeWluZyByZWxhdGl2ZSBwYXRoIHdoZW4gZW50ZXJpbmcgcGF0aCBjYW4KCSAgYnJlYWsgdGhpbmdzCgoyMDAzLTA4LTA4IDA5OjI2ICBhbmR5CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogSGFuZGxlIHVudHlwZWQgYnV0IGluaXRpYWxpemVkIHZhbHVlcwoJICBmb3IgYm9vbGVhbiBBZGRDYWNoZURlZmluaXRpb24uIENsb3NlcyBCdWcgIzExOCAtIFNwZWNpZnlpbmcKCSAgY2FjaGUgZW50cmllcyB3aXRoIC1EIHNob3VsZCBub3QgbmVlZCB0aGUgdHlwZQoKMjAwMy0wOC0wOCAwOToyMiAgYW5keQoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oOiBFTkg6IEdldCBhY2Nlc3NvcgoJICBmb3IgY2FjaGUgdmFsdWUgYXMgYm9vbGVhbgoKMjAwMy0wOC0wOCAwOToxNyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiByZW1vdmUgc2hhZG93ZWQgdmFyaWFibGUKCjIwMDMtMDgtMDggMDk6MTQgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHg6IEVSUjogRml4ZWQgdXNlIG9mICE9IG9wZXJhdG9yCgkgIGZvciBzdGQ6OnN0cmluZyBvbiBvbGQgYnJva2VuIGNvbXBpbGVycy4KCjIwMDMtMDgtMDggMDg6NDggIGFuZHkKCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBFTkg6IEFkZCBoZWxwIGZvciBjbWFrZSAtRQoKMjAwMy0wOC0wOCAwODo0OCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IEZsdXNoIHRoZSBvdXRwdXQgZmlsZSwgdG8gbWFrZSBtb3JlIG5pY2UKCSAgb3V0cHV0IGZvciB0YWlsIC1mCgoyMDAzLTA4LTA3IDE5OjIzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBFTkg6IEFkZCBkaXNwbGF5aW5nIG9mIGRvdHMgd2hlbgoJICBidWlsZGluZyBwcm9qZWN0LiBBbHNvLCBmaWxlIGlzIG5vdyB3cml0dGVuIGFzIHRoZSBvdXRwdXQgaXMKCSAgcHJvZHVjZWQsIHNvLCB0YWlsIC1mIHdvcmtzLCBiYWJ5Li4uCgoyMDAzLTA4LTA3IDE5OjAwICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFic3RyYWN0CgkgIHBhcnNpbmcgb2YgYXJndW1lbnRzIHNvIHRoYXQgSSBjYW4gdXNlIGl0IGluIG90aGVyIHBsYWNlcwoKMjAwMy0wOC0wNyAxODo0NCAgYW5keQoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IEVOSDogTW9yZSB2ZXJib3NlCgoyMDAzLTA4LTA3IDE3OjQzICBraW5nCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IENsYXJpZmljYXRpb24gb2YgaGVscCBkdW1wZWQgd2hlbiBubwoJICBhcmd1bWVudHMgYXJlIGdpdmVuIGFuZCBubyB0ZXN0IGZpbGUgaXMgZm91bmQuCgoyMDAzLTA4LTA3IDE2OjU0ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCB0aGUgdGVzdAoKMjAwMy0wOC0wNyAxNjo1MCAga2luZwoKCSogU291cmNlL2NtRmluZFBhY2thZ2VDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBjb21wYXRhYmlsaXR5IGZvcgoJICBjYXBpdGFsaXphdGlvbiBvZiBfRElSIGFuZCBfRk9VTkQgdmFyaWFibGVzIGluIGNtYWtlIDEuNi4KCjIwMDMtMDgtMDcgMTY6MzIgIGFuZHkKCgkqIE1vZHVsZXMvRmluZExBVEVYLmNtYWtlOiBFTkg6IEFkZCBQREZMYVRlWCBhbmQgTGFUZVgySFRNTC4gQ2xvc2VzCgkgIEJ1ZyAjMTMyIC0gQWRkIHBkZmxhdGV4IGFuZCBodG1sMmxhdGV4IHRvIEZpbmRMQVRFWC5jbWFrZQoKMjAwMy0wOC0wNyAxNjoyNiAgYW5keQoKCSogU291cmNlLzogY21WYXJpYWJsZVdhdGNoLmN4eCwgY21WYXJpYWJsZVdhdGNoLmg6IEVOSDogQWRkIHJlbW92ZQoJICB3YXRjaAoKMjAwMy0wOC0wNyAxNjoyNSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBGaXggZGVwZW5kZW5jaWVzIGZvcgoJICBjdXJzZXMgZGlhbG9nCgoyMDAzLTA4LTA3IDE2OjExICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeGVkIHR5cG8gaW4gZXJyb3IgbWVzc2FnZS4KCjIwMDMtMDgtMDcgMTY6MDkgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgU291cmNlL0NUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlcG9ydCBhbiBlcnJvciB3aGVuCgkgIEFERF9MSUJSQVJZIGFuZCBUQVJHRVRfTElOS19MSUJSQVJJRVMgYXJlIGluIHRoZSB3cm9uZyBvcmRlciBhbmQKCSAgZml4IENNYWtlTGlzdHMgZmlsZXMgdG8gYWN0dWFsbHkgd29yawoKMjAwMy0wOC0wNyAxNjowNCAgaG9mZm1hbgoKCSogVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eDogRU5IOiBpbXByb3ZlCgkgIGNvdmVyYWdlCgoyMDAzLTA4LTA3IDE1OjM5ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVOSDogQ2FzdCBpbnRvIGFwcm9wcmlhdGUgdHlwZSB0bwoJICByZW1vdmUgd2FybmluZwoKMjAwMy0wOC0wNyAxNDozNyAgYW5keQoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogRU5IOiBVc2UgdGhlIG5ldyBzaWduYXR1cmUKCjIwMDMtMDgtMDcgMTQ6MzcgIGFuZHkKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBFTkg6IE1vcmUgdmVyYm9zZSB0ZXN0CgoyMDAzLTA4LTA3IDE0OjEwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEJVRzogZml4IGZvciBtYWluIGluIGEgbGlicmFyeQoJICBvbiB3aW5kb3dzIHdpdGggbm1ha2UKCjIwMDMtMDgtMDcgMTE6NTMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogQWRkZWQgY29udmVuaWVuY2UKCSAgc2lnbmF0dXJlIHRvIE91dHB1dE1ha2VSdWxlLgoKMjAwMy0wOC0wNyAxMTo0MiAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IE1ha2VmaWxlcyBub3cgaGF2ZQoJICBydWxlcyB0byBkbyBhIGdsb2JhbCBnZW5lcmF0ZSBpZiB0aGUgQ01ha2UgbGlzdGZpbGVzIGhhdmUKCSAgY2hhbmdlZC4gIE5lY2Vzc2FyeSBmb3Igd2hlbiB0cnktY29tcGlsZXMgYXJlIGFkZGVkIHRvIGEKCSAgbGlzdGZpbGUuCgoyMDAzLTA4LTA3IDA5OjE5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRNUEkuY21ha2UsIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6CgkgIEJVRzogZml4IGZvciBidWdzIDEyNSAtIDEyOCwgYW5kIGEgZml4IGZvciB0aGUgYnVnIGludHJvZHVjZWQgYnkKCSAgdGhlIGJ1ZyBmaXggZm9yIGJ1dCA5Mi4gICYgd2FzIGJlaW5nIHJlcGxhY2VkIHdpdGggJmFtcCwgYnV0CgkgIGFmdGVyIGRvdWJsZSBxdW90ZSB3YXMgcmVwbGFjZWQgd2l0aCAmcXVvdCBjYXVzaW5nIGl0IHRvIGJlCgkgICZhbXA7cXVvdC4gIEFsc28gYWRkIG1vcmUgc2VhcmNoIHBhdGhzIGZvciBtcGkKCjIwMDMtMDgtMDYgMTk6MTkgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBvb3BzLCBpbml0aWFsaXplIHZhcmlhYmxlCgoyMDAzLTA4LTA2IDE4OjU0ICBhbmR5CgoJKiBTb3VyY2UvY21HZXRDTWFrZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmgsIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0R1bXBJbmZvcm1hdGlvbi5jeHg6IEVOSDogQWRkIG9wdGlvbiB0bwoJICByZXRyaWV2ZSBsaXN0IG9mIG1hY3Jvcy4gQ2xvc2UgQnVnICMyNSAtIEdldF9DTUFLRV9QUk9QRVJUSUVTCgoyMDAzLTA4LTA2IDE4OjQzICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogQlVHOiBEb24ndCB1c2UgLVYgYXMgYSB2ZXJzaW9uCgkgIG9wdGlvbi4gIEl0IGNvbmZsaWN0cyB3aXRoIGN0ZXN0LgoKMjAwMy0wOC0wNiAxODo0MSAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBSZW1vdmVkIG9sZCBhcmd1bWVudCBwcm9jZXNzaW5nIGNvZGUgdGhhdAoJICBuZXZlciBkb2VzIGFueXRoaW5nLgoKMjAwMy0wOC0wNiAxODozOSAga2luZwoKCSogU291cmNlLzogY21ha2V3aXphcmQuY3h4LCBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6CgkgIEJVRyMxMjk6IEZpeGVkIGxvYWQvc2F2ZSBvZiBDTWFrZUNhY2hlLnR4dCB3aGVuIGl0IGlzIG5vdCBpbiB0aGUKCSAgY3VycmVudCBkaXJlY3RvcnkuCgoyMDAzLTA4LTA2IDE3OjU4ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogSWYKCSAgQ01BS0VfRURJVF9DT01NQU5EIGlzIG5vdCBzcGVjaWZpZWQsIHVzZSBjbWFrZSAtaQoKMjAwMy0wOC0wNiAxNzo1MiAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEFkZCByZWJ1aWxkX2NhY2hlCgoyMDAzLTA4LTA2IDE3OjMyICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRUaHJlYWRzLmNtYWtlOiBFTkg6IE9uIGFwcGxlIHVzZSAtbHB0aHJlYWRzCgoyMDAzLTA4LTA2IDE1OjIyICBraW5nCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxGaWxlc0NvbW1hbmQuaCwgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmg6CgkgIEVOSDogVHdlYWtlZCB3aGl0ZXNwYWNlIGluIGRvY3VtZW50YXRpb24gb2YgY29tbWFuZC4KCjIwMDMtMDgtMDYgMTU6MTggIGtpbmcKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmg6IEVOSDogVHdlYWtlZCB3aGl0ZXNwYWNlIGluCgkgIGRvY3VtZW50YXRpb24gb2YgY29tbWFuZC4KCjIwMDMtMDgtMDYgMTU6MTIgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eDogRU5IOiBBZGRlZCBTRUUgQUxTTyBzdXBwb3J0IGZvcgoJICBnZW5lcmF0ZWQgdW5peCBtYW5wYWdlLgoKMjAwMy0wOC0wNiAxNToxMCAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBCVUc6IFdlIGRvbid0IHdhbnQgdG8gaW5zdGFsbCBjbWFrZXRlc3Qgb24KCSAgVU5JWCBvciB3aW5kb3dzLiAgSXQgaXMgZm9yIGludGVybmFsIENNYWtlIHRlc3Rpbmcgb25seS4gIFdlCgkgIHNob3VsZCBwcm9iYWJseSBmb2xkIGl0cyBmdW5jdGlvbmFsaXR5IGludG8gY3Rlc3QgYW55d2F5LgoKMjAwMy0wOC0wNiAxNTowMyAga2luZwoKCSogU291cmNlL2N0ZXN0LmN4eCwgVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkCgkgIGRvY3VtZW50YXRpb24gZm9yIGN0ZXN0LgoKMjAwMy0wOC0wNiAxNDo0OSAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsIGNtYWtlbWFpbi5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jY21ha2UuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHA6IEVOSDogQWRkZWQKCSAgY29uZmlndXJhdGlvbiBvZiBuYW1lIG9mIGV4ZWN1dGFibGUgaW4gbWFuIHBhZ2UgaGVhZGVyIGFuZAoJICB2ZXJzaW9uIGJhbm5lci4KCjIwMDMtMDgtMDYgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogSWYgYSBkaXJlY3RvcnkgaXMKCSAgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUgdGhhdCBpcyBub3QgYW4gZXhpc3RpbmcgYnVpbGQgdHJlZSwKCSAgd2Ugc2hvdWxkIHN0aWxsIHVzZSBhbnkgLUcgb3B0aW9uIHRoYXQgd2FzIGdpdmVuIHRvIHNldCB0aGUKCSAgZ2VuZXJhdG9yLgoKMjAwMy0wOC0wNiAxMzo0OCAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEhpZGUgd2luZG93cyBmb3IgcHJvY2Vzc2VzIHJ1biBieQoJICBSdW5TaW5nbGVDb21tYW5kLgoKMjAwMy0wOC0wNiAxMzo0MSAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRml4ZWQgaW5kZW50YXRpb24KCjIwMDMtMDgtMDYgMTI6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBkbyBub3Qgb3V0cHV0IG1ha2UKCSAgaW5zdGFsbCBydWxlcyBvbiB3aW5kb3dzIGJlY2F1c2UgdGhleSBkbyBub3Qgd29yawoKMjAwMy0wOC0wNiAxMTo1MSAga2luZwoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IEJVRzogRml4ZWQgc3BhY2luZyBlcnJvciBpbiBtZXNzYWdlLgoKMjAwMy0wOC0wNiAxMDo0MiAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEluc3RhbGwgdGVzdCBpcyBub3cgZW5hYmxlZCB3aGVuCgkgIENNQUtFX0lOU1RBTExfUFJFRklYIGlzIENNYWtlX0JJTkFSWV9ESVIvVGVzdHMvVGVzdEluc3RhbGwvUHJlZml4CgkgIHRvIGtlZXAgdGVzdCBpbiBvbmUgZGlyZWN0b3J5LgoKMjAwMy0wOC0wNiAxMDozOSAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9UZXN0SW5zdGFsbC5zaC5pbjogRU5IOiBBZGRlZAoJICBJbnN0YWxsIHRlc3QuICBJdCBpcyBlbmFibGVkIHdoZW4gdGhlIENNQUtFX0lOU1RBTExfUFJFRklYIGlzCgkgIENNYWtlX0JJTkFSWV9ESVIvSW5zdGFsbFRlc3QuCgoyMDAzLTA4LTA2IDEwOjE1ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogRml4IGluc3RhbGwgcHJvYmxlbQoKMjAwMy0wOC0wNiAwOToyNyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IE5lZWQgdG8gcHJvdmlkZSBzdGRpbiB0byBjaGlsZAoJICBwcm9jZXNzZXMuCgoyMDAzLTA4LTA1IDE4OjI1ICBraW5nCgoJKiBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgdGVzdCBvZgoJICAtLWNvcHlyaWdodCBhbmQgLS12ZXJzaW9uIGFyZ3VtZW50cyBmb3IgY292ZXJhZ2UuCgoyMDAzLTA4LTA1IDE4OjIyICBraW5nCgoJKiBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgdGVzdCBvZiAtLWhlbHAKCSAgW2NvbW1hbmRdIGZvcm0gb2YgaGVscCBvcHRpb24gZm9yIGNvdmVyYWdlLgoKMjAwMy0wOC0wNSAxODoxMCAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmg6IEVOSDogQWRkZWQKCSAgc3VwcG9ydCB0byAtLWhlbHAgdG8gcHJpbnQgaGVscCBmb3IgYSBzaW5nbGUgY29tbWFuZC4KCjIwMDMtMDgtMDUgMTc6MzkgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZAoJICBpbXBsZW1lbnRhdGlvbiBvZiBsb25nIGRlcGVuZGVuY3kgbGlzdCBzdXBwb3J0LiAgVGhlIHByb3h5IHRhcmdldAoJICBtdXN0IGhhdmUgYSBjb3JyZXNwb25kaW5nIGZpbGUgdG8gd29yayBjb3JyZWN0bHkuICBJbnN0ZWFkIG9mCgkgIHVzaW5nIGEgcHJveHkgdGFyZ2V0LCB3ZSBub3cganVzdCBsaXN0IG9uZSBsaW5lIGZvciBlYWNoCgkgIGRlcGVuZGVuY3kgYW5kIHRoZW4gcHJpbnQgb25lIGNvcHkgb2YgdGhlIGJ1aWxkIHJ1bGUgYXQgdGhlIGVuZC4KCjIwMDMtMDgtMDUgMTY6NTEgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogQ2xhcmlmaWVkIHNvdXJjZSBkaXJlY3RvcnkgbWlzbWF0Y2gKCSAgbWVzc2FnZS4KCjIwMDMtMDgtMDUgMTY6MzYgIGtpbmcKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgY21ha2UuaDogRU5IIzYxOiBjbWFrZSBhbmQgY2NtYWtlIG5vdyBzdXBwb3J0CgkgIHBhc3NpbmcgdGhlIHBhdGggdG8gYSBDTWFrZUNhY2hlLnR4dCBmaWxlIGFzIGFuIGFyZ3VtZW50LiAgSXRzCgkgIHNldHRpbmdzIHdpbGwgYmUgbG9hZGVkLgoKMjAwMy0wOC0wNSAxNjowNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHIzkyIC0gQWRkZWQgWE1MCgkgIGVzY2FwaW5nIGZvciA8LCA+LCBhbmQgJi4KCjIwMDMtMDgtMDUgMTU6MjAgIGFuZHkKCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0R1bXBJbmZvcm1hdGlvbi5jeHg6IEJVRzogT3BlbiBhcyBhc2NpaQoJICB0byByZW1vdmUgZXh0cmEgbmV3IGxpbmVzCgoyMDAzLTA4LTA1IDE1OjEwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzRndkOXguYywgUHJvY2Vzc1dpbjMyLmM6IEVOSDogQWRkZWQKCSAgc2hvdy9oaWRlIHdpbmRvdyBzdXBwb3J0LgoKMjAwMy0wOC0wNSAxNDoyNyAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOgoJICBBZGRlZCBTZXRPcHRpb24vR2V0T3B0aW9uIG1ldGhvZHMgZm9yIHBsYXRmb3JtLXNwZWNpZmljIG9wdGlvbnMuCgoyMDAzLTA4LTA1IDEzOjUzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1VOSVguYzogQlVHOiBDYW4ndCBjbG9zZSBzdGRpbi4KCjIwMDMtMDgtMDUgMTE6MzQgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBCVUc6IEFkZGVkIG1pc3NpbmcKCSAgemVyby1pbml0aWFsaXphdGlvbiBvZiBzdHJ1Y3Qgc2lnYWN0aW9uLgoKMjAwMy0wOC0wNSAwOTo1NSAgbWFydGluawoKCSogTW9kdWxlcy86IENNYWtlVGVzdE5NYWtlQ0xWZXJzaW9uLmMsIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6CgkgIGFkZGVkIHRlc3QgZm9yIHdoZXRoZXIgcGRidHlwZSBzaG91bGQgYmUgdXNlZCBmb3Igbm1ha2UKCjIwMDMtMDgtMDUgMDk6MDcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBCVUc6IEdldEVycm9yU3RyaW5nIHNob3VsZCByZXR1cm4KCSAgRXJyb3JNZXNzYWdlIGJ1ZmZlciwgbm90IHRoZSBwaXBlIGJ1ZmZlci4KCjIwMDMtMDgtMDUgMDk6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogbWlub3IgZml4CgoyMDAzLTA4LTA1IDA4OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBhZGRlZCBvdXRwdXRFY2hvIG1ldGhvZCBhbmQgZml4ZWQKCSAgbWFrZSBoZWxwIGZvciBubWFrZSBhbmQgYm9ybGFuZAoKMjAwMy0wOC0wNCAxNzowOCAga2luZwoKCSogTW9kdWxlcy86IENNYWtlVGVzdENDb21waWxlci5jbWFrZSwgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6CgkgIEVSUjogRml4ZWQgdHlwZW8gdGVzdHMtPnRlc3QuCgoyMDAzLTA4LTA0IDE1OjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGFkZGVkIG1ha2UgaGVscCB0YXJnZXQKCSAgZmlyc3QgY3V0CgoyMDAzLTA4LTA0IDE0OjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBmb3IgZGVidWcgbGlicyBvbgoJICBVTklYCgoyMDAzLTA4LTA0IDExOjQ4ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogSW1wcm92ZSBwYXRocyBvbiB3aW5kb3dzCgoyMDAzLTA4LTA0IDA3OjU1ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogRml4IGVzY2FwaW5nIG9uIHdpbmRvd3MKCjIwMDMtMDgtMDQgMDc6MTIgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBGaXggYXJndW1lbnQgcGFyc2luZyBvbiBVTklYIHdpdGgKCSAgc3BhY2VzCgoyMDAzLTA4LTAzIDIyOjQxICBhbmR5CgoJKiBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBFTkg6IFVzZSBuZXcgUnVuQ29tbWFuZAoKMjAwMy0wOC0wMyAyMjozNiAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRU5IOiBVc2UgbmV3IFJ1bkNvbW1hbmQKCjIwMDMtMDgtMDMgMjI6MzQgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4LCBjbWFrZXRlc3QuY3h4OgoJICBFTkg6IFVzZSB0aGUgbmV3IFJ1bkNvbW1hbmQKCjIwMDMtMDgtMDMgMjI6MzMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQnVpbGROYW1lQ29tbWFuZC5jeHgsIGNtVHJ5UnVuQ29tbWFuZC5jeHgsCgkgIGNtU2l0ZU5hbWVDb21tYW5kLmN4eDogRU5IOiBVc2UgdGhlIG5ldyBzaWduYXR1cmUKCjIwMDMtMDgtMDMgMjI6MzIgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkIGJhY2sgdGhlCgkgIGt3c3lzUHJvY2VzcyBSdW5Db21tYW5kLCBub3cgaXMgaW4gcGFyYWxsZWwKCjIwMDMtMDgtMDMgMjA6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuaCwgU291cmNlL2NtYWtlLmgsCgkgIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9TeXN0ZW1JbmZvcm1hdGlvbi9EdW1wSW5mb3JtYXRpb24uY3h4OiBFTkg6IEFkZCBhY2Nlc3NvcgoJICBmb3IgdGhlIGxpc3Qgb2YgY29tbWFuZHMKCjIwMDMtMDgtMDIgMDk6MzMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwgY21NYWtlZmlsZS5jeHg6CgkgIEJVRzogRml4IHByb2JsZW0gd2l0aCB1bmluaXRpYWxpemVkIHZhcmlhYmxlcwoKMjAwMy0wOC0wMSAxOToxMyAgYW5keQoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2UsIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBFTkg6IE1ha2UgaXQKCSAgd29yayBmb3IgUVQgMi4zIG5vbiBjb21tZXJjaWFsIG9uIHdpbmRvd3MKCjIwMDMtMDgtMDEgMTg6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbVFUV3JhcFVJQ29tbWFuZC5jeHg6IEVOSDogTWFrZSBvdXQgb2Ygc291cmNlIHdvcmsgb24KCSAgV2luZG93cwoKMjAwMy0wOC0wMSAxODo1MiAgYW5keQoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIG1vcmUgZGVidWcKCjIwMDMtMDgtMDEgMTg6NTIgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBGaXggdGVzdCBmb3IgVmlzdWFsIFN0dWRpbwoKMjAwMy0wOC0wMSAxNzoxMSAgYW5keQoKCSogTW9kdWxlcy9GaW5kVGhyZWFkcy5jbWFrZTogRU5IOiBNQWtlIGl0IHdvcmsgb24gRnJlZUJTRAoKMjAwMy0wOC0wMSAxNjo0OCAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRm9yUHRocmVhZHMuYywgRmluZFRocmVhZHMuY21ha2U6IEVOSDogRG8gYmV0dGVyCgkgIHRlc3QgZm9yIHB0aHJlYWRzCgoyMDAzLTA4LTAxIDE2OjQ4ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiBGaXggaW5kZW50YXRpb24KCjIwMDMtMDgtMDEgMTY6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBSZW1vdmUgZGVidWcKCjIwMDMtMDgtMDEgMTU6NDEgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguZmlsZS5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmZpbGUuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguZmlsZS5jeHg6IGFkZCBtaXNzaW5nCgkgIGZpbGUKCjIwMDMtMDgtMDEgMTU6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBEZXBlbmRlbmN5IGxpc3RzCgkgIGFyZSBub3cgc3BsaXQgaW50byBtdWx0aXBsZSBtYWtlIGxpbmVzIHRvIGFsbG93IGxvbmdlciBsaXN0cyBvbgoJICBsaW1pdGVkIG1ha2UgcHJvZ3JhbXMuCgoyMDAzLTA4LTAxIDE1OjMzICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogQWRkIHN1cHBvcnQgZm9yCgkgIC1wdGhyZWFkCgoyMDAzLTA4LTAxIDE1OjI3ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogQWRkaW5nIGxpbmsgZmxhZ3MKCSAgdG8gYW4gZXhlY3V0YWJsZSB0aGF0IGxpbmtzIHRvIHNoYXJlZCBsaWJyYXJpZXMgbXVzdCBiZSBkb25lIGZvcgoJICBib3RoIEVYRUNVVEFCTEUgYW5kIFdJTjMyX0VYRUNVVEFCTEUgdGFyZ2V0cy4KCjIwMDMtMDgtMDEgMTQ6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IEJVRyAoODUpOgoJICBhbGxvdyAuIHRvIGJlIGluIHRoZSBuYW1lIG9mIGFuIGV4ZWN1dGFibGUKCjIwMDMtMDgtMDEgMTQ6MTAgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtYWtlLmN4eDogRU5IOiBBbGxvdyBzcGVjaWZ5aW5nIGNtYWtlIHZhcmlhYmxlcyBvbiB0aGUgY29tbWFuZAoJICBsaW5lIHdpdGhvdXQgc3BlY2lmeWluZyB0aGUgdHlwZSBCdWcgIzExOCAtIFNwZWNpZnlpbmcgY2FjaGUKCSAgZW50cmllcyB3aXRoIC1EIHNob3VsZCBub3QgbmVlZCB0aGUgdHlwZQoKMjAwMy0wOC0wMSAxNDoxMCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBhbGwgTWFrZWZpbGVzIG5vdyBoYXZlCgkgIGJvdGggZnVsbCBwYXRoIHRvIGV4ZSBhbmQgc2hvcnQgdmVyc2lvbgoKMjAwMy0wOC0wMSAxMzo1NCAgbWFydGluawoKCSogU291cmNlL2NtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4OiBmaXggZm9yIHV0aWxpdHkgY29tbWFuZAoJICB3aXRob3V0IEVYRUNVVEFCTEVfT1VUUFVUX1BBVEgKCjIwMDMtMDgtMDEgMTM6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBTeW50YXggY2xlYW51cAoKMjAwMy0wOC0wMSAxMzoxMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBhbGxvdyBsaWIgcHJlZml4IGZvciB0byBzdGF5IGZvciBubWFrZSBhbmQgYm9ybGFuZCBtYWtlIGFzCgkgIGl0IGlzIG5vdCBhIHN5c3RlbSBwcmVmaXgKCjIwMDMtMDgtMDEgMTM6MDAgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0OiBjaGFuZ2UgbGliIHBhdGggYmFjayB0byBlbXB0eQoKMjAwMy0wOC0wMSAxMjo0OSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEZpeCBlY2hvJ3MgdG8gdXNlCgkgIEBlY2hvLiBUaGlzIHdheSB2ZXJib3NlIG1vZGUgZG9lcyBub3QgcHJpbnQgdHdpY2U6IEJ1ZyAjNDUgLSBhZGQKCSAgQCBmcm9tIGVjaG8gY29tbWFuZHMKCjIwMDMtMDgtMDEgMTE6NTggIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0OiBtYWRlIG1vcmUgb3B0aW9ucyBhZHZhbmNlZAoKMjAwMy0wOC0wMSAwOToxOCAgYW5keQoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVSUjogT25seSBsaW5rIHF0IHRvIHF0IGV4ZWN1dGFibGUKCjIwMDMtMDgtMDEgMDk6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuY3h4OiBmaXggZm9yIGJ1ZyAjIDEwMQoKMjAwMy0wOC0wMSAwODo0NyAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogbW9yZSByZXZlcnRpbmcgYmFjawoKMjAwMy0wNy0zMSAxNjo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiB3aGVuIGNyZWF0aW5nIHJ1bGUKCSAgZmlsZXMgcmVtb3ZlIHRoZSBJbnREaXIKCjIwMDMtMDctMzEgMTY6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IGZpeCBmb3Igc3BhY2VzCgoyMDAzLTA3LTMxIDE1OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBFTkg6IGFkZCBzdXBwb3J0IGZvciBPQkpFQ1RfREVQRU5EUyBmb3IKCSAgdmlzdWFsIHN0dWRpbwoKMjAwMy0wNy0zMSAxNDo0NiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBidWcgZml4IGZvciBidWcgIyAxMTcKCjIwMDMtMDctMzEgMTM6MTUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZTogbWFkZSBhIG1pbm9yIGJ1Z2ZpeCBvbiBteQoJICBGaW5kd3hXaW5kb3dzLmNtYWtlLglJIGNhcHN1bGF0ZWQgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbgoJICBtYXRjaGluZyBmb3IgdGhlIGxpYmRycyB3aXRoIGFub3RoZXIgSUYgKGxpbmUgMzU1KS4gIEJ5OiBKYW4KCSAgV29ldHplbAoKMjAwMy0wNy0zMSAwODo1NSAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IEZpeCB3eCB0ZXN0CgoyMDAzLTA3LTMxIDA4OjUwICBhbmR5CgoJKiBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogRVJSOiBBdHRlbXB0IHRvIGZpeCB3cmFwcGluZyBvbgoJICBXaW5kb3dzCgoyMDAzLTA3LTMxIDA4OjMzICBhbmR5CgoJKiBUZXN0cy9XcmFwcGluZy9XcmFwLmM6IEVOSDogRml4IHByb2JsZW0gb24gSFAuIFdoYXkgc2hvdWxkIEsmUiBiZQoJICBkZWZhdWx0PwoKMjAwMy0wNy0zMCAxNTozOCAgYW5keQoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IEVOSDogd2hlbiBsaW5raW5nIGluIFFULCB3ZSBzaG91bGQgYWxzbwoJICBsaW5rIERMLCBzaW5jZSBRVCB1c2VzIHRoZW0KCjIwMDMtMDctMzAgMTM6MzkgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBFTkg6IFFUIGlmIGl0IGlzIG11bHRpIHRocmVhZGVkIHNob3VsZCBsaW5rCgkgIGluIHRocmVhZHMKCjIwMDMtMDctMzAgMTM6MjggIGFuZHkKCgkqIFRlc3RzL1dyYXBwaW5nLzogQ01ha2VMaXN0cy50eHQsIGZvby51aS5pbjogRU5IOiBSZWFsbHkgdGVzdCB1aWMKCSAgYW5kIHBlcmZvcm0gY29uZmlndXJlZCB1aWMgdGVzdAoKMjAwMy0wNy0zMCAxMzoyNyAgYW5keQoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogRU5IOiBBbGxvdyBxdCB1aSBmaWxlcyBiZWluZyBpdCB0aGUKCSAgYmluYXJ5IGRpci4gQnVnICMxMTAgLSBRVF9XUkFQX1VJIHByb2JsZW0gb24gb3V0LW9mLXNvdXJjZSBidWlsZHMKCjIwMDMtMDctMzAgMTM6MTQgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZXZlcnQgYmFjawoKMjAwMy0wNy0zMCAxMzoxMSAgYW5keQoKCSogU291cmNlLzogY21ha2V0ZXN0LmN4eCwgV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWxzbyBmYWlsCgkgIHdoZW4gbWFrZSBmYWlsc1NvdXJjZS9jbWFrZXRlc3QuY3h4CgoyMDAzLTA3LTMwIDEzOjEwICBhbmR5CgoJKiBUZXN0cy9XcmFwcGluZy86IENNYWtlTGlzdHMudHh0LCBXcmFwLmM6IEVOSDogQWRkIGV4ZWN1dGFibGUgZm9yCgkgIHdyYXBwaW5nIHRlc3QsIHNvIHRoYXQgbWFrZSBzdGFnZSBhY3R1YWxseSBwYXNzZXMKCjIwMDMtMDctMjkgMTg6MDYgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2IuY3h4OiBFTkg6IFNwZWVkdXAgZ2xvYmJpbmcgYW5kIGF0dGVtcHQgdG8gZml4CgkgIGN5Z3dpbiBwcm9ibGVtCgoyMDAzLTA3LTI5IDE3OjE1ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiBVc2UgRmluZFgxMSB3aGVuIGRvaW5nIFF0IG9uIHVuaXgKCjIwMDMtMDctMjkgMTM6MzYgIGFuZHkKCgkqIE1vZHVsZXMvVXNlX3d4V2luZG93cy5jbWFrZTogRU5IOiBBZGQgVXNlIGZpbGUgZm9yIHd4V2luZG93cy4KCSAgVGhhbmtzIEphbiBXb2V0emVsCgoyMDAzLTA3LTI5IDA3OjQxICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2U6IEVOSDogSW1wcm92ZWQgZmluZCBtb2R1bGUuIFRoYW5rIHlvdQoJICBKYW4gV29ldHplbAoKMjAwMy0wNy0yOSAwNzowMSAgYW5keQoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiBFTkg6IEZpeCB0eXBvOiBCdWcgIzEwMCAtCgkgIFNwZWxsaW5nIGNvcnJlY3Rpb24gdG8gYW4gZXJyb3IgbWVzc2FnZQoKMjAwMy0wNy0yOCAxODoxMiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTWFrZURlcGVuZC5jeHgsCgkgIGNtTWFrZURlcGVuZC5oOiBFTkg6IHBlcmZvcm1hbmNlIGZpeGVzIGZvciBuZXR3b3JrIGRlcGVuZHMKCjIwMDMtMDctMjggMTQ6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU291cmNlR3JvdXBDb21tYW5kLmN4eCwgY21Tb3VyY2VHcm91cENvbW1hbmQuaDogRU5IOgoJICBwdXQgYmFjayBvbGQgc3R5bGUgY2FsbCB0byBTT1VSQ0VfR1JPVVAsIG5vIG5lZWQgdG8gYnJlYWsgdGhpbmdzCgkgIGZvciB0aGlzCgoyMDAzLTA3LTI4IDEzOjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IG1ha2Ugc3VyZSBpbml0aWFsIGNhY2hlIGZpbGUgcmVhZCBvbmx5CgkgIHJlYWRzIG9uZSBmaWxlLCBhbmQgZG9lcyBub3QgbG9vayBmb3IgQ01ha2VMaXN0cy50eHQgZmlsZXMgb24gdGhlCgkgIGVudGlyZSBkaXNrCgoyMDAzLTA3LTI1IDEzOjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBhZGQgYSBiZXR0ZXIgbWVzc2FnZSBmb3IgdGhlIEdVSSBpZiBubwoJICBDTWFrZUxpc3RzLnR4dCBmaWxlIGlzIGZvdW5kLgoKMjAwMy0wNy0yNSAxMjo1MCAgaG9mZm1hbgoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IGZvciB1bml4IGFkZCB4MTEgYW5kIHB0aHJlYWRzIGZvcgoJICBxdAoKMjAwMy0wNy0yNCAxMTo1MyAgYW5keQoKCSogU291cmNlL2NtR2xvYi5jeHg6IEVOSDogUmVtb3ZlIHdhcm5pbmcKCjIwMDMtMDctMjQgMTE6MzcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZml4IGZvciB1dGlsaXR5IGRlcGVuZHMKCSAgYnVnIzc2CgoyMDAzLTA3LTI0IDExOjMzICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0ZpbmRQYWNrYWdlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRmluZFBhY2thZ2VUZXN0L0ZpbmRQYWNrYWdlVGVzdC5jeHg6IEVOSDogQWRkZWQKCSAgRmluZFBhY2thZ2VUZXN0IHRvIGltcHJvdmUgY292ZXJhZ2UuCgoyMDAzLTA3LTI0IDExOjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRQYWNrYWdlQ29tbWFuZC5jeHgsIGNtRmluZFBhY2thZ2VDb21tYW5kLmg6IEVOSDoKCSAgSW1wbGVtZW50ZWQgUVVJRVQgYXJndW1lbnQgcHJvcGFnYXRpb24gdG8gRk9PX0ZJTkRfUVVJRVRMWQoJICBzZXR0aW5nIGluIEZpbmRGT08uY21ha2UgbW9kdWxlIHRoYXQgaXMgZm91bmQuCgoyMDAzLTA3LTI0IDExOjI0ICBraW5nCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlQ29tbWFuZExpbmVJbmZvLmNwcDogQlVHOiBGaXggZm9yIG5ldHdvcmsKCSAgcGF0aCBhcmd1bWVudCBwYXJzaW5nLgoKMjAwMy0wNy0yNCAxMToxMiAgYW5keQoKCSogU291cmNlL2NtR2xvYi5jeHg6IEVOSDogT24gd2luZG93cyBoYW5kbGUgbmV0d29yayBwYXRocwoKMjAwMy0wNy0yNCAxMTowNiAga2luZwoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBFTkg6IEltcHJvdmVkIGVycm9yIG1lc3NhZ2UgZm9yIFZUS19ESVIKCSAgbm90IGZvdW5kIHRvIHJlZmVyIHRvIGl0IGFzIGEgY2FjaGUgZW50cnkuICBTb21lIHVzZXJzIHRob3VnaHQKCSAgdGhpcyB3YXMgc3VwcG9zZWQgdG8gYmUgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuCgoyMDAzLTA3LTI0IDEwOjU4ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUR1bXBEb2N1bWVudGF0aW9uLmN4eCwKCSAgVGVzdHMvQ29tbWFuZExpbmVUZXN0L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21tYW5kTGluZVRlc3QvQ29tbWFuZExpbmVUZXN0LmN4eCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgQ29tbWFuZExpbmVUZXN0CgkgIHRvIGFkZCBjb3ZlcmFnZSBmb3IgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyB0byBjbWFrZSBleGVjdXRhYmxlcy4KCSAgVGhpcyByZXBsYWNlcyB0aGUgb2xkIER1bXBEb2N1bWVudGF0aW9uIHRlc3QuCgoyMDAzLTA3LTIzIDE4OjAxICBhbmR5CgoJKiBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBNb3JlIGNvdmVyYWdlCgoyMDAzLTA3LTIzIDE3OjU5ICBraW5nCgoJKiBVdGlsaXRpZXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkZWQgYnVpbGQgb2YgZG9jdW1lbnRhdGlvbiBmb3IKCSAgQ01ha2VTZXR1cC4KCjIwMDMtMDctMjMgMTc6NDAgIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHA6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IKCSAgZG9jdW1lbnRhdGlvbiBvcHRpb25zLgoKMjAwMy0wNy0yMyAxNzozMSAga2luZwoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlQ29tbWFuZExpbmVJbmZvLmNwcCwKCSAgQ01ha2VDb21tYW5kTGluZUluZm8uaDogRU5IOiBBZGRlZCBjb25zdHJ1Y3Rpb24gb2Ygb3JpZ2luYWwKCSAgY29tbWFuZCBsaW5lIGluIGFyZ2MvYXJndiBzdHlsZS4KCjIwMDMtMDctMjMgMTc6MjggIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5oOiBFTkg6CgkgIEltcHJvdmVkIGJlaGF2aW9yIHdoZW4gcnVuIHdpdGggYXJndW1lbnRzIGZyb20gdGhlIGNvbW1hbmQgbGluZS4KCjIwMDMtMDctMjMgMTc6MjcgIGtpbmcKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbi5oOiBFTkg6CgkgIENoZWNrT3B0aW9ucyBub3cgdGFrZXMgY29uc3QgYXJndi4KCjIwMDMtMDctMjMgMTU6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQgYmFja3dhcmRzCgkgIGNvbXBhdGFiaWxpdHkuCgoyMDAzLTA3LTIzIDE1OjMyICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtU291cmNlR3JvdXAuY3h4LCBjbVNvdXJjZUdyb3VwLmgsIGNtU291cmNlR3JvdXBDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VHcm91cENvbW1hbmQuaDogRU5IOiBGdWxseSBpbXBsZW1lbnRlZCBTT1VSQ0VfR1JPVVAKCSAgY29tbWFuZC4KCjIwMDMtMDctMjMgMTQ6MzEgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ1BsdWdpbkFQSS5oOiBFTkg6IEZpeCBjb21wYXRpYmlsaXR5CgoyMDAzLTA3LTIzIDEwOjM5ICBraW5nCgoJKiBTb3VyY2UvY21Tb3VyY2VHcm91cENvbW1hbmQuY3h4OiBCVUc6IEZpeGVkIG9mZi1ieS1vbmUgZXJyb3IgaW4KCSAgZmlsZSBsaXN0IGxvb3AuICBGaXggc3VibWl0dGVkIGJ5IERhdmlkIEEuIEthcnIuCgoyMDAzLTA3LTIzIDEwOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iLmN4eDogRU5IOiBPbiB3aW5kb3dzIGFuZCBhcHBsZSBoYW5kbGUKCSAgbG93ZXJjYXNlL3VwZXJjYXNlIGZpbGUgbmFtZSBwcm9ibGVtCgoyMDAzLTA3LTIzIDA5OjEwICBraW5nCgoJKiBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBtb3JlIHZlcmJvc2UKCSAgb3V0cHV0IG9mIHdoYXQgZ2xvYmJpbmcgcmVzdWx0cy4KCjIwMDMtMDctMjMgMDg6NTggIGtpbmcKCgkqIFV0aWxpdGllcy9DTWFrZUxpc3RzLnR4dDogQlVHOiBEb24ndCBpbnN0YWxsIGNjbWFrZSBkb2N1bWVudGF0aW9uCgkgIGlmIG5vIGNjbWFrZSB3YXMgYnVpbHQuCgoyMDAzLTA3LTIzIDA4OjM3ICBraW5nCgoJKiBib290c3RyYXA6IEVOSDogQWRkaW5nIGZvcmNlZCBzZXR0aW5ncyBmb3IgcHJlZml4LCBkb2NkaXIsCgkgIG1hbmRpciwgYW5kIGRhdGFkaXIuCgoyMDAzLTA3LTIyIDE3OjA5ICBhbmR5CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IERpcmVjdCBsaW5rIHRvIGNtYWtlIGJ1Z3MKCjIwMDMtMDctMjIgMTM6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbUNQbHVnaW5BUEkuY3h4OiBFUlI6IEZpeCBlcnJvciBvbiBiYWQgQysrIGNvbXBpbGVyIHRoYXQKCSAgZG8gbm90IGhhbmRsZSByZXR1cm4gdm9pZAoKMjAwMy0wNy0yMiAxMzoxNSAgYW5keQoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBGaXggY29weS9wYXN0ZSB0eXBvCgoyMDAzLTA3LTIyIDEzOjE0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuY3h4LCBjbUNQbHVnaW5BUEkuaDogRU5IOiBBZGQgRGlzcGxheVN0YXR1cwoKMjAwMy0wNy0yMiAxMjoyMSAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9Mb2FkZWRDb21tYW5kLmN4eCwKCSAgTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogRU5IOiBNb3JlCgkgIGNvdmVyYWdlCgoyMDAzLTA3LTIyIDExOjE3ICBhbmR5CgoJKiBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBNb3JlIGNvdmVyYWdlCgoyMDAzLTA3LTIyIDEwOjQ1ICBhbmR5CgoJKiBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBJbmNyZWFzZSBjb3ZlcmFnZQoKMjAwMy0wNy0yMSAxNzoxNCAga2luZwoKCSogVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YgY2NtYWtlCgkgIGRvY3VtZW50YXRpb24gb24gVU5JWC4KCjIwMDMtMDctMjEgMTc6MTMgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eDogRU5IOiBBZGRlZCBpbnRyb2R1Y3Rpb24gcGFyYWdyYXBoCgkgIHRvIGRvY3VtZW50YXRpb24uCgoyMDAzLTA3LTIxIDE2OjM4ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgYm9vdHN0cmFwLCBNb2R1bGVzL0NNYWtlTGlzdHMudHh0LAoJICBNb2R1bGVzL1BsYXRmb3JtL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtQ29uZmlndXJlLmNtYWtlLmguaW4sCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dCwKCSAgVXRpbGl0aWVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gb2YKCSAgZGF0YS9kb2MvbWFuIGRpcnMuICBUaGlzIHdpbGwgYmUgdXNlZnVsIGZvciBwYWNrYWdlIG1haW50YWluZXJzLgoKMjAwMy0wNy0yMSAxNjozNyAga2luZwoKCSogU291cmNlLzogSW5pdGlhbENvbmZpZ3VyZUZsYWdzLmNtYWtlLmluLCBjbUNvbmZpZ3VyZS5oLmluOgoJICBSZW1vdmluZyBvbGQgZmlsZS4gIFRoaXMgd2FzIHVzZWQgYnkgb2xkIGNvbmZpZ3VyZSBzY3JpcHQgd2hpY2gKCSAgaGFzIGJlZW4gcmVtb3ZlZC4KCjIwMDMtMDctMjEgMTU6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2IuY3h4LCBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXgKCSAgZ2xvYiBvbiB3aW5kb3dzIGFuZCBhZGQgZ2xvYiByZWN1cnNlIHRlc3QKCjIwMDMtMDctMjEgMTU6MDIgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBnZW5lcmF0aW9uIG9mIGNtYWtlCgkgIGRvY3VtZW50YXRpb24gZHVyaW5nIGJ1aWxkIHByZW9jZXNzLgoKMjAwMy0wNy0yMSAxNDo1OCAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IEJVRzogVGV4dCBkdW1wIG9mIGRvY3VtZW50YXRpb24KCSAgc2hvdWxkIGJlIGluIGFzY2lpIG1vZGUuCgoyMDAzLTA3LTIxIDE0OjU3ICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmg6IEJVRzogRml4ZWQgZG9jdW1lbnRhdGlvbgoJICBmb3JtYXR0aW5nLgoKMjAwMy0wNy0yMSAxNDo0NCAgYW5keQoKCSogU291cmNlLzogY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4LCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5oOiBFTkg6CgkgIFVzZSBuZXcgZGVwcmVjYXRpb24gbWVjaGFuaXNtCgoyMDAzLTA3LTIxIDE0OjQzICBhbmR5CgoJKiBTb3VyY2UvY21GaWxlQ29tbWFuZC5oOiBFTkg6IEZpeCBjb21tZW50CgoyMDAzLTA3LTIxIDE0OjQyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHg6IEVOSDogSW5pdGlhbCBmcmFtZXdvcmsgZm9yCgkgIGRlcHJlY2F0ZWQgY29tbWFuZHMKCjIwMDMtMDctMjEgMTM6NDggIGFuZHkKCgkqIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBtb3JlIGNvdmVyYWdlIHRlc3RzCgoyMDAzLTA3LTIxIDEzOjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iLmN4eDogRU5IOiBIYW5kbGUgXiBhcyBbXmZ1XQoKMjAwMy0wNy0xNyAxNDo1NiAgYW5keQoKCSogVGVzdHMvU3RyaW5nRmlsZVRlc3QvQ01ha2VMaXN0cy50eHQ6IEVOSDogQWRkIGFkZGl0aW9uYWwgbmV3IGxpbmUKCSAgYWZ0ZXIgdGhlIHN0cmluZyB0byBtYXRjaCB0aGUgY2hhbmdlIGluIGZpbGUgY29tbWFuZAoKMjAwMy0wNy0xNyAxNDo1NiAgYW5keQoKCSogU291cmNlL2NtRmlsZUNvbW1hbmQuY3h4OiBFTkg6IFJlbW92ZSBleHRyYSBuZXcgbGluZSBhZnRlciB0aGUKCSAgd3JpdHRlbiBzdHJpbmcKCjIwMDMtMDctMTcgMTQ6NTQgIGFuZHkKCgkqIE1vZHVsZXMvOiBDTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBDaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLCBDaGVja0luY2x1ZGVGaWxlLmNtYWtlLAoJICBDaGVja0luY2x1ZGVGaWxlQ1hYLmNtYWtlLCBDaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLCBDaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZSwKCSAgVGVzdEJpZ0VuZGlhbi5jbWFrZSwgVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlOiBFTkg6IEV4dHJhIG5ldwoJICBsaW5lIGFmdGVyIG91dHB1dAoKMjAwMy0wNy0xNiAxNTozOCAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZVN5c3RlbS5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBzZXQgQ01BS0VfU1lTVEVNX1ZFUlNJT04gZm9yIHdpbmRvd3MKCjIwMDMtMDctMTYgMTQ6NTIgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwgY21GaW5kUGFja2FnZUNvbW1hbmQuaDogRU5IOgoJICBBZGRlZCBRVUlFVCBvcHRpb25hbCBhcmd1bWVudCB0byBibG9jayBlcnJvciBtZXNzYWdlIHdoZW4gX0RJUgoJICB2YXJpYWJsZSBpcyBub3Qgc2V0LglBbHNvIHJlbW92ZWQgdXBwZXItY2FzaW5nIG9mIHBhY2thZ2UgbmFtZS4KCjIwMDMtMDctMTYgMTE6MzggIGtpbmcKCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uLzogRHVtcEluZm9ybWF0aW9uLmN4eCwKCSAgRHVtcEluZm9ybWF0aW9uLmguaW46IEVOSDogQWRkZWQgZHVtcCBvZiBtb3JlIGZpbGVzLglJbXByb3ZlZAoJICByb2J1c3RuZXNzIG9mIGR1bXAuCgoyMDAzLTA3LTE1IDEyOjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IHJlbW92ZSBsb2NhbCBicm9rZW4KCSAgaW1wbGVtZW50YXRpb24gb2YgY29udmVydCB0byB3aW5kb3dzIHBhdGgKCjIwMDMtMDctMTUgMTI6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eDogRU5IOiBiZXR0ZXIgZXJyb3IgY2hlY2tpbmcKCjIwMDMtMDctMTQgMTA6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBDdXN0b20gY29tbWFuZHMgc2hvdWxkIGhhdmUgdmFyaWFibGVzCgkgIGV4cGFuZGVkIGJlZm9yZSBjb21wYXJpbmcgd2l0aCBwcmV2aW91c2x5IGFkZGVkIGN1c3RvbSBjb21tYW5kcy4KCjIwMDMtMDctMTQgMTA6MTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eDogc29tZSB1cGRhdGVzCgoyMDAzLTA3LTE0IDA5OjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHg6IHNvbWUgdXBkYXRlcwoKMjAwMy0wNy0xNCAwOTozMSAgbWFydGluawoKCSogU291cmNlLzogY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuaDogc29tZQoJICB1cGRhdGVzCgoyMDAzLTA3LTE0IDA5OjE1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oLCBjbUdsb2IuY3h4LAoJICBjbUdsb2IuaDogRU5IOiBSZWN1cnNlIHN1YmRpcmVjdG9yaWVzCgoyMDAzLTA3LTExIDE3OjIxICBraW5nCgoJKiBib290c3RyYXA6IEVOSDogUmVtb3ZlZCBjbXN5cyBpbmNsdWRlIGRpcmVjdG9yeSBmcm9tIGJvb3RzdHJhcAoJICBidWlsZCBvZiBrd3N5cy4gIEl0IGlzIG5vIGxvbmdlciBuZWVkZWQuCgoyMDAzLTA3LTExIDE2OjI5ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBCVUc6IFVwZGF0ZSBvZiByZWxlYXNlCgkgIHV0aWxpdGllcyBtdXN0IG1haW50YWluIHRhZy4KCjIwMDMtMDctMTEgMTQ6MTQgIGFuZHkKCgkqIE1vZHVsZXMvOiBDTWFrZVRlc3RDQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLAoJICBDaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLCBDaGVja0luY2x1ZGVGaWxlLmNtYWtlLAoJICBDaGVja0luY2x1ZGVGaWxlQ1hYLmNtYWtlLCBDaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwKCSAgQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLCBDaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZSwgRGFydC5jbWFrZSwKCSAgVGVzdEJpZ0VuZGlhbi5jbWFrZSwgVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlOiBFTkg6IFJlcGxhY2UKCSAgV1JJVEVfRklMRSB3aXRoIEZJTEUoV1JJVEUgYW5kIEZJTEUoQVBQRU5ELiBSZXBsYWNlCgkgIE1BS0VfRElSRUNUT1JZIHdpdGggRklMRShNQUtFX0RJUkVDVE9SWSwgcmVwbGFjZSBTVFJJTkcoQVNDSUkKCSAgdGhpbmdzCgoyMDAzLTA3LTEwIDIzOjIyICBraW5nCgoJKiBTb3VyY2UvY21ha2UuaDogRVJSOiBSZW1vdmVkIGR1cGxpY2F0ZSBnZW5lcmF0b3IgZG9jdW1lbnRhdGlvbi5lCgoyMDAzLTA3LTEwIDIzOjE1ICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaCwgY21ha2VtYWluLmN4eDoKCSAgRU5IOiBBZGRlZCBTRUUgQUxTTyBzZWN0aW9uIHRvIGdlbmVyYXRlZCBtYW4gcGFnZS4gIE1pbm9yCgkgIGZvcm1hdHRpbmcgaW1wcm92ZW1lbnRzIGZvciBnZW5lcmF0ZWQgdGV4dC1vbmx5IGRvY3VtZW50YXRpb24uCgoyMDAzLTA3LTEwIDIzOjE0ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuaDogRU5IOiBBZGRlZCBDTUFLRV9TVEFOREFSRF9JTlRST0RVQ1RJT04gbWFjcm8KCSAgZGVmaW5pbmcgc3RhbmRhcmQgZG9jdW1lbnRhdGlvbiBmb3IgaW5jbHVzaW9uIGluIGV2ZXJ5IGJpbmFyeSdzCgkgIGRvY3VtZW50YXRpb24uCgoyMDAzLTA3LTEwIDIzOjE0ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IFdyb3RlIGJhc2ljCgkgIGRlc2NyaXB0aW9uIGluIGZ1bGwgZG9jdW1lbnRhdGlvbiBibG9jay4KCjIwMDMtMDctMTAgMTQ6NDggIGFuZHkKCgkqIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L1N0cmluZ0ZpbGUuY3h4OiBFTkg6IEFkZCBtaXNzaW5nIGluY2x1ZGUKCjIwMDMtMDctMTAgMTQ6NDYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRVJSOiBHZW5lcmF0ZWQgc291cmNlIGZpbGVzIG5lZWQKCSAgYWNjZXNzIHRvIGt3c3lzUHJpdmF0ZS5oLiAgSnVzdCBjb3B5IGl0IHRvIHRoZSBidWlsZCB0cmVlLgoKMjAwMy0wNy0xMCAxNDozNSAgYW5keQoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHg6IEVSUjogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZQoKMjAwMy0wNy0xMCAxNDozMiAga2luZwoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmMsIENNYWtlTGlzdHMudHh0LCBEaXJlY3RvcnkuY3h4LAoJICBFbmNvZGVFeGVjdXRhYmxlLmMsIFByb2Nlc3NVTklYLmMsIFByb2Nlc3NXaW4zMi5jLAoJICBSZWd1bGFyRXhwcmVzc2lvbi5jeHgsIFN5c3RlbVRvb2xzLmN4eCwga3dzeXNQcml2YXRlLmg6IEVOSDoKCSAgQWRkZWQgdXNlIG9mIEtXU1lTX0hFQURFUiBtYWNybyBpbiBjIGFuZCBjeHggZmlsZXMgdG8gaW5jbHVkZQoJICBrd3N5cyBoZWFkZXJzIHRocm91Z2ggdGhlaXIgY29uZmlndXJlZCBuYW1lc3BhY2UuCgoyMDAzLTA3LTEwIDE0OjI5ICBhbmR5CgoJKiBUZXN0cy9TdHJpbmdGaWxlVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvU3RyaW5nRmlsZVRlc3QvSW5wdXRGaWxlLmguaW4sCgkgIFRlc3RzL1N0cmluZ0ZpbGVUZXN0L1N0cmluZ0ZpbGUuY3h4LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDoKCSAgQWRkIHRlc3QgZm9yIHN0cmluZyBhbmQgZmlsZSBjb21tYW5kcwoKMjAwMy0wNy0xMCAxMzoyNSAgYW5keQoKCSogU291cmNlLzogY21TdHJpbmdDb21tYW5kLmN4eCwgY21TdHJpbmdDb21tYW5kLmg6IEVOSDogQWRkIHVwcGVyCgkgIGFuZCBsb3dlciBjYXNlIHN1cHBvcnQuIENsb3NlIEJ1ZyAjNzkgLSBTVFJJTkcgVE9VUFBFUiBhbmQKCSAgVE9MT1dFUgoKMjAwMy0wNy0wOSAxNzoyNSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEFkZGVkIGVzY2FwZSBzdXBwb3J0IGZvciAoIGFuZCApLgoKMjAwMy0wNy0wOSAxNzoxNyAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUNhY2hlLmN4eCwgY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogQWRkZWQKCSAgc3VwcG9ydCBmb3IgIyBjaGFyYWN0ZXJzIGluc2lkZSBxdW90ZWQgYXJndW1lbnRzIGFuZCBmb3IgZXNjYXBpbmcKCSAgIyBpbiBhIG5vbi1xdW90ZWQgYXJndW1lbnQuICBJbXByb3ZlZCBwYXJzaW5nIHNwZWVkIGJ5IG5vdAoJICBjb21waWxpbmcgcmVndWxhciBleHByZXNzaW9ucyBvbiBibGFuayBsaW5lcy4KCjIwMDMtMDctMDkgMTY6MTggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFUlI6IFVzaW5nIHN0cm5jcHkgaW5zdGVhZCBvZgoJICBzbnByaW50ZiBmb3IgcG9ydGFiaWxpdHkuCgoyMDAzLTA3LTA4IDE2OjMzICBhbmR5CgoJKiBTb3VyY2UvOiBjbUZpbGVDb21tYW5kLmN4eCwgY21GaWxlQ29tbWFuZC5oOiBFTkg6IEFkZAoJICBNQUtFX0RJUkVDVE9SWSBhbmQgbW9kaWZ5IGRvY3VtZW50YXRpb24KCjIwMDMtMDctMDggMTY6MjcgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2IuY3h4OiBFTkg6IFJlbW92ZSBjb21tZW50ZWQgY29kZQoKMjAwMy0wNy0wOCAxNDoxOCAgYW5keQoKCSogYm9vdHN0cmFwLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtR2xvYi5jeHgsIFNvdXJjZS9jbUdsb2IuaDogRU5IOgoJICBBZGQgZ2xvYmJpbmcgdG8gRklMRSBjb21tYW5kCgoyMDAzLTA3LTA4IDEzOjI3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRyM2NTogRml4ZWQgaW5oZXJpdGFuY2Ugb2YKCSAgQ01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSIGFuZCBDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVIuCgoyMDAzLTA3LTA4IDEzOjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIENNYWtlU2V0dXBEaWFsb2cuaDogRU5IOgoJICBhbGxvdyBjYW5jZWwgYW5kIGRpc3BsYXkgb2YgcHJvZ3Jlc3MgZHVyaW5nIGNwdSBpbnRlbnNpdmUKCSAgY29uZmlndXJlIHN0ZXBzCgoyMDAzLTA3LTA4IDA5OjIxICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogRml4IGV4YW1wbGUKCjIwMDMtMDctMDggMDA6MjggIGtpbmcKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBFUlI6IEFkZGVkIG1pc3Npbmcgc3RkOjouCgoyMDAzLTA3LTA3IDIzOjIwICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHgsCgkgIFNvdXJjZS9jbUR1bXBEb2N1bWVudGF0aW9uLmN4eCwgU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBFTkg6CgkgIEltcHJvdmVkIG5hbWUgb2YgY21ha2UgdmVyc2lvbiB2YXJpYWJsZXMuICBUaGV5IGFyZSBub3cKCSAgQ01ha2VfVkVSU0lPTiAobWFqb3IubWlub3IpIGFuZCBDTWFrZV9WRVJTSU9OX0ZVTEwKCSAgKG1ham9yLm1pbm9yLnBhdGNoKS4KCjIwMDMtMDctMDcgMjI6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaDogQlVHOiBSZW1vdmVkIGV4dHJhIG5ld2xpbmVzIGZyb20gaGVscAoJICB0ZXh0LgoKMjAwMy0wNy0wNyAyMjo0NCAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsIGNtYWtlbWFpbi5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jY21ha2UuY3h4OiBFTkg6IEFkZGVkIHN1cHBvcnQgdG8gd3JpdGUgbXVsdGlwbGUKCSAgaGVscCBvcHRpb25zIHdpdGggb25lIGNvbW1hbmQgbGluZS4gIE91dHB1dCBmaWxlcyBjYW4gbm93IGFsc28gYmUKCSAgc3BlY2lmaWVkIGZvciB0aGUgaGVscCBvcHRpb25zLgoKMjAwMy0wNy0wNyAyMjo0MSAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFUlI6IFJlbW92ZWQgdXNlbGVzcyBzZXQuCgoyMDAzLTA3LTA3IDIyOjQxICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEVOSDogTWFkZSBBRERfREVQRU5ERU5DSUVTIGF2YWlsYWJsZSBmcm9tCgkgIGJvb3RzdHJhcHBlZCBjbWFrZS4gIEl0IHdpbGwgYmUgbmVlZGVkIHRvIGJ1aWxkIGNtYWtlLgoKMjAwMy0wNy0wNyAyMTo1MiAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmgsCgkgIGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsIGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUdsb2JhbEdlbmVyYXRvci5oLAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtYWtlLmN4eCwgY21ha2UuaCwKCSAgY21ha2VtYWluLmN4eDogRU5IOiBSZWdpc3RlcmVkIGdsb2JhbCBnZW5lcmF0b3JzIGFyZSBub3cga2VwdCBpbgoJICBhIHRhYmxlIGluIHRoZSBjbWFrZSBpbnN0YW5jZS4gIEFkZGVkIHN1cHBvcnQgZm9yIGRvY3VtZW50YXRpb24KCSAgd2l0aCBhIEdlbmVyYXRvcnMgc2VjdGlvbi4KCjIwMDMtMDctMDcgMTg6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBQYXJzaW5nIG9mIGFyZ3VtZW50cyBmcm9tIHN0cmluZwoJICBieSBSdW5Db21tYW5kIGJlZm9yZSBwYXNzaW5nIHRvIFByb2Nlc3MgZXhlY3V0aW9uIGRvZXMgbm90IHdvcmsKCSAgd2l0aCBiYWNrc2xhc2hlcyBpbiBwYXRoIG5hbWVzLiAgVW50aWwgdGhpcyBpcyBmaXhlZCwgd2UgY2Fubm90CgkgIHVzZSBQcm9jZXNzIGV4ZWN1dGlvbiBmcm9tIGt3c3lzLgoKMjAwMy0wNy0wNyAxNzo1MiAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEZpeCBib290c3RyYXAgdG8gaW5jbHVkZSBQcm9jZXNzVU5JWC5jCgoyMDAzLTA3LTA3IDE3OjQ3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21GaWxlQ29tbWFuZC5jeHgsIGNtRmlsZUNvbW1hbmQuaDogRU5IOgoJICBTdGFydCB3b3JraW5nIG9uIGEgZ2VuZXJhbCBmaWxlIG1hbmlwdWxhdGlvbiBjb21tYW5kCgoyMDAzLTA3LTA3IDE3OjQ1ICBhbmR5CgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGQKCSAgb3B0aW9uYWwgYXJndW1lbnQgdG8gR2V0TGluZUZyb21TdHJlYW0gd2hpY2ggY2FuIGxldCB0aGUgY2FsbGVyCgkgIGtub3cgd2hldGhlciB0aGVyZSB3YXMgYSBuZXcgbGluZSBjaGFyYWN0ZXIgYXQgdGhlIGVuZCBvZiB0aGUKCSAgbGluZSB0aGF0IHdhcyBqdXN0IHJlYWQKCjIwMDMtMDctMDcgMTM6MzYgIGFuZHkKCgkqIERvY3MvY21ha2Utc3ludGF4LnZpbTogSW5pdGlhbCBpbXBvcnQgb2YgVklNIHN5bnRheCBoaWdobGlnaHRpbmcKCSAgZmlsZQoKMjAwMy0wNy0wNyAwOTozOCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IE1hZGUgY2FsbCB0byBGb3JtYXRNZXNzYWdlIG1vcmUKCSAgcm9idXN0LgoKMjAwMy0wNy0wNyAwOToxNiAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IFVzaW5nIG5ldyBQcm9jZXNzCgkgIFNldFdvcmtpbmdEaXJlY3RvcnkgbWV0aG9kIGluc3RlYWQgb2YgbWFudWFsbHkgaW1wbGVtZW50aW5nIGl0LgoKMjAwMy0wNy0wNyAwOToxMiAga2luZwoKCSogU291cmNlL2t3c3lzLzogUHJvY2Vzcy5oLmluLCBQcm9jZXNzVU5JWC5jOiBFTkg6IEltcGxlbWVudGVkCgkgIFNldFdvcmtpbmdEaXJlY3RvcnkgbWV0aG9kLgoKMjAwMy0wNy0wNyAwOToxMCAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBFTkg6IEltcGxlbWVudGVkIFNldFdvcmtpbmdEaXJlY3RvcnkKCSAgbWV0aG9kIG9uIFdpbmRvd3MuCgoyMDAzLTA3LTA3IDA4OjQxICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogVXNpbmcga3dzeXMgUHJvY2VzcyBpbXBsZW1lbnRhdGlvbgoJICB0byBpbXBsZW1lbnQgUnVuQ29tbWFuZC4KCjIwMDMtMDctMDcgMDg6MzYgIGFuZHkKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1VOSVguYzogRU5IOiBTdGFydCB3b3JraW5nIG9uCgkgIFdvcmtpbmcgRGlyZWN0b3J5IHN1cHBvcnQKCjIwMDMtMDctMDYgMjA6NDAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRU5IOiBVc2luZyBHZXRUZW1wUGF0aCBpbnN0ZWFkIG9mCgkgIFRFTVAgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gZ2V0IGEgbG9jYXRpb24gdG8gd3JpdGUgdGhlIFdpbjl4CgkgIGZvcndhcmRpbmcgZXhlY3V0YWJsZS4KCjIwMDMtMDctMDMgMTg6MzMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogQlVHOiBBcmd1bWVudCBwYXJzZXJzIGRvIG5vdCBhbHdheXMKCSAgcmVtb3ZlIGRvdWJsZSBxdW90ZXMgZnJvbSBhcm91bmQgYW4gYXJndW1lbnQgdGhhdCBoYXMgbm8gc3BhY2VzLgoKMjAwMy0wNy0wMyAxMjo1MCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgbGlua2VyIGZsYWdzCgoyMDAzLTA3LTAzIDExOjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEVOSDogbnVsbCB0ZXJtaW5hdGUgYXQgdGhlIGVuZAoJICBvZiB0aGUgbGlzdAoKMjAwMy0wNy0wMyAwNzo1OCAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBCVUc6IEluc3RhbGwgdGFyZ2V0IGZvciBzdGFuZGFyZAoJICBoZWFkZXIgd3JhcHBlcnMgbXVzdCBwb2ludCBhdCB0aGUgc3RkIHN1YmRpcmVjdG9yeSBpbiB0aGUKCSAgaW5zdGFsbGF0aW9uLgoKMjAwMy0wNy0wMiAxMDo0OCAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBBZGQgcHJvcGVyIGxpbmtzIHRvIGJ1Z3RyYWNrZXIKCjIwMDMtMDctMDIgMTA6MzcgIGFuZHkKCgkqIERhcnRDb25maWcuY21ha2U6IEVOSDogQWRkIGxpbmtzIHRvIGJ1Z3RyYWNrZXIKCjIwMDMtMDctMDIgMDg6MzUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRVJSOiBBZGRlZCBjYXN0IHRvIHJlbW92ZSB3YXJuaW5nLgoJICBXZSBrbm93IHRoZSBsZW5ndGggb2YgdGhlIHN0cmluZyB3aWxsIG5vdCBiZSBiZXlvbmQgMl4zMS4KCjIwMDMtMDctMDEgMTM6MzIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9CYXNlNjQuYzogRVJSOiBBZGRlZCBjYXN0cyB0byByZW1vdmUgdHlwZSBjb252ZXJzaW9uCgkgIHdhcm5pbmdzLiAgUG9pbnRlciBkaWZmZXJlbmNlcyBjYW4gYmUgNjQtYml0LCBidXQgdW5zaWduZWQgbG9uZwoJICBpcyAzMi1iaXQgb24gbWFueSBwbGF0Zm9ybXMuCVdlIGtub3cgd2UgYXJlIG5vdCB0cmF2ZXJzaW5nIG1vcmUKCSAgZGF0YSB0aGFuIGNhbiBiZSBoYW5kbGVkIGJ5IGFuIHVuc2lnbmVkIGxvbmcsIHRob3VnaCwgYmVjYXVzZSB0aGUKCSAgbGVuZ3RoIGFyZ3VtZW50IGlzIGFuIHVuc2lnbmVkIGxvbmcuCgoyMDAzLTA3LTAxIDEzOjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBQcm9jZXNzRndkOXguYywgUHJvY2Vzc1dpbjMyLmM6IEVSUjogU2hvdWxkIHVzZSAlcAoJICB0byBwYXNzIEhBTkRMRSB2YWx1ZXMgb24gYSBjb21tYW5kIGxpbmUsIG5vdCAlZC4KCjIwMDMtMDctMDEgMTM6MjcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVSUjogUmVtb3ZlZCB1bnJlYWNoYWJsZSBjb2RlLgoKMjAwMy0wNy0wMSAxMTo0MCAga2luZwoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmguaW4sIFByb2Nlc3MuaC5pbjogRVJSOiBSZWR1Y2VkCgkgIHJlcXVpcmVtZW50cyBvbiBwcmVwcm9jZXNzb3IgZm9yIGV4cG9ydCBtYWNybyBkdWUgdG8gbGltaXRhdGlvbnMKCSAgb2YgTWFjIHByZXByb2Nlc3Nvci4JVGhlIHByZXByb2Nlc3NvciBjYW4gYmUgZml4ZWQgYnkgdXNpbmcKCSAgLW5vLWNwcC1wcmVjb21wLCBidXQgd2UgZG9uJ3Qgd2FudCB0byByZXF1aXJlIHRoYXQgb3B0aW9uIGZvcgoJICBldmVyeSBzb3VyY2UgZmlsZSB0aGF0IGluY2x1ZGVzIG91ciBoZWFkZXJzLgoKMjAwMy0wNy0wMSAwODo1NCAga2luZwoKCSogU291cmNlL2t3c3lzL0VuY29kZUV4ZWN1dGFibGUuYzogRVJSOiBBZGRlZCBleHBsaWNpdCBjYXN0IGZyb20KCSAgc2l6ZV90IHRvIGludC4gIFdlIGtub3cgdGhhdCB0aGUgZGF0YSB3aWxsIG5vdCBiZSBvdXQgb2YgcmFuZ2UuCgoyMDAzLTA2LTMwIDEwOjUwICBhbmR5CgoJKiBib290c3RyYXA6IEVSUjogRml4IGNoYW5nZXMgaW4ga3dzeXMgZm9yIENvbmZpZ3VyZS5oIGFuZAoJICBTdGFuZGFyZEluY2x1ZGVzLmh4eAoKMjAwMy0wNi0zMCAxMDo0NCAgYW5keQoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmMsIFByb2Nlc3NGd2Q5eC5jLCBQcm9jZXNzV2luMzIuYzogRVJSOgoJICBSZW1vdmUgd2FybmluZ3Mgb24gV2luZG93cwoKMjAwMy0wNi0zMCAxMDozMCAga2luZwoKCSogU291cmNlL2t3c3lzLzogQmFzZTY0LmguaW4sIENNYWtlTGlzdHMudHh0LCBDb25maWd1cmUuaC5pbiwKCSAgRGlyZWN0b3J5LmN4eCwgRGlyZWN0b3J5Lmh4eC5pbiwgRW5jb2RlRXhlY3V0YWJsZS5jLAoJICBQcm9jZXNzLmguaW4sIFByb2Nlc3NXaW4zMi5jLCBSZWd1bGFyRXhwcmVzc2lvbi5jeHgsCgkgIFJlZ3VsYXJFeHByZXNzaW9uLmh4eC5pbiwgU3lzdGVtVG9vbHMuaHh4LmluOiBFTkg6IEFkZGVkIERMTAoJICBzdXBwb3J0LgoKMjAwMy0wNi0zMCAxMDoxMiAgbWFydGluawoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC9DTWFrZUxpc3RzLnR4dDogbW9kaWZpZWQgY29kZSB0byBtYXRjaCBjbWFrZQoJICBtb2RlCgoyMDAzLTA2LTMwIDEwOjA3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3RhbmRhcmRJbmNsdWRlcy5oeHguaW46IFJlbW92aW5nIG9sZCBmaWxlLgoKMjAwMy0wNi0zMCAwOTo1NiAgYW5keQoKCSogYm9vdHN0cmFwOiBFTkg6IEZpeCBjaGVja2luZyBmb3IgQysrIGNvbXBpbGVyIG9uIE1hYywgcmVtb3ZlCgkgIGNtQ29uZmlndXJlLmgudG1wLCBzbyB0aGF0IG5vdGhpbmcgYmFkIGNhbiBoYXBwZW4gaWYgY29uZmlndXJlIGlzCgkgIGludGVycnVwdGVkLCByZXBvcnRzIGt3c3lzIHNvdXJjZXMgaW4gY21Db25maWd1cmUuaAoKMjAwMy0wNi0zMCAwODo0OSAga2luZwoKCSogU291cmNlL2t3c3lzL0Jhc2U2NC5oLmluOiBFTkg6IFVwZGF0ZWQgY29tbWVudHMgZm9yIGRveHlnZW4uCgoyMDAzLTA2LTMwIDA4OjQ4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQmFzZTY0LmM6IEJVRzogU2hvdWxkIGRlZmluZSBLV1NZU19JTl9CQVNFNjRfQywgbm90CgkgIEtXU1lTX0lOX1BST0NFU1NfQy4KCjIwMDMtMDYtMzAgMDg6NDggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBVc2luZyBGT1JFQUNIIHRvIHNob3J0ZW4KCSAgZW5hYmxpbmcgb2YgQyBjb21wb25lbnRzLgoKMjAwMy0wNi0yOSAyMTo0MiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9rd3N5cy9CYXNlNjQuYywgU291cmNlL2t3c3lzL0Jhc2U2NC5oLmluLAoJICBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVOSDogSW5pdGlhbCBpbXBvcnQgb2YgQmFzZTY0CgoyMDAzLTA2LTI5IDIwOjMwICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGluZyBidWlsZCBvZiBrd3N5cydzIFByb2Nlc3MgY2xhc3MuCgkgIFRoaXMgd2lsbCBiZSBuZWVkZWQgZm9yIGN0ZXN0LgoKMjAwMy0wNi0yOSAyMDoyMCAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBFTkg6IEFkZGVkIGNvbW1lbnQtcmVnaW9uIHN1cHBvcnQuCgoyMDAzLTA2LTI3IDA5OjQ4ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogRVJSOiBEaXNhYmxpbmcgbXVsdGlwbHkgZGVmaW5lZCBzeW1ib2xzIHdhcm5pbmcKCSAgZm9yIGxpbmtpbmcgZXhlY3V0YWJsZXMgb24gSVJJWC4gIFRoZSBjb21waWxlcidzIHByZWxpbmtlciBkb2VzCgkgIG5vdCBhZGQgd2VhayBzeW1ib2xzLCBzbyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyBhcmUgZHVwbGljYXRlZC4KCjIwMDMtMDYtMjcgMDg6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBmaXggY29tcGlsZXIgd2FybmluZ3MKCjIwMDMtMDYtMjYgMTM6MzkgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBVcGRhdGVkIGRvY3VtZW50YXRpb24gdG8KCSAgZGVzY3JpYmUgZW5hYmxpbmcgb2YgY2xhc3Nlcy4KCjIwMDMtMDYtMjYgMDk6NDQgIGFuZHkKCgkqIGJvb3RzdHJhcDogRU5IOiBBdHRlbXB0IHRvIGhhbmRsZSBPU0YgY29tcGlsZXIgZmxhZ3MKCjIwMDMtMDYtMjUgMDk6MzIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy90ZXN0UHJvY2Vzcy5jOiBFUlI6IEZpeGVkIHVzZSBvZiBub24tY29uc3RhbnQKCSAgaW5pdGlhbGl6ZXIuCgoyMDAzLTA2LTI1IDA4OjI5ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvRGlyZWN0b3J5LmN4eDogRVJSOiBGaXhlZCBjb252ZXJzaW9uIHdhcm5pbmcuCgoyMDAzLTA2LTI0IDIxOjM3ICBsb3JlbnNlbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBwb3J0YWJpbGl0eS4KCjIwMDMtMDYtMjQgMTY6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IGNvbXBpbGVyIGZpeAoKMjAwMy0wNi0yNCAxNToyNCAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IG1vdmVkIGRlcGVuZCBjb2RlIGludG8KCSAgY21UYXJnZXQKCjIwMDMtMDYtMjQgMTU6MjEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGt3c3lzL1N5c3RlbVRvb2xzLmN4eDoKCSAgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnRzCgoyMDAzLTA2LTI0IDE1OjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWNyb0NvbW1hbmQuY3h4OiBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMKCjIwMDMtMDYtMjQgMTU6MTAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogbW92ZWQgZnVuY3Rpb24gaW50byBjbVRhcmdldAoKMjAwMy0wNi0yNCAxMDoxNiAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRVJSOiBSZW5hbWVkCgkgIHN1cGVyY2xhc3MgdHlwZWRlZiBmcm9tIFN5c3RlbVRvb2xzIHRvIFN1cGVyY2xhc3MgdG8gYXZvaWQKCSAgY29uZmxpY3QgYWNyb3NzIHBsYXRmb3Jtcy4KCjIwMDMtMDYtMjQgMDk6MDIgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVSUjogc3RkLT5rd3N5c19zdGQuCgoyMDAzLTA2LTI0IDA4OjE5ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5oOiBFUlI6IFR5cGVkZWZzIGFyZSBub3QgaW5oZXJpdGVkIG9uIFNHSQoJICBhbmQgQm9ybGFuZC4KCjIwMDMtMDYtMjMgMTY6MjYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRm9yRWFjaENvbW1hbmQuY3h4LCBjbU1hY3JvQ29tbWFuZC5jeHg6IHBlcmYKCSAgaW1wcm92ZW1lbnQKCjIwMDMtMDYtMjMgMTY6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUN1c3RvbUNvbW1hbmQuaDogcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQKCjIwMDMtMDYtMjMgMTQ6MTAgIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUNUZXN0LmN4eCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LCBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eCwKCSAgU291cmNlL2NtTG9hZENhY2hlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LCBTb3VyY2UvY21NYWtlRGVwZW5kLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBTb3VyY2UvY21SZWd1bGFyRXhwcmVzc2lvbi5oLCBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VHcm91cC5oLCBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21ha2V0ZXN0LmN4eDogRU5IOiBNZXJnZWQgdXNlIG9mIHRoZSBrd3N5cwoJICBSZWd1bGFyRXhwcmVzc2lvbiBjbGFzcyBpbnN0ZWFkIG9mIGNtUmVndWxhckV4cHJlc3Npb24uCgoyMDAzLTA2LTIzIDE0OjA1ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUmVndWxhckV4cHJlc3Npb24uaHh4LmluOiBFUlI6IEZpeGVkIGRvY3VtZW50YXRpb24KCSAgdG8gcmVhZCBSZWd1bGFyRXhwcmVzc2lvbiBpbnN0ZWFkIG9mIGNtUmVndWxhckV4cHJlc3Npb24uCgoyMDAzLTA2LTIzIDExOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiByZW1vdmVkIHNvbWUgbm8gbG9uZ2VyIHJlcXVpcmVkIGNvZGUKCjIwMDMtMDYtMjMgMDg6NTggIGtpbmcKCgkqIENNYWtlTGlzdHMudHh0LCBib290c3RyYXAsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbURpcmVjdG9yeS5jeHgsCgkgIFNvdXJjZS9jbURpcmVjdG9yeS5oLCBTb3VyY2UvY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmN4eCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogTWVyZ2VkCgkgIHVzZSBvZiBrd3N5cyBsaWJyYXJ5LgoKMjAwMy0wNi0yMyAwODo1OCAga2luZwoKCSogTWFrZWZpbGUuaW4sIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvTWFrZWZpbGUuaW46IEVOSDoKCSAgQ29uZmlndXJlIHNjcmlwdCBub3cganVzdCBpbnZva2VzIGJvb3RzdHJhcCBzY3JpcHQuCgoyMDAzLTA2LTIzIDA4OjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBSZW1vdmVkCgkgIGNtYWtlLXNwZWNpZmljIGZ1bmN0aW9ucy4KCjIwMDMtMDYtMjMgMDg6NTYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogQlVHOiBOZWVkIGluY2x1ZGUgcmVndWxhciBleHByZXNzaW9uCgkgIHRvIG1hdGNoIGFsbCBmaWxlcy4KCjIwMDMtMDYtMjEgMTE6NTcgIGFuZHkKCgkqIGJvb3RzdHJhcDogRU5IOiBBZGQgY29weXJpZ2h0LCBjbUNvbmZpZ3VyZS5oIGlzIG5vdyB0b3VjaGVkIG9ubHkKCSAgd2hlbiBpdCBpcyBtb2RpZmllZCwgcmVtb3ZlIHNvbWUgc3BhY2VzIGZyb20gb3V0cHV0LCBhZGQKCSAgcHJvY2VkdXJlIHRoYXQgY29waWVzIGZpbGUgYW5kIHJlcGxhY2VzIGF0c3RyaW5nIHdpdGggYW5vdGhlcgoJICBzdHJpbmcKCjIwMDMtMDYtMjAgMjA6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogZml4IHRvIGV4cGFuZCB2YXJpYWJsZXMgaW4gY3VzdG9tIGNvbW1hbmQKCSAgb3V0cHV0cyBhbmQgbWFpbiBkZXBlbmRlbmNpZXMKCjIwMDMtMDYtMjAgMTQ6MTAgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9DTWFrZUxpc3RzLnR4dDogRU5IOiBDaGFuZ2VkIGNvbmZpZ3VyYXRpb24gb2YgaGVhZGVyCgkgIGRpcmVjdG9yeSB0byBzcGVjaWZ5IGl0IHdpdGhvdXQgdGhlIG5hbWVzcGFjZS4KCjIwMDMtMDYtMjAgMTQ6MTAgIGhvZmZtYW4KCgkqIERvY3MvY21ha2UtbW9kZS5lbDogQlVHOiBmaXggaGlnaGxpZ2h0IGZvciBjb21tZW50cyBpbiBtdWx0aXBsZQoJICBidWZmZXJzCgoyMDAzLTA2LTIwIDEzOjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IGJ1ZyBpbiBub3QgZXhwYW5kaW5nIHZhcmlhYmxlcyBmb3IgY3VzdG9tCgkgIGNvbW1hbmRzIGluIHRhcmdldHMKCjIwMDMtMDYtMjAgMTE6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogbWlub3IgcGVyZiBpbXByb3ZlbWVudAoKMjAwMy0wNi0xOSAxODo1NyAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sCgkgIFJlZ3VsYXJFeHByZXNzaW9uLmh4eC5pbiwgU3lzdGVtVG9vbHMuaHh4LmluLAoJICBrd3N5c19zdGRfZnN0cmVhbS5oLmluLCBrd3N5c19zdGRfaW9zZndkLmguaW4sCgkgIGt3c3lzX3N0ZF9pb3N0cmVhbS5oLmluLCBrd3N5c19zdGRfc3N0cmVhbS5oLmluOiBFTkg6IEFkZGVkIGZ1bGwKCSAgY29uZmlndXJhdGlvbiBvZiBuYW1lc3BhY2UgZXZlbiBmb3IgQ29uZmlndXJlLmh4eCBtYWNybwoJICBkZWZpbml0aW9ucy4KCjIwMDMtMDYtMTkgMTY6MjMgIGhvZmZtYW4KCgkqIERvY3MvY21ha2UtbW9kZS5lbDogYWRkIGEgY29tbWVudAoKMjAwMy0wNi0xOSAxNTowNSAga2luZwoKCSogRG9jcy86IGNtYWtlLWluZGVudC52aW0sIGNtYWtlLW1vZGUuZWw6IEFkZGVkIGNvcHlyaWdodC4KCjIwMDMtMDYtMTkgMTQ6MzcgIGFuZHkKCgkqIERvY3MvY21ha2UtaW5kZW50LnZpbTogSW5pdGlhbCBpbXBvcnQ6IGluZGVudGF0aW9uIGZpbGUgZm9yIHZpbQoKMjAwMy0wNi0xOSAxNDozMCAga2luZwoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBNaW5vciB0d2Vha3MgZm9yIGFuYWwgY2FzZXMgb2YgaW5kZW50YXRpb24uCgoyMDAzLTA2LTE5IDE0OjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IGJ1ZyBmaXggZm9yIGZpbmRpbmcgc291cmNlIGZpbGVzCgoyMDAzLTA2LTE5IDE0OjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBuZXcgZnVuY3Rpb24KCjIwMDMtMDYtMTkgMTQ6MTcgIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogQlVHOiBEb24ndCBvcGVuIGEgYmxvY2sgaWYgYSBjb21tYW5kIHN0YXJ0cwoJICB3aXRoIElGIGluIGl0cyBuYW1lLgoKMjAwMy0wNi0xOSAxMzozOCAgbWFydGluawoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBmaXggdG8gdXNlIGZ1bmN0aW9uLW5hbWUKCjIwMDMtMDYtMTkgMTM6MjMgIGtpbmcKCgkqIERvY3MvY21ha2UtbW9kZS5lbDogRml4ZWQgc2xvdyByZWdleCBmb3IgaW5kZW50YXRpb24uCgoyMDAzLTA2LTE5IDExOjExICBraW5nCgoJKiBEb2NzL2NtYWtlLW1vZGUuZWw6IEVOSDogV3JvdGUgbW9yZSByb2J1c3QgcmVndWxhciBleHByZXNzaW9ucwoJICBmb3IgaW5kZW50aW5nLgoKMjAwMy0wNi0xOSAxMTowNyAgbWFydGluawoKCSogRG9jcy9jbWFrZS1tb2RlLmVsOiBlbWFjcyBtb2RlCgoyMDAzLTA2LTE4IDE3OjI4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMva3dzeXNIZWFkZXJEdW1wLnBsOiBUb29sIHRvIGR1bXAgbWFjcm9zIGZvcgoJICByZWRlZmluaW5nIEMgaGVhZGVyIG5hbWVzcGFjZXMuCgoyMDAzLTA2LTE4IDE3OjI3ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgdGVzdFByb2Nlc3MuYzogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBQcm9jZXNzIGltcGxlbWVudGF0aW9uLgoKMjAwMy0wNi0xOCAxNzoyNyAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IE11c3QgcmV0dXJuIEV4Y2VwdGlvbiBzdGF0dXMKCSAgY29ycmVjdGx5LgoKMjAwMy0wNi0xOCAxNzoxOSAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NVTklYLmM6IFJlbW92ZWQgRXhjZXB0aW9uX0Fib3J0IGJlY2F1c2UgdGhlcmUKCSAgaXMgbm8gd2luZG93cyB2ZXJzaW9uLiAgQWxzbyBtYWRlIEV4aXRWYWx1ZSBjb25zaXN0ZW50IHdpdGgKCSAgd2luZG93cyB3aGVuIGEgc2lnbmFsIGtpbGxzIHRoZSBwcm9jZXNzLgoKMjAwMy0wNi0xOCAxNzoxOSAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3MuaC5pbjogUmVtb3ZlZCBFeGNlcHRpb25fQWJvcnQgYmVjYXVzZSB0aGVyZQoJICBpcyBubyB3aW5kb3dzIHZlcnNpb24uICBBbHNvIHJlbW92ZWQgc3RyYXkgdHlwZWRlZiBrZXl3b3Jkcy4KCjIwMDMtMDYtMTggMTc6MDYgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IFByb2Nlc3MuaC5pbiwgUHJvY2Vzc1VOSVguYywgUHJvY2Vzc1dpbjMyLmMsCgkgIHRlc3QxLmN4eDogRU5IOiBBZGRlZCBkb2N1bWVudGF0aW9uIHRvIGludGVyZmFjZS4gIEZpbmlzaGVkCgkgIHByb2Nlc3MgZXhpdCBjb2RlIGludGVycHJldGF0aW9uIGltcGxlbWVudGF0aW9uIHByb3RvdHlwZS4KCjIwMDMtMDYtMTggMTE6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuaDogcmVtb3ZlIG5vbi1odG1sIHNhZmUgc3R1ZmYKCjIwMDMtMDYtMTggMDk6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBmaXggbm90IGJlaW5nIGFibGUgdG8gZmluZCBnZW5lcmF0ZWQKCSAgZmlsZXMgaW4gdGhlIGJpbmFyeSB0cmVlCgoyMDAzLTA2LTE3IDE3OjEzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBmaXggZm9yIGJhZCBhc3N1bXB0aW9uCgkgIG9uIGN1c3RvbSBydWxlcwoKMjAwMy0wNi0xNyAxNjo1NCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogZml4IGZvciBiYWQgYXNzdW1wdGlvbgoKMjAwMy0wNi0xNyAxNToxMyAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogZml4IGZvciBiYWQgYXNzdW1wdGlvbgoKMjAwMy0wNi0xNiAxMDoyMCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogZml4IGZvciB2czYgcnVsZSBmaWxlcwoKMjAwMy0wNi0xMyAxNjo1OSAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IEZpeGVkIHRyYW5zbGF0aW9uIG9mIHJlbGF0aXZlIHBhdGgKCSAgbmFtZXMgdG8gZnVsbCBwYXRoIG5hbWVzLgoKMjAwMy0wNi0xMyAxNjo0NyAga2luZwoKCSogU291cmNlL2NtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5jeHg6IEJVRzogRml4ZWQgY3Jhc2gKCSAgd2hlbiBzb3VyY2UgZmlsZSBjYW5ub3QgYmUgbG9va2VkIHVwIGNvcnJlY3RseS4KCjIwMDMtMDYtMTMgMTQ6MTUgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogRml4ZWQgY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZgoJICBDTWFrZUxpc3RzLnR4dCBmaWxlIGluIHRvcC1sZXZlbCBzb3VyY2UgZGlyZWN0b3J5IGJlZm9yZSBmaXJzdAoJICBjb25maWd1cmUuCgoyMDAzLTA2LTEyIDE2OjQzICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IEJVRzogU3RhY2sgc2l6ZSBpbgoJICBnZW5lcmF0ZWQgcHJvZ3JhbXMgc2hvdWxkIGJlIDEwIG1lZywgbm90IDI1Ni4KCjIwMDMtMDYtMTIgMTY6MTggIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzV2luMzIuYzogRVJSOiBBZGRlZCBlcnJvciBjaGVjayBmb3IgbWFsbG9jIG9mCgkgIHByb2Nlc3MgY29udHJvbCBzdHJ1Y3R1cmUuCgoyMDAzLTA2LTEyIDE1OjU4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVSUjogVXNpbmcgR2V0Q3VycmVudFByb2Nlc3NJZAoJICBpbnN0ZWFkIG9mIF9nZXRwaWQgc28gd2UgZG9uJ3QgbmVlZCB0byBpbmNsdWRlIHRoZSBzeXN0ZW0KCSAgcHJvY2Vzcy5oIGhlYWRlci4gIEFsc28gY3JlYXRpbmcgcGlwZSB0aHJlYWRzIHdpdGggMUsgc3RhY2tzIHRvCgkgIHNhdmUgbWVtb3J5LgoKMjAwMy0wNi0xMSAxMTowMCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFVuaW5pdGlhbGl6ZWQKCSAgc3RkOjpzdHJpbmcgcmV0dXJucyBiYWQgcG9pbnRlcnMgZnJvbSBjX3N0cigpIG9uIHNvbWUgcGxhdGZvcm1zLgoKMjAwMy0wNi0xMSAxMDoyMSAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEVYRUNVVEFCTEVfT1VUUFVUX1BBVEggaXMgbm93CgkgIGFsd2F5cyBzZXQgdG8gZ2V0IGFyb3VuZCBjbWFrZSAxLjYuNyBkZXBlbmRlbmN5IHByb2JsZW1zLiAgTW92ZWQKCSAgZGVmYXVsdCBoZWFkZXIgZGlyZWN0b3J5IGluc2lkZSB0aGUgYnVpbGQgdHJlZSBpbnN0ZWFkIG9mIHVwIG9uZQoJICBsZXZlbC4gIFVzZXIgcHJvamVjdHMgY2FuIG5vdyBzZXQgdGhlIGhlYWRlciBkaXJlY3RvcnkuCgoyMDAzLTA2LTExIDEwOjExICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlOiBFTkg6IGFkZCBwcm9jZXNzb3IgdHlwZSBvZgoJICB3aW4zMgoKMjAwMy0wNi0xMSAxMDowNyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLCBDTWFrZVN5c3RlbS5jbWFrZS5pbjogRU5IOgoJICBhZGQgQ01BS0VfU1lTVEVNX1BST0NFU1NPUgoKMjAwMy0wNi0xMSAwOTo0NSAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFUlI6IEFkZGVkIGN1c3RvbSBjb21tYW5kIHRoYXQgdGFrZXMKCSAgYWR2YW50YWdlIG9mIG5ldyBzeW50YXguCgoyMDAzLTA2LTExIDA5OjQ0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUHJvY2Vzc1dpbjMyLmM6IEVSUjogUmVtb3ZlZCB1bnVzZWQgdmFyaWFibGVzLgoKMjAwMy0wNi0xMSAwOTo0NCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFdoZW4gZXhlY3V0YWJsZQoJICBvdXRwdXQgcGF0aCBpcyBub3Qgc2V0LCB3ZSBzdGlsbCBuZWVkIHRvIGdlbmVyYXRlIHRoZSBmdWxsIHBhdGgKCSAgdG8gdGhlIGV4ZWN1dGFibGUgdGFyZ2V0LgoKMjAwMy0wNi0xMCAxNzozOSAga2luZwoKCSogU291cmNlL2t3c3lzL0NNYWtlTGlzdHMudHh0OiBFUlI6IEFkZGVkIHdvcmstYXJvdW5kIGZvciBjbWFrZQoJICAxLjYuNyBidWcgaW4gYm9ybGFuZCBtYWtlZmlsZSBnZW5lcmF0b3IuCgoyMDAzLTA2LTEwIDE2OjU2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byBhZGQgQU5TSSBDIGZsYWdzIGZvcgoJICBzb21lIHBsYXRmb3Jtcy4KCjIwMDMtMDYtMTAgMTY6NTUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9Qcm9jZXNzVU5JWC5jOiBFUlI6IEFkZGVkIHN0YXRpYyBzcGVjaWZpZXIgdG8gc3RhdGljCgkgIGZ1bmN0aW9uIGRlZmluaXRpb25zIHRvIHF1aWV0IHdhcm5pbmdzIG9uIEhQIGNvbXBpbGVyLgoKMjAwMy0wNi0xMCAxNjoxNSAga2luZwoKCSogU291cmNlL2t3c3lzL1Byb2Nlc3NXaW4zMi5jOiBCVUc6IERvbid0IHNob3cgYSBjb25zb2xlCgkgIGFwcGxpY2F0aW9uJ3Mgd2luZG93LgoKMjAwMy0wNi0xMCAxNTo1MCAga2luZwoKCSogU291cmNlL2t3c3lzL3Rlc3QxLmN4eDogRU5IOiBBZGRlZCB1c2Ugb2YgcHJvY2VzcyBleGVjdXRpb24uCgoyMDAzLTA2LTEwIDE1OjQ2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgRW5jb2RlRXhlY3V0YWJsZS5jLCBQcm9jZXNzLmguaW4sCgkgIFByb2Nlc3NGd2Q5eC5jLCBQcm9jZXNzVU5JWC5jLCBQcm9jZXNzV2luMzIuYzogRU5IOiBBZGRlZCBQcm9jZXNzCgkgIGV4ZWN1dGlvbiBpbXBsZW1lbnRhdGlvbi4KCjIwMDMtMDYtMTAgMTU6NDUgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9TeXN0ZW1Ub29scy5jeHg6IEVOSDogTW92ZWQgZGlzYWJsaW5nIG9mIHdhcm5pbmdzIHRvCgkgIGFmdGVyIGt3c3lzIGluY2x1ZGVzLgoKMjAwMy0wNi0xMCAxNTo0NCAga2luZwoKCSogU291cmNlL2t3c3lzL2t3c3lzX3N0ZC5oLmluOiBFTkg6IERpc2FibGVkIHdhcm5pbmcgNDc4Ni4KCjIwMDMtMDYtMDYgMDk6NTggIGFuZHkKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogQlVHOiBXaGVuIFZUSyBpcyBub3QgZm91bmQsIGl0IHNob3VsZCBiZQoJICBmYXRhbCBlcnJvcgoKMjAwMy0wNi0wNiAwOTo1NyAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogQlVHOiBXaGVuIG9ubHkgbG9hZGluZwoJICBjY21ha2UgY2FjaGUsIGRvIG5vdCBhbGxvdyBnZW5lcmF0ZQoKMjAwMy0wNi0wNiAwOTowNiAgbWFydGluawoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiB1bmRpZCBjaGFuZ2UgYmVjYXVzZSBvdGhlcgoJICBjaGFuZ2VzIG1ha2UgaXQgbm8gbG9uZ2VyIG5lY2Nlc2FyeQoKMjAwMy0wNi0wNSAxNjo0NSAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogbW9yZSBjdXN0b20gY29tbWFuZAoKMjAwMy0wNi0wNSAxNjoxMiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBtb3JlIGNoYW5nZXMgdG8gc3VwcG9ydCBmdWxsIHBhdGhzCgoyMDAzLTA2LTA1IDE1OjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IHBlcmYgaW1wcm92ZW1lbnQKCjIwMDMtMDYtMDUgMTU6MTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogbW9yZSBjaGFuZ2VzIHRvIGhhbmRsZSBmdWxsIHBhdGhzCgkgIGNvcnJlY3RseQoKMjAwMy0wNi0wNSAxNDo0OCAgbWFydGluawoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogbWlub3IgdXBkYXRlIGZvciBuZXcgY3VzdG9tCgkgIGNvbW1hbmRzCgoyMDAzLTA2LTA1IDE0OjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eDoKCSAgbW9yZSBjcmF6dCBjaGFuZ2VzIHNvdXJjZSBmaWxlcyBub3cgbXVzdCBtYXRjaCB3aXRoIGZ1bGwgcGF0aAoKMjAwMy0wNi0wNSAxNDozNyAgbWFydGluawoKCSogU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4OiB1cGRhdGVkIGZvciBuZXcgY3VzdG9tIGNvbW1hbmQKCjIwMDMtMDYtMDUgMTQ6MzcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogbWlub3IgZml4CgoyMDAzLTA2LTA0IDE5OjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IGhvcGVmdWwgZml4IGZvciBiYWNrd2FyZHMgY29tcGF0CgoyMDAzLTA2LTA0IDE4OjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBtaW5vciBmaXgKCjIwMDMtMDYtMDQgMTY6MDYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogdHJpY2t5IGZpeCBmb3IgYmFja3dhcmRzIGNvbXBhdAoKMjAwMy0wNi0wNCAxNDoyNSAgaG9mZm1hbgoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC86IGdlbmVyYXRvci5jeHgsIHdyYXBwZXIuY3h4OiBtaW5vciBmaXhlcwoKMjAwMy0wNi0wNCAxNDowMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBiZXR0ZXIgZXJyb3IgcmVwb3J0aW5nCgoyMDAzLTA2LTA0IDE0OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogYWxsb3cgZHVwbGljYXRlIGNvbW1hbmRzIHdpdGggdGhlCgkgIHNhbWUgb3V0cHV0IHRvIGJlIHJlZHVjZWQgYXV0b21hdGljYWxseSB0byBvbmUgY29tbWFuZAoKMjAwMy0wNi0wNCAxMzo1NSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogYnVnIGZpeCBmb3IgdnM2IGN1c3RvbQoJICBjb21tYW5kcwoKMjAwMy0wNi0wNCAxMzo1NCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL1V0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGU6IGZpeCBmb3IgbmV3IGN1c3RvbSBjb21tYW5kcwoKMjAwMy0wNi0wNCAxMzo0MiAgaG9mZm1hbgoKCSogU291cmNlLzogY21DdXN0b21Db21tYW5kLmN4eCwgY21DdXN0b21Db21tYW5kLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHg6IEVOSDogYWxsb3cKCSAgZHVwbGljYXRlIGNvbW1hbmRzIHdpdGggdGhlIHNhbWUgb3V0cHV0IHRvIGJlIHJlZHVjZWQKCSAgYXV0b21hdGljYWxseSB0byBvbmUgY29tbWFuZAoKMjAwMy0wNi0wNCAxMTo0NiAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaDogY29tbWFuZCBzaG91bGQgbnRvIGJlCgkgIGluaGVyaXRlZAoKMjAwMy0wNi0wNCAxMDo0NiAgaG9mZm1hbgoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IG1pbm9yIGZpeAoKMjAwMy0wNi0wNCAxMDoxMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogYnVnIGZpeAoKMjAwMy0wNi0wNCAwOTowMiAgaG9mZm1hbgoKCSogVGVzdHMvQ3VzdG9tQ29tbWFuZC86IENNYWtlTGlzdHMudHh0LCBnZW5lcmF0b3IuYywgZ2VuZXJhdG9yLmN4eCwKCSAgd3JhcHBlci5jLCB3cmFwcGVyLmN4eDogZml4ZXMgZm9yIEhQCgoyMDAzLTA2LTA0IDA5OjAwICBraW5nCgoJKiBib290c3RyYXA6IEVSUjogQ2Fubm90IHVzZSBpb3N0cmVhbS5oIGZvciBzdHJpY3QgQysrIGNvbXBpbGVyCgkgIHNhbml0eSBjaGVjay4gIFVzaW5nIGEgc21hbGwgY2xhc3MgaW5zdGVhZC4KCjIwMDMtMDYtMDQgMDg6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBjb21waWVsciB3YXJuaW5ncwoKMjAwMy0wNi0wNCAwODo0MCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBjb21waWVsciBlcnJvcnMgb24gY29tbwoKMjAwMy0wNi0wMyAxNDo1NSAgbWFydGluawoKCSogU291cmNlLzogY21DdXN0b21Db21tYW5kLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVNvdXJjZUdyb3VwLmN4eDogd2FybmluZyBmaXhlcwoKMjAwMy0wNi0wMyAxNDo0NSAgaG9mZm1hbgoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBFTkg6IGFkZCBhbGwgdGFyZ2V0cyBmb3IgZGFzaGJvYXJkIGJ1aWxkCgkgIHR5cGVzCgoyMDAzLTA2LTAzIDEwOjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmg6IGJldHRlciBkb2NzCgoyMDAzLTA2LTAzIDEwOjMzICBtYXJ0aW5rCgoJKiBUZXN0cy9DdXN0b21Db21tYW5kLzogQ01ha2VMaXN0cy50eHQsIGRvYzEudGV4LCBmb28uaW4sCgkgIGdlbmVyYXRvci5jLCB3cmFwcGVyLmMsIHdyYXBwZWQuaDogbmV3IHRlc3QKCjIwMDMtMDYtMDMgMTA6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLCBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgY21DUGx1Z2luQVBJLmN4eCwgY21DUGx1Z2luQVBJLmgsCgkgIGNtQ3VzdG9tQ29tbWFuZC5jeHgsIGNtQ3VzdG9tQ29tbWFuZC5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZS5oLAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oLCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbVRhcmdldC5oOiB5aWtlcyBhZGRlZCBuZXcgY3VzdG9tIGNvbW1hbmQKCSAgc3VwcG9ydAoKMjAwMy0wNi0wMiAxNjozNyAgbWFydGluawoKCSogRG9jcy86IENNYWtlMDQucnRmLCBDTWFrZTEycDIucnRmLCBDTWFrZTE0LnJ0ZiwgQ01ha2UxNi5ydGY6IGFkZAoJICByZWxlYXNlIGRvY3MgdG8gY3ZzCgoyMDAzLTA1LTI5IDE1OjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5jeHg6IG1pbm9yIGJ1ZyBmaXgKCjIwMDMtMDUtMjkgMTE6MTQgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LCBjbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgY21DdXJzZXNNYWluRm9ybS5oOiBFTkg6IE9uIGVudm9jYXRpb24gb2YgY2NtYWtlIGNoZWNrIGlmCgkgIGRpcmVjdG9yaWVzIGFyZSBjb3JyZWN0LCBidXQgZG8gbm90IHJlcnVuIGNvbmZpZ3VyZQoKMjAwMy0wNS0yOSAxMToxNCAgYW5keQoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFic3RyYWN0IHByZSBjb25maWd1cmUgY2hlY2sgaW4KCSAgYSBzZXBhcmF0ZSBtZXRob2QKCjIwMDMtMDUtMjkgMDk6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbVJlZ3VsYXJFeHByZXNzaW9uLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IHJlbW92ZQoJICB3YXJuaW5ncyBmcm9tIGJvcmxhbmQgNiBjb21waWxlcgoKMjAwMy0wNS0yOCAxNTo1MiAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jY21ha2UuY3h4OiBFTkg6IERvIG5vdCBkbyBjb25maWd1cmUgZmlyc3QKCSAgdGltZS4gVGhpcyB3YXkgY2NtYWtlIGxvYWRzIGZhc3QuCgoyMDAzLTA1LTI4IDA5OjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21EeW5hbWljTG9hZGVyLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83MUdlbmVyYXRvci5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBDVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogUmVtb3ZlIHNvbWUgYm9ybGFuZCA2IHdhcm5pbmdzCgoyMDAzLTA1LTI4IDA3OjUzICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogRU5IOiBNb3JlIGxvY2F0aW9ucwoKMjAwMy0wNS0yNCAxMDowNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUlmQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LCBjbVRhcmdldC5jeHgsCgkgIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4OiBFTkg6IGFkZCBzdGRsaWIuaCBmb3IgcG9ydGFiaWxpdHkKCSAgdG8gYm9ybGFuZCA2CgoyMDAzLTA1LTIzIDE2OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtU3RyaW5nQ29tbWFuZC5jeHgsCgkgIGNtYWtlLmN4eDogRU5IOiBhZGQgc29tZSBpbmNsdWRlcyBmb3IgYm9ybGFuZCA2CgoyMDAzLTA1LTIzIDA5OjM1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogRU5IOiBhZGQgTERGTEFHUyBhcwoJICBhbiBpbml0aWFsIHZhbHVlIGZvciBhbGwgbGlua2VyIGZsYWdzLCBnb29kIGZvciAtNjQKCjIwMDMtMDUtMTkgMTM6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZml4IGZvciAuZGVmIGZpbGVzIGFuZAoJICBubWFrZSBhbmQgc3BhY2VzIGluIHRoZSBwYXRoCgoyMDAzLTA1LTE2IDE2OjMzICBraW5nCgoJKiBNb2R1bGVzLzogVGVzdEZvckFuc2lGb3JTY29wZS5jeHg6IEVSUjogUmVtb3ZlZCB3YXJuaW5nIGZvcgoJICB1bnVzZWQgdmFyaWFibGUuCgoyMDAzLTA1LTE2IDE1OjIwICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBXaGVuIGJ1aWxkaW5nIGEgQwoJICBleGVjdXRhYmxlLCB3ZSBzaG91bGQgYWRkIENNQUtFX1NIQVJFRF9MSUJSQVJZX0NfRkxBR1MsIG5vdAoJICBDTUFLRV9TSEFSRURfTElCUkFSWV9MSU5LX0ZMQUdTLiAgVGhlIGxhdHRlciBpcyBhbHJlYWR5IGFkZGVkIGJ5CgkgIHRoZSBsaW5rIGxpbmUgcHJvY2VkdXJlLgoKMjAwMy0wNS0xNiAxNToxOCAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IEFJWC5jbWFrZTogQlVHOiBOZWVkIC1icnRsIHdoZW4gY3JlYXRpbmcKCSAgc2hhcmVkIGxpYnJhcmllcy4gIEFsc28gYWRkZWQgLWJleHBhbGwgKEFJWCBlcXVpdmFsZW50IHRvIExpbnV4J3MKCSAgLXJkeW5hbWljKSB3aGVuIGJ1aWxkaW5nIGV4ZWN1dGFibGVzLgoKMjAwMy0wNS0xNSAxNToxNSAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogQlVHOiBEb24ndCByZXBvcnQgYW4KCSAgZXJyb3Igb2Ygb3V0cHV0IHdhcyBnZW5lcmF0ZWQgYnV0IG5vIGVycm9yIHdhcyBzZXQuICBNZXJnaW5nIGZyb20KCSAgdHJ1bmsgdG8gMS42IGJyYW5jaC4KCjIwMDMtMDUtMTUgMTU6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBSZW1vdmVkIHVzZWxlc3MKCSAgbG93ZXItY2FzaW5nIGFuZCBpbXByb3ZlZCBlcnJvciBtZXNzYWdlLiAgTWVyZ2VkIGZyb20gdHJ1bmsgdG8KCSAgMS42IGJyYW5jaC4KCjIwMDMtMDUtMTUgMTQ6NTggIGtpbmcKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IExvb2tpbmcgaW4gYW5vdGhlciBwbGFjZSAobWVyZ2UgZnJvbQoJICB0cnVuaykuCgoyMDAzLTA1LTE1IDE0OjU0ICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogQXR0ZW1wdCB0byBmaXggU0dJCgkgIGNjbWFrZSBwcm9ibGVtICh0aGFuayB5b3UgQ2xpbnQgTWlsbGVyKS4gIE1lcmdpbmcgZnJvbSB0cnVuayB0bwoJICAxLjYgYnJhbmNoLgoKMjAwMy0wNS0xNSAxNDo0NSAga2luZwoKCSogU291cmNlL2NtTWFjcm9Db21tYW5kLmN4eDogQlVHOiBNZXJnaW5nIGZpeCBmcm9tIHRydW5rIGludG8gMS42CgkgIGJyYW5jaC4gIFJlcG9ydCBhIG1pc3NpbmcgRU5ETUFDUk8uCgoyMDAzLTA1LTE1IDA5OjM1ICBhbmR5CgoJKiBib290c3RyYXA6IFNldmVyYWwgZml4ZXMgYmVmb3JlIGJvb3RzdHJhcCBpcyByZWFkeSBmb3IKCSAgcHJpbWUtdGltZTogMS4gQWRkIC0tdmVyc2lvbiBmbGFnIHRvIGRpc3BsYXkgdmVyc2lvbiBvZiBDTWFrZSAyLgoJICBBZGQgY29tbWVudHMgdG8gZXhwbGFpbiB3aGF0IGlzIGdvaW5nIG9uIDMuIE1vdmUgQ01BS0VfUk9PVF9ESVIKCSAgYW5kIENNQUtFX0JPT1RTVFJBUCB0byBjbUNvbmZpZ3VyZS5oIDQuIEZvcndhcmQgQ0MsIENYWCwgYW5kIE1BS0UKCSAgdG8gY21ha2UgNS4gQWRkIG1vcmUgaW5zdHJ1Y3Rpb25zCgoyMDAzLTA1LTE0IDE1OjM4ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBVcGRhdGVkIGZvciAxLjYuNyByZWxlYXNlLgoKMjAwMy0wNS0xNCAxNDoxNCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgdmVyc2lvbiBudW1iZXIKCSAgdG8gMS42LjcgZnJvbSAxLjYuNi4KCjIwMDMtMDUtMTQgMTI6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogV29yay1hcm91bmQgZm9yIFNHSSBNaXBzUHJvCgkgIGJ1ZyB3aGVyZSAjZXJyb3IgZG9lc24ndCByZXR1cm4gYW4gZXJyb3IgdG8gbWFrZS4gIE1lcmdlZCBvbnRvCgkgIDEuNiBicmFuY2ggZnJvbSB0cnVuay4KCjIwMDMtMDUtMTQgMTI6MDYgIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogV29yay1hcm91bmQgZm9yIFNHSSBNaXBzUHJvCgkgIGJ1ZyB3aGVyZSAjZXJyb3IgZG9lc24ndCByZXR1cm4gYW4gZXJyb3IgdG8gbWFrZS4KCjIwMDMtMDUtMTQgMTA6MzQgIGtpbmcKCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBEZWZhdWx0IGdlbmVyYXRvcgoJICBzZWxlY3Rpb24gZm9yIFZTIDcuMSBhZGRlZC4KCjIwMDMtMDUtMTQgMDk6MjcgIGFuZHkKCgkqIGJvb3RzdHJhcDogRU5IOiBBZGQgcGFyYWxsZWwgYnVpbGQgc3VwcG9ydCwgZml4IGJ1ZyBpbiB2ZXJib3NlCgkgIGFuZCBjbGVhbiBvdXRwdXQgd2hlbiBhZGRpbmcgYXJndW1lbnRzCgoyMDAzLTA1LTE0IDA5OjE5ICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogQWRkIGJldHRlciBlcnJvciByZXBvcnRpbmcKCjIwMDMtMDUtMTQgMDg6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogTmVlZCB0byByZW1vdmUgdGhlIE1BS0VGTEFHUyB3aGVuIGNtYWtlCgkgIHN0YXJ0cy4gIElmIGNtYWtlIGlzIHJ1biBmcm9tIGluc2lkZSBtYWtlLCB3ZSBkb24ndCB3YW50IHRoZQoJICB0cnktY29tcGlsZXMgdG8gaW5oZXJpdCB0aGUgbWFrZWZsYWdzLgoKMjAwMy0wNS0xNCAwODo0MCAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRVJSOiBGaXhlZCBzdHJpbmcgbGl0ZXJhbC0+Y2hhciogY29udmVyc2lvbgoJICB3YXJuaW5nLgoKMjAwMy0wNS0xMyAxNjo1MSAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBOZWVkIHRvIHJlbW92ZSB0aGUgTUFLRUZMQUdTIHdoZW4gY21ha2UKCSAgc3RhcnRzLiAgSWYgY21ha2UgaXMgcnVuIGZyb20gaW5zaWRlIG1ha2UsIHdlIGRvbid0IHdhbnQgdGhlCgkgIHRyeS1jb21waWxlcyB0byBpbmhlcml0IHRoZSBtYWtlZmxhZ3MuCgoyMDAzLTA1LTEzIDE2OjEwICBraW5nCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtYWtlLmN4eDogRU5IOiBXaGVuIHRoZQoJICBpbml0aWFsbHkgY29uZmlndXJlZCBnZW5lcmF0b3IgaXMgaW52YWxpZCwgYWxsb3cgdGhlIHVzZXIgdG8KCSAgY2hhbmdlIHRoZSBnZW5lcmF0b3Igd2l0aG91dCBkZWxldGluZyB0aGUgY2FjaGUgYnkgaGFuZC4KCjIwMDMtMDUtMTMgMTQ6MjYgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBJbXByb3ZlZCBlcnJvciBtZXNzYWdlIHdoZW4KCSAgYSB3cm9uZyBnZW5lcmF0b3IgaXMgc2VsZWN0ZWQuCgoyMDAzLTA1LTEzIDE0OjA1ICBraW5nCgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogRVJSOiBSZW1vdmVkIHVudXNlZCBwYXJhbWV0ZXIuCgoyMDAzLTA1LTEzIDEzOjU0ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVSUjogUmVtb3ZlZCB1bnVzZWQgdmFyaWFibGUgZnJvbQoJICBwcmV2aW91cyBtZXJnZS4KCjIwMDMtMDUtMTMgMTM6NTIgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlRGVwZW5kLmN4eCwgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eDoKCSAgQlVHOiBVc2luZyBHZXRMaW5lRnJvbVN0cmVhbSBpbnN0ZWFkIG9mIGdldGxpbmUgZHVlIHRvIGJ1Z2d5CgkgIHN0cmVhbSBpbXBsZW1lbnRhdGlvbnMgb24gc29tZSBwbGF0Zm9ybXMuICBNZXJnZWQgZnJvbSB0cnVuayBpbnRvCgkgIGJyYW5jaCAxLjYuCgoyMDAzLTA1LTEzIDEzOjI2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVlM3MUZpbmRNYWtlLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgU291cmNlL2NtYWtlLmN4eDogRU5IOgoJICBBZGRpbmcgVlMgNy4xIGdlbmVyYXRvciB0byAxLjYgYnJhbmNoLgoKMjAwMy0wNS0xMyAxMjowNCAga2luZwoKCSogTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwgTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kQ0FCTEUuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21SZW1vdmVDb21tYW5kLmN4eCwgU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oLAoJICBTb3VyY2UvY21ha2V0ZXN0LmN4eCwgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEJVRzogTWVyZ2VkCgkgIGZpeGVzIGZyb20gbWFpbiB0cmVlIGludG8gMS42IGJyYW5jaC4KCjIwMDMtMDUtMTMgMTE6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmg6IENoYW5nZSBuYW1lIG9mIDcxCgkgIGdlbmVyYXRvcgoKMjAwMy0wNS0xMyAwOTo1MCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBSZW1vdmVkIHVzZSBvZiBzdGQ6OnN0cmluZyAhPQoJICBvcGVyYXRvciBkdWUgdG8gYnVnIGluIFNHSSBjb21waWxlcidzIGxpYnJhcnkuCgoyMDAzLTA1LTEzIDA5OjQyICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEVSUjogVGVzdCBmb3IgYW5zaSBzdHJlYW1zIG1heSBuZWVkCgkgIHRvIHVzZSBpb3Nmd2QgZm9yIHRlc3QgYmVjYXVzZSBzb21lIGNvbXBpbGVycyBwcm92aWRlIGFuIGlvc3RyZWFtCgkgIGhlYWRlciB0aGF0IGlzIG9sZCBzdHJlYW1zLgoKMjAwMy0wNS0xMyAwODozOCAga2luZwoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBBZGRlZCBmb3J3YXJkIGRlY2xhcmF0aW9ucyBvZgoJICBzeXN0ZW0gZnVuY3Rpb25zIGZvciBjb21vIGNvbXBpbGVyLgoKMjAwMy0wNS0xMiAxMzo0MyAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sCgkgIGt3c3lzX3N0ZF9mc3RyZWFtLmguaW4sIGt3c3lzX3N0ZF9pb3Nmd2QuaC5pbiwKCSAga3dzeXNfc3RkX2lvc3RyZWFtLmguaW4sIGt3c3lzX3N0ZF9zc3RyZWFtLmguaW46IEVOSDogQWRkZWQKCSAgS1dTWVNfRk9SQ0VfT0xEX1NUUkVBTVMgb3B0aW9uIHRvIGZvcmNlIHVzZSBvZiBub24tYW5zaSBzdHJlYW0KCSAgaGVhZGVycyBldmVuIGlmIHRoZXkgYXJlIGF2YWlsYWJsZS4KCjIwMDMtMDUtMTIgMTM6MzMgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBTdGFuZGFyZEluY2x1ZGVzLmh4eC5pbjogRU5IOgoJICBSZW1vdmVkIG9sZCAodW51c2VkKSBTdGFuZGFyZEluY2x1ZGVzIGhlYWRlci4KCjIwMDMtMDUtMTIgMTM6MjcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy9rd3N5c19zdGRfaW9zZndkLmguaW46IEVSUjogTmVlZCB0byBtb3ZlIGZvcndhcmQKCSAgZGVjbGFyYXRpb25zIG9mIG5vbi1hbnNpIHN0cmVhbXMgaW50byBzdGQgbmFtZXNwYWNlIHdoZW4gaXQgaXMKCSAgYXZhaWxhYmxlLgoKMjAwMy0wNS0xMiAxMzoxNSAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sIFN5c3RlbVRvb2xzLmN4eCwKCSAgU3lzdGVtVG9vbHMuaHh4LmluLCBrd3N5c19zdGQuaC5pbiwga3dzeXNfc3RkX2ZzdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX2lvc2Z3ZC5oLmluLCBrd3N5c19zdGRfaW9zdHJlYW0uaC5pbiwKCSAga3dzeXNfc3RkX3NzdHJlYW0uaC5pbjogRU5IOiBBZGRlZCB3cmFwcGVycyBhcm91bmQgdGhlIHN0ZCBzdHJlYW0KCSAgaGVhZGVycyB0byBtYWtlIHRoZW0gbG9vayBsaWtlIGFuc2kgc3RyZWFtcyBvbiBhbGwgcGxhdGZvcm1zLgoKMjAwMy0wNS0wOSAxNTo0NyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVZTNzFGaW5kTWFrZS5jbWFrZTogYWRkIGZpbmQgbWFrZSBwcm9ncmFtIGZvciA3MQoKMjAwMy0wNS0wOSAwOTozMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IHJlbW92ZSB0eXBvIGZyb20gZmlsZQoKMjAwMy0wNS0wOCAxNjo1OSAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNzFHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzcxR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmgsIGNtYWtlLmN4eDogYWRkIHN1cHBvcnQgZm9yIHZzIDcxCgoyMDAzLTA1LTA4IDE2OjUyICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVSUjogRml4ZWQgYXJndW1lbnRzIHRvIGt3c3lzJ3MgQUREX1RFU1QKCSAgY2FsbCBmb3IgbXN2YzYuCgoyMDAzLTA1LTA4IDE2OjQ4ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvQ01ha2VMaXN0cy50eHQ6IEJVRzogTmVlZCB0byBpbnZlcnQgdGVzdCByZXN1bHQgZm9yCgkgIGFuc2kgc3RyaW5nIHN0cmVhbS4KCjIwMDMtMDUtMDggMTQ6NDkgIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRlZCBrd3N5cyB0ZXN0LgoKMjAwMy0wNS0wOCAxNDo0NiAga2luZwoKCSogU291cmNlL2t3c3lzLzogQ01ha2VMaXN0cy50eHQsIENvbmZpZ3VyZS5oeHguaW4sIERpcmVjdG9yeS5jeHgsCgkgIERpcmVjdG9yeS5oeHguaW4sIFJlZ3VsYXJFeHByZXNzaW9uLmh4eC5pbiwKCSAgU3RhbmRhcmRJbmNsdWRlcy5oeHguaW4sIGt3c3lzX3N0ZC5oLmluOiBFTkg6IFJlZHVjZWQgaGVhZGVyCgkgIGRlcGVuZGVuY2llcyBhbmQgY2xlYW5lZCB1cCBpbmNsdXNpb24gb2Ygc3RhbmRhcmQgaGVhZGVycy4KCjIwMDMtMDUtMDggMTQ6MTcgIGtpbmcKCgkqIFNvdXJjZS9rd3N5cy86IENNYWtlTGlzdHMudHh0LCBSRUFETUUuaXRrLCBSRUFETUUudHh0LCB0ZXN0MS5jeHg6CgkgIEVOSDogU2V0dXAgZm9yIHRlc3RpbmcgYXMgYSBzdGFuZC1hbG9uZSBwcm9qZWN0LgoKMjAwMy0wNS0wOCAwOTo1NSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IGZpeCBmb3IgYm9ybGFuZCB3aW4zMgoJICBleGUgYnVpbGRzCgoyMDAzLTA1LTA4IDA5OjQzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogV2luZG93cy1iY2MzMi5jbWFrZTogQlVHOiByZW1vdmUgLUggZmxhZ3MgYXMKCSAgdGhleSBjYXVzZSBjcmFzaGVzIG9uIG9sZHd3dwoKMjAwMy0wNS0wNiAxMDoxNiAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogRVJSOiBSZW1vdmUgd2FybmluZwoKMjAwMy0wNS0wNSAxMDoyNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBFTkg6IGNoYW5nZSB0aGUgZGVmYXVsdAoJICBib3JsYW5kIHN0YWNrIHNpemUKCjIwMDMtMDUtMDUgMTA6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEJVRzogYWRkIGxpbmtlciBmbGFncwoJICBmb3IgbW9kdWxlcwoKMjAwMy0wNS0wNSAxMDoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiByZW1vdmUgNjQgYml0CgkgIHdhcm5pbmdzCgoyMDAzLTA1LTA1IDA5OjU0ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVzLmNtYWtlOiBFUlI6IFJlbW92ZSB3YXJuaW5nIGZvciBtYWluCgkgIHJldHVybmluZyB2b2lkLgoKMjAwMy0wNS0wNSAwODo0MiAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtYWtldGVzdC5jeHgsIGNtYWtldGVzdC5oLmluOiBCVUc6IEZpeAoJICBzb21lIGRlcGVuZGVuY2llcyBmb3IgbG9jYXRpb24gb2YgZXhlY3V0YWJsZXMKCjIwMDMtMDUtMDUgMDg6NDIgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBBZGQgc3VwcG9ydCBmb3IKCSAgbWFrZSB0ZXN0IGV2ZW4gZm9yIGZyZXNoIGJ1aWxkIG9mIGNtYWtlCgoyMDAzLTA1LTAzIDE2OjE1ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEZpeCBsb2NhdGlvbiBvZiB0ZXN0CgoyMDAzLTA1LTAyIDE0OjA1ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IGZpeGVkIGFuZHkgc2xvcHB5IGNvZGUgYWdhaW4KCjIwMDMtMDUtMDIgMTM6NTcgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZSwgTW9kdWxlcy9EYXJ0Q29uZmlndXJhdGlvbi50Y2wuaW4sCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2N0ZXN0LmN4eDogRU5IOiBGaXggc29tZSBkYXJ0CgkgIGlzc3Vlcy4gTm93IGl0IHdvcmtzIGZpbmUgd2l0aG91dCBkYXJ0LgoKMjAwMy0wNS0wMiAxMzo1NiAgYW5keQoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBOZXcgbG9jYXRpb24gb2YgY21ha2UgYmluYXJpZXMKCjIwMDMtMDUtMDIgMTM6NTQgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBFTkg6IE5ldyBsb2NhdGlvbiBvZiBjbWFrZQoKMjAwMy0wNS0wMiAxMzo1NCAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBFTkg6IEJlIGp1c3QgYSBiaXQgbW9yZSB2ZXJib3NlCgoyMDAzLTA1LTAyIDExOjI5ICBhbmR5CgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEV4ZWN1dGFibGVzIHNob3VsZCBnbwoJICB0byB0aGUgYmluIGRpcmVjdG9yeQoKMjAwMy0wNS0wMSAwNzo1NiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBFUlI6IFJlbW92ZSB3YXJuaW5ncwoKMjAwMy0wNC0zMCAwNzozMiAgYW5keQoKCSogU291cmNlL2NtYWtlLmg6IEVSUjogUnVuIHNob3VsZCByZXR1cm4gYSB2YWx1ZQoKMjAwMy0wNC0yOSAxNzoyMyAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIENUZXN0L0NNYWtlTGlzdHMudHh0OiBFTkg6IE1ha2UgQ3VybAoJICBjb2RlIHRvIGJlIGJ1aWx0IGJ5IGRlZmF1bHQKCjIwMDMtMDQtMjkgMTA6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBFTkg6IEFkZCBhcmd1bWVudCAtTiB3aGljaCBwcmV2ZW50cyBDTWFrZQoJICBmcm9tIGRvaW5nIGNvbmZpZ3VyZSBhbmQgZ2VuZXJhdGUuIFRoaXMgc2hvdWxkIGJlIGltcHJvdmVkIGF0CgkgIHNvbWUgcG9pbnQgdGhhdCBpdCB3aWxsIGRvIGFsbCB0aGUgZXJyb3IgY2hlY2tpbmcgc3VjaCBhcyB3aGV0aGVyCgkgIHRoZSBDTWFrZUxpc3RzLnR4dCBleGlzdHMgZXRjLiBJdCBzaG91bGQgZXNzZW50aWFsbHkgbG9hZCBjYWNoZSwKCSAgZ28gdGhyb3VnaCBjbWFrZSBsaXN0cywgYnV0IG5vdCBtb2RpZnkgY2FjaGUgYW5kIG90aGVyIGZpbGVzIGluCgkgIHRoZSBidWlsZCBkaXJlY3RvcnkuIFRoZSBzZWNvbmQgZmVhdHVyZSBpcyBhYmlsaXR5IHRvIGRpc3BsYXkKCSAgY2FjaGUgdmFsdWVzLiBZb3UgcnVuIHdpdGggYXJndW1lbnQgLUwgKG9yIC1MSCAvLUxBIC8gLUxBSCkgYW5kCgkgIGl0IHdpbGwgZGlzcGxheSBhbGwgbm9uYWR2YW5jZWQgY2FjaGVkIHZhcmlhYmxlcyAoLUwpIC8gYWxsCgkgIGNhY2hlZCB2YXJpYWJsZSAoLUxBKSAvIGFuZCBjYWNoZWQgdmFyaWFibGVzIHdpdGggY29ycmVzcG9uZGluZwoJICBoZWxwIHN0cmluZyAoLUxIIC1MQUgpLgoKMjAwMy0wNC0yOSAxMDowNCAgYW5keQoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBFTkg6IEFkZCBhZGRpdGlvbmFsIG9wdGlvbmFsCgkgIGFyZ3VtZW50IHRvIFJ1bi4gSWYgaXQgaXMgdHJ1ZSwgaXQgd2lsbCBvbmx5IHNldCBwYXRocyBhbmQgbG9hZAoJICBjYWNoZS4gSXQgd2lsbCBub3QgZG8gY29uZmlndXJlIGFuZCBnZmVuZXJhdGUKCjIwMDMtMDQtMjkgMTA6MDIgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaDogRU5IOiBBZGQgbWV0aG9kIHRvCgkgIGNvbnZlcnQgZnJvbSBDYWNoZUVudHJ5VHlwZSB0byBzdHJpbmcKCjIwMDMtMDQtMjggMTM6MTYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IGJldHRlciBlcnJvciByZXBvcnRpbmcKCjIwMDMtMDQtMjUgMTU6MTYgIGFuZHkKCgkqIFNvdXJjZS86IENUZXN0L0NNYWtlTGlzdHMudHh0LCBDTWFrZUxpc3RzLnR4dDogRU5IOiBFbmFibGUgQ1Rlc3QKCSAgdG8gYmUgYnVpbGQgYXMgYSBwYXJ0IG9mIENNYWtlCgoyMDAzLTA0LTI1IDE0OjUyICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IFJlbmFtZSBvcHRpb24gLUQgdG8gLUMgYmVjYXVzZSB3ZSB3aWxsIHVzZQoJICAtRCBsYXRlcgoKMjAwMy0wNC0yNSAxNDo1MSAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBFUlI6IFNldCBzb3VyY2UgZmlsZXMgcHJvcGVydGllcyBpcyBuZWVkZWQKCSAgZm9yIEN1cmwgYnVpbGQKCjIwMDMtMDQtMjUgMTQ6NTAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogRVJSOiBSZW1vdmUgd2FybmluZyBiZWNhdXNlIFNDUAoJICBub3QgaW1wbGVtZW50ZWQKCjIwMDMtMDQtMjQgMTM6MjUgIGJlcmsKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4OiBtaW5vciBmaXgKCjIwMDMtMDQtMjMgMTc6MjQgIGpqb21pZXIKCgkqIFNvdXJjZS9rd3N5cy9EaXJlY3RvcnkuaHh4LmluOiBGSVg6IHdhcm5pbmdzLCBkaXNhYmxpbmcgNDc4NgoKMjAwMy0wNC0yMyAxMzo1OCAgbWFydGluawoKCSogU291cmNlL0NUZXN0L0NNYWtlTGlzdHMudHh0OiBmaXggc29tZSBpbmNsZHVlIHBhdGhzCgoyMDAzLTA0LTIyIDE2OjEwICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRDQUJMRS5jbWFrZTogRU5IOiBVcGRhdGVkIHNlYXJjaCBwYXRocyB0byBuZXdlc3QKCSAgdmFsdWVzIGZyb20gQ2FibGUuCgoyMDAzLTA0LTIyIDE0OjMyICBhbmR5CgoJKiBib290c3RyYXA6IEVOSDogQWRkIFNHSSAtTEFORzpzdGQgc3VwcG9ydAoKMjAwMy0wNC0xOCAxMDowMSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBFTkg6IENsZWFudXAKCjIwMDMtMDQtMTggMTA6MDAgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRXZlbiBiZXR0ZXIgZXJyb3IgZGV0ZWN0aW9uIG9uIEFJWAoKMjAwMy0wNC0xOCAwOTo0OCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBCZXR0ZXIgQUlYIGRldGVjdGlvbgoKMjAwMy0wNC0xNyAxNToyMCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBUaGlzIGlzIHJlYWxseSBhbiBlcnJvcgoKMjAwMy0wNC0xNyAxMzoxMyAgYW5keQoKCSogYm9vdHN0cmFwOiBTdXBwb3J0IExERkxBR1MKCjIwMDMtMDQtMTcgMTM6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRU5IOiBBZGQgQUlYIHdhcmVycgoKMjAwMy0wNC0xNyAxMTo1OSAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHg6IHdhcm5pbmcgZml4IGhvcGVmdWxseQoKMjAwMy0wNC0xNyAxMToxNyAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogTW9yZSBhdHRlbXB0IHRvIG1ha2UgY29udGludW91cyBlbWFpbCB3b3JrCgoyMDAzLTA0LTE3IDA4OjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogZml4IG9uZSB3YXJuaW5nCgoyMDAzLTA0LTE3IDA4OjIzICBhbmR5CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBBdHRlbXB0IHRvIGVuYWJsZSBzZW5kaW5nIG9mIGUtbWFpbHMgZnJvbQoJICBjb250aW51b3VzCgoyMDAzLTA0LTE3IDA4OjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEJVRzogZml4IGNvbXBpbGUgZXJyb3Igb24gd2luZG93cyBiZWNhdXNlCgkgIG9mIHdpbmRvd3MuaAoKMjAwMy0wNC0xNyAwODowMiAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQsIGJvb3RzdHJhcCwgY29uZmlndXJlLCBjb25maWd1cmUuaW46IEJVRzogUmVuYW1lCgkgIEJvb3RzdHJhcCBkaXJlY3RvcnkgdG8gQm9vdHN0cmFwLmNtaywgc28gdGhhdCBvbiBwbGF0Zm9ybXMgc3VjaAoJICBhcyBXaW5kb3dzIGFuZCBNYWMgT1NYIGl0IHdpbGwgYnJlYWsgZHVyaW5nIGluLXNvdXJjZSBidWlsZAoKMjAwMy0wNC0xNiAxNzowNiAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBjbGVhbnVwCgoyMDAzLTA0LTE2IDE2OjIwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogZml4IG9uZSB3YXJuaW5nCgoyMDAzLTA0LTE2IDE2OjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IHN0cmVhbWxpbmUgYm9vdHN0cmFwCgoyMDAzLTA0LTE2IDE1OjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBtaW5vciBmaXgKCjIwMDMtMDQtMTYgMTQ6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuaCwgY21ha2UuY3h4OiBhZGQgQ09kZVdhcnJpb3IgYmFjayBpbgoJICBmb3IgdGVzdGluZwoKMjAwMy0wNC0xNiAxNDoxMyAgYW5keQoKCSogU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHg6IEF0dGVtcHQgdG8gbWFrZSB1bmxvYWRpbmcgd29yayBvbiBPU1gKCjIwMDMtMDQtMTYgMTM6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRml4IHVwZGF0ZSBvdXRwdXQKCjIwMDMtMDQtMTYgMTM6MzMgIGhvZmZtYW4KCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBhIGRvdWJsZSB0cnkKCSAgY29tcGlsZSB0byBmaXggY3JhenkgbWFrZSBvbiBocAoKMjAwMy0wNC0xMSAxODowNSAga2VudHdpbGxpYW1zCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiB0b29rIG91dCBhbiBvcnBoYW4gZW5kaWYKCjIwMDMtMDQtMTEgMTY6MjIgIGtlbnR3aWxsaWFtcwoKCSogU291cmNlL2t3c3lzLzogU3lzdGVtVG9vbHMuaHh4LmluLCBTeXN0ZW1Ub29scy5jeHg6IHJlbW92ZQoJICByZWR1bmRhbnQgZnVuY3Rpb24gYW5kIGVsaW1pbmF0ZSBuZWVkIGZvciBzdHJjYXNlY21wCgoyMDAzLTA0LTExIDEzOjM2ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvUkVBRE1FLml0azogRU5IOiBBZGRlZCBkb2N1bWVudGF0aW9uIGZvciBJVEsuCgoyMDAzLTA0LTExIDA3OjI3ICBsb3JlbnNlbgoKCSogU291cmNlL2t3c3lzL1N5c3RlbVRvb2xzLmN4eDogRVJSOiBCb3JsYW5kIGZpeCBmb3Igc3RyaWNtcC4gRVJSOgoJICByZW1vdmVkIGl0ayBkZXBlbmRlbmNpZXMuCgoyMDAzLTA0LTEwIDEzOjQxICBrZW50d2lsbGlhbXMKCgkqIFNvdXJjZS9rd3N5cy86IFN5c3RlbVRvb2xzLmN4eCwgU3lzdGVtVG9vbHMuaHh4LmluOiBSZW1vdmVkCgkgIHBsYXRmb3JtLXNwZWNpZmljIGZ1bmN0aW9ucyBmcm9tIENvZGUvSU8vaXRrSU9Db21tb24sIGZpeGVkIGNvZGUKCSAgdG8gdXNlIGt3c3lzL1N5c3RlbVRvb2xzCgoyMDAzLTA0LTEwIDA5OjA3ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IERvIHNhZmUgZGl2aXNpb24gaW5zdGVhZCBvZiBmaXhpbmcgcmVzdWx0CgoyMDAzLTA0LTEwIDA5OjAzICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFUlI6IFJlbW92ZWQgdW51c2VkIHBhcmFtZXRlciBhbmQKCSAgdHJ1bmNhdGVkIGRlYnVnIHN5bWJvbCB3YXJuaW5ncy4KCjIwMDMtMDQtMDkgMDg6MDggIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQXR0ZW1wdCB0byBmaXggRklYTlVNCgoyMDAzLTA0LTA4IDEzOjE0ICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvU3lzdGVtVG9vbHMuY3h4OiBFUlI6IEZpeGVkIHR5cG8uCgkgIGNtUmVndWxhckV4cHJlc3Npb24gLT4gUmVndWxhckV4cHJlc3Npb24uCgoyMDAzLTA0LTA4IDEzOjEwICBraW5nCgoJKiBTb3VyY2Uva3dzeXMvOiBDTWFrZUxpc3RzLnR4dCwgQ29uZmlndXJlLmh4eC5pbiwgRGlyZWN0b3J5LmN4eCwKCSAgRGlyZWN0b3J5Lmh4eC5pbiwgUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBSZWd1bGFyRXhwcmVzc2lvbi5oeHguaW4sIFN0YW5kYXJkSW5jbHVkZXMuaHh4LmluLAoJICBTeXN0ZW1Ub29scy5jeHgsIFN5c3RlbVRvb2xzLmh4eC5pbjogRU5IOiBBZGRlZCBrd3N5cyBsaWJyYXJ5IGZvcgoJICBwbGF0Zm9ybS1pbmRlcGVuZGVudCBzeXN0ZW0gdG9vbHMuCgoyMDAzLTA0LTA4IDEwOjU3ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNUZXN0LmN4eCwgY21DVGVzdC5oOiBSZW1vdmUgbmFuIGFuZCBpbmYsIHVzZQoJICBpb3N0cmVhbXMgdG8gc2V0IHByZWNpc2lvbiwgZml4IGZpbGUgbmFtZSwgYW5kIHJlbW92ZSBib2d1cyBmaWxlcwoKMjAwMy0wNC0wOCAwNzoxNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBSZW1vdmUgcHVzaF9iYWNrIG9uIHN0cmluZy4gV2h5IGNhbid0IFNUTCBiZQoJICBzdGFuZGFyZD8KCjIwMDMtMDQtMDcgMTg6MjEgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IFNvbWUgY292IGltcHJvdmVtZW50cyBhbmQgYmV0dGVyCgkgIGVzYwoKMjAwMy0wNC0wNyAxMjoyMCAgYW5keQoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IFdlIHNob3VsZCByZWFsbHkganVzdCBjYWxsIG1ha2UgYW5kIG5vdAoJICBtYWtlIGFsbAoKMjAwMy0wNC0wNCAxMDo1NiAga2luZwoKCSogU291cmNlL2NtU2V0Q29tbWFuZC5oOiBFTkg6IEFkZGVkIENBQ0hFIGVudHJ5IHR5cGVzIHRvCgkgIGRvY3VtZW50YXRpb24gc3RyaW5nLgoKMjAwMy0wNC0wNCAxMDowNSAga2luZwoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRU5IOiBBZGRlZCAvdXNyL2xvY2FsL2xpYi9mbHRrCgoyMDAzLTA0LTAzIDE4OjQwICBhbmR5CgoJKiBib290c3RyYXA6IEJldHRlciBzdXBwb3J0IGZvciBzcGFjZXMgaW4gcGF0aHMKCjIwMDMtMDQtMDMgMDg6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogVHJ5IGRpZmZlcmVudGlhdGluZyBleHRlbnNpb25zCgoyMDAzLTA0LTAyIDIyOjQ4ICBraW5nCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jY21ha2UuY3h4OiBFTkg6IEltcHJvdmVkIGRvY3VtZW50YXRpb24uICBBbHNvCgkgIG1vZGlmaWVkIGJlaGF2aW9yIG9mICJjbWFrZSIgdG8gbm90IGNvbmZpZ3VyZSBhIHByb2plY3QgaW4gdGhlCgkgIGN1cnJlbnQgZGlyZWN0b3J5IHVubGVzcyAuIGlzIGdpdmVuLgoKMjAwMy0wNC0wMiAyMjo0NCAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IEVOSDogUnVubmluZyB3aXRoIHplcm8gYXJndW1lbnRzIG5vdwoJICBwcm9kdWNlcyB1c2FnZS4KCjIwMDMtMDQtMDIgMDk6MTkgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IFVybCBlc2NhcGUgcGFzc3dvcmQKCjIwMDMtMDQtMDIgMDk6MTkgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogT24gdmVyYm9zZSwgYmUgbW9yZSB2ZXJib3NlCgoyMDAzLTA0LTAyIDA5OjAxICBhbmR5CgoJKiBUZXN0cy9XcmFwcGluZy9xdHdyYXBwaW5nbWFpbi5jeHg6IElmIGRpc3BsYXkgaXMgbm90IHNldCwgZG8gbm90CgkgIGF0dGVtcHQgdG8gcnVuIGFwcGxpY2F0aW9uCgoyMDAzLTA0LTAyIDA4OjQ1ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogQWRkIFFUIG9uIGRlYmlhbgoKMjAwMy0wNC0wMSAxNTozMSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBGaXggY292LiBwcm9ibGVtcywgaWdub3JlIG5vbmFzY2lpIGNoYXIuCgkgIFByb3BhZ2F0ZSB2ZXJib3NpdHkKCjIwMDMtMDQtMDEgMTU6MzAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTdWJtaXQuY3h4LCBjbUNUZXN0U3VibWl0Lmg6IENvbnRyb2xlCgkgIHZlcmJvc2l0eQoKMjAwMy0wNC0wMSAxMzoyOSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IHN0cmxlbihidWZmZXIpIGZyb20gZ2V0bGluZSBtYXkgYmUKCSAgMiBsZXNzIHRoYW4gZ2NvdW50IG9uIHdpbmRvd3MgYmVjYXVzZSBib3RoIHRoZSBDUiBhbmQgTEYKCSAgY2hhcmFjdGVycyBtYXkgYmUgcmVtb3ZlZC4KCjIwMDMtMDMtMjggMTM6NDIgIGFuZHkKCgkqIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2U6IE5ldyBkZXNpZ24gb2YgQ2hlY2tTeW1ib2xFeGlzdHMKCSAgcHJldHR5IG11Y2ggcmVwbGFjZXMgYWxsIG90aGVyIG9uZXMuCgoJICBGb3IgZXhhbXBsZToKCgkgIENIRUNLX0hFQURFUl9FWElTVFMoInR5cGUuaCIgSEFWRV9UWVBFX0gpIGlzOgoJICBDSEVDS19TWU1CT0xfRVhJU1RTKG1haW4gInR5cGUuaCIgSEFWRV9UWVBFX0gpCgoJICBDSEVDS19MSUJSQVJZX0VYSVNUUygibnNsIglnZXRob3N0bmFtZSAgSEFWRV9MSUJOU0wpIHdvdWxkIGJlCgkgIFNFVChDTUFLRV9SRVFVSVJFRF9MSUJSQVJJRVMgIm5zbCIpCgkgIENIRUNLX1NZTUJPTF9FWElTVFMoZ2V0aG9zdG5hbWUgIm5ldGRiLmgiIEhBVkVfTElCTlNMKQoKCSAgLi4uCgoyMDAzLTAzLTI3IDE1OjUyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHg6IFJlbW92ZSB3YXJuaW5ncwoKMjAwMy0wMy0yNyAxNToyOSAgYW5keQoKCSogYm9vdHN0cmFwOiBJbml0aWFsIGltcG9ydCBvZiBib290c3RyYXAgZm9yIENNYWtlCgoyMDAzLTAzLTI3IDEzOjAzICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1N1bk9TLmNtYWtlOiBGaXggZ251IGMgYW5kIFN1biBDQyBtaXgKCjIwMDMtMDMtMjcgMTI6NDkgIGFuZHkKCgkqIENNYWtlTGlzdHMudHh0OiBTb21lIG1vcmUgcHJlcGFyYXRpb25zIGZvciBuZXcgYm9vdHN0cmFwIHN5c3RlbQoKMjAwMy0wMy0yNyAxMjoyNCAgYW5keQoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VEZXBlbmQuY3h4LCBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4OgoJICBJbXBsZW1lbnQgR2V0TGluZUZyb21TdHJlYW0gdGhhdCBhY3R1YWxseSB3b3JrcyBhbmQgdXNlIGl0CgkgIGluc3RlYWQgb2YgZ2V0bGluZQoKMjAwMy0wMy0yNiAxMDo0NSAgYW5keQoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oLCBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogUmVtb3ZlIGJvZ3VzIGZsYWdzCgkgIGZyb20gY21TdGFuZGFyZEluY2x1ZGVzIGFuZCBtYWtlIGNvbXBsZXggdGVzdCBwYXNzCgoyMDAzLTAzLTIxIDExOjMzICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBCVUc6IGZpeCBSRU1PVkUgdGVzdAoKMjAwMy0wMy0yMSAxMToyNCAgaG9mZm1hbgoKCSogU291cmNlL2NtUmVtb3ZlQ29tbWFuZC5jeHg6IEJVRzogZml4IGJyb2tlbiBjb21tYW5kCgoyMDAzLTAzLTIwIDExOjI3ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEZpeCBwcm9ibGVtIHdpdGggbmV0d29yayBwYXRocwoKMjAwMy0wMy0yMCAxMDoxMiAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IFN1cHBvcnQgY21ha2UgaW4KCSAgZGlyZWN0b3J5IHdpdGggc3BhY2UKCjIwMDMtMDMtMjAgMDk6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQlVHOiB1c2VkIHdyb25nIGNvdW50ZXJzCgoyMDAzLTAzLTE5IDE4OjI4ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IE1vcmUgcmVnZXgKCjIwMDMtMDMtMTkgMTY6MzUgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEFkZCBzdGFydAoKMjAwMy0wMy0xOSAxNjoyNSAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBNb3ZlIGZpbGVzIHRvIGRpZmZlcmVudCBsb2NhdGlvbiBhbmQgZml4IHRpbWUKCjIwMDMtMDMtMTkgMTY6MTEgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEZpeCBmb3IgdmlzdWFsIHN0dWRpbwoKMjAwMy0wMy0xOSAxMDoxNiAga2luZwoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5oOiBCVUc6IENvbW1hbmQgc2hvdWxkIGJlIGluaGVyaXRlZC4KCjIwMDMtMDMtMTggMTE6NDcgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY29uZmlnX0xpbnV4OiBFTkg6IFVwZGF0ZWQgdG8gZG8gcmVsZWFzZQoJICBidWlsZCBvbiByaW5nd29ybGQuICBOZWVkZWQgZm9yIG9sZCBnbGliYyBzdXBwb3J0LgoKMjAwMy0wMy0xNyAxNDoyOSAgYW5keQoKCSogVGVzdHMvU2ltcGxlLzogQ01ha2VMaXN0cy50eHQsIHNpbXBsZS5jeHgsIHNpbXBsZUNMaWIuYywKCSAgc2ltcGxlV2UuY3BwOiBJbXByb3ZlIHRlc3QKCjIwMDMtMDMtMTcgMTM6MjYgIGFuZHkKCgkqIFRlc3RzL1NpbXBsZS86IENNYWtlTGlzdHMudHh0LCBzaW1wbGVDTGliLmM6IEFkZCB0ZXN0aW5nIGZvciB3aGVuCgkgIEMgc291cmNlcyBhcmUgY29tcGlsZWQgd2l0aCBDKysgY29tcGlsZXIKCjIwMDMtMDMtMTcgMTE6MjEgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IElmIHRoZXJlIHdhcyBubyBlcnJvciwKCSAgZG8gbm90IHNheSB0aGF0IHRoZXJlIHdhcyBvbmUKCjIwMDMtMDMtMTcgMTA6MDAgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEdUSy5jbWFrZTogQlVHOiBGaXhlZCBFTkRJRiBvcmRlcmluZy4KCjIwMDMtMDMtMTcgMDk6NTcgIGtpbmcKCgkqIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2U6IEJVRzogRml4ZWQgc3ludGF4IG9mIGZpbGUKCSAgZ2VuZXJhdGVkIGZvciB0ZXN0LgoKMjAwMy0wMy0xNyAwOToyOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogZml4IGNyYXNoIHdpdGggZm9yY2UgY3h4CgkgIHR5cGUKCjIwMDMtMDMtMTcgMDk6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiBmb3JjZSBjeHggY29tcGlsZXIgZm9yIGN4eAoJICBmaWxlcwoKMjAwMy0wMy0xNyAwODoyNSAgYW5keQoKCSogVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vOiBDTWFrZUxpc3RzLnR4dCwgRHVtcEluZm9ybWF0aW9uLmN4eCwKCSAgRHVtcEluZm9ybWF0aW9uLmguaW46IERpc3BsYXkgQ2FjaGUgYW5kIGFsbCB2YXJpYWJsZXMKCjIwMDMtMDMtMTYgMjA6MzMgIGFuZHkKCgkqIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2U6IFByZXZlbnQgQ01ha2UgZnJvbSBwdXR0aW5nIDsgaW4KCSAgdGhlIGZpbGUKCjIwMDMtMDMtMTYgMjA6MjUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEdUSy5jbWFrZTogTW9yZSB2YXJpYWJsZXMgYWR2YW5jZWQKCjIwMDMtMDMtMTYgMjA6MjMgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEdUSy5jbWFrZTogQWRkIGd0aHJlYWQgbGlicmFyeQoKMjAwMy0wMy0xNSAxMDowNCAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBIYXNDWFggZGlkIG5vdCB1c2UgR2V0RmlsZUZvcm1hdCBhbmQKCSAgd2FzIGJyb2tlbgoKMjAwMy0wMy0xNCAxNTo0NCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kR1RLLmNtYWtlOiBCVUc6IGJhZCBpZiBzdGF0ZW1lbnQgb3JkZXIKCjIwMDMtMDMtMTQgMTU6MDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBiZXR0ZXIgZXJyb3IgbWVzc2FnZQoKMjAwMy0wMy0xNCAxMjowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlOiBmb3JjZSBjKysgZm9yIGMrKyBmaWxlcwoKMjAwMy0wMy0xNCAxMjowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogdXNlIGMgZmxhZ3Mgd2l0aCBjIGFuZAoJICBub3QgY3h4IGZsYWdzLCBhbHNvIGZvcmNlIGMrKyBmb3IgYyBmaWxlcwoKMjAwMy0wMy0xNCAxMTo1OSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRm9yY2UgYysrIGJ1aWxkcyBmb3IKCSAgYysrIGZpbGVzCgoyMDAzLTAzLTE0IDExOjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IG1ha2Ugc3VyZSBNIGlzIGFmdGVyIG0KCjIwMDMtMDMtMTQgMTA6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBjIGV4dGVuc2lvbiBtdXN0IGNvbWUgYmVmb3JlIEMuCgoyMDAzLTAzLTE0IDEwOjM4ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogYyBtdXN0IHByZWNlZGUgQy4KCjIwMDMtMDMtMTMgMTY6MzEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19MaW51eDogTWVyZ2luZyBmcm9tIDEuNiBhZ2Fpbi4KCjIwMDMtMDMtMTMgMTY6MzAgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19MaW51eDogQlVHOiBOZWVkIHRvIGxpbmsgc3RhdGljYWxseQoJICBhZ2FpbnN0IGN1cnNlcy4KCjIwMDMtMDMtMTMgMTU6NTkgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY29uZmlnX0xpbnV4OiBNZXJnaW5nIGZyb20KCSAgMS42IHJlbGVhc2UgYnJhbmNoLgoKMjAwMy0wMy0xMyAxNTo1OCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogQlVHOiBOZWVkIHRvIGNoZWNrb3V0CgkgIFJlbGVhc2VVdGlsaXRpZXMgd2l0aCBzYW1lIHRhZy4KCjIwMDMtMDMtMTMgMTU6NDcgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaDogRU5IOiBVcGRhdGVkIGZvciAxLjYuNgoJICByZWxlYXNlLgoKMjAwMy0wMy0xMyAxNTo0NiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IFN1bk9TLmNtYWtlOiBCVUc6IERvbid0IHVzZSAtbm9zdGRsaWIgb3B0aW9uCgkgIHRvIGxpbmsgc2hhcmVkIGxpYnJhcmllcy4gIEp1c3QgdXNlIGdjYyAtc2hhcmVkLCBldmVuIGZvciBDKysKCSAgbGlicmFyaWVzLgoKMjAwMy0wMy0xMyAxMzoyOCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IEFkZGVkIG1pc3NpbmcgY2MgZXh0ZW5zaW9uIGZvciBTb3VyY2UKCSAgRmlsZXMgZ3JvdXAuCgoyMDAzLTAzLTEzIDEzOjAzICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRG9uJ3QgZHVwbGljYXRlIFNVQkRJUlMuCgoyMDAzLTAzLTEzIDEzOjAxICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogQWRkZWQgaGVhZGVyIGZpbGUgZXh0ZW5zaW9ucy4KCjIwMDMtMDMtMTMgMTI6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogYWxsb3cgdGhlIHNhbWUgc3ViZGlyIHRvIGJlIGFkZGVkIHR3aWNlCgoyMDAzLTAzLTEzIDEyOjQ4ICBhbmR5CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEZpeCByZWd1bGFyIGV4cHJlc3Npb25zCgoyMDAzLTAzLTEzIDEyOjI0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21TeXN0ZW1Ub29scy5jeHg6IFN5bmNocm9uaXplIGV4dGVuc2lvbgoJICBsaXN0cwoKMjAwMy0wMy0xMyAxMTo1MyAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZsZF9hdHRyLmM6IEJVRzogRml4ZWQgZm9ybXMgZm9yIEhQLgoKMjAwMy0wMy0xMyAxMTo1MSAga2luZwoKCSogTW9kdWxlcy9UZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOiBCVUc6IERvbid0IHJlcGVhdCB0ZXN0LgoKMjAwMy0wMy0xMyAxMTo0OSAga2luZwoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlOiBCVUc6IERvbid0IHRlc3QgdHlwZSBzaXplIG1vcmUgdGhhbgoJICBvbmNlLgoKMjAwMy0wMy0xMyAxMTo0OCAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpbmRMaWJyYXJ5IHNob3VsZCBub3QgYWNjZXB0IGEKCSAgZGlyZWN0b3J5IGV2ZW4gaWYgdGhlIGV4YWN0IHNwZWNpZmllZCBuYW1lIGV4aXN0cy4KCjIwMDMtMDMtMTMgMTE6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogRml4ZWQgY3Jhc2ggd2hlbgoJICBDTUFLRV9CQUNLV0FSRFNfQ09NUEFUSUJJTElUWSBpcyBkZWxldGVkLgoKMjAwMy0wMy0xMyAxMTozNCAga2luZwoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLnJjOiBCVUc6IEZpeGVkIHRhYiBvcmRlcmluZyBpbgoJICBkaWFsb2cuCgoyMDAzLTAzLTEzIDExOjMzICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmgsIFdYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQKCSAgdmVyc2lvbiBmb3IgMS42LjYgcmVsZWFzZS4KCjIwMDMtMDMtMTMgMTE6MzEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19MaW51eDogRVJSOiBOZWVkIHRvIGRvIHNoYXJlZCBsaWJjIGxpbmsKCSAgd2l0aCBzdGF0aWMgQysrIGxpYnJhcnkgdG8gaGF2ZSBzYWZlIGRsIGxvYWRpbmcgb24gbGludXguCgoyMDAzLTAzLTEzIDA4OjQ0ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogRmluZExpYnJhcnkgc2hvdWxkIG5vdCBhY2NlcHQgYQoJICBkaXJlY3RvcnkgZXZlbiBpZiB0aGUgZXhhY3Qgc3BlY2lmaWVkIG5hbWUgZXhpc3RzLgoKMjAwMy0wMy0xMSAxNzozNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9UZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOiBCVUc6IGZpeCB0ZXN0IG5vdCB0byBydW4gZXZlcnkKCSAgdGltZQoKMjAwMy0wMy0xMSAxNToyNSAgaG9mZm1hbgoKCSogU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHgsIFNvdXJjZS9DVGVzdC9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZsZF9hdHRyLmMsCgkgIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogQlVHOiBmaXhlcyBmb3IgaHAKCjIwMDMtMDMtMDkgMTg6MTYgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IFJlbW92ZSB3YXJuaW5ncwoKMjAwMy0wMy0wNyAxNTozMCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBNb3JlIFhNTAoKMjAwMy0wMy0wNyAxMTo1MyAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogUmVtb3ZlIHdhcm5pbmcKCjIwMDMtMDMtMDcgMTE6NDUgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRml4IHhtbAoKMjAwMy0wMy0wNyAxMToyNyAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc01haW5Gb3JtLmg6CgkgIEFkZCBzZWFyY2hpbmcgb2YgdmFyaWFibGVzCgoyMDAzLTAzLTA2IDE1OjMyICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IE9uIGJvcmxhbmQgYW5kIGN5Z3dpbiByZW1vdmUgLkVYRQoKMjAwMy0wMy0wNiAxMjozMSAgYW5keQoKCSogU291cmNlL2NtR2V0Q01ha2VQcm9wZXJ0eUNvbW1hbmQuY3h4OiBSZW1vdmUgd2FybmluZwoKMjAwMy0wMy0wNiAxMToyMCAgYW5keQoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4LCBTb3VyY2UvY21HZXRDTWFrZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldENNYWtlUHJvcGVydHlDb21tYW5kLmgsCgkgIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0NNYWtlTGlzdHMudHh0OiBBZGQgY29tbWFuZCBmb3IgYWNjZXNzaW5nCgkgIGNtYWtlIHByb3BlcnRpZXMuIEF0IHRoaXMgcG9pbnQgdGhlIG9ubHkgcHJvcGVydGllcyBhcmUgVkFSSUFCTEVTCgkgIGFuZCBDQUNIRV9WQVJJQUJMRVMuIEFsc28gYWRkIHRlc3QgZm9yIHRoaXMgZmVhdHVyZQoKMjAwMy0wMy0wNiAxMToxOSAgYW5keQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogQWRkIG1ldGhvZCB3aGljaCByZXR1cm5zIGEKCSAgbGlzdCBvZiBhbGwgdmFyaWFibGVzCgoyMDAzLTAzLTA2IDExOjE4ICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaDogQ2FjaGUgbWFuYWdlciBzaG91bGQgYmUgYWJsZSB0byB0YWtlIG5vCgkgIGFyZ3VtZW50cwoKMjAwMy0wMy0wNiAxMDozMiAga2luZwoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlOiBCVUc6IFNob3VsZCB0ZXN0IEhBVkVfPFZBUklBQkxFPgoJICBiZWZvcmUgcmVwZWF0aW5nIHRlc3QsIG5vdCBqdXN0IHdoZXRoZXIgPFZBUklBQkxFPiBpcyBzZXQuCgoyMDAzLTAzLTA1IDE3OjA4ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IG9vcHMuLi4gRm9yZ290IHRoZSBtYWluIHN0ZXAKCjIwMDMtMDMtMDMgMTM6NTggIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogQWRkIFVwZGF0ZSBhbmQgY29uZmlndXJlIHN0ZXBzIHdoZXJlIG1pc3NpbmcKCjIwMDMtMDMtMDMgMTM6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRml4IHR5cG8KCjIwMDMtMDMtMDMgMDk6MzIgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogU3RhcnQgY2xlYW5pbmcgZ2xvYmFsIG5hbWVzcGFjZQoKMjAwMy0wMy0wMyAwOToyOSAgYW5keQoKCSogQ01ha2VMaXN0cy50eHQ6IEJVRzogU2hvdWxkIGJlIHVzZSB0aGUgaG9zdCBDTWFrZSdzIGRhcnQgZmlsZQoKMjAwMy0wMi0yOCAxMzowMCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBJZmRlZiBjb2RlIHRoYXQgaXMgbWlzc2luZwoKMjAwMy0wMi0yOCAxMjo0MiAgYW5keQoKCSogTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZSwgU291cmNlL2NtQ1Rlc3QuY3h4OiBGaXggdXBkYXRlCgkgIGRhdGUgYW5kIGNsZWFudXAKCjIwMDMtMDItMjggMTE6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogQWRkIGNvbmZpZ3VyZSBzdGVwCgoyMDAzLTAyLTI3IDE0OjQ4ICBhbmR5CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IE9uIHdpbmRvd3MgYnV0IG5vdCBvbiBib3JsYW5kLCBsb29rIGF0CgkgIGNtYWtlX2J1aWxkX3Rvb2wgaW5zdGVhZCBvZiBjb21waWxlciB0byBkZXRlcm1pbmUgYnVpbGQgbmFtZS4KCSAgT3RoZXJ3aXNlIHRoZXkgd2lsbCBhbGwgYmUgY2wKCjIwMDMtMDItMjcgMTE6NTQgIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogVXNlIG1vcmUgY29uZGVuc2UgYnVpbGRuYW1lLiBJZiB0aGlzIHdvcmtzCgkgIGZpbmUgd2UgY2FuIG1ha2UgY21CdWlsZE5hbWUgY29tbWFuZCBkZXByZWNhdGVkCgoyMDAzLTAyLTI3IDEwOjUzICBraW5nCgoJKiBTb3VyY2UvV1hEaWFsb2cvY21XWE1haW5GcmFtZS5jeHg6IFJlbW92ZSB3YXJuaW5nIGFib3V0IHNoYWRvd2luZwoJICB2YXJpYWJsZSAobWVyZ2luZyBhbmR5J3MgY2hhbmdlIHRvIGhlYWQpCgoyMDAzLTAyLTI1IDEyOjM2ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvY21XWE1haW5GcmFtZS5jeHg6IFJlbW92ZSB3YXJuaW5nIGFib3V0IHNoYWRvd2luZwoJICB2YXJpYWJsZQoKMjAwMy0wMi0yNCAxMTowMiAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBGaXhlZCBjcmFzaCB3aGVuCgkgIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZIGlzIGRlbGV0ZWQgYmV0d2VlbiBjb25maWd1cmVzLgoKMjAwMy0wMi0yMSAxNTo1MiAga2luZwoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLnJjOiBCVUc6IEZpeGVkIHRhYiBvcmRlcmluZyBvZiBndWkKCSAgY29tcG9uZW50cy4KCjIwMDMtMDItMjAgMTc6MzggIGFuZHkKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogVXNlIHNpbXBsZSBkZWZhdWx0cyBpZiBEYXJ0Q29uZmlnIGRvZXMgbm90CgkgIGV4aXN0LiBUaGlzIHdheSB5b3UgY2FuIHVzZSBkYXJ0IHRvIGJ1aWxkIGFueSBwcm9qZWN0CgoyMDAzLTAyLTIwIDEwOjQ2ICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlVlM2RmluZE1ha2UuY21ha2U6IEJVRzogRml4IHJlZ2lzdHJ5IGVudHJ5IG5hbWUuCgoyMDAzLTAyLTIwIDEwOjQ0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlVlM2RmluZE1ha2UuY21ha2U6IEJVRzogbG9vayBmb3IgbXNkZXYgaW4gdGhlIHJpZ2h0CgkgIHBsYWNlCgoyMDAzLTAyLTIwIDA5OjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBiZXR0ZXIgZGVmYXVsdCBnZW5lcmF0b3IKCSAgY2hvaWNlCgoyMDAzLTAyLTIwIDA5OjQwICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgZm9yIDEuNi41CgkgIHJlbGVhc2UuCgoyMDAzLTAyLTIwIDA4OjU1ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBmb3IgY29ycmVjdCBwYXRoCgkgIHN0eWxlIGluIGRlcGVuZCBmaWxlCgoyMDAzLTAyLTIwIDA4OjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBmb3IgY29ycmVjdCBwYXRoCgkgIHN0eWxlIGluIGRlcGVuZCBmaWxlCgoyMDAzLTAyLTIwIDA4OjQ3ICBraW5nCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6IEJVRzogRG9uJ3QgdGVzdCBldmVyeSB0aW1lIGZvcgoJICAiZm9yIiBzY29wZS4KCjIwMDMtMDItMjAgMDg6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggcHJvYmxlbSB3aXRoCgkgIGxpYiBpbiB0aGUgbmFtZSBvZiBsaWJyYXJ5LiBJZiB0aGVyZSB3YXMgbGliIGluIHRoZSBuYW1lIG9mCgkgIGxpYnJhcnksIHRoZW4gb24gV2luZG93cyAod2hlcmUgdGhlcmUgaXMgbm90IGxpYiBwcmVmaXgpLCBjbWFrZQoJICBzcGxpdCB0aGUgbmFtZSB3cm9uZ2x5LiBUaGlzIG9ubHkgbWFuaWZlc3RlZCB3aGVuIGZ1bGwgcGF0aCB0bwoJICB0aGUgbGlicmFyeSBpcyBzcGVjaWZpZWQuCgoyMDAzLTAyLTIwIDA4OjQxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6IHJlbW92ZSBjb21tZW50ZWQgY29kZQoKMjAwMy0wMi0yMCAwODozOCAga2luZwoKCSogTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZTogQlVHOiBGaXhlZCByZXR1cm4gMCB0aHJvdWdoIHZvaWQKCSAgdHlwZS4KCjIwMDMtMDItMjAgMDg6MzcgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZTogRU5IOiBSZW1vdmVkIGNyZWF0aW9uIG9mIGV4dHJhCgkgIENNQUtFX0NfQ09NUElMRVJfRlVMTFBBVEggYW5kIENNQUtFX0NYWF9DT01QSUxFUl9GVUxMUEFUSCBjYWNoZQoJICBlbnRyaWVzLgoKMjAwMy0wMi0yMCAwODozNCAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogQWRkZWQgbWlzc2luZwoJICBwYXJlbiB0byBnZW5lcmF0ZWQgZmlsZS4KCjIwMDMtMDItMjAgMDg6MzIgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBCVUc6IEZpeCBsb3dlci1jYXNpbmcgb2YgY29tcGlsZXIgZm9yCgkgIHdpbjk4LgoKMjAwMy0wMi0yMCAwODozMCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgZm9yIHZlcnNpb24KCSAgMS42LjUuCgoyMDAzLTAyLTIwIDA4OjI4ICBraW5nCgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuaDogQlVHOiBUaGlzIGNvbW1hbmQgbXVzdCBiZQoJICBpbmhlcml0ZWQuCgoyMDAzLTAyLTIwIDA4OjIzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBCVUc6IFJlbW92ZWQgcmVmZXJlbmNlIHRvIENNYWtlIDEuNAoJICBjb21wYXRhYmlsaXR5IHZhcmlhYmxlLgoKMjAwMy0wMi0yMCAwNzo1NSAga2luZwoKCSogU291cmNlL2NtRHVtcERvY3VtZW50YXRpb24uY3h4OiBFUlI6IEFkZGVkIG1pc3NpbmcgcmV0dXJuLgoKMjAwMy0wMi0xOSAxNzozNyAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVzaW5nIG5ldyAtLWFsbC1mb3ItY292ZXJhZ2Ugb2YKCSAgRHVtcERvY3VtZW50YXRpb24gdG8gaW1wcm92ZSBjb3ZlcmFnZS4KCjIwMDMtMDItMTkgMTc6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbUR1bXBEb2N1bWVudGF0aW9uLmN4eDogRU5IOiBBZGRlZCBvcHRpb24gdG8gZHVtcCBhbGwKCSAgZG9jdW1lbnRhdGlvbiAoY292ZXJhZ2UpLgoKMjAwMy0wMi0xOSAxNzoxMCAga2luZwoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogQlVHOiBSZW1vdmVkIHVzZSBvZiBjbWFrZSAxLjQKCSAgY29tcGF0YWJpbGl0eSB2YXJpYWJsZS4KCjIwMDMtMDItMTkgMTI6NTQgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXggcHJvYmxlbSB3aXRoCgkgIGxpYiBpbiB0aGUgbmFtZSBvZiBsaWJyYXJ5LiBJZiB0aGVyZSB3YXMgbGliIGluIHRoZSBuYW1lIG9mCgkgIGxpYnJhcnksIHRoZW4gb24gV2luZG93cyAod2hlcmUgdGhlcmUgaXMgbm90IGxpYiBwcmVmaXgpLCBjbWFrZQoJICBzcGxpdCB0aGUgbmFtZSB3cm9uZ2x5LiBUaGlzIG9ubHkgbWFuaWZlc3RlZCB3aGVuIGZ1bGwgcGF0aCB0bwoJICB0aGUgbGlicmFyeSBpcyBzcGVjaWZpZWQuCgoyMDAzLTAyLTE5IDA4OjUyICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRVJSOiBGaXhlZCBzaWduZWQvdW5zaWduZWQgd2FybmluZy4KCjIwMDMtMDItMTggMjA6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbUR1bXBEb2N1bWVudGF0aW9uLmN4eDogRU5IOiBVcGRhdGVkIHRvIHVzZQoJICBjbURvY3VtZW50YXRpb24gY2xhc3MuCgoyMDAzLTAyLTE4IDIwOjQyICBraW5nCgoJKiBTb3VyY2UvOiBjbURvY3VtZW50YXRpb24uY3h4LCBjbURvY3VtZW50YXRpb24uaCwgY21ha2VtYWluLmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IEVOSDogUmUtaW1wbGVtZW50ZWQgZG9jdW1lbnQgZ2VuZXJhdGlvbgoJICBjbGFzcyB0byBiZSBtb3JlIG9yZ2FuaXplZCBhbmQgbW9yZSByb2J1c3QuCgoyMDAzLTAyLTE4IDIwOjQwICBraW5nCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oOiBGaXggdG8gZG9jdW1lbnRhdGlvbgoJICBmb3JtYXR0aW5nOiByZW1vdmVkIGV4dHJhIG5ld2xpbmUuCgoyMDAzLTAyLTE4IDE2OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogRU5IOiBmaXggZm9yIHZzIDcKCSAgYmV0YTEKCjIwMDMtMDItMTcgMTU6NDcgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRQYWNrYWdlQ29tbWFuZC5oOiBCVUc6IFRoaXMgY29tbWFuZCBtdXN0IGJlCgkgIGluaGVyaXRlZC4KCjIwMDMtMDItMTcgMTA6MzAgIGFuZHkKCgkqIE1vZHVsZXMvQ2hlY2tTeW1ib2xFeGlzdHMuY21ha2U6IEZpeCByZXR1cm4gdmFsdWUgcHJvYmxlbQoKMjAwMy0wMi0xNyAwOTo1OSAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1N0cmluZ1dpZGdldC5jeHg6IEF0dGVtcHQgdG8gZml4IFNHSQoJICBjY21ha2UgcHJvYmxlbSAodGhhbmsgeW91IENsaW50IE1pbGxlcikKCjIwMDMtMDItMTcgMDk6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbURvY3VtZW50YXRpb24uY3h4OiBNaW5vciBkb2N1bWVudGF0aW9uIGZpeGVzCgoyMDAzLTAyLTE3IDA5OjQyICBraW5nCgoJKiBTb3VyY2UvY21ha2VtYWluLmN4eDogRU5IOiBBZGRlZCBleGVjdXRhYmxlLXNwZWNpZmljIGNvbW1hbmQtbGluZQoJICBvcHRpb25zLgoKMjAwMy0wMi0xNyAwOTo0MiAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmg6IEVOSDogQWRkZWQKCSAgaGVhZGVyIGJlZm9yZSBsaXN0IG9mIGNvbW1hbmRzIGluIGdlbmVyYXRlZCBkb2NzLiAgTWFkZSBvcHRpb25zCgkgIG1vcmUgaW50dWl0aXZlLgoKMjAwMy0wMi0xNiAxMTo1NyAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IEVSUjogVXNlIG9mIHN0cmVhbSBmb3JtYXQgZmxhZ3MgaXMKCSAgaGFyZCB0byBtYWtlIHBvcnRhYmxlLiAgTWFudWFsbHkgaW1wbGVtZW50aW5nIGp1c3RpZmljYXRpb24uCgoyMDAzLTAyLTE1IDIyOjM2ICBraW5nCgoJKiBTb3VyY2UvY21Eb2N1bWVudGF0aW9uLmN4eDogRVJSOiBVc2Ugb2Ygc3RkOjppb3M6OmZtdGZsYWdzIGlzIG5vdAoJICBwb3J0YWJsZSB0byBvbGRlciBjb21waWxlcnMuCgoyMDAzLTAyLTE0IDE4OjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmgsIGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oLCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsCgkgIGNtQWRkTGlicmFyeUNvbW1hbmQuaCwgY21BZGRUZXN0Q29tbWFuZC5oLAoJICBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuaCwgY21CdWlsZENvbW1hbmQuaCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwKCSAgY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBjbUVsc2VDb21tYW5kLmgsCgkgIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaCwgY21FbmRGb3JFYWNoQ29tbWFuZC5oLAoJICBjbUVuZElmQ29tbWFuZC5oLCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuaCwgY21GTFRLV3JhcFVJQ29tbWFuZC5oLAoJICBjbUZpbmRGaWxlQ29tbWFuZC5oLCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLAoJICBjbUZpbmRQYWNrYWdlQ29tbWFuZC5oLCBjbUZpbmRQYXRoQ29tbWFuZC5oLAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBjbUZvckVhY2hDb21tYW5kLmgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmgsCgkgIGNtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5oLCBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5oLAoJICBjbUlUS1dyYXBUY2xDb21tYW5kLmgsIGNtSWZDb21tYW5kLmgsIGNtSW5jbHVkZUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLCBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwKCSAgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21Mb2FkQ2FjaGVDb21tYW5kLmgsIGNtTG9hZENvbW1hbmRDb21tYW5kLmgsIGNtTWFjcm9Db21tYW5kLmgsCgkgIGNtTWFrZURpcmVjdG9yeUNvbW1hbmQuaCwgY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuaCwKCSAgY21NZXNzYWdlQ29tbWFuZC5oLCBjbU9wdGlvbkNvbW1hbmQuaCwKCSAgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oLCBjbVByb2plY3RDb21tYW5kLmgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5oLCBjbVJlbW92ZUNvbW1hbmQuaCwKCSAgY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuaCwgY21TZXRDb21tYW5kLmgsCgkgIGNtU2V0U291cmNlRmlsZXNQcm9wZXJ0aWVzQ29tbWFuZC5oLAoJICBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmgsIGNtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmgsCgkgIGNtU291cmNlR3JvdXBDb21tYW5kLmgsIGNtU3RyaW5nQ29tbWFuZC5oLCBjbVN1YmRpckNvbW1hbmQuaCwKCSAgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLCBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaCwgY21UcnlSdW5Db21tYW5kLmgsCgkgIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuaCwKCSAgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oLCBjbVZUS1dyYXBKYXZhQ29tbWFuZC5oLAoJICBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsIGNtVlRLV3JhcFRjbENvbW1hbmQuaCwKCSAgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oLCBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5oOiBFTkg6IENsZWFuZWQgdXAgZG9jdW1lbnRhdGlvbiBhbmQgZm9ybWF0dGVkCgkgIGl0IGZvciB1c2UgYnkgY21Eb2N1bWVudGF0aW9uLgoKMjAwMy0wMi0xNCAxNjoxNiAga2luZwoKCSogU291cmNlL2NtRG9jdW1lbnRhdGlvbi5jeHg6IEVOSDogSW1wcm92ZWQgZm9ybWF0dGluZyBvZgoJICBwbGFpbi10ZXh0IGhlbHAgdG8gYWRkIGEgYmxhbmsgbGluZSBiZWZvcmUgdGhlIGJlZ2lubmluZyBvZiBhCgkgIHByZWZvcm1hdHRlZCBzZWN0aW9uLgoKMjAwMy0wMi0xNCAxMzoyOCAga2luZwoKCSogU291cmNlLzogY21Eb2N1bWVudGF0aW9uLmN4eCwgY21Eb2N1bWVudGF0aW9uLmg6IEVOSDogRnVydGhlcgoJICBpbXByb3ZlZCBmb3JtYXR0aW5nLglIVE1ML21hbi9oZWxwIG5vdyBhbGwgaGF2ZSBhIGNvbnNpc3RlbnQKCSAgYXBwZWFyYW5jZS4KCjIwMDMtMDItMTQgMTM6MDYgIGtpbmcKCgkqIFNvdXJjZS86IGNtRG9jdW1lbnRhdGlvbi5jeHgsIGNtRG9jdW1lbnRhdGlvbi5oOiBFTkg6IEltcHJvdmVkCgkgIGZvcm1hdHRpbmcgb2YgZG9jdW1lbnRhdGlvbi4KCjIwMDMtMDItMTQgMTE6MTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBMb3dlcmNhc2UgaGFzIGEgYmFkIHNpZ25pdHVyZSwgc28gSSBoYXZlIHRvCgkgIGxpdmUgd2l0aCBpdAoKMjAwMy0wMi0xNCAxMDo1NiAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFUlI6IEFkZGVkIG1pc3NpbmcgaW5jbHVkZSBmb3IgbXN2Yy4KCjIwMDMtMDItMTQgMTA6NTMgIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBNYWtlZmlsZS5pbiwgY21Eb2N1bWVudGF0aW9uLmN4eCwKCSAgY21Eb2N1bWVudGF0aW9uLmgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jY21ha2UuY3h4OiBFTkg6IEFkZGVkIGNtRG9jdW1lbnRhdGlvbiBjbGFzcyB0bwoJICBnZW5lcmF0ZSB2YXJpb3VzIGZvcm1zIG9mIGRvY3VtZW50YXRpb24uICBFYWNoIGV4ZWN1dGFibGUgd2lsbCBiZQoJICBhYmxlIHRvIGdlbmVyYXRlIGl0cyBvd24gZG9jdW1lbnRhdGlvbi4KCjIwMDMtMDItMTQgMTA6NDAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZTogRU5IOiBtb3ZlIGZ1bGwgcGF0aCBjb21waWxlciB0bwoJICBpbnRlcm5hbCBhbmQgbm90IGp1c3QgYWR2YW5jZWQKCjIwMDMtMDItMTQgMDk6NTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvVGVzdEZvckFOU0lGb3JTY29wZS5jbWFrZSwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLCBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmg6IHNwZWxsaW5nIGVycm9ycwoKMjAwMy0wMi0xNCAwOToyNSAgaG9mZm1hbgoKCSogQ01ha2UucnRmOiBmaXggc3BlbGxpbmcgZXJyb3JzCgoyMDAzLTAyLTEzIDIxOjU3ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dCwgY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQ29uZmlndXJlLmNtYWtlLmguaW4sIFNvdXJjZS9jbUNvbmZpZ3VyZS5oLmluLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaCwgU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6CgkgIENlbnRyYWxpemVkIHNldHRpbmcgb2YgQ01ha2UgdmVyc2lvbiBudW1iZXIgdG8gdG9wLWxldmVsIENNYWtlCgkgIGxpc3RmaWxlLgoKMjAwMy0wMi0xMyAxMjowMyAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBNZXJnZWQgdXBkYXRlcyBmb3IgMS42LjQKCSAgcmVsZWFzZS4KCjIwMDMtMDItMTMgMTE6NTcgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogQlVHOiBGaXggZmluZCBvZiBKTkkgb24gTWFjIE9TWCAxMC4yLgoKMjAwMy0wMi0xMyAxMTo1NCAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgZm9yIDEuNi40CgkgIHJlbGVhc2UuCgoyMDAzLTAyLTEzIDExOjUyICBraW5nCgoJKiBNb2R1bGVzL1VzZVZUS0NvbmZpZzQwLmNtYWtlOiBCVUc6IENvcHkgb2YgX0xJQl9ERVBFTkRTIHZhcmlhYmxlcwoJICBuZWVkcyB0byBiZSBkb3VibGUtcXVvdGVkLgoKMjAwMy0wMi0xMyAxMTo1MCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3Igc3BhY2VzIGluCgkgIHBhdGhzIGluIGxpYnJhcnkgcGF0aAoKMjAwMy0wMi0xMyAxMTo0NyAga2luZwoKCSogU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eDogQlVHOiBVc2UKCSAgY21TeXN0ZW1Ub29sczo6SXNOT1RGT1VORC4KCjIwMDMtMDItMTIgMTM6NDMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbWFrZW1haW4uY3h4OiBUcnkgdG8gZml4IHVwZGF0ZQoKMjAwMy0wMi0xMiAwOToyNiAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBXcml0ZSBpbmRpdmlkdWFsIHRvbwoKMjAwMy0wMi0xMSAxNDo0OSAgYW5keQoKCSogTW9kdWxlcy9GaW5kSk5JLmNtYWtlOiBPaywgbm93IGl0IGZpbmRzIEpOSSBvbiBNYWMgT1NYIDEwLjIKCjIwMDMtMDItMTEgMTM6NTYgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogRml4IHR5cG8KCjIwMDMtMDItMTEgMTM6NTMgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogQWRkIG1pc3NpbmcgbG9jYXRpb24KCjIwMDMtMDItMTEgMTM6MzcgIGFuZHkKCgkqIE1vZHVsZXMvRmluZEpOSS5jbWFrZTogSW1wcm92ZSBzZWFyY2hpbmcgZm9yIGphdmEgZmlsZXMgb24gT1NYCgoyMDAzLTAyLTExIDEzOjM0ICBhbmR5CgoJKiBTb3VyY2UvY21TZXRUYXJnZXRQcm9wZXJ0aWVzQ29tbWFuZC5oOiBGaXggY29tbWVudAoKMjAwMy0wMi0xMSAwOTo1MCAga2luZwoKCSogTW9kdWxlcy86IEZpbmRNYW5nbGVkTWVzYS5jbWFrZSwgRmluZE9TTWVzYS5jbWFrZTogTW92aW5nIHRoaXMKCSAgdmVyeSBzcGVjaWZpYyBtb2R1bGUgdG8gVlRLLgoKMjAwMy0wMi0xMSAwOToxOSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaDogRml4IGNvbnQgYW5kIHJlbW92ZSBjb21tZW50cwoKMjAwMy0wMi0xMCAyMzoxOSAgYW5keQoKCSogU291cmNlLzogY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY3Rlc3QuY3h4OiBTdGFydCB3b3JraW5nIG9uIGNvbnQKCjIwMDMtMDItMTAgMjI6MDAgIGhvZmZtYW4KCgkqIFRlc3RzL1RyeUNvbXBpbGUvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIG1vcmUgdGVzdGluZyBmb3IgYW5zaQoJICBmb3Igc2NvcGVzCgoyMDAzLTAyLTEwIDIxOjU2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6ICBjbGVhbiB1cCBjaGVjayBmb3IgZm9yIHNjb3BlCgkgIHRlc3QKCjIwMDMtMDItMTAgMjE6NTIgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0LmgsIGN0ZXN0LmN4eDogRml4IGRhdGUgaXNzdWVzIHdpdGgKCSAgZGlmZmVyZW50IG1vZGVscwoKMjAwMy0wMi0xMCAxNjoyMCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9UcnlDb21waWxlL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZAoJICBhIG5ldyB0ZXN0IGZvciBUUllfQ09NUElMRQoKMjAwMy0wMi0xMCAxMzoxOSAgaG9mZm1hbgoKCSogVGVzdHMvVHJ5Q29tcGlsZS86IENNYWtlTGlzdHMudHh0LCBmYWlsLmMsIHBhc3MuYzogRU5IOiBhZGQgYSBuZXcKCSAgdGVzdCB0byB0ZXN0IHRyeSBjb21waWxlCgoyMDAzLTAyLTEwIDExOjA4ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogUnVubmluZyAibWFrZSB0ZXN0IgoJICBjYW4gbm93IGhhdmUgQVJHUyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4gIFRoZXNlIEFSR1MgYXJlCgkgIHBhc3NlZCB0byBjdGVzdC4KCjIwMDMtMDItMDkgMTY6MTEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVSUjogUmVtb3ZlZCBleHRyYSAmJi4KCjIwMDMtMDItMDggMTA6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEZpeCBmb3IgaW5jbHVkZQoJICBvcHRpb25hbAoKMjAwMy0wMi0wOCAxMDoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmb3Igc3BhY2VzIGluCgkgIHBhdGhzIGluIGxpYnJhcnkgcGF0aAoKMjAwMy0wMi0wNyAxNjoyOSAga2luZwoKCSogTW9kdWxlcy9Vc2VWVEtDb25maWc0MC5jbWFrZTogQlVHOiBDb3B5aW5nIF9MSUJfREVQRU5EUyB2YXJpYWJsZXMKCSAgcmVxdWlyZXMgZG91YmxlLXF1b3RlZCBhcmd1bWVudC4KCjIwMDMtMDItMDcgMTQ6MDQgIGtpbmcKCgkqIFNvdXJjZS86IGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmN4eCwKCSAgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbU1ha2VmaWxlLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsCgkgIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuaCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaDogU2V2ZXJhbCBmaXhlcy9pbXByb3ZlbWVudHM6CgoJICAgIC0gRml4ZWQgQ29sbGFwc2VGdWxsUGF0aCB0byB3b3JrIG9uIHJlbGF0aXZlIHBhdGhzIHdpdGggYmFzZQoJICBwYXRocwoJICAgICAgbm90IGluIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgoJICAgIC0gSU5DTFVERSBjb21tYW5kIG5vdyBzdXBwb3J0cyByZWxhdGl2ZSBwYXRocyAodXNpbmcgYWJvdmUKCSAgZml4KS4KCSAgICAtIEFkZGVkIEFCU09MVVRFIG9wdGlvbiB0byBHRVRfRklMRU5BTUVfQ09NUE9ORU5UIGNvbW1hbmQgdG8KCSAgICAgIHVud2luZCBzeW1saW5rcyBhbmQgcmVsYXRpdmUgcGF0aHMuCgkgICAgLSBGaXhlZCBsaWJOYW1lX0VYUE9SVFMgbWFjcm8gZGVmaW5pdGlvbiB0byBiZSB2YWxpZCBDCgkgIGlkZW50aWZpZXIuCgkgICAgLSBBZGRlZCBERUZJTkVfU1lNQk9MIHRhcmdldCBwcm9wdGVydHkgZm9yIGN1c3RvbWl6aW5nIHRoZQoJICBleHBvcnQgc3ltYm9sLgoJICAgIC0gSW1wbGVtZW50ZWQgTElOS19GTEFHUyB0YXJnZXQgcHJvcHRlcnR5IGZvciBsaWJyYXJpZXMgaW4gVkM2CgkgIGFuZCBWQzcuCgoJICBTZXZlcmFsIG9mIHRoZXNlIGZpeGVzIHdlcmUgY29udHJpYnV0ZWQgYnkgR2FyZXRoIEpvbmVzLgoKMjAwMy0wMi0wNyAxMTo0NyAgaG9mZm1hbgoKCSogU291cmNlL0NUZXN0L0NNYWtlTGlzdHMudHh0OiBSZW1vdmUgd2FybmluZ3Mgb24gQUlYCgoyMDAzLTAyLTA3IDExOjAzICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IERvIG5vdCByZXVzZSBjb25uZWN0aW9uIGFzIHRoYXQKCSAgZmVhdHVyZSBzZWVtcyB0byBiZSBicm9rZW4KCjIwMDMtMDItMDcgMTE6MDMgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogRml4IHVwZGF0ZSByZXR1cm4gc3RhdHVzCgoyMDAzLTAyLTA3IDEwOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogc3BlbGxpbmcgZXJyb3IgZml4CgoyMDAzLTAyLTA3IDEwOjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBCVUc6IHVzZSBJc05PVEZPVU5ECgoyMDAzLTAyLTA3IDEwOjA1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFUlI6IFJlbW92ZWQgc3RyYXkgJiYgZnJvbQoJICBlbmQgb2YgbGluZS4KCjIwMDMtMDItMDcgMDA6MDkgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IEFkZCB1cGRhdGluZyBzdXBwb3J0CgoyMDAzLTAyLTA2IDE3OjQ4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dDogdGVsbCB0aGUgYWl4IGxpbmtlciBub3QgdG8gZ2l2ZSB3YXJuaW5ncyB3aXRoCgkgIC1iaGFsdDo1CgoyMDAzLTAyLTA2IDE1OjE4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogYWRkZWQgb3B0aW9uIHRvIHNodXQgb2ZmCgkgIGF1dG9tYXRpYyByZWJ1aWxkaW5nCgoyMDAzLTAyLTA2IDEwOjQ5ICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogQ29tZWF1IEMrKyBoYXMgYmVlbiBhZGRlZCBmb3IgbmlnaHRseQoJICB0ZXN0aW5nLiAgSXQgZG9lcyBub3Qgc3VwcG9ydCBzaGFyZWQgbGlicmFyaWVzLCBzbyB3ZSBjYW5ub3QgcnVuCgkgIHRoZSBjb21wbGV4IHRlc3RzLgoKMjAwMy0wMi0wNiAwODo0NSAga2luZwoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBCVUc6IFdlIHdhbnQgQXBwbGVJbmZvLnBsaXN0IGZyb20KCSAgb3VyIHNvdXJjZSB0cmVlLCBub3QgdGhlIHZlcnNpb24gb2YgQ01ha2UgcnVubmluZyB0aGUgYnVpbGQuCgoyMDAzLTAyLTA1IDIyOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLAoJICBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogIGFkZCBiZXR0ZXIgdGVzdGluZyBmb3IgdW5saW5rCgoyMDAzLTAyLTA1IDE4OjA1ICBraW5nCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEJVRzogR2VuZXJhdGUgMCBpbnRvIHRlc3QKCSAgZHJpdmVyIGluc3RlYWQgb2YgTlVMTC4KCjIwMDMtMDItMDUgMTY6NTYgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogQWRkZWQgd2luMzJfemlwZmlsZSBhbmQKCSAgd2luMzJfdXBsb2FkIGNvbW1hbmRzLgoKMjAwMy0wMi0wNSAxNjo1MyAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBBZGRlZCB3aW4zMl96aXBmaWxlIGFuZAoJICB3aW4zMl91cGxvYWQgY29tbWFuZHMuCgoyMDAzLTAyLTA1IDE2OjE3ICBraW5nCgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEJVRzogQXBwbGVJbmZvLnBsaXN0IHNob3VsZCBjb21lCgkgIGZyb20gYnVpbGQgdHJlZS4KCjIwMDMtMDItMDUgMTU6MTQgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEJVRzogVXBkYXRlZCByZWxlYXNlIHRhZyBmb3IKCSAgMS42LjMuCgoyMDAzLTAyLTA1IDE1OjA3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogVXBkYXRlZCB0byB2ZXJzaW9uCgkgIDEuNi4zLgoKMjAwMy0wMi0wNSAxNTowNSAga2luZwoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IEVOSDoKCSAgQ01BS0VfSU5TVEFMTF9QUkVGSVggc2hvdWxkIG5vdCBiZSBhZHZhbmNlZCBvbiBVTklYLgoKMjAwMy0wMi0wNSAxNTowMiAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9IUC1VWC5jbWFrZTogQlVHOiBPcHRpbWl6YXRpb24gZmxhZ3MgdXNlICsKCSAgcHJlZml4LCBub3QgLS4KCjIwMDMtMDItMDUgMTU6MDEgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4OiBCVUc6IEZpeGVkIGNyYXNoCgkgIHdoZW4gbWVzc2FnZXMgYXJlIHRvbyBsb25nLgoKMjAwMy0wMi0wNSAxNTowMCAga2luZwoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBCVUc6IEZpeGVkIEdVSSBmb3IgbmV3CgkgIE5PVEZPVU5EIGNoZWNrcy4KCjIwMDMtMDItMDUgMTQ6NTggIGtpbmcKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogQnVnIGluIE5PVEZPVU5EIGVycm9yCgkgIHJlcG9ydGluZyBsb2dpYy4KCjIwMDMtMDItMDUgMTQ6NTUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2U6IGZpeCBkZWZhdWx0IHJlbGVhc2UgZmxhZ3MgZm9yIGhwCgoyMDAzLTAyLTA1IDE0OjU1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmg6IEVOSDogQmV0dGVyIGVycm9yCgkgIGNoZWNraW5nIGZvciBjYWNoZSBpdGVyYXRvci4KCjIwMDMtMDItMDUgMTM6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogRU5IOiBhZGQgYSBjaGVjayBmb3IgLU5PVEZPVU5ECgoyMDAzLTAyLTA0IDE1OjM3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogbW92ZSBjbWFrZSBpbnN0YWxsCgkgIG91dCBvZiBhZHZhbmNlZAoKMjAwMy0wMi0wNCAxNTozNyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogQlVHOiBhZGQgYmV0dGVyIHRlc3RpbmcgZm9yCgkgIG5vdGZvdW5kCgoyMDAzLTAyLTA0IDE0OjM3ICBiZXJrCgoJKiBNb2R1bGVzLzogRmluZE1hbmdsZWRNZXNhLmNtYWtlLCBGaW5kT1NNZXNhLmNtYWtlOiBDcmVhdGVkCgkgIG1vZHVsZXMgZm9yIE1lc2EgaGVhZGVycyBhbmQgbGlicmFyaWVzLgoKMjAwMy0wMi0wNCAxNDozMSAgaG9mZm1hbgoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHg6IEJVRzogZG9uJ3QgbGV0CgkgIHRoZSBtZXNzYWdlcyBnZXQgdG9vIGJpZwoKMjAwMy0wMi0wNCAxNDowMSAgbWFydGluawoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuaCwgY21DYWNoZU1hbmFnZXIuY3h4OiBzYWZlciBvcGVyYXRpb24gb2YKCSAgaXRlcmF0b3JzCgoyMDAzLTAyLTA0IDA5OjUwICBhbmR5CgoJKiBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4OiBPb3BzLCBzdGQgbmFtZXNwYWNlCgoyMDAzLTAyLTA0IDA5OjQ4ICBhbmR5CgoJKiBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4OiBHZW5lcmF0ZSBqYXZhIGRlcGVuZGVuY3kgZmlsZXMKCjIwMDMtMDItMDMgMjM6MDggIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaDogRU5IOiBJbXByb3ZlZCByb2J1c3RuZXNzIG9mCgkgIHJlbW90ZSBpbnZvY2F0aW9uLiAgQWRkZWQgbW9yZSBkb2N1bWVudGF0aW9uLgoKMjAwMy0wMi0wMyAyMjo0NiAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoOiBFTkg6IEFkZGVkIGRvY3VtZW50YXRpb24KCSAgYW5kIHVzYWdlLgoKMjAwMy0wMi0wMyAxMzozMSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgYSBiZXR0ZXIgdGVzdCBmb3IKCSAgbGliIGRlcHMKCjIwMDMtMDItMDMgMTI6MDIgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogVXBkYXRlZCB2ZXJzaW9uIHRvCgkgIDEuNi4yLgoKMjAwMy0wMi0wMyAxMjowMSAga2luZwoKCSogU291cmNlLzogY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIGNtRmluZFByb2dyYW1Db21tYW5kLmgsIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmN4eCwKCSAgY21HbG9iYWxHZW5lcmF0b3IuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGRlZCBuZXcgTk9URk9VTkQKCSAgbm90aWZpY2F0aW9uIGZlYXR1cmUuCgoyMDAzLTAyLTAzIDExOjUwICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmgsIFdYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgZnJvbQoJICB2ZXJzaW9uIDEuNi4xIHRvIDEuNi4yLgoKMjAwMy0wMi0wMyAxMTo0OSAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IEJVRzogUmVtb3ZlZCBnZW5lcmF0aW9uCgkgIG9mIHN0cmF5IHBhcmVuLgoKMjAwMy0wMi0wMyAwOTo1MyAga2luZwoKCSogU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHg6IEJVRzogUmVtb3ZlZCBnZW5lcmF0aW9uCgkgIG9mIHN0cmF5IHBhcmVuLgoKMjAwMy0wMi0wMiAyMjozMiAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogRU5IOiBDbGVhbmVkIHVwCgkgIHNnaSB1bnJlZmVyZW5jZWQgd2FybmluZyBoYWNrLgoKMjAwMy0wMi0wMiAxMTo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogZml4IHdhcm5pbmcKCjIwMDMtMDItMDEgMTY6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBmaXggd2FybmluZwoKMjAwMy0wMi0wMSAxNjozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuaDogRU5IOiBmaXggZG9jIGxpbmUKCjIwMDMtMDItMDEgMTY6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNTdGFuZGFyZEluY2x1ZGVzLmg6IEJVRzogYWRkIG1pc3NpbmcKCSAgOwoKMjAwMy0wMS0zMSAxNTowMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBFTkg6IGFkZCBjaGVja2luZyBmb3IgTk9URk9VTkQKCjIwMDMtMDEtMzEgMTQ6MzkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZSwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQKCSAgY2hlY2tpbmcgZm9yIE5PVEZPVU5ECgoyMDAzLTAxLTMxIDEzOjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZEZpbGVDb21tYW5kLmgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4LAoJICBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtSVRLV3JhcFRjbENvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbVNvdXJjZUZpbGUuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogRU5IOiBhZGQKCSAgY2hlY2tpbmcgZm9yIE5PVEZPVU5ECgoyMDAzLTAxLTMxIDEzOjI0ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogVXBkYXRlZCB0byB2ZXJzaW9uIDEuNi4xCgkgIGZyb20gMS42LjAuCgoyMDAzLTAxLTMxIDEzOjE4ICBraW5nCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBNZXJnZSBmcm9tIEhFQUQuCVVzZSBwcm9jZXNzCgkgIG91dHB1dCBmb3IgZXJyb3IgcmVwb3J0aW5nIGluc3RlYWQgb2Ygc3Rkb3V0LgoKMjAwMy0wMS0zMSAxMzowNCAga2luZwoKCSogTW9kdWxlcy9GaW5kTEFURVguY21ha2U6IEVOSDogQ2hhbmdlcyB0byB3b3JrIG9uIHdpbmRvd3MuICBNZXJnZWQKCSAgZnJvbSBIRUFELgoKMjAwMy0wMS0zMSAxMTo1MiAga2luZwoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogQlVHOiBOZWVkIEZJTkRfUFJPR1JBTSBpbnN0ZWFkIG9mCgkgIEZJTkRfRklMRSB0byBmaW5kIGZsdWlkLmV4ZS4KCjIwMDMtMDEtMzEgMTE6NDkgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFBlcmwuY21ha2U6IEVOSDogQWRkZWQgQWN0aXZlUGVybC84MDQgYXMgYSBzZWFyY2gKCSAgcGF0aC4KCjIwMDMtMDEtMzEgMTE6NDQgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlOiBFUlI6IFJlbW92ZWQgc3RyYXkKCSAgZG91YmxlIHF1b3RlLgoKMjAwMy0wMS0zMSAxMTo0MSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBBbm90aGVyIG1lcmdlIGZyb20KCSAgYnJhbmNoIDEuNi4KCjIwMDMtMDEtMzEgMTE6NDAgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFgxMS5jbWFrZTogQlVHOiBGaXggZm9yIGN5Z3dpbidzIFgxMS4KCjIwMDMtMDEtMzEgMTE6MzYgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZXdpemFyZC5jeHg6IEVOSDogY21ha2UgLWkgb24gSFAgbmVlZHMgcHJpbnRmIGluc3RlYWQKCSAgb2YgY291dC4KCjIwMDMtMDEtMzEgMTE6MzUgIGtpbmcKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0OiBCVUc6IENoYW5nZSBpbnN0YWxsIGxvY2F0aW9uIG9mCgkgIGNtQ1BsdWdpbkFQSSBoZWFkZXIuCgoyMDAzLTAxLTMxIDA4OjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RhbmRhcmRJbmNsdWRlcy5oOiBmaXhlZCB3YXJuaW5ncwoKMjAwMy0wMS0zMCAxNDozNCAgYW5keQoKCSogU291cmNlLzogY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LCBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogQWRkCgkgIHNvbWUgZXJyb3IgY2hlY2tpbmcgZm9yIG1pc3NpbmcgaW5jbHVkZSBkaXJlY3RvcmllcyBhbmQgbGluawoJICBsaWJyYXJpZXMKCjIwMDMtMDEtMzAgMTQ6MzQgIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlOiBSZW1vdmUgZXh0cmEgcXVvdGUKCjIwMDMtMDEtMzAgMTM6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZXdpemFyZC5jeHg6IEJVRzogY2FuIG5vdCBtaXggY291dCBhbmQgZmdldHMgb24gaHAKCjIwMDMtMDEtMzAgMTE6NTAgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNTdGFuZGFyZEluY2x1ZGVzLmg6IEVSUjogRml4aW5nCgkgIGF0dGVtcHQgdG8gcmVtb3ZlIHdhcm5pbmdzLgoKMjAwMy0wMS0yOSAxNDoyMCAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogRVJSOiBBbm90aGVyCgkgIGF0dGVtcHQgdG8gZ2V0IHJpZCBvZiB1bnJlZmVyZW5jZWQgaW5saW5lIGZ1bmN0aW9uIHdhcm5pbmdzIG9uCgkgIFNHSS4KCjIwMDMtMDEtMjkgMTM6NTYgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogVXNlICogaW5zdGVhZCBvZgoJICBkaXJlY3RvcnkgbGlzdCBmb3IgaW5zdGFsbGF0aW9uIHRhcmJhbGwuCgoyMDAzLTAxLTI5IDEzOjQ2ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBCVUc6IE5lZWQgdG8gaW5jbHVkZSB0aGUKCSAgaW5jbHVkZSBkaXJlY3RvcnkgZnJvbSB0aGUgaW5zdGFsbGF0aW9uLgoKMjAwMy0wMS0yOSAwOTowNiAgYW5keQoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBBdHRlbXB0IHRvIGZpeCBidWlsZCBwcm9ibGVtIG9uIHNvbWUKCSAgcGxhdGZvcm1zCgoyMDAzLTAxLTI4IDE1OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuaDogRU5IOiBiZXR0ZXIgZG9jcwoKMjAwMy0wMS0yOCAxNTo0NCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEZpbmRGTFRLLmNtYWtlLCBGaW5kUXQuY21ha2U6IEVOSDogY2hhbmdlIEZJTkRfRklMRSB0bwoJICBGSU5EX1BST0dSQU0KCjIwMDMtMDEtMjggMDg6NTMgIGFuZHkKCgkqIE1vZHVsZXMvRmluZExBVEVYLmNtYWtlOiBNYWtlIHRoaW5ncyB3b3JrIG9uIHVuaXggYW5kIGFkZCBEVklQREYKCjIwMDMtMDEtMjcgMTI6MjUgIGFuZHkKCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEZpeCBvdXRwdXQgdmFyaWFibGUgYW5kCgkgIHJlbW92ZSB0aGlzLT5tXyB0byBiZSBvbmx5IG1fCgoyMDAzLTAxLTI3IDEyOjE4ICBhbmR5CgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBNb3ZlIGVycm9ycyB0byBvdXRwdXQKCSAgdmFyaWFibGUKCjIwMDMtMDEtMjQgMTc6NDAgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2N5Z3dpbi1wYWNrYWdlLnNoLmluOiBFTkg6IE1lcmdlZCBtb3JlIGNoYW5nZXMKCSAgZnJvbSAxLjYgYnJhbmNoLgoKMjAwMy0wMS0yNCAxNzozNCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY3lnd2luLXBhY2thZ2Uuc2guaW46IEVOSDogQWRkZWQgdGVzdGluZyB0bwoJICBwYWNrYWdpbmcgc2NyaXB0LgoKMjAwMy0wMS0yNCAxNTo0OCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBNZXJnZWQgbW9yZSBjaGFuZ2VzIGZyb20KCSAgMS42IGJyYW5jaC4KCjIwMDMtMDEtMjQgMTU6MDIgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogQWRkZWQgY3lnd2luX3VwbG9hZAoJICBmdW5jdGlvbi4KCjIwMDMtMDEtMjQgMTQ6NDAgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlLzogY21ha2VfcmVsZWFzZS5zaCwgY29uZmlnX0FJWCwgY29uZmlnX0RhcndpbiwKCSAgY29uZmlnX0lSSVg2NCwgY29uZmlnX0xpbnV4LCBjb25maWdfT1NGMSwgY29uZmlnX1N1bk9TOiBFTkg6CgkgIE1lcmdlZCAxLjYtYnJhbmNoIGNoYW5nZXMgdG8gcmVsZWFzZSBzY3JpcHRzLgoKMjAwMy0wMS0yNCAxNDoyOSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjb25maWdfQUlYLCBjb25maWdfRGFyd2luLCBjb25maWdfSVJJWDY0LAoJICBjb25maWdfTGludXgsIGNvbmZpZ19PU0YxLCBjb25maWdfU3VuT1M6IEVOSDogVXNlIHZlcmJvc2UKCSAgbWFrZWZpbGUgZHVyaW5nIHJlbGVhc2UgYnVpbGQuCgoyMDAzLTAxLTI0IDEzOjU1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgY2hlY2tvdXQKCSAgcmV2aXNpb24gdG8gUmVsZWFzZS0xLTYtMCB0YWcuCgoyMDAzLTAxLTI0IDEzOjUzICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtLzogSFAtVVguY21ha2U6IEJVRzogQWRkZWQgbWlzc2luZyBsaW5rIGZsYWcgdG8KCSAgZXhwb3J0IHN5bWJvbHMgZnJvbSBhbiBleGVjdXRhYmxlLgoKMjAwMy0wMS0yNCAxMTo1MCAga2luZwoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgZm9yIGNtYWtlIDEuNi4wCgkgIHJlbGVhc2UuCgoyMDAzLTAxLTI0IDExOjQ5ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFVwZGF0ZWQgZm9yIDEuNi4wCgkgIHJlbGVhc2Ugb3ZlciAxLjYuYmV0YTIuCgoyMDAzLTAxLTI0IDExOjQ1ICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZV9yZWxlYXNlX2NvbmZpZ19kYXJ3aW4sCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX2lyaXgsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2xpbnV4LCBjbWFrZV9yZWxlYXNlX2NvbmZpZ19vc2YsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX3N1biwgY21ha2VfcmVsZWFzZV9jeWd3aW4uc2gsCgkgIGNtYWtlX3JlbGVhc2VfdW5peF9jb25maWcuc2gsIGNtYWtlX3JlbGVhc2VfdmVyc2lvbi5zaDogRU5IOgoJICBSZW1vdmluZyBvbGQgcmVsZWFzZSBzY3JpcHRzLiAgQ01ha2UgMS42IG5vdyBoYXMgaXRzIG93biBjb3B5IG9mCgkgIHRoZSByZWxlYXNlIHNjcmlwdHMuCgoyMDAzLTAxLTI0IDExOjQ1ICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZS1jeWd3aW4tcGFja2FnZS5zaCwgY21ha2VfcmVsZWFzZV91bml4X2J1aWxkLnNoLAoJICBjbWFrZV9yZWxlYXNlX3VuaXhfcGFja2FnZS5zaCwgUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoLAoJICBSZWxlYXNlL2NvbmZpZ19BSVgsIFJlbGVhc2UvY29uZmlnX0NZR1dJTl9OVC01LjEsCgkgIFJlbGVhc2UvY29uZmlnX0RhcndpbiwgUmVsZWFzZS9jb25maWdfSFAtVVgsCgkgIFJlbGVhc2UvY29uZmlnX0lSSVg2NCwgUmVsZWFzZS9jb25maWdfTGludXgsIFJlbGVhc2UvY29uZmlnX09TRjEsCgkgIFJlbGVhc2UvY29uZmlnX1N1bk9TLCBSZWxlYXNlL2N5Z3dpbi1wYWNrYWdlLnNoLmluOiBFTkg6IFJlbGVhc2UKCSAgYnJhbmNoIHNob3VsZCBjb250YWluIGl0cyBvd24gcmVsZWFzZSBzY3JpcHRzLgoKMjAwMy0wMS0yNCAxMTo0MSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoLCBjb25maWdfQUlYLCBjb25maWdfRGFyd2luLAoJICBjb25maWdfSFAtVVgsIGNvbmZpZ19MaW51eCwgY29uZmlnX09TRjEsIGNvbmZpZ19TdW5PUzogRU5IOgoJICBFbmFibGVkIHRlc3RpbmcgZHVyaW5nIHJlbGVhc2UgYnVpbGQuCgoyMDAzLTAxLTI0IDEwOjMzICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RhbmRhcmRJbmNsdWRlcy5oOiBFUlI6IEZpeGVkCgkgIHVucmVmZXJlbmNlZCB0ZXJtaW9zIGRlY2xhcmF0aW9uIHdhcm5pbmcuCgoyMDAzLTAxLTIzIDEwOjQyICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kTEFURVguY21ha2U6IG5vIG1lc3NhZ2UKCjIwMDMtMDEtMjMgMTA6MzcgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRMQVRFWC5jbWFrZTogRklYOiAtIHJlbmFtZSBzb21lIGVudHJpZXMgKENPTVBJTEUgLT4KCSAgQ09NUElMRVIsIGFuZCB0aGUgY29udmVydGVycyAtPiBfQ09OVkVSVEVSKSAtIG1ha2Ugc3VyZSB0aGF0CgkgIFdpbmRvdyBzeXN0ZW0gYXJlIGdpdmVuIGEgY2hhbmNlIHRvIGZpbmQgTGF0ZXggYW5kIHRoZSBjb252ZXJ0ZXJzCgkgIGlmIE1pa1RleCBhbmQgR2hvc3RTY3JpcHQgYXJlIGluc3RhbGxlZCAoYnV0IG5vdCBpbiB0aGUgUEFUSCkKCjIwMDMtMDEtMjMgMTA6MzYgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRQZXJsLmNtYWtlOiBGSVg6IHRoZSBjdXJyZW50IHZlcnNpb24gb2YgUGVybCBpcyA1LjgKCjIwMDMtMDEtMjMgMTA6MzUgIGJhcnJlCgoJKiBTb3VyY2UvY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4OiBGSVg6IHRoaXMgY29tbWFuZCB3YXMKCSAgbm90IHByb2Nlc3NpbmcgIGl0cyBhcmcgdG8gZXhwYW5kIHJlZ2lzdGVyeSB2YWx1ZXMKCjIwMDMtMDEtMjIgMTU6MDAgIG1hcnRpbmsKCgkqIE1vZHVsZXMvUGxhdGZvcm0vZ2NjLmNtYWtlOiBqb2lucyBmcm9tIHRoZSBtYWluIHRyZWUKCjIwMDMtMDEtMjIgMTQ6NTkgIG1hcnRpbmsKCgkqIE1vZHVsZXMvUGxhdGZvcm0vZ2NjLmNtYWtlOiBtaW5vciBjaGFuZ2UgdG8gZGVmYXVsdCBjb21waWxlIGZsYWdzCgoyMDAzLTAxLTIyIDE0OjQ5ICBtYXJ0aW5rCgoJKiBNb2R1bGVzLzogRmluZE1QRUcyLmNtYWtlLCBGaW5kU0RMLmNtYWtlOiBtZXJnZSBmcm9tIGJyYW5jaAoKMjAwMy0wMS0yMiAxNDozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmg6IEVOSDogbWVyZ2UgZnJvbSBicmFuY2gKCjIwMDMtMDEtMjIgMTQ6MjEgIGhvZmZtYW4KCgkqIFRlc3RzL1gxMS9DTWFrZUxpc3RzLnR4dDogRU5IOiBtZXJnZSBmcm9tIGhlYWQKCjIwMDMtMDEtMjIgMTQ6MjAgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9Eb3h5Z2VuL2RvY19tYWtlYWxsLnNoLmluOiBtZXJnZSBmcm9tIG1haW4gdHJlZQoKMjAwMy0wMS0yMiAxNDoyMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogbWVyZ2UgZnJvbSBtYWluIHRyZWUsIHRlc3QgZm9yCgkgIHdvcmtpbmcgYyBhbmQgYysrIGNvbXBpbGVycwoKMjAwMy0wMS0yMiAxNDoxNyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY2NvbmZpZ3VyZSwgY2NvbmZpZ3VyZS5pbiwgY3h4Y29uZmlndXJlLAoJICBjeHhjb25maWd1cmUuaW46IG1lcmdlIHdpdGggbWFpbiBicmFuY2ggYW5kIHJlbW92ZSB1bnVzZWQgc2NyaXB0cwoKMjAwMy0wMS0yMiAxNDoxMyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kQW5kSW1wb3J0Q01ha2VQcm9qZWN0LmNtYWtlOiBtb3ZlZCB0byBjKysgY29tbWFuZAoKMjAwMy0wMS0yMiAxMjozOCAgbWFydGluawoKCSogTW9kdWxlcy86IENNYWtlVGVzdENDb21waWxlci5jbWFrZSwgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6CgkgIGpvaW5zIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwMy0wMS0yMiAxMjozMSAgbWFydGluawoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbWFrZS5jeHg6IGpvaW5zIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwMy0wMS0yMiAxMjoyOSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlVGVzdENDb21waWxlci5jbWFrZSwgQ01ha2VUZXN0Q1hYQ29tcGlsZXIuY21ha2U6CgkgIEVOSDogb25seSBydW4gdGVzdCBmb3Igd29ya2luZyBjIGFuZCBjeHggY29tcGlsZXIgb25jZQoKMjAwMy0wMS0yMiAxMjoyOCAgbWFydGluawoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVRlc3RDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZSwgTW9kdWxlcy9GaW5kRkxUSy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kSW1hZ2VNYWdpY2suY21ha2UsIE1vZHVsZXMvRmluZFRjbHNoLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRWVEsuY21ha2UsIE1vZHVsZXMvRmluZFgxMS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9DWUdXSU4uY21ha2UsIFNvdXJjZS9jbU1lc3NhZ2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oLAoJICBTb3VyY2UvY21FeHBvcnRMaWJyYXJ5RGVwZW5kZW5jaWVzLmN4eCwKCSAgU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5oLAoJICBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuaDoKCSAgam9pbnMgZnJvbSB0aGUgbWFpbiB0cmVlCgoyMDAzLTAxLTIyIDExOjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBmaXhlZCBzcGVsbGluZyBtaXN0YWtlCgoyMDAzLTAxLTIyIDExOjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IHNwZWxsaW5nIGZpeAoKMjAwMy0wMS0yMiAxMToyMSAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBtZXJnZSBmcm9tIGJyYW5jaAoKMjAwMy0wMS0yMiAxMToxNiAgbWFydGluawoKCSogTW9kdWxlcy9MaW5rUVQuY21ha2U6IHJlbW92ZWQgc2luY2Ugbm8gbG9uZ2VyIHVzZWQKCjIwMDMtMDEtMjIgMTE6MTEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZExBVEVYLmNtYWtlOiBtZXJnZSBicmFuY2ggY2hhbmdlIGludG8gbWFpbiB0cmVlCgoyMDAzLTAxLTIyIDEwOjQwICBraW5nCgoJKiBTb3VyY2UvY21GaW5kUGFja2FnZUNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yIGxvb2tpbmcKCSAgdGhyb3VnaCBDTUFLRV9NT0RVTEVfUEFUSCB0byBsb2NhdGUgRmluZDxuYW1lPi5jbWFrZSBtb2R1bGVzLgoKMjAwMy0wMS0yMiAxMDozMyAga2luZwoKCSogU291cmNlLzogY21ha2UuY3h4LCBDdXJzZXNEaWFsb2cvY2NtYWtlLmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oOiBCVUc6IEZpeGVkIGNyYXNoIHdoZW4gQ01BS0VfUk9PVAoJICBjYW5ub3QgYmUgZm91bmQuCgoyMDAzLTAxLTIyIDA5OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IGZpeCBjb21tYW5kIGxpbmUgdG8gdGFrZSAtRyBvbmx5CgoyMDAzLTAxLTIyIDA5OjI4ICBraW5nCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQlVHOiBDTWFrZSAxLjQKCSAgY29uZmlndXJlZCBwcm9qZWN0cyBkaWQgbm90IGJ1aWxkIHdpdGggbmV3IENNYWtlLgoKMjAwMy0wMS0yMSAxNzoxNSAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtRmluZFBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21GaW5kUGFja2FnZUNvbW1hbmQuaDogRU5IOiBBZGRlZCBGSU5EX1BBQ0tBR0UgY29tbWFuZCBwcm90b3R5cC4KCjIwMDMtMDEtMjEgMTY6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogVXNlIENNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlIHRvCgkgIGxvY2F0ZSBtb2R1bGVzIGRpcmVjdG9yeSBpbnN0ZWFkIG9mIEZpbmRWVEsuY21ha2UuCgoyMDAzLTAxLTIxIDE1OjAzICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRWVEsuY21ha2U6IEVOSDogVXBkYXRlZCBkb2N1bWVudGF0aW9uLgoKMjAwMy0wMS0yMSAxNDowMSAgYW5keQoKCSogTW9kdWxlcy9DaGVja0luY2x1ZGVGaWxlcy5jbWFrZTogVGhpcyBsaXN0IGNhbiBiZSByZWFsbHkgbG9uZy4KCSAgT25seSBkaXNwbGF5IHRoZSB2YXJpYWJsZSBuYW1lCgoyMDAzLTAxLTIxIDEyOjUwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VUZXN0Q0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVGVzdENYWENvbXBpbGVyLmNtYWtlLCBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1lc3NhZ2VDb21tYW5kLmN4eCwgU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuaCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oOiBhZGQgYSBmYXRhbAoJICBlcnJvciwgYW5kIG1ha2Ugc3VyZSBjIGFuZCBjKysgY29tcGlsZXJzIHdvcmsgYmVmb3JlIHVzaW5nIHRoZW0KCjIwMDMtMDEtMjEgMTI6NDEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlOiB1c2UgZXhwb3J0IGFsbCBzeW1ib2xzIG9uIGN5Z3dpbgoKMjAwMy0wMS0yMSAxMDo1OSAgYmFycmUKCgkqIE1vZHVsZXMvRmluZEltYWdlTWFnaWNrLmNtYWtlOiBJTVBPUlRBTlQgRklYOiBiZSBleHRyYS1jYXJlZnVsCgkgIGhlcmUgb24gV0lOMzIsIHdlIGRvIE5PVCB3YW50IENNYWtlIHRvIGxvb2sgaW4gdGhlIHN5c3RlbSdzIFBBVEgKCSAgZW52IHZhciB0byBzZWFyY2ggZm9yIEltYWdlTWFnaWNrJ3MgY29udmVydC5leGUsIG90aGVyd2lzZSBpdCBpcwoJICBnb2luZyB0byBwaWNrIE1pY3Jvc29mdCBXaW5kb3cncyBvd24gY29udmVydC5leGUsIHdoaWNoIGlzIHVzZWQKCSAgdG8gY29udmVydCBGQVQgcGFydGl0aW9ucyB0byBOVEZTIGZvcm1hdCAhIERlcGVuZGluZyBvbiB0aGUKCSAgb3B0aW9ucyBwYXNzZWQgdG8gY29udmVydC5leGUsIHRoZXJlIGlzIGEgZ29vZCBjaGFuY2UgeW91IHdvdWxkCgkgIGtpc3MgeW91ciBoYXJkLWRpc2sgZ29vZC1ieWUuCgoyMDAzLTAxLTIwIDIxOjE1ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZExBVEVYLmNtYWtlOiBFTkg6IFBTMlBERl9DT01QSUxFIGFkZGVkLiBJdCBsb29rcyBmb3IKCSAgcHMycGRmLgoKMjAwMy0wMS0yMCAxOToxNyAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IEZpeCBmb3IgY3VzdG9tIGNvbW1hbmRzIHdpdGggc3BhY2VzCgkgIGluIHBhdGhzLiAgVGhlIGFyZ3VtZW50cyB3ZXJlIG5vdCBoYXZpbmcgc3BhY2VzIGVzY2FwZWQuCgoyMDAzLTAxLTIwIDE4OjU0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCB0eXBvIGluCgkgIHByZXZpb3VzIGZpeC4KCjIwMDMtMDEtMjAgMTg6NTIgIGtpbmcKCgkqIFNvdXJjZS86IGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIGRpcmVjdG9yeQoJICBjcmVhdGlvbiBmb3Igc3BhY2VzIGluIGluc3RhbGwgcGF0aC4KCjIwMDMtMDEtMjAgMTY6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtRXhwb3J0TGlicmFyeURlcGVuZGVuY2llcy5jeHgsCgkgIFNvdXJjZS9jbUV4cG9ydExpYnJhcnlEZXBlbmRlbmNpZXMuaCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBhIG5ldyBjb21tYW5kCgkgIHRoYXQgYWxsb3dzIGV4cG9ydHMgb2YgbGlicmFyeSBkZXBlbmRlbmNpZXMgZnJvbSBhIHByb2plY3QgdG8gYQoJICBmaWxlCgoyMDAzLTAxLTIwIDE0OjM5ICB3aWxsCgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6IEJVRzogZml4IG1pc3NlZCBDTUFLRSB0byBYMTEgdmFyaWFibGUgbmFtZQoKMjAwMy0wMS0xOSAxMTo0MiAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEltcHJvdmVkIENvcHlGaWxlIGVycm9yIG1lc3NhZ2VzLgoKMjAwMy0wMS0xOCAxMTozNCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBUZW1wbGF0ZXMvaW5zdGFsbC1zaDogQlVHOgoJICBGaXhlZCBtYWtlIGluc3RhbGwgdG8gaGFuZGxlIGxpYnJhcnkgcHJlZml4L3N1ZmZpeCBzZXR0aW5ncy4KCSAgQWxzbyBmaXhlZCBzdXBwb3J0IGZvciBzcGFjZXMgaW4gcGF0aHMgZHVyaW5nIG1ha2UgaW5zdGFsbC4KCjIwMDMtMDEtMTcgMTg6MTQgIGtpbmcKCgkqIE1vZHVsZXMvOiBGaW5kVlRLLmNtYWtlOiBCVUc6IEZpeCBmb3IgYXBwbGljYXRpb24gb2YKCSAgZXhwYW5kLWxpc3QtdmFyaWFibGVzLgoKMjAwMy0wMS0xNyAxODowMSAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBUZW1wbGF0ZXMvaW5zdGFsbC1zaDogRU5IOgoJICBTdXBwb3J0IGZvciBzcGFjZXMgaW4gcGF0aHMgZHVyaW5nIG1ha2UgaW5zdGFsbC4KCjIwMDMtMDEtMTcgMTc6MTkgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEFuZEltcG9ydENNYWtlUHJvamVjdC5jbWFrZTogRU5IOiBBZGRpbmcKCSAgRklORF9BTkRfSU1QT1JUX0NNQUtFX1BST0pFQ1QgbWFjcm8uCgoyMDAzLTAxLTE3IDE1OjE1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IEFkZGVkIHNhbml0eSBjaGVjayBmb3IKCSAgc2V0dGluZyBvZiBXWF9SRVNPVVJDRVMgYnkgY29uZmlnX0RhcndpbiBmb3Igb3N4X2luc3RhbGwuCgoyMDAzLTAxLTE3IDEzOjM1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNtYWtlX3JlbGVhc2Uuc2gsIGNvbmZpZ19EYXJ3aW46IEVOSDoKCSAgUHJvdG90eXBlIGZvciBPU1ggcGFja2FnaW5nLgoKMjAwMy0wMS0xNyAxMzozNSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBDeWd3aW4gcGFja2FnZSBpcyBub3cKCSAgY3JlYXRlZCBpbiBhIEN5Z3dpbiBzdWJkaXJlY3RvcnkuCgoyMDAzLTAxLTE3IDEzOjE0ICBraW5nCgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEVOSDogVXBkYXRlZCB2ZXJzaW9uIG51bWJlciBmb3IKCSAgMS42LmJldGEyIHJlbGVhc2UuCgoyMDAzLTAxLTE3IDEyOjUxICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEZpeCB2ZXJzaW9uCgoyMDAzLTAxLTE3IDExOjU3ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS86IGNtYWtlLWN5Z3dpbi1wYWNrYWdlLnNoLCBjbWFrZV9yZWxlYXNlLnNoLAoJICBjeWd3aW4tcGFja2FnZS5zaC5pbjogRU5IOiBSZW5hbWVkIGNtYWtlLWN5Z3dpbi1wYWNrYWdlLnNoIHRvCgkgIGN5Z3dpbi1wYWNrYWdlLnNoLmluIGFuZCByZW1vdmVkIGV4ZWN1dGFibGUgcGVybWlzc2lvbiBzbyBpdAoJICBjYW5ub3QgYmUgcnVuIGFjY2lkZW50YWxseS4gIEl0IG11c3QgYmUgcnVuIGFmdGVyIGJlaW5nIHJlbmFtZWQKCSAgdG8gY21ha2UtJHtWRVJTSU9OfS0ke1JFTEVBU0V9LgoKMjAwMy0wMS0xNyAxMTo1NSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBjbGVhbiBub3cgcmVtb3ZlcyB0aGUKCSAgZW50aXJlIHJlbGVhc2Ugcm9vdCBkaXJlY3RvcnkuCgoyMDAzLTAxLTE3IDExOjUxICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZS1jeWd3aW4tcGFja2FnZS5zaCwgY21ha2VfcmVsZWFzZV9jb25maWdfYWl4LAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19kYXJ3aW4sIGNtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXgsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2lyaXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX2xpbnV4LAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19vc2YsIGNtYWtlX3JlbGVhc2VfY29uZmlnX3N1biwKCSAgY21ha2VfcmVsZWFzZV9jeWd3aW4uc2gsIGNtYWtlX3JlbGVhc2VfdW5peF9idWlsZC5zaCwKCSAgY21ha2VfcmVsZWFzZV91bml4X2NvbmZpZy5zaCwgY21ha2VfcmVsZWFzZV91bml4X3BhY2thZ2Uuc2gsCgkgIGNtYWtlX3JlbGVhc2VfdmVyc2lvbi5zaDogRU5IOiBSZW1vdmluZyBvbGQgcmVsZWFzZSBzY3JpcHRzIGFuZAoJICBjb25maWcgZmlsZXMuCgoyMDAzLTAxLTE3IDExOjQyICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfT1NGMTogRU5IOiBBZGRpbmcgT1NGIHJlbGVhc2UKCSAgY29uZmlndXJhdGlvbi4KCjIwMDMtMDEtMTcgMTE6MDUgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogQWRkZWQgY3lnd2luIHJlbGVhc2UKCSAgc3VwcG9ydC4KCjIwMDMtMDEtMTcgMTA6MzAgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlLWN5Z3dpbi1wYWNrYWdlLnNoOiBFTkg6IEFkZGluZyBjeWd3aW4KCSAgcGFja2FnaW5nIHNjcmlwdCB0byByZWxlYXNlIGRpcmVjdG9yeS4KCjIwMDMtMDEtMTcgMTA6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiByZW1vdmUKCSAgdHJhaWxpbmcgc2xhc2ggZnJvbSBmaW5kcGF0aCBjb21tYW5kCgoyMDAzLTAxLTE3IDEwOjI4ICBob2ZmbWFuCgoJKiBUZXN0cy9TeXN0ZW1JbmZvcm1hdGlvbi86IER1bXBJbmZvcm1hdGlvbi5jeHgsCgkgIFN5c3RlbUluZm9ybWF0aW9uLmluOiBhZGQgc29tZSBtb3JlIHByaW50cwoKMjAwMy0wMS0xNyAxMDoyMSAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY29uZmlnX0xpbnV4OiBFTkg6IFJlbW92ZWQgb2xkIHNldHRpbmcuCgoyMDAzLTAxLTE3IDEwOjIxICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfQ1lHV0lOX05ULTUuMTogRU5IOiBDeWd3aW4gcmVsZWFzZQoJICBjb25maWd1cmF0aW9uLgoKMjAwMy0wMS0xNyAwOTo1MiAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBmdWxsCgkgIHJlbW90ZSBwYWNrYWdpbmcgYW5kIGNvcHlpbmcgYmFjayB0byBsb2NhbCBtYWNoaW5lLiAgQWRkZWQKCSAgc3VwcG9ydCBmb3IgdXBsb2FkaW5nIHRvIEZUUCBzZXJ2ZXIuCgoyMDAzLTAxLTE3IDA5OjIwICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfSFAtVVg6IEVOSDogTGlua2luZyB3aXRoCgkgIC1hLGFyY2hpdmVfc2hhcmVkIGluc3RlYWQgb2YgLWEsYXJjaGl2ZSBzbyB0aGF0IHRoZSBzaGFyZWQgY3Vyc2VzCgkgIGxpYnJhcnkgY2FuIGJlIHVzZWQuCgoyMDAzLTAxLTE3IDA5OjE1ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfQUlYOiBFUlI6IENhbid0IGJ1aWxkIHJlbGVhc2Ugc3RhdGljIG9uCgkgIGFpeC4KCjIwMDMtMDEtMTcgMDk6MDggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19BSVg6IEFkZCBBSVggY29uZmlnIGZpbGUKCjIwMDMtMDEtMTcgMDg6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbUNUZXN0LmN4eDogUmVtb3ZlIHdhcm5pbmcgYWJvdXQgJWUgYW5kICVUCgoyMDAzLTAxLTE2IDE1OjQ3ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGZpeCBmb3IKCSAgY29tcGlsZXJzIHRoYXQgbmVlZCBfCgoyMDAzLTAxLTE2IDE0OjU5ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEFkZCBhaXggd2FybmluZwoKMjAwMy0wMS0xNiAxNDoxNSAgYW5keQoKCSogRGFydENvbmZpZy5jbWFrZTogQWRkIHNlbGVjdGlvbiBvZiBkcm9wIG1ldGhvZAoKMjAwMy0wMS0xNiAxNDowNSAgYmFycmUKCgkqIFV0aWxpdGllcy9Eb3h5Z2VuL2RvY19tYWtlYWxsLnNoLmluOiBGSVg6IEhIQyBpcyBub3cKCSAgSFRNTF9IRUxQX0NPTVBJTEVSCgoyMDAzLTAxLTE2IDEzOjMxICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEZJWDogUXVvdGVzIGFkZGVkIGFyb3VuZCB0aGUgbGlzdCBvZiBsaWJzCgkgIHRvIGJlIGFkZGVkIGluIEFwcGxlLgoKMjAwMy0wMS0xNiAxMzoyNCAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBFTkg6IFBsYXRmb3JtIGRlcGVuZGVudCBsaWJyYXJpZXMgYWRkZWQKCSAgZm9yIEFQUExFLgoKMjAwMy0wMS0xNiAxMzowMiAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBUcnkgdG8gZml4IGFpeCBwcm9ibGVtCgoyMDAzLTAxLTE2IDEyOjQ1ICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEFkZCBwcm94eSBzdXBwb3J0IGZvciB0cmlnZ2VyaW5nCgoyMDAzLTAxLTE2IDEyOjM4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBFTkg6IGZpeCBmb3IgYm9ybGFuZCBhbmQgY3lnd2luCgoyMDAzLTAxLTE2IDEyOjMwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvY21DVGVzdFN1Ym1pdC5jeHg6IEltcHJvdmUgc3VibXRpdHRpbmcgdXNpbmcgaHR0cAoKMjAwMy0wMS0xNiAwOTo1NyAgYW5keQoKCSogU291cmNlL0NUZXN0L2NtQ1Rlc3RTdWJtaXQuY3h4OiBJbXByb3ZlIGJ1aWxkLCBub3cgaXQgc2hvdWxkCgkgIGJ1aWxkIG9uIG1hYyBhbmQgb3RoZXIgcGxhdGZvcm1zIHdoZXJlIGluY2x1ZGUgZmlsZSBkZXBlbmQgb24KCSAgZWFjaCBvdGhlcgoKMjAwMy0wMS0xNiAwODo0MCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogYWRkIGJhY2sgR2V0Q01ha2VJbnN0YW5jZQoKMjAwMy0wMS0xNiAwODozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogZml4IGR1cGxpY2F0ZSBtZW1iZXIgb24gYnJhbmNoCgoyMDAzLTAxLTE2IDA4OjI4ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGFkZCB0aGUgY29uZmlnCgkgIGRpcmVjdG9yeSB0byBsb29rIGZvciB0aGUgbG9hZGFibGUgbW9kdWxlCgoyMDAzLTAxLTE1IDE5OjI0ICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBCVUc6IGVycm9yX2xvZyBmdW5jdGlvbgoJICBzaG91bGQgcmV0dXJuIDEgdG8gc3RvcCBleGVjdXRpb24gb2YgcmVzdCBvZiBzY3JpcHQuCgoyMDAzLTAxLTE1IDE5OjIwICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jbWFrZV9yZWxlYXNlLnNoOiBFTkg6IFJlbmFtZWQgcGFja2FnZSBjb21tYW5kCgkgIHRvIGJpbmFyeV90YXJiYWxsIGZvciBjbGFyaXR5LgoKMjAwMy0wMS0xNSAxOToxNyAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoLCBjb25maWdfSFAtVVg6IEVOSDogUmVsZWFzZQoJICBzY3JpcHQgbm93IGV4cG9ydHMgUEFUSCBhbmQgTERfTElCUkFSWV9QQVRIIHRvIHJlbW92ZSB0aGUgYnVyZGVuCgkgIGZyb20gdGhlIGNvbmZpZ3VyYXRpb24gc2NyaXB0cy4KCjIwMDMtMDEtMTUgMTk6MTQgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19IUC1VWDogQlVHOiBBdHRlbXB0IHRvIGZpeCByZW1vdGUKCSAgaW52b2NhdGlvbi4KCjIwMDMtMDEtMTUgMTk6MDQgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NvbmZpZ19IUC1VWDogRU5IOiBFbmFibGluZyB2ZXJib3NlIG1ha2VmaWxlCgkgIGdlbmVyYXRpb24gZm9yIGhwLXV4IGJ1aWxkLiAgVGhpcyB3aWxsIGVhc2UgaGFuZC1maXhpbmcgb2YgdGhlCgkgIGJ1aWxkIG9mIGNjbWFrZS4KCjIwMDMtMDEtMTUgMTk6MDIgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogQ2xlYW5lZCB1cCByZW1vdGUKCSAgaW52b2NhdGlvbi4KCjIwMDMtMDEtMTUgMTg6NTEgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEVOSDogSW1wcm92ZWQgY2xlYW4gdGFyZ2V0LgoKMjAwMy0wMS0xNSAxODo0OCAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvY21ha2VfcmVsZWFzZS5zaDogQlVHOiBGaW5pc2hlZCBjbGVhbiB0YXJnZXQKCSAgYW5kIGZpeGVkIGdyZXAgZm9yIGN2c3Jvb3QgaW4gfi8uY3ZzcGFzcy4KCjIwMDMtMDEtMTUgMTg6NDQgIGtpbmcKCgkqIFV0aWxpdGllcy9SZWxlYXNlL2NtYWtlX3JlbGVhc2Uuc2g6IEJVRzogQ1ZTIGxvZ2luIGNvbW1hbmQgaXMKCSAgbG9naW4sIG5vdCBjdnNfbG9naW4uCgoyMDAzLTAxLTE1IDE4OjQzICBraW5nCgoJKiBVdGlsaXRpZXMvUmVsZWFzZS9jb25maWdfYWl4OiBFUlI6IFJlbW92ZWQgb2xkIGNvbmZpZyBmaWxlLgoKMjAwMy0wMS0xNSAxODo0MiAga2luZwoKCSogVXRpbGl0aWVzL1JlbGVhc2UvOiBjbWFrZV9yZWxlYXNlLnNoLCBjb25maWdfRGFyd2luLAoJICBjb25maWdfSFAtVVgsIGNvbmZpZ19JUklYNjQsIGNvbmZpZ19MaW51eCwgY29uZmlnX1N1bk9TLAoJICBjb25maWdfYWl4OiBFTkg6IE5ldyByZWxlYXNlIHNjcmlwdCBwcm90b3R5cGUuCgoyMDAzLTAxLTE1IDE4OjI4ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogTGlicmFyaWVzIGFyZSBub3QgbWFya2VkIGFzIEFEVkFOQ0VECgkgIG5vdy4KCjIwMDMtMDEtMTUgMTg6MDIgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IEVSUjogUmVtb3ZlZCBkdXBsaWNhdGUgZGVjbGFyYXRpb24uCgoyMDAzLTAxLTE1IDE3OjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFTkg6IGZpeCBmb3IgaWJtIGJ1aWxkCgoyMDAzLTAxLTE1IDE3OjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbWFrZXRlc3QuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L21vZHVsZUZpbGUuYywKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L21vZHVsZUZpbGUuaCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9tb2R1bGVGaWxlLmMsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9tb2R1bGVGaWxlLmgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvbW9kdWxlRmlsZS5jLAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L21vZHVsZUZpbGUuaDogRU5IOiBhZGQgdGVzdGluZwoJICBmb3IgbW9kdWxlcyBhbmQgb25lIHR3byBjb25maWcgbW9kZXMgZm9yIGNtYWtldGVzdAoKMjAwMy0wMS0xNSAxNzowMiAgaG9mZm1hbgoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0OiB1c2UgbW9kdWxlIG9uCgkgIGFsbCBwbGF0Zm9ybXMKCjIwMDMtMDEtMTUgMTU6MzIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogZml4IGZyb20gaGVhZAoKMjAwMy0wMS0xNSAxNTowMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBCVUc6IGZpeCBmb3IgT1NYIHdpdGggeDExIGdsIHN0dWZmCgoyMDAzLTAxLTE1IDEzOjI1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IG1lcmdlIHdpdGggaGVhZCBmaXggZm9yCgkgIGJvcmxhbmQgZmxhZyBhbmQgYmFkIHNldCBzdGF0bWVudAoKMjAwMy0wMS0xNSAxMzoyMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IGZpeCBmbGFncyBmb3IgYm9ybGFuZAoJICBsaW5rIHNoYXJlZCBhbmQgbW9kdWxlCgoyMDAzLTAxLTE1IDEzOjE0ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEJVRzogbWFrZSBzdXJlIHNldCBjb21tYW5kIGhhcyBwcm9wZXIKCSAgcXVvdGluZwoKMjAwMy0wMS0xNSAxMzoxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBxdW90ZSB0aGUgdmFyaWFibGUKCjIwMDMtMDEtMTUgMTE6NTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFRjbHNoLmNtYWtlOiBsb29rIGZvciBjeWd0Y2w4MwoKMjAwMy0wMS0xNSAxMTozMiAga2luZwoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogTWVyZ2Ugb2YgYmFja3dhcmQgY29tcGF0YWJpbGl0eSBjaGFuZ2VzIGZyb20KCSAgdHJ1bmsuCgoyMDAzLTAxLTE1IDExOjE3ICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV92ZXJzaW9uLnNoOiBFTkg6IFVwZGF0ZWQgdmVyc2lvbiBmb3IKCSAgMS42LmJldGEyIHJlbGVhc2UuCgoyMDAzLTAxLTE1IDExOjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHBhdGNoIGxldmVsCgoyMDAzLTAxLTE0IDIyOjEwICBhbmR5CgoJKiBTb3VyY2UvQ1Rlc3QvOiBjbUNUZXN0U3VibWl0LmN4eCwgY21DVGVzdFN1Ym1pdC5oOiBBZGQgc3VwcG9ydAoJICBmb3IgaHR0cCBzdWJtaXQuIEFsc28sIGFkZCBzdXBwb3J0IGZvciBwcm94eSwgYnV0IGl0IGRvZXMgbm90CgkgIHdvcmsgeWV0LgoKMjAwMy0wMS0xNCAyMjoxMCAgYW5keQoKCSogU291cmNlL2NtQ1Rlc3QuY3h4OiBBZGQgc3VwcG9ydCBmb3IgaHR0cCBzdWJtaXQKCjIwMDMtMDEtMTQgMDk6NTMgIGFuZHkKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IE1ha2UgR2V0Q01ha2VJbnN0YW5jZQoJICBwcml2YXRlIGFuZCBjbGVhbiBjeHggZmlsZQoKMjAwMy0wMS0xMyAxMDoxNSAgbWFydGluawoKCSogTW9kdWxlcy9DaGVja1N5bWJvbEV4aXN0cy5jbWFrZTogam9pbiBmcm9tIGhlYWQKCjIwMDMtMDEtMTMgMTA6MTEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBtZXJnZSBmcm9tIGJyYW5jaAoKMjAwMy0wMS0xMyAxMDowNyAgbWFydGluawoKCSogTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1jb21vLmNtYWtlOiBqb2luZWQgdG8gaGVhZAoKMjAwMy0wMS0xMyAxMDowNCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L3Rlc3RDb25seS5jLAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdENvbmx5LmM6IGpvaW5lZCB0byBoZWFkCgoyMDAzLTAxLTEzIDA5OjMwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuYzogQlVHOiBmaXgKCSAgQ01BS0VfQ19GTEFHUyBmb3IgdmlzdWFsIHN0dWRpbyA2LCBhbmQgYWRkIGEgdGVzdCBjYXNlCgoyMDAzLTAxLTEzIDA5OjI3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2U6IGpvaW5lZCB0byBoZWFkCgoyMDAzLTAxLTEzIDA5OjI0ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRQTkcuY21ha2U6IGZpeGVkIHR5cG8KCjIwMDMtMDEtMTMgMDk6MjIgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBUZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLCBUZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOgoJICBqb2luZWQgdG8gaGVhZAoKMjAwMy0wMS0xMyAwOToxMiAgbWFydGluawoKCSogTW9kdWxlcy86IENNYWtlVlM2QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLAoJICBDTWFrZVZTN0JhY2t3YXJkQ29tcGF0aWJpbGl0eS5jbWFrZSwgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwKCSAgRmluZFgxMS5jbWFrZTogam9pbmVkIHRvIGhlYWQKCjIwMDMtMDEtMTMgMDk6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLCBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlOiBqb2luZWQgdG8gaGVhZAoKMjAwMy0wMS0xMyAwOTowNiAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVmFyaWFibGVXYXRjaC5oOiBqb2luZWQgdG8gaGVhZAoKMjAwMy0wMS0xMyAwOTowMiAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IGpvaW5lZCB0byBoZWFkCgoyMDAzLTAxLTEzIDA4OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHg6IGpvaW5lZAoKMjAwMy0wMS0xMyAwODo1MCAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBhZGRlZCBpbnN0YWxsIHRhcmdldAoKMjAwMy0wMS0xMyAwODoxNCAgYW5keQoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogQWRkIHNwYWNlIGJldHdlZW4KCSAgYXJndW1lbnRzCgoyMDAzLTAxLTEyIDIyOjI4ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrU3ltYm9sRXhpc3RzLmNtYWtlOiBBZGQgbWFjcm8gZm9yIGNoZWNraW5nIGlmIHN5bWJvbAoJICBleGlzdHMKCjIwMDMtMDEtMTIgMTA6NTAgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IFVzZSBDIGZsYWdzIHRvby4gTm90CgkgIGV4YWN0bHkgdGhlIHJpZ2h0IHNvbHV0aW9uIGJ1dCBpdCB3aWxsIGhhdmUgdG8gZG8gZm9yIG5vdy4KCjIwMDMtMDEtMTEgMjE6NDcgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC86IGNtQ1Rlc3RTdWJtaXQuY3h4LCBjbUNUZXN0U3VibWl0Lmg6IEFkZCB0cmlnZ2VyaW5nCgoyMDAzLTAxLTExIDIxOjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IEZpeCB0aW1lIG91dHB1dCBhbmQgYWRkIHRyaWdnZXJpbmcKCjIwMDMtMDEtMTEgMTA6NTcgIGFuZHkKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRml4IHRlc3Rpbmcgb2YgY3VybCBvbiB3aW5kb3dzCgoyMDAzLTAxLTEwIDIwOjIyICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEFkZCBjdXJsIHRlc3RpbmcKCjIwMDMtMDEtMTAgMTc6MzEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IG1ha2UgaXQgd29yayB3aXRoIGNtYWtlIDEuNiB3aXRoIG5vCgkgIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CgoyMDAzLTAxLTEwIDExOjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBmaXggd2FybmluZ3MKCjIwMDMtMDEtMTAgMDk6MDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IGNvbXBpbGVyIHdhcm5pbmcKCjIwMDMtMDEtMTAgMDc6NTAgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9jbUNUZXN0U3VibWl0LmN4eDogTWV0aG9kIHNob3VsZCByZXR1cm4gc29tZXRoaW5nCgoyMDAzLTAxLTA5IDE1OjU0ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IGJldHRlciBmaXggZm9yIHdpbjMyCgoyMDAzLTAxLTA5IDE0OjAwICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IHVwZGF0ZSB0byBub3QgcHV0IFBST0pFQ1RfU09VUkNFX0RJUiBhcwoJICBPUEVOR0xfUEFUSAoKMjAwMy0wMS0wOSAxMjoxOCAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oLCBjbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmg6IGZpeCBidWcgaW4gZW52IHNldHRpbmdzCgoyMDAzLTAxLTA5IDExOjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21WYXJpYWJsZVdhdGNoLmg6IG1vcmUgb3B0aW9uIG9uIHZhcgoJICB3YXRjaGVzCgoyMDAzLTAxLTA5IDExOjM0ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2U6IG1pbm9yIGZpeCB0byBiYWNrdyBjb21wYXQKCjIwMDMtMDEtMDkgMTE6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IGZpeCB3YXJuaW5nCgoyMDAzLTAxLTA5IDExOjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmg6IHJlc3RvcmUgdGhlCgkgIGVudmlyb25tZW50IGZvciBjeHggYW5kIGNjIGluIGdsb2JhbCBnZW5lcmF0b3IKCjIwMDMtMDEtMDkgMTE6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVZhcmlhYmxlV2F0Y2guaDogdXNlIGNtc3Rkc3RyaW5nIGluIG1hcHMKCjIwMDMtMDEtMDkgMDk6MTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVZhcmlhYmxlV2F0Y2guaDogZml4IHN5bnRheCBmb3IgYWRkd2F0Y2gKCjIwMDMtMDEtMDkgMDg6NTAgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBDTWFrZVZTNkJhY2t3YXJkQ29tcGF0aWJpbGl0eS5jbWFrZSwKCSAgQ01ha2VWUzdCYWNrd2FyZENvbXBhdGliaWxpdHkuY21ha2U6IGFkZGVkIGJpZyBlbmRpYW4gc3R1ZmYKCjIwMDMtMDEtMDkgMDg6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IG9ubHkgbG9hZCBidyBjb21wYXQgaWYKCSAgQ01BS0VfQkFDSy4uLiBpcyBzZXQKCjIwMDMtMDEtMDkgMDg6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IGFkZGVkIHdhdGNoZXMgZm9yIGFjY2VzcyBvZiBidyBjb21wYXQgdmFycwoKMjAwMy0wMS0wOSAwODo0NCAgbWFydGluawoKCSogU291cmNlL2NtQWJzdHJhY3RGaWxlc0NvbW1hbmQuY3h4OiBub3cgY29tcGxhaW5zIG1vcmUKCjIwMDMtMDEtMDggMTQ6NDEgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2NvbmZpZ19haXg6IHJlbGVhc2Ugc2NyaXB0IGZvciBhaXgKCjIwMDMtMDEtMDggMTM6MjQgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBNYWtlZmlsZS5pbiwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21WYXJpYWJsZVdhdGNoLmN4eCwgY21WYXJpYWJsZVdhdGNoLmgsIGNtYWtlLmN4eCwKCSAgY21ha2UuaDogQWRkIHZhcmlhYmxlIHdhdGNoIHN1cHBvcnQgb24gdGhlIGJyYW5jaAoKMjAwMy0wMS0wOCAxMzoyNCAgYW5keQoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBNZXJnZSB0cnkgY29tcGlsZSBmaXhlcyB0byBicmFuY2gKCjIwMDMtMDEtMDggMTI6NTkgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBNYWtlZmlsZS5pbiwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21WYXJpYWJsZVdhdGNoLmN4eCwgY21WYXJpYWJsZVdhdGNoLmgsIGNtYWtlLmN4eCwKCSAgY21ha2UuaDogQWRkIG9wdGlvbiBvZiB3YXRjaGluZyB2YXJpYWJsZXMKCjIwMDMtMDEtMDggMTI6MTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDWFguY21ha2UsCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JTVEROYW1lc3BhY2UuY21ha2UsCgkgIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogRU5IOiBvbmx5IGZvcmNlIHRoZSB1c2Ugb2YgYW5zaQoJICBmbGFncyBpbiBiYWNrd2FyZHMgbW9kZQoKMjAwMy0wMS0wOCAxMTo1OCAgaXNjb3R0CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogbWFyayBhbGwgdmFyaWFibGVzIGFkdmFuY2VkCgoyMDAzLTAxLTA4IDExOjUzICBhbmR5CgoJKiBUZXN0cy9YMTEvQ01ha2VMaXN0cy50eHQ6IENoYW5nZSBuYW1lIG9mIHZhcmlhYmxlCgoyMDAzLTAxLTA4IDExOjQ1ICBhbmR5CgoJKiBNb2R1bGVzLzogQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLCBGaW5kWDExLmNtYWtlOiBGaXgKCSAgRmluZFgxMSB0byBtYXRjaCBjb252ZW50aW9uCgoyMDAzLTAxLTA4IDEwOjQ4ICBpc2NvdHQKCgkqIE1vZHVsZXMvOiBGaW5kTVBFRzIuY21ha2UsIEZpbmRQTkcuY21ha2UsIEZpbmRTREwuY21ha2UsCgkgIExpbmtRVC5jbWFrZTogTGlua1FULmNtYWtlIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIGFnZXMsIHJlbW92ZWQKCSAgaXQgbm93LiAgRml4ZWQgbWlzdGFrZSBpbiBGaW5kUE5HLmNtYWtlIERvbmF0ZWQgRmluZE1QRUcyIGFuZAoJICBGaW5kU0RMIGZyb20gVlhMLgoKMjAwMy0wMS0wNyAyMjoyNCAgYW5keQoKCSogU291cmNlL0NUZXN0LzogY21DVGVzdFN1Ym1pdC5jeHgsIGNtQ1Rlc3RTdWJtaXQuaDogSW1wbGVtZW50IEZUUAoJICB1cGxvYWRpbmcKCjIwMDMtMDEtMDcgMjI6MjMgIGFuZHkKCgkqIFNvdXJjZS9DVGVzdC9DTWFrZUxpc3RzLnR4dDogQWRkIG1vcmUgcGxhY2VzIHRvIHNlYXJjaCBmb3IKCSAgbGlicmFyeSwgYWxzbyBpbmNsdWRlIGN1cmwgZGlyZWN0b3J5IHdoZW4gY29tcGlsaW5nCgoyMDAzLTAxLTA3IDIyOjIzICBhbmR5CgoJKiBTb3VyY2UvY21DVGVzdC5jeHg6IE5ldyBzaWduYXR1cmUKCjIwMDMtMDEtMDcgMTU6MDQgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGZpeCBpbnN0YWxsIG9mIGNtYWtlLjEKCjIwMDMtMDEtMDcgMTQ6NTcgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBmaXggcmVnIGV4IGZvciBpbnN0YWxsIGNtYWtlIG1hbgoKMjAwMy0wMS0wNyAxMzo1MiAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBhZGRlIGRpbnN0YWxsIGZvciBjbUNQbHVnaW5BUEkuaAoKMjAwMy0wMS0wNyAxMzoxOSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggaW5zdGFsbCBhbmQKCSAgaW5pdGlhbCBwcmVmaXgKCjIwMDMtMDEtMDcgMTM6MDUgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggaW5zdGFsbCB0YXJnZXQgZm9yIHRlbXBsYXRlcwoKMjAwMy0wMS0wNyAxMjo1NCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY2NvbmZpZ3VyZSwgY2NvbmZpZ3VyZS5pbiwgY3h4Y29uZmlndXJlLAoJICBjeHhjb25maWd1cmUuaW46IHJlbW92ZSB1bnVzZWQgZmlsZXMKCjIwMDMtMDEtMDcgMTI6MDUgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiB1c2UgYm9vdHN0cmFwIGluaXRpYWwgZmxhZ3MKCjIwMDMtMDEtMDcgMTA6MjIgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2NvbmZpZ19pcml4OiBCVUc6IFZlcnNpb24gbnVtYmVyIG9uIHJvbGxlCgkgIGlzIDYuNCwgbm90IDYuNS4KCjIwMDMtMDEtMDYgMjM6MTMgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ1Rlc3QuY3h4LCBjbUNUZXN0Lmg6IFdvcmsgb24gc3VibWl0dGluZwoKMjAwMy0wMS0wNiAyMzowNyAgYW5keQoKCSogU291cmNlL0NUZXN0LzogQ01ha2VMaXN0cy50eHQsIGNtQ1Rlc3RTdWJtaXQuY3h4LAoJICBjbUNUZXN0U3VibWl0Lmg6IFN0YXJ0IHdvcmtpbmcgb24gaW1wcm92ZWQgdGVzdAoKMjAwMy0wMS0wNiAxNjowOSAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXg6IEVSUjogRml4ZXMgZm9yIGxpbmtpbmcKCSAgc3RhdGljYWxseSB3aXRoIC1sZGxkLgoKMjAwMy0wMS0wNiAxNTo0MSAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLnR4dDogRU5IOiB1cGRhdGUgY2hhbmdlIGxvZyBmb3IgbmV3IHZlcnNpb24KCjIwMDMtMDEtMDYgMTU6MjEgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2NvbmZpZ19zdW46IEVSUjogRml4IGZvciBidWlsZGluZyBzdGF0aWMKCSAgd2l0aCAtbGRsIG9uIHN1bi4KCjIwMDMtMDEtMDYgMTQ6NTYgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2NvbmZpZ19saW51eDogRVJSOiBGaXhlZCB0eXBvLgoKMjAwMy0wMS0wNiAxNDozMCAgYmlkZGkKCgkqIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eDogRml4IGEgcHJvYmxlbSB3aXRoIFRDTCB3cmFwcGluZwoJICBpZiB0aGUgc291cmNlIGZpbGVzIGhhdmUgYSByZWxhdGl2ZSBwYXRoLiAgVGhlIGRlcGVuZGVuY3kgaXMgbm90CgkgIGNvcnJlY3RseSBoYW5kbGVkCgoyMDAzLTAxLTA2IDE0OjI3ICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZV9yZWxlYXNlX2NvbmZpZ19ocHV4LAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19saW51eCwgY21ha2VfcmVsZWFzZV9jb25maWdfc3VuOiBFTkg6CgkgIFVwZGF0ZWQgZm9yIHN0YXRpYyBleGVjdXRhYmxlLgoKMjAwMy0wMS0wNiAxMTozMSAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfdmVyc2lvbi5zaDogRU5IOiBVcGRhdGVkIGZvciAxLjYgYmV0YSAxCgkgIHJlbGVhc2UuCgoyMDAzLTAxLTA2IDExOjIzICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZV9yZWxlYXNlX2NvbmZpZ19kYXJ3aW4sCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX2lyaXgsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2xpbnV4LCBjbWFrZV9yZWxlYXNlX2NvbmZpZ19vc2YsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX3N1biwgY21ha2VfcmVsZWFzZV9jeWd3aW4uc2gsCgkgIGNtYWtlX3JlbGVhc2VfdW5peF9jb25maWcuc2gsIGNtYWtlX3JlbGVhc2VfdmVyc2lvbi5zaDogRU5IOgoJICBVcGRhdGVkIGZvciBDTWFrZSAxLjYgcmVsZWFzZS4gIFZlcnNpb24gbnVtYmVyIGlzIG5vdyBpbiBhIHNpbmdsZQoJICBmaWxlIHRoYXQgaXMgc291cmNlZCBieSBhbGwgb3RoZXJzLgoKMjAwMy0wMS0wNiAxMDo1OCAgbWFydGluawoKCSogU291cmNlLzogY21DUGx1Z2luQVBJLmg6IHVwZGF0ZWQgdmVyc2lvbgoKMjAwMy0wMS0wNiAxMDo1OCAga2luZwoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFUlI6IEZpeGVkIHNwYWNlIHByb2JsZW0gZm9yIE9TWAoJICBhbmQgUmV6LgoKMjAwMy0wMS0wNiAxMDo0MyAgbWFydGluawoKCSogQ01ha2UucnRmOiB1cGRhdGVkIGRvY3MKCjIwMDMtMDEtMDYgMTA6MzcgIGtpbmcKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBGaXhlZCBzcGFjZSBwcm9ibGVtIGZvciBSZXouCgoyMDAzLTAxLTA2IDA5OjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmg6IHVwZGF0ZSB2ZXJzaW9uCgoyMDAzLTAxLTA2IDA5OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHZlcnNpb24KCjIwMDMtMDEtMDYgMDk6MzIgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vTGludXgtY29tby5jbWFrZTogRU5IOiBBZGRlZCBzaGFyZWQgbGlicmFyeQoJICBzZXR0aW5ncy4KCjIwMDMtMDEtMDYgMDk6MDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZTogRU5IOiBsb29rIGZvciBBSVggY29tcGlsZXIgYXMKCSAgd2VsbAoKMjAwMy0wMS0wNiAwODozOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlOiBhZGQgc2hhcmVkIHBhdGggZm9yIE9TRgoKMjAwMy0wMS0wNSAxMToyNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlOiBCVUc6IHJldmVydCBiYWNrIHRvIHJwYXRoLAoKMjAwMy0wMS0wMyAyMDoyNiAgYW5keQoKCSogTW9kdWxlcy9DaGVja1R5cGVTaXplLmNtYWtlOiBSZW1vdmUgZGVidWcKCjIwMDMtMDEtMDMgMjA6MDMgIGFuZHkKCgkqIE1vZHVsZXMvOiBDaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLCBDaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsCgkgIENoZWNrVHlwZVNpemUuY21ha2UsIENoZWNrVmFyaWFibGVFeGlzdHMuY21ha2U6IEZpeCBwcm9ibGVtcyB3aXRoCgkgIHJlcXVpcmVkIGZsYWdzCgoyMDAzLTAxLTAzIDE5OjIxICBhbmR5CgoJKiBNb2R1bGVzLzogQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwgQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZSwKCSAgQ2hlY2tJbmNsdWRlRmlsZXMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZTogQWRkIHJlcXVpcmVkCgkgIGZsYWdzCgoyMDAzLTAxLTAzIDE3OjM2ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOiBFTkg6IEZpbmQgcHl0aG9uIGZyYW1ld29yayBvbiBNYWMKCSAgT1NYLgoKMjAwMy0wMS0wMyAxNjoyMyAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlOiB0cnkgdG8gZml4IHJwYXRoIG9uIE9TRgoKMjAwMy0wMS0wMyAxNjoxNCAgYW5keQoKCSogVGVzdHMvQ09ubHkvbGliYzIuaDogRml4IHByb2JsZW0gd2l0aCB0ZXN0IG9uIEJvcmxhbmQKCjIwMDMtMDEtMDMgMDg6MTIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2U6IEJVRzogYmFkIHJwYXRoIGZsYWcgZm9yIHN1bnMKCjIwMDMtMDEtMDIgMTA6MjcgIGtpbmcKCgkqIFNvdXJjZS9jbUNQbHVnaW5BUEkuaDogRU5IOiBDaGFuZ2VkIG1hZ2ljIG51bWJlcnMgdG8gcmVzZXJ2ZWQuCgkgIEFkZGVkIENNQUtFX1ZFUlNJT05fTUFKT1IgYW5kIENNQUtFX1ZFUlNJT05fTUlOT1IgbWFjcm9zIHRvIGFsbG93CgkgIGNvbW1hbmRzIHRvIGRvIGNvbmRpdGlvbmFsIGNvbXBpbGF0aW9uIGFjcm9zcyBtdWx0aXBsZSB2ZXJzaW9ucwoJICBvZiBDTWFrZS4KCjIwMDMtMDEtMDIgMDk6NTcgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlOiBCVUc6IERvbid0IGFkZAoJICAtSS91c3IvaW5jbHVkZSBhcyBhbiBYX0NGTEFHUyBzZXR0aW5nLgoKMjAwMy0wMS0wMiAwOTo1NyAga2luZwoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBCVUc6IEZpeGVkIG9yZGVyaW5nIG9mIFgxMSBzZWFyY2guCgoyMDAzLTAxLTAyIDA5OjA2ICBhbmR5CgoJKiBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dDogUmVuYW1lIGxpYnJhcmllcyBmcm9tIGMxIHRvIHRlc3RjMQoKMjAwMy0wMS0wMiAwODo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IEFJWC5jbWFrZSwgT1NGMS5jbWFrZSwgU3VuT1MuY21ha2U6IGNsZWFuIHVwCgkgIHNvbWUgYy9jeHggaXNzdWVzCgoyMDAzLTAxLTAxIDE4OjAwICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVzLmNtYWtlOiBBZGQgbWFjcm8gZm9yIGNoZWNraW5nIGlmIGEKCSAgc3dlcXVlbmNlIG9mIGluY2x1ZGVzIGNhbiBiZSBpbmNsdWRlcwoKMjAwMy0wMS0wMSAxNzozNSAgYW5keQoKCSogVGVzdHMvQ09ubHkvQ01ha2VMaXN0cy50eHQ6IFRlc3QgY29udmVyc2lvbiBmcm9tIGFzY2lpIHRvIHN0cmluZwoKMjAwMy0wMS0wMSAxNzozNCAgYW5keQoKCSogU291cmNlLzogY21TdHJpbmdDb21tYW5kLmN4eCwgY21TdHJpbmdDb21tYW5kLmg6IEFkZCBhIHdheSB0bwoJICBjb252ZXJ0IGFzY2lpIHRvIHN0cmluZwoKMjAwMy0wMS0wMSAxNjoyNSAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tUeXBlU2l6ZS5jbWFrZSwgQ2hlY2tWYXJpYWJsZUV4aXN0cy5jbWFrZTogVG8gcHJldmVudCBjbWFrZQoJICBmcm9tIGJyZWFraW5nIHVwIGFyZ3VtZW50cywgcHV0IHF1b3RlcyBhcm91bmQgdGhlbQoKMjAwMy0wMS0wMSAxNTowMiAgYW5keQoKCSogTW9kdWxlcy9DaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlOiBBZGQgYSB3YXkgdG8gYWRkIGN1c3RvbQoJICBsaWJyYXJpZXMgdG8gdGhlIG1peC4gQWxzbyBhZGQgc3RhdHVzIHJlcG9ydGluZwoKMjAwMy0wMS0wMSAxNTowMSAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tUeXBlU2l6ZS5jbWFrZTogQWRkIGEgd2F5IHRvIGFkZCBjdXN0b20gbGlicmFyaWVzIHRvIHRoZSBtaXgKCjIwMDMtMDEtMDEgMTQ6MjYgIGFuZHkKCgkqIFRlc3RzL0NPbmx5LzogbGliYzIuYywgbGliYzIuaDogU2hhcmVkIGxpYnJhcnkgc2hvdWxkIGV4cG9ydAoJICBzeW1ib2xzIG9uIHdpbmRvd3MKCjIwMDItMTItMzEgMTU6MjIgIGFuZHkKCgkqIFRlc3RzL0NPbmx5LzogQ01ha2VMaXN0cy50eHQsIGNvbmx5LmMsIGxpYmMxLmMsIGxpYmMxLmgsIGxpYmMyLmMsCgkgIGxpYmMyLmg6IFRlc3QgYWxzbyBzdGF0aW5nIGFuZCBzaGFyZWQgbGlicmFyaWVzCgoyMDAyLTEyLTMxIDEzOjA4ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VEZWZhdWx0TWFrZVJ1bGVWYXJpYWJsZXMuY21ha2UsCgkgIFBsYXRmb3JtL0Rhcndpbi5jbWFrZSwgUGxhdGZvcm0vSFAtVVguY21ha2UsCgkgIFBsYXRmb3JtL0xpbnV4LWNvbW8uY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogQWRkZWQgPExJTktfRkxBR1M+IHRvIGxpbmsgcnVsZXMuCgoyMDAyLTEyLTMxIDEyOjU5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogV2hlbiB0aGVyZSBhcmUgbm8KCSAgbGluayBmbGFncywgd2Ugd2FudCBhbiBlbXB0eSBzdHJpbmcsIG5vdCBhIG51bGwgcG9pbnRlci4KCjIwMDItMTItMzEgMTI6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBTdXBwb3J0IExJTktfRkxBR1MKCSAgcHJvcGVydHkgZm9yIHN0YXRpYyBsaWJyYXJpZXMuCgoyMDAyLTEyLTMwIDExOjQ4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0FJWC5jbWFrZTogRU5IOiBmaXggc2hhcmVkIGxpYnJhcmllcyBvbiBBSVgKCjIwMDItMTItMzAgMTE6MDIgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLCBNb2R1bGVzL0NoZWNrU2l6ZU9mLmMsCgkgIE1vZHVsZXMvQ2hlY2tTaXplT2YuY21ha2UsIE1vZHVsZXMvQ2hlY2tUeXBlU2l6ZS5jLAoJICBNb2R1bGVzL0NoZWNrVHlwZVNpemUuY21ha2UsIFRlc3RzL0xvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Mb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogRU5IOiBSZW5hbWVkCgkgIE1vZHVsZXMvQ2hlY2tTaXplT2YgdG8gTW9kdWxlcy9DaGVja1R5cGVTaXplIGZvciBjb25zaXN0ZW5jeSB3aXRoCgkgIHRoZSBtYWNybyBuYW1lIHRoYXQgaXMgZGVmaW5lZCBieSB0aGUgbW9kdWxlLgoKMjAwMi0xMi0zMCAwODoxOCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBGaXggcHJvYmxlbSBvbiB3aW5kb3dzIHdpdGggbmV0d29yawoJICBwYXRocwoKMjAwMi0xMi0zMCAwNzo0NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5oLCBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsCgkgIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oLCBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5oLAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsIGNtQWRkVGVzdENvbW1hbmQuaCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsIGNtQnVpbGRDb21tYW5kLmgsCgkgIGNtQnVpbGROYW1lQ29tbWFuZC5oLCBjbUZMVEtXcmFwVUlDb21tYW5kLmg6IEVOSDogY2xlYW4gdXAgZG9jcwoJICBzb21lCgoyMDAyLTEyLTI3IDExOjE0ICBzdGFycmV2ZWxkCgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOiBFTkg6IGZpbmQgcHl0aG9uIGZyYW1ld29yayBhbmQKCSAgaW5jbHVkZSBmaWxlcyBvbiBPU1gKCjIwMDItMTItMjYgMTk6NTkgIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VKYXZhQ29tcGlsZXIuY21ha2UuaW46IElmIHRoZXJlIGlzIG5vIGphdmEgY29tcGlsZXIKCSAgcmVwb3J0IGVycm9yIG9uIEFERF9KQVZBX0xJQlJBUlkKCjIwMDItMTItMjYgMTM6NTggIGFuZHkKCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZTogQWRkIG1pc3NpbmcgY2xvc2luZyBicmFja2V0CgoyMDAyLTEyLTIzIDEyOjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5oOiBFTkg6IGZpeCBmb3IgQUlYCgoyMDAyLTEyLTIzIDA5OjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IFdBUjogcmVtb3ZlIHdhcmluaW5ncwoKMjAwMi0xMi0yMyAwOToyNSAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGhhbmRsZSAvLyBpbiB0aGUgcGF0aAoKMjAwMi0xMi0yMiAxNToxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZml4ZXMgZm9yIGJvcmxhbmQKCSAgd2l0aCBzcGFjZXMgaW4gdGhlIHBhdGgKCjIwMDItMTItMjIgMTE6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogY2xlYW4gdXAgd2FybmluZyBhbmQgdXNlCgkgIG1vcmUgc2hvcnQgcGF0aHMKCjIwMDItMTItMjIgMTA6MDkgIGJhcnJlCgoJKiBNb2R1bGVzLzogRG9jdW1lbnRhdGlvbi5jbWFrZSwgRmluZEhUTUxIZWxwLmNtYWtlLCBGaW5kSGhjLmNtYWtlOgoJICBFTkg6IGl0J3MgdGltZSB0byBjcmVhdGUgYSByZWFsIE1pY3Jvc29mdCBIVE1MIEhlbHAgV29ya3Nob3AKCSAgQ01ha2UgbW9kdWxlCgoyMDAyLTEyLTIxIDExOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdldFRhcmdldFByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIGNtR2V0VGFyZ2V0UHJvcGVydHlDb21tYW5kLmgsIGNtU2V0VGFyZ2V0UHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBjbVNldFRhcmdldFByb3BlcnRpZXNDb21tYW5kLmg6IEVOSDogYWRkIHRhcmdldCBwcm9wZXJ0aWVzIGZpbGVzCgoyMDAyLTEyLTIwIDE3OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZAoJICB0YXJnZXQgcHJvcGVydGllcwoKMjAwMi0xMi0yMCAxNjoxNSAga2luZwoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBFUlI6IFRjbF9Qa2dQcm92aWRlIHRha2VzIGNoYXIqLAoJICBzbyB3ZSBjYW5ub3QgcGFzcyBhIHN0cmluZyBsaXRlcmFsIHRvIGl0LgoKMjAwMi0xMi0yMCAxMjo1OSAga2luZwoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBUZW1wbGF0ZXMvQ01ha2VWaXN1YWxTdHVkaW82Q29uZmlndXJhdGlvbnMuY21ha2U6IEVOSDogVmlzdWFsCgkgIFN0dWRpbyA2IGFuZCA3IGdlbmVyYXRvcnMgbm93IHNldCBDTUFLRV9DT05GSUdVUkFUSU9OX1RZUEVTIHRvIGJlCgkgIGEgc2VtaWNvbG9uLXNlcGFyYXRlZCBsaXN0IG9mIGNvbmZpZ3VyYXRpb25zIHRoYXQgd2lsbCBiZSBidWlsdC4KCjIwMDItMTItMjAgMTE6NTYgIGJhcnJlCgoJKiBNb2R1bGVzLzogQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLCBGaW5kWDExLmNtYWtlOiBGSVg6CgkgIG1ha2UgQ01BS0VfWF9MSUJTIGFuZCBDTUFLRV9YX0NGTEFHUyBhZHZhbmNlZAoKMjAwMi0xMi0yMCAxMToyMCAgaG9mZm1hbgoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgYSBjaGVjayB0bwoJICBtYWtlIHN1cmUgY21ha2UgY2FuIGZpbmQgdGhlIGMgb3IgQysrIGNvbXBpbGVyIGZvciB0cnljb21waWxlCgoyMDAyLTEyLTIwIDExOjIwICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBmb3IgYmFja3dhcmRzCgkgIGNvbXBhdGliaWxpdHkKCjIwMDItMTItMjAgMTA6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21ha2UuY3h4OiB0ZXN0aW5nIG1vcmUKCSAgYWdyZXNzaXZlIGNvbXBhdGFiaWxpdHkgc2V0dGluZ3MKCjIwMDItMTItMjAgMDk6NDMgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRU5IOiBVc2UgdGhlIE1hYyAtZnJhbWV3b3JrIGZvciBUayBpZiBpdAoJICBpcyBhdmFpbGFibGUuCgoyMDAyLTEyLTIwIDA5OjQyICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IEVOSDogVXNlIHRoZSBNYWMgLWZyYW1ld29yayBmb3IgVGNsIGlmIGl0CgkgIGlzIGF2YWlsYWJsZS4KCjIwMDItMTItMTkgMTU6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEJVRzogZW5hYmxlIHRoZSBsYW5ndWFnZXMgd2hlbiBub3QKCSAgcnVubmluZyBpbiBnbG9iYWwgbW9kZQoKMjAwMi0xMi0xOSAxMjo1MSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IGJldHRlciBkb2NzCgoyMDAyLTEyLTE5IDEyOjUxICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IEVOSDogbWFrZSBsaW5rZXIgZmxhZ3MgdXNlCgkgIGluaXQgdmFsdWVzIHNvIHVzZXJzIGNhbiBzZXQgdGhlbSBmcm9tIHRoZSBjYWNoZQoKMjAwMi0xMi0xOCAxNjo1OCAga2luZwoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IFRjbCBwYWNrYWdlcyBub3cKCSAgVGNsX1BrZ1Byb3ZpZGUgdGhlaXIgb3duIG5hbWUgYW5kIHZlcnNpb24uCgoyMDAyLTEyLTE4IDEwOjUyICBraW5nCgoJKiBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZTogRU5IOiBBZGRpbmcgYnVpbGQgdHlwZSBmbGFncyBmb3IgQy4KCjIwMDItMTItMTggMDk6MzggIGtpbmcKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvWDExL0NNYWtlTGlzdHMudHh0OiBFUlI6IFByb2plY3QKCSAgbmFtZSBhbmQgZXhlY3V0YWJsZSBuYW1lIHNob3VsZCBtYXRjaCBmb3IgY29uc2lzdGVuY3kgaW4gdGhlIFgxMQoJICB0ZXN0LgoKMjAwMi0xMi0xNyAxNzowNSAga2luZwoKCSogU291cmNlLzogY21DUGx1Z2luQVBJLmN4eCwgY21DUGx1Z2luQVBJLmg6IEVOSDogQWRkZWQgcmV0dXJuIHR5cGUKCSAgaW50IHRvIEV4ZWN1dGVDb21tYW5kLgoKMjAwMi0xMi0xNyAxNDo1NSAga2luZwoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBCVUc6IE5lZWQgYXQgbGVhc3QgMiBhcmd1bWVudHMsCgkgIG5vdCBleGFjdGx5IDIuCgoyMDAyLTEyLTE3IDE0OjU1ICBraW5nCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmg6IEVSUjogQWRkZWQgb3BlcmF0b3IgIT0gZm9yIFNHSS4KCjIwMDItMTItMTcgMTQ6NTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVKYXZhQ29tcGlsZXIuY21ha2UsIENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLAoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsIENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsCgkgIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwgQ2hlY2tTaXplT2YuY21ha2UsCgkgIENoZWNrVmFyaWFibGVFeGlzdHMuY21ha2UsIFRlc3RCaWdFbmRpYW4uY21ha2UsCgkgIFRlc3RDWFhBY2NlcHRzRmxhZy5jbWFrZSwgVGVzdEZvckFOU0lGb3JTY29wZS5jbWFrZSwKCSAgVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZTogRU5IOiB1c2UgQ01BS0VfUk9PVCBhbmQgbm90IFBST0pFQ1RfCgkgIGZvciB0cnkgY29tcGlsZSBzdHVmZiwgdGhpcyBhbGxvd3MgcHJvamVjdHMgd2l0aGluIHByb2plY3RzIHRvCgkgIGhhdmUgZGlmZmVyZW50IGxhbmd1YWdlcwoKMjAwMi0xMi0xNyAxMzoyOCAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9YMTEvQ01ha2VMaXN0cy50eHQ6IEJVRzogUmVuYW1lZCBYMTEKCSAgdGVzdCBleGVjdXRhYmxlIHRvIHVzZVgxMSB0byBhdm9pZCBjb25mbGljdCB3aXRoIG5hbWUgb2YgbGlicmFyeS4KCjIwMDItMTItMTcgMTI6NTYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IGJldHRlciBoYW5kbGluZyBvZgoJICBNb2R1bGUKCjIwMDItMTItMTcgMTI6MTEgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IFNhdmUgZGlyZWN0b3JpZXMgd2hlbiBkb2luZyBnbG9iYWwgYnVpbGQKCjIwMDItMTItMTcgMTE6NTggIGtpbmcKCgkqIFNvdXJjZS9jbU1hY3JvQ29tbWFuZC5jeHg6IEVOSDogSW1wcm92ZWQgZXJyb3IgbWVzc2FnZSBmb3IgbWFjcm8KCSAgaW52b2tlZCB3aXRoIGluY29ycmVjdCBudW1iZXIgb2YgYXJndW1lbnRzLgoKMjAwMi0xMi0xNyAxMTo1NyAga2luZwoKCSogU291cmNlL2NtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBFTkg6IFRyeUNvbXBpbGUgc2hvdWxkIHByb2R1Y2UgYQoJICB2ZXJib3NlIG1ha2VmaWxlLgoKMjAwMi0xMi0xNyAxMTo1NSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZSwgRmluZFgxMS5jbWFrZTogRU5IOgoJICBGaW5kWDExLmNtYWtlIG1vZHVsZSBub3cgYWxtb3N0IGZ1bGx5IGR1cGxpY2F0ZXMgb2xkIGNvbmZpZ3VyZQoJICBmdW5jdGlvbmFsaXR5LgoKMjAwMi0xMi0xNyAxMDowNCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogc29tZSBjbGVhbiB1cCBpbiBsaW5rCgkgIGRpcmVjdG9yaWVzCgoyMDAyLTEyLTE2IDIxOjE5ICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21DVGVzdC5jeHgsIGNtQ1Rlc3QuaCwgY3Rlc3QuY3h4LAoJICBjdGVzdC5oOiBTcGxpdCBjdGVzdCBpbnRvIHR3byB0aHJlZSBmaWxlcwoKMjAwMi0xMi0xNiAxODoyOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogQlVHOiBDYW5ub3QgcmVtb3ZlCgkgIHF1b3RlcyBmcm9tIGRlZmluZWQgZmxhZ3MuCgoyMDAyLTEyLTE2IDEyOjEzICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBGaXggc3dpdGNoaW5nIGZyb20gbG9jYWwgdG8gZ2xvYmFsIGdlbmVyYXRpb24KCSAgd2hlbiBjbWFrZSB2ZXJzaW9uIGNoYW5nZXMgb3Igd2hlbiB0aGluZ3MgY2hhbmdlIGluc2lkZSB2ZXJzaW9uCgoyMDAyLTEyLTE2IDExOjEwICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IEFkZGVkIGNvcHlfaWZfZGlmZmVyZW50IG9wdGlvbiB0byAtRSBmbGFnLgoKMjAwMi0xMi0xNiAwOTozOSAga2luZwoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEJVRzogRml4ZWQgcXVvdGVzIGluIG91dHB1dAoJICBwYXRocy4KCjIwMDItMTItMTUgMTM6NDUgIGFuZHkKCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY3Rlc3QuaDogQWRkIHN1cHBvcnQgZm9yIG9ubHkgc2hvd2luZyB3aGF0CgkgIHdpbGwgYmUgZG9uZS4gVGhpcyB3YXkgeW91IGNhbiBmb3IgZXhhbXBsZSBnZXQgYSBsaXN0IG9mIGFsbAoJICB0ZXN0czogY3Rlc3QgLU4gb3IgbGlzdCBvZiBhbGwgdGVzdHMgdGhhdCBtYXRjaCByZWdleDogY3Rlc3QgLU4KCSAgLVIgcmVnZXgKCjIwMDItMTItMTMgMTc6MzUgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9jbVRlc3RHZW5lcmF0ZWRIZWFkZXIuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvY21UZXN0R2VuZXJhdGVkSGVhZGVyLmguaW4sCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0R2VuZXJhdGVkSGVhZGVyLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogQWRkZWQgdGVzdCBmb3IKCSAgZ2VuZXJhdGVkIGhlYWRlciBpbmNsdWRlZCBieSBub24tZ2VuZXJhdGVkIHNvdXJjZS4KCjIwMDItMTItMTMgMTc6MzQgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBOZWVkIHNvdXJjZSBmaWxlCgkgIGFuZCBPQkpFQ1RfREVQRU5EUyBhcyBkZXBlbmRlbmNpZXMgb2YgYW4gb2JqZWN0IGZpbGUuCgoyMDAyLTEyLTEzIDE2OjE2ICBraW5nCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBzb3VyY2UgZmlsZQoJICBwcm9wZXJ0eSBPQkpFQ1RfREVQRU5EUyB0byBzdXBwb3J0IGdlbmVyYXRlZCBoZWFkZXIgZmlsZXMKCSAgaW5jbHVkZWQgaW4gbm9uLWdlbmVyYXRlZCBzb3VyY2VzLgoKMjAwMi0xMi0xMyAxNDo1OCAga2luZwoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tTaXplT2YuY21ha2UsIENoZWNrVmFyaWFibGVFeGlzdHMuY21ha2U6IEVOSDogRG9uJ3QgcmVwZWF0CgkgIGNoZWNrIGV2ZW4gaWYgYW5zd2VyIHdhcyBuby4KCjIwMDItMTItMTMgMDk6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IG1hZGUgbW9yZSBzdHJpY3QKCjIwMDItMTItMTMgMDk6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY21DUGx1Z2luQVBJLmN4eDogZml4ZWQgd2FybmluZ3MKCjIwMDItMTItMTMgMDk6MTggIGtpbmcKCgkqIFNvdXJjZS86IGNtRnVuY3Rpb25CbG9ja2VyLmgsIGNtSWZDb21tYW5kLmg6IEVSUjogRml4ZWQgdW51c2VkCgkgIHBhcmFtZXRlciB3YXJuaW5nLgoKMjAwMi0xMi0xMiAxNzo0OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaDogTWFrZSB0cnkKCSAgY29tcGlsZSBhZGQgYSBkZXBlbmQgdG8gcmUtcnVuIGNtYWtlIGlmIGl0cyBzb3VyY2UgY2hhZ25lcwoKMjAwMi0xMi0xMiAxMjowMiAga2luZwoKCSogVXRpbGl0aWVzLzogY21ha2VfcmVsZWFzZV9jb25maWdfZGFyd2luLAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19ocHV4LCBjbWFrZV9yZWxlYXNlX2NvbmZpZ19pcml4LAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19saW51eCwgY21ha2VfcmVsZWFzZV9jb25maWdfb3NmLAoJICBjbWFrZV9yZWxlYXNlX2NvbmZpZ19zdW4sIGNtYWtlX3JlbGVhc2VfY3lnd2luLnNoOiBFTkg6IFVwZGF0ZWQKCSAgZm9yIDEuNC43IHJlbGVhc2UuCgoyMDAyLTEyLTEyIDExOjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHRvIHBhdGNoNwoKMjAwMi0xMi0xMiAxMTozNiAga2luZwoKCSogU291cmNlLzogY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsCgkgIGNtTWFjcm9Db21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY3Rlc3QuY3h4OiBFTkg6CgkgIEltcHJvdmVkIGZpbGVuYW1lL2xpbmUgbnVtYmVyIHJlcG9ydGluZyBpbiBlcnJvciBtZXNzYWdlLiAgTWFjcm8KCSAgaW52b2NhdGlvbnMgbm93IGNoYWluIHVwIHRoZSBlcnJvciBtZXNzYWdlLgoKMjAwMi0xMi0xMiAxMDoyNSAga2luZwoKCSogTW9kdWxlcy9DTWFrZVRlc3RHTlUuYzogRVJSOiBGaXhlZCBzeW50YXggZXJyb3JzIGZvciBwaWNreQoJICBwcmVwcm9jZXNzb3JzLgoKMjAwMi0xMi0xMiAxMDoyNSAga2luZwoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlOiBFUlI6IE5lZWQgZG91YmxlLXF1b3RlcyBhcm91bmQKCSAgZXhwcmVzc2lvbiB0byBiZSBtYWNoZWQgaW4gSUYgY29tbWFuZC4KCjIwMDItMTItMTIgMTA6MTAgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLmNtYWtlOiBCVUc6IENhbid0IGRvdWJsZS1xdW90ZQoJICBmb3JlYWNoIGFyZ3VtZW50cy4KCjIwMDItMTItMTIgMDg6NDIgIG1hcnRpbmsKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBub3cgdXNlcyBTRVQgaW5zdGVhZCBvZgoJICBTT1VSQ0VfTElTVCBjb21tYW5kCgoyMDAyLTEyLTExIDE4OjIwICBraW5nCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eDogQlVHOiBNdWx0aS1saW5lIGZ1bmN0aW9ucyBtdXN0IGFsc28KCSAgaW5jcmVtZW50IGxpbmUgbnVtYmVyLCBub3QgdGhlIHBvaW50ZXIuCgoyMDAyLTEyLTExIDE4OjE1ICBraW5nCgoJKiBTb3VyY2UvY21FbmRGb3JFYWNoQ29tbWFuZC5oOiBFUlI6IER1bW15IEluaXRpYWxQYXNzCgkgIGltcGxlbWVudGF0aW9uIG11c3QgcmV0dXJuIGEgdmFsdWUuCgoyMDAyLTEyLTExIDE4OjEzICBraW5nCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsCgkgIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwKCSAgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUFkZFRlc3RDb21tYW5kLmN4eCwgY21DUGx1Z2luQVBJLmN4eCwgY21Db21tYW5kLmgsCgkgIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBjbUVuZEZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21FbmRGb3JFYWNoQ29tbWFuZC5oLCBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuY3h4LAoJICBjbUZvckVhY2hDb21tYW5kLmgsIGNtRnVuY3Rpb25CbG9ja2VyLmgsIGNtSVRLV3JhcFRjbENvbW1hbmQuY3h4LAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsCgkgIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5jeHgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxpc3RGaWxlQ2FjaGUuaCwgY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwKCSAgY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21NYWNyb0NvbW1hbmQuY3h4LCBjbU1hY3JvQ29tbWFuZC5oLCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZS5oLCBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsIGNtTWVzc2FnZUNvbW1hbmQuY3h4LAoJICBjbVByb2plY3RDb21tYW5kLmN4eCwgY21SZW1vdmVDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4LAoJICBjbVNvdXJjZUZpbGVzUmVtb3ZlQ29tbWFuZC5jeHgsIGNtU3ViZGlyQ29tbWFuZC5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LAoJICBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmN4eCwgY21Xcml0ZUZpbGVDb21tYW5kLmN4eCwgY3Rlc3QuY3h4OgoJICBFTkg6IE1vdmVkIEV4cGFuZExpc3RWYXJpYWJsZXMgb3V0IG9mIGluZGl2aWR1YWwgY29tbWFuZHMuCgkgIEFyZ3VtZW50IGV2YWx1YXRpb24gcnVsZXMgYXJlIG5vdyB2ZXJ5IGNvbnNpc3RlbnQuICBEb3VibGUgcXVvdGVzCgkgIGNhbiBhbHdheXMgYmUgdXNlZCB0byBjcmVhdGUgZXhhY3RseSBvbmUgYXJndW1lbnQsIHJlZ2FyZGxlc3Mgb2YKCSAgY29udGVudHMgaW5zaWRlLgoKMjAwMi0xMi0xMSAxNDoxOCAgbWFydGluawoKCSogU291cmNlL0NNYWtlU2V0dXAuZHN3OiByZW1vdmVkIGRzdyBmaWxlCgoyMDAyLTEyLTExIDE0OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuY3h4LCBjbUNQbHVnaW5BUEkuaDogYWRkZWQgYSBGcmVlIG1ldGhvZAoKMjAwMi0xMi0xMSAxNDoxNSAga2luZwoKCSogU291cmNlLzogY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4OiBFTkg6CgkgIEltcHJvdmVkIGltcGxlbWVudGF0aW9uIG9mIE1TVkMgZGVidWcgaG9vayB0byBvbmx5IGFkZCB0aGUgaG9vawoJICBpZiBEQVJUX1RFU1RfRlJPTV9EQVJUIGlzIHNldCBpbiB0aGUgZW52aXJvbm1lbnQuICBUaGlzIGlzIGJldHRlcgoJICB0aGFuIGFsd2F5cyBhZGRpbmcgdGhlIGhvb2sgYW5kIHRlc3RpbmcgdGhlIGVudmlyb25tZW50IGZyb20gdGhlCgkgIGNhbGxiYWNrLgoKMjAwMi0xMi0xMSAxMjowOSAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHg6IEFkZCBjaGVjayBzbyB0aGF0IGphdmEKCSAgcHJvamVjdHMgYnVpbGQgd2l0aG91dCBDKysKCjIwMDItMTItMTEgMTE6NDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRHVtcERvY3VtZW50YXRpb24uY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbWFrZW1haW4uY3h4LCBjbWFrZXRlc3QuY3h4LCBjbXc5eGNvbS5jeHgsCgkgIGN0ZXN0LmN4eDogRU5IOiBBZGRlZCBjbVN5c3RlbVRvb2xzOjpFbmFibGVNU1ZDRGVidWdIb29rKCkgdG8KCSAgcHJldmVudCBlcnJvciBkaWFsb2dzIHdoZW4gQ01ha2UgaXMgaW52b2tlZCBieSBEYXJ0LgoKMjAwMi0xMi0xMSAxMTozMiAga2luZwoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBFTkg6IEdlbmVyYXRlIGNvZGUgdG8gc2V0dXAKCSAgTVNWQyBkZWJ1ZyBsaWJyYXJ5IGhvb2suICBUaGUgdGVzdCBkcml2ZXIgcHJvZ3JhbSB3aWxsIG5vdAoJICBkaXNwbGF5IGVycm9yIGRpYWxvZ3MgaWYgREFSVF9URVNUX0ZST01fREFSVCBpcyBzZXQgaW4gdGhlCgkgIGVudmlyb25tZW50LgoKMjAwMi0xMi0xMSAxMDozNCAgYW5keQoKCSogTW9kdWxlcy9DTWFrZURldGVybWluZUphdmFDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUphdmFDb21waWxlci5jbWFrZS5pbiwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDoKCSAgQWRkIGphdmEgc3VwcG9ydAoKMjAwMi0xMi0xMCAxNzo1MiAgYW5keQoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oOiBBZGQgc3VwcG9ydCBmb3IgY29tbWVudHMgb24KCSAgY3VzdG9tIGNvbW1hbmRzIGluIHZpc3VhbCBzdHVkaW8gNgoKMjAwMi0xMi0xMCAxNzo0MyAgYW5keQoKCSogU291cmNlLzogY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBBZGQgc3VwcG9ydCBmb3IgY29tbWVudHMgb24KCSAgY3VzdG9tIGNvbW1hbmRzIGluIHZpc3VhbCBzdHVkaW8gNwoKMjAwMi0xMi0xMCAxNjo0NiAgYW5keQoKCSogU291cmNlLzogY21DdXN0b21Db21tYW5kLmN4eCwgY21DdXN0b21Db21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oOiBBZGQgY29tbWVudCBzdXBwb3J0LCBzbyB0aGF0CgkgIHlvdSBjYW4gc2VlIGluIGJ1aWxkIHByb2Nlc3Mgd2hhdCB0aGUgY3VzdG9tIGNvbW1hbmQgZG9lcwoKMjAwMi0xMi0xMCAxNjo0NSAgYW5keQoKCSogU291cmNlLzogY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmg6IEFsbG93IHRhcmdldCB3aXRoIG5vIGNvbW1hbmQKCjIwMDItMTItMTAgMTY6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LAoJICBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmg6IEJVRzogdXBkYXRlIGZvciBjaGFuZ2VzIGluCgkgIGNtTWFrZURlcGVuZAoKMjAwMi0xMi0xMCAxNjowMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21JVEtXcmFwVGNsQ29tbWFuZC5jeHgsIGNtSVRLV3JhcFRjbENvbW1hbmQuaDogRU5IOgoJICB1cGRhdGUgdXNlIG9mIG1ha2VkZXBlbmQKCjIwMDItMTItMTAgMTU6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtSVRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmg6IEVOSDoKCSAgdXBkYXRlIHRvIG5ldyBzdHlsZSBNYWtlRGVwZW5kCgoyMDAyLTEyLTEwIDE0OjUxICBiYXJyZQoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRklYOiBkcmFnJmRyb3Agb24gQ01ha2UKCSAgaWNvbiB3YXMgbm90IHdvcmtpbmcgYW55bW9yZS4gIC0gdGhlIGNtYWtlIGluc3RhbmNlIGhhZCB0byBiZQoJICBjcmVhdGVkIGJlZm9yZSBhY2Nlc3NpbmcgdGhlIGNhY2hlIChkb2gpIC0gdGhlIGNhY2hlIGl0ZXJhdG9yIHdhcwoJICBub3QgcXVlcmllZCBwcm9wZXJseSAoc2VlbXMgdGhlIEFQSSBjaGFuZ2VkKQoKMjAwMi0xMi0xMCAxNDoxMiAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBtYWtlIHN1cmUgZW1wdHkgZGVwZW5kcwoJICBhcmUgbm90IHVzZWQKCjIwMDItMTItMTAgMTQ6MTAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LAoJICBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmg6IHVwZGF0ZWQgZm9yIGNoYW5nZXMgaW4gRGVwZW5kCgkgIENhbGNzCgoyMDAyLTEyLTEwIDEzOjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZG8gbm90IG91dHB1dCBlbXB0eQoJICBkZXBlbmRzCgoyMDAyLTEyLTEwIDEzOjM2ICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBSZW1vdmUgd2FybmluZwoKMjAwMi0xMi0xMCAxMDozNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlRGVwZW5kLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBCVUc6IGZpeCBjb21waWxlIGZsYWdzIGZvciBzb3VyY2UKCSAgZmlsZXMsIGFuZCBmaXggZGVwZW5kIGJ1ZyBmb3IgY21ha2UgMTQgYnJhbmNoCgoyMDAyLTEyLTEwIDA5OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IHJlbW92ZSBjZXJyCgoyMDAyLTEyLTEwIDA5OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBjbU1ha2VEZXBlbmQuY3h4OiBCVUc6ICBmaXggYnVnCgkgIGluIGRlcGVuZHMKCjIwMDItMTItMDkgMTY6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBBZGQgdG8gdXNhZ2UKCjIwMDItMTItMDkgMTY6MjIgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IEJldHRlciBzZWFyY2ggZm9yIHB5dGhvbgoKMjAwMi0xMi0wOSAxNDozMyAga2luZwoKCSogTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2U6IEVOSDogVXNpbmcgb25seSBmaWxlbmFtZQoJICB3aXRob3V0IHBhdGggb3IgZXh0ZW5zaW9uIGZvciBjb21wYXJpbmcgYnVpbGQgdG9vbHMuCgoyMDAyLTEyLTA5IDEwOjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cC5jcHAsIENNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBDTWFrZVNldHVwRGlhbG9nLmg6IGNsZWFuIHVwIGxlYWtzCgoyMDAyLTEyLTA5IDA4OjI3ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VWUzZCYWNrd2FyZENvbXBhdGliaWxpdHkuY21ha2UsCgkgIENNYWtlVlM3QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlOiB1c2Ugd2luMzIgdGhyZWFkcyBmb3Igd2luMzIKCjIwMDItMTItMDggMjI6MzYgIGFuZHkKCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY3Rlc3QuaDogSW5pdGlhbCBhZGRpdGlvbiBvZiBjb3ZlcmFnZQoKMjAwMi0xMi0wOCAyMjozNSAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBGaXggYnVnIGluIGdsb2JiaW5nLiBOb3cgaXQgYWN0dWFsbHkKCSAgdXNlcyBvbmx5IGZpbGVzIG9yIGRpcmVjdG9yaWVzIHRoYXQgcmVzdWx0IGluIGdsb2JiaW5nIG5vdCB0aGUKCSAgb25lcyB0aGF0IHdlcmUgaXMgdGhlIHZlY3RvciBiZWZvcmUKCjIwMDItMTItMDggMjI6MzMgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6CgkgIFJlbmFtZSB2YXJpYWJsZSB0byByZW1vdmUgd2FybmluZwoKMjAwMi0xMi0wOCAxNDoyNSAgc3RhcnJldmVsZAoKCSogVGVtcGxhdGVzL0NNYWtlTGlzdHMudHh0OiBFUlI6IFJlbW92ZSByZWZlcmVuY2VzIHRvIGZpbGVzIHJlbW92ZWQKCSAgNCBkYXlzIGFnbwoKMjAwMi0xMi0wNiAxNjowMyAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXAucmMsIENNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBDTWFrZVNldHVwRGlhbG9nLmg6IEVOSDogbW92ZSB2ZXJzaW9uIHRvIHRpdGxlIGJhcgoKMjAwMi0xMi0wNiAxNTozNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHg6IEVOSDogZml4IEludERpcgoJICBqdW1wIGFuZCBidWlsZCBwcm9ibGVtCgoyMDAyLTEyLTA2IDExOjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBFTkg6IHNldCB0aGUgQ1hYIGFuZCBDQyBlbnZpcm9ubWVudAoJICB2YXJzCgoyMDAyLTEyLTA2IDEwOjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlOiBCVUc6IGZpeCBDIGNvbXBpbGVyIGluaXQKCjIwMDItMTItMDYgMTA6MDkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZTogY2xlYW4gdXAgY29tcGlsZXIgcGlja2luZyBjb2RlCgoyMDAyLTEyLTA2IDEwOjAyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBmaXggZm9yIGdlbmVyYXRvcgoJICBwaWNrZWQgY29tcGlsZXJzCgoyMDAyLTEyLTA1IDE2OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IHVzZSBjb3JyZWN0IHBhdGggdHlwZQoJICBmb3IgY2hlY2tfY2FjaGUgZmlsZQoKMjAwMi0xMi0wNSAxNjo1MiAgaG9mZm1hbgoKCSogU291cmNlL2NtRHluYW1pY0xvYWRlci5jeHg6IGZpeCBmcmVlIGJlZm9yZSB1c2UKCjIwMDItMTItMDUgMTU6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogRU5IOiBhZGQgc3RhdHVzIGJhciBhbmQgaGVscAoJICBmb3IgaXRlbXMKCjIwMDItMTItMDUgMTU6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwLnJjLCBDTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgUHJvcGVydHlMaXN0LmNwcDogRU5IOiBhZGQgc3RhdHVzIGJhciBhbmQgaGVscCBmb3IgaXRlbXMKCjIwMDItMTItMDUgMTQ6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6CgkgIEVOSDogYWRkIGEgcnVsZSB0byBhdXRvbWF0aWNhbGx5IHJlLXJ1biBjbWFrZSBmcm9tIHRoZSB0b3AgaWYgdGhlCgkgIENNYWtlQ2FjaGUudHh0IGZpbGUgaXMgY2hhbmdlZAoKMjAwMi0xMi0wNSAxNDoyNCAgYW5keQoKCSogU291cmNlL01ha2VmaWxlLmluOiBCZXR0ZXIgZGVwZW5kZW5jaWVzIGZvciBib290c3RyYXAKCjIwMDItMTItMDUgMTM6NDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVZTNkJhY2t3YXJkQ29tcGF0aWJpbGl0eS5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVZTNkZpbmRNYWtlLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM3QmFja3dhcmRDb21wYXRpYmlsaXR5LmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlVlM3RmluZE1ha2UuY21ha2UsIE1vZHVsZXMvRGFydC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBFTkg6IHVuaWZ5CgkgIEVuYWJsZUxhbmd1YWdlIGFjcm9zcyBhbGwgZ2VuZXJhdG9ycwoKMjAwMi0xMi0wNSAxMTo1NSAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsIExvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuaC5pbiwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmguaW46IFNwZWVkdXAgdGhlIHRlc3QKCjIwMDItMTItMDUgMTE6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogbWFrZSBzdXJlIE9LIGNhbiBub3QKCSAgYmUgaGl0IGZpcnN0IHRpbWUgYXJvdW5kCgoyMDAyLTEyLTA1IDExOjA5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IHVzZSBJbkFsbCB0YXJnZXQgc2V0dGluZwoJICB0byBkZXRlcm1pbmUgd2hhdCB0YXJnZXRzIGFyZSBpbiB0aGUgZGVmYXVsdCBidWlsZAoKMjAwMi0xMi0wNSAxMDo0NyAga2luZwoKCSogTW9kdWxlcy86IEZpbmRWVEsuY21ha2UsIFVzZVZUSzQwLmNtYWtlLAoJICBVc2VWVEtCdWlsZFNldHRpbmdzNDAuY21ha2UsIFVzZVZUS0NvbmZpZzQwLmNtYWtlOiBFTkg6IEFkZGVkCgkgIHN1cHBvcnQgZm9yIGZpbmRpbmcvdXNpbmcgVlRLIDQuMCB3aXRob3V0IHVzaW5nIGl0cyBVc2VWVEsuY21ha2UKCSAgZmlsZSB0aGF0IGRvZXMgYSBMT0FEX0NBQ0hFLgoKMjAwMi0xMi0wNSAxMDozNCAga2luZwoKCSogTW9kdWxlcy9DTWFrZUltcG9ydEJ1aWxkU2V0dGluZ3MuY21ha2U6IEJVRzogRml4IGZvciBzdHJpbmcKCSAgY29tcGFyaXNvbiB3aGVuIG9uZSBzdHJpbmcgaXMgZW1wdHkuCgoyMDAyLTEyLTA1IDA5OjQ2ICBraW5nCgoJKiBNb2R1bGVzLzogQ01ha2VCdWlsZFNldHRpbmdzLmNtYWtlLmluLAoJICBDTWFrZUV4cG9ydEJ1aWxkU2V0dGluZ3MuY21ha2UsIENNYWtlSW1wb3J0QnVpbGRTZXR0aW5ncy5jbWFrZToKCSAgRU5IOiBBZGRpbmcgQ01BS0VfRVhQT1JUX0JVSUxEX1NFVFRJTkdTIGFuZAoJICBDTUFLRV9JTVBPUlRfQlVJTERfU0VUVElOR1MgbWFjcm8uCgoyMDAyLTEyLTA1IDA4OjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogdXNlIEluQWxsIHRhcmdldAoJICBzZXR0aW5nIHRvIGRldGVybWluZSB3aGF0IHRhcmdldHMgYXJlIGluIHRoZSBkZWZhdWx0IGJ1aWxkCgoyMDAyLTEyLTA0IDE4OjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbVN0cmluZ0NvbW1hbmQuY3h4LCBjbVN0cmluZ0NvbW1hbmQuaDogRU5IOiBBZGRlZAoJICBDT01QQVJFIG1vZGVzIHRvIFNUUklORyBjb21tYW5kLgoKMjAwMi0xMi0wNCAxNjo1OSAga2luZwoKCSogTW9kdWxlcy9DTWFrZVVuaXhGaW5kTWFrZS5jbWFrZTogQlVHOiBSZW1vdmVkIHN0cmF5IGRlYnVnZ2luZwoJICBtZXNzYWdlLgoKMjAwMi0xMi0wNCAxNDoxOCAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IFdoZW4gYSBmdWxsIHBhdGggdG8KCSAgYSBsaWJyYXJ5IGNhbm5vdCBiZSBwYXJzZWQsIGp1c3QgYWRkIHRoZSB3aG9sZSBwYXRoIHRvIHRoZSBsaW5rCgkgIGxpbmUuICBJZiBpdCBpc24ndCBhIHZhbGlkIHBhdGgsIHRoZSBsaW5rZXIgd2lsbCBjb21wbGFpbi4KCjIwMDItMTItMDQgMTA6NTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VVbml4RmluZE1ha2UuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21ha2UuY3h4LAoJICBTb3VyY2UvY21ha2UuaDogQlVHOiBmaXggZ2V0IG1ha2UgY29tbWFuZCBwcm9ibGVtcy4KCjIwMDItMTItMDQgMTA6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IGFkZGVkIENNQUtFX0JBQ0tXQVJEU19DT01QQVRJQklMSVRZIGVudHJ5CgoyMDAyLTEyLTA0IDEwOjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oOiB1cGRhdGVkIGNvbW1lbnQKCjIwMDItMTItMDMgMTY6MTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VCb3JsYW5kRmluZE1ha2UuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VOTWFrZUZpbmRNYWtlLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVVuaXhGaW5kTWFrZS5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9DWUdXSU4uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZGV0ZXJtaW5lCgkgIENNQUtFX01BS0VfUFJPR1JBTSBpbiBFbmFibGVMYW5ndWFnZQoKMjAwMi0xMi0wMyAxNToyMyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvY21Mb2NhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUxvY2FsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBUZW1wbGF0ZXMvQ0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLAoJICBUZW1wbGF0ZXMvQ01ha2VCb3JsYW5kV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IHJlbW92ZSB1bnVzZWQgZmlsZXMKCjIwMDItMTItMDMgMTQ6MzIgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IHJlbW92ZSBjb2RlIHdhcnJpb3IgYW5kCgkgIGZpeGVkIEdVSSBpc3VlcwoKMjAwMi0xMi0wMyAxNDoyNyAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLnJjOiByZW1vdmUgY29kZSB3YXJyaW9yIGFuZCBmaXhlZCBHVUkKCSAgaXN1ZXMKCjIwMDItMTItMDMgMTQ6MTUgIGliYW5legoKCSogTW9kdWxlcy9GaW5kSW1hZ2VNYWdpY2suY21ha2U6IE1vZHVsZSB0byBmaW5kIHRvb2xzIGZyb20gdGhlCgkgIEltYWdlTWFnaWNrIHBhY2thZ2UuCVRoZXNlIHRvb2xzIGFyZSB1c2VmdWwgZm9yIGNvbnZlcnRpbmcgaW1hZ2UKCSAgZm9ybWF0cy4KCjIwMDItMTItMDMgMTQ6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBNYWtlZmlsZS5pbiwgY21ha2UuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oOiByZW1vdmUgY29kZSB3YXJyaW9yIGFuZCBmaXhlZCBHVUkKCSAgaXN1ZXMKCjIwMDItMTItMDMgMTM6NDYgIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRU5IOiBkZXNjcmlwdGlvbiBvZiB2YXJpYWJsZXMgbm93IGZvbGxvd3MKCSAgb3RoZXIgc3R5bGUgaW4gb3RoZXIgLmNtYWtlIGZpbGVzLgoKMjAwMi0xMi0wMyAxMzo0NCAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRHTFVULmNtYWtlOiBFTkg6IERlc2NyaXB0aW9uIG9mIHZhcmlhYmxlcyBub3cKCSAgc3BlY2lmaWVzIHRoYXQgdGhlIGZ1bGwgcGF0aCBpcyByZXF1aXJlZC4KCjIwMDItMTItMDMgMTI6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogZml4IHB1cmlmeSBGTVIKCjIwMDItMTItMDMgMTE6MjMgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0OiBidWcgZml4IGFuZCBzb21lIGNsZWFudXAKCjIwMDItMTItMDMgMTE6MjEgIG1hcnRpbmsKCgkqIFRlc3RzLy5Ob0RhcnRDb3ZlcmFnZTogY2xlYW4gdXAgY292ZXJhZ2Ugc29tZQoKMjAwMi0xMi0wMyAxMDo0NyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURlZmF1bHRNYWtlUnVsZVZhcmlhYmxlcy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9MaW51eC1jb21vLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBjb3JyZWN0bHkgcGxhY2UgYm90aAoJICBMSU5LX0ZMQUdTIGFuZCBDWFhfTElOS19GTEFHUyBhbmQgQ19MSU5LX0ZMQUdTIGludG8gYWxsIHRoZSBydWxlcwoKMjAwMi0xMi0wMyAwOTo1OSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZURlZmF1bHRNYWtlUnVsZVZhcmlhYmxlcy5jbWFrZTogdXNlIExJTktfRkxBR1Mgbm90IEMKCSAgYW5kIENYWCBMSU5LX0ZMQUdTCgoyMDAyLTEyLTAyIDE2OjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eDogZml4IGNvbXBpbGUgd2FybmluZwoKMjAwMi0xMi0wMiAxNjoxNSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBhZGQgcHJvamVjdCBjb21tYW5kIGV2ZW4gaWYgaW5oZXJpdGluZwoKMjAwMi0xMi0wMiAxNjowOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTGlzdEZpbGVDYWNoZS5jeHg6IEVOSDogcHV0IHRoZSBwcm9qZWN0IGNvbW1hbmQgYXQgdGhlCgkgIGZyb250IG9mIHRoZSBwcm9qZWN0CgoyMDAyLTEyLTAyIDE1OjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IHJlbW92ZWQgY21NYWtlZmlsZSBkZXBlbmQKCSAgZnJvbSBjbVN5c3RlbVRvb2xzCgoyMDAyLTEyLTAyIDE1OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIGZvcmNlZAoJICBlbmFibGUgbGFuZ3VhZ2UgY2FsbCBiZWNhdXNlIGEgUFJPSkVDVCBjb21tYW5kIGlzIG5vdyBhZGRlZCB0bwoJICBlYWNoIHByb2plY3QKCjIwMDItMTItMDIgMTU6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTWFrZWZpbGUuY3h4OiBFTkg6IHJlbW92ZSBjZXJyCgkgIGNhbGxzCgoyMDAyLTEyLTAyIDE1OjMwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxpc3RGaWxlQ2FjaGUuaCwgY21NYWtlZmlsZS5jeHg6CgkgIEVOSDogYWRkIFBST0pFQ1QgY29tbWFuZCBpZiB0aGVyZSBpcyBub3Qgb25lCgoyMDAyLTEyLTAyIDE1OjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBtaW5vciBmaXgKCjIwMDItMTItMDIgMTM6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBhZGQgYSBzcGFjZSBhcm91bmQKCSAgdGhlIGNvbXBpbGUgZmxhZ3MKCjIwMDItMTItMDIgMTA6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggY29tcGlsZSBmbGFncwoJICBmb3IgYSBzaW5nbGUgZmlsZQoKMjAwMi0xMS0yOSAxODo1NiAgYW5keQoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRml4IHByb2JsZW0gb24gdW5peAoJICB3aXRoIHNwYWNlCgoyMDAyLTExLTI5IDE2OjM1ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IFdoZW4gY2QtamluZyBpbnRvIGRpcmVjdG9yeSwgaWYKCSAgZGlyZWN0b3J5IGhhcyBzcGFjZSwgaXQgc2hvdWxkIHB1dCBxdW90ZXMgYXJvdW5kLiBJIGd1ZXNzIHdlCgkgIGNvdWxkIGp1c3QgcHV0IHF1b3RlcyBhcm91bmQgYWxsIHRoZSB0aW1lCgoyMDAyLTExLTI4IDIzOjQ1ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogRkxUSyAxLjEuMSB1bmRlciBXaW5kb3dzIGxpbmtzIG5vdwoJICB3aXRoIHRoZSBjb21jdGwzMiBsaWJyYXJ5LgoKMjAwMi0xMS0yNyAwNzo0MiAgYW5keQoKCSogVGVzdHMvT2JqQysrL0NNYWtlTGlzdHMudHh0OiBBZGQgbWlzc2luZyBsaWJyYXJ5LiBUaGUgdGVzdCBzaG91bGQKCSAgYmUgbGlua2VkIHRvIGZyYW1ld29yayBDb2NvYQoKMjAwMi0xMS0yNyAwNzo0MSAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBBZGQgb2JqZWN0aXZlIEMrKyBmaWxlIGluIHRoZSBsaXN0IG9mCgkgIEMrKyBmaWxlcy4gVGhpcyBtYXkgYmUgd3JvbmcsIGJ1dCBpdCB3aWxsIGZpeCBwcm9ibGVtcyBvbiBNYWMgZm9yCgkgIG5vdwoKMjAwMi0xMS0yNiAxOTowMiAgc3RhcnJldmVsZAoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBBZGQgT2JqQysrIHRlc3QgZm9yIE9TWAoKMjAwMi0xMS0yNiAxOTowMSAgc3RhcnJldmVsZAoKCSogVGVzdHMvT2JqQysrLzogQ01ha2VMaXN0cy50eHQsIG9iamMrKy5tbToKCSAgVGVzdCBmb3IgT2JqQysrIG9uIE9TWCBtYWNoaW5lcyBvbmx5CgoyMDAyLTExLTI2IDA5OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IFJlbW92ZSB3YXJuaW5nCgoyMDAyLTExLTI1IDE3OjU3ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2U6IENoYW5nZSBwcmlvcml0aWVzCgoyMDAyLTExLTIyIDE2OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBmb3IgcGF0aHMgd2l0aAoJICBzcGFjZXMgYW5kIGJvcmxhbmQKCjIwMDItMTEtMjIgMTY6MTggIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogY2hhbmdlIGZsYWdzIGZvciBib3JsYW5kCgoyMDAyLTExLTIyIDE1OjQ0ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBSZXZlcnQgYmFjayB0byAxLjUsCgkgIHNpbmNlIGl0IGlzIGZpeGVkIGluIENvbnZlcnRUb091dHB1dFBhdGggYW5kIHRoaXMgYnJlYWtzIFdpbmRvd3MKCSAgOTgKCjIwMDItMTEtMjIgMDk6NDUgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IFJlbmFtZSBsb2NhbCB2YXJpYWJsZQoKMjAwMi0xMS0yMSAyMzo1NCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogYWRkIHN1cHBvcnQgZm9yCgkgIENNQUtFX0NfRkxBR1MgYW5kIGhhbmRsZSBxdW90ZXMgaW4gQ01BS0VfQ1hYX0ZMQUdTCgoyMDAyLTExLTIxIDE2OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IGZpeCBmb3IgYyBmbGFncwoKMjAwMi0xMS0yMSAxNjowMyAgaG9mZm1hbgoKCSogU291cmNlLzogY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IGZpeCBmbGFnIHNldHRpbmcKCjIwMDItMTEtMjEgMTU6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlOiByZW1vdmUgZGVidWcgc3R1ZmYKCjIwMDItMTEtMjEgMTU6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogbW92ZSBjb21waWxlIGRlZnMgdG8gY3h4IGFuZCBjCgkgIGZsYWdzCgoyMDAyLTExLTIxIDE0OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgY21UcnlDb21waWxlQ29tbWFuZC5oOiBjbGVhbiB1cAoJICBlbnRpcmUgdGVtcCBkaXJlY3RvcnkKCjIwMDItMTEtMjEgMTQ6NDUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDaGVja0luY2x1ZGVGaWxlQ1hYLmNtYWtlLAoJICBUZXN0Rm9yQU5TSVN0cmVhbUhlYWRlcnMuY21ha2U6IHRyeSB0byBmaXggY2hlY2sgZm9yIGFuc2kgc3RyZWFtCgoyMDAyLTExLTIxIDE0OjMyICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGVDWFguY21ha2U6IGZpeCBvcmRlcgoKMjAwMi0xMS0yMSAxNDoyNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9UZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlOiBmaXggb3JkZXIKCjIwMDItMTEtMjEgMTQ6MTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlLAoJICBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IG1vdmUgYW5zaSBjeHggZmxhZ3Mgc3R1ZmYgb3V0IG9mCgkgIHRyeSBjb21waWxlIGFuZCBpbnRvIGNtYWtlIGZpbGVzCgoyMDAyLTExLTIxIDEzOjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IGZpeCBuZXR3b3JrIHBhdGhzIHdpdGggc3BhY2VzCgoyMDAyLTExLTIxIDEzOjI4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlOiBoYXZlIHRvIGNhY2hlCgkgIGFuc2lfY3h4ZmxhZ3MKCjIwMDItMTEtMjEgMTI6NTkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgVGVzdENYWEFjY2VwdHNGbGFnLmNtYWtlOiBzcGVsbGluZyBlcnJvcgoKMjAwMi0xMS0yMSAxMjo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlLCBEdW1teUNYWEZpbGUuY3h4LAoJICBUZXN0Q1hYQWNjZXB0c0ZsYWcuY21ha2UsIFBsYXRmb3JtL0lSSVg2NC5jbWFrZSwKCSAgUGxhdGZvcm0vT1NGMS5jbWFrZTogYWRkIGNoZWNrcyBmb3IgYW5zaSBmbGFncyBhbmQgbm90IGhhcmQgY29kZQoJICB0aGVtCgoyMDAyLTExLTIxIDEyOjI2ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBGaXggZm9yIG5ldHdvcmsgcGF0aHMKCSAgd2l0aCBzcGFjZQoKMjAwMi0xMS0yMSAxMjoyNiAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogRml4IGZvciBuZXR3b3JrIHBhdGhzCgoyMDAyLTExLTIxIDExOjQ2ICBiYXJyZQoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IEZVWDogdGhvc2UgdmFycwoJICBuZWVkIHRvIGJlIEFEVkFOQ0VECgoyMDAyLTExLTIxIDEwOjExICBraW5nCgoJKiBNb2R1bGVzLzogQ2hlY2tWYXJpYWJsZUV4aXN0cy5jLCBDaGVja1ZhcmlhYmxlRXhpc3RzLmNtYWtlOiBFTkg6CgkgIEFkZGVkIENIRUNLX1ZBUklBQkxFX0VYSVNUUyBtYWNyby4KCjIwMDItMTEtMjEgMTA6MDMgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEVSUjogRml4ZWQgc3RyaW5nCgkgIGxpdGVyYWwgdG8gY2hhciogd2FybmluZ3MuCgoyMDAyLTExLTIxIDA4OjQ1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0NZR1dJTi5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9TeXN0ZW1JbmZvcm1hdGlvbi9TeXN0ZW1JbmZvcm1hdGlvbi5pbjogZml4IGZvciBjcmVhdGUKCSAgc2hhcmVkIGxpYnJhcnkKCjIwMDItMTEtMjEgMDg6MTkgIG1hcnRpbmsKCgkqIFRlc3RzL0xpbmtMaW5lT3JkZXIvOiBFeGVjMS5jLCBFeGVjMi5jLCBOb0RlcEIuYywgTm9EZXBDLmMsCgkgIE5vRGVwRS5jLCBOb0RlcEYuYywgTm9EZXBYLmMsIE5vRGVwWS5jLCBOb0RlcFouYywgT25lLmM6CgkgIGNvbnZlcnRlZCBjIHBsdXMgcGx1cyBjb21tZW50cwoKMjAwMi0xMS0yMSAwODoxMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IEVOSDogZml4IGZvciBtb2R1bGUKCSAgcnVuIHRpbWUgZmxhZwoKMjAwMi0xMS0yMCAxODoxOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuaCwgY21TeXN0ZW1Ub29scy5jeHg6IHJlbmFtZSBmb28KCSAgdmFyaWFibGVzIHRvIGJldHRlciBuYW1lcwoKMjAwMi0xMS0yMCAxODowMCAga2luZwoKCSogU291cmNlLzogY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwgY21Mb2FkQ2FjaGVDb21tYW5kLmg6IEVOSDogQWRkZWQKCSAgUkVBRF9XSVRIX1BSRUZJWCBvcHRpb24gdG8gTE9BRF9DQUNIRSBjb21tYW5kLiAgVGhpcyBhbGxvd3MKCSAgcmVhZGluZyBvZiBjYWNoZSB2YWx1ZXMgZnJvbSBhbm90aGVyIGNhY2hlIHdpdGhvdXQgYWN0dWFsbHkKCSAgY3JlYXRpbmcgbG9jYWwgY29waWVzIG9mIHRoZSBjYWNoZSBlbnRpcmVzLiAgVGhlIHZhbHVlcyBhcmUKCSAgc3RvcmVkIGFzIHByZWZpeGVkIGxvY2FsIG1ha2VmaWxlIHZhcmlhYmxlcy4KCjIwMDItMTEtMjAgMTY6MjMgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogRU5IOiBBZGRlZCBzdXBwb3J0IHRvIGZpbmQgVlRLIDQuMC4KCjIwMDItMTEtMjAgMTU6MjMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW46IEJVRzogdXNlIENNQUtFX0NPTVBJTEVSX0lTX0dOVUNDCgkgIG5vdCBDTUFLRV9DT01QSUxFUl9JU19HTlVHQ0MKCjIwMDItMTEtMjAgMTQ6NDAgIGliYW5legoKCSogTW9kdWxlcy9GaW5kTEFURVguY21ha2U6IEVOSDogTm93IGFsc28gbG9jYXRlcyB0aGUgIm1ha2VpbmRleCIKCSAgcHJvZ3JhbS4KCjIwMDItMTEtMjAgMTQ6MTEgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogRU5IOiBPbmx5IHNlYXJjaCBWVEtfSU5TVEFMTF9QQVRIIGlmCgkgIFVTRV9JTlNUQUxMRURfVlRLIGlzIG9uLiAgT25seSBzZWFyY2ggVlRLX0JJTkFSWV9QQVRIIGlmCgkgIFVTRV9CVUlMVF9WVEsgaXMgb24uCgoyMDAyLTExLTIwIDEzOjM3ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRWVEsuY21ha2U6IEVOSDogTmV3IGltcGxlbWVudGF0aW9uIG9mIEZpbmRWVEsgdG8gdGFrZQoJICBhZHZhbnRhZ2Ugb2YgVlRLQ29uZmlnLmNtYWtlLiAgQWxzbyBwcm92aWRlcyBtb3JlIHBvd2VyZnVsIHNlYXJjaAoJICBwYXRoIG1lY2hhbmlzbSwgYW5kIHJlcXVpcmVzIG9ubHkgb25lIGNhY2hlIGVudHJ5IGluIHVzZXIKCSAgcHJvamVjdC4KCjIwMDItMTEtMjAgMTI6NTggIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBBdHRlbXB0IHRvIGZpeCBDb3B5RmlsZSBwcm9ibGVtCgkgIHVzaW5nIGZsdXNoIGJlZm9yZSBjaGVjayBmb3Igc3VjY2Vzcy4KCjIwMDItMTEtMjAgMDk6MDYgIGtpbmcKCgkqIFNvdXJjZS9jbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHg6IEVSUjogRml4ZWQKCSAgc2lnbmVkL3Vuc2lnbmVkIHdhcm5pbmcuCgoyMDAyLTExLTIwIDA5OjA2ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVSUjogRml4ZWQgdW51c2VkCgkgIHBhcmFtZXRlciB3YXJuaW5nLgoKMjAwMi0xMS0yMCAwOTowNCAgbWFydGluawoKCSogVGVzdHMvTGlua0xpbmVPcmRlci9Ob0RlcEEuYzogZml4ZWQgY29tbWVudHMgdG8gYmUgYyBzdHlsZSBub3QgYwoJICBwbHVzIHBsdXMKCjIwMDItMTEtMTkgMTg6MTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIFNvdXJjZS9jbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmg6IGFsbG93IGZsYWdzIHRvIGJlIGluIHRoZSBDQyBhbmQgQ1hYCgkgIGVudmlyb25tZW50IHZhcmlhYmxlcwoKMjAwMi0xMS0xOSAxODowMSAgcGVyZXJhCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFRlc3RzL0xpbmtMaW5lT3JkZXIvQ01ha2VMaXN0cy50eHQsIFRlc3RzL0xpbmtMaW5lT3JkZXIvRXhlYzEuYywKCSAgVGVzdHMvTGlua0xpbmVPcmRlci9FeGVjMi5jLCBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwQS5jLAoJICBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwQi5jLCBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwQy5jLAoJICBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwRS5jLCBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwRi5jLAoJICBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwWC5jLCBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwWS5jLAoJICBUZXN0cy9MaW5rTGluZU9yZGVyL05vRGVwWi5jLCBUZXN0cy9MaW5rTGluZU9yZGVyL09uZS5jLAoJICBUZXN0cy9MaW5rTGluZU9yZGVyL1R3by5jOiBCVUc6IHRoZSBkZXBlbmRlbmN5IGFuYWx5c2lzIHdvdWxkCgkgIGluY29ycmVjdGx5IGFscGhhYmV0aWNhbGx5IHJlLW9yZGVyIHRoZSBsaW5rIGxpbmVzLCB3aGljaCBhZmZlY3RzCgkgIGV4dGVybmFsIGxpYnJhcmllcyBwdWxsZWQgdXAgZnJvbSBkZWVwIHdpdGhpbiB0aGUgZGVwZW5kZW5jeQoJICB0cmVlLiBGaXhlZCBieSBwcmVzZXJ2aW5nIG9yZGVyIGV2ZXJ5d2hlcmUuCgoyMDAyLTExLTE5IDE1OjU1ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2U6IGZpeGVzIHRvIGJldHRlciBob25vciBlbnYgQ0MgYW5kCgkgIENYWAoKMjAwMi0xMS0xOSAxNDo0MCAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGFkZCBzb21lIGJldHRlciBvdXRwdXQgd2hlbiBjb3B5CgkgIGZpbGUgZmFpbHMKCjIwMDItMTEtMTkgMTQ6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZml4IHNvbWUgd2FybmluZ3MKCjIwMDItMTEtMTkgMTM6MTkgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmN4eDogQWRkIC8gYWZ0ZXIgZGlyZWN0b3J5CgkgIG5hbWUgd2hlbiBkb2luZyB0YWIgY29tcGxldGlvbgoKMjAwMi0xMS0xOSAxMzowOSAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc01haW5Gb3JtLmg6CgkgIEFkZCBwcm9ncmVzcyB0byBjY21ha2UKCjIwMDItMTEtMTkgMTI6MjAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlOiBCVUc6IGZpeCBDRkxBR1MKCjIwMDItMTEtMTkgMTI6MTggIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZTogQlVHOiBmaXggaGFuZGxpbmcgb2YgQ1hYCgoyMDAyLTExLTE5IDA5OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCB3YXJuaW5nCgoyMDAyLTExLTE5IDA5OjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IGZpeCBpbiB3YXJuaW5nCgoyMDAyLTExLTE4IDE2OjI5ICBhbmR5CgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNNYWluRm9ybS5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uaDoKCSAgSW5pdGlhbCBhZGQgb2YgcHJvZ3Jlc3MKCjIwMDItMTEtMTggMTU6MTQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUMuY21ha2UsIEZpbmRUaHJlYWRzLmNtYWtlOgoJICBCVUc6IGZpeCBmb3IgdGhyZWFkIGFuZCBjYWNoZSBvdmVycmlkZQoKMjAwMi0xMS0xOCAxMDo1MiAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwgQ2hlY2tTaXplT2YuY21ha2UsCgkgIFRlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2UsIFRlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZSwKCSAgVGVzdEZvclNURE5hbWVzcGFjZS5jbWFrZTogQWRkIG1vcmUgbWVzc2FnZXMsIG1ha2UgbWVzc2FnZXMgbG9vawoJICB0aGUgc2FtZSwgYWRkIGNoZWNrcyBpZiB0ZXN0IHdhcyBhbHJlYWR5IHN1Y2Nlc3NmdWxsCgoyMDAyLTExLTE4IDEwOjUxICBhbmR5CgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogSWYgc3lzdGVtIGRldGVjdGlvbgoJICBmYWlscywgbWFrZSBjb3B5IG9mIENNYWtlQ2FjaGUKCjIwMDItMTEtMTggMDk6MDggIGhvZmZtYW4KCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL1N5c3RlbUluZm9ybWF0aW9uLmluOiBhZGQgcHJpbnQgZm9yCgkgIGNvbXBpbGVyIGlzIGdudQoKMjAwMi0xMS0xNyAxNzoyOCAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZml4IHNvbWUKCSAgY29tcGlsZXIgd2FybmluZ3MgaG9wZWZ1bGx5CgoyMDAyLTExLTE1IDE3OjQ1ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggZm9yIGJvcmxhbmQgcnVuCgkgIHRpbWUgZGxsCgoyMDAyLTExLTE1IDE2OjAwICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1N1bk9TLmNtYWtlOiBmaXggZm9yIHN1bgoKMjAwMi0xMS0xNSAxMzoxNyAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogZml4ZWQgYmFkIHNvdXJjZSBkaXJlY3RvcnkgYnVnCgoyMDAyLTExLTE1IDEyOjU0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiAgZml4ZWQgY29tcGlsZXIgd2FybmluZwoKMjAwMi0xMS0xNSAxMDowNyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2U6IEVOSDogYWRkIGJhY2sKCSAgaW5zdGFsbCBwcmVmaXgKCjIwMDItMTEtMTUgMDk6MzAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZFRocmVhZHMuY21ha2U6IGZpeCB0aHJlYWQgbG9naWMKCjIwMDItMTEtMTUgMDk6MTYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlOiBFTkg6IGFkZCBDRkxBR1MgYW5kCgkgIENYWEZMQUdTCgoyMDAyLTExLTE1IDA3OjQyICBhbmR5CgoJKiBTb3VyY2UvY21ha2VtYWluLmN4eDogT29wcywgc3RkIG5hbWVzcGFjZQoKMjAwMi0xMS0xNCAxODoxOCAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nLzogY21XWE1haW5GcmFtZS5jeHgsIGNtV1hNYWluRnJhbWUuaCwKCSAgd3hDTWFrZVNldHVwLmN4eDogQWRkIHByb2dyZXNzIHJlcG9ydGluZwoKMjAwMi0xMS0xNCAxNzoxMiAgYW5keQoKCSogU291cmNlL2NtYWtlbWFpbi5jeHg6IEFkZCBQcm9ncmVzcyBzdXBwb3J0CgoyMDAyLTExLTE0IDE2OjI5ICBiZXJrCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlOiB0ZW1wIGZpeCBmb3IgaHAKCjIwMDItMTEtMTQgMTY6MjkgIGhvZmZtYW4KCgkqIFNvdXJjZS9UT0RPOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTExLTE0IDE2OjEyICBiZXJrCgoJKiBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlOiBmaXggZmxhZ3MgZm9yIGhwCgoyMDAyLTExLTE0IDE0OjA2ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEZpeCBjb21waWxlIGZsYWdzIG9uIGMKCSAgZmlsZXMgaW4gc3RhdGljIGxpb2JyYXJpZXMgb24gd2luZG93cwoKMjAwMi0xMS0xNCAxMTozMyAgYW5keQoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBmbGFncyBmb3IgYwoJICBjb21waWxlciBvbiB3aW5kb3dzCgoyMDAyLTExLTE0IDExOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuY3h4LCBjbUNQbHVnaW5BUEkuaDogYWRkZWQgYW5vdGhlciBmdW5jCgoyMDAyLTExLTE0IDExOjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuaCwgY21DUGx1Z2luQVBJLmN4eDogYWRkZWQgYW5vdGhlciBmdW5jCgoyMDAyLTExLTE0IDA5OjM4ICBhbmR5CgoJKiBNb2R1bGVzLzogRmluZEpOSS5jbWFrZSwgRmluZEphdmEuY21ha2UsIEZpbmRQeXRob25MaWJzLmNtYWtlOgoJICBDbGVhbiBmaW5kIGZvciBQeXRob24sIGFkZCBmaW5kIGZvciBweXRob24gMi4yIG9uIHdpbmRvd3MsCgkgIGNsZWFudXAgamF2YSBvbiB3aW5kb3dzIGFuZCBhZGQgamF2YSAxLjQgc3VwcG9ydAoKMjAwMi0xMS0xNCAwOTozOCAgYmVyawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBBZGRlZCBtaXNzaW5nIHNwYWNlLgoKMjAwMi0xMS0xNCAwOTozNyAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBGaXggYnVpbGRpbmcgb24gTk1ha2UuCgkgIFVzZSBzaG9ydCBwYXRocwoKMjAwMi0xMS0xNCAwODo1OSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IGZpeCBmb3IgbWlzc2luZyB0ZW1wCgkgIGZpbGUgdmFyaWFibGUKCjIwMDItMTEtMTMgMjM6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiAgcmVvcmRlciB0V1Igc28gdGhhdCBpdAoJICBkb2VzIG5vdCBjcmFzaCB3aXRoIHNoYXJlZAoKMjAwMi0xMS0xMyAyMDoxNCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBhZGQgc3VwcG9ydCBmb3IgYm9ybGFuZAoJICBydW4gdGltZSBmbGFnIGZvciBzaGFyZWQgYnVpbGRzCgoyMDAyLTExLTEzIDIwOjExICBob2ZmbWFuCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IGZpeCBzaGFyZWQgYnVpbGRzIG9uCgkgIGJvcmxhbmQgYW5kIGFkZCBkZWJ1ZyBzdHVmZiBmb3IgbWFrZWZpbGVzCgoyMDAyLTExLTEzIDE4OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBCVUc6IGZpeCBmb3IgYnVpbGQgb3V0IG9mIGRpciBmb3IKCSAgd2luZG93cwoKMjAwMi0xMS0xMyAxNjozMSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwgQ2hlY2tTaXplT2YuY21ha2U6IEVOSDogYWRkIHN0YXR1cwoJICBtZXNzYWdlcwoKMjAwMi0xMS0xMyAxNTo1OSAgbWFydGluawoKCSogU291cmNlLzogY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtTWVzc2FnZUNvbW1hbmQuY3h4LCBjbU1lc3NhZ2VDb21tYW5kLmg6IEVOSDoKCSAgc3BhY2UgZml4ZXMgYW5kIGFkZCBhIHN0YXR1cyBvcHRpb24gdG8gbWVzc2FnZSBjb21tYW5kCgoyMDAyLTExLTEzIDE1OjMyICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2U6IEVOSDogbW92ZSAtUCBmbGFnIGZyb20KCSAgY3h4ZmxhZ3MgdG8gdGhlIGNvbXBpbGUgbGluZSBmb3IgY3h4IGZpbGVzCgoyMDAyLTExLTEzIDE1OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtYWtlLmN4eCwgY21ha2UuaDoKCSAgRU5IOiBjaGVjayB0byBtYWtlIHN1cmUgY21ha2UgbWF0Y2hlcyB0aGUgY21ha2UgdXNlZCB0byBnZW5lcmF0ZQoJICB0aGUgY2FjaGUKCjIwMDItMTEtMTMgMTQ6NTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZTogRU5IOiB1c2UgY29ycmVjdCBydW4gdGltZQoJICBsaWJyYXJ5IGZvciBib3JsYW5kCgoyMDAyLTExLTEzIDE0OjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgRU5IOiBmb3JjZSBhIGdsb2JhbCBnZW5lcmF0ZSBpZiB0aGUgY2FjaGUgdmVyc2lvbiBkb2VzIG5vdCBtYXRjaAoJICB0aGUgcnVubmluZyBjbWFrZQoKMjAwMi0xMS0xMyAxMzoxOSAgYmVyawoKCSogU291cmNlL01ha2VmaWxlLmluOiBCVUc6IGFkZCBtaXNzaW5nIGRlcGVuZCBydWxlcyBmb3IgaHAgbWFrZQoKMjAwMi0xMS0xMyAxMTo0OSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBmaXggZm9yIG5zbCBsaWJyYXJ5IGFuZCBYMTEKCjIwMDItMTEtMTMgMTE6MzYgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUMuY21ha2UsIEZpbmRYMTEuY21ha2U6IGZpeAoJICBmb3IgbnNsIGxpYnJhcnkgYW5kIFgxMQoKMjAwMi0xMS0xMyAxMToyNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlOiBCVUc6IGZpeCBvcmRlciBvZiBsaW5rIGxpbmUKCSAgZm9yIGNyZWF0aW5nIHNoYXJlZCBsaWJyYXJpZXMKCjIwMDItMTEtMTIgMTk6MzkgIGtpbmcKCgkqIE1vZHVsZXMvQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZTogQlVHOiBGaXhlZCBkb2Mgc3RyaW5nIG9uCgkgIGdlbmVyYXRlZCB2YXJpYWJsZS4KCjIwMDItMTEtMTIgMTY6NTggIGhvZmZtYW4KCgkqIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBwYXRoIHByb2JsZW1zCgoyMDAyLTExLTEyIDE2OjI3ICB3aWxsCgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6IEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBBbmR5IGFuZCBCaWxsCgkgIG1hZGUgbWUgYWRkIHNvY2tldCBsaWJyYXJ5LgoKMjAwMi0xMS0xMiAxNToyNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQgLmRlZiBmaWxlCgkgIHN1cHBvcnQKCjIwMDItMTEtMTIgMTQ6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBjaGFuZ2UgdG8gbmV3CgkgIHZhcmlhYmxlcwoKMjAwMi0xMS0xMiAxNDoxOSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZSwKCSAgQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLCBGaW5kVGhyZWFkcy5jbWFrZTogYWRkIGZpbmQgdGhyZWFkcwoJICBjaGVjawoKMjAwMi0xMS0xMiAxNDoxOCAgaG9mZm1hbgoKCSogVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vOiBDTWFrZUxpc3RzLnR4dCwgRHVtcEluZm9ybWF0aW9uLmN4eCwKCSAgRHVtcEluZm9ybWF0aW9uLmguaW4sIFN5c3RlbUluZm9ybWF0aW9uLmluOiBjbGVhbiB1cCB0ZXN0IGZvcgoJICBodG1sIG91dHB1dAoKMjAwMi0xMS0xMiAxMzowNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCByZWcgZXhwcmVzc2lvbgoKMjAwMi0xMS0xMiAxMjo0NyAga2luZwoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTExLTEyIDEwOjQ3ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBGSVg6IG1pbm9yIGZpeCwgT1BFTkdMX0lOQ0xVREVfUEFUSCB3YXMKCSAgc2V0IDIgdGltZXMKCjIwMDItMTEtMTIgMDk6MzMgIGhvZmZtYW4KCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0R1bXBJbmZvcm1hdGlvbi5jeHg6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDItMTEtMTIgMDk6MzEgIGhvZmZtYW4KCgkqIFRlc3RzL1N5c3RlbUluZm9ybWF0aW9uL0NNYWtlTGlzdHMudHh0OiBmaXggcHJvamVjdCBuYW1lCgoyMDAyLTExLTEyIDA5OjEyICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLAoJICBQbGF0Zm9ybS9DWUdXSU4uY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IFNldCBDTUFLRV9CVUlMRF9UT09MCgoyMDAyLTExLTExIDE4OjEwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL1RPRE8sIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBmaXggdXAgc2V2ZXJhbAoJICBwcm9ibGVtcyB3aXRoIG5ldyBzdHVmZgoKMjAwMi0xMS0xMSAxODowNyAgaG9mZm1hbgoKCSogVGVzdHMvU3lzdGVtSW5mb3JtYXRpb24vOiBDTWFrZUxpc3RzLnR4dCwgRHVtcEluZm9ybWF0aW9uLmN4eCwKCSAgRHVtcEluZm9ybWF0aW9uLmguaW4sIFN5c3RlbUluZm9ybWF0aW9uLmluOiBuZXcgdGVzdAoKMjAwMi0xMS0xMSAxNzowMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS9PU0YxLmNtYWtlOiBGaXggZm9yIE9TRgoKMjAwMi0xMS0xMSAxMzoxNSAgYW5keQoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBGaXggcmVndWxhciBleHByZXNzaW9ucwoJICB0byBiZSBhYmxlIHRvIGhhbmRsZSB3aW5kb3dzIGxpYnJhcmllcwoKMjAwMi0xMS0xMSAxMjozMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUMuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sCgkgIE1vZHVsZXMvQ01ha2VDWFhDb21waWxlci5jbWFrZS5pbiwgTW9kdWxlcy9DTWFrZVN5c3RlbS5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vSFAtVVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9JUklYNjQuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1iY2MzMi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZSwKCSAgU291cmNlL1RPRE8sIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGNsZWFuIHVwCgkgIGZsYWdzIHdpdGggX2luaXQgZmxhZ3MKCjIwMDItMTEtMTEgMTE6NDMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUxpc3RzLnR4dCwgUGxhdGZvcm0vQ01ha2VMaXN0cy50eHQ6IGFkZCBpbnN0YWxsCgkgIHN0dWZmIGZvciBwbGF0Zm9ybSBkaXJlY3RvcnkKCjIwMDItMTEtMTEgMDk6MTEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vRGFyd2luLmNtYWtlOiBFTkg6IGZpeCBmb3IgZGFyd2luIG1vZHVsZXMKCjIwMDItMTEtMTAgMTA6MDIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvUGxhdGZvcm0vOiBIUC1VWC5jbWFrZSwgSVJJWC5jbWFrZSwgSVJJWDY0LmNtYWtlLAoJICBXaW5kb3dzLWJjYzMyLmNtYWtlLCBXaW5kb3dzLWNsLmNtYWtlLCBnY2MuY21ha2U6IEJVRzogZml4CgkgIHNldHRpbmcgb2YgYyBmbGFncwoKMjAwMi0xMS0wOSAxMzo0MyAgaG9mZm1hbgoKCSogTW9kdWxlcy9QbGF0Zm9ybS86IEhQLVVYLmNtYWtlLCBJUklYLmNtYWtlLCBJUklYNjQuY21ha2UsCgkgIFdpbmRvd3MtYmNjMzIuY21ha2UsIFdpbmRvd3MtY2wuY21ha2UsIGdjYy5jbWFrZTogIGZpeCBmb3IKCSAgY3h4ZmxhZ3MKCjIwMDItMTEtMDggMTg6MDcgIGtpbmcKCgkqIE1vZHVsZXMvUGxhdGZvcm0vTGludXgtY29tby5jbWFrZTogRU5IOiBBZGRpbmcgc3VwcG9ydCBmb3IgY29tZWF1CgkgIEMrKyBjb21waWxlci4KCjIwMDItMTEtMDggMTg6MDYgIGtpbmcKCgkqIE1vZHVsZXMvOiBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIFBsYXRmb3JtL0hQLVVYLmNtYWtlLCBQbGF0Zm9ybS9JUklYLmNtYWtlLCBQbGF0Zm9ybS9JUklYNjQuY21ha2UsCgkgIFBsYXRmb3JtL0xpbnV4LmNtYWtlLCBQbGF0Zm9ybS9XaW5kb3dzLWJjYzMyLmNtYWtlLAoJICBQbGF0Zm9ybS9XaW5kb3dzLWNsLmNtYWtlLCBQbGF0Zm9ybS9nY2MuY21ha2U6IEVOSDogTW92ZWQgY2FjaGluZwoJICBvZiBDKl9GTEFHUyogc2V0dGluZ3MgZG93biB0bwoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UuICBUaGUgcGxhdGZvcm0gZmlsZXMgY2FuIHNldAoJICB0aGUgZGVmYXVsdHMgb24gdGhlIGZpcnN0IHJ1biwgYW5kIHRoZW4gdGhlIHNldHRpbmdzIGFyZSBjYWNoZWQKCSAgYXQgdGhlIGVuZC4KCjIwMDItMTEtMDggMTg6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBCVUc6IEEgdmFyaWFibGUgaXMgbm90IGluIHRoZSBjYWNoZSBpZgoJICBpdCBpcyBVTklOSVRJQUxJWkVELgoKMjAwMi0xMS0wOCAxODowNSAga2luZwoKCSogU291cmNlL2NtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4OiBFUlI6IFJlbW92ZWQgdXNlIG9mCgkgIE5VTEwuCgoyMDAyLTExLTA4IDE4OjA1ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVSUjogQWRkZWQgbWlzc2luZyBpbmNsdWRlLgoKMjAwMi0xMS0wOCAxNzoyNCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlOiBzdG9yZSB0aGUgY29tcGlsZXIgaW4gdGhlIGNhY2hlCgoyMDAyLTExLTA4IDE1OjQ2ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VQcmludFN5c3RlbUluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DWUdXSU4uY21ha2UsIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZS5jeHguaW4sCgkgIE1vZHVsZXMvQ2hlY2tJbmNsdWRlRmlsZUNYWC5jbWFrZSwKCSAgTW9kdWxlcy9UZXN0Rm9yQU5TSUZvclNjb3BlLmNtYWtlLAoJICBNb2R1bGVzL1Rlc3RGb3JBbnNpRm9yU2NvcGUuY3h4LAoJICBNb2R1bGVzL1Rlc3RGb3JTVEROYW1lc3BhY2UuY21ha2UsCgkgIE1vZHVsZXMvVGVzdEZvclNURE5hbWVzcGFjZS5jeHgsIE1vZHVsZXMvV2luZG93cy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9BSVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vQlNET1MuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vQ1lHV0lOLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0Rhcndpbi5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9GcmVlQlNELmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL0hQLVVYLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0lSSVguY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vSVJJWDY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL0xpbnV4LmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL01QLVJBUy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9OZXRCU0QuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vT1NGMS5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9PcGVuQlNELmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1JJU0Nvcy5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9TQ09fU1YuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vU0lOSVguY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vU3VuT1MuY21ha2UsIE1vZHVsZXMvUGxhdGZvcm0vVHJ1ZTY0LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VMVFJJWC5jbWFrZSwgTW9kdWxlcy9QbGF0Zm9ybS9VTklYX1NWLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1VuaXhXYXJlLmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIE1vZHVsZXMvUGxhdGZvcm0vV2luZG93cy1jbC5jbWFrZSwKCSAgTW9kdWxlcy9QbGF0Zm9ybS9XaW5kb3dzLmNtYWtlLCBNb2R1bGVzL1BsYXRmb3JtL1hlbml4LmNtYWtlLAoJICBNb2R1bGVzL1BsYXRmb3JtL2djYy5jbWFrZSwgU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvVE9ETywKCSAgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21JZkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwKCSAgU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmgsIFNvdXJjZS9jdGVzdC5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IENvbXBsZXRlIHJld29yayBvZgoJICBtYWtlZmlsZSBnZW5lcmF0b3JzIGV4cGVjdCB0cm91YmxlCgoyMDAyLTExLTA4IDEzOjI4ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VDQ29tcGlsZXIuY21ha2UuaW4sIENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNYWENvbXBpbGVyLmNtYWtlLAoJICBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIFBsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2U6IFtubyBsb2cKCSAgbWVzc2FnZV0KCjIwMDItMTEtMDggMTE6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jdGVzdC5jeHg6IGZpeCBjdGVzdAoKMjAwMi0xMS0wOCAxMTozMCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IEFJWC5jbWFrZSwgQlNET1MuY21ha2UsCgkgIENNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwgQ1lHV0lOLmNtYWtlLCBEYXJ3aW4uY21ha2UsCgkgIEZyZWVCU0QuY21ha2UsIEhQLVVYLmNtYWtlLCBJUklYLmNtYWtlLCBJUklYNjQuY21ha2UsCgkgIExpbnV4LmNtYWtlLCBNUC1SQVMuY21ha2UsIE5ldEJTRC5jbWFrZSwgT1NGMS5jbWFrZSwKCSAgT3BlbkJTRC5jbWFrZSwgUklTQ29zLmNtYWtlLCBTQ09fU1YuY21ha2UsIFNJTklYLmNtYWtlLAoJICBTdW5PUy5jbWFrZSwgVHJ1ZTY0LmNtYWtlLCBVTFRSSVguY21ha2UsIFVOSVhfU1YuY21ha2UsCgkgIFVuaXhXYXJlLmNtYWtlLCBXaW5kb3dzLWJjYzMyLmNtYWtlLCBXaW5kb3dzLWNsLmNtYWtlLAoJICBXaW5kb3dzLmNtYWtlLCBYZW5peC5jbWFrZSwgZ2NjLmNtYWtlLCBQbGF0Zm9ybS9BSVguY21ha2UsCgkgIFBsYXRmb3JtL0JTRE9TLmNtYWtlLCBQbGF0Zm9ybS9DWUdXSU4uY21ha2UsCgkgIFBsYXRmb3JtL0Rhcndpbi5jbWFrZSwgUGxhdGZvcm0vRnJlZUJTRC5jbWFrZSwKCSAgUGxhdGZvcm0vSFAtVVguY21ha2UsIFBsYXRmb3JtL0lSSVguY21ha2UsIFBsYXRmb3JtL0lSSVg2NC5jbWFrZSwKCSAgUGxhdGZvcm0vTGludXguY21ha2UsIFBsYXRmb3JtL01QLVJBUy5jbWFrZSwKCSAgUGxhdGZvcm0vTmV0QlNELmNtYWtlLCBQbGF0Zm9ybS9PU0YxLmNtYWtlLAoJICBQbGF0Zm9ybS9PcGVuQlNELmNtYWtlLCBQbGF0Zm9ybS9SSVNDb3MuY21ha2UsCgkgIFBsYXRmb3JtL1NDT19TVi5jbWFrZSwgUGxhdGZvcm0vU0lOSVguY21ha2UsCgkgIFBsYXRmb3JtL1N1bk9TLmNtYWtlLCBQbGF0Zm9ybS9UcnVlNjQuY21ha2UsCgkgIFBsYXRmb3JtL1VMVFJJWC5jbWFrZSwgUGxhdGZvcm0vVU5JWF9TVi5jbWFrZSwKCSAgUGxhdGZvcm0vVW5peFdhcmUuY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFBsYXRmb3JtL1dpbmRvd3MtY2wuY21ha2UsIFBsYXRmb3JtL1dpbmRvd3MuY21ha2UsCgkgIFBsYXRmb3JtL1hlbml4LmNtYWtlLCBQbGF0Zm9ybS9nY2MuY21ha2U6IG1vdmUgdG8gcGxhdGZvcm0KCSAgZGlyZWN0b3J5CgoyMDAyLTExLTA4IDExOjA5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogaHAgZml4ZXMKCjIwMDItMTEtMDggMTA6NDAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvSFAtVVguY21ha2U6IGhwIGZpeGVzCgoyMDAyLTExLTA4IDEwOjI5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0hQLVVYLmNtYWtlOiBocCBmaXhlcwoKMjAwMi0xMS0wOCAxMDoyMiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvSFAtVVguY21ha2UsIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogaHAKCSAgZml4ZXMKCjIwMDItMTEtMDggMDg6NDcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwgSFAtVVguY21ha2UsCgkgIFRlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6IEVOSDogZml4IGZvciBocCBhbmQgcmVtb3ZlIHNvbWUKCSAgbWVzc2FnZXMKCjIwMDItMTEtMDcgMTc6NDUgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgVGVzdEZvckFOU0lGb3JTY29wZS5jbWFrZSwgVGVzdEZvckFuc2lGb3JTY29wZS5jeHgsCgkgIFRlc3RGb3JTVEROYW1lc3BhY2UuY3h4OiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTExLTA3IDE3OjI2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJRm9yU2NvcGUuY21ha2U6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDItMTEtMDcgMTc6MjEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwgSFAtVVguY21ha2UsCgkgIFRlc3RGb3JBbnNpRm9yU2NvcGUuY3h4LCBUZXN0Rm9yU1RETmFtZXNwYWNlLmNtYWtlLAoJICBUZXN0Rm9yU1RETmFtZXNwYWNlLmN4eDogW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0xMS0wNyAxMTo0MyAgaG9mZm1hbgoKCSogTW9kdWxlcy9XaW5kb3dzLWNsLmNtYWtlLCBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IHdpbjMyIGFwcHMgYW5kIGNyYXNoIG9uCgkgIHN1bgoKMjAwMi0xMS0wNyAwOToyMiAga2luZwoKCSogU291cmNlL2NtU3RyaW5nQ29tbWFuZC5jeHg6IEVSUjogRml4ZWQgc2lnbmVkL3Vuc2lnbmVkIHdhcm5pbmdzLgoKMjAwMi0xMS0wNyAwOToxNSAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogUmV2ZXJ0CgoyMDAyLTExLTA3IDA5OjA0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IFJldmVydCBiYWNrCgoyMDAyLTExLTA3IDA5OjAxICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvUmVhZE1lLk1hYy50eHQ6IEFkZCByZWFkbWUgZm9yIG1hYwoKMjAwMi0xMS0wNiAyMzoyNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGNsZWFuIHVwIGVjaG9zCgoyMDAyLTExLTA2IDIzOjA2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBNb2R1bGVzL1dpbmRvd3MtYmNjMzIuY21ha2UsCgkgIFNvdXJjZS9jbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogYm9ybGFuZCBtb3N0bHkgd29ya2luZywKCSAgdGVzdHMgYXJlIHBhc3NpbmcsIG5vIGNvbW1hbmQgdG8gZmlsZSBzdHVmZiB5ZXQKCjIwMDItMTEtMDYgMTg6NDAgIGtpbmcKCgkqIE1vZHVsZXMvRmluZElUSy5jbWFrZTogRU5IOiBFbmhhbmNlZCBGaW5kSVRLIHN1cHBvcnRpbmcgdXNlIG9mCgkgIElUSyBmcm9tIGFuIGluc3RhbGwgdHJlZSBvciBhIGJ1aWxkIHRyZWUuICBPbmx5IG9uZSBjYWNoZSBlbnRyeQoJICBpcyBicm91Z2h0IGludG8gdXNlcidzIHByb2plY3QsIGNhbGxlZCAiSVRLX0RJUiIuICBUaGlzIGlzIHRoZQoJICBsb2NhdGlvbiBvZiBhbiBJVEtDb25maWcuY21ha2UgZmlsZSBmcm9tIHdoaWNoIG90aGVyIHNldHRpbmdzIGFyZQoJICBsb2FkZWQuCgoyMDAyLTExLTA2IDE4OjA1ICBraW5nCgoJKiBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmN4eCwgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEJVRzogRml4ZWQKCSAgU1RSSU5HKFJFR0VYIFJFUExBQ0UgLi4uKSBhbmQgYWRkZWQgYmV0dGVyIHRlc3QuCgoyMDAyLTExLTA2IDE3OjM1ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbVN0cmluZ0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TdHJpbmdDb21tYW5kLmgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIFNUUklORwoJICBjb21tYW5kLgoKMjAwMi0xMS0wNiAxNzowNCAgaG9mZm1hbgoKCSogTW9kdWxlcy9XaW5kb3dzLWJjYzMyLmNtYWtlOiBib3JsYW5kIGNvbmZpZwoKMjAwMi0xMS0wNiAxNjo1OSAga2luZwoKCSogU291cmNlLzogY21SZWd1bGFyRXhwcmVzc2lvbi5jeHgsIGNtUmVndWxhckV4cHJlc3Npb24uaDogRU5IOgoJICBjb21waWxlIG1ldGhvZCBub3cgcmV0dXJucyB3aGV0aGVyIGNvbXBpbGF0aW9uIHN1Y2NlZWRlZC4KCjIwMDItMTEtMDYgMTY6MzAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvV2luZG93cy1jbC5jbWFrZSwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBib3JsYW5kIGdldHRpbmcgY2xvc2VyCgoyMDAyLTExLTA2IDE2OjA1ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQsIFRlbXBsYXRlcy9BcHBsZUluZm8ucGxpc3Q6IFVzZQoJICBDTWFrZSBpY29uIG9uIE1hYwoKMjAwMi0xMS0wNiAxNDo1NiAgYW5keQoKCSogQ01ha2VJY29uLmljbnMsIFNvdXJjZS9XWERpYWxvZy9DTWFrZUljb24uaWNuczogQWRkIE1hYyBpY29uCgoyMDAyLTExLTA2IDE0OjU0ICBhbmR5CgoJKiBDTWFrZUljb24uaWNuczogQWRkIENNYWtlIGljb24KCjIwMDItMTEtMDYgMTQ6NTMgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUljb24uZ2lmOiBSZW1vdmUgYmFja2dyb3VuZCBhbmQgbWFrZSBiaWdnZXIKCjIwMDItMTEtMDYgMTQ6NDQgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUljb24uZ2lmOiBCaWdnZXIgaWNvbgoKMjAwMi0xMS0wNiAxNDozMyAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nLzogQ01ha2VJY29uLmdpZiwgQ01ha2VJY29uLnhwbSwKCSAgY21XWE1haW5GcmFtZS5jeHg6IFN0YXJ0IGFkZGluZyBDTWFrZSBpY29uCgoyMDAyLTExLTA2IDEzOjA2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjdGVzdC5jeHg6IE1vdmUgdGhlCgkgIGhpLXJlcyB0aW1lIHRvIHN5c3RlbSB0b29scwoKMjAwMi0xMS0wNiAxMjowNCAgYW5keQoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oLCBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6CgkgIEluIGNlcnRhaW4gY2FzZXMsIHRyeSB0byBndWVzcyB0aGUgc291cmNlIGRpcmVjdG9yeSwgc28gdGhhdCB5b3UKCSAgY2FuIHJ1biBjbWFrZSBvciBjY21ha2Ugd2l0aG91dCBzcGVjaWZ5aW5nIHNvdXJjZSBkaXIKCjIwMDItMTEtMDYgMTE6MzYgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBDdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmN4eDoKCSAgUmVtb3ZlIHdhcm5pbmcKCjIwMDItMTEtMDYgMTE6MjAgIGJhcnJlCgoJKiBTb3VyY2UvY21NYWtlRGVwZW5kLmN4eDogRklYOiBhIC8gd2FzIGFwcGVuZGVkIHdpdGhvdXQgY2hlY2tpbmcKCSAgaWYgdGhlcmUgd2Fzbid0IG9uZSBhbHJlYWR5LgoKMjAwMi0xMS0wNiAwODo1MiAgYW5keQoKCSogVGVzdHMvWDExL1gxMS5jOiBUcnkgdG8gZml4IHRlc3QKCjIwMDItMTEtMDUgMjM6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IFRPRE8sIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiByZW1vdmUgd2FybmluZwoKMjAwMi0xMS0wNSAyMjo1NSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLCBJUklYNjQuY21ha2U6IHJhbmxpYgoJICB0cm91YmxlCgoyMDAyLTExLTA1IDIyOjQ0ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsIElSSVguY21ha2UsCgkgIElSSVg2NC5jbWFrZTogZml4IGZvciBubyByYW5saWIKCjIwMDItMTEtMDUgMTg6MTEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0LCBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtLmNtYWtlLmluLCBNb2R1bGVzL0lSSVg2NC5jbWFrZTogcmVtb3ZlIGRlYnVnCgkgIG1lc3NhZ2Ugc3RhdGVtZW50cwoKMjAwMi0xMS0wNSAxODowNiAgaG9mZm1hbgoKCSogTW9kdWxlcy86IElSSVg2NC5jbWFrZTogW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0xMS0wNSAxNzo1NyAgaG9mZm1hbgoKCSogTW9kdWxlcy9JUklYNjQuY21ha2UsIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0xMS0wNSAxNzo1NSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IGRlYnVnCgoyMDAyLTExLTA1IDE3OjQ5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlOiBlbmg6IGFkZCA8RkxBR1M+IHRvCgkgIGxpbmsgbGlicwoKMjAwMi0xMS0wNSAxNzozMSAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENZR1dJTi5jbWFrZSwgSVJJWC5jbWFrZSwgSVJJWDY0LmNtYWtlLCBnY2MuY21ha2U6IGFkZAoJICBmbGFncwoKMjAwMi0xMS0wNSAxNzoyMCAgYW5keQoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBNYWtlIHRoaW5ncyBhZHZhbmNlZAoKMjAwMi0xMS0wNSAxNzowNSAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBhZGQgY3h4IGZsYWdzIHRvIGxpbmsKCSAgZXhlCgoyMDAyLTExLTA1IDE1OjQ5ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogSFAtVVguY21ha2UsIElSSVg2NC5jbWFrZSwgT1NGMS5jbWFrZTogYWRkIGFuc2kgZmxhZ3MKCjIwMDItMTEtMDUgMTQ6MzMgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBJUklYLmNtYWtlLCBJUklYNjQuY21ha2UsIFN1bk9TLmNtYWtlOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTExLTA1IDE0OjEwICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQUlYLmNtYWtlLCBCU0RPUy5jbWFrZSwgRGFyd2luLmNtYWtlLCBGcmVlQlNELmNtYWtlLAoJICBIUC1VWC5jbWFrZSwgSVJJWC5jbWFrZSwgTVAtUkFTLmNtYWtlLCBOZXRCU0QuY21ha2UsIE9TRjEuY21ha2UsCgkgIE9wZW5CU0QuY21ha2UsIFJJU0Nvcy5jbWFrZSwgU0NPX1NWLmNtYWtlLCBTSU5JWC5jbWFrZSwKCSAgU3VuT1MuY21ha2UsIFRydWU2NC5jbWFrZSwgVUxUUklYLmNtYWtlLCBVTklYX1NWLmNtYWtlLAoJICBVbml4V2FyZS5jbWFrZSwgWGVuaXguY21ha2U6IEVOSDogYWRkIGFsbCB0aGUgT1MgZmlsZXMKCjIwMDItMTEtMDUgMTM6MzUgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eDogQ2xlYW51cAoKMjAwMi0xMS0wNSAxMTo1MiAgaG9mZm1hbgoKCSogTW9kdWxlcy9MaW51eC5jbWFrZTogYWRkIGxpbnV4IGNvbmZpZyBmaWxlCgoyMDAyLTExLTA1IDExOjMxICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLCBXaW5kb3dzLmNtYWtlOgoJICBhZGQgY2hlY2sgZm9yIHNzdHJlYW0KCjIwMDItMTEtMDUgMTE6MDIgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZUJhY2t3YXJkQ29tcGF0aWJpbGl0eUNYWC5jbWFrZSwKCSAgQ2hlY2tJbmNsdWRlRmlsZS5jeHguaW4sIENoZWNrSW5jbHVkZUZpbGVDWFguY21ha2U6IGFkZCBjaGVjayBmb3IKCSAgc3N0cmVhbQoKMjAwMi0xMS0wNSAxMDo0NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogZml4IGJhY2t3YXJkcyBjb21wYXQgZW5hYmxlIGFuZAoJICByZW1vdmUgZnVsbCBwYXRoIHRhcmdldAoKMjAwMi0xMS0wNSAwOTozOCAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBNb3JlIG1hYyBmaXhlcwoKMjAwMi0xMS0wNSAwODo1MiAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzRmlsZVBhdGhXaWRnZXQuY3h4LAoJICBjbUN1cnNlc0ZpbGVQYXRoV2lkZ2V0LmgsIGNtQ3Vyc2VzUGF0aFdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogUmVwYXJlbnQgZmlsZSBwYXRoIHdpZGdldCwgYWRkIHRhYgoJICBjb21wbGV0aW9uIHN1cHBvcnQgdG8gcGF0aCBhbmYgZmlsZSBwYXRoIHdpZGdldAoKMjAwMi0xMS0wNSAwODo1MSAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogQWRkIGEgc2ltcGxlCgkgIGdsb2JiaW5nIG9mIGZpbGVzIGFuZCBkaXJlY3RvcmllcwoKMjAwMi0xMS0wNSAwNzoxNSAgYW5keQoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlLCBUZXN0cy9YMTEvQ01ha2VMaXN0cy50eHQ6IFRyeSB0byBmaXgKCSAgRmluZFgxMQoKMjAwMi0xMS0wNSAwNzowNiAgYW5keQoKCSogVGVzdHMvWDExL1gxMS5jOiBTaW1wbGlmeQoKMjAwMi0xMS0wNCAxOTo0NSAga2luZwoKCSogU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YKCSAgLS1nY2N4bWwtY29tcGlsZXIgYXJndW1lbnQgdG8gR0NDLVhNTCBmb3IgbXN2YzYsIG1zdmM3LCBhbmQgbm1ha2UKCSAgbWFrZWZpbGVzIGdlbmVyYXRvcnMuCgoyMDAyLTExLTA0IDE3OjM3ICBhbmR5CgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNQYXRoV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNQYXRoV2lkZ2V0LmgsIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNTdHJpbmdXaWRnZXQuaDogU3RhcnQgd29ya2luZyBvbiBhZGRpbmcgdGFiIHN1cHBvcnQKCjIwMDItMTEtMDQgMTY6NTkgIGFuZHkKCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEZpeCB3aW5kb3dzIHByb2Nlc3MgZXhlY3V0aW9uCgkgIHNvIHRoYXQgaXQgcG9wcyB1cCB0aGUgd2luZG93cwoKMjAwMi0xMS0wNCAxNjoyNiAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUNDb21waWxlci5jbWFrZS5pbiwKCSAgTW9kdWxlcy9DTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgTW9kdWxlcy9DTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIE1vZHVsZXMvV2luZG93cy1jbC5jbWFrZSwgTW9kdWxlcy9XaW5kb3dzLmNtYWtlLCBTb3VyY2UvVE9ETywKCSAgU291cmNlL2NtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IG5tYWtlCgkgIHBhc3NpbmcgdGVzdHMKCjIwMDItMTEtMDQgMTU6MjEgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dDogR2V0IHRoZSBNYWMgcmVzb3VyY2VzIGRvbmUKCjIwMDItMTEtMDQgMTU6MDEgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dDogTWlub3IgZml4ZXMKCjIwMDItMTEtMDQgMTU6MDEgIGFuZHkKCgkqIFNvdXJjZS9jbVdyaXRlRmlsZUNvbW1hbmQuY3h4OiBNYWtlIGRpcmVjdG9yeSBpZiBpdCBkb2VzIG5vdAoJICBleGlzdCB5ZXQKCjIwMDItMTEtMDQgMTQ6NTAgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy9DTWFrZUxpc3RzLnR4dCwgVGVtcGxhdGVzL0FwcGxlSW5mby5wbGlzdDoKCSAgQXR0ZW1wdCB0byBhdXRvbWF0ZSBhcHBsZSBndWkgZ2VuZXJhdGlvbgoKMjAwMi0xMS0wNCAxMzowOSAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL2NtV1hNYWluRnJhbWUuY3h4OiBUcnkgdG8gZml4IGdlbmVyYXRvciBwcm9ibGVtcwoJICBvbiBNYWMKCjIwMDItMTEtMDQgMTE6NTQgIGFuZHkKCgkqIFRlc3RzL1gxMS9YMTEuYzogRml4IHRlc3QKCjIwMDItMTEtMDQgMTA6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9UT0RPOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTExLTA0IDEwOjExICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VQcmludFN5c3RlbUluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9XaW5kb3dzLWNsLmNtYWtlLCBNb2R1bGVzL1dpbmRvd3MuY21ha2UsCgkgIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgbm1ha2UgYWxtb3N0IHdvcmtpbmcKCjIwMDItMTEtMDMgMTg6MTggIGFuZHkKCgkqIFRlc3RzL1gxMS9YMTEuYzogVHJ5IHRvIG1ha2UgdGVzdCB0byBydW4KCjIwMDItMTEtMDEgMjM6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwLnJjLCBDTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgQ01ha2VTZXR1cERpYWxvZy5oLCByZXNvdXJjZS5oOiBFTkg6IGJldHRlciByZXNpemUKCjIwMDItMTEtMDEgMjI6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogbWFrZSBxdCBzdHVmZiBhZHZhbmNlZAoKMjAwMi0xMC0zMSAxMDozNiAgYW5keQoKCSogVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogUmV2ZXJ0IFgxMSBzdHVmZiB1bnRpbAoJICBvdGhlciBzdGVwcyBhcmUgZG9uZQoKMjAwMi0xMC0yOSAxNTo1OCAgYW5keQoKCSogVGVzdHMvWDExL1gxMS5jOiBQcmludCBtZXNzYWdlIG9uIHN5c3RlbSB3aXRob3V0IFgxMQoKMjAwMi0xMC0yOSAxNTo1NCAgYW5keQoKCSogVGVzdHMvWDExLzogQ01ha2VMaXN0cy50eHQsIFgxMS5jOiBBZGQgV2luZG93cyBjb2RlCgoyMDAyLTEwLTI5IDE1OjQ3ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRYMTEuY21ha2U6IE5vdyBpdCBzaG91bGQgd29yawoKMjAwMi0xMC0yOSAxNTo0NiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBUZXN0cy9YMTEvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1gxMS9YMTEuYzoKCSAgQWRkIHRlc3QgZm9yIFgxMQoKMjAwMi0xMC0yOSAxNTowMyAgaG9mZm1hbgoKCSogTW9kdWxlcy9DTWFrZUNYWENvbXBpbGVyLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIE1vZHVsZXMvQ01ha2VQcmludFN5c3RlbUluZm9ybWF0aW9uLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtLmNtYWtlLmluLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgTW9kdWxlcy9DWUdXSU4uY21ha2UsIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBUZXN0cy9UZXN0aW5nL0NNYWtlTGlzdHMudHh0OiBicmFuY2gKCSAgY2hlY2tpbiBvZiB3b3JraW5nIGN5Z3dpbiBidWlsZCBmb3IgZ2VuZXJhdG9yIGNsZWFudXAgYW5kIHJlbW92YWwKCSAgb2YgY29uZmlndXJlCgoyMDAyLTEwLTI5IDEzOjM0ICBhbmR5CgoJKiBUZW1wbGF0ZXMvQ0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBSZW1vdmUgWDExIHN0dWZmCgoyMDAyLTEwLTI5IDEzOjM0ICBhbmR5CgoJKiBNb2R1bGVzLzogQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwgQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZSwKCSAgQ2hlY2tMaWJyYXJ5RXhpc3RzLmNtYWtlLCBDaGVja1NpemVPZi5jbWFrZSwgVGVzdEJpZ0VuZGlhbi5jbWFrZToKCSAgQWRkIGFwcGVuZCB0byB3cml0ZV9maWxlCgoyMDAyLTEwLTI5IDEzOjMyICBhbmR5CgoJKiBTb3VyY2UvOiBjbVdyaXRlRmlsZUNvbW1hbmQuY3h4LCBjbVdyaXRlRmlsZUNvbW1hbmQuaDogQWRkIGZsYWcKCSAgdG8gV1JJVEVfRklMRSB0byBhcHBlbmQKCjIwMDItMTAtMjkgMTM6MzAgIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlOiBEbyB0aGlzIHRoZSByaWdodCB3YXkKCjIwMDItMTAtMjkgMTM6MzAgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFgxMS5jbWFrZTogVGhpcyBzaG91bGQgc3Vic3RpdHV0ZSBjb25maWd1cmUgcGFydCB0aGF0CgkgIGZpbmRzIFgxMQoKMjAwMi0xMC0yOCAxMDoyOSAga2luZwoKCSogU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YKCSAgLS1nY2N4bWwtY3h4ZmxhZ3Mgb3B0aW9uIHRvIGNvbXBsZW1lbnQgLS1nY2N4bWwtY29tcGlsZXIuCgoyMDAyLTEwLTI1IDE2OjQ3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlRGV0ZXJtaW5lQ0NvbXBpbGVyLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZSwKCSAgU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTEwLTI1IDE2OjEzICBob2ZmbWFuCgoJKiBNb2R1bGVzL0NNYWtlQ1hYQ29tcGlsZXIuY21ha2UuaW46IFtubyBsb2cgbWVzc2FnZV0KCjIwMDItMTAtMjUgMTU6NDYgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2N5Z3dpbi5zaDogRU5IOiBVcGRhdGVkIGZvciBjbWFrZSAxLjQuNgoJICBwYWNrYWdlLiAgQWRkZWQgYXV0b21hdGljIGNvbnZlcnNpb24gb2Ygc2V0dXAuaGludCB0byB1bml4CgkgIG5ld2xpbmVzLgoKMjAwMi0xMC0yNSAxNDozNCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLCBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZToKCSAgW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0xMC0yNSAxNDoyNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICB0ZXN0IG9uIHVuaXgKCjIwMDItMTAtMjUgMTQ6MTMgIGtpbmcKCgkqIFV0aWxpdGllcy86IGNtYWtlX3JlbGVhc2VfY29uZmlnX2RhcndpbiwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfaHB1eCwgY21ha2VfcmVsZWFzZV9jb25maWdfaXJpeCwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfbGludXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX29zZiwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfc3VuLCBjbWFrZV9yZWxlYXNlX2N5Z3dpbi5zaDogRU5IOiBVcGRhdGVkCgkgIGZvciAxLjQuNiByZWxlYXNlLgoKMjAwMi0xMC0yNSAxNDowOCAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlRGVmYXVsdE1ha2VSdWxlVmFyaWFibGVzLmNtYWtlLAoJICBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsIENNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZToKCSAgW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0xMC0yNCAxNTozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogQlVHOiBmaXggc3RhY2sgbGltaXQgc2l6ZSBvbiBtYWMgT1NYCgoyMDAyLTEwLTI0IDEzOjM5ICBhbmR5CgoJKiBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Qy5jbWFrZTogQWRkIGNoZWNrIGZvciBiaWcKCSAgZW5kaWFuIGluIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgc2NyaXB0cwoKMjAwMi0xMC0yNCAxMTo1OCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogdXBkYXRlZCBwYXRjaCBsZXZlbCB0byA2CgoyMDAyLTEwLTI0IDExOjQ4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBmaXggc3VwcG9ydCBmb3IgV2luMzIKCSAgZXhlY3MKCjIwMDItMTAtMjQgMTA6NTggIGFuZHkKCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuY3h4OiBTdWJkaXJzIHJlcG9ydHMgYW4gZXJyb3IgaWYgdGhlCgkgIHN1YmRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdHMKCjIwMDItMTAtMjQgMTA6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogVHJ5IHRvIHJlbW92ZSBzb21lIHdhcm5pbmdzCgoyMDAyLTEwLTIzIDE4OjAzICBraW5nCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwgY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5oLAoJICBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oLAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwKCSAgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuY3h4LCBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5oLAoJICBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LCBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuaCwKCSAgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwKCSAgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtQWRkTGlicmFyeUNvbW1hbmQuaCwKCSAgY21BZGRUZXN0Q29tbWFuZC5jeHgsIGNtQWRkVGVzdENvbW1hbmQuaCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtQnVpbGRDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuaCwgY21CdWlsZE5hbWVDb21tYW5kLmN4eCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LAoJICBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmgsIGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ1BsdWdpbkFQSS5oLAoJICBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsIGNtQ29tbWFuZC5oLAoJICBjbUNvbW1hbmRzLmN4eCwgY21Db21tYW5kcy5oLCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLCBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwKCSAgY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBjbUN1c3RvbUNvbW1hbmQuY3h4LCBjbUN1c3RvbUNvbW1hbmQuaCwKCSAgY21EYXRhLmgsIGNtRGlyZWN0b3J5LmN4eCwgY21EaXJlY3RvcnkuaCwKCSAgY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsIGNtRHluYW1pY0xvYWRlci5jeHgsIGNtRHluYW1pY0xvYWRlci5oLAoJICBjbUVsc2VDb21tYW5kLmN4eCwgY21FbHNlQ29tbWFuZC5oLCBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eCwKCSAgY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBjbUVuZEZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21FbmRGb3JFYWNoQ29tbWFuZC5oLCBjbUVuZElmQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmgsCgkgIGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwKCSAgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuaCwKCSAgY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuaCwKCSAgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUZvckVhY2hDb21tYW5kLmN4eCwgY21Gb3JFYWNoQ29tbWFuZC5oLCBjbUZ1bmN0aW9uQmxvY2tlci5oLAoJICBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uaCwgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5oLAoJICBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgY21HbG9iYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5oLAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuaCwgY21JVEtXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIGNtSVRLV3JhcFRjbENvbW1hbmQuaCwgY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oLAoJICBjbUluY2x1ZGVDb21tYW5kLmN4eCwgY21JbmNsdWRlQ29tbWFuZC5oLAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmN4eCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5oLCBjbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4LAoJICBjbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuaCwgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwgY21MaXN0RmlsZUNhY2hlLmN4eCwgY21MaXN0RmlsZUNhY2hlLmgsCgkgIGNtTG9hZENhY2hlQ29tbWFuZC5jeHgsIGNtTG9hZENhY2hlQ29tbWFuZC5oLAoJICBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHgsIGNtTG9hZENvbW1hbmRDb21tYW5kLmgsCgkgIGNtTG9jYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsIGNtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5oLAoJICBjbUxvY2FsR2VuZXJhdG9yLmN4eCwgY21Mb2NhbEdlbmVyYXRvci5oLAoJICBjbUxvY2FsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuaCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLCBjbU1hY3JvQ29tbWFuZC5jeHgsCgkgIGNtTWFjcm9Db21tYW5kLmgsIGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZURlcGVuZC5oLAoJICBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsCgkgIGNtTWFya0FzQWR2YW5jZWRDb21tYW5kLmgsIGNtTWVzc2FnZUNvbW1hbmQuY3h4LAoJICBjbU1lc3NhZ2VDb21tYW5kLmgsIGNtT3B0aW9uQ29tbWFuZC5jeHgsIGNtT3B0aW9uQ29tbWFuZC5oLAoJICBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oLAoJICBjbVByb2plY3RDb21tYW5kLmN4eCwgY21Qcm9qZWN0Q29tbWFuZC5oLCBjbVFUV3JhcENQUENvbW1hbmQuY3h4LAoJICBjbVFUV3JhcENQUENvbW1hbmQuaCwgY21RVFdyYXBVSUNvbW1hbmQuY3h4LCBjbVFUV3JhcFVJQ29tbWFuZC5oLAoJICBjbVJlZ3VsYXJFeHByZXNzaW9uLmN4eCwgY21SZWd1bGFyRXhwcmVzc2lvbi5oLAoJICBjbVJlbW92ZUNvbW1hbmQuY3h4LCBjbVJlbW92ZUNvbW1hbmQuaCwKCSAgY21TZXBhcmF0ZUFyZ3VtZW50c0NvbW1hbmQuY3h4LCBjbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5oLAoJICBjbVNldENvbW1hbmQuY3h4LCBjbVNldENvbW1hbmQuaCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsIGNtU2l0ZU5hbWVDb21tYW5kLmN4eCwKCSAgY21TaXRlTmFtZUNvbW1hbmQuaCwgY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuaCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LCBjbVNvdXJjZUZpbGVzUmVtb3ZlQ29tbWFuZC5oLAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oLCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHgsCgkgIGNtU291cmNlR3JvdXBDb21tYW5kLmgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLAoJICBjbVN1YmRpckNvbW1hbmQuY3h4LCBjbVN1YmRpckNvbW1hbmQuaCwKCSAgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5jeHgsIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oLAoJICBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgY21UcnlDb21waWxlQ29tbWFuZC5oLAoJICBjbVRyeVJ1bkNvbW1hbmQuY3h4LCBjbVRyeVJ1bkNvbW1hbmQuaCwKCSAgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LCBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5oLAoJICBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwgY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oLAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVZUS1dyYXBUY2xDb21tYW5kLmgsCgkgIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LCBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmgsCgkgIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwgY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uaCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuaCwKCSAgY21Xcml0ZUZpbGVDb21tYW5kLmN4eCwgY21Xcml0ZUZpbGVDb21tYW5kLmgsIGNtYWtlLmN4eCwgY21ha2UuaCwKCSAgY21ha2VtYWluLmN4eCwgY21ha2V0ZXN0LmN4eCwgY21ha2V3aXphcmQuY3h4LCBjbWFrZXdpemFyZC5oLAoJICBjbXc5eGNvbS5jeHgsIGN0ZXN0LmN4eCwgY3Rlc3QuaCwgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0Jvb2xXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNCb29sV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0R1bW15V2lkZ2V0LmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRHVtbXlXaWRnZXQuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRmlsZVBhdGhXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNGaWxlUGF0aFdpZGdldC5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNGb3JtLmN4eCwgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRm9ybS5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNMYWJlbFdpZGdldC5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xhYmVsV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1BhdGhXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1dpZGdldC5jeHgsIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1dpZGdldC5oLAoJICBNRkNEaWFsb2cvQ01ha2VDb21tYW5kTGluZUluZm8uaCwgTUZDRGlhbG9nL0NNYWtlU2V0dXAuaCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuaCwgTUZDRGlhbG9nL01ha2VIZWxwLmgsCgkgIE1GQ0RpYWxvZy9QYXRoRGlhbG9nLmgsIE1GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuaCwKCSAgTUZDRGlhbG9nL1N0ZEFmeC5oLCBXWERpYWxvZy9jbVdYQ2FjaGVQcm9wZXJ0eS5jeHgsCgkgIFdYRGlhbG9nL2NtV1hDYWNoZVByb3BlcnR5LmgsIFdYRGlhbG9nL2NtV1hDb21tYW5kTGluZUluZm8uY3h4LAoJICBXWERpYWxvZy9jbVdYQ29tbWFuZExpbmVJbmZvLmgsIFdYRGlhbG9nL2NtV1hNYWluRnJhbWUuY3h4LAoJICBXWERpYWxvZy9jbVdYTWFpbkZyYW1lLmgsIFdYRGlhbG9nL3d4Q01ha2VTZXR1cC5jeHg6IEVOSDogQWRkZWQKCSAgcmVmZXJlbmNlIHRvIENvcHlyaWdodC50eHQuICBSZW1vdmVkIG9sZCByZWZlcmVuY2UgdG8gSVRLCgkgIGNvcHlyaWdodC4gIENoYW5nZWQgcHJvZ3JhbSBuYW1lIHRvIENNYWtlIGluc3RlYWQgb2YgSW5zaWdodCBpbgoJICBzb3VyY2UgZmlsZSBoZWFkZXIuICBBbHNvIHJlbW92ZWQgdGFicy4KCjIwMDItMTAtMjMgMTY6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaDogRU5IOgoJICBpZiBvdXRwdXQgdmFyaWFibGUgdHVybiB2ZXJib3NlIG9mZgoKMjAwMi0xMC0yMyAxNjo1MyAgaG9mZm1hbgoKCSogTW9kdWxlcy86IENNYWtlQ0NvbXBpbGVyLmNtYWtlLmluLAoJICBDTWFrZURlZmF1bHRNYWtlUnVsZVZhcmlhYmxlcy5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lU3lzdGVtLmNtYWtlLCBDTWFrZVByaW50U3lzdGVtSW5mb3JtYXRpb24uY21ha2UsCgkgIENNYWtlU3lzdGVtLmNtYWtlLmluLCBDTWFrZVN5c3RlbVNwZWNpZmljSW5mb3JtYXRpb24uY21ha2UsCgkgIENZR1dJTi5jbWFrZTogY2xvc2VyIHRvIHJlbW92aW5nIGF1dG9jb25mCgoyMDAyLTEwLTIzIDE2OjQzICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vZnJtX2RyaXZlci5jOiBFUlI6IEFub3RoZXIgYXR0ZW1wdCB0bwoJICByZW1vdmUgd2FybmluZ3MgZnJvbSBtaXNzaW5nIHByb3RvdHlwZXMuCgoyMDAyLTEwLTIyIDE4OjE3ICBob2ZmbWFuCgoJKiBNb2R1bGVzLzogQ01ha2VEZXRlcm1pbmVDQ29tcGlsZXIuY21ha2UsCgkgIENNYWtlRGV0ZXJtaW5lQ1hYQ29tcGlsZXIuY21ha2UsIENNYWtlVGVzdEdOVS5jLCBXaW5kb3dzLmNtYWtlOgoJICB0ZXN0IGZvciBnbnUgY29tcGlsZXIKCjIwMDItMTAtMjIgMTU6MDQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VTeXN0ZW1TcGVjaWZpY0luZm9ybWF0aW9uLmNtYWtlLCBDWUdXSU4uY21ha2U6IFtubyBsb2cKCSAgbWVzc2FnZV0KCjIwMDItMTAtMjIgMTA6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBtYWtlIHN1cmUgd2luMzIKCSAgZXhlcyBhcmUgd2luMzIKCjIwMDItMTAtMjIgMTA6MzQgIGhvZmZtYW4KCgkqIE1vZHVsZXMvOiBDTWFrZURldGVybWluZUNDb21waWxlci5jbWFrZSwKCSAgQ01ha2VEZXRlcm1pbmVDWFhDb21waWxlci5jbWFrZSwgQ01ha2VEZXRlcm1pbmVTeXN0ZW0uY21ha2UsCgkgIENNYWtlU3lzdGVtU3BlY2lmaWNJbmZvcm1hdGlvbi5jbWFrZTogbmV3IGNtYWtlIGJhc2VkCgkgIGNvbmZpZ3VyYXRpb24KCjIwMDItMTAtMTggMTU6NTEgIGFuZHkKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IFdoZW4gaW4gdmVyYm9zZSBtb2RlIHByaW50IHRlc3QgY29tbWFuZAoKMjAwMi0xMC0xOCAxMjowOCAgYW5keQoKCSogU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6IEltcHJvdmUgY29tbWVudAoKMjAwMi0xMC0xNyAxMDo1MCAgYW5keQoKCSogU291cmNlLzogQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwgY21EaXJlY3RvcnkuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHg6IFJlbmFtZSB2YXJpYWJsZXMgdG8gcmVtb3ZlIHdhcm5pbmdzCgoyMDAyLTEwLTE2IDEzOjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IHVwZGF0ZSB0byBoYW5kbGUgdGNsIDg0CgoyMDAyLTEwLTE2IDExOjQ4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmN4eDogZml4IGNvbXBpbGVyCgkgIHdhcm5pbmdzCgoyMDAyLTEwLTE2IDExOjQxICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vZnR5X3JlZ2V4LmM6IGZpeCBjb21waWxlciB3YXJuaW5ncwoKMjAwMi0xMC0xNiAxMTozNyAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtLzogZnR5X2FsbnVtLmMsIGZ0eV9hbHBoYS5jLCBmdHlfaW50LmMsCgkgIGZ0eV9pcHY0LmMsIGZ0eV9udW0uYzogZml4IGNvbXBpbGVyIHdhcm5pbmdzCgoyMDAyLTEwLTE2IDExOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNNYWluRm9ybS5jeHgsIGNjbWFrZS5jeHg6IGZpeGVkIGEKCSAgd2FybmluZwoKMjAwMi0xMC0xNiAxMToyNCAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHg6IGZpeGVkIGEgd2FybmluZwoKMjAwMi0xMC0xNiAxMToyMCAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzRm9ybS5oLCBjbUN1cnNlc0xhYmVsV2lkZ2V0LmN4eDoKCSAgZml4ZWQgYSB3YXJuaW5nCgoyMDAyLTEwLTE2IDExOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNCb29sV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNEdW1teVdpZGdldC5jeHg6IGZpeGVkIGEgd2FybmluZwoKMjAwMi0xMC0xNiAxMDo1MyAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZybV9kcml2ZXIuYzogRU5IOiBBbm90aGVyIGF0dGVtcHQgdG8KCSAgZml4IE9TRiB3YXJuaW5ncy4gIEFsc28gcmVtb3ZlZCBUQUJTLgoKMjAwMi0xMC0xNiAwODo0OSAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZQoKMjAwMi0xMC0xNSAxNDozMyAgbWFydGluawoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogYmV0dGVyIHdhcm5pbmcgbWVzc2FnZQoKMjAwMi0xMC0xNSAxMTo0NSAgbWFydGluawoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogYmV0dGVyIHdhcm5pbmcgbWVzc2FnZQoKMjAwMi0xMC0xNSAwNzoyMCAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogUmVtb3ZlIHN0ZDo6aGV4IGFzIGl0IGRvZXMgbm90IHNlZW1zIHRvIHdvcmsgb24KCSAgU0dJLCBhdHRlbXB0IHRvIGZpeCBmdGltZSBwcm9ibGVtIG9uIGJvcmxhbmQKCjIwMDItMTAtMTQgMTg6MzMgIGFuZHkKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IEZpeCBuYW1lc3BhY2UsIHR5cG8sIGFuZCBtYWtlIGZ0aW1lIHdvcmsgb24KCSAgd2luZG93cwoKMjAwMi0xMC0xNCAxNToxMSAgYW5keQoKCSogU291cmNlLzogY3Rlc3QuY3h4LCBjdGVzdC5oOiBFdmVuIG1vcmUgY2xlYW51cHMsIGZpeCB0aW1lIG9uCgkgIGNlcnRhaW4gcGxhdGZvcm1zIHN1Y2ggYXMgd2luZG93cywgY3lnd2luLCBhbmQgbGludXguIEhvcGVmdWxseQoJICB3ZSBjYW4gYWRkIGVudHJpZXMgZm9yIG90aGVyIHBsYXRmb3JtcyB1bnRpbCB0cnlfY29tcGlsZSB3b3Jrcy4KCSAgQWxzbyBlc2NhcGUgY2VydGFpbiBjaGFyYWN0ZXJzIGZvciB4bWwuCgoyMDAyLTEwLTE0IDA5OjMwICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBNb3JlIGNsZWFudXBzLCBmaXggcHJleG9udGV4dCBhbmQgbG9nIG51bWJlcgoKMjAwMi0xMC0xMyAyMzowNyAgYW5keQoKCSogU291cmNlLzogY3Rlc3QuY3h4LCBjdGVzdC5oOiBBZGQgTGFzdEJ1aWxkLmxvZyBmaWxlLCBmaXggc29tZQoJICBtaW5vciBwcm9ibGVtcyBpbiBvdXRwdXQsIG1vZGlmeSBvdXRwdXQgYSBiaXQuLi4KCjIwMDItMTAtMTEgMTM6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4OiBjb21waWxlciB3YXJuaW5nCgoyMDAyLTEwLTExIDExOjIyICBpc2NvdHQKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogQWRkIG9wdGlvbiB0byBjb250cm9sIG51bWJlciBvZiBlcnJvcnMgc2VudAoJICB0byBkYXNoYmFvcmQKCjIwMDItMTAtMTEgMTA6MTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkZWQgU3BsaXQKCSAgbWV0aG9kIHRvIGNtU3lzdGVtVG9vbHMgdG8gc3BsaXQgYSBzdHJpbmcgaW50byBsaW5lcyBvbiBpdHMKCSAgbmV3bGluZXMuCgoyMDAyLTEwLTExIDEwOjE0ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRDQUJMRS5jbWFrZTogQlVHOiBTaG91bGQgbm90IGxvYWQKCSAgQ01BS0VfSU5TVEFMTF9QUkVGSVggZnJvbSB0aGUgY2FjaGUuCgoyMDAyLTEwLTExIDA4OjM2ICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVSUjogaXN0cnN0cmVhbSBhbmQgaXN0cmluZ3N0cmVhbQoJICBuZWVkIHRvIGJlIHB1bGxlZCBpbnRvIG5hbWVzcGFjZSBzdGQgb24gdGhlIFNHSS4KCjIwMDItMTAtMTAgMTE6MDggIGFuZHkKCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IEZpeCBuZXR3b3JrIGJ1aWxkCgoyMDAyLTEwLTEwIDEwOjQ1ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kSmF2YS5jbWFrZSwgVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIFRlbXBsYXRlcy9DTWFrZURvdE5ldFN5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IEVOSDogbWFyayBzb21lIHZhcnMgYXMKCSAgYWR2YW5jZWQgKGFuZCByZXNvcnQgdGhlIGxpc3QpCgoyMDAyLTEwLTEwIDEwOjQzICBraW5nCgoJKiBTb3VyY2UvOiBjbUNNYWtlTWluaW11bVJlcXVpcmVkLmN4eCwKCSAgY21Mb2NhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLAoJICBjbVN5c3RlbVRvb2xzLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsIGNtYWtlLmN4eCwKCSAgY3Rlc3QuY3h4OiBFTkg6IFJlbmFtZWQgY21TdHJpbmdTdHJlYW0gdG8gY21PU3RyaW5nU3RyZWFtIGFuZAoJICBhZGRlZCBjbUlTdHJpbmdTdHJlYW0uICBSZW1vdmVkIGNtSW5wdXRTdHJpbmdTdHJlYW0uCgoyMDAyLTEwLTEwIDA5OjQxICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwgY21TdGFuZGFyZEluY2x1ZGVzLmg6IFJlbW92ZQoJICBjb21waWxlIGVycm9yIGFuZCByZW1vdmUgc29tZSB3YXJuaW5ncwoKMjAwMi0xMC0xMCAwOTowMiAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfY29uZmlnX29zZjogRU5IOiBVcGRhdGVkIGZvciBhY3R1YWwKCSAgYnVpbGQuCgoyMDAyLTEwLTEwIDA4OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eDogZml4ZWQgc29tZSBjb21waWxlciB3YXJuaW5ncwoKMjAwMi0xMC0xMCAwODoyMyAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogUmVtb3ZlIHdhcm5pbmcKCjIwMDItMTAtMTAgMDg6MTEgIGFuZHkKCgkqIFNvdXJjZS86IGNtU2V0Q29tbWFuZC5jeHgsIFdYRGlhbG9nL2NtV1hNYWluRnJhbWUuY3h4OiBSZW1vdmUKCSAgd2FybmluZwoKMjAwMi0xMC0xMCAwODoxMSAgYW5keQoKCSogU291cmNlLzogY21TdGFuZGFyZEluY2x1ZGVzLmgsIGN0ZXN0LmN4eDogVHJ5IHRvIHVzZSBwbGF0Zm9ybQoJICBpbmRlcGVuZGVudCBpbnB1dCBzdHJpbmcgc3RyZWFtCgoyMDAyLTEwLTA5IDE3OjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUR5bmFtaWNMb2FkZXIuY3h4LCBjbWFrZXRlc3QuY3h4OiBSZW1vdmUgbWVtb3J5IGxlYWsKCSAgY2F1c2VkIGJ5IGNtRHluYW1pY0xvYWRlciBub3QgYmVpbmcgZGVsZXRlZCBwcm9wZXJseQoKMjAwMi0xMC0wOSAxNjoyNiAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nLzogY21XWE1haW5GcmFtZS5jeHgsIGNtV1hNYWluRnJhbWUuaDogVHJ5IHRvIGFkZAoJICBlbnRlciBzdXBwb3J0CgoyMDAyLTEwLTA5IDE1OjU0ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IGFkZGVkIHRlc3Qgb2YgU0VUCgkgIENBQ0hFIEZPUkNFCgoyMDAyLTEwLTA5IDE1OjQ4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNldENvbW1hbmQuY3h4LCBjbVNldENvbW1hbmQuaDogYWRkZWQgRk9SQ0Ugb3B0aW9uCgoyMDAyLTEwLTA5IDE1OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IGZpeCBmb3IgT1NGCgoyMDAyLTEwLTA5IDE1OjI0ICBiYXJyZQoKCSogU291cmNlL2NtR2xvYmFsR2VuZXJhdG9yLmN4eDogRU5IOiB1cGRhdGUgdGhlIHByb2dyZXNzIHdoZW4KCSAgZ2VuZXJhdGluZyBpcyAiZG9uZSIuCgoyMDAyLTEwLTA5IDEzOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5oOiBjaGFuZ2VkIG5hbWUKCjIwMDItMTAtMDkgMTM6NDcgIGFuZHkKCgkqIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZTogQWRkIHNvbWUgc2VhcmNoIHBhdGhzCgoyMDAyLTEwLTA5IDEzOjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBhZGRlZCBDb2RlIFdhcnJpb3IgZGV2CgoyMDAyLTEwLTA5IDEzOjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBNYWtlZmlsZS5pbiwgQ01ha2VMaXN0cy50eHQ6IGFkZGVkIGJ1aWxkIGZvciBDb2RlCgkgIFdhcnJpb3IKCjIwMDItMTAtMDkgMTM6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuY3h4LCBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuaDoKCSAgc29tZSB1cGRhdGVzCgoyMDAyLTEwLTA4IDIyOjU0ICBhbmR5CgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIGN0ZXN0Lmg6IFJlb3JnYW5pemF0aW9uLCBjbGVhbnVwIGFuZCBzb21lCgkgIGltcHJvdmVtZW50IGluIGRhcnQgZW11bGF0aW9uCgoyMDAyLTEwLTA4IDIyOjAwICBhbmR5CgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIGN0ZXN0Lmg6IEFkZCBwYXJzaW5nIG9mIHdhcm5pbmdzIGFuZCBlcnJvcnMKCjIwMDItMTAtMDggMjA6MDIgIGFuZHkKCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY3Rlc3QuaDogQWRkIGNvbmZpZ3VyZSBvcHRpb24gYW5kIGZpeAoJICBwb3RlbnRpYWwgYnVnIGluIG90aGVyIHRhcmdldHMuIE5vdyB0aGUgcnVuIGNvbW1hbmQgaXMgYWN0dWFsbHkKCSAgcnVuIHdpdGggZGlyZWN0b3J5LCBzbyBldmVudHVhbGx5IHdlIHNob3VsZCBiZSBhYmxlIHRvIHJ1biB0aGlzCgkgIGZyb20gYSBzdWJkaXJlY3RvcnkKCjIwMDItMTAtMDggMTU6NTUgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmMsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiBuZXcgcGx1Z2luCgkgIEFQSQoKMjAwMi0xMC0wOCAxNTo1NSAgbWFydGluawoKCSogU291cmNlLzogY21DUGx1Z2luQVBJLmN4eCwgY21DUGx1Z2luQVBJLmgsCgkgIGNtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogc29tZSBtb2RzIHRvIHRoZSBwbHVnaW4gQVBJCgoyMDAyLTEwLTA4IDEwOjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4OiBCVUc6IGdldCBhbGwgdGhlIG91dHB1dAoJICBpbmNsdWRpbmcgdGhlIGxhc3QgY2hhcmFjdGVyCgoyMDAyLTEwLTA3IDE2OjIzICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dDogYWRkZWQgaGVhZGVyIGRlcAoKMjAwMi0xMC0wNyAwOToyMCAgYW5keQoKCSogVGVzdHMvQ09ubHkvOiBmb28uYywgZm9vLmg6IEZpeCBwcm9ibGVtIG9uIEhQCgoyMDAyLTEwLTA3IDA5OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBtaW5vciBmaXggdG8gYWxsb3cgaWYgd2l0aCBubyBhcmd1bWVudHMKCjIwMDItMTAtMDcgMDg6MjMgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2JhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4OiBTdXBwcmVzcyBvdXRwdXQgb2YKCSAgdHJ5Y29tcGlsZQoKMjAwMi0xMC0wNiAyMToyNSAgYW5keQoKCSogU291cmNlL2N0ZXN0LmN4eDogRml4IHVwZGF0ZSBzbyB0aGF0IGl0IGFjdHVhbGx5IHVwZGF0ZXMgdGhlCgkgIHNvdXJjZSBkaXJlY3RvcnksCgoyMDAyLTEwLTA2IDIxOjI0ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEZpeCBmb3IgcnVuIGNvbW1hbmQgb24gd2luZG93cy4gSWYgeW91CgkgIHNwZWNpZnkgY29tbWFuZCBpbiBxdW90ZXMgYnV0IG5vdCBmdWxsIHBhdGgsIGl0IHNob3VsZCBzdGlsbCB3b3JrCgoyMDAyLTEwLTA2IDIwOjQ0ICBhbmR5CgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBBZGQgbWlzc2luZyBuYW1lc3BhY2UKCjIwMDItMTAtMDYgMjA6NDQgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogUmV2ZXJ0IGJhY2suIERvZXMgbm90IHNlZW1zIHRvIHdvcmsgb24KCSAgV2luZG93cwoKMjAwMi0xMC0wNiAyMDozNiAgYW5keQoKCSogU291cmNlLzogY3Rlc3QuY3h4LCBjdGVzdC5oOiBBZGQgc29tZSBtaW5pbWFsIERhcnQgY2FwYWJpbGl0eSB0bwoJICBjdGVzdC4gRm9yIGV4YW1wbGUgbm93IHlvdSBjYW4gYWN0dWFsbHkgdXNlIGN0ZXN0IHRvIGJ1aWxkCgkgIHByb2plY3RzLCBkbyBjdnMgdXBkYXRlIG9uIGFsbCBwbGF0Zm9ybXMuIFRoaXMgaXMgZXNwZWNpYWxseSBjb29sCgkgIGZvciBWaXN1YWwgU3R1ZGlvIHdoZXJlIHlvdSBkbyBub3Qgd2FudCB0byBsb2FkIHRoZSB3aG9sZQoJICBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCBqdXN0IHRvIGJ1aWxkIHlvdXIgcHJvamVjdC4KCjIwMDItMTAtMDYgMTg6NTYgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQ2hlY2sgaWYgZGlyZWN0b3J5IHdhcyBhY3R1YWxseSBjcmVhdGVkCgoyMDAyLTEwLTA2IDE1OjEwICBiYXJyZQoKCSogVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBFTkg6IG5tYWtlIG5vdwoJICB1c2VzIGluY3JlbWVudGFsIGxpbmtpbmcgYXMgTXNkZXYgZG9lcy4gRmFzdGVyIGJ1aWxkIChsaW5raW5nIGEKCSAgc3RhdGljIHZ0ay5leGUgb3IgcGFyYXZpZXcuZXhlIGNvdWxkIHRha2UgbW9yZSB0aGFuIDEwIG1pbnV0ZXMpCgoyMDAyLTEwLTA2IDEyOjEyICBhbmR5CgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4LCBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ09ubHkvY29ubHkuYywgVGVzdHMvQ09ubHkvZm9vLmMsIFRlc3RzL0NPbmx5L2Zvby5oOiBJZiB5b3UKCSAgc3BlY2lmeSBoZWFkZXIgZmlsZSBhcyBzb3VyY2UsIGl0IHNob3VsZCBzdGlsbCB1c2UgQyBjb21waWxlciBhbmQKCSAgbm90IENYWC4gQWxzbyBmaXggQ09ubHkgdGVzdCBzbyB0aGF0IGl0IG1ha2Ugc3VyZSB0aGF0IHRoaXMgc3RpbGwKCSAgd29ya3MuLi4KCjIwMDItMTAtMDUgMTA6MjQgIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5oOiBGaXgKCSAgYm9ybGFuZCBidWlsZC4gQm9ybGFuZCBSdW4gY29tbWFuZCBzaG91bGQgYmUgc3RhdGljLCBzaW5jZSBpdCBpcwoJICBjYWxsZWQgd2l0aCBubyBvYmplY3QuLi4KCjIwMDItMTAtMDQgMTg6MTYgIGFuZHkKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBjbVJlZ3VsYXJFeHByZXNzaW9uLmgsIGNtU291cmNlR3JvdXBDb21tYW5kLmN4eDogVHJ5IHRvIGltcHJvdmUKCSAgc291cmNlIGdyb3VwIGludGVyZmFjZQoKMjAwMi0xMC0wNCAxNDowMSAgYW5keQoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogUmVtb3ZlIHRhYnMKCjIwMDItMTAtMDQgMTI6NTYgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBGSVg6IHJlLWVuYWJsZSB0aGUgT0sKCSAgYnV0dG9uIGluIFJ1bkNtYWtlKCkgd2hlbiBldmVyeXRoaW5nIGlzIGRvbmUuCgoyMDAyLTEwLTA0IDEyOjMwICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBGaXggcmVhZGluZyBvZiBhZHZhbmNlZCB2YWx1ZXMgZnJvbQoJICBDTWFrZUNhY2hlCgoyMDAyLTEwLTA0IDExOjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUxvY2FsQ29kZVdhcnJpb3JHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHg6IHVwZGF0ZXMKCjIwMDItMTAtMDQgMTE6MzMgIGJhcnJlCgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IG15IG9waW5pb24gaXMgdGhhdCBpdCBzaG91bGQgYmUgQURWQU5DRUQuCgkgIEZldyBwZW9wbGUgYnVpbGQgdGhlIGRvYy4KCjIwMDItMTAtMDQgMTA6NDcgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQWRkIG1pc3NpbmcgYXJndW1lbnQKCjIwMDItMTAtMDQgMTA6MzggIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwgY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uaDogQ2xlYW51cAoJICBSdW5DT21tYW5kIGNvZGUgYW5kIG1vdmUgYm9ybGFuZCBvbmUgdG8gdnRrV2luMzJQcm9jZXNzRXhlY3V0aW9uLAoJICBzbyB0aGF0IGl0IGlzIGFsbCBpbiBvbmUgcGxhY2UuLi4gQWRkIHRpbWVvdXQgb3B0aW9uIHdoaWhjIGRvZXMKCSAgbm90IHdvcmsgeWV0LCBidXQgaXQgc2hvdWxkIG5vdCBwcm9kdWNlIHdhcm5pbmcgYW55IG1vcmUKCjIwMDItMTAtMDQgMDg6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogYWx3YXlzIHNldCBQUk9KRUNUX1NPVVJDRV9ESVIgZXRjCgoyMDAyLTEwLTAzIDE2OjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eDogc29tZSBmaXhlcwoKMjAwMi0xMC0wMyAxNToxNCAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxDb2RlV2FycmlvckdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsQ29kZVdhcnJpb3JHZW5lcmF0b3IuaCwgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbENvZGVXYXJyaW9yR2VuZXJhdG9yLmg6IHVuZGVyIGRldmVsb3BtZW50CgoyMDAyLTEwLTAyIDE3OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBSZXZlcnQgdG8gZml4IHdpbiA5eAoKMjAwMi0xMC0wMiAxNzozMSAga2luZwoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVN0YW5kYXJkSW5jbHVkZXMuaDoKCSAgRU5IOiBBZGRlZCBleHBsaWNpdCBkZWNsYXJhdGlvbnMgb2Ygc29tZSBDIGZ1bmN0aW9ucyB0aGF0IGFyZQoJICBoYXJkIHRvIGdldCBmcm9tIHN0YW5kYXJkIGhlYWRlcnMgaW4gY29tbwoJICAod3d3LmNvbWVhdWNvbXB1dGluZy5jb20pIHN0cmljdCBtb2RlLgoKMjAwMi0xMC0wMiAxNzoyMyAga2luZwoKCSogU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4OiBCVUc6IE11c3QgcmV0dXJuIGZhbHNlIGFmdGVyIGFuCgkgIGVycm9yIG9mIGluY29ycmVjdCBhcmd1bWVudHMuCgoyMDAyLTEwLTAyIDE3OjIyICBraW5nCgoJKiBTb3VyY2UvOiBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmg6IEJVRzogU1RSTEVTUyBhbmQKCSAgU1RSR1JFQVRFUiBuZWVkIHRvIHRyZWF0IG5vbi1leGlzdGVudCBkZWZpbml0aW9ucyBhcyBzdHJpbmdzLgoKMjAwMi0xMC0wMiAxNzoxNiAgYW5keQoKCSogU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eDogQ2xlYW51cCBhbmQgdHJ5IHRvIHVuaWZ5IHdpdGgKCSAgdGhlIG90aGVyIGNvZGUKCjIwMDItMTAtMDIgMTc6MTQgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQ2xlYW51cAoKMjAwMi0xMC0wMiAxNjo0MiAgaWJhbmV6CgoJKiBNb2R1bGVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGluZyBpbnN0YWxsIG9mIC5pbiBhbmQgLmMKCSAgbW9kdWxlcy4KCjIwMDItMTAtMDIgMTE6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogUmVtb3ZlIHVubmVjZXNzYXJ5CgkgIG5ldyBsaW5lCgoyMDAyLTEwLTAyIDExOjE1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEZpeCBidWcgaW4gYm9ybGFuZCBydW4gY29tbWFuZAoKMjAwMi0xMC0wMiAxMToxNCAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogUHJvZHVjZSBvbmx5IG9uZSBvdXRwdXQKCjIwMDItMTAtMDEgMTg6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbUlUS1dyYXBUY2xDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBzdXBwb3J0IHRvIHBhc3MgdGhlCgkgIGdjY3htbCBwcm9ncmFtIGxvY2F0aW9uIHRvIGNhYmxlIGlmIElUS19HQ0NYTUxfRVhFQ1VUQUJMRSBpcyBzZXQKCSAgb24gbV9NYWtlZmlsZS4KCjIwMDItMTAtMDEgMTU6NTYgIGFuZHkKCgkqIE1vZHVsZXMvOiBUZXN0QmlnRW5kaWFuLmMsIFRlc3RCaWdFbmRpYW4uY21ha2U6IEFkZCB0ZXN0IGZvciBiaWcKCSAgZW5kaWFuCgoyMDAyLTEwLTAxIDEzOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uY3h4OiBGaXggZ3JvdXBpbmcgb2YgYXJndW1lbnRzIG9uCgkgIFdpbmRvd3MgOTgKCjIwMDItMTAtMDEgMTM6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHg6IEZpeCBhIGJ1ZyBpbiBnZW5lcmF0b3IuCgkgIFRoaXMgb25lIGlzIGdvb2Q6IFRoaXMgYnVnIGlzIG9ubHkgcHJlc2VudCBvbiBXaW5kb3dzIDk4LCBidXQKCSAgc2luY2UgUnVuQ29tbWFuZCBkaWQgbm90IHdvcmssIGl0IG5ldmVyIHNob3dlZCBvbiB0aGUKCSAgZGFzaGJvYXJkLi4uIEluIGFueSBjYXNlIGNvbW1hbmRzIGluIFZpc3VhbCBzdHVkaW8gNiBzaG91bGQgYmUgaW4KCSAgd2luZG93cyBzdHlsZSBzbGFzaGVzCgoyMDAyLTEwLTAxIDEzOjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY213OXhjb20uY3h4OiBQdXQgcXVvdGVzIGFyb3VuZCBhcmd1bWVudHMgaWYgdGhleSBoYXZlCgkgIHNwYWNlcyBhbmQgbm8gcXVvdGVzCgoyMDAyLTEwLTAxIDEyOjU5ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBSZW1vdmUgYm9ndXMgZXhlY19wcm9ncmFtCgoyMDAyLTEwLTAxIDEwOjEyICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogcmVtb3ZlZCAiVVNFX0ZMVEtfVkVSU0lPTl8xLjEiIGluCgkgIGZhdm9yIG9mICJGTFRLX1ZFUlNJT05fMS4xIiB0byBhdm9pZAkgICAgY29uZnVzaW9ucy4KCjIwMDItMTAtMDEgMDc6MjggIGFuZHkKCgkqIFNvdXJjZS86IE1ha2VmaWxlLmluLCBjbWFrZW1haW4uY3h4OiBSZW1vdmUgZGVwZW5kZW5jeSB0byBkeW5hbWljCgkgIGxvYWRlciBkdXJpbmcgYm9vdHN0cmFwCgoyMDAyLTA5LTMwIDIyOjI2ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogVmVyc2lvbiAxLjEgaXMgY29uc2lkZXJlZCB0byBiZSB0aGUKCSAgZGVmYXVsdC4KCjIwMDItMDktMzAgMjE6MzQgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEVSUjogRml4ZWQgYmFkIHNlbnRlbmNlCgkgIGluIGVycm9yIG1lc3NhZ2UuCgoyMDAyLTA5LTMwIDE2OjQ2ICBhbmR5CgoJKiBTb3VyY2UvY21ha2UuY3h4OiBGaXggYnVnIGluIGNoZGlyOyBXaG8gZGlkIHRoaXMgYW55d2F5Li4uCgoyMDAyLTA5LTMwIDE2OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBNYWtlZmlsZS5pbiwgY21EeW5hbWljTG9hZGVyLmN4eCwgY21ha2VtYWluLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXAuY3BwOiBCVUc6IGZpeCBsb2FkIGNvbW1hbmQgc3R1ZmYgZm9yIGN5Z3dpbgoJICBhbmQgY2xlYW51cCBhdCBleGl0CgoyMDAyLTA5LTMwIDE1OjA1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uaDogQWRkIHNvbWUgbW9yZSBjb21tZW50cwoKMjAwMi0wOS0zMCAxNTowMCAgbWFydGluawoKCSogU291cmNlL2NtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eDogQ2xlYW51cHMgYW5kIGhvcGVmdWxseSBub3cgaXQKCSAgd29ya3Mgb24gYWxsIHdpbmRvd3MgcGxhdGZvcm1zCgoyMDAyLTA5LTMwIDE0OjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBTZXQgY29tc3BlYyBzdWJzdGl0dXRlIHRoZSByaWdodCB3YXkKCjIwMDItMDktMzAgMTQ6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IFNldCBjb21zcGVjIHN1YnN0aXR1dGUKCjIwMDItMDktMzAgMTM6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbXc5eGNvbS5jeHg6IEFkZCBzcGFjZXMKCjIwMDItMDktMzAgMTI6MjQgIGliYW5legoKCSogTW9kdWxlcy9GaW5kTEFURVguY21ha2U6CUNvbmZpZ3VyYXRpaW9uIGZvciBmaW5kaW5nIExhVGVYCgkgIHJlbGF0ZWQgZXhlY3V0YWJsZXMuCgoyMDAyLTA5LTMwIDExOjQxICBhbmR5CgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtYWtlLmN4eCwKCSAgY213OXhjb20uY3h4OiBBbm90aGVyIGF0dGVtcHQgb24gV2luZG93cyA5OAoKMjAwMi0wOS0zMCAxMTowMCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBBdHRlbXB0IHRvIHVuaWZ5IHRoZSBjb2RlCgoyMDAyLTA5LTMwIDEwOjQ3ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEZpeCBidWcgaW4gcHJpbnRpbmcKCjIwMDItMDktMzAgMDc6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHg6IFJlbW92ZSB3YXJuaW5ncyBhbmQgZml4CgkgIHBvdGVudGlhbCBidWcKCjIwMDItMDktMzAgMDc6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IE1ha2UgYm9ybGFuZAoJICBwYXNzIGFsbCB0aGUgdGVzdHMgb24gWFAgKGFuZCAyMDAwPykKCjIwMDItMDktMjkgMjI6MTAgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogUmVtb3ZlIGRlYnVnCgoyMDAyLTA5LTI5IDIxOjU3ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEl0IGlzIGxhdGUgYW5kIGl0IGF0IGxlYXN0IHNlZW1zIHRvCgkgIHdvcmsgYmV0dGVyIHRoYW4gYmVmb3JlLi4uCgoyMDAyLTA5LTI5IDIxOjU1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6CgkgIEZpeCBmb3IgaXQgdG8gY29tcGlsZSBvbiAiYWxsIiB3aW5kb3dzIHBsYXRmb3Jtcy4uLgoKMjAwMi0wOS0yOSAyMTo0OCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBTaW1wbGlmeSBkZWJ1Z2dpbmcgYnkgcmVzZXR0aW5nIGVycm9yCgkgIGNvZGUKCjIwMDItMDktMjkgMTQ6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmN4eCwgY21XaW4zMlByb2Nlc3NFeGVjdXRpb24uaDoKCSAgcG9zc2libGUgZml4IGZvciB3YXJuaW5ncwoKMjAwMi0wOS0yOSAxNDowOSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogY29tcGlsZXIgd2FybmluZ3MKCjIwMDItMDktMjcgMTc6MjggIGFuZHkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtYWtlLmN4eDogQWRkIHR3bwoJICBjbWFrZSBjb21tYW5kcyAtRSBlY2hvIGZvciBlY2hvaW5nIHN0cmluZ3MgYW5kIC1FIGNvbXNwZWMgZm9yCgkgIHdvcmthcm91bmQgb2YgYnVnIG9mIHdpbmRvd3MgOXg7IGFkZCBhbm90aGVyIGltcGxlbWVudGF0aW9uIG9mCgkgIHJ1biBjb21tYW5kIG9uIHdpbmRvd3Mgd2hpY2ggc2hvdWxkIHdvcmsuLi4KCjIwMDItMDktMjcgMTc6MjYgIGFuZHkKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbVdpbjMyUHJvY2Vzc0V4ZWN1dGlvbi5jeHgsCgkgIGNtV2luMzJQcm9jZXNzRXhlY3V0aW9uLmg6IEFkZCBjbGFzcyBmb3IgcHJvY2VzcyBleGVjdXRpb24gb24KCSAgV2luZG93cwoKMjAwMi0wOS0yNyAxNzoxNiAgYW5keQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogVXNlIGNtYWtlIGVjaG8KCjIwMDItMDktMjcgMTY6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eDoKCSAgcmVtb3ZlZCBzb21lIGluY2x1ZGVzCgoyMDAyLTA5LTI3IDE2OjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0LmgsIGNtQ29tbWFuZC5oLAoJICBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eCwgY21FbmRGb3JFYWNoQ29tbWFuZC5jeHgsCgkgIGNtRm9yRWFjaENvbW1hbmQuY3h4LCBjbUFkZFRlc3RDb21tYW5kLmN4eCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21FbHNlQ29tbWFuZC5jeHgsCgkgIGNtRW5kSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LCBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwgY21NYWNyb0NvbW1hbmQuY3h4LAoJICBjbU1lc3NhZ2VDb21tYW5kLmN4eCwgY21Xcml0ZUZpbGVDb21tYW5kLmN4eCwKCSAgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHg6IHJlbW92ZWQgc29tZSBpbmNsdWRlcwoKMjAwMi0wOS0yNyAxNjoxOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21TZXRDb21tYW5kLmN4eCwgY21TZXRDb21tYW5kLmg6IEJVRzogZml4IGRvYyBzdHJpbmcKCSAgYW5kIGFsbG93IGEgdmFyaWFibGUgdG8gYmUgcHJvbW90ZWQgZnJvbSBub24tY2FjaGUgdG8gY2FjaGUKCjIwMDItMDktMjcgMTY6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogcmVtb3ZlIHVudXNlZCBzdHVmZgoKMjAwMi0wOS0yNyAxNTo1MiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogbmV3IHBhdGNoCgoyMDAyLTA5LTI3IDE0OjEyICBhbmR5CgoJKiBUZW1wbGF0ZXMvOiBDQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIGNjb25maWd1cmUsCgkgIGNjb25maWd1cmUuaW46IENsZWFudXAgY29uZmlndXJlIHNjcmlwdHMKCjIwMDItMDktMjYgMTU6MTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtYWtlLmgsIGNtYWtlLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4LAoJICBjbUdsb2JhbEdlbmVyYXRvci5oLCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLCBNRkNEaWFsb2cvcmVzb3VyY2UuaDogYWRkZWQKCSAgcHJvZ3Jlc3MKCjIwMDItMDktMjYgMTM6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogbWlub3IgbWVtb3J5IGZpeAoKMjAwMi0wOS0yNSAxNzoyNSAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrSW5jbHVkZUZpbGUuY21ha2UsCgkgIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZTogU2V0IHZhcmlhYmxlIHRvIGVpdGhlciAxIG9yIGVtcHR5CgkgIHN0cmluZyBpbnN0ZWFkIG9mIFRSVUUgYW5kIEZBTFNFCgoyMDAyLTA5LTI1IDEwOjM4ICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrTGlicmFyeUV4aXN0cy5jbWFrZTogQ2xlYW51cAoKMjAwMi0wOS0yNSAxMDowOCAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5oLmluLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvTG9hZGVkQ29tbWFuZC5oLmluOiBDaGVjayBmb3IgbGlicmFyeQoKMjAwMi0wOS0yNSAxMDowOCAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tTaXplT2YuY21ha2U6IEZpeCBtb2R1bGVzIGZvciByZWNlbnQgY2hhbmdlcwoKMjAwMi0wOS0yNSAxMDowNyAgYW5keQoKCSogU291cmNlLzogY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogU2V2ZXJhbCBjaGFuZ2VzOiBDT01QSUxFX0RFRklOSVRJT05TIGlzCgkgIG5vdyBkZXByaWNhdGVkLiBJZiB5b3Ugd2FudCB0byBzcGVjaWZ5IHNvbWUsIHVzZSBDTUFLRV9GTEFHUwoJICAtRENNQUtFX0RFRklOSVRJT05TOlNUUklORz0uLi47IHNhbWUgZ29lcyBmb3IgbGlicmFyaWVzLCBpbmNsdWRlCgkgIHBhdGgsIC4uLiBJdCBub3cgZGV0ZWN0cyB3ZXRoZXIgdGhlIGZpbGUgaXMgQyBvciBDKysgYW5kIHVzZXMgdGhlCgkgIGFwcm9wcmlhdGUgcHJvamVjdCBjb21tYW5kLCBpdCBhbHNvIGRvZXMgdGhlIHJpZ2h0IHRoaW5nIHdoZW4KCSAgZG9pbmcgdHJ5X2NvbXBpbGUsIHNvIGl0IGRvZXMgbm90IGV4ZWN1dGUgY29uZmlndXJlIGZvciBldmVyeQoJICBzaW5nbGUgdHJ5X2NvbXBpbGUKCjIwMDItMDktMjUgMDk6MzEgIGFuZHkKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogVXNlIGZpbGUgZm9ybWF0CgkgIGRldGVjdGlvbgoKMjAwMi0wOS0yNSAwOTozMCAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogQWRkIGRldGVjdGlvbiBvZgoJICBmaWxlIGZvcm1hdCBmcm9tIGV4dGVuc2lvbgoKMjAwMi0wOS0yNSAwNzo0NyAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL2NtV1hNYWluRnJhbWUuY3h4OiBSZW1vdmUgd2FybmluZ3MKCjIwMDItMDktMjUgMDc6NDYgIGFuZHkKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IEF0dGVtcHQgdG8gbWFrZSBOTWFrZSBxdWlldCBkdXJpbmcKCSAgVFJZX0NPTVBJTEUKCjIwMDItMDktMjQgMTg6MzQgIGFuZHkKCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY3Rlc3QuaDogQWRkIHZlcmJvc2UgZmxhZyAtViwgd2hpY2ggbWFrZXMgdGhlCgkgIG91dHB1dCBvZiB0ZXN0cyB0byBiZSBkaXNwbGF5ZWQ7IGFsc28gYWRkIGhlbHAgdG8gY3Rlc3QKCjIwMDItMDktMjQgMTc6NTggIGFuZHkKCgkqIE1vZHVsZXMvQ01ha2VCYWNrd2FyZENvbXBhdGliaWxpdHlDLmNtYWtlLAoJICBNb2R1bGVzL0NNYWtlQmFja3dhcmRDb21wYXRpYmlsaXR5Q1hYLmNtYWtlLAoJICBTb3VyY2UvY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBJbXByb3ZlIGJhY2t3YXJkCgkgIGNvbXBhdGliaWxpdHksIHNvIHRoYXQgYWxsIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgc3R1ZmYgaXMgaW4gdHdvCgkgIG1vZHVsZXM7IGZpeCBpbnZva2luZyBvZiB0cnlfY29tcGlsZTsgYWRkIGNoZWNraW5nIGZvciBoZWFkZXIKCSAgZmlsZXMgYW5kIHNpemVzIG9mIHR5cGVzCgoyMDAyLTA5LTI0IDE3OjM3ICBhbmR5CgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEFkZCBzdXBwb3J0IGZvciBtYWMgZHlsaWIKCjIwMDItMDktMjQgMTY6MzYgIGFuZHkKCgkqIE1vZHVsZXMvOiBDaGVja0xpYnJhcnlFeGlzdHMuY21ha2UsIENoZWNrTGlicmFyeUV4aXN0cy5saXN0cy5pbjoKCSAgSW5pdGlhbCBhdHRlbXB0IHRvIGNoZWNrIGlmIGxpYnJhcnkgZXhpc3RzCgoyMDAyLTA5LTI0IDE2OjIwICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBjbVdYTWFpbkZyYW1lLmN4eCwgY21XWE1haW5GcmFtZS5oOiBTb21lIEdVSQoJICBpbXByb3ZlbWVudHMgYW5kIGZpeCB0aGUgd2F5IGRpcnR5IGlzIGJlaW5nIHNldCwgc28gdGhhdCBpZiB0aGVyZQoJICBhcmUgbm8gY2FjaGUgdmFsdWVzLCBkaXJ0eSBpcyBub3Qgc2V0CgoyMDAyLTA5LTI0IDE2OjIwICBhbmR5CgoJKiBNb2R1bGVzL0NoZWNrU2l6ZU9mLmNtYWtlOiBJbXByb3ZlIGNoZWNrIHNpemUgb2YuIE5vdyBpdCBjaGVja3MKCSAgZm9yIHNvbWUgaGVhZGVyIGZpbGVzIGJlZm9yZSB0cnlpbmcgdG8gY2hlY2sgdHlwZXMKCjIwMDItMDktMjQgMTQ6NDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRW5kSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4OiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTA5LTI0IDE0OjIyICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV9jb25maWdfb3NmOiBFTkg6IEFkZGluZyBwcm90b3R5cGUgcmVsZWFzZQoJICBjb25maWcgc2NyaXB0IGZvciBPU0YuCgoyMDAyLTA5LTI0IDE0OjE4ICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV9jb25maWdfY3lnd2luOiBFUlI6IFJlbW92ZWQgb2xkIGN5Z3dpbgoJICByZWxlYXNlIGNvbmZpZyBmaWxlLglBIHNlcGFyYXRlIHNjcmlwdCBpcyBub3cgdXNlZC4KCjIwMDItMDktMjQgMTM6MjQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IGZpeGVkIG1lbW9yeSBsZWFrCgoyMDAyLTA5LTI0IDEzOjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDogYWx3YXlzIGNvbnZlcnQgdG8gb3V0cHV0IHBhdGgKCjIwMDItMDktMjQgMTA6NDcgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy86IGNtYWtlLWN5Z3dpbi1wYWNrYWdlLnNoLCBjbWFrZV9yZWxlYXNlX2N5Z3dpbi5zaDogdXNlCgkgIC91c3IvYmluL2ZpbmQgYW5kIHVuYW1lIGZvciBjeWd3aW4gdmVyc2lvbgoKMjAwMi0wOS0yNCAxMDozMCAgYW5keQoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogQ2xlYW51cAoKMjAwMi0wOS0yNCAxMDoyNCAgYW5keQoKCSogU291cmNlLzogY21EeW5hbWljTG9hZGVyLmN4eCwgY21EeW5hbWljTG9hZGVyLmg6IEFkZCBhY2Nlc3NvciBmb3IKCSAgRmx1c2hpbmcgY2FjaGUKCjIwMDItMDktMjQgMDk6NTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogb25lIHJ1bGUgcGVyIGxpbmUgc28KCSAgYm9ybGFuZCBtYWtlIGRvZXMgbm90IGRpZQoKMjAwMi0wOS0yNCAwOTo1MCAgaG9mZm1hbgoKCSogU291cmNlL2NtTG9jYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBoYW5kbGUgbG9uZyBjb21tYW5kcwoKMjAwMi0wOS0yNCAwOToyNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21EeW5hbWljTG9hZGVyLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBmaXggZm9yCgkgIGN5Z3dpbiBhbmQgbm1ha2UgdGhhdCBkb2VzIG5vdCBkZWZpbmUgV0lOMzIKCjIwMDItMDktMjMgMjE6MTQgIGtpbmcKCgkqIFV0aWxpdGllcy86IGNtYWtlLWN5Z3dpbi1wYWNrYWdlLnNoLCBjbWFrZS1jeWd3aW4uUkVBRE1FLAoJICBjbWFrZV9yZWxlYXNlX2N5Z3dpbi5zaCwgc2V0dXAuaGludDogRU5IOiBBZGRlZCBjeWd3aW4gcGFja2FnaW5nCgkgIHNjcmlwdHMuICBUaGUgc2V0dXAuaGludCBhbmQgY21ha2UuUkVBRE1FIGZpbGVzIHJlcXVpcmVkIGJ5CgkgIEN5Z3dpbiBhcmUgZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkuCgoyMDAyLTA5LTIzIDE3OjI0ICBhbmR5CgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQ6IEZpeCBwcm9ibGVtCgoyMDAyLTA5LTIzIDE3OjIwICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV91bml4X3BhY2thZ2Uuc2g6IEVOSDogQWRkZWQgdG8gZ2VuZXJhdGVkCgkgIFJFQURNRSB0aGUgdHlwaWNhbCBpbnN0YWxsIGxvY2FpdG9uIG9mIC91c3IvbG9jYWwuCgoyMDAyLTA5LTIzIDE2OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogRml4IGNhY2hlIGZvciBub24gdm9pZCogdHlwZXMKCjIwMDItMDktMjMgMTY6MjQgIGFuZHkKCgkqIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXIuY3h4OiBLZWVwIHRyYWNrIG9mIGxpYnJhcmllcyBzbyB0aGF0IHlvdQoJICBjYW4gbG9hZCB0aGVtIGFzIG1hbnkgdGltZXMgYXMgeW91IHdhbnQuLi4KCjIwMDItMDktMjMgMTU6NTcgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBDbGVhbnVwCgoyMDAyLTA5LTIzIDE1OjU2ICBhbmR5CgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogU29tZSBtaW5vcgoJICBmaXhlcyBmb3IgbWFjCgoyMDAyLTA5LTIzIDE1OjU0ICBhbmR5CgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEZpeCBnZW5lcmF0aW9uIG9mIEMgb25seQoJICBtb2R1bGVzCgoyMDAyLTA5LTIzIDE1OjUzICBhbmR5CgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogRml4IGV4dGVuc2lvbiBhbmQgc3VmZml4IGZvciBtb2R1bGVzCgkgIG9uIG1hYwoKMjAwMi0wOS0yMyAxNDo1NyAgbWFydGluawoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IGNsZWFudXAKCjIwMDItMDktMjMgMTQ6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5oLCBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IGNsZWFuZWQgdXAgQVBJCgoyMDAyLTA5LTIzIDE0OjExICBhbmR5CgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQ6IEZpeCB0ZXN0IHNvCgkgIHRoYXQgaXQgd2lsbCB3b3JrIG9uIEhQCgoyMDAyLTA5LTIzIDE0OjA0ICBhbmR5CgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IEZpeCBIUCBidWlsZAoKMjAwMi0wOS0yMyAxMzozMiAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBXWERpYWxvZy9jbVdYQ29tbWFuZExpbmVJbmZvLmN4eCwgV1hEaWFsb2cvY21XWE1haW5GcmFtZS5jeHgsCgkgIFdYRGlhbG9nL3d4Q01ha2VTZXR1cC5jeHg6IFRyeSB0byByZW1vdmUgc29tZSB3YXJuaW5ncwoKMjAwMi0wOS0yMyAxMzoxMSAgYW5keQoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogRml4IGxvYWRpbmcgb2YgbW9kdWxlIGZvcgoJICBib3JsYW5kCgoyMDAyLTA5LTIzIDEyOjIzICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxHZW5lcmF0b3IuY3h4OiBUcnkgdG8gZml4IGJvcmxhbmQgYW5kIG5tYWtlIHRyeQoJICBjb21waWxlCgoyMDAyLTA5LTIzIDExOjA2ICBhbmR5CgoJKiBTb3VyY2UvOiBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgY21UcnlDb21waWxlQ29tbWFuZC5oLAoJICBjbVRyeVJ1bkNvbW1hbmQuY3h4OiBBYnN0cmFjdCBjbGVhbmluZyBvZiBmaWxlcyBhbmQgYWRkIGNvZGUgdGhhdAoJICBkZWxldGVzIGZpbGVzIGZyb20gRGVidWcgc3ViZGlyZWN0b3J5CgoyMDAyLTA5LTIzIDExOjA1ICBhbmR5CgoJKiBTb3VyY2UvY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eDogUmVtb3ZlIGRlYnVnIHN0dWZmCgoyMDAyLTA5LTIzIDEwOjAxICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2U6IEZpeCBjb21tZW50cwoKMjAwMi0wOS0yMyAwOTo1OCAgYW5keQoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogVHJ5IHRvIGZpeCBxdW90ZWQKCSAgZGVmaW5pdGlvbnMKCjIwMDItMDktMjMgMDk6NDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IGhvcGVmdWxsIGFub3RoZXIgZml4IHRvIGlmIHN0YXRlbWVudHMKCjIwMDItMDktMjMgMDk6MDcgIGFuZHkKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oOiBBdHRlbXB0IHRvIGZpeCBWaXN1YWwgc3R1ZGlvIDYKCSAgY29taWxpbmcKCjIwMDItMDktMjMgMDg6NTEgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX3VuaXhfcGFja2FnZS5zaDogQlVHOiBDcmVhdGluZyBzb3VyY2UKCSAgdGFyYmFsbCBzaG91bGQgbm90IGFmZmVjdCBjdXJyZW50IGRpcmVjdG9yeS4KCjIwMDItMDktMjMgMDg6NDQgIGtpbmcKCgkqIFV0aWxpdGllcy86IGNtYWtlX3JlbGVhc2VfY29uZmlnX2RhcndpbiwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfaHB1eCwgY21ha2VfcmVsZWFzZV9jb25maWdfaXJpeCwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfbGludXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX3N1bjogRU5IOgoJICBJbmNyZW1lbnRlZCB2ZXJzaW9uIHRvIDEuNC41LgoKMjAwMi0wOS0yMiAxMDowOCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogZGVmaW5lcyBjYW5ub3QgaGF2ZQoJICBxdW90ZXMgaW4gdGhlbQoKMjAwMi0wOS0yMiAwOTo1MyAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IHNvbWUgdHJ5IGNvbXBpbGUgZml4ZXMKCjIwMDItMDktMjIgMDc6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtV3JpdGVGaWxlQ29tbWFuZC5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogY29tcGlsZXIgd2FybmluZwoKMjAwMi0wOS0yMSAwNzoyOSAgYW5keQoKCSogU291cmNlL2NtV3JpdGVGaWxlQ29tbWFuZC5jeHg6IEZpeCBuYW1lc3BhY2UgcHJvYmxlbQoKMjAwMi0wOS0yMCAxNTo0NSAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL3d4aW5jbHVkZXMuaDogQWRkIG1pc3NpbmcgaW5jbHVkZQoKMjAwMi0wOS0yMCAxNTowMSAgYW5keQoKCSogTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlLAoJICBNb2R1bGVzL0NoZWNrSW5jbHVkZUZpbGUuY21ha2UsIE1vZHVsZXMvQ2hlY2tTaXplT2YuY21ha2UsCgkgIFNvdXJjZS9XWERpYWxvZy9jbVdYTWFpbkZyYW1lLmN4eDogRml4IHRlc3RzIGZvciBuZXcgdHJ5Y29tcGlsZQoJICBhbmQgdHJ5cnVuCgoyMDAyLTA5LTIwIDE1OjAxICBhbmR5CgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwKCSAgY21UcnlSdW5Db21tYW5kLmN4eDogQWRkIEdldExvY2FsIG9uIGNtTWFrZWZpbGUgYW5kIG9uIGxvY2FsCgkgIGJ1aWxkcyBkbyBub3QgcGVyZm9ybSB0ZXN0cwoKMjAwMi0wOS0yMCAxNDoxNyAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5oLmluLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvTG9hZGVkQ29tbWFuZC5oLmluOiBJbmNsdWRlIG1vcmUgdGVzdGluZwoKMjAwMi0wOS0yMCAxNDoxNiAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrSW5jbHVkZUZpbGUuYy5pbiwgQ2hlY2tJbmNsdWRlRmlsZS5jbWFrZTogU2ltcGxpZnkKCSAgY2hlY2tpbmcgZm9yIGhlYWRlcnMKCjIwMDItMDktMjAgMTM6NDAgIGFuZHkKCgkqIE1vZHVsZXMvOiBDaGVja0luY2x1ZGVGaWxlLmMuaW4sIENoZWNrSW5jbHVkZUZpbGUuY21ha2U6IEFkZAoJICBtYWNybyB3aGljaCBjaGVja3MgaWYgdGhlIGhlYWRlciBmaWxlIGV4aXN0cwoKMjAwMi0wOS0yMCAxMzo0MCAgYW5keQoKCSogTW9kdWxlcy9DaGVja0Z1bmN0aW9uRXhpc3RzLmNtYWtlOiBGaXggY29tbWVudAoKMjAwMi0wOS0yMCAxMzoxNyAgYW5keQoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5jeHgsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmN4eCwKCSAgTG9hZENvbW1hbmQvTG9hZGVkQ29tbWFuZC5oLmluLAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9Mb2FkZWRDb21tYW5kLmguaW46IEZpeCB0ZXN0IHNvIHRoYXQgaXQgZG9lcwoJICBzb21lIG1vZHVsZXMgdGVzdGluZyBieSBjaGVja2luZyBmb3Igc29tZSBmdW5jdGlvbnMgYW5kIHNvbWUgc2l6ZQoJICBvZiB0eXBlcwoKMjAwMi0wOS0yMCAxMzoxNiAgYW5keQoKCSogTW9kdWxlcy86IENoZWNrRnVuY3Rpb25FeGlzdHMuYywgQ2hlY2tGdW5jdGlvbkV4aXN0cy5jbWFrZSwKCSAgQ2hlY2tTaXplT2YuYywgQ2hlY2tTaXplT2YuY21ha2U6IEFkZCB0d28gY29tbW9ubHkgdXNlZCBtb2R1bGVzLgoJICBGaXJzdCBvbmUgY2hlY2tzIGlmIHRoZSBmdW5jdGlvbiBleGlzdHMsIHRoZSBzZWNvbmQgb25lIGNoZWNrcwoJICB0aGUgc2l6ZSBvZiB0eXBlCgoyMDAyLTA5LTIwIDEzOjE1ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBBZGQgb3B0aW9uCgkgIG9mIFRSWV9DT01QSUxFIHRvIHN0b3JlIHRoZSBvdXRwdXQgb2YgY29tcGlsYXRpb24gc28gdGhhdCBpZiB0aGUKCSAgb3V0cHV0IGZhaWxzIHlvdSBjYW4gZGlzcGxheSBpdCBvciBzdG9yZSBpdCBpbiB0aGUgZmlsZQoKMjAwMi0wOS0yMCAxMzoxNCAgYW5keQoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtV3JpdGVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtV3JpdGVGaWxlQ29tbWFuZC5oOiBBZGQgV1JJVEVfRklMRSBjb21tYW5kLCB3aGljaCB3cml0ZXMgc3RyaW5nCgkgIHRvIGEgZmlsZQoKMjAwMi0wOS0yMCAxMDowNiAgbWFydGluawoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IHJlbW92ZWQgYysrCgkgIHN0eWxlIGNvbW1lbnRzCgoyMDAyLTA5LTIwIDA5OjUzICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvd3hpbmNsdWRlcy5oOiBGaXggaW5jbHVkZXMKCjIwMDItMDktMjAgMDg6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVHJ5UnVuQ29tbWFuZC5oLCBjbVRyeVJ1bkNvbW1hbmQuY3h4OiBjb21waWxlcgoJICB3YXJuaW5ncwoKMjAwMi0wOS0xOSAxNzozNSAgYW5keQoKCSogU291cmNlL1dYRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBBZGQgdGVzdCBmb3IgZ3VpCgoyMDAyLTA5LTE5IDE3OjM1ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvY21XWENvbW1hbmRMaW5lSW5mby5jeHg6IEZpeCBhcmd1bWVudHMKCjIwMDItMDktMTkgMTc6MzUgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy93eENNYWtlU2V0dXAuY3h4OiBBbGxvdyBhcmd1bWVudCBRCgoyMDAyLTA5LTE5IDE3OjIzICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBjbVdYTWFpbkZyYW1lLmN4eCwgY21XWE1haW5GcmFtZS5oOiBBZGQgc3VwcG9ydAoJICBmb3IgZXhpdGluZyBhZnRlciBsb2FkaW5nCgoyMDAyLTA5LTE5IDE3OjIwICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBjbVdYQ29tbWFuZExpbmVJbmZvLmN4eCwgY21XWENvbW1hbmRMaW5lSW5mby5oOgoJICBBZGQgb3B0aW9uIC1RIGZvciBleGlzdGluZyBhZnRlciBsb2FkaW5nCgoyMDAyLTA5LTE5IDE2OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFsbG93IGZvciBsb25nCgkgIGNvbW1hbmQgbGluZXMKCjIwMDItMDktMTkgMTY6MDkgIGFuZHkKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogUmVtb3ZlIHVubmVjZXNzYXJ5IGRpc2FibGluZyBvZiBvdXRwdXQKCjIwMDItMDktMTkgMTY6MDcgIGFuZHkKCgkqIFNvdXJjZS9jbVRyeVJ1bkNvbW1hbmQuY3h4OiBGaXggdHJ5cnVuIHRvIHdvcmsgb24gTGludXgKCjIwMDItMDktMTkgMTU6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIHNpbmdsZSBsaW5lIGRlcGVuZAoJICBydWxlcyBmb3IgYm9ybGFuZCBjb21waWxlcgoKMjAwMi0wOS0xOSAxNDo1OSAgaG9mZm1hbgoKCSogU291cmNlL2NtTVNEb3RORVRHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBpbmNsdWRlIHRvIHJjLCBhbmQKCSAgbmV3bGluZSB0byBjdXN0b20gY29tbW5hZAoKMjAwMi0wOS0xOSAxNDo1OSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBpbmNsdWRlIHRvIHJjCgoyMDAyLTA5LTE5IDE0OjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogZml4IGJhZCBlbmRpZgoKMjAwMi0wOS0xOSAxNDo1OCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBFWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRU5IOiBhZGQgaW5jbHVkZSBwYXRocyB0byByYwoKMjAwMi0wOS0xOSAxNDo0MCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBTdXByZXNzIHN0YW5kYXJkIGVycm9yIHdoZW4gcnVubmluZwoJICBjb21tYW5kCgoyMDAyLTA5LTE5IDE0OjM2ICBhbmR5CgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IEZpeCB0cnkgY29tcGlsZSB3aXRoIHNlY29uZAoJICBzaWduYXR1cmUsIHJlbW92ZSBjbWFrZSBsaXN0cyBmcm9tIGNhY2hlIHNvIHRoYXQgbXVsdGlwbGUgdGVzdHMKCSAgd29yawoKMjAwMi0wOS0xOSAxNDozNSAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuaDogQWRkIGEgd2F5IHRvIGNoZWNrIGlmIHJ1biBjb21tYW5kIG91dHB1dAoJICBpcyBkaXNhYmxlZAoKMjAwMi0wOS0xOSAxNDozNSAgYW5keQoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBXaGVuIGRvaW5nIHRyeSBjb21waWxlIGRpc2FibGUgb3V0cHV0CgoyMDAyLTA5LTE5IDE0OjM0ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbUxpc3RGaWxlQ2FjaGUuaDogQWRkIGEgd2F5IHRvCgkgIHJlbW92ZSBmaWxlcyBmcm9tIGNhY2hlCgoyMDAyLTA5LTE5IDExOjA2ICBhbmR5CgoJKiBTb3VyY2UvY21UcnlSdW5Db21tYW5kLmN4eDogRml4IGNvbXBpbGUgcHJvYmxlbQoKMjAwMi0wOS0xOSAxMTowMSAgbWFydGluawoKCSogU291cmNlL2NtVHJ5UnVuQ29tbWFuZC5jeHg6IG1pbm9yIGNsZWFudXAKCjIwMDItMDktMTkgMTE6MDAgIGFuZHkKCgkqIFNvdXJjZS9XWERpYWxvZy93eGluY2x1ZGVzLmg6IEZpeCBhbGwgZGVmaW5lcyBvbiBXaW5kb3dzCgoyMDAyLTA5LTE5IDEwOjU2ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEZpeCBleGVjdXRhYmxlIHRvIGJlIFdJTjMyIG9uCgkgIHdpbmRvd3MKCjIwMDItMDktMTkgMTA6MjUgIGFuZHkKCgkqIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZTogRml4IGZpbmQgd3hXaW5kb3dzCgoyMDAyLTA5LTE5IDA5OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21UcnlDb21waWxlQ29tbWFuZC5jeHgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaDogdXBkYXRlZCB0byB0cnkgY29tcGlsZQoKMjAwMi0wOS0xOSAwOTo0OCAgbWFydGluawoKCSogU291cmNlLzogY21UcnlSdW5Db21tYW5kLmN4eCwgY21UcnlSdW5Db21tYW5kLmg6IG5ldyBjb21tYW5kCgoyMDAyLTA5LTE5IDA5OjQ4ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IFJlbW92ZSB1bm5lY2Vzc2FyeSBtZXNzYWdlCgoyMDAyLTA5LTE5IDA5OjQ3ICBhbmR5CgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEFkZCBvcHRpb24gZm9yIGJ1aWxkaW5nIHd4V2luZG93cyBHVUkgZm9yCgkgIENNYWtlCgoyMDAyLTA5LTE5IDA5OjQ3ICBhbmR5CgoJKiBTb3VyY2UvV1hEaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgY21XWENhY2hlUHJvcGVydHkuY3h4LAoJICBjbVdYQ2FjaGVQcm9wZXJ0eS5oLCBjbVdYQ29tbWFuZExpbmVJbmZvLmN4eCwKCSAgY21XWENvbW1hbmRMaW5lSW5mby5oLCBjbVdYTWFpbkZyYW1lLmN4eCwgY21XWE1haW5GcmFtZS5oLAoJICB3eENNYWtlU2V0dXAuY3h4LCB3eGluY2x1ZGVzLmg6IEluaXRpYWwgaW1wb3J0IG9mIHd4V2luZG93cwoJICBkaWFsb2cKCjIwMDItMDktMTkgMDk6NDIgIGFuZHkKCgkqIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZTogSW1wcm92ZSBzZWFyY2hpbmcgZm9yIHd4V2luZG93cwoKMjAwMi0wOS0xOCAxNDozMCAgYW5keQoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRml4IGNhbGxiYWNrIGZvciB0aGUgbmV3CgkgIEFQSQoKMjAwMi0wOS0xOCAxNDoxOCAgYW5keQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IEltcHJvdmUgbWVzc2FnZSBoYW5kbGVyIHRvIGluY2x1ZGUKCSAgY2xpZW50IGRhdGEuCgoyMDAyLTA5LTE4IDExOjM4ICBtYXJ0aW5rCgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0NNYWtlQ29tbWFuZHMvY21UZXN0Q29tbWFuZC5jOiB0ZXN0IHBhc3NpbmcKCSAgQ01BS0VfRkxBR1MKCjIwMDItMDktMTggMTE6MzcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LAoJICBjbVRyeUNvbXBpbGVDb21tYW5kLmg6IG5vdyBUcnkgY29tcGlsZSBjYW4gaW5jbHVkZSBDTUFLRV9GTEFHUwoKMjAwMi0wOS0xOCAxMTozNiAgbWFydGluawoKCSogU291cmNlL2NtTG9hZENvbW1hbmRDb21tYW5kLmN4eDogYmV0dGVyIGVycm9yIHJlcG9ydGluZwoKMjAwMi0wOS0xOCAxMDo0MCAga2luZwoKCSogU291cmNlL2NtU2V0Q29tbWFuZC5jeHg6IEVOSDogSWYgU0VUKFZBUikgaXMgY2FsbGVkIHdpdGggbm8gb3RoZXIKCSAgYXJndW1lbnRzLCByZW1vdmUgdGhlIGRlZmluaXRpb24gb2YgVkFSLgoKMjAwMi0wOS0xOCAxMDozOSAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGRlZAoJICBSZW1vdmVEZWZpbml0aW9uIG1ldGhvZC4KCjIwMDItMDktMTggMDk6NTMgIGJhcnJlCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IEZJWDogYmV0dGVyIHN1cHBvcnQgZm9yIHRoZQoJICBUY2wvVGsgOC40IHByZS1yZWxlYXNlCgoyMDAyLTA5LTE4IDA4OjE1ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRHVEsuY21ha2U6IEdMIHNob3VsZCBub3QgYmUgYSBjb21wbGV0ZWx5IG5lY2Vzc2FyeQoJICB0aGluZyBmb3IgZmluZGluZyBHVEsuIFRoaXMgd2lsbCBmaW5kIGd0ayBhbmQgR0wgYnV0IGFsc28ganVzdAoJICBHVEsKCjIwMDItMDktMTggMDg6MTMgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXdpemFyZC5jeHg6IFJlbW92ZSB1bm5lY2Vzc2FyeSB2YXJpYWJsZQoKMjAwMi0wOS0xOCAwODowNyAgbWFydGluawoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUxpc3RzLnR4dCwKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQ6IHJlbW92ZWQgdGFyZ2V0CgoyMDAyLTA5LTE3IDE1OjQxICBraW5nCgoJKiBNb2R1bGVzL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGluZyBpbnN0YWxsYXRpb24gb2YgVFJZX0NPTVBJTEUKCSAgdGVzdHMuCgoyMDAyLTA5LTE3IDE1OjQxICBraW5nCgoJKiBTb3VyY2UvY21UcnlDb21waWxlQ29tbWFuZC5jeHg6IEJVRzogR2VuZXJhdGVkIENNYWtlTGlzdHMudHh0CgkgIGZpbGUgbmVlZHMgdG8gdGFrZSBDTUFLRV9BTlNJX0NYWEZMQUdTIGludG8gYWNjb3VudC4KCjIwMDItMDktMTcgMTQ6NDAgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBGaXhlZCB0eXBvOgoJICBJTlNUQUxMX1BST0dSQU1TIC0+IElOU1RBTExfUFJPR1JBTS4KCjIwMDItMDktMTcgMTQ6MjAgIG1hcnRpbmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IHNvbWUgY21ha2UgYXBpIGNoYW5nZWVzCgoyMDAyLTA5LTE3IDE0OjE5ICBhbmR5CgoJKiBTb3VyY2UvY21ha2V3aXphcmQuY3h4OiBTdHJpcCB0aGUgc3RyaW5nIHRoYXQgdXNlciBhbnN3ZXJzCgoyMDAyLTA5LTE3IDE0OjE4ICBiYXJyZQoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IGFkZCBzdXBwb3J0IGZvciBUY2wvVGsgOC40LjAKCjIwMDItMDktMTcgMTQ6MTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5oOiB1cGRhdGVkIGNvbW1lbnRzCgoyMDAyLTA5LTE3IDE0OjA5ICBraW5nCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogSU5TVEFMTF9EQVRBIHNob3VsZAoJICBiZSBJTlNUQUxMX1BST0dSQU1TIGZvciBwcm9ncmFtIGluc3RhbGwgdGFyZ2V0cy4KCjIwMDItMDktMTcgMTQ6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IHNvbWUgY21ha2UgYXBpIGNoYW5nZWVzCgoyMDAyLTA5LTE3IDEzOjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21ha2UuY3h4LCBjbWFrZS5oLCBjbWFrZXdpemFyZC5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogY2xlYW5lZCB1cCBzb21lIG9mIHRoZSBjbWFrZQoJICBpbnRlcmZhY2UKCjIwMDItMDktMTcgMTM6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogbmV3IHRlc3QKCjIwMDItMDktMTcgMTM6NDggIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXdpemFyZC5jeHg6IFJlcGxhY2UgZ2V0bGluZSB3aXRoIGZnZXRzIHNpbmNlIGdldGxpbmUKCSAgZG9lcyBub3Qgc2VlbXMgdG8gd29yayBwcm9wZXJseSBvbiBNYWMgT1NYCgoyMDAyLTA5LTE3IDExOjQ4ICBhbmR5CgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIGNtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eDogRml4IHByb2JsZW1zIHdpdGggYWR2YW5jZWQgbm90IGJlaW5nCgkgIG1hcmtlZC4KCjIwMDItMDktMTcgMTA6NTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogSW1wcm92ZWQgaW1wbGVtZW50YXRpb24gb2YKCSAgSU5TVEFMTF9GSUxFUyBhbmQgSU5TVEFMTF9QUk9HUkFNUyBjb21tYW5kcy4JU291cmNlIHBhdGhzIGNhbgoJICBub3cgYmUgcmVsYXRpdmUgb3IgZnVsbCBwYXRocywgYW5kIGRvbid0IG5lZWQgdG8gYmUgaW4gdGhlIHNhbWUKCSAgZGlyZWN0b3J5IGFzIHRoZSBDTWFrZUxpc3RzLnR4dCBmaWxlLgoKMjAwMi0wOS0xNyAxMDozOCAgbWFydGluawoKCSogVGVzdHMvOiBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VDb21tYW5kcy9jbVRlc3RDb21tYW5kLmM6IGFkZGVkCgkgIERlc3RydWN0b3IKCjIwMDItMDktMTcgMTA6MzggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5oLCBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IGFkZGVkCgkgIGRlc3RydWN0b3IgdG8gbG9hZGVkIGNvbW1hbmRzCgoyMDAyLTA5LTE3IDA5OjE3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZTogc2xpZ2h0IGNoYW5nZSBpbgoJICBzaWduYXR1cmUgZm9yIFRyeUNvbXBpbGUKCjIwMDItMDktMTcgMDk6MTYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmg6IHNsaWdodCBjaGFuZ2UgaW4KCSAgc2lnbmF0dXJlCgoyMDAyLTA5LTE3IDA5OjE2ICBtYXJ0aW5rCgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogc29tZSBjbGVhbnVwCgoyMDAyLTA5LTE3IDA4OjI5ICBtYXJ0aW5rCgoJKiBUZXN0cy86IExvYWRDb21tYW5kL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dDogbWlub3IgZml4IGluIGVycm9yIG1lc3NhZ2UKCjIwMDItMDktMTYgMTY6MjcgIG1hcnRpbmsKCgkqIFRlc3RzLzogTG9hZENvbW1hbmQvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZC9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYywKCSAgTG9hZENvbW1hbmRPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIExvYWRDb21tYW5kT25lQ29uZmlnL0xvYWRlZENvbW1hbmQuY3h4LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL0NNYWtlTGlzdHMudHh0LAoJICBMb2FkQ29tbWFuZE9uZUNvbmZpZy9DTWFrZUNvbW1hbmRzL2NtVGVzdENvbW1hbmQuYzogbG9hZCBjb21tYW5kCgkgIHRlc3QKCjIwMDItMDktMTUgMDk6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LCBjbUNhY2hlTWFuYWdlci5jeHgsCgkgIGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsCgkgIGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtYWtldGVzdC5jeHgsIGN0ZXN0LmN4eDogcmVtb3ZlIHVudXNlZAoJICB2YXJpYWJsZXMKCjIwMDItMDktMTUgMDk6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzdHZW5lcmF0b3IuY3h4OiB1cGRhdGVkIHRvIHVzZQoJICBDb25maWd1cmVGaW5hbFBhc3MKCjIwMDItMDktMTUgMDg6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsR2VuZXJhdG9yLmN4eDogY2hhbmdlZCBoYW5kbGluZyBvZiBGaW5hbFBhc3MKCjIwMDItMDktMTUgMDg6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogY2hhbmdlZCB3aGVuIGZpbmFsIHBhc3MKCSAgaXMgZG9uZQoKMjAwMi0wOS0xNSAwODo1MiAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5oLCBjbU1ha2VmaWxlLmN4eDogcmVuYW1lZCBHZW5lcmF0ZU1ha2VmaWxlCgkgIHRvIENvbmZpZ3VyZUZpbmFsUGFzcwoKMjAwMi0wOS0xNCAxMDo1OSAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogcmVtb3ZlZCBleHRyYSBHZW5lcmF0ZQoJICB0aGF0IHdhcyBzY3Jld2luZyB0aGluZ3MgdXAKCjIwMDItMDktMTQgMDg6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IGZpeGVkIHdhcm5pbmcKCjIwMDItMDktMTMgMTk6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbEdlbmVyYXRvci5jeHg6IG1hZGUgbGVzcyB2ZXJib3NlCgoyMDAyLTA5LTEzIDE5OjIzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZTogcmVtb3ZlZCBtZXNzYWdlcwoKMjAwMi0wOS0xMyAxNjozOCAga2luZwoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGRlZAoJICBGaWxlSXNGdWxsUGF0aCB0ZXN0IG1ldGhvZC4KCjIwMDItMDktMTMgMTM6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtYWtlLmg6IHNvbWUKCSAgZml4ZXMgZm9yIHRyeSBjb21waWxlCgoyMDAyLTA5LTEzIDExOjA5ICBtYXJ0aW5rCgoJKiBUZW1wbGF0ZXMvOiBDWFhDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgY3h4Y29uZmlndXJlLAoJICBjeHhjb25maWd1cmUuaW46IG5vdyB1c2VzIFRyeUNvbXBpbGUKCjIwMDItMDktMTMgMTE6MDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUdsb2JhbE5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaDogbWlub3IgZml4CgkgIGluRW5hYmxlTGFuZ3VhZ2VzCgoyMDAyLTA5LTEzIDExOjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eDogZml4IHRvIHRoZSBjbGVhbnVwIGNvZGUKCjIwMDItMDktMTMgMTA6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4OiBiZXR0ZXIgdHJ5Y29tcGlsZSBhbmQgZW5hYmxlIGxhbmdpYWdlcwoKMjAwMi0wOS0xMyAxMDo0MSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogYmV0dGVyIHRyeSBjb21waWxlCgoyMDAyLTA5LTEzIDEwOjQwICBtYXJ0aW5rCgoJKiBNb2R1bGVzL1Rlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZTogcmVtb3ZlZCBtZXNzYWdlcwoKMjAwMi0wOS0xMyAwOTo1MSAgYW5keQoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW46IEltcHJvdmUgYm9vdHN0cmFwcGluZyBvbiBVbml4LCBzbyB0aGF0CgkgIGl0IGJvb3RzdHJhcHMgaW4gdGhlIHN1YmRpcmVjdG9yeS4gVGhpcyBwcmV2ZW50cyBmcm9tIGNvbXBpbGVyCgkgIGZpbGVzIGJlaW5nIHJldXNlZCBhbmQgeW91IGNhbiBkbyBtYWtlIGNsZWFuLi4uCgoyMDAyLTA5LTEzIDA5OjQ5ICBpc2NvdHQKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBNYWtlIFFUIHZhcmlhYmxlcyBhZHZhbmNlZAoKMjAwMi0wOS0xMyAwODoxNSAgbWFydGluawoKCSogU291cmNlLzogY21FbmRJZkNvbW1hbmQuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgY29tcGlsZXIgd2FybmluZwoKMjAwMi0wOS0xMyAwODoxMiAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcDogZHVoCgoyMDAyLTA5LTEzIDA1OjM5ICBpc2NvdHQKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBOZWVkIHRvIHVzZSAkRU5We30gdG8gYWNjZXNzIGVudmlyb25tZW50CgkgIHZhcmlhYmxlcwoKMjAwMi0wOS0xMiAxNjozNiAgbWFydGluawoKCSogTW9kdWxlcy9UZXN0Rm9yQU5TSVN0cmVhbUhlYWRlcnMuY21ha2U6IHNvbWUgY2xlYW51cAoKMjAwMi0wOS0xMiAxNDozNyAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogdW5pbml0aWFsaXplZCB2YXIKCjIwMDItMDktMTIgMTM6NTUgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBSZW1vdmUgdW5uZWNlc3NhcnkgaW5jbHVkZQoKMjAwMi0wOS0xMiAxMzo0MiAgYW5keQoKCSogU291cmNlL2NtYWtlbWFpbi5jeHg6IFJlbW92ZSB1bm5lY2Vzc2FyeSBpbmNsdWRlCgoyMDAyLTA5LTEyIDEzOjE5ICBiZXR0aW5nZgoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogYWRkZWQKCSAgaW5jbHVkZSBvZiBGaW5kUVQuY21ha2UKCjIwMDItMDktMTIgMTE6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIENNYWtlTGlzdHMudHh0OiBuZXcgYXJjaAoKMjAwMi0wOS0xMiAxMTo0NCAgbWFydGluawoKCSogU291cmNlLzogY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIGNtTVNEb3RORVRHZW5lcmF0b3IuaCwKCSAgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LCBjbU1TUHJvamVjdEdlbmVyYXRvci5oLAoJICBjbURTV1dyaXRlci5jeHgsIGNtRFNXV3JpdGVyLmgsIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BXcml0ZXIuaCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBuZXcgYXJjaAoKMjAwMi0wOS0xMiAxMTozOCAgYmV0dGluZ2YKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogYWRkZWQgdGVzdCBmb3IgUVRXcmFwVUkgY2FsbGVkIHF0d3JhcHBpbmcKCjIwMDItMDktMTIgMTE6MzcgIGJldHRpbmdmCgoJKiBUZXN0cy9XcmFwcGluZy86IHF0d3JhcHBpbmdtYWluLmN4eCwgQ01ha2VMaXN0cy50eHQ6IGNvcnJlY3RlZAoJICB0ZXN0IGZvciBRVFdyYXBVSQoKMjAwMi0wOS0xMiAxMToxNCAgbWFydGluawoKCSogTW9kdWxlcy86IFRlc3RGb3JBTlNJU3RyZWFtSGVhZGVycy5jbWFrZSwKCSAgVGVzdEZvckFOU0lTdHJlYW1IZWFkZXJzLmN4eDogbmV3IHRyeSBjb21waWxlIG1vZHVsZQoKMjAwMi0wOS0xMiAxMToxMyAgYW5keQoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogT29wcywgdG9vIGZhc3QgY29tbWl0OyBhZGQgbWlzc2luZyA7CgoyMDAyLTA5LTEyIDExOjEyICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBBZGQgbW9yZSBlcnJvciBjaGVja2luZwoKMjAwMi0wOS0xMiAxMTowOCAgbWFydGluawoKCSogU291cmNlLzogY21UcnlDb21waWxlQ29tbWFuZC5jeHgsIGNtVHJ5Q29tcGlsZUNvbW1hbmQuaDogYW5vdGhlcgoJICBzaWduYXR1cmUgZm9yIFRyeV9Db21waWxlCgoyMDAyLTA5LTEyIDExOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21ha2UuY3h4LCBjbWFrZS5oOiBhZGRlZCBhIGZsYWcgaWYgYQoJICBjbWFrZSBpcyBpbiB0cnkgY29tcGlsZQoKMjAwMi0wOS0xMiAwOTo1NiAgYW5keQoKCSogU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eDogRml4IG1hcmsgYXMgYWR2YW5jZWQuIE5vdyBpdAoJICBzaG91bGQgd29yayBwcm9wZXJseQoKMjAwMi0wOS0xMiAwOTowMCAgYW5keQoKCSogU291cmNlLzogY21ha2V3aXphcmQuY3h4LCBjbWFrZXdpemFyZC5oOiBTaW1wbGlmeSBjb2RlLiBTaW5jZSB3ZQoJICBhY2Nlc3MgY2FjaGUgZW50cnkgdGhyb3VnaCB0aGUgaXRlcmF0b3IsIHdlIGRvIG5vdCBuZWVkIHRoZSBjYWNoZQoJICBtYW5hZ2VyIGFueSBtb3JlCgoyMDAyLTA5LTEyIDA4OjU2ICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaDogRml4IGJ1aWxkIHByb2JsZW0gb24gU3VuCgoyMDAyLTA5LTExIDE2OjQ0ICBiZXR0aW5nZgoKCSogU291cmNlL2NtUVRXcmFwVUlDb21tYW5kLmN4eDogY29ycmVjdGVkIHRoZSBnZW5lcmF0ZWQgbGlzdHMgLmggaW4KCSAgaGVhZGVyIGxpc3QgYW5kIC5jeHggaW4gc291cmNlcyBsaXN0CgoyMDAyLTA5LTExIDE2OjQzICBiZXR0aW5nZgoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBhZGRlZCBnZW5lcmF0aW9uIG9mIHRoZQoJICBHRU5FUkFURURfUVRfRklMRVMgbGlzdCBmb3IgbWFrZSBjbGVhbgoKMjAwMi0wOS0xMSAxNjo0MSAgYmV0dGluZ2YKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBhZGRlZCB0ZXN0IGZvciBRVFdyYXBVSQoKMjAwMi0wOS0xMSAxNjo0MCAgYmV0dGluZ2YKCgkqIFRlc3RzL1dyYXBwaW5nLzogcXR3cmFwcGluZ21haW4uY3h4LCBxdHdyYXBwaW5nLnVpOiB0ZXN0IGZvcgoJICBRVFdhcnBVSQoKMjAwMi0wOS0xMSAxNjoxMiAga2luZwoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQlVHOiBHZXRDYWNoZVZhbHVlIG11c3QgY2hlY2sgaWYgdmFsdWUKCSAgaXMgVU5JTklUSUFMSVpFRC4gIElmIHNvLCBwcmV0ZW5kIGl0IGRvZXNuJ3QgZXhpc3QuCgoyMDAyLTA5LTExIDE1OjEzICBhbmR5CgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBGaXggYnVnIGluIGNjbWFrZSB3aGljaAoJICBtYWRlIGl0IGNyYXNoIHdoZW4gYWxsIGNhY2hlIHZhbHVlcyB3ZXJlIGRlbGV0ZWQKCjIwMDItMDktMTEgMTU6MDQgIGFuZHkKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEZpeCBwcm9ibGVtIHdpdGggY2NtYWtlCgkgIGNyYXNoaW5nIG9uIGVtcHR5IGNhY2hlcwoKMjAwMi0wOS0xMSAxNDozOCAgYW5keQoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRml4IE1GQyBHVUkKCjIwMDItMDktMTEgMTQ6MzggIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEZpeCBmaW5kIGFuZCByZW1vdmUgY2hlY2sgZm9yCgkgIHVuaW5pdGlhbGl6ZWQgZW50cmllcwoKMjAwMi0wOS0xMSAxNDowOCAgYW5keQoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRnVuY3Rpb24gc3RyY2FzZWNtcCBpcyBub3QgcG9ydGFibGUKCjIwMDItMDktMTEgMTQ6MDUgIGFuZHkKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LAoJICBjbWFrZXdpemFyZC5jeHgsIGNtYWtld2l6YXJkLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogQ291cGxlIG9mIGNoYW5nZXM6IGNhY2hlCgkgIHZhcmlhYmxlcyBub3cgaGF2ZSBhIG1hcCBvZiBwcm9wZXJ0aWVzLiBBRFZBTkNFRCBhbmQgSEVMUFNUUklORwoJICBhcmUgbm93IHByb3BlcnRpZXMgb2YgY2FjaGUgdmFyaWFibGUsIElzQWR2YW5jZWQgaXMgZ29uZSwgc28gaXMKCSAgR2V0Q2FjaGVFbnRyeSwgc2luY2UgY2FjaGUgZW50cmllcyBhcmUgbm93IGFsbCBwcml2YXRlLiBUbyBhY2Nlc3MKCSAgdGhlbSwgeW91IHVzZSB0aGUgaXRlcmF0b3IuIC1BRFZBTkNFRCBjYWNoZSBlbnRyaWVzIGFyZSBnb25lIGFuZAoJICBhcmUgcmVwbGFjZWQgYnkgdGhlIHByb3BlcnR5IG9mIGNhY2hlIHZhcmlhYmxlcy4gVGhlIGNhY2hlIGZpbGUKCSAgc3RpbGwgbG9va3MgdGhlIHNhbWUsIGJ1dCB0aGUgLUFEVkFOQ0VEIGNhY2hlIGVudHJpZXMgYXJlIGNyZWF0ZWQKCSAgd2hlbiB3cml0aW5nIGZpbGUuIE1hcmtBc0FkdmFuY2VkIGFuZCBWYXJpYWJsZVJlcXVpcmVzIGFyZSBmaXhlZC4KCSAgU28gYXJlIGN1cnNlcyBndWkgYW5kIHdpemFyZAoKMjAwMi0wOS0xMSAxMzoyNyAgYW5keQoKCSogVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogUmVtb3ZlIE1hcmtfQVNfQURWQU5DRUQKCSAgZm9yIHNvbWUgdmFyaWFibGVzIHRoYXQgZG8gbm90IGV4aXN0CgoyMDAyLTA5LTExIDEyOjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IG1pbm9yIGZpeCBpbiB0cnkgY29tcGlsZSBjb2RlCgoyMDAyLTA5LTExIDA5OjU0ICBraW5nCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21EeW5hbWljTG9hZGVyLmN4eCwgY21EeW5hbWljTG9hZGVyLmgsCgkgIGNtRHluYW1pY0xvYWRlckMuYzogRU5IOiBQb2ludGVyLXRvLWZ1bmN0aW9uIHRvIHBvaW50ZXItdG8tZGF0YQoJICBjYXN0cyBhcmUgbm90IGV2ZW4gYWxsb3dlZCBpbiBzdHJpY3QgQy4gIFJlLWltcGxlbWVudGVkIHRoaXMKCSAgY29udmVyc2lvbiBpbiBwdXJlIEMrKyB1c2luZyBhIGNhc3RpbmcgdHJpY2sgd2l0aCBhbiBleHRyYSBsZXZlbAoJICBvZiBpbmRpcmVjdGlvbi4KCjIwMDItMDktMTEgMDg6NTIgIGtpbmcKCgkqIFNvdXJjZS9jbUR5bmFtaWNMb2FkZXJDLmM6IEVSUjogUmVtb3ZlZCBDKystc3R5bGUgY29tbWVudHMsIHVzZWQKCSAgQy1zdHlsZSBpbnN0ZWFkLgoKMjAwMi0wOS0xMCAxNzoyNCAga2luZwoKCSogU291cmNlL2NtYWtlLmN4eDogRVJSOiBBZGRlZCBtaXNzaW5nIGluY2x1ZGUgb2Ygc3RkaW8uaCBmb3IKCSAgc3ByaW50Zi4KCjIwMDItMDktMTAgMTY6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVHJ5Q29tcGlsZUNvbW1hbmQuY3h4LCBjbVRyeUNvbXBpbGVDb21tYW5kLmg6IHVwZGF0ZWQKCSAgc2lnbmF0dXJlCgoyMDAyLTA5LTEwIDE2OjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiB1cGRhdGVkIG1ha2VmaWxlIG1vdmVkCgkgIGNvbW1hbmRzIGludG8gY21ha2UgYW5kIGZpeGVkIHRyeSBjb21waWxlCgoyMDAyLTA5LTEwIDE2OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EdW1wRG9jdW1lbnRhdGlvbi5jeHg6IG1vdmVkIGR1bXAgZG9jcyBpbnRvIGNtYWtlCgoyMDAyLTA5LTEwIDE2OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbWFrZS5oLCBjbWFrZS5jeHg6IG1vdmVkIGNvbW1hbmRzIGludG8gY21ha2UKCjIwMDItMDktMTAgMTY6NDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwgY21HbG9iYWxHZW5lcmF0b3IuaCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oOiBtb2RpZmllZCBUcnlDb21waWxlCgoyMDAyLTA5LTEwIDE1OjQ2ICBraW5nCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21EeW5hbWljTG9hZGVyLmN4eCwgY21EeW5hbWljTG9hZGVyLmgsCgkgIGNtRHluYW1pY0xvYWRlckMuYzogRVJSOiBDYXN0IGZyb20gcG9pbnRlci10by1kYXRhIHRvCgkgIHBvaW50ZXItdG8tZnVuY3Rpb24gaXMgbm90IGFsbG93ZWQgaW4gQysrLiAgVGhlIGNhc3QgbmVlZGVkIGJ5CgkgIGNtRHluYW1pY0xvYWRlcjo6R2V0U3ltYm9sQWRkcmVzcyBpcyBub3cgaGlkZGVuIGluIGEgQyBmaWxlLgoKMjAwMi0wOS0xMCAxNTo0MCAga2luZwoKCSogU291cmNlL2NtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBGaXhlcyBmb3IgY29tZWF1CgkgIGNvbXBpbGVyLiAgTlVMTCBpcyBhIHBvaW50ZXIgb2YgdHlwZSB2b2lkKiwgYW5kIGNhbm5vdCBiZQoJICBjb21wYXJlZCBkaXJlY3RseSB3aXRoIG90aGVyIHBvaW50ZXIgdHlwZXMuICBXZSB1c2UgMCBpbnN0ZWFkLgoJICBBbHNvIGNoYW5nZWQgcHV0ZW52IHRvIHNldGVudiBmb3IgY29tZWF1IG9uIGxpbnV4LgoKMjAwMi0wOS0xMCAxNTo0MCAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBFTkg6IEFkZGVkIGRlZmluaXRpb24gb2YgX0JTRF9TT1VSQ0UKCSAgdG8gZW5hYmxlIHByb3BlciB1c2Ugb2YgUE9TSVggZnVuY3Rpb25zIG9uIGNvbWVhdSBpbiBsaW51eC4KCjIwMDItMDktMTAgMTU6MzggIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBGaXggZm9yIGJvcmxhbmQgb24gbGludXguICBXZQoJICBjYW5ub3QgZGlyZWN0bHkgY29tcGFyZSB0aGUgc3RfZGV2IGFuZCBzdF9pbm8gbWVtYmVycyBvZiBzdHJ1Y3QKCSAgc3RhdC4gIFVzZSBtZW1jbXAgaW5zdGVhZC4KCjIwMDItMDktMTAgMTU6MzcgIGtpbmcKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmN4eDogRVJSOiBSZW1vdmVkIHN0cmF5IHNlbWktY29sb24uCgoyMDAyLTA5LTEwIDE1OjM2ICBraW5nCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21SZWd1bGFyRXhwcmVzc2lvbi5jeHgsCgkgIGNtUmVndWxhckV4cHJlc3Npb24uaCwgY21NYWtlRGVwZW5kLmN4eCwKCSAgY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LCBjbUNQbHVnaW5BUEkuY3h4OiBFUlI6IEZpeGVzIGZvciBjb21lYXUKCSAgY29tcGlsZXIuICBOVUxMIGlzIGEgcG9pbnRlciBvZiB0eXBlIHZvaWQqLCBhbmQgY2Fubm90IGJlCgkgIGNvbXBhcmVkIGRpcmVjdGx5IHdpdGggb3RoZXIgcG9pbnRlciB0eXBlcy4gIFdlIHVzZSAwIGluc3RlYWQuCgoyMDAyLTA5LTEwIDE1OjM2ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFUlI6IEZpeCBmb3IgYm9ybGFuZCBvbiBsaW51eC4KCjIwMDItMDktMTAgMTM6MzIgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEZJWDogdHlwbyArIGJyaW5nIGJhY2sgdGhlCgkgIE9QRU5HTF9nbF9MSUJSQVJZIHBhdGggdGhhdCBjYW4gYmUgdXNlZCB0byBmaW5kIEdMVSAod2FzIHdpcGVkCgkgIG91dCBmcm9tIEZpbmRHTFUpCgoyMDAyLTA5LTEwIDEyOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IHJlbW92ZWQgZXh0cmEgRU5ESUYKCjIwMDItMDktMTAgMTA6MzUgIGtpbmcKCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFUlI6IFdlbnQgYmFjayB0byBvbGQtc3R5bGUgdGVzdCBmb3IKCSAgLUxBTkc6c3RkIG9uIHRoZSBTR0kuCgoyMDAyLTA5LTEwIDEwOjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVuZElmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmN4eDogYmV0dGVyIGVycm9yCgkgIGNoZWNraW5nIG9uIElmIHN0YXRlbWVudHMKCjIwMDItMDktMTAgMTA6MDIgIGtpbmcKCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFUlI6IEFDX1NVQlNUIHJlcGxhY2VkIHdpdGggQUNfREVGSU5FLgoJICBOZWVkZWQgdG8gZ2V0IGNvbmZpZ3VyZSBzY3JpcHQgdG8gY29ycmVjdGx5IHNldHVwIGNtQ29uZmlndXJlLmguCgoyMDAyLTA5LTEwIDA5OjUxICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEVSUjogUmVtb3ZlZCBhY2NpZGVudGFsIGNvbW1pdC4KCjIwMDItMDktMTAgMDk6NTAgIGtpbmcKCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvY21Db21tYW5kcy5jeHg6IEJVRzogTWlzc2luZwoJICBBQ19TVUJTVCBjb21tYW5kcyBhZGRlZC4KCjIwMDItMDktMDkgMDk6NTAgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogQWRkaW5nIEdMVSB0byB0aGUgT1BFTkdMX0xJQlJBUklFUyBvbmx5CgkgIGlmIGl0IGlzIGZvdW5kLgoKMjAwMi0wOS0wOCAxMDoxNSAgbWFydGluawoKCSogU291cmNlLzogY21HbG9iYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFZpc3VhbFN0dWRpbzZHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsIGNtYWtlLmN4eDogY29tcGlsZXIgd2FybmluZ3MKCjIwMDItMDktMDcgMjE6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsR2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmN4eCwKCSAgY21HbG9iYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmN4eDogY29tcGlsZXIgd2FybmluZ3MKCjIwMDItMDktMDcgMjE6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmg6IGNvbXBpbGVyIHdhcm5pbmcKCjIwMDItMDktMDcgMjE6MTggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBmb3IgYm9ybGFuZCBjb21waWxlcnMKCjIwMDItMDktMDYgMTg6MDUgIGtpbmcKCgkqIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eDogRVJSOiBGaXggZm9yIGJvcmxhbmQgaW4gZ2VuZXJhdGVkCgkgIGNvZGUuICB2dGtDb21tYW5kIGlzIGFtYmlndW91c2x5IGJvdGggYSBmdW5jdGlvbiBhbmQgYSBjbGFzcy4KCjIwMDItMDktMDYgMTc6MTkgIGtpbmcKCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBUZW1wbGF0ZXMvY2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2Njb25maWd1cmUuaW4sIFRlbXBsYXRlcy9jeHhjb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jeHhjb25maWd1cmUuaW46IEVOSDogSW1wcm92ZWQgY29uZmlndXJlIHRlc3QKCSAgaW1wbGVtZW50YXRpb25zIGJ5IHVzaW5nIEFDX1RSWV9DT01QSUxFLgoKMjAwMi0wOS0wNiAxNjozMCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiB1cGRhdGVkIHRvIGZpeCB0aGUgbG9uZwoJICBkZXBlbmQgbGluZSBpc3N1ZSBvbiBCb3JsYW5kCgoyMDAyLTA5LTA2IDE0OjAzICBzdGFycmV2ZWxkCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6CgkgIEVSUjogRml4IG9wZW5nbCBmaW5kaW5nIG9uIG9zeAoKMjAwMi0wOS0wNiAxMzo1NiAgYmFycmUKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRU5IOiBtYWtlIHN0dWIgc3R1ZmYgQURWQU5DRUQKCjIwMDItMDktMDYgMTM6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtYWtlbWFpbi5jeHgsCgkgIGNtYWtld2l6YXJkLmN4eCwgQ01ha2VMaXN0cy50eHQsIE1ha2VmaWxlLmluLAoJICBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IG5ldyBhcmNoCgoyMDAyLTA5LTA2IDEzOjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsIGNtYWtldGVzdC5jeHgsIGNtYWtlLmN4eCwgY21ha2UuaDoKCSAgbmV3IGFyY2gKCjIwMDItMDktMDYgMTM6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LCBjbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc01haW5Gb3JtLmg6IG5ldyBhcmNoaXRlY3R1cmUKCjIwMDItMDktMDYgMTE6NDcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZUJvcmxhbmRXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBmaXggY29tbWVudAoKMjAwMi0wOS0wNiAxMTowMCAgaXNjb3R0CgoJKiBNb2R1bGVzL3JlYWRtZS50eHQ6IEFkZCBpbXBvcnRhbnQgbWlzc2luZyB3b3JkIHRvIGRvY3VtZW50YXRpb24KCjIwMDItMDktMDYgMTA6NTUgIGlzY290dAoKCSogTW9kdWxlcy9yZWFkbWUudHh0OiBNb3JlIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGNvbnNpc3RlbnQKCSAgRmluZFhYWC5jbWFrZSBmaWxlcwoKMjAwMi0wOS0wNiAxMDo0NyAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiB1c2UgOjogcnVsZSBhbmQgbm90IGEKCSAgbG9uZyBsaW5lIGV4dGVuc2lvbgoKMjAwMi0wOS0wNiAwOToyNCAgbWFydGluawoKCSogU291cmNlL2NtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBtaW5vciBmaXgKCjIwMDItMDktMDYgMDg6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogbWlub3IgZml4ZXMKCjIwMDItMDktMDUgMTI6MDAgIGlzY290dAoKCSogTW9kdWxlcy86IEZpbmRGTFRLLmNtYWtlLCBGaW5kR0xVVC5jbWFrZSwgRmluZEdUSy5jbWFrZSwKCSAgRmluZE9wZW5HTC5jbWFrZSwgRmluZFgxMS5jbWFrZTogSGlkZSBsb3RzIG9mIHZhbHVlcyBpbiB0aGUKCSAgYWR2YW5jZWQgbGlzdCBGaXggc29tZSBidWdzIE9wZW5HTCBhbHdheXMgbmVlZHMgWDExIG9uIFVuaXgKCjIwMDItMDktMDUgMDk6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxvY2FsR2VuZXJhdG9yLmg6IG1hZGUgZGVzdHJ1Y3RvciB2aXJ0dWFsCgoyMDAyLTA5LTA1IDA4OjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EeW5hbWljTG9hZGVyLmN4eDogcmVtb3ZlZCBzb21lIGNvdXRzCgoyMDAyLTA5LTA0IDE1OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaDogbWFkZSBtZXRob2QgcHVibGljCgoyMDAyLTA5LTA0IDE1OjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Mb2NhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeGVzCgoyMDAyLTA5LTA0IDE1OjI0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTG9jYWxHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsR2VuZXJhdG9yLmg6IHVwZGF0ZXMKCjIwMDItMDktMDQgMTU6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvNkdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW82R2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5oLAoJICBjbUxvY2FsVmlzdWFsU3R1ZGlvN0dlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxWaXN1YWxTdHVkaW83R2VuZXJhdG9yLmg6IG5ldyBhcmNoCgoyMDAyLTA5LTA0IDE1OjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxCb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUxvY2FsQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmg6IGZpcnN0IGN1dCBhIG5ldyBhcmNoCgoyMDAyLTA5LTA0IDExOjE3ICBtYXJ0aW5rCgoJKiBUZXN0cy9XcmFwcGluZy9DTWFrZUxpc3RzLnR4dDogZml4ZWQgdGVzdCBmb3IgbmV3IGNtYWtlCgoyMDAyLTA5LTA0IDA5OjI0ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEVSUjogU3RpbGwgbmVlZCB0byBkZWZpbmUKCSAgT1BFTkdMX0lOQ0xVREVfUEFUSCBpbiBhZGRpdGlvbiB0byB0aGUgc3RhbmRhcmQKCSAgT1BFTkdMX0lOQ0xVREVfRElSIGZvciBiYWNrd2FyZCBjb21wYXRhYmlsaXR5LgoKMjAwMi0wOS0wMyAxMjoyOSAgaXNjb3R0CgoJKiBNb2R1bGVzL0ZpbmRNRkMuY21ha2U6IEEgc2ltcGxlIEZpbmRNRkMgbW9kdWxlIGZvciBjb25zaXN0ZW5jeQoKMjAwMi0wOS0wMyAxMDo0MSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiB1c2Ugd2luZG93cyBwYXRocyBmb3IKCSAgdXRpbGl0eSBkZXBlbmRzCgoyMDAyLTA5LTAzIDEwOjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHg6IEJVRzogYnVnIGZvciBtb3JlIHRoYW4gb25lIGN1c3RvbQoJICBjb21tYW5kcwoKMjAwMi0wOS0wMyAwOToxNCAgaXNjb3R0CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IERhcnQgbm93IGhhcyBhIGNvbmZpZ3VyZSBvcHRpb24KCjIwMDItMDktMDMgMDk6MDAgIGlzY290dAoKCSogTW9kdWxlcy9GaW5kUE5HLmNtYWtlOiBJIGNvcGllZCBhIGJpdCB0b28gbXVjaCBWWEwgZnVuY3Rpb25hbGl0eQoJICBoZXJlLiBPb3BzCgoyMDAyLTA5LTAzIDA4OjMzICBpc2NvdHQKCgkqIE1vZHVsZXMvRmluZFBlcmwuY21ha2U6IEFkZGVkIFBFUkxfRk9VTkQKCjIwMDItMDktMDMgMDg6MjQgIGlzY290dAoKCSogTW9kdWxlcy9GaW5kTVBFRy5jbWFrZTogQWRkIGFuIE1QRUcgZmluZGVyIGluIHRoZSBuZXcgZm9ybWF0IC0KCSAgZnVuY3Rpb25hbGl0eSBjb3BpZWQgZnJvbSBWWEwuCgoyMDAyLTA5LTAzIDA2OjEwICBpc2NvdHQKCgkqIE1vZHVsZXMvOiBGaW5kQVZJRmlsZS5jbWFrZSwgRmluZEdMVS5jbWFrZSwgRmluZEdMVVQuY21ha2UsCgkgIEZpbmRKUEVHLmNtYWtlLCBGaW5kT3BlbkdMLmNtYWtlLCBGaW5kUE5HLmNtYWtlLCBGaW5kVElGRi5jbWFrZSwKCSAgRmluZFgxMS5jbWFrZTogRml4ZWQgbWlzdGFrZSBpbiBjb21tZW50cyBUcmFuc2ZlcnJlZCBPUEVOR0wKCSAgZmluZGluZyBsb2dpYyBpbiBmcm9tIFZYTCBBZGRlZCBTb21lIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGgKCSAgQ01ha2UxLjQKCjIwMDItMDktMDIgMTc6MzQgIGlzY290dAoKCSogTW9kdWxlcy86IEZpbmRGTFRLLmNtYWtlLCBGaW5kR1RLLmNtYWtlOiBNb3ZlZCBGTFRLIGFuZCBHVEsgdG8KCSAgbmV3IEZpbmRYWFggc2NoZW1lLiBJbXBvcnRlZCBzb21lIGZ1bmN0aW9uYWxpdHkgZnJvbSBWWEwKCjIwMDItMDktMDIgMTc6MzMgIGlzY290dAoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiBzbWFsbCBidWcgZml4ZXMKCjIwMDItMDktMDIgMTc6MjkgIGlzY290dAoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBGTFRLX0ZMVUlEX0VYRSAtPgoJICBGTFRLX0ZMVUlEX0VYRUNVVEFCTEUgYmVjYXVzZSBNb2R1bGUgZmlsZXMgYXJlIG1vdmluZyB0bwoJICBjb25zaXN0ZW50IHNjaGVtZQoKMjAwMi0wOS0wMiAxNjo1OSAgaXNjb3R0CgoJKiBNb2R1bGVzLzogRmluZFF0LmNtYWtlLCBGaW5kVElGRi5jbWFrZTogRml4IEJ1Z3MKCjIwMDItMDktMDIgMTY6MjQgIGlzY290dAoKCSogTW9kdWxlcy9GaW5kWkxJQi5jbWFrZTogVGhpcyBmaWxlIHNob3VsZCBub3QgYmUgZW1wdHkKCjIwMDItMDktMDIgMTU6NDkgIGlzY290dAoKCSogTW9kdWxlcy86IEZpbmRaTElCLmNtYWtlLCBGaW5kWkxpYi5jbWFrZTogTW92ZWQgRmluZFpMaWIuY21ha2UgdG8KCSAgRmluZFpMSUIuY21ha2UKCjIwMDItMDktMDIgMTU6NDYgIGlzY290dAoKCSogTW9kdWxlcy86IEZpbmRQTkcuY21ha2UsIEZpbmRYMTEuY21ha2UsIEZpbmRaTGliLmNtYWtlOiBDb3BpZWQKCSAgdGhlIFgxMSBQTkcgYW5kIFpMSUIgZnVuY3RvaW5hbGl0eSBmcm9tIFZYTAoKMjAwMi0wOS0wMiAxNDowOCAgaXNjb3R0CgoJKiBNb2R1bGVzLzogRmluZFBORy5jbWFrZSwgRmluZFpMaWIuY21ha2U6IEFkZGluZyBabGliIGFuZCBQTkcgZmluZAoJICBtb2R1bGVzIGluIHRoZSBuZXcgZm9ybWF0CgoyMDAyLTA5LTAyIDEyOjU4ICBpc2NvdHQKCgkqIE1vZHVsZXMvRmluZFRJRkYuY21ha2U6IFRoaXMgRmluZCBNb2R1bGUgaXMgaW4gdGhlIG5ldyBzdHlsZQoKMjAwMi0wOS0wMiAxMjowNSAgaXNjb3R0CgoJKiBNb2R1bGVzLzogRmluZEpQRUcuY21ha2UsIEZpbmRRdC5jbWFrZSwgRmluZFdnZXQuY21ha2UsCgkgIEZpbmRaTGliLmNtYWtlOiBBZGQgaGVscGZ1bCBtZXNzYWdlIGZvciBRVCBXaW5kb3dzIHVzZXJzIEFkZAoJICBGaW5kWkxpYiBpbiBuZXcgZm9ybWF0IE1vdmUgRmluZEpQRUcgYW5kIEZJTkRXR0VUIG92ZXIgdG8gbmV3CgkgIHNjaGVtZQoKMjAwMi0wOS0wMiAwNzowMyAgaXNjb3R0CgoJKiBNb2R1bGVzL0ZpbmRBVklGaWxlLmNtYWtlLCBNb2R1bGVzL0ZpbmRRdC5jbWFrZSwKCSAgTW9kdWxlcy9MaW5rUVQuY21ha2UsIE1vZHVsZXMvcmVhZG1lLnR4dCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVFUV3JhcFVJQ29tbWFuZC5jeHg6CgkgIERlZmluZSBhIHNpbmdsZSBleHBlY3RlZCBmb3JtYXQgZm9yIHRoZSB2YWx1ZXMgZGVmaW5lZCBpbiBldmVyeQoJICBGaW5kWFhYLmNtYWtlIGZpbGUuICBVcGdyYWRlIGFsbCB0aGUgUVQgZnVuY3Rpb25hbGl0eSB0byB1c2UgdGhlCgkgIG5ldyBGaW5kWFhYLmNtYWtlIGZvcm1hdCBBZGQgYSBtb2R1bGUgZm9yIEFWSUZpbGUuCgoyMDAyLTA4LTMwIDE2OjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbFVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxVbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbUxvY2FsVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtR2xvYmFsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbUxvY2FsTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTG9jYWxOTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmg6IGluIHByb2dyZXNzCgoyMDAyLTA4LTMwIDE2OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUdsb2JhbEdlbmVyYXRvci5jeHgsIGNtR2xvYmFsR2VuZXJhdG9yLmgsCgkgIGNtTG9jYWxHZW5lcmF0b3IuY3h4LCBjbUxvY2FsR2VuZXJhdG9yLmg6IGluIHByb2dyZXNzIGNoZWNraW4KCjIwMDItMDgtMzAgMDk6NTQgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IGFkZCBycGNydDQubGliCgkgIGJlY2F1c2Ugb2YgQ01ha2VMaWIgbmVlZGluZyBpdAoKMjAwMi0wOC0yOSAwOTo0NSAgbWFydGluawoKCSogU291cmNlL2NtQ1BsdWdpbkFQSS5jeHg6IGV4dGVybiBDIGZpeGVzCgoyMDAyLTA4LTI4IDE2OjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY2NtYWtlLmN4eCwgY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzTWFpbkZvcm0uaDogc29tZSBjaGFuZ2VzIGluIGNhY2hlbWFuYWdlciBhbmQgc2luZ2xldG9ucwoKMjAwMi0wOC0yOCAxNjozNCAgbWFydGluawoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IG5vIG1vcmUgc2luZ2xldG9ucwoKMjAwMi0wOC0yOCAxNjozMyAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogbm93IG5lZWRzIGR5bmxpYgoJICBzdXBwb3J0CgoyMDAyLTA4LTI4IDE1OjA4ICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZV9yZWxlYXNlX2NvbmZpZ19jeWd3aW4sCgkgIGNtYWtlX3JlbGVhc2VfdW5peF9idWlsZC5zaCwgY21ha2VfcmVsZWFzZV91bml4X2NvbmZpZy5zaCwKCSAgY21ha2VfcmVsZWFzZV91bml4X3BhY2thZ2Uuc2g6IEVOSDogTW92ZWQgYnVpbGQgb2Ygc291cmNlIHRhcmJhbGwKCSAgdG8gcGFja2FnZSBzY3JpcHQuCgoyMDAyLTA4LTI4IDE0OjUxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuY3h4LCBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIGNtQ29tbWFuZHMuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwgY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5oLAoJICBjbU1TUHJvamVjdEdlbmVyYXRvci5jeHgsIGNtTVNQcm9qZWN0R2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LCBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHgsCgkgIGNtYWtld2l6YXJkLmN4eCwgY21ha2V3aXphcmQuaCwgTUZDRGlhbG9nL0NNYWtlU2V0dXAuY3BwLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsCgkgIE1GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwLCBNRkNEaWFsb2cvUHJvcGVydHlMaXN0Lmg6IGNoYW5nZWQKCSAgY2FjaGUgbWFuYWdlciBhbmQgcmVnaXN0ZXJlZCBnZW5lcmF0b3JzIHRvIG5vIGxvbmdlciBiZQoJICBzaW5nbGV0b25zCgoyMDAyLTA4LTI4IDE0OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVRyeUNvbXBpbGVDb21tYW5kLmN4eCwgY21UcnlDb21waWxlQ29tbWFuZC5oOiBhbiBlYXJseQoJICBjaGVja2luZyBub3QgY29tcGxldGUKCjIwMDItMDgtMjggMTQ6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogYWRkIGluY2x1ZGUgcGF0aHMgdG8KCSAgcmMgcHJvZ3JhbSBmb3IgcmVzb3VyY2UgZ2VuZXJhdGlvbgoKMjAwMi0wOC0yOCAxMDo0MyAga2luZwoKCSogVXRpbGl0aWVzL3NldHVwLmhpbnQ6IEVOSDogSW5jcmVtZW50ZWQgdmVyc2lvbiBudW1iZXIgZm9yIDEuNC00CgoyMDAyLTA4LTI4IDEwOjQwICBraW5nCgoJKiBVdGlsaXRpZXMvOiBjbWFrZS1jeWd3aW4uUkVBRE1FLCBzZXR1cC5oaW50OiBFTkg6IEFkZGluZyBjeWd3aW4KCSAgaW5zdGFsbGF0aW9uIGZpbGVzIHRvIGJyYW5jaC4KCjIwMDItMDgtMjggMTA6MjggIGhvZmZtYW4KCgkqIFV0aWxpdGllcy86IGNtYWtlLWN5Z3dpbi5SRUFETUUsIGNtYWtlX3JlbGVhc2VfY29uZmlnX2N5Z3dpbiwKCSAgc2V0dXAuaGludDogW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0wOC0yOCAwOTozMCAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfY29uZmlnX2RhcndpbjogU3dpdGNoZWQgdG8gcmVsZWFzZSBicmFuY2gKCSAgdGFnIGluc3RlYWQgb2Ygc3RpY2t5IHRhZy4KCjIwMDItMDgtMjggMDk6MjcgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX2NvbmZpZ19kYXJ3aW46IEVOSDogQWRkaW5nIHJlbGVhc2UKCSAgY29uZmlndXJhdGlvbiBmb3IgZGFyd2luLgoKMjAwMi0wOC0yOCAwOTowNyAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfdW5peF9wYWNrYWdlLnNoOiBCVUc6IERvbid0IGVyYXNlIHRhcmJhbGwKCSAgZGlyZWN0b3J5IGluIHBhY2thZ2luZyBzdGVwIGluIGNhc2UgdGhlcmUgaXMgYSBzb3VyY2UgdGFyYmFsbAoJICB0aGVyZS4KCjIwMDItMDgtMjggMDk6MDQgIGhvZmZtYW4KCgkqIFV0aWxpdGllcy86IGNtYWtlX3JlbGVhc2VfdW5peF9jb25maWcuc2gsCgkgIGNtYWtlX3JlbGVhc2VfdW5peF9wYWNrYWdlLnNoOiBjeWd3aW4gcmVsZWFzZQoKMjAwMi0wOC0yOCAwODo1MSAga2luZwoKCSogVXRpbGl0aWVzLzogY21ha2VfcmVsZWFzZV9jb25maWdfaHB1eCwgY21ha2VfcmVsZWFzZV9jb25maWdfaXJpeCwKCSAgY21ha2VfcmVsZWFzZV9jb25maWdfbGludXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX3N1bjogRU5IOgoJICBVcGRhdGVkIHJlbGVhc2Ugc2NyaXB0IGNvbmZpZ3VyYXRpb24gZm9yIENNYWtlIHJlbGVhc2UgMS40LjQuCgoyMDAyLTA4LTI3IDE0OjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eDogRml4IGJ1ZyBpbiB0cnlpbmcgdG8gc2V0IHN0ZGluZyB3aXRoCgkgIG51bGwKCjIwMDItMDgtMjcgMDk6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IEVOSDogZml4CgkgIHdhcm5pbmdzCgoyMDAyLTA4LTI3IDA4OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21Db21tYW5kcy5jeHg6IGZpeGVkIGJvb3RzdHJhcCBidWlsZCB0bwoJICBub3QgdXNlIExvYWRDT21tYW5kQ09tbWFuZAoKMjAwMi0wOC0yNiAxNToyMiAgbWFydGluawoKCSogU291cmNlLzogY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmN4eCwKCSAgY21HZXRTb3VyY2VGaWxlUHJvcGVydHlDb21tYW5kLmg6IHVwZGF0ZWQgdG8gbWF0Y2ggdGhlIFNFVAoKMjAwMi0wOC0yNiAxNToyMCAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogYWRkZWQgbmV3IGZvcm0gb2YgU2V0IHNvdXJjZQoJICBmaWxlIHByb3BlcnRpZXMgY29tbWFuZAoKMjAwMi0wOC0yNiAxMDo1MiAgbWFydGluawoKCSogU291cmNlLzogY21DUGx1Z2luQVBJLmN4eCwgY21DUGx1Z2luQVBJLmgsIGNtQ29tbWFuZHMuY3h4LAoJICBjbUxvYWRDb21tYW5kQ29tbWFuZC5jeHg6IG5vdyB1c2VzIHN0dWJzCgoyMDAyLTA4LTI2IDA4OjUzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eDogZml4ZWQgYnVnIG1heWJlCgoyMDAyLTA4LTIzIDE3OjAwICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvY3h4Y29uZmlndXJlLCBUZW1wbGF0ZXMvY3h4Y29uZmlndXJlLmluLCBjb25maWd1cmUsCgkgIGNvbmZpZ3VyZS5pbjogdHJ5IGFub3RoZXIgZmxhZyBmb3IgdGhlIGRlYyBjb21waWxlci4uLgoKMjAwMi0wOC0yMyAxNjoyNSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogbm8gbW9yZSBkbGwgZm9yIHBsdWdpbgoKMjAwMi0wOC0yMyAxNjoxNSAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogcmVtb2V2ZCBzaGFyZWQKCSAgbGliCgoyMDAyLTA4LTIzIDE2OjEyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNQbHVnaW5BUEkuaCwgY21DYWNoZU1hbmFnZXIuaCwgY21EaXJlY3RvcnkuaCwKCSAgY21SZWd1bGFyRXhwcmVzc2lvbi5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21TeXN0ZW1Ub29scy5oLAoJICBjbWFrZS5oLCBDTWFrZUxpc3RzLnR4dCwgY21MaXN0RmlsZUNhY2hlLmgsIGNtTWFrZWZpbGUuaCwKCSAgY21NYWtlZmlsZUdlbmVyYXRvci5oLCBjbWFrZXdpemFyZC5oOiByZW1vdmVkIHNoYXJlZCBsaWIgc3VwcG9ydAoKMjAwMi0wOC0yMyAxNjoxMiAgbWFydGluawoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IG1lbW9yeSBpc3N1ZQoKMjAwMi0wOC0yMyAxNToxMSAgbWFydGluawoKCSogU291cmNlLzogY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIGNtQ1BsdWdpbkFQSS5jeHg6IGNvbXBpbGVyIHdhcm5pbmdzCgoyMDAyLTA4LTIzIDEzOjQ3ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBmb3IKCSAgY3lnd2luCgoyMDAyLTA4LTIzIDEzOjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oLAoJICBjbWFrZS5jeHgsIGNtYWtlLmgsIGNtYWtlbWFpbi5jeHgsIGNtYWtldGVzdC5jeHgsCgkgIEN1cnNlc0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwgQ3Vyc2VzRGlhbG9nL2Zvcm0vQ01ha2VMaXN0cy50eHQsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcDogQlVHOiBhZGQgZXhwbGljaXQgY2xlYW4gdXAgb2YgdGhlCgkgIGNhY2hlbWFuYWdlciBhdCBleGl0IG9mIHByb2dyYW1zLCBzbyBkbGwgZGVzdHJ1Y3Rpb24gaXMgbm90IGEKCSAgcHJvYmxlbS4KCjIwMDItMDgtMjMgMDk6MDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiByZW1vdmUgdXNlIG9mCgkgIGdldHByb3BlcnR5YXNib29sCgoyMDAyLTA4LTIyIDE3OjA2ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBmb3IgYm9ybGFuZCBhbmQgYQoJICBzaGFyZWQgQ01ha2VMaWIKCjIwMDItMDgtMjIgMTY6NTcgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0OiBCVUc6IGZpeCBmb3IKCSAgYm9ybGFuZCBhbmQgYSBzaGFyZWQgQ01ha2VMaWIKCjIwMDItMDgtMjIgMTY6MTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBib3JsYW5kIG5lZWRzIHRvIGhhdmUKCSAgQlVJTERfU0hBUkVEX0xJQlMgb24gZm9yIGV4ZWN1dGFibGVzIHRvIHdvcmsgd2l0aCBjKysKCjIwMDItMDgtMjIgMTU6NTggIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQ6IGNvbXBsZXggdGVzdAoJICBuZWVkcyB0aGUgZGxsCgoyMDAyLTA4LTIyIDE0OjQxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DUGx1Z2luQVBJLmN4eDogbWlub3Igd2FybmluZyBmaXgKCjIwMDItMDgtMjIgMTQ6NDAgIGlzY290dAoKCSogTW9kdWxlcy86IEZpbmRBVklGaWxlLmNtYWtlLCByZWFkbWUudHh0OiBTb21lIG1vcmUgZXhwbGFuYXRpb24gb2YKCSAgYSBjb25zaXN0ZW50IHNjaGVtZQoKMjAwMi0wOC0yMiAxMTozNyAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFRlbXBsYXRlcy9jeHhjb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jeHhjb25maWd1cmUuaW46IEJVRzogZml4IGZvciBPU0YgY29tcGlsZXIgdG8gdXNlIGFuc2kKCSAgbW9kZSBmb3Igc3RyZWFtcwoKMjAwMi0wOC0yMiAxMToxMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogdXNlIGMgZmxhZ3MgZm9yCgkgIGNwcm9ncmFtcywgYW5kIGRvIG5vdCB1c2UgbGFyZ2UgY29tbWFuZCBsaW5lcyBmb3IgbGlua2luZwoKMjAwMi0wOC0yMiAwOToxNyAgbWFydGluawoKCSogU291cmNlL2NtQ1BsdWdpbkFQSS5jeHg6IGZpeGVkIHNvbWUgd2FybmluZ3MKCjIwMDItMDgtMjIgMDk6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuY3h4OiBmaXhlZCBzb21lIHdhcm5pbmdzCgoyMDAyLTA4LTIyIDA5OjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DUGx1Z2luQVBJLmg6IGZpeGVkIG5lc3RlZCBjb21tZW50CgoyMDAyLTA4LTIyIDA4OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBhZGRlZCBsaWIKCjIwMDItMDgtMjEgMTU6NTIgIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX3VuaXhfcGFja2FnZS5zaDogRU5IOiBBZGRlZCAtZmlsZXMgdG8gZW5kCgkgIG9mIGludGVybmFsIGJpbmFyeSB0YXJiYWxsIHRvIGRpc3Rpbmd1aXNoIGZyb20gdGhlIG91dGVyCgkgIHRhcmJhbGwncyBuYW1lLgoKMjAwMi0wOC0yMSAxNTozNyAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogbWlub3IgZml4ZXMgZm9yIG5ldwoJICBjYWNoZSBhcGkKCjIwMDItMDgtMjEgMTM6MTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtQ1BsdWdpbkFQSS5jeHg6IG1pbm9yCgkgIGJ1ZwoKMjAwMi0wOC0yMSAxMjowMiAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlTGlzdHMudHh0LCBDTWFrZVNldHVwRGlhbG9nLmNwcDogc3VwcG9ydAoJICBmb3IgZGxsCgoyMDAyLTA4LTIxIDEyOjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtTWFrZWZpbGUuaDogZGxsIHN1cHBvcnQKCjIwMDItMDgtMjEgMTI6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVJlZ3VsYXJFeHByZXNzaW9uLmg6IG1hZGUgaW50byBkbGwKCjIwMDItMDgtMjEgMTE6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtYWtlLmgsIGNtYWtld2l6YXJkLmgsIGNtYWtld2l6YXJkLmN4eDogc3VwcG9ydCBmb3IKCSAgcGx1Z2lucwoKMjAwMi0wOC0yMSAxMTo1OCAgbWFydGluawoKCSogU291cmNlLzogY21Mb2FkQ29tbWFuZENvbW1hbmQuY3h4LCBjbUxvYWRDb21tYW5kQ29tbWFuZC5oOiBhZGRpbmcKCSAgcGx1Z2luIHN1cHBvcnQKCjIwMDItMDgtMjEgMTE6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRHluYW1pY0xvYWRlci5jeHgsIGNtRHluYW1pY0xvYWRlci5oOiBhZGRlZCBwbHVnaW4KCSAgc3VwcG9ydAoKMjAwMi0wOC0yMSAxMTo1NSAgbWFydGluawoKCSogU291cmNlLzogY21TdGFuZGFyZEluY2x1ZGVzLmgsIENNYWtlTGlzdHMudHh0LAoJICBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsIGNtRGlyZWN0b3J5LmgsCgkgIGNtU3lzdGVtVG9vbHMuaCwgY21MaXN0RmlsZUNhY2hlLmg6IG1hZGUgQ01ha2VMaWIgc2hhcmVkIG9uCgkgIHdpbmRvd3MKCjIwMDItMDgtMjEgMTE6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ1BsdWdpbkFQSS5jeHgsIGNtQ1BsdWdpbkFQSS5oOiBhZGRlZCBDIFBsdWdpbiBBUEkKCSAgZmlyc3QgY3V0CgoyMDAyLTA4LTIxIDA5OjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiB1c2UgYyBjb21waWxlciBmb3IgbGluawoJICBvZiBjIHByb2dyYW1zLCBhbmQgdXNlIHRlbXAgZmlsZSBubWFrZSBzeW50YXggZm9yIGxpbmtpbmcgYyBhbmQKCSAgYysrIHByb2dyYW1zCgoyMDAyLTA4LTE5IDE1OjQwICBpc2NvdHQKCgkqIE1vZHVsZXMvOiBGaW5kUXQuY21ha2UsIExpbmtRVC5jbWFrZTogSSBoYXZlIHRlc3RlZCB0aGlzIHdpdGgKCSAgVlhML291ciBpbnRlcm5hbCBjb2RlLCBhbmQgaXQgd29ya3MgZm9yIG1lLgoKMjAwMi0wOC0xOSAxMDowNSAgaXNjb3R0CgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogSSBmaXJzdCBnbyBhdCBhIGNvbnNpc3RlbnQgRmluZFhYWC5jbWFrZQoJICBmaWxlCgoyMDAyLTA4LTE2IDExOjIwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWNyb0NvbW1hbmQuY3h4OiBtaW5vciBmaXgKCjIwMDItMDgtMTYgMTE6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZS5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eCwgY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuY3h4LCBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtTVNEb3RORVRHZW5lcmF0b3IuY3h4LAoJICBjbU1ha2VEZXBlbmQuY3h4LCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVRhcmdldC5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHg6CgkgIG1vZGlmaWVkIGhvdyBzb3VyY2UgZmlsZXMgc3RvcmUgcHJvcGVydGllcwoKMjAwMi0wOC0xNiAwOTo0NSAga2luZwoKCSogU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4OiBFUlI6IHVuc2lnbmVkIGludCAtPgoJICBzaXplX3QuCgoyMDAyLTA4LTE2IDA5OjMxICBraW5nCgoJKiBTb3VyY2UvY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHg6IEVOSDogQ2hhbmdlZCBjaGVjayBmb3IKCSAgd2hpY2ggdmVyc2lvbiBvZiBpbnN0YW50aWF0b3JzIHRvIGdlbmVyYXRlIHRvIGxvb2sgZm9yIGRlZmluaXRpb24KCSAgb2YgVlRLX1VTRV9JTlNUQU5USUFUT1JfTkVXIGluc3RlYWQgb2YgYW4gZXh0cmEgYXJndW1lbnQgdG8KCSAgVlRLX01BS0VfSU5TVEFOVElBVE9SLgoKMjAwMi0wOC0xNSAxNTowMSAga2luZwoKCSogU291cmNlLzogY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuaDogQlVHOiBBZGRlZAoJICBiYWNrd2FyZC1jb21wYXRhYmlsaXR5LiAgVGhlIG9sZCBpbnN0YW50aWF0b3Igc3R5bGUgd2lsbCBiZSB1c2VkCgkgIHVubGVzcyB0aGUgYXJndW1lbnQgVVNFX0lOU1RBTlRJQVRPUl9ORVcgaXMgZ2l2ZW4gdG8gdGVsbCB0aGUKCSAgY29tbWFuZCB0byBtYWtlIHVzZSBvZiB0aGUgaW5zdGFudGlhdG9yIG5ldyBmdW5jdGlvbnMgZXhwb3J0ZWQKCSAgZnJvbSBlYWNoIGNsYXNzJ3MgaW1wbGVtZW50YXRpb24gZmlsZS4KCjIwMDItMDgtMTUgMTQ6MzkgIGtpbmcKCgkqIFNvdXJjZS86IGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmg6IEVOSDogSW1wcm92ZWQgZ2VuZXJhdGVkCgkgIGluc3RhbnRpYXRvciB0byB1c2UgZXh0ZXJuIGRlY2xhcmF0aW9ucyB0byB3cmFwcGVycyBhcm91bmQgdGhlCgkgIE5ldygpIG1ldGhvZHMuICBUaGlzIGF2b2lkcyB0aGUgbmVlZCB0byBpbmNsdWRlIGVhY2ggY2xhc3MncwoJICBoZWFkZXIgaW4gYW4gaW5zdGFudGlhdG9yIHNvdXJjZS4gIFRoZSBpbnN0YW50aWF0b3IgY2xhc3MKCSAgaW1wbGVtZW50YXRpb25zIGNhbiBub3cgZml0IGluIGEgc2luZ2xlIHNvdXJjZSBmaWxlIHRoYXQgY29tcGlsZXMKCSAgcXVpY2tseS4KCjIwMDItMDgtMTUgMDk6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCAtRFdJTjMyIGZsYWcgZm9yCgkgIGJ1aWxkcwoKMjAwMi0wOC0xNCAxMTo0NCAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBFTkg6IFBsYXRmb3JtIGRlcGVuZGVudCBsaWJyYXJpZXMgYWRkZWQuCgoyMDAyLTA4LTEzIDE1OjQ3ICBtYXJ0aW5rCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBhZGRlZCBtYWNybyB0ZXN0CgoyMDAyLTA4LTEzIDE1OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21NYWNyb0NvbW1hbmQuY3h4LCBjbU1hY3JvQ29tbWFuZC5oOgoJICBhZGRlZCBuZXcgY29tbWFuZAoKMjAwMi0wOC0xMyAxMDo0NiAgbWFydGluawoKCSogU291cmNlLzogY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4OiBtZXJnZQoJICBmcm9tIG1haW4gdHJlZQoKMjAwMi0wOC0xMyAxMDowOCAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQ6IGFkZGVkIG1hbiBwYWdlCgoyMDAyLTA4LTEzIDEwOjA1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IHNvbWUgd2FybmluZyBhbmQgcHVyaWZ5IGZpeGVzCgoyMDAyLTA4LTEzIDEwOjA0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4OiBJRiBFbHNlIGltcHJvdmVtZW50cwoKMjAwMi0wOC0xMyAxMDowMyAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogbWVyZ2VzIGZyb20gdGhlIG1haW4KCSAgYnJhbmNoCgoyMDAyLTA4LTEzIDEwOjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21SZW1vdmVDb21tYW5kLmN4eDogbWVyZ2UgZnJvbSBtYWluIGJyYW5jaAoKMjAwMi0wOC0xMyAxMDowMSAgbWFydGluawoKCSogQ29weXJpZ2h0LnR4dDogbWVyZ2UgZnJvbSB0aGUgbWFpbiBicmFuY2gKCjIwMDItMDgtMTMgMTA6MDAgIG1hcnRpbmsKCgkqIGNtYWtlLjE6IHVwZGF0ZWQgZnJvbSBtYWluIGJyYW5jaAoKMjAwMi0wOC0xMyAwOTo1OSAgbWFydGluawoKCSogTW9kdWxlcy86IEZpbmRGTFRLLmNtYWtlLCBGaW5kVENMLmNtYWtlOiB1cGRhdGVzIGZyb20gdGhlIG1haW4KCSAgYnJhbmNoCgoyMDAyLTA4LTEyIDA4OjM5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21FbHNlQ29tbWFuZC5jeHg6IGNvbXBpbGVyIHdhcm5pbmcKCjIwMDItMDgtMDkgMTI6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuY3h4OgoJICBiZXR0ZXIgSUYgRUxTRSBoYW5kbGluZwoKMjAwMi0wOC0wOSAxMDowNCAgYmFycmUKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRklYOiBmaXggY29tbWl0IG1lc3N1cCAodGhpcyBjaGFuZ2Ugd2FzCgkgIGNvbW1pdHRlZCB0byB0aGUgYnJhbmNoIGluc3RlYWQgb2YgdGhlIG1haW4gdHJlZSwgdGh1cyB3YXMKCSAgd2lwZWQtb3V0IGxhdGVyKQoKMjAwMi0wOC0wOSAwODozMyAgYmFycmUKCgkqIE1vZHVsZXMvRmluZHd4V2luZG93cy5jbWFrZTogRklYOiAtIFdJTkRPV1MgZG9lcyBub3QgZXhpc3QsIHVzZQoJICBXSU4zMiAob3IgZGVmaW5lV0lORE9XUyBpZiBjeWd3aW4gY2FuIG5vdCBiZSB1c2VkIGluVW5peCBtb2RlPyksCgkgIC0gZml4IGFuIHVuLWNsb3NlZCBJRiwgLSB1c2Ugc2FtZSBwcmVmaXggZm9yIHZhcnMgKGFuZCBtYWtlIGl0CgkgIGFkdmFuY2VkKQoKMjAwMi0wOC0wOSAwNzo1NSAgYW5keQoKCSogTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlOiBUaGlzIGhvcGVmdWxseSBmaW5kcyB3eFdpbmRvd3Mgb24KCSAgVU5JWAoKMjAwMi0wOC0wOCAxNTozMCAgYW5keQoKCSogTW9kdWxlcy9GaW5kd3hXaW5kb3dzLmNtYWtlOiBBZGQgVU5JWCBzdXBwb3J0IGZvciBXWFdJTkRPV1MKCjIwMDItMDgtMDggMTU6MjkgIGFuZHkKCgkqIFNvdXJjZS86IGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaDogQWRkCgkgIHJldHVybiB2YWx1ZSBzdXBwb3J0IGFuZCBhZGQgZG9jdW1lbnRhdGlvbgoKMjAwMi0wOC0wOCAxNToxNCAga2luZwoKCSogQ29weXJpZ2h0LnR4dDogRU5IOiBVcGRhdGVkIGNvcHlyaWdodC4KCjIwMDItMDgtMDggMTU6MTMgIGFuZHkKCgkqIFNvdXJjZS86IGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaDogQWRkCgkgIG9wdGlvbiBvZiBzdG9yaW5nIG91dHB1dCB0byB0aGUgdmFyaWFibGUKCjIwMDItMDgtMDggMTM6NDEgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmR3eFdpbmRvd3MuY21ha2U6IEVOSDogZmlyc3Qgc3RhYiBhdCB3eFdpbmRvd3Mgc3VwcG9ydAoJICAod2luMzIpCgoyMDAyLTA4LTA4IDEyOjQ5ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogRU5IOiBBZGRpbmcgaW5zdGFsbGF0aW9uIGZvciBtYW4gcGFnZS4KCjIwMDItMDgtMDggMTI6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogaGFuZGxlIC5leGUgZXh0ZW5zaW9uCgkgIGZvciBjeWd3aW4KCjIwMDItMDgtMDggMTE6NTggIGtpbmcKCgkqIGNtYWtlLjE6IEVOSDogSW5pdGlhbCBjaGVja2luIG9mIHVuaXggbWFucGFnZS4KCjIwMDItMDgtMDggMDg6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogZml4ZWQgc29tZSBjb21waWxlciB3YXJuaW5ncwoJICBhbmQgbGVha3MKCjIwMDItMDgtMDcgMTg6MTIgIGtpbmcKCgkqIFV0aWxpdGllcy86IGNtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXgsIGNtYWtlX3JlbGVhc2VfY29uZmlnX2lyaXgsCgkgIGNtYWtlX3JlbGVhc2VfY29uZmlnX2xpbnV4LCBjbWFrZV9yZWxlYXNlX2NvbmZpZ19zdW4sCgkgIGNtYWtlX3JlbGVhc2VfdW5peC5zaCwgY21ha2VfcmVsZWFzZV91bml4X2J1aWxkLnNoLAoJICBjbWFrZV9yZWxlYXNlX3VuaXhfY29uZmlnLnNoLCBjbWFrZV9yZWxlYXNlX3VuaXhfcGFja2FnZS5zaDogRU5IOgoJICBTcGxpdCBpbnN0YWxsIHNjcmlwdCBpbnRvIHR3byBwYXJ0cy4JQWRkZWQgYmFzaWMgc3VwcG9ydCBmb3IKCSAgYWRkaW5nIG1vcmUgZmlsZXMgdG8gdGhlIGRpc3RyaWJ1dGlvbiBhbmQgY3JlYXRpbmcgcGFja2FnZXMuCgoyMDAyLTA4LTA3IDExOjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IGZpeGVkIHNvbWUgY29tcGlsZXIgd2FybmluZ3MKCSAgYW5kIGxlYWtzCgoyMDAyLTA4LTA3IDEwOjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IGZpeGVkIHNvbWUgY29tcGlsZXIgd2FybmluZ3MKCSAgYW5kIGxlYWtzCgoyMDAyLTA4LTA1IDE4OjA4ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogSW1hZ2VzIGxpYnJhcnkgYWRkZWQuIE5hbWVzIGZvcgoJICBkZWJ1Z2dpbiB2ZXJzaW9ucyBpbiB3aW5kb3dzIGFkZGVkLgoKMjAwMi0wOC0wNSAwOTo1MSAgbWFydGluawoKCSogU291cmNlL2NtUmVtb3ZlQ29tbWFuZC5jeHg6IG1pbm9yIGZpeAoKMjAwMi0wOC0wMiAxMzo0MyAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBGSVg6IG5hbWVzIHN0eWxlcyBmb3IgZmx0a2dsIGFuZAoJICBmbHRrZm9ybXMgYXJlIGRpZmZlcmVudCBpbiB3aW5kb3dzIGFuZCBsaW51eC4gICAgICAgQm90aCBzdHlsZXMKCSAgYXJlIG5vdyBzZWFyY2hlZCB0YWtpbmcgYWR2YW50YWdlIG9mIHRoZSBOQU1FUyBvcHRpb24gaW4KCSAgRklORF9MSUJSQVJZLgoKMjAwMi0wOC0wMiAxMjo1MSAgbWFydGluawoKCSogU291cmNlL2NtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5jeHg6IGR1aGhoaGhoCgoyMDAyLTA4LTAyIDA4OjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIGNtTWFrZWZpbGUuaDogdXBkYXRlcyBmcm9tIHRoZQoJICBtYWluIHRyZWUKCjIwMDItMDgtMDEgMjM6MDUgIGJhcnJlCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4OiBGSVg6IHB1dCBFeHBhbmRSZWdpc3RyeVZhbHVlKCkKCSAgYmFjayAoc2VlbXMgdG8gaGF2ZSBiZWVuIHJlbW92ZWQgYWNjaWRlbnRhbGx5IEkgZ3Vlc3MgaW4gMS4yNSkKCjIwMDItMDgtMDEgMTY6MjMgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBGSVg6IHN0dXBpZCBwYiBmaXhlZAoJICAoY2xvc2UgdG8gYmVpbmcgbWVkaWV2YWwnZWQgYnkgVGhlIEtlbikKCjIwMDItMDgtMDEgMTU6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4OiBubyBsb25nZXIgbmVlZCBhbiBhcmd1bWVudAoKMjAwMi0wOC0wMSAwOTo1MCAgbWFydGluawoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5oLCBTb3VyY2UvY21NYWtlZmlsZS5oLAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VDb21tYW5kTGluZUluZm8uY3BwLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlQ29tbWFuZExpbmVJbmZvLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLAoJICBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVGVzdERyaXZlci9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvVGVzdERyaXZlci90ZXN0MS5jeHgsCgkgIFRlc3RzL1Rlc3REcml2ZXIvdGVzdDIuY3h4LCBUZXN0cy9UZXN0RHJpdmVyL3Rlc3RBcmdzLmgsCgkgIFRlc3RzL1Rlc3REcml2ZXIvc3ViZGlyL3Rlc3QzLmN4eDogbWVyZ2VzIGZyb20gdGhlIG1haW4gYnJhbmNoCgoyMDAyLTA4LTAxIDA4OjQxICBtYXJ0aW5rCgoJKiBNb2R1bGVzLzogRmluZEdMVS5jbWFrZSwgRmluZEpOSS5jbWFrZSwgRmluZE9wZW5HTC5jbWFrZSwKCSAgRmluZFRDTC5jbWFrZTogbWVyZ2VzIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwMi0wNy0zMSAxMzo0NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogQlVHOiBmaXgganVtcCB0byBkaXJlY3RvcnkgYW5kIGJ1aWxkCgkgIGZvciBubWFrZSBpZiBsaWJyYXJ5IHBhdGggaXMgbm90IHNldC4gY29tYmluZQoJICBPdXRwdXRCdWlsZEV4ZWN1dGFibGVJbkRpciBhbmQgT3V0cHV0QnVpbGRMaWJyYXJ5SW5EaXIgaW50bwoJICBPdXRwdXRCdWlsZFRhcmdldEluRGlyCgoyMDAyLTA3LTMxIDExOjA4ICBtYXJ0aW5rCgoJKiBUZXN0cy9UZXN0RHJpdmVyL3Rlc3RBcmdzLmg6IG1pbm9yIGZpeCBmb3IgYyB0ZXN0cwoKMjAwMi0wNy0zMSAxMTowNyAgbWFydGluawoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBmaXhlZCBzdXBwb3J0IGZvciBDIHRlc3QKCSAgcHJvZ3JhbXMKCjIwMDItMDctMzEgMTA6MzQgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBGSVg6IENvbnZlcnRUb091dHB1dFBhdGgKCSAgcHV0cyAiIiBhcm91bmQgcGF0aC4gTm90IGNvbXBhdGlibGUgd2l0aCBHVUkgdXNlLgoKMjAwMi0wNy0zMSAwOToyOSAgYmFycmUKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogRklYOiA8c3RkbGliLmg+IGlzIGVub3VnaCB0bwoJICBnZXQgbWFsbG9jKCkvZnJlZSgpCgoyMDAyLTA3LTMwIDE2OjE5ICBtYXJ0aW5rCgoJKiBUZXN0cy9UZXN0RHJpdmVyLzogQ01ha2VMaXN0cy50eHQsIHRlc3QxLmN4eCwgdGVzdDIuY3h4LAoJICBzdWJkaXIvdGVzdDMuY3h4OiB1cGRhdGVkIHRvIG1vZHMgaW4gY29tbWFuZAoKMjAwMi0wNy0zMCAxNjoxOCAgbWFydGluawoKCSogU291cmNlLzogY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaDoKCSAgdXBkYXRlZCB0byBoYW5kbGUgZXh0ZW5zaW9ucwoKMjAwMi0wNy0zMCAxMDozMyAgYmFycmUKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogRklYOiBsYSBjb21tYW5kZSBjculhaXQgZHUKCSAgY29kZSBDKysuIER1IGNvZGUgQyBkZXZyYWl0IGZhaXJlIGwnYWZmYWlyZS4KCjIwMDItMDctMzAgMTA6MjMgIGJhcnJlCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEZJWDogbGEgY29tbWFuZGUgY3LpYWl0IGR1CgkgIGNvZGUgQysrLiBEdSBjb2RlIEMgZGV2cmFpdCBmYWlyZSBsJ2FmZmFpcmUuCgoyMDAyLTA3LTI5IDA5OjQ2ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRUQ0wuY21ha2U6IEVOSDogY2hhbmdlIHRoZSBzZWFyY2ggcGF0aCBvcmRlciAoaWYKCSAgc2V2ZXJhbCBUY2wvVGsgYXJlIGluc3RhbGxlZCwgdGhlICJjdXJyZW50IiB2ZXJzaW9uIGlzIGxpa2VseSB0bwoJICBiZSB0aGUgb25lIHRoYXQgaXMgYm91bmQgdG8gdGhlIHdpc2gvdGNsc2ggZm91bmQgaW4gdGhlIFBBVEgpCgoyMDAyLTA3LTI2IDE0OjA2ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRUQ0wuY21ha2U6IEVOSDogY2xlYW4gdGhlIG1vZHVsZSwgYWRkIGRlYnVnIGxpYnMKCjIwMDItMDctMjYgMTA6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtSVRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmg6IEJVRzoKCSAgT25seSBvbmUgZ2VuZXJhdGVkIFRjbCB3cmFwcGVyIHNvdXJjZSB3YXMgZ2V0dGluZyBhZGRlZCB0byB0aGUKCSAgcGFja2FnZSdzIGxpYnJhcnkuCgoyMDAyLTA3LTI2IDA5OjU0ICBraW5nCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IEJVRzogR2VuZXJhdGVkIGNhbGwgdG8KCSAgVGNsX0NyZWF0ZUNvbW1hbmQgZm9yIHZ0a0NvbW1hbmQgc2hvdWxkIGNhc3QgcG9pbnRlciB0byBleHRlcm4KCSAgIkMiIHZlcnNpb24uCgoyMDAyLTA3LTI1IDE2OjQ3ICBraW5nCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IEJVRzogR2VuZXJhdGVkIHZ0a0NvbW1hbmQKCSAgcHJvdG90eXBlIGNhbm5vdCBiZSBleHRlcm4gIkMiIGJlY2F1c2UgaXQgbWF5IG5vdCBtYXRjaCB3aXRoIHRoZQoJICB2ZXJzaW9uIGluIFZUSy4KCjIwMDItMDctMjUgMTY6NDEgIGFuZHkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogT2ssIG5vdyBjZCB3aWxsIHdvcmsgb24gd2luZG93cwoKMjAwMi0wNy0yNSAxNjoyNSAgd2lsbAoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBmaXhlZCB3YXJuaW5nCgoyMDAyLTA3LTI1IDExOjE3ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBGSVg6IHRoZSBzdHViIGxpYnMgd2VyZSBub3Qgc2VhcmNoZWQKCjIwMDItMDctMjUgMTE6MTAgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IEZJWDogdGhlIHN0dWIgbGlicyB3ZXJlIG5vdCBzZWFyY2hlZAoKMjAwMi0wNy0yNSAwOToxNiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBtYWtlZmlsZSBub3cgZG9lcyBub3QgaWdub3JlIE5PVEZPVU5EIGxpYnMKCSAgYW5kIGluY2x1ZGVzCgoyMDAyLTA3LTI1IDA4OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IG1ha2VmaWxlIG5vdyBpZ25vcmVzIE5PVEZPVU5EIGxpYnMgYW5kCgkgIGluY2x1ZGVzCgoyMDAyLTA3LTIyIDExOjAzICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV9jb25maWdfaXJpeDogRU5IOiBBZGRlZCByZWxlYXNlIHNjcmlwdAoJICBjb25maWd1cmF0aW9uIGZvciBJUklYIGJ1aWxkLgoKMjAwMi0wNy0yMiAxMDo1NyAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogYmV0dGVyIERyYWcmRHJvcCwgYW5kCgkgIGNoYW5nZSBzb3VyY2UgZGlyIGF1dG9tYXRpY2FsbHkgd2hlbiBidWlsZCBkaXIgaXMgY2hhbmdlZCBpbiB0aGUKCSAgR1VJCgoyMDAyLTA3LTIyIDEwOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHRvIHBhdGNoIDEKCjIwMDItMDctMjIgMTA6MzQgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy9DWFhDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogYmV0dGVyIGRvY3MgYW5kIHN1cHBvcnQKCSAgZm9yIG1pc2luZyBhcmdzCgoyMDAyLTA3LTIyIDEwOjMzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IG5vdyByZXBsYWNlcyBhcmdzIGV2ZW4gaWYgbm90IGRlZmluZWQKCjIwMDItMDctMjIgMTA6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogYWxsb3dzIGxlc3MgYXJndW1lbnRzIGNoYW5nZXMKCSAgZnJvbSBtYWluIHRyZWUKCjIwMDItMDctMjIgMTA6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogYWxsb3dzIG5vIGFyZ3VtZW50cwoKMjAwMi0wNy0yMSAxOToxMiAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogYWRkIERyYWcgJiBEcm9wCgkgIChkaXJlY3RvcnksIGZpbGUsIG9yIENNYWtlQ2FjaGUpLCBzdXBwb3J0IGZvciBTaG9ydGN1dCB0b28KCjIwMDItMDctMjEgMTU6NTYgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VDb21tYW5kTGluZUluZm8uY3BwLAoJICBDTWFrZUNvbW1hbmRMaW5lSW5mby5oLCBDTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5oOgoJICBFTkg6IGFkZCBEcmFnICYgRHJvcCAoZGlyZWN0b3J5LCBmaWxlLCBvciBDTWFrZUNhY2hlKSwgc3VwcG9ydAoJICBmb3IgU2hvcnRjdXQgdG9vCgoyMDAyLTA3LTIwIDA4OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21BZGREZWZpbml0aW9uc0NvbW1hbmQuY3h4OiBtb2RpZmllZCB0byBhY2NlcHQgbm8KCSAgYXJndW1lbnRzCgoyMDAyLTA3LTE5IDE1OjQ5ICBtYXJ0aW5rCgoJKiBUZW1wbGF0ZXMvQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IGZpeGVkIHNvbWUgZW1wdHkKCSAgZGVzY3JpcHRpb25zCgoyMDAyLTA3LTE5IDE0OjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IGZ1bGwgdmFyaWFibGUgcmVwbGFjZW1lbnQgYW5kIHJlbW92YWwgb3IKCSAgZW1wdHkgYXJndW1lbnRzCgoyMDAyLTA3LTE5IDE0OjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHg6IGRvZXMgbm90IG5lZWQgYSBzZWNvbmQKCSAgYXJndW1lbnQKCjIwMDItMDctMTggMTg6NDMgIHN0YXJyZXZlbGQKCgkqIE1vZHVsZXMvOiBGaW5kR0xVLmNtYWtlLCBGaW5kT3BlbkdMLmNtYWtlOiBFUlI6IHJlbW92ZSBhdXRvbWF0aWMKCSAgQ2FyYm9uIGZyYW1ld29yayBvbiBvc3gKCjIwMDItMDctMTcgMTY6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4OiBmaXggZm9yIGluc3RhbGwgd2l0aCBwYXRocwoKMjAwMi0wNy0xNyAxNTo1NyAgbWFydGluawoKCSogU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHg6IGZpeGUgZm9yIGZpbGVzIHdpdGggcGF0aHMKCjIwMDItMDctMTcgMTE6NTMgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEZpeCBjaGFuZ2luZyBvZiBkaXJlY3RvcmllcyB1c2luZyBjbVN5c3RlbVRvb2xzCgkgIFJ1bkNvbW1hbmQgZmVhdHVyZQoKMjAwMi0wNy0xNyAxMDo1MiAgbWFydGluawoKCSogU291cmNlLzogY21Gb3JFYWNoQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHg6IGZpeCBmb3IgSUYgc3RhdGVtZW50cyBpbnNpZGUgb2YgRm9yZWFjaCBsb29wcwoKMjAwMi0wNy0xNyAxMDo0OCAgbWFydGluawoKCSogU291cmNlL2NtRm9yRWFjaENvbW1hbmQuY3h4LCBTb3VyY2UvY21Gb3JFYWNoQ29tbWFuZC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBmaXhlZCBpZiBzdGF0ZW1lbnRzCgkgIGluc2lkZSBhIGZvcmVhY2gKCjIwMDItMDctMTYgMTc6NDIgIGtpbmcKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBJRiBpbnNpZGUgYSBGT1JFQUNILgoKMjAwMi0wNy0xNSAxMTozNyAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfY29uZmlnX2hwdXg6IEVOSDogQWRkaW5nIHJlbGVhc2Ugc2NyaXB0CgkgIGNvbmZpZ3VyYXRpb24gZm9yIEhQVVguZQoKMjAwMi0wNy0xNSAxMToxMyAga2luZwoKCSogVXRpbGl0aWVzL2NtYWtlX3JlbGVhc2VfY29uZmlnX3N1bjogRU5IOiBBZGRlZCByZWxlYXNlCgkgIGNvbmZpZ3VyYXRpb24gZmlsZSBmb3IgU3VuLgoKMjAwMi0wNy0xNSAxMDo0OCAga2luZwoKCSogVXRpbGl0aWVzLzogY21ha2VfcmVsZWFzZV9jb25maWdfbGludXgsIGNtYWtlX3JlbGVhc2VfdW5peC5zaDoKCSAgRU5IOiBNYWRlIHJlbGVhc2Ugc2NyaXB0IG1vcmUgZ2VuZXJpYyBmb3IgY3JlYXRpbmcgc3RhdGljIGFuZAoJICBzaGFyZWQgcmVsZWFzZXMuCgoyMDAyLTA3LTE1IDEwOjA5ICBraW5nCgoJKiBVdGlsaXRpZXMvY21ha2VfcmVsZWFzZV9jb25maWdfbGludXg6IEVOSDogUmVsZWFzZSBzY3JpcHQKCSAgY29uZmlndXJhdGlvbiBmaWxlIGZvciBsaW51eC4KCjIwMDItMDctMTUgMTA6MDggIGtpbmcKCgkqIFV0aWxpdGllcy9jbWFrZV9yZWxlYXNlX3VuaXguc2g6IEVOSDogUHJvdG95cGUgdW5peCByZWxlYXNlCgkgIHNjcmlwdC4KCjIwMDItMDctMTUgMDk6NTUgIGtpbmcKCgkqIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dDogRVJSOiBDWFhDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZSBhbmQKCSAgQ0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlIG5lZWQgLmluIGV4dGVuc2lvbi4KCjIwMDItMDctMTUgMDk6NDYgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4OiBCVUc6IE9ubHkgdGhlIGxhc3QgZXh0ZW5zaW9uCgkgIHNob3VsZCBiZSByZW1vdmVkLgoKMjAwMi0wNy0xNSAwOTo0NSAga2luZwoKCSogU291cmNlLzogY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsRmlsZXNDb21tYW5kLmg6IEJVRzoKCSAgSU5TVEFMTF9GSUxFUyBjb21tYW5kIHNob3VsZCByZW1vdmUgdGhlIGV4dGVuc2lvbiBvZiBhIGZpbGUKCSAgYmVmb3JlIGFkZGluZyB0aGUgdXNlciBwcm92aWRlZCBleHRlbnNpb24uCgoyMDAyLTA3LTE1IDA5OjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZGVkCgkgIEdldEZpbGVuYW1lV2l0aG91dExhc3RFeHRlbnNpb24uCgoyMDAyLTA3LTE1IDA5OjIzICBraW5nCgoJKiBUZW1wbGF0ZXMvQ01ha2VMaXN0cy50eHQ6IEVSUjogSW5zdGFsbCBmb3IKCSAgQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UgYW5kIENDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZSBuZWVkIC5pbgoJICBleHRlbnNpb24uCgoyMDAyLTA3LTE1IDA5OjIyICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IEVOSDogQWRkZWQgL3Vzci9sb2NhbC9saWIvamF2YSBzZWFyY2gKCSAgcGF0aHMuCgoyMDAyLTA3LTE1IDA4OjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuaDogZml4CgkgIGluc3RhbGwgdGFyZ2V0CgoyMDAyLTA3LTEyIDExOjE3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRKYXZhLmNtYWtlOiBtZXJnZWQgbW9kdWxlIGludG8gYnJhbmNoCgoyMDAyLTA3LTEyIDExOjEwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBtaW5vciB3YXJuaW5nIGZpeAoKMjAwMi0wNy0xMSAxNDo1OCAgbWFydGluawoKCSogU291cmNlL2NtSWZDb21tYW5kLmN4eDogZml4IHdhcm5pbmcKCjIwMDItMDctMTEgMTQ6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogbWVyZ2UgZnJvbSB0aGUgbWFpbiB0cmVlCgoyMDAyLTA3LTExIDE0OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogZml4IGZvciBjb21waWxlIHdpdGggaHAKCjIwMDItMDctMTEgMTQ6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IG1lcmdlZCBzb21lIHVwZGF0ZXMsIHRoZSBJRgoJICBjaGVja2luZwoKMjAwMi0wNy0xMSAxMzo1OCAgbWFydGluawoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21ha2UuY3h4OiB1cGRhdGVzIGZyb20gdGhlIG1haW4gdHJlZQoKMjAwMi0wNy0xMCAxNjowNyAgbWFydGluawoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBmaXggd2FybmluZyBvbiBTdW4KCjIwMDItMDctMTAgMTQ6MzQgIGFuZHkKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEFkZCBjb21tYW5kIHRoYXQgcnVucyBwcm9ncmFtIGluIGdpdmVuCgkgIGRpcmVjdG9yeQoKMjAwMi0wNy0xMCAxMTozOCAgbWFydGluawoKCSogU291cmNlLzogY21FbHNlQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogYmV0dGVyIGVycm9yIGhhbmRsaW5nIHdpdGggaWYKCSAgc3RhdGVtZW50cwoKMjAwMi0wNy0xMCAwOTozMyAgYW5keQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRml4IHByb2JsZW0gd2hlbiB1c2luZyBOTWFrZS4KCSAgVGhpcyBnZW5lcmF0ZWQgbGluZXMgd2l0aG91dCBzcGFjZSBzbyBubWFrZSBnb3QgYWxsIGNvbmZ1c2VkCgoyMDAyLTA3LTA4IDA5OjMwICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRKYXZhLmNtYWtlOiBBZGQgbW9kdWxlIHRoYXQgZmluZHMgamF2YSBleGVjdXRhYmxlcy4KCSAgVGhpcyBtb2R1bGUgc2hvdWxkIGZpbmQgamF2YSwgamF2YWMsIGFuZCBqYXIuCgoyMDAyLTA3LTAyIDA5OjU4ICBtYXJ0aW5rCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogbWVyZ2VzIGZyb20gbWFpbiB0cmVlCgoyMDAyLTA3LTAyIDA5OjU2ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBtZXJnZXMgd2l0aCBtYWluIHRyZWUKCjIwMDItMDctMDIgMDk6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21DTWFrZU1pbmltdW1SZXF1aXJlZC5jeHgsCgkgIGNtQ29uZmlndXJlLmNtYWtlLmguaW4sIGNtQ29uZmlndXJlLmguaW4sCgkgIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBjbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmgsCgkgIGNtRFNXV3JpdGVyLmN4eCwgY21FbHNlQ29tbWFuZC5jeHgsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaCwKCSAgY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GdW5jdGlvbkJsb2NrZXIuaCwgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuY3h4LAoJICBjbUlUS1dyYXBUY2xDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oLAoJICBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LCBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIGNtTVNEb3RORVRHZW5lcmF0b3IuaCwgY21NYWtlRGVwZW5kLmN4eCwKCSAgY21NYWtlRGVwZW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbVFUV3JhcENQUENvbW1hbmQuY3h4LCBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZS5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmN4eCwgY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21ha2UuY3h4LCBjbWFrZS5oLCBjdGVzdC5jeHg6IG1hc3NpdmUgbWVyZ2UgZnJvbSBtYWluIHRyZWUKCjIwMDItMDctMDIgMDk6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiB1cGRhdGVzCgoyMDAyLTA3LTAyIDA4OjI0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBmaXhlZCB3YXJuaW5nCgoyMDAyLTA3LTAxIDA4OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oOgoJICBjb25zb2xpZGF0ZWQgSUYgaGFuZGxpbmcgYW5kIGFkZGVkIGNoZWNrcyBmb3IgYmFkIGFyZ3VtZW50cwoKMjAwMi0wNi0zMCAxMzo1MyAgbWFydGluawoKCSogU291cmNlLzogY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4OgoJICBmaXhlZCBjb21tYW5kcyB0aGF0IHdlcmUgc2V0dGluZyBkZWZpbml0aW9ucyBpbiBmaW5hbCBwYXNzIHRvIHNldAoJICBkZWZpbml0aW9ucyBpbiBpbml0aWFsIHBhc3MKCjIwMDItMDYtMjkgMjA6MDQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBmaXhlZAoJICBjb21tYW5kcyB0aGF0IHdlcmUgc2V0dGluZyBkZWZpbml0aW9ucyBpbiBmaW5hbCBwYXNzIHRvIHNldAoJICBkZWZpbml0aW9ucyBpbiBpbml0aWFsIHBhc3MKCjIwMDItMDYtMjggMTA6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eDogUmVtb3ZlIGFub3RoZXIgd2FybmluZyBpbiB0aGUKCSAgcHl0aG9uIHdyYXBwaW5nCgoyMDAyLTA2LTI4IDEwOjE4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlLmg6IHBlcmZvcm1hbmNlIGZpeAoKMjAwMi0wNi0yOCAwOTo0MyAgYW5keQoKCSogU291cmNlL2NtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4OiBBZGQgcmVtb3Zpbmcgb2Ygd2FybmluZ3MgYW5kCgkgIGFkZCBjb21tZW50IGFib3V0IHRoZSBmaWxlIGJlaW5nIGdlbmVyYXRlZCBpbiBDTWFrZQoKMjAwMi0wNi0yOCAwOToyMSAgbWFydGluawoKCSogU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IGJ1ZyBmaXggZm9yIGF1eCBzcmMgZGlycwoKMjAwMi0wNi0yOCAwODo1NyAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtU291cmNlRmlsZS5oOiBtaW5vciBjbGVhbnVwCgoyMDAyLTA2LTI3IDIxOjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmg6IHBlcmZvcm1hbmNlIGlucHJvdmVtZW50cwoKMjAwMi0wNi0yNyAxNjo0NyAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBidWcgZml4CgoyMDAyLTA2LTI3IDE2OjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBidWcgZml4CgoyMDAyLTA2LTI3IDE2OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBidWcgZml4CgoyMDAyLTA2LTI3IDE2OjA1ICBtYXJ0aW5rCgoJKiBUZXN0cy9TaW1wbGUvQ01ha2VMaXN0cy50eHQ6IGEgbWlub3IgZml4IHRvIG1ha2UgbXkgbGlmZSBlYXNpZXIKCjIwMDItMDYtMjcgMTU6NTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsCgkgIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4LCBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsCgkgIFNvdXJjZS9jbVFUV3JhcENQUENvbW1hbmQuY3h4LCBTb3VyY2UvY21RVFdyYXBVSUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogcmVtb3ZlZCBhbGwKCSAgc291cmNlIGxpc3RzIGZyb20gdGhlIHN5c3RlbSBhbmQgbWFkZSB0aGVtIHZlY3RvcnMuIEFsc28gYXBwZW5kZWQKCSAgX0NNQUtFX1BBVEggdG8gdGhlIGVuZCBvZiB0aGUgYXV0b21hdGljIGNhY2hlIGVudHJpZXMgZm9yCgkgIGV4ZWN1dGFibGVzIGFuZCBsaWJyYXJpZXMuIE9kZHMgb2YgYWxsIHRoZXNlIGNoYW5nZXMgd29ya2luZyBhcmUKCSAgc2xpbSBidXQgY21ha2UgYnVpbGRzIGFuZCBwYXNzZXMgYWxsIGl0cyB0ZXN0cy4gVlRLNDAgc3RhcnRzCgkgIGJ1aWxkaW5nCgoyMDAyLTA2LTI3IDA5OjM1ICBraW5nCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IEJVRzogQ01ha2UgY3Jhc2hlZCBpZiBpdCBmYWlsZWQgdG8KCSAgZmluZCBpdHMgb3duIGV4ZWN1dGFibGUuICBBbHNvIGFkZGVkIGJldHRlciBlcnJvciBtZXNzYWdlcyB3aGVuCgkgIHRoaXMgb2NjdXJzLgoKMjAwMi0wNi0yNSAwOTo1OSAgaG9mZm1hbgoKCSogVGVzdHMvU2ltcGxlL0NNYWtlTGlzdHMudHh0OiBhZGQgYSB0ZXN0IHdpdGggbm8gZXh0ZW5zaW9uCgoyMDAyLTA2LTI1IDA5OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBCVUc6IHRyeSB0byB0ZWxsIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KCSAgdmFyaWFibGVzIHdpdGggc291cmNlcyBhbmQgb3RoZXIgdmFyaWFibGVzCgoyMDAyLTA2LTI1IDA5OjE4ICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEJVRzogUmVzdWx0IGZyb20gb3N0cnN0cmVhbTo6c3RyKCkKCSAgY2FuIGJlIGEgbnVsbCBwb2ludGVyLgoKMjAwMi0wNi0yNCAxODoxOSAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBCVUc6IEF0dGVtcHQgdG8gZml4CgkgIG9zdHJzdHJlYW06OnN0cigpIHdyYXBwZXIgZm9yIGJyb2tlbiBwbGF0Zm9ybXMuCgoyMDAyLTA2LTI0IDE2OjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21UYXJnZXQuY3h4OiBtb2RpZmllZCB0byBoYW5kbGUgc3JjIGxpc3QgdmVjdG9ycyB3aXRob3V0CgkgIHByb3BlciBkb2xsYXIgc2lnbnMKCjIwMDItMDYtMjQgMTQ6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IEJVRzogbWFrZSBzdXJlIHdpbmRvd3MgcGF0aHMgYXJlIHVzZWQgZm9yIHRoZQoJICBjb21tYW5kIG9yIGl0IHdpbGwgbm90IHdvcmsgZm9yIHdpbiA5OAoKMjAwMi0wNi0yMSAxMTozNSAgbWFydGluawoKCSogVGVtcGxhdGVzLzogQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIGN4eGNvbmZpZ3VyZSwKCSAgY3h4Y29uZmlndXJlLmluOiBub3cgbG9va3MgZm9yIHN0cmluZ3N0cmVhbSBhcyB3ZWxsLCBmcm9tIHRoZQoJICBtYWluIHRyZWUKCjIwMDItMDYtMjEgMTE6MjUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHg6IGZpeGVkIGlmIG1hdGNoZXMgYnVnCgoyMDAyLTA2LTIxIDEwOjMxICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVSUjogdXNpbmcgZGVjbGFyYXRpb24gdG8gbW92ZQoJICBzdHJlYW1zIGludG8gc3RkIG5hbWVzcGFjZSBuZWVkcyB0byBicmluZyB1cCBvc3Ryc3RyZWFtIGFuZAoJICBvc3RyaW5nc3RyZWFtLCBub3Qgc3Ryc3RyZWFtIGFuZCBzdHJpbmdzdHJlYW0uCgoyMDAyLTA2LTIxIDEwOjI2ICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vZnJtX2RyaXZlci5jOiBFUlI6IFJlbW92ZWQgbW9zdCBvZiB0aGUKCSAgcmVwZWF0ZWQgY3Vyc2VzIGRlY2xhcmF0aW9ucy4gIFRoZSBjYXVzZSBlcnJvcnMgb24gb3RoZXIKCSAgcGxhdGZvcm1zLiAgR3JycnIuLgoKMjAwMi0wNi0yMSAwOToyNSAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZybV9kcml2ZXIuYzogRVJSOiBBZGRlZCBmdW5jdGlvbgoJICBkZWNsYXJhdGlvbnMgZnJvbSBjdXJzZXMuaC4gIFRoZXkgYXJlIG5vdCBwcmVzZW50IG9uIHNvbWUKCSAgcGxhdGZvcm1zLiAgRml4ZXMgd2FybmluZ3MgYWJvdXQgaW1wbGljaXQgZGVjbGFyYXRpb25zLgoKMjAwMi0wNi0yMSAwOTowMCAga2luZwoKCSogVGVzdHMvOiBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbjogRU5IOiBBZGRlZAoJICBjb25maWd1cmF0aW9uIG9mIENNQUtFX05PX0FOU0lfU1RSSU5HX1NUUkVBTS4gIEl0IGlzIGRlZmluZWQgd2hlbgoJICB0aGUgc3N0cmVhbSBoZWFkZXIgZG9lcyBub3QgZXhpc3QuCgoyMDAyLTA2LTIxIDA4OjQyICBraW5nCgoJKiBjb25maWd1cmUsIFRlbXBsYXRlcy9jeHhjb25maWd1cmU6IEVSUjogUmFuIGF1dG9jb25mIG9uCgkgIGNvcnJlc3BvbmRpbmcgZml4ZXMgdG8gY29uZmlndXJlLmluIGFuZCBjeHhjb25maWd1cmUuaW4uCgoyMDAyLTA2LTIxIDA4OjM5ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvY3h4Y29uZmlndXJlLmluOiBmaXggZm9yIHNzdHJlYW0KCjIwMDItMDYtMjEgMDg6MzggIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZS5pbjogZml4IHRvIHNzdHJpbmcgc3R1ZmYKCjIwMDItMDYtMjAgMTA6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHg6IG1vZGlmaWVkIE1BVENIRVMgdG8KCSAgaGFuZGxlIG5vbiB2YXJpYWJsZXMKCjIwMDItMDYtMjAgMTA6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogRVJSOiBjbVN0cmluZ1N0cmVhbSBpcyB0YWtpbmcgdGhlCgkgIGZ1bmN0aW9uYWxpdHkgb2Ygb3N0cmluZ3N0cmVhbSBhbmQgb3N0cnN0cmVhbSwgbm90IHN0cmluZ3N0cmVhbQoJICBhbmQgc3Ryc3RyZWFtLgoKMjAwMi0wNi0yMCAxMDoxOSAga2luZwoKCSogVGVtcGxhdGVzL0NYWENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBCVUc6CgkgIENNQUtFX05PX0FOU0lfU1RSSU5HX1NUUkVBTSBuZWVkcyB0byBiZSBjb3BpZWQgZnJvbSB0aGUKCSAgY3h4Y29uZmlndXJlIHJlc3VsdHMuCgoyMDAyLTA2LTE5IDE1OjIxICBraW5nCgoJKiBTb3VyY2UvOiBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LCBjbUNvbmZpZ3VyZS5jbWFrZS5oLmluLAoJICBjbUNvbmZpZ3VyZS5oLmluLCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIGNtYWtlLmN4eDogRU5IOiBBZGRlZCBjbVN0cmluZ1N0cmVhbSBjbGFzcyB0byB3cmFwCgkgIHN0ZDo6c3RyaW5nc3RyZWFtIG9yIHN0ZDo6c3Ryc3RyZWFtIGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0uCgkgIFRoZSBpbnRlcmZhY2UgaXMgdGhhdCBvZiBzdGQ6OnN0cmluZ3N0cmVhbSwgc28gbm8gImVuZHMiIG9yCgkgICJyZGJ1ZigpLT5mcmVlemUoMCkiIGxpbmVzIGFyZSBuZWVkZWQuCgoyMDAyLTA2LTE5IDE1OjA5ICBraW5nCgoJKiBjb25maWd1cmUsIFRlbXBsYXRlcy9jeHhjb25maWd1cmU6IEVOSDogUmUtcmFuIGF1dG9jb25mIHRvCgkgIGluY2x1ZGUgY2hhbmdlcyB0byBjb3JyZXNwb25kaW5nIGNvbmZpZ3VyZSBpbnB1dC4gIFRoaXMgYWRkcyBhCgkgIHRlc3QgZm9yIHRoZSBhdmFpbGFiaWxpdHkgb2Ygc3N0cmVhbS4KCjIwMDItMDYtMTkgMTU6MDUgIGtpbmcKCgkqIGNvbmZpZ3VyZS5pbiwgVGVtcGxhdGVzL2N4eGNvbmZpZ3VyZS5pbjogRU5IOiBBZGRlZCB0ZXN0IGZvcgoJICBzc3RyZWFtIGhlYWRlci4gIERlZmluZXMgQ01BS0VfTk9fQU5TSV9TVFJJTkdfU1RSRUFNIGlmIHRoZQoJICBoZWFkZXIgZG9lc24ndCBleGlzdC4KCjIwMDItMDYtMTkgMTQ6MzUgIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogRmluZExpYnJhcnkgc3VwcG9ydHMgLk5ldCBzcGVjaWZpYwoJICBsaWIgZGlycwoKMjAwMi0wNi0xOSAxMzo0OSAgbWFydGluawoKCSogU291cmNlLzogY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwKCSAgY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBjbUZ1bmN0aW9uQmxvY2tlci5oLCBjbU1ha2VmaWxlLmgsCgkgIGNtVGFyZ2V0LmN4eDogbWVyZ2VzIGZyb20gbWFpbiB0cmVlCgoyMDAyLTA2LTE5IDEzOjI4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlLmN4eDogbW9kaWZpZWQgY3JlYXRlIHRlc3Qgc291cmNlIHRvIGNyZWF0ZSBhCgkgIHZlY3RvcgoKMjAwMi0wNi0xOSAxMzoxNCAgbWFydGluawoKCSogTW9kdWxlcy86IERhcnQuY21ha2UsIEZpbmRHTFUuY21ha2UsIEZpbmRHTFVULmNtYWtlLAoJICBGaW5kSk5JLmNtYWtlLCBGaW5kT3BlbkdMLmNtYWtlLCBGaW5kVGNsc2guY21ha2UsIEZpbmRYMTEuY21ha2U6CgkgIHVwZGF0ZSBkZnJvbSBtYWluIHRyZWUKCjIwMDItMDYtMTkgMTI6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwgU291cmNlL2NtU291cmNlRmlsZS5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFRlc3RzL1Rlc3REcml2ZXIvQ01ha2VMaXN0cy50eHQ6IG1vZGlmaWVkCgkgIGNyZWF0ZSB0ZXN0IHNvdXJjZSB0byBjcmVhdGUgYSB2ZWN0b3IKCjIwMDItMDYtMTkgMDg6NTcgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mdHlfYWxwaGEuYzogRVJSOiBGaXhlZCB1bnVzZWQgcGFyYW1ldGVyCgkgIHdhcm5pbmcuCgoyMDAyLTA2LTE5IDA3OjI4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDItMDYtMTggMTc6MjAgIGtpbmcKCgkqIFNvdXJjZS86IGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaCwgY21GdW5jdGlvbkJsb2NrZXIuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVRhcmdldC5jeHg6IEVSUjogRml4ZWQKCSAgY29tcGlsZXIgd2FybmluZ3MuCgoyMDAyLTA2LTE4IDE3OjIwICBraW5nCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY2NtYWtlLmN4eCwgY21DdXJzZXNCb29sV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNEdW1teVdpZGdldC5jeHgsIGNtQ3Vyc2VzRm9ybS5oLCBjbUN1cnNlc0xhYmVsV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4LCBjbUN1cnNlc01haW5Gb3JtLmN4eDogRVJSOiBGaXhlZAoJICBjb21waWxlciB3YXJuaW5ncyBhYm91dCB1bnVzZWQgcGFyYW1ldGVycy4KCjIwMDItMDYtMTggMTc6MTkgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS86IGZybV9kcml2ZXIuYywgZnJtX3JlcV9uYW1lLmMsCgkgIGZ0eV9hbG51bS5jLCBmdHlfaW50LmMsIGZ0eV9pcHY0LmMsIGZ0eV9udW0uYywgZnR5X3JlZ2V4LmM6IEVSUjoKCSAgRml4ZWQgY29tcGlsZXIgd2FybmluZ3Mgd2hlbiB1c2luZyBzdHJpY3QgYW5zaS4KCjIwMDItMDYtMTggMTY6NDMgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogZml4ZWQgYW5vdGhlciBidWcKCjIwMDItMDYtMTggMTY6MzUgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogZml4ZWQgYnVnCgoyMDAyLTA2LTE4IDE2OjMyICBraW5nCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFUlI6IEZpeCBmb3IgZnByaW50ZiBmb3JtYXQgd2FybmluZy4KCjIwMDItMDYtMTggMTY6MzAgIGtpbmcKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mcm1fZGF0YS5jOiBFUlI6IEF0dGVtcHQgdG8gZml4IHdhcm5pbmcKCSAgb24gT1NGIGFib3V0IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIHdpbm5zdHIuCgoyMDAyLTA2LTE4IDE0OjI2ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kR0xVVC5jbWFrZTogRU5IOiBhZGQgbW9yZSBwYXRocyBmb3IgdGhlIEhQCgoyMDAyLTA2LTE4IDA4OjU0ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogdHJ5IGFuZCBmaXggbGluawoJICBwcm9ibGVtIG9uIGRlYwoKMjAwMi0wNi0xNyAxMzo0MyAgYW5keQoKCSogTW9kdWxlcy9GaW5kSk5JLmNtYWtlOiBBZGQgZGViaWFuIEphdmEgcGF0aHMKCjIwMDItMDYtMTcgMTM6MDcgIGJhcnJlCgoJKiBNb2R1bGVzLzogRmluZEdMVS5jbWFrZSwgRmluZEdMVVQuY21ha2U6IEZJWDogR0xVIGFuZCBHTFVUIGZsYWdzCgkgIGZvciBNYWMgT1NYCgoyMDAyLTA2LTE0IDE2OjQ5ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRDQUJMRS5jbWFrZSwgRmluZFRjbHNoLmNtYWtlLCBGaW5kWDExLmNtYWtlOiBFTkg6CgkgIGNsZWFuIG1vZHVsZXMgKGRvYywgbWFrZSBzdHVmZiBhZHZhbmNlZCwgZXRjLikKCjIwMDItMDYtMTQgMTY6MzggIGhvZmZtYW4KCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBjaGFuZ2Ugc28gdGhhdCBvbiBhbGwgbWFrZSBiYXNlZCBzeXN0ZW1zCgkgIGFsbCBkYXJ0IHRhcmdldHMgYXJlIGFkZGVkCgoyMDAyLTA2LTE0IDExOjQ2ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRHTFUuY21ha2UsIEZpbmRHTFVULmNtYWtlOiBFTkg6IHVzZQoJICBPUEVOR0xfTElCUkFSWV9QQVRIIGFzIGFkZGl0aW9uYWwgc2VhcmNoIHBhdGgKCjIwMDItMDYtMTQgMTE6NDUgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IEVOSDogZGVmaW5lIE9QRU5HTF9MSUJSQVJZX1BBVEggKHBhdGgKCSAgdG8gT1BFTkdMX0xJQlJBUlkpIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBvdGhlcgoJICBPcGVuR0wtcmVsYXRlZCBsaWJzCgoyMDAyLTA2LTE0IDExOjMxICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kR0xVLmNtYWtlOiBGSVg6IGJ1ZywgdGhlIHdyb25nIGluY2x1ZGUgZmlsZSB3YXMKCSAgc2VhcmNoZWQuCgoyMDAyLTA2LTE0IDEwOjM3ICBiYXJyZQoKCSogU291cmNlLzogY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEZpbmRMaWJyYXJ5IGNhbiBub3cgdXNlIHRoZSBtYWtlZmlsZSB0byBhZGQKCSAgc29tZSBjb21waWxlci1zcGVjaWZpYyBsaWIgc2VhcmNoIHBhdGggKGRlcGVuZGluZyBvbiB0aGUKCSAgZ2VuZXJhdG9yKS4KCjIwMDItMDYtMTQgMTA6MzUgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRHTFVULmNtYWtlOiBFTkgvRklYOiBHbHV0IHNob3VsZCBiZSBmb3VuZCwgbm90IHNldC4KCSAgQWRkIHNlYXJjaCBwYXRoIGZvciBDeWd3aW4KCjIwMDItMDYtMTMgMTQ6NDUgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRHTFVULmNtYWtlOiBGSVg6IGNvbXBseSB3aXRoIHRoZSB3YXkgT3BlbkdMIGxpYnMgYXJlCgkgIHNldCBpbiBGaW5kT3BlbkdMIGFuZCBGaW5kR0xVCgoyMDAyLTA2LTEzIDExOjQ4ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmRHTFUuY21ha2UsIEZpbmRHTFVULmNtYWtlLCBGaW5kT3BlbkdMLmNtYWtlOiBFTkg6CgkgIG1ha2UgYWxsIE9wZW5HTCBsaWJzIGFkdmFuY2VkLCBhbmQgYWRkIHN1cHBvcnQgZm9yIGdsdSBsaWIgd2l0aAoJICBCb3JsYW5kCgoyMDAyLTA2LTEyIDA5OjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuY3BwOiBmaXggd2FybmluZwoKMjAwMi0wNi0xMSAxNDo1NCAgbWFydGluawoKCSogU291cmNlLzogY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIGNtTVNEb3RORVRHZW5lcmF0b3IuaCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogc29tZQoJICBmaXhlcyBmb3IgZG90IG5ldCBhbmQgc3BhY2VzCgoyMDAyLTA2LTExIDE0OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiB1c2UgbG93ZXIgY2FzZSBhbmQgbm90IHNob3J0IHBhdGggZm9yCgkgIHVuaXEgcGF0aHMgb24gd2luZG93CgoyMDAyLTA2LTExIDE0OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHg6IG9ubHkgYWxsb3cgdW5pcXVlIGNvbmZpZ3VyYXRpb25zCgoyMDAyLTA2LTExIDE0OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5oOiBCVUc6IGZpeAoJICBkb3QgbmV0IGZvciBwYXRocyB3aXRoIHNwYWNlcwoKMjAwMi0wNi0xMSAxMjoxNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTVNEb3RORVRHZW5lcmF0b3IuY3h4OiBCVUc6IFJlbGF0aXZlUGF0aCBzaG91bGQgbm90IGJlCgkgIHF1b3RlZCBpbiBvdXRwdXQgZmlsZXMgZXZlbiBpZiBpdCBoYXMgc3BhY2VzCgoyMDAyLTA2LTExIDExOjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBzb21lIHdpbjk4IGRlcGVuZCBwcm9ibGVtcwoKMjAwMi0wNi0xMSAxMTowMSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBkb24ndCB1c2Ugc2hvcnQgcGF0aHMgaW4KCSAgdGhlIG91dHB1dAoKMjAwMi0wNi0xMSAxMDo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogdXNlIHNob3J0IHBhdGggdG8gZ2V0IHVuaXF1ZQoJICBwYXRoIG5hbWVzIGZvciBkZXBlbmQgcGF0aCBvdXRwdXQKCjIwMDItMDYtMTEgMDk6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LCBjbUN1cnNlc01haW5Gb3JtLmN4eDogRVJSOgoJICBGaXhlZCBzdW4gQ0Mgd2FybmluZ3MuCgoyMDAyLTA2LTEwIDE0OjIxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VEZXBlbmQuY3h4LCBjbU1ha2VEZXBlbmQuaCwgQ01ha2VMaXN0cy50eHQ6IGpvaW5zCgkgIHdpdGggdGhlIGhlYWQKCjIwMDItMDYtMTAgMTQ6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZURlcGVuZC5oOiBub3cgaW5jbHVkZXMgY3VycmVudAoJICBpbmNsdWRlIGZpbGVzIGRpcmVjdG9yeSB3aGVuIHNlYXJjaGluZyBmb3IgZmlsZXMgaXQgaW5jbHVkZXMKCjIwMDItMDYtMTAgMTE6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBjbWFrZSBuZWVkcyBpdCdzIG93biBkaXJlY3RvcnkgZm9yCgkgIGluY2x1ZGVzLCBzbyBkZXBlbmRzIHdvcmsKCjIwMDItMDYtMTAgMDk6NTAgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IG5ldyBjaGFuZ2VzIGZvciAxLjQKCjIwMDItMDYtMTAgMDk6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IHVwZGF0ZWQgcmV2aXNpb24KCjIwMDItMDYtMTAgMDk6MzMgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBGaW5kR0xVVC5jbWFrZSwgRmluZFB5dGhvbkxpYnMuY21ha2U6IHVwZGF0ZWQgZnJvbSBtYWluCgkgIGJyYW5jaAoKMjAwMi0wNi0xMCAwODo1MyAgYW5keQoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogT29wcywgZm9yZ290IHRoZSBsaWJyYXJ5IG5hbWUKCjIwMDItMDYtMTAgMDg6NTIgIGFuZHkKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IEFkZCBzZWFyY2ggZm9yIHB5dGhvbiAyLjIKCjIwMDItMDYtMDcgMDg6MzkgIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRklYOiB7fSB3ZXJlIG1pc3NpbmcgYXJvdW5kCgkgIEZMVEtfKl9MSUJSQVJZLgoKMjAwMi0wNi0wNiAxNzo0OSAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRGTFRLLmNtYWtlOiBGSVg6IFRoZSBmaW5hbCB0ZXN0IGlzIGRvbmUgbm93IG92ZXIKCSAgRkxUS19MSUJSQVJZIGluc3RlYWQgb2YgRkxUS19MSUJSQVJZX1BBVEgKCjIwMDItMDYtMDYgMTU6MjggIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRU5IOiBTdXBwb3J0IGZvciBGTFRLMS4xIGFuZCBGTFRLMS4wLjExCgkgIGFkZGVkLiBBbiBvcHRpb24gYWxsb3dzIHRvIHNlbGVjdAkgYmV0d2VlbiB0aGUgdHdvIHZlcnNpb25zLgoKMjAwMi0wNi0wNiAxNTowMCAgbWFydGluawoKCSogQ01ha2UucnRmOiB1cGRhdGVzCgoyMDAyLTA2LTA2IDExOjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBNYWtlZmlsZS5ib3JsYW5kOiBFTkg6IHJlbW92ZSBib3JsYW5kIGJvb3RzdHJhcCBtYWtlZmlsZQoKMjAwMi0wNi0wNiAwODo0OSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kR0xVVC5jbWFrZTogZml4IGZvciBnbHV0IG9uIHdpbjMyCgoyMDAyLTA2LTA1IDEzOjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHJldmlzaW9uCgoyMDAyLTA2LTA1IDEzOjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cGRhdGVkIHJldgoKMjAwMi0wNi0wNSAxMzoyNCAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcDogbm93IHVzZXMgYm9vdHN0cmFwCgoyMDAyLTA2LTA1IDEzOjIyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY2NvbW1hbmQuY3h4OiBtZXJnZWQgY2NvbW1hbmQgaW50byBjbWFrZQoKMjAwMi0wNi0wNSAwOToxMSAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaWIuZHNwLCBEdW1wRG9jdW1lbnRhdGlvbi5kc3AsIGNjb21tYW5kLmRzcCwKCSAgY21ha2UuZHNwLCBjdGVzdC5kc3A6IHVzZXMgZXhlY3V0YWJrZSBib290c3RyYXAKCjIwMDItMDYtMDMgMTM6NDAgIG1hcnRpbmsKCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IGNoYW5nZWQgQ0NPTU1BTkQgdG8KCSAgQ01BS0UKCjIwMDItMDYtMDMgMTM6MDggIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9jbWFrZS5oLCBTb3VyY2UvY21ha2VtYWluLmN4eCwKCSAgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IHJlbW92ZWQgY2NvbW1hbmQgdXNlCgkgIGNtYWtlIG5vdwoKMjAwMi0wNi0wMyAxMTowNiAgbWFydGluawoKCSogQ01ha2UucnRmOiB1cGRhdGVkCgoyMDAyLTA2LTAzIDEwOjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21UYXJnZXQuY3h4OiBFTkg6IG9ubHkgYWRkIF9MSUJfREVQRU5ECgkgIGluZm9ybWF0aW9uIGZvciBsaWJyYXJpZXMgYW5kIG1vZHVsZXMKCjIwMDItMDUtMzEgMDg6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogZml4ZWQgYnVnIGluIGdldCBzaG9ydCBwYXRoIGZvciBxdW90ZWQKCSAgcGF0aHMKCjIwMDItMDUtMjkgMTU6MDAgIHBlcmVyYQoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogQlVHOiBuZXZlciBtYWtlIGEgdGFyZ2V0IGRlcGVuZCBvbiBpdHNlbGYuCgkgIFRoaXMgd2FzIGNhdXNpbmcgdW5uZWNlc3NhcnkgbGlicmFyeSBkdXBsaWNhdGlvbiwgcmVzdWx0aW5nIGluCgkgIGxpbmsgZXJyb3JzIG9uIHNvbWUgcGxhdGZvcm1zLgoKMjAwMi0wNS0yOSAwOTo1NiAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBNQUtFRkxBR1MgZG9lcyBub3QgbmVlZAoJICB0byBiZSBwYXNzZWQgb24gY29tbWFuZCBsaW5lLiAgSXQgaXMgYXV0b21hdGljYWxseSBzZXQgYnkgbWFrZSBpbgoJICBlbnZpcm9ubWVudCBmb3IgcmVjdXJzaXZlIGNhbGwuCgoyMDAyLTA1LTI4IDA4OjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IHJlbW9iZWQgYm9vdHN0cmFwCgoyMDAyLTA1LTI4IDA4OjUwICBtYXJ0aW5rCgoJKiBib290c3RyYXAuZXhlLCBjY29tbWFuZC5leGU6IGRpZmZlcmVudCBib290c3RyYXAgY29tbWFuZAoKMjAwMi0wNS0yNyAxMDoyOSAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9WYXJUZXN0cy5jbWFrZSwgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGFkZCB0ZXN0cyBmb3IKCSAgTEVTUywgR1JFQVRFUiwgU1RSTEVTUywgU1RSR1JFQVRFUiAoSUYgY29tbWFuZCkKCjIwMDItMDUtMjMgMTM6MjcgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQ6IEVOSDogaW5jcmVzZSBjb3ZlcmFnZQoKMjAwMi0wNS0yMyAxMzoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLAoJICBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogaW5jcmVhc2UKCSAgY292ZXJhZ2UKCjIwMDItMDUtMjMgMTM6MDQgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9jbVRlc3RDb25maWd1cmVFc2NhcGUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZUVzY2FwZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmVFc2NhcGUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogYWRkIGEgdGVzdCBmb3IKCSAgZXNjYXBlIHF1b3RlcyBhbmQgY29uZmlndXJlIGZpbGUKCjIwMDItMDUtMjMgMTA6MzYgIG1hcnRpbmsKCgkqIGJvb3RzdHJhcC5leGUsIGNjb21tYW5kLmV4ZTogYWRkZWQgd2luMzIgYm9vdHN0cmFwIHN1cHBvcnQKCjIwMDItMDUtMjMgMTA6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRFNXV3JpdGVyLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5jeHg6IG9ubHkgYWRkIHRlc3QKCSAgdGFyZ2V0IGlmIHRlc3RpbmcgaXMgZW5hYmxlZCBhbmQgY3Rlc3QgaXMgZm91bmQKCjIwMDItMDUtMjMgMTA6MzMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IG1pbm9yIGJvb3RzdGFwIGZpeGVzCgoyMDAyLTA1LTIzIDEwOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oOiBhZGRlCgkgIGxlc3MgZ3JlYXRlcgoKMjAwMi0wNS0yMiAxMzoyMCAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiBFTkg6IGFkZCBsaXN0IGV4cGFuc2lvbgoJICBiYWNrCgoyMDAyLTA1LTIyIDA5OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZW5hYmxlIGN4eCBieSBkZWZhdWx0IGlmIG5vCgkgIGxhbmd1YWdlcyBoYXZlIGJlZW4gZW5hYmxlZAoKMjAwMi0wNS0yMiAwOTo0OCAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGJldHRlciBjb21tZW50IHByb2Nlc3NpbmcKCjIwMDItMDUtMjIgMDk6NDcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGN0ZXN0LmN4eCwgY3Rlc3QuaDogRU5IOiBmaXggZGVwZW5kIHByb2JsZW0KCjIwMDItMDUtMTggMTY6MDkgIHN0YXJyZXZlbGQKCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZTogZmluZCBvcGVuR0wgaW4gQ2FyYm9uCgoyMDAyLTA1LTE1IDE3OjIzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbWFrZS5jeHgsIGNtYWtlLmg6IGFkZGVkIGluaXRpYWwgYXR0ZW1wdCB0byBzdXBwb3J0CgkgIHdpbjMyIGJvb3RzdHJhcHBpbmcKCjIwMDItMDUtMTUgMTE6MTEgIGJlcmsKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogUnVuQ29tbWFuZCBub3cgY2hlY2tzIHdoZXRoZXIgdGhlCgkgIHByb2Nlc3MgZGllZCBhYm5vcm1hbGx5IChvbiBVbml4KQoKMjAwMi0wNS0xNCAwODo0MiAgYW5keQoKCSogTW9kdWxlcy9GaW5kV2lzaC5jbWFrZTogQWRkIGJldHRlciBkZXRlY3Rpb24gb2Ygd2lzaCA4LjIKCjIwMDItMDUtMTIgMTE6MzIgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IGFkZAoJICBub19zeXN0ZW1fcGF0aCBvcHRpb24gdG8gRmluZFByb2dyYW0gc28gdGhhdCB0aGUgUEFUSCBpcyBpZ25vcmVkCgoyMDAyLTA1LTEyIDExOjMxICBiYXJyZQoKCSogU291cmNlLzogY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oOgoJICBFTkgvRklYOiBhZGQgTk9fU1lTVEVNX1BBVEggb3B0aW9uICsgZml4IGNvbW1hbmQgdXNhZ2UKCjIwMDItMDUtMTIgMTE6MzEgIGJhcnJlCgoJKiBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuaDogRklYOiBjb21tYW5kIHVzYWdlCgoyMDAyLTA1LTExIDIyOjI4ICBwZXJlcmEKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEZJWDogUmVtb3ZlIGFzc2VydCBzaW5jZSBpdCB3YXMgYnJlYWtpbmcKCSAgSVJJWCBidWlsZHMuCgoyMDAyLTA1LTEwIDE0OjA2ICBtaWxsZXJqdgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogRklYOiBDb25zdCByZWZlcmVuY2UgdG8gYSBzZXQgbmVlZHMgYQoJICBjb25zdF9pdGVyYXRvci4gKC5ORVQgYnVpbGQgZXJyb3IpCgoyMDAyLTA1LTEwIDEzOjM1ICBwZXJlcmEKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFRlc3RzL0RlcGVuZGVuY3kvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRWlnaHQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRWlnaHQvRWlnaHRTcmMuYywKCSAgVGVzdHMvRGVwZW5kZW5jeS9FeGVjMi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9FeGVjMi9FeGVjTWFpbi5jLAoJICBUZXN0cy9EZXBlbmRlbmN5L0V4ZWMzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9EZXBlbmRlbmN5L0V4ZWMzL0V4ZWNNYWluLmMsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRXhlYzQvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRXhlYzQvRXhlY01haW4uYywKCSAgVGVzdHMvRGVwZW5kZW5jeS9TZXZlbi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9TZXZlbi9TZXZlblNyYy5jLCBUZXN0cy9MaW5rTGluZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvTGlua0xpbmUvRXhlYy5jLCBUZXN0cy9MaW5rTGluZS9PbmUuYywKCSAgVGVzdHMvTGlua0xpbmUvVHdvLmM6IEJVRzogQ29ycmVjdCBzb21lIG9mIHRoZSBkZXBlbmRlbmN5CgkgIGFuYWx5c2lzIGNvZGUuICAtIE1ha2Ugc3VyZSB0aGUgb3JpZ2luYWwgbGluayBsaW5lIGlzIHVudG91Y2hlZCAtCgkgIEF2b2lkIGR1cGxpY2F0aW5nIHRoZSBsaW5rIGxpbmUgd2hlbiBzdXBwb3J0aW5nIHZlcnNpb24gPCAxLjQgLQoJICBNYWtlIHN1cmUgdGhlIGN5Y2xpYyBkZXBlbmRlbmNpZXMgYW5kIHN1Y2ggYXJlIG91dHB1dCBjb3JyZWN0bHkKCSAgaW4gICBjb21wbGljYXRlZCBjYXNlcy4gIC0gQXZvaWQgb3V0cHV0aW5nIGRlcGVuZGVuY2llcyB0aGF0IGFyZQoJICBhbHJlYWR5IHNhdGlzZmllZCBvbiB0aGUgb3JpZ2luYWwgICBsaW5rIGxpbmUgd2hlbiBwb3NzaWJsZS4KCjIwMDItMDUtMTAgMDg6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBBZGRlZCB2YXJpYWJsZSBpbml0aWFsaXplci4KCjIwMDItMDUtMDkgMDk6MzMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRFNXV3JpdGVyLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0LmN4eCwKCSAgY21UYXJnZXQuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGNoYW5nZSBzZXQ8c3RyaW5nPgoJICB0byBzZXQ8Y21TdGRTdHJpbmc+ICB0byBhdm9pZCBsb25nIHN5bWJvbHMgdGhhdCBjcmFzaCBhciBvbgoJICBzb2xhcmlzCgoyMDAyLTA1LTA4IDE3OjQ1ICBraW5nCgoJKiBUZXN0cy9XcmFwcGluZy86IENNYWtlTGlzdHMudHh0LCBpdGtXcmFwcGVyQ29uZmlnLmN4eDogRU5IOiBBZGRlZAoJICBjb3ZlcmFnZSB0ZXN0IGZvciBJVEtfV1JBUF9UQ0wuICBEb2Vzbid0IGFjdHVhbGx5IGludm9rZSBDQUJMRS4KCjIwMDItMDUtMDggMTc6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbUlUS1dyYXBUY2xDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBkZXBlbmRlbmN5IGhhY2sgdG8KCSAgc3VwcG9ydCB3cmFwcGluZyB0ZXN0LgoKMjAwMi0wNS0wOCAxNzozNyAga2luZwoKCSogU291cmNlL2NtSVRLV3JhcFRjbENvbW1hbmQuY3h4OiBCVUc6IE5lZWQgdG8gdXNlCgkgIENNQUtFX0NYWF9DT01QSUxFUiwgbm90IENYWCwgdG8gZ2V0IHRoZSBDKysgY29tcGlsZXIgbmFtZS4KCjIwMDItMDUtMDggMTM6MTEgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUlUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21JVEtXcmFwVGNsQ29tbWFuZC5oOiBFTkg6IEFkZGVkIElUSyBUY2wgd3JhcHBpbmcgY29tbWFuZC4KCjIwMDItMDUtMDggMTA6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kOiBFTkg6IGFkZCBjbGVhbiBjb21tYW5kCgoyMDAyLTA1LTA4IDA5OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlQ29tbWFuZExpbmVJbmZvLmNwcDogRU5IOiB0YWtlIGNtYWtlIHN0eWxlCgkgIGNvbW1hbmQgbGluZSBvcHRpb25zIHNvIGVkaXRfY2FjaGUgd29ya3MKCjIwMDItMDUtMDggMDk6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogZml4IGNtYWtlIHRvIHdvcmsgd2l0aG91dCBjY29tbWFuZC4KCjIwMDItMDUtMDggMDg6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogc2hvcnQgcGF0aCBkb2VzIG5vdAoJICB3b3JrIG9uIGJjYzMyCgoyMDAyLTA1LTA3IDExOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IEVOSDogYWRkIC1CIG9wdGlvbiB0byBzcGVjaWZ5IHRoZQoJICBidWlsZCBkaXJlY3RvcnksIHNvIG1ha2UgZWRpdF9jYWNoZSB3aWxsIHdvcmsKCjIwMDItMDUtMDcgMDk6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IFdORzogcmVtb3ZlIGEgd2FybmluZwoKMjAwMi0wNS0wNyAwOTowMyAgaG9mZm1hbgoKCSogQ01ha2UucnRmOiBFTkg6IHVwZGF0ZSB3aXRoIGRvY3MgYWJvdXQgdGhlIHRhcmdldHMKCjIwMDItMDUtMDcgMDk6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbWFrZS5jeHg6IEVOSDogYWRkIGFuIGVkaXRfY2FjaGUgdGFyZ2V0IHRoYXQgcnVucyBjY21ha2Ugb3IKCSAgQ01ha2VTZXR1cAoKMjAwMi0wNS0wMyAxODoxMCAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogZml4IGJvcmxhbmQgdGVzdAoKMjAwMi0wNS0wMyAxNjozNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogRU5IOiByZXdvcmsKCSAgbGlicmFyeSBkZXBlbmQgc3R1ZmYKCjIwMDItMDUtMDMgMDA6MjcgIHBlcmVyYQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21UYXJnZXQuY3h4LCBTb3VyY2UvY21UYXJnZXQuaCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9DTWFrZUxpc3RzLnR4dDogLSBidWcgZml4IHdoZXJlIHBhdGhzIHdlcmVuJ3QKCSAgYmVpbmcgb3V0cHV0IHdoZW4gTElCX09VVF9QQVRIICppc24ndCogdXNlZCAtIHRlc3QgY2FzZSBmb3IgYWJvdmUKCSAgbWVudGlvbmVkIGJ1ZyAtIG1vcmUgY29tbWVudHMuIENvbW1lbnRzIGFyZSBnb29kLgoKMjAwMi0wNS0wMiAxOTowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogY2hlY2sgZm9yIG9wdGltaXplZCBvciBkZWJ1ZyBsaWJyYXJ5IGFkZHMKCjIwMDItMDUtMDIgMTY6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogcmVtb3ZlIGNhbm9uaWNhbCBjb252ZXJzaW9uCgkgIGZvciBsaWIgbmFtZXMKCjIwMDItMDUtMDIgMTU6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVGFyZ2V0LmN4eDogbWFrZSBpdAoJICBiYWNrd2FyZHMgY29tcGF0aWJsZSB3aXRoIG9sZCBjbWFrZQoKMjAwMi0wNS0wMiAxNToxMCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFRlc3RzL0NvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBEZWJ1ZwoJICBvcHRpbWl6ZWQgY2FjaGUgZml4ZXMKCjIwMDItMDUtMDIgMTM6NDEgIHBlcmVyYQoKCSogU291cmNlLzogY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oOiBCVUc6IFRoZSBsaWJyYXJ5IHBhdGhzIHNob3VsZAoJICBzdGF5IHdpdGggdGhlIGxpYnJhcmllcyBkdXJpbmcgZGVwZW5kZW5jeSBhbmFseXNpcy4KCjIwMDItMDUtMDIgMTM6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUFkZExpYnJhcnlDb21tYW5kLmN4eCwgU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuaCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21UYXJnZXQuY3h4LAoJICBTb3VyY2UvY21UYXJnZXQuaCwgU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9Db21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9FeGVjL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9EZXBlbmRlbmN5L1NpeC9DTWFrZUxpc3RzLnR4dDogRU5IOiBjaGFuZ2UgTElOS19MSUJSQVJZIHRvCgkgIGFkZCB0byB0YXJnZXRzCgoyMDAyLTA1LTAyIDA4OjU0ICBhbmR5CgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogUmV2ZXJ0IHRvIG1ha2UgaXQgd29yayBhZ2FpbgoKMjAwMi0wNS0wMiAwODo0NiAgYW5keQoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW46IEltcHJvdmUgYm9vdHN0cmFwIG9uIFVOSVguIE5vdyBpdAoJICBib290c3RyYXBzIGludG8gYSBzZXBhcmF0ZSBkaXJlY3RvcnkuCgoyMDAyLTA1LTAyIDAyOjI3ICBwZXJlcmEKCgkqIFNvdXJjZS9jbVRhcmdldC5jeHg6IEJVRzogaWYgYV9MSUJTX0RFUEVORFMgZXhpc3RzIGJ1dCBpcyBlbXB0eSwKCSAgdGhlcmUgYXJlIG5vIGV4cGxpY2l0IGRlcGVuZGVuY2llcy4KCjIwMDItMDUtMDEgMjI6MDMgIG1pbGxlcmp2CgoJKiBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHA6IEZJWDogSWYgY3VycmVudCBzZWxlY3Rpb24gd2FzCgkgICJOT1RGT1VORCIsIHRoZW4gc2VsZWN0aW5nIHRoZSBicm93c2VyICAgICAgd291bGQgY3Jhc2ggc2luY2UgYQoJICAiLyIgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBjdXJyZW50IHNlbGVjdGlvbi4KCjIwMDItMDUtMDEgMTY6MzMgIHBlcmVyYQoKCSogU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFRlc3RzL0RlcGVuZGVuY3kvQ01ha2VMaXN0cy50eHQ6IEVOSDogTWFrZSB0aGUgTGlua0xpYnJhcmllcwoJICBjb21tYW5kIGNvbnRyaWJ1dGUgZGVwZW5kZW5jaWVzIHRvd2FyZHMgQWRkTGlicmFyaWVzLgoKMjAwMi0wNS0wMSAxNjoyNCAgcGVyZXJhCgoJKiBUZXN0cy9EZXBlbmRlbmN5LzogQ01ha2VMaXN0cy50eHQsIEV4ZWMvQ01ha2VMaXN0cy50eHQsCgkgIEV4ZWMvRXhlY01haW4uYywgU2l4L0NNYWtlTGlzdHMudHh0LCBTaXgvU2l4QVNyYy5jLAoJICBTaXgvU2l4QlNyYy5jOiBFTkg6IE1ha2UgdGhlIExpbmtMaWJyYXJpZXMgY29tbWFuZCBjb250cmlidXRlCgkgIGRlcGVuZGVuY2llcyB0b3dhcmRzIEFkZExpYnJhcmllcy4KCjIwMDItMDUtMDEgMTQ6MDAgIHBlcmVyYQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LAoJICBTb3VyY2UvY21EU1dXcml0ZXIuY3h4LCBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZXN0cy9EZXBlbmRlbmN5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9EZXBlbmRlbmN5L0V4ZWMvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRXhlYy9FeGVjTWFpbi5jLAoJICBUZXN0cy9EZXBlbmRlbmN5L0ZpdmUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRml2ZS9GaXZlU3JjLmMsCgkgIFRlc3RzL0RlcGVuZGVuY3kvRm91ci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9Gb3VyL0ZvdXJTcmMuYywKCSAgVGVzdHMvRGVwZW5kZW5jeS9Ob0RlcEEvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0RlcGVuZGVuY3kvTm9EZXBBL05vRGVwQVNyYy5jLAoJICBUZXN0cy9EZXBlbmRlbmN5L05vRGVwQi9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9Ob0RlcEIvTm9EZXBCU3JjLmMsCgkgIFRlc3RzL0RlcGVuZGVuY3kvTm9EZXBDL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9EZXBlbmRlbmN5L05vRGVwQy9Ob0RlcENTcmMuYywKCSAgVGVzdHMvRGVwZW5kZW5jeS9UaHJlZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9UaHJlZS9UaHJlZVNyYy5jLAoJICBUZXN0cy9EZXBlbmRlbmN5L1R3by9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvRGVwZW5kZW5jeS9Ud28vVHdvU3JjLmM6IEVOSDogQWRkIGxpYnJhcnkgZGVwZW5kZW5jeQoJICBhbmFseXNpcy4KCjIwMDItMDUtMDEgMTE6MzQgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LAoJICBjbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuY3h4LCBjbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuaCwKCSAgY21DdXJzZXNNYWluRm9ybS5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uaDogVGhlIGVudHJ5IHdpZGdldHMgYXJlCgkgIG5vdyBjcmVhdGVkIHdpdGggd2hhdCBpcyBpbml0aWFsbHkgYXZhaWxhYmxlIG9uIHRoZSB0ZXJtaW5hbC4KCjIwMDItMDUtMDEgMTA6MTIgIGJlcmsKCgkqIFNvdXJjZS86IGNtSW5jbHVkZUNvbW1hbmQuY3h4LCBjbU1ha2VmaWxlLmN4eDogUmVmb3JtYXR0ZWQgdGhlCgkgIGVycm9yIHByaW50ZWQgYnkgY21NYWtlZmlsZS4KCjIwMDItMDQtMzAgMjE6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhbGxvdyBjbWFrZSB0ZXN0cyB0byBiZSBydW4gd2l0aG91dAoJICBkYXJ0LgoKMjAwMi0wNC0zMCAxNzo0OSAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogY3JlYXRlIHRlc3RzIHdpdGhvdXQgRGFydAoKMjAwMi0wNC0zMCAxNzo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4OiBFTkg6IHJlcGxhY2UgZnJlZXplIHdpdGgKCSAgZGVsZXRlCgoyMDAyLTA0LTMwIDE2OjU4ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjY29uZmlndXJlLCBjY29uZmlndXJlLmluOiBFTkg6IHJlbW92ZSAtZlBJQyBmb3IgQUlYCgkgIGdudQoKMjAwMi0wNC0zMCAxNTozMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTVNEb3RORVRHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCByZWx3aXRoZGViaW5mbwoKMjAwMi0wNC0zMCAxNDowMSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGFkZCB0ZXN0IGZvcgoJICBTRVBBUkFURV9BUkdVTUVOVFMKCjIwMDItMDQtMzAgMTQ6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbVNlcGFyYXRlQXJndW1lbnRzQ29tbWFuZC5jeHgsCgkgIGNtU2VwYXJhdGVBcmd1bWVudHNDb21tYW5kLmg6IEVOSDogYWRkIG5ldyBjb21tYW5kIHRvIHNlcGFyYXRlCgkgIHNwYWNlIHNlcGFyYXRlZCBhcmd1bWVudHMKCjIwMDItMDQtMzAgMTQ6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21DYWNoZU1hbmFnZXIuY3h4OiBFTkg6CgkgIGRvIG5vdCB1c2UgY291bnQsIGZpbmQgZm9yIG1hcCBsb29rdXAKCjIwMDItMDQtMzAgMTI6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBpbXByb3ZlIHNwZWVkIG9mIEdldFNvdXJjZSBmdW5jdGlvbgoKMjAwMi0wNC0zMCAwODowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBsb29rIGZvciAtbCBhbnl3aGVyZSBpbgoJICBsaW5rIGxpYnJhcnkgZW50cnkgbm90IGp1c3QgdGhlIGJlZ2luaW5nIG9mIHRoZSBsaW5lCgoyMDAyLTA0LTI5IDEwOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogbWFrZSBzdXJlIGxpbmsgZGlyZWN0b3JpZXMgYXJlIG5vdAoJICBkdXBsaWNhdGVkCgoyMDAyLTA0LTI5IDA5OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBCVUc6IHJlbW92ZSB3YXJuaW5nIGFib3V0CgkgIGNoYW5naW5nIGdlbmVyYXRvcnMKCjIwMDItMDQtMjkgMDg6MjcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNjb25maWd1cmUsIGNjb25maWd1cmUuaW46IHVzZSBtdWx0aXBsZSBycGF0aCBvcHRpb25zCgkgIGZvciBzZ2kKCjIwMDItMDQtMjggMTY6MTQgIHBlcmVyYQoKCSogU291cmNlLzogY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBFTkg6IE1ha2UgaXQgdW5uZWNlc3NhcnkgdG8KCSAgZXZlciBzcGVjaWZ5IExJTktfRElSRUNUT1JJRVMgZm9yIGFueSBsaWJyYXJ5IGdlbmVyYXRlZCBpbiB0aGlzCgkgIHByb2plY3QsIGV2ZW4gd2hlbiBMSUJSQVJZX09VVFBVVF9QQVRIIGlzIHNldC4KCjIwMDItMDQtMjYgMjE6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIHJlZGlyZWN0aW9ucyBmb3IKCSAgb3V0cHV0IG9mIG1ha2UgY29tbWFuZHMgYXMgc29tZSB0aGluZ3MgYXJlIGxvc3QKCjIwMDItMDQtMjYgMTI6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IENPTToganVzdCBmaXggdXAgYSBjb21tZW50CgoyMDAyLTA0LTI2IDEyOjQyICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBjb3JyZWN0IGMgZmxhZ3MgZm9yIHNoYXJlZAoJICBsaW5rcwoKMjAwMi0wNC0yNiAxMjoyMSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBCVUc6IGZpeCBzaGFyZWQgbGlua3MgZm9yCgkgIGNjIG9uIGhwCgoyMDAyLTA0LTI2IDA5OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21CdWlsZE5hbWVDb21tYW5kLmN4eDogRU5IOiBmaXggYnVpbGQgbmFtZQoKMjAwMi0wNC0yNiAwOTozNSAgaG9mZm1hbgoKCSogU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmN4eDogRU5IOiBsb29rIGZvciBuc2xvb2t1cCBhbmQgaG9zdG5hbWUKCSAgaW4gdGhlIHJpZ2h0IHBsYWNlcwoKMjAwMi0wNC0yNiAwOToyMiAgd2lsbAoKCSogQ01ha2UucGRmOiBFTkg6TmV3IHBkZiBmb3IgQ01ha2UKCjIwMDItMDQtMjYgMDk6MTcgIG1hcnRpbmsKCgkqIENNYWtlLnJ0ZjogdXBkYXRlZCBmb3IgMS40CgoyMDAyLTA0LTI2IDA5OjExICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4OiBkcHJlY2F0ZWQKCjIwMDItMDQtMjYgMDg6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kOiBmaXhlZCB1cCBhZ2FpbiBkdWgKCjIwMDItMDQtMjUgMTY6MjkgIG1hcnRpbmsKCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kOiB1cGRhdGVkIHRvIGJ1aWxkIGNjb21tYW5kCgoyMDAyLTA0LTI1IDE1OjQwICBob2ZmbWFuCgoJKiBNb2R1bGVzL0RhcnQuY21ha2UsIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5jeHg6IGZpeCB1cCBob3N0bmFtZQoJICBmb3Igd2luZG93cwoKMjAwMi0wNC0yNSAxMzoxMSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBnaXZlIGEgd2FybmluZyB3aGVuCgkgIHN3aXRjaGluZyBnZW5lcmF0b3JzIHRvIG1hdGNoIHRoZSBjYWNoZQoKMjAwMi0wNC0yNSAxMzowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBjaGVjayBmb3IgbWlzbWF0Y2hlZCBnZW5lcmF0b3JzCgoyMDAyLTA0LTI1IDA3OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjY29tbWFuZC5jeHgsIGNtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4LAoJICBjbU9wdGlvbkNvbW1hbmQuY3h4OiBXQVI6IHJlbW92ZSB3YXJuaW5ncyBmb3IgLk5FVCBjb21waWxlcgoKMjAwMi0wNC0yNCAxMDowOCAgYW5keQoKCSogU291cmNlLzogLmN2c2lnbm9yZSwgTUZDRGlhbG9nLy5jdnNpZ25vcmU6IEFkZCBjdnNpZ25vcmUgc28gdGhhdAoJICB5b3UgZG8gbm90IHNlZSB2aXN1YWwgc3R1ZmlvIGZpbGVzIHdoZW4geW91IGRvIGN2cyB1cGRhdGUKCjIwMDItMDQtMjMgMTY6MTYgIGJlcmsKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uaDogRXhpdCBjY21ha2Ugb24gZmF0YWwgZXJyb3JzLgoKMjAwMi0wNC0yMyAxMjoxOCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBjbGVhbiB1cCBkZXBlbmQgb3V0cHV0CgoyMDAyLTA0LTIzIDExOjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBkZXBlbmRzIGZvciB1dGlsaXR5CgkgIHRhcmdldHMKCjIwMDItMDQtMjIgMTU6MTYgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvQ01ha2VOTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IG1ha2UgQ01ha2UgbGVzcwoJICB2ZXJib3NlL3ByZWNpb3VzCgoyMDAyLTA0LTIyIDE1OjA1ICBwZXJlcmEKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgZm9ybS9DTWFrZUxpc3RzLnR4dDogQlVHOgoJICBDaGFuZ2VkIGZyb20gU09VUkNFX0ZJTEVTIHRvIFNFVAoKMjAwMi0wNC0yMiAxNDoyOSAgYmFycmUKCgkqIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IG5lZWQgQ01BS0VfTElOS0VSX0ZMQUdTCgoyMDAyLTA0LTIyIDE0OjIyICBiYXJyZQoKCSogU291cmNlLzogY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBtYWtlIENNYWtlIGxlc3MgdmVyYm9zZS9wcmVjaW91cwoKMjAwMi0wNC0yMiAxNDoxOCAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogZHVoWgoKMjAwMi0wNC0yMiAxMTo1MSAgbWFydGluawoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jbVZlcnNpb24uaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jbVZlcnNpb24uaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY21WZXJzaW9uLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IGZpeGVkIGZvciByZW1vdmUKCSAgQ09NTUFORAoKMjAwMi0wNC0yMiAxMTo1MCAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQ29tbWFuZHMuY3h4LCBjbVJlbW92ZUNvbW1hbmQuY3h4LAoJICBjbVJlbW92ZUNvbW1hbmQuaDogdXBkYXRlZCBmb3IgMS40CgoyMDAyLTA0LTIyIDExOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiB1cGRhdGVkCgoyMDAyLTA0LTE5IDE1OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIFRlc3RzL1NpbXBsZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvU2ltcGxlL3NpbXBsZS5jeHgsCgkgIFRlc3RzL1NpbXBsZS9zaW1wbGVMaWIuY3h4OiBCVUc6IGFkZCBsaW5rIGRpcmVjdG9yaWVzIGZvciB0YXJnZXQKCSAgbGluayBsaWJyYXJpZXMgYW5kIGFkZCBhIHRlc3QgZm9yIGl0CgoyMDAyLTA0LTE5IDE0OjAzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4LAoJICBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eDogYWRkZWQgZGVwcmVjYXRlZCB3YXJuaW5ncyBmb3IKCSAgdmVyc2lvbiAxLjQgb3IgbGF0ZXIKCjIwMDItMDQtMTkgMTM6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNNYWtlTWluaW11bVJlcXVpcmVkLmg6IEVOSDogZml4IGRvYyBsaW5lCgoyMDAyLTA0LTE5IDEyOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogcmVuYW1lZCB1bml4IHRvIHVuaXhQYXRoIGZvcgoJICBjb21waWxlIGVycm9yCgoyMDAyLTA0LTE5IDExOjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggc2hvcnQgcGF0aCBvbiBmaWxlcwoJICB0aGF0IGRvIG5vdCBleGlzdAoKMjAwMi0wNC0xOSAwOTowMCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiB0cnkgdG8gbWFrZSBzdXJlIGEKCSAgZGVwZW5kIGZpbGUgb25seSBoYXMgb25lIHJ1bGUKCjIwMDItMDQtMTkgMDg6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbWFrZS5jeHg6IEJVRzogZml4IFNhbWVGaWxlIGZ1bmN0aW9uCgkgIGZvciB3aW5kb3dzLCBhbmQgY29tcGFyZSBzb3VyY2UgZGlyZWN0b3JpZXMKCjIwMDItMDQtMTggMTY6MTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogd29yayB3aXRoIHNwYWNlcyBpbiB0aGUKCSAgcGF0aAoKMjAwMi0wNC0xOCAxNTo1OCAgYW5keQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogTWFrZSBxdW90ZXMgYW5kIGVjaG9zIHRvIHdvcmsKCSAgb24gdW5peCAoaG9wZWZ1bGx5KQoKMjAwMi0wNC0xOCAxNTo1OCAgYW5keQoKCSogTW9kdWxlcy9GaW5kTVBJLmNtYWtlOiBBZGQgbXBpIHNlYXJjaCBwYXRocyBmb3IgRGViaWFuCgoyMDAyLTA0LTE4IDE0OjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IHVzZSBob21lIG5vdCBzdGFydAoKMjAwMi0wNC0xOCAxNDoxOSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBjaGVjayBmb3IgbWlzLW1hdGNoZWQgc291cmNlIGRpcmVjdG9yaWVzCgoyMDAyLTA0LTE4IDEzOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IHF1b3RlIHRoZSBlY2hvIGNvbW1hbmRzCgoyMDAyLTA0LTE4IDEzOjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZG8gZXNjYXBlZCBzZW1pLWNvbG9uIGJldHRlcgoKMjAwMi0wNC0xOCAxMjowMiAgaG9mZm1hbgoKCSogU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBhYmlsaXR5IHRvCgkgIGVzY2FwZSBzZW1pLWNvbG9ucwoKMjAwMi0wNC0xOCAxMTo1MiAgbWFydGluawoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW46IEVOSDogaGFuZGxlIHNwYWNlcyBpbiBwYXRocyBmb3IgY3lnd2luCgkgIGJvb3RzdHJhcAoKMjAwMi0wNC0xOCAwNzo1OCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ01ha2VNaW5pbXVtUmVxdWlyZWQuY3h4OiBCVUc6IGFkZCBtaXNzaW5nIGluY2x1ZGUKCjIwMDItMDQtMTggMDc6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGliLmRzcCwgTWFrZWZpbGUuYm9ybGFuZDogQlVHOiBmaXggYm9vdHN0cmFwIGJ1aWxkCgkgIG1ha2VmaWxlcwoKMjAwMi0wNC0xNyAxNjoxNiAgaG9mZm1hbgoKCSogU291cmNlL2NtQWJzdHJhY3RGaWxlc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNNYWtlTWluaW11bVJlcXVpcmVkLmN4eCwKCSAgU291cmNlL2NtQ01ha2VNaW5pbXVtUmVxdWlyZWQuaCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21PcHRpb25Db21tYW5kLmN4eCwgVGVzdHMvQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBiYWNrd2FyZHMKCSAgY29tcGF0aWJsZSBmb3IgVlRLIDQuMCwgYWRkIGNtYWtlIHZlcnNpb24gcmVxdWlyZXMKCjIwMDItMDQtMTcgMTQ6NTggIGtpbmcKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBFTkg6IFJlbW92ZWQgdGVzdHMgZm9yIGNvbW1hbmRzCgkgIHRoYXQgbm8gbG9uZ2VyIGV4aXN0LgoKMjAwMi0wNC0xNyAxNDo1NCAga2luZwoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIE1ha2VmaWxlLmluLCBjbUNhYmxlQ2xhc3NTZXQuY3h4LAoJICBjbUNhYmxlQ2xhc3NTZXQuaCwgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbGFzc1NldENvbW1hbmQuaCwgY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21DYWJsZVdyYXBUY2xDb21tYW5kLmgsIGNtQ29tbWFuZHMuY3h4LAoJICBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuY3h4LCBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHg6IEVOSDogUmVtb3ZlZCBvdXQtb2YtZGF0ZSBjb21tYW5kcyBDQUJMRV9XUkFQX1RDTAoJICBDQUJMRV9DTEFTU19TRVQgYW5kIENPTkZJR1VSRV9HQ0NYTUwKCjIwMDItMDQtMTcgMTQ6NTIgIGtpbmcKCgkqIE1vZHVsZXMvRmluZENBQkxFLmNtYWtlOiBFTkg6IFVwZGF0ZWQgZm9yIGxhdGVzdCBDYWJsZSBmcm9tIENWUy4KCSAgT2xkIGFscGhhIHZlcnNpb24gb2YgQ2FibGUgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4KCjIwMDItMDQtMTcgMTQ6NTEgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEdDQ1hNTC5jbWFrZTogRU5IOiBVcGRhdGVkIGZvciB2ZXJzaW9uIDAuMiBvZgoJICBHQ0MtWE1MLgoKMjAwMi0wNC0xNyAxNDozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiB1c2UgY29udmVydCB0byBvdXRwdXQKCSAgcGF0aCBmb3IgZGVwZW5kIGZpbGVzCgoyMDAyLTA0LTE3IDA4OjI4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2U6IGJldHRlciB0byBmaW5kIG1hYyBvcGVuZ2wKCjIwMDItMDQtMTcgMDg6MTUgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IENDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgQ1hYQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IG1vcmUgYWR2YW5jZWQgdmFsdWVzCgoyMDAyLTA0LTE3IDA4OjA5ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBFTkg6IG1vcmUgY292ZXJhZ2UKCjIwMDItMDQtMTYgMTM6NDggIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IFN5bnRheCBzZWVtZWQgdG8gYmUgY29uZnVzaW5nIGFjY29yZGluZwoJICB0byB0aGUgQmlsbAoKMjAwMi0wNC0xNiAwOToyOCAgYmFycmUKCgkqIFNvdXJjZS9jY29tbWFuZC5jeHg6IEZJWDogd2FybmluZwoKMjAwMi0wNC0xNSAwOTowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiB1c2Ugc3RyZWFtIG5vdCBzcHJpbnRmCgoyMDAyLTA0LTE1IDA4OjQ4ICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEZpbGVzRGlmZmVyIGNoZWNrcyBmb3IgMCBieXRlCgkgIGZpbGVzCgoyMDAyLTA0LTE0IDE1OjMyICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IG1vcmUgcGFyYW5vaWQgY2hlY2tpbmdzCgoyMDAyLTA0LTEyIDEzOjI4ICBiYXJyZQoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLnJjOiBFTkg6IG1ha2UgR1VJIHNsaWdobHR5IGxhcmdlciB0bwoJICBhY2NvbW9kYXRlIGxvbmcgcGF0aHMKCjIwMDItMDQtMTIgMTI6MDUgIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEZJWDogaW9zdHJlYW0gYmluYXJ5IGZsYWcgc2hvdWxkIGJlCgkgIHVzZWQgZm9yIGN5Z3dpbiB0b28KCjIwMDItMDQtMTIgMDk6NTcgIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEZJWDogZml4IFVNUgoKMjAwMi0wNC0xMSAxODo1OSAgYmFycmUKCgkqIFNvdXJjZS9jY29tbWFuZC5jeHg6IEVOSDogYWxzbyBkaXNwbGF5cyBjb21tYW5kIG91dHB1dAoKMjAwMi0wNC0xMSAxODoxNyAgYmFycmUKCgkqIFNvdXJjZS9jY29tbWFuZC5jeHg6IGNhbiBiZSB1c2VkIHRvIHRpbWUgY29tbWFuZHMgKHRpbWUoKSAmCgkgIGNsb2NrKCkpCgoyMDAyLTA0LTExIDE3OjAyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IHNwZWVkCgkgIGltcHJvdmVtZW50cwoKMjAwMi0wNC0xMSAxNjo1OCAgc3RhcnJldmVsZAoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCgkgIEFsbG93IG1vZHVsZXMgdG8gYnVpbGQgcHJvcGVybHkgYWdhaW4uIChicm9rZW4gd2hlbiBDeHggdGVzdGluZwoJICB3YXMgYWRkZWQpCgoyMDAyLTA0LTExIDExOjMwICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBpbmNyZWFzZQoJICBjb3ZlcmFnZQoKMjAwMi0wNC0xMSAxMDoyOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICBFTkg6IGNsZWFuIHVwIHV0aWxpdHkgcnVsZSBnZW5lcmF0aW9uCgoyMDAyLTA0LTExIDEwOjExICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogRU5IOiB1c2UgdGFyZ2V0IGFzCgkgIHNvdXJjZSBpZiBzb3VyY2UgaXMgZW1wdHkKCjIwMDItMDQtMTEgMTA6MDUgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oOiBFTkg6IHVzZSB0YXJnZXQgYXMgc291cmNlIGlmIHNvdXJjZQoJICBpcyBlbXB0eQoKMjAwMi0wNC0xMSAwOTo1MyAgYmFycmUKCgkqIFNvdXJjZS86IGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRklYOiBlY2hvIHBiLCBtYWtlIE5tYWtlIGdlbiB1c2UKCSAgVW5peCBnZW4sIGZhY3Rvcml6ZSBzdHVmZiBpbiBVbml4IGdlbgoKMjAwMi0wNC0xMCAxNzozMyAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBhIHRlc3QgdG8KCSAgY2hlY2sgaWYgbW9yZSB0aGFuIG9uZSBwb3N0LWJ1aWxkIGNvbW1hbmQgY2FuIGJlIGF0dGFjaGVkLiBpdAoJICBmYWlscyByaWdodCBub3cuCgoyMDAyLTA0LTEwIDE2OjQ1ICBhbmR5CgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBGaXggcHJvYmxlbSB3aXRoIGN1c3RvbQoJICBjb21tYW5kcyBvbiB1bml4CgoyMDAyLTA0LTEwIDEyOjEzICBraW5nCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogRVJSOiBVc2VJdCgpIG1pc3NpbmcgcmV0dXJuIHR5cGUuCgoyMDAyLTA0LTEwIDExOjIzICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L3Rlc3RDb25seS5jLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L3Rlc3RDb25seS5jOiBFTkg6IG9ubHkgY2hlY2sgZmxhZyBvbgoJICB1bml4CgoyMDAyLTA0LTEwIDA4OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogZml4IHdhcm5pbmcKCjIwMDItMDQtMDkgMTI6MjIgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L3Rlc3RDb25seS5oLAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdENvbmx5LmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdENvbmx5LmgsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGNoZWNrIGZvcgoJICBjb21waWxlIGZsYWdzIGFuZCBhZGQgYmFjayBjIGZsYWcgdG8gdW5peCBnZW5lcmF0b3IKCjIwMDItMDQtMDkgMTI6MTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogY2hlY2sgZm9yIGNvbXBpbGUgZmxhZ3MKCSAgYW5kIGFkZCBiYWNrIGMgZmxhZyB0byB1bml4IGdlbmVyYXRvcgoKMjAwMi0wNC0wOSAxMjowMiAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuYzogRU5IOiBjaGVjayBmb3IgY29tcGlsZQoJICBmbGFncyBhbmQgYWRkIGJhY2sgYyBmbGFnIHRvIHVuaXggZ2VuZXJhdG9yCgoyMDAyLTA0LTA5IDExOjMzICBiYXJyZQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBxdWljayBzdGFiIGF0IGEgcm9sbHVwIGJ1dHRvbgoKMjAwMi0wNC0wOSAxMDoxOSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvdGVzdENvbmx5LmMsIENvbXBsZXgvTGlicmFyeS90ZXN0Q29ubHkuaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L3Rlc3RDb25seS5jLAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdENvbmx5LmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvdGVzdENvbmx5Lmg6IGNvcnJlY3QgZXhwb3J0cyBmb3IKCSAgd2luZG93cwoKMjAwMi0wNC0wOSAwOTozNyAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvc2hhcmVkRmlsZS5oLAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvc2hhcmVkRmlsZS5oLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L3NoYXJlZEZpbGUuaDogYyBub3QgYysrIGNvbW1lbnQKCjIwMDItMDQtMDkgMDg6NTUgIGhvZmZtYW4KCgkqIERhcnRDb25maWcuY21ha2U6ICBjaGFuZ2UgRVNUIHRvIEVEVAoKMjAwMi0wNC0wOCAxOTozMSAgYmlkZGkKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBSZXBsYWNlU3RyaW5nIGRpZG4ndCB3b3JrIHByb3Blcmx5CgkgIGlmIHJlcGxhY2Ugd2FzIGxvbmdlciB0aGFuIHdpdGggYXMgbGVuZ3RoIGFkZGVkIHRvIHN0YXJ0IHBvcyBvbgoJICBuZXh0IHNlYXJjaCB3YXMgcmVwbGFjZUxlbmd0aCAgaW5zdGVhZCBvZiB3aXRoTGVuZ3RoCgoyMDAyLTA0LTA4IDE1OjAxICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBDWFhDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgY2NvbmZpZ3VyZSwKCSAgY2NvbmZpZ3VyZS5pbjogW25vIGxvZyBtZXNzYWdlXQoKMjAwMi0wNC0wOCAxMzozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NYWENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBUZW1wbGF0ZXMvY2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2Njb25maWd1cmUuaW4sIFRlbXBsYXRlcy9jeHhjb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jeHhjb25maWd1cmUuaW4sCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXgvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L3Rlc3RDb25seS5oLAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvdGVzdENvbmx5LmMsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS90ZXN0Q29ubHkuaCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuYywKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS90ZXN0Q29ubHkuaDogRU5IOiB1c2Ugc2VwYXJhdGUKCSAgdmFycyBmb3IgY3JlYXRpbmcgYysrIGFuZCBjIHNoYXJlZCBsaWJyYXJpZXMgYW5kIGFkZCBhIHRlc3QgZm9yIGMKCSAgbGlicmFyaWVzCgoyMDAyLTA0LTA1IDEyOjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHg6IGV4cGFuZCA7IGFyZ3MKCjIwMDItMDQtMDUgMTA6NTEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogaW1wcm92ZWQgZmluZGluZyBwdXJpZnkgb24gd2luZG93cyB0byB1c2UKCSAgcmVnaXN0cnkKCjIwMDItMDQtMDUgMDk6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IE1ha2VmaWxlLmJvcmxhbmQsIGNtYWtldGVzdC5jeHgsIGNtYWtldGVzdC5oLmluOiBFTkg6CgkgIG1ha2Ugc3VyZSB0aGUgdGVzdCB0ZXN0cyB0aGUgcmlnaHQgY21ha2UsIGFuZCBub3QgdGhlIGNtYWtlIHVzZWQKCSAgdG8gYm9vdHN0cmFwIHRoaXMgY21ha2UKCjIwMDItMDQtMDUgMDc6MjIgIGhvZmZtYW4KCgkqIFRlc3RzL1Rlc3REcml2ZXIvdGVzdEFyZ3MuaDogRU5IOiBhZGQgbWlzc2luZyBmaWxlCgoyMDAyLTA0LTA0IDE2OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmgsIFRlc3RzL1Rlc3REcml2ZXIvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogYWRkIHRoZSBhYmlsaXR5IHRvIHByb2Nlc3MgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBpbiB0aGUKCSAgdGVzdCBkcml2ZXIgYmVmb3JlIHRoZSB0ZXN0IGRyaXZlciBnZXRzIHRoZW0KCjIwMDItMDQtMDQgMTE6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DWFhDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgVGVtcGxhdGVzL2N4eGNvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2N4eGNvbmZpZ3VyZS5pbjogRU5IOiBzZXBhcmF0ZSB0aGUgYXIgcHJvZ3JhbSBmb3IgY3h4CgkgIGFuZCBjCgoyMDAyLTA0LTA0IDEwOjA4ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ01ha2VMaXN0cy50eHQ6IHVwZGF0ZSBpbnN0YWxsIGluZm9ybWF0aW9uCgoyMDAyLTA0LTA0IDA5OjA0ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjeHhjb25maWd1cmUsIGN4eGNvbmZpZ3VyZS5pbjogQlVHOiBhZGQgc3lzdGVtCgkgIGNvbW1hbmQgYmFjayBpbnRvIHNjcmlwdAoKMjAwMi0wNC0wMyAxNjoxNCAgaG9mZm1hbgoKCSogU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgU291cmNlL2NtRXhlY1Byb2dyYW1Db21tYW5kLmgsCgkgIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbWFrZXRlc3QuY3h4LAoJICBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogRU5IOiBmaXggbW9yZSBzcGFjZQoJICBwcm9ibGVtcywgeW91IGNhbiBhZGQgYXJncyB0byB0aGUgRXhlY1Byb2dyYW0gY29tbWFuZCBzZXBhcmF0bHkKCSAgbm93CgoyMDAyLTA0LTAzIDEzOjUzICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IE1vcmUgcGxhY2VzIHRvIGZpbmQgVENML1RLIGZvciBleGFtcGxlIG9uCgkgIERlYmlhbgoKMjAwMi0wNC0wMiAxNTo0MiAgaG9mZm1hbgoKCSogQ01ha2UucnRmLCBFeGFtcGxlL0RlbW8vQ01ha2VMaXN0cy50eHQsCgkgIEV4YW1wbGUvSGVsbG8vQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsCgkgIFNvdXJjZS9jbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTVNEb3RORVRHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTVNQcm9qZWN0R2VuZXJhdG9yLmN4eCwgU291cmNlL2NtTVNQcm9qZWN0R2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmgsIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsIFNvdXJjZS9jbVRhcmdldC5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5oLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgU291cmNlL2NtYWtlLmN4eCwKCSAgVGVtcGxhdGVzL2Njb25maWd1cmUsIFRlbXBsYXRlcy9jY29uZmlndXJlLmluLAoJICBUZW1wbGF0ZXMvY3h4Y29uZmlndXJlLCBUZW1wbGF0ZXMvY3h4Y29uZmlndXJlLmluLAoJICBUZXN0cy9DT25seS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvQ09ubHkvY29ubHkuYywKCSAgVGVtcGxhdGVzL2NvbmZpZ3VyZSwgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbiwKCSAgVGVtcGxhdGVzL0NDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NYWENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBFTkg6IGFkZCBlbmFibGUgbGFuZ3VhZ2UKCSAgc3VwcG9ydCBmb3IgUFJPSkVDVCBjb21tYW5kLCB0aGlzIG1lYW5zIHRoYXQgYSBDIG9ubHkgcHJvamVjdCBjYW4KCSAgYmUgYnVpbHQgd2l0aCBjbWFrZSwgZXZlbiB3aXRob3V0IGEgY3h4IGNvbXBpbGVyCgoyMDAyLTA0LTAxIDE0OjU4ICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IGFkZCB0ZXN0IGZvcgoJICByZWdpc3RyeS1yZWxhdGVkIGZ1bmN0aW9ucyAod2luMzIpCgoyMDAyLTA0LTAxIDE0OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogZml4IGZvciByZWdrZXkgYW5kIDsgc2VwYXJhdGlvbgoKMjAwMi0wNC0wMSAxMzozNCAgYmFycmUKCgkqIFNvdXJjZS86IGNjb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOgoJICBhZGQgZnVuY3Rpb25zIHRvIEFQSSAocmVhZCwgd3JpdGUsIGRlbGV0ZSByZWdpc3RyeSBrZXkgdmFsdWUpCgoyMDAyLTA0LTAxIDA4OjA4ICBhbmR5CgoJKiBNb2R1bGVzL0ZpbmRWVEsuY21ha2U6IE1vcmUgZmluZHMgZm9yIFZUSwoKMjAwMi0wMy0zMSAxMTo0MyAgYW5keQoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBBZGQgc29tZSBtb3JlIGxvY2F0aW9ucyBvZiBWVEsKCjIwMDItMDMtMzAgMTc6MTcgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwgY21TZXRDb21tYW5kLmN4eDogRklYOiBnZXQKCSAgcmlkIG9mIHdhcm5pbmdzCgoyMDAyLTAzLTI5IDE4OjA3ICBpYmFuZXoKCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IEVOSDogSEFTX0ZMVEsgdmFyaWFibGUgYWRkZWQuCgkgIEZMVEtfV1JBUF9VSSBjb21tYW5kIG1hZGUgSU5URVJOQUwuCgoyMDAyLTAzLTI5IDE2OjI1ICBiYXJyZQoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBGSVg6IHNob3VsZCBjb21wYXJlIHRvIDAsIG5vdAoJICBOVUxMCgoyMDAyLTAzLTI5IDE2OjAzICBiYXJyZQoKCSogU291cmNlLzogY3Rlc3QuY3h4LCBjdGVzdC5oOiBFTkg6IGlmIC1SIG9yIC1FIHdhcyB1c2VkLCBkaXNwbGF5cwoJICBhbHNvIHRoZSBuYW1lIG9mIHRoZSB0ZXN0cyB0aGF0IHBhc3NlZC4KCjIwMDItMDMtMjkgMTU6NDEgIGJhcnJlCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBGSVg6IGZpeCBkdW1teSBsaWIgbmFtZSBmb3IKCSAgVW5peAoKMjAwMi0wMy0yOSAxNTowMiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0xpYnJhcnkvY21UZXN0TGlicmFyeUNvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4L0xpYnJhcnkvZHVtbXksIENvbXBsZXgvTGlicmFyeS9lbXB0eS5oLAoJICBDb21wbGV4L0xpYnJhcnkvZmlsZTIuY3h4LCBDb21wbGV4L0xpYnJhcnkvZmlsZTIuaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2NtVGVzdExpYnJhcnlDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2R1bW15LCBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvZW1wdHkuaCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2ZpbGUyLmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2ZpbGUyLmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvY21UZXN0TGlicmFyeUNvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2R1bW15LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2VtcHR5LmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvZmlsZTIuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2ZpbGUyLmgsCgkgIENvbXBsZXgvTGlicmFyeS9maWxlRmxhZ3MuY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvZmlsZUZsYWdzLmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9maWxlRmxhZ3MuY3h4OiBFTkg6IGZpeCB0ZXN0cwoKMjAwMi0wMy0yOSAxNDozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtTVNEb3RORVRHZW5lcmF0b3IuY3h4OiBvdXRwdXQgbGlzdCBidWcKCjIwMDItMDMtMjkgMTQ6MjIgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L2NtVGVzdExpYnJhcnlDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2NtVGVzdExpYnJhcnlDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9jbVRlc3RMaWJyYXJ5Q29uZmlndXJlLmguaW46IFtubyBsb2cKCSAgbWVzc2FnZV0KCjIwMDItMDMtMjkgMTQ6MjAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUFkZFRlc3RDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ2FibGVDbGFzc1NldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwgU291cmNlL2NtQ29tbWFuZHMuY3h4LAoJICBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHgsCgkgIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZEZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwKCSAgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwgU291cmNlL2NtTWFrZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmN4eCwgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVFUV3JhcFVJQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldFNvdXJjZUZpbGVzUHJvcGVydGllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVzRmxhZ3NDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU291cmNlRmlsZXNGbGFnc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsCgkgIFRlc3RzL0NvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgVGVzdHMvQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvZmlsZTIuY3h4LCBUZXN0cy9Db21wbGV4L0xpYnJhcnkvZmlsZTIuaCwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvZmlsZTIuY3h4LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0xpYnJhcnkvZmlsZTIuaCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9maWxlMi5jeHgsCgkgIFRlc3RzL0NvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvZmlsZTIuaDogbWFrZSBzdXJlIDsgZXhwYW5zaW9uCgkgIGlzIGRvbmUgaW4gYWxsIGNvbW1hbmRzCgoyMDAyLTAzLTI5IDExOjEyICBob2ZmbWFuCgoJKiBUZXN0cy9UZXN0RHJpdmVyLzogQ01ha2VMaXN0cy50eHQsIHRlc3QxLmN4eCwgdGVzdEV4dHJhU3R1ZmYuY3h4LAoJICB0ZXN0RXh0cmFTdHVmZjIuY3h4LCB0ZXN0RXh0cmFTdHVmZjMuY3h4OiBFTkg6IGFkZCB0ZXN0IGZvciBzZXQKCSAgdG8gY3JlYXRlIHNvdXJjZSBsaXN0cwoKMjAwMi0wMy0yOSAxMToxMSAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4OiBmaXggY29uc3QgcHJvYmxlbQoKMjAwMi0wMy0yOSAxMTowNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbVNldENvbW1hbmQuY3h4LCBjbVNldENvbW1hbmQuaDogRU5IOiBhZGQgYWJpbGl0eSB0byB1c2UgOwoJICBzZXBhcmF0ZWQgbGlzdHMgaW4gU0VUIGFuZCBleHBhbmQgdGhlbSBmb3IgYWRkZXhlY3V0YWJsZSBhbmQKCSAgYWRkbGlicmFyeQoKMjAwMi0wMy0yOSAxMTowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2V0U291cmNlRmlsZVByb3BlcnR5Q29tbWFuZC5oOiBmaXggZG9jcwoKMjAwMi0wMy0yOSAxMDo1NiAgYmFycmUKCgkqIFNvdXJjZS86IGNtTWVzc2FnZUNvbW1hbmQuY3h4LCBjbU1lc3NhZ2VDb21tYW5kLmg6IEVOSDogQWRkCgkgIFNFTkRfRVJST1IgZmxhZyB0byBNRVNTQUdFIHNvIHRoYXQgYW4gZXJyb3IgY2FuIGJlIHJhaXNlZCB3aXRoaW4KCSAgYSBDTWFrZUxpc3QgZmlsZQoKMjAwMi0wMy0yOSAxMDowNyAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogbW9yZSB0ZXN0cwoKMjAwMi0wMy0yOSAxMDowNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Db21tYW5kcy5jeHgsCgkgIGNtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4LCBjbURTUFdyaXRlci5jeHgsCgkgIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4LCBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuY3h4LAoJICBjbUdldFNvdXJjZUZpbGVQcm9wZXJ0eUNvbW1hbmQuaCwgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwKCSAgY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmN4eCwKCSAgY21TZXRTb3VyY2VGaWxlc1Byb3BlcnRpZXNDb21tYW5kLmgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0ZsYWdzQ29tbWFuZC5jeHgsCgkgIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4LCBjbWFrZXRlc3QuY3h4LCBjbWFrZXRlc3QuaC5pbjoKCSAgRU5IOiBtYWpvciBjaGFuZ2UsIHRoZSBjbU1ha2VmaWxlIG5vdyBjb250YWlucyBhIG1hc3RlciBsaXN0IG9mCgkgIGNtU291cmNlRmlsZSBvYmplY3RzLCB0aGUgc291cmNlIGxpc3RzIHJlZmVyZW5jZSB0aGUgbGlzdCB2aWEKCSAgcG9pbnRlcnMsIGFsc28geW91IGNhbiBub3cgc2V0IHByb3BlcnRpZXMgb24gYSBmaWxlLCBsaWtlIGNvbXBpbGUKCSAgZmxhZ3MsIGFic3RyYWN0LCBldGMuCgoyMDAyLTAzLTI5IDA4OjQyICBiYXJyZQoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBGSVg6IHRvbG93ZXIgaXMgaW4gPGN0eXBlLmg+CgkgICEsIGZyZW5jaHkKCjIwMDItMDMtMjggMTE6NDMgIGJhcnJlCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEVOSDogcGVyZm9ybSBjYXNlIGluc2Vuc2l0aXZlCgkgIGNvbXBhcmlzb24gb24gdGVzdCBuYW1lcwoKMjAwMi0wMy0yNyAxNjoxOSAgYmFycmUKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogRklYOiBjbVNvdXJjZUZpbGU6OlNldE5hbWUgd2FzCgkgIG5vdCBjYWxsZWQgY29ycmVjdGx5IGZvciB0aGUgdGVzdCBzb3VyY2UgZmlsZXMKCjIwMDItMDMtMjcgMTU6NTIgIGJhcnJlCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEVOSDogc21hbGwgZm9ybWF0dGluZyBlbmgKCjIwMDItMDMtMjcgMTM6NTQgIGJhcnJlCgoJKiBUZXN0cy86IENvbXBsZXgvVmFyVGVzdHMuY21ha2UsIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleE9uZUNvbmZpZy9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9WYXJUZXN0cy5jbWFrZSwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogYWRkIGEgbW9yZQoJICBzdHJlc3NpbmcgRk9SRUFDSCB0ZXN0LgoKMjAwMi0wMy0yNyAxMzo0NiAgYmFycmUKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgVGVzdHMvVGVzdERyaXZlci9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvVGVzdERyaXZlci90ZXN0My5jeHgsIFRlc3RzL1Rlc3REcml2ZXIvc3ViZGlyL3Rlc3QzLmN4eDoKCSAgRU5IOiBhZGQgdGVzdGRyaXZlciB0ZXN0IHdpdGggc291cmNlIGZpbGUgaW4gc3ViZGlyCgoyMDAyLTAzLTI3IDEwOjU1ICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogRklYOiBkbyBub3QgdXNlCgkgIENNQUtFX0NGR19JTlRESVIsIGp1c3QgdXNlIExJTktfRElSRUNUT1JJRVMKCjIwMDItMDMtMjcgMTA6NTQgIGJhcnJlCgoJKiBUZXN0cy86IFRlc3RpbmcvQ01ha2VMaXN0cy50eHQsIFdyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBGSVg6IGRvCgkgIG5vdCBuZWVkIENNYWtlTGliCgoyMDAyLTAzLTI2IDE4OjA2ICBiYXJyZQoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBFTkg6IGtlZXAgdGhlIG5hbWUgb2YgdGhlIHRlc3QKCSAgYXMgY2xvc2UgdG8gdGhlIHNvdXJjZSBmaWxlIChvbmx5IHRoZSBmdW5jdGlvbiBuYW1lIGlzIGNsZWFuZWQKCSAgdXApCgoyMDAyLTAzLTI2IDE3OjUzICBiYXJyZQoKCSogU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuY3h4OiBFTkg6IGFkZCAtUiAoc2ltaWxhciB0byBjdGVzdAoJICBidXQgdXNlIHN1YnN0ciBpbnN0ZWFkIG9mIHJlZ2V4cCkuIGluZGVudC4KCjIwMDItMDMtMjYgMTY6NDUgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUZvckVhY2hDb21tYW5kLmgsIGNtRnVuY3Rpb25CbG9ja2VyLmgsIGNtTWFrZWZpbGUuY3h4OgoJICBGSVg6IGZvcmVhY2ggZnVuY3Rpb24tYmxvY2tlcnMgd2VyZSB1c2luZyBleHBhbmRlZCBhcmdzLiBBZGQKCSAgdmlydHVhbCBmdW5jIHRvIHNwZWNpZnkgaWYgZnVuY3Rpb24gYmxvY2tlciBuZWVkcyB0aGVtIGV4cGFuZGVkCgkgIG9yIG5vdC4KCjIwMDItMDMtMjYgMTY6NDQgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6CgkgIEV4cGFuZExpc3RBcmd1bWVudHMoKTogZW1wdHkgZWxlbWVudHMgaW4gc2VtaS1jb2xvbi1zZXBhcmF0ZWQKCSAgc3RyaW5nLWxpc3QgY2FuIG5vdyBiZSBpZ25vcmVkLgoKMjAwMi0wMy0yNiAxNjo0MiAgYmFycmUKCgkqIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eDogRU5IOiBub3cgc3VwcG9ydHMgdGVzdHMgaW5zaWRlCgkgIHN1Yi1kaXJzCgoyMDAyLTAzLTI2IDE0OjQyICBiYXJyZQoKCSogVGVzdHMvV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogVVNFX01BTkdMRURfTUVTQSBpcyBtb3JlCgkgIGNhcmVmdWwgbm93LiBUcnkgdG8gdHJpY2sgaXQgYWdhaW4uCgoyMDAyLTAzLTI2IDE0OjQxICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdGluZy9DTWFrZUxpc3RzLnR4dCwgV3JhcHBpbmcvQ01ha2VMaXN0cy50eHQ6IEVOSDogVXNlCgkgICR7Q01BS0VfQ0ZHX0lOVERJUn0gaW5zdGVhZCBvZiBoYXJkY29kZWQgUmVsSW5mbywgRGVidWcsIFJlbGVhc2UsCgkgIGV0Yy4KCjIwMDItMDMtMjYgMTI6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHg6IEVOSDogYWRkIGVycm9yIGNoZWNraW5nIGZvcgoJICBtbWVzYQoKMjAwMi0wMy0yNiAxMjozOCAgaG9mZm1hbgoKCSogU291cmNlLzogY2NvbW1hbmQuY3h4LCBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGNjb21tYW5kIGZvciBkZWwgb24KCSAgd2luZG93cwoKMjAwMi0wMy0yNiAxMjozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IEVOSDogc2hvdyBvdXRwdXQgd2hlbiBydW5uaW5nIHRlc3RzCgoyMDAyLTAzLTI2IDEyOjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DcmVhdGVUZXN0U291cmNlTGlzdC5jeHg6IEVOSDogaWYgbm8gYXJndW1lbnRzIGFyZSBnaXZlbgoJICBhbmQgdGhlcmUgaXMgb25seSBvbmUgdGVzdCwgdGhlbiBydW4gaXQKCjIwMDItMDMtMjUgMTc6MDMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IHJlbW92ZWQgcXVvdGVzIGZyb20gY21ha2UgYW5kIGNjb21tYW5kCgkgIGV4ZWN1dGFibGUgdG8gYmUgY29uc2lzdGFudAoKMjAwMi0wMy0yNSAxNjoyNCAgYmFycmUKCgkqIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmN4eDogRU5IOiBzdXBwb3J0IHNlbWktY29sb24gZm9ybWF0IChsaXN0CgkgIG9mIGFyZ3MgYXMgc3RyaW5nKQoKMjAwMi0wMy0yNSAxNTo1OSAgYmFycmUKCgkqIFNvdXJjZS86IGNjb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogY21Db3B5RmlsZSA7IHRoZQoJICBwYXRoIHRvIHRoZSBkZXN0aW5hdGlvbiBmaWxlIHdpbGwgYmUgY3JlYXRlZCA7IHNlY29uZCBhcmcgY2FuIGJlCgkgIGEgZGlyZWN0b3J5LgoKMjAwMi0wMy0yNSAxNTo1OCAgYmFycmUKCgkqIFRlbXBsYXRlcy86IENNYWtlRG90TmV0U3lzdGVtQ29uZmlnLmNtYWtlLAoJICBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEFkZCBzdWZmaXhlcwoKMjAwMi0wMy0yMCAxNjoxOCAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21Db21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbUNyZWF0ZVRlc3RTb3VyY2VMaXN0LmN4eCwKCSAgU291cmNlL2NtQ3JlYXRlVGVzdFNvdXJjZUxpc3QuaCwgU291cmNlL2NtYWtldGVzdC5jeHgsCgkgIFRlc3RzL1Rlc3REcml2ZXIvQ01ha2VMaXN0cy50eHQsIFRlc3RzL1Rlc3REcml2ZXIvdGVzdDEuY3h4LAoJICBUZXN0cy9UZXN0RHJpdmVyL3Rlc3QyLmN4eCwgVGVzdHMvVGVzdERyaXZlci90ZXN0My5jeHg6IEVOSDogYWRkCgkgIG5ldyBjb21tYW5kIHRvIGNyZWF0ZSBhIHRlc3QgZHJpdmVyCgoyMDAyLTAzLTIwIDEzOjE2ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSS5mbCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmgsCgkgIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtEaWFsb2cuY3h4LAoJICBTb3VyY2UvRkxUS0RpYWxvZy9GTFRLRGlhbG9nLmRzcCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvRkxUS1Byb3BlcnR5SXRlbVJvdy5jeHgsCgkgIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUl0ZW1Sb3cuaCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvRkxUS1Byb3BlcnR5TGlzdC5jeHgsCgkgIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUxpc3QuaCwKCSAgU291cmNlL0ZMVEtEaWFsb2cvTWFrZWZpbGUuaW46IEVOSDogcmVtb3ZlIGZsdGsgZGlhbG9nIGFzIGl0IGlzCgkgIG5vIGxvbmdlciBzdXBwb3J0ZWQKCjIwMDItMDMtMTkgMTI6MjUgIGFuZHkKCgkqIFNvdXJjZS9jY29tbWFuZC5jeHg6IFJldHVybiBlcnJvciBvbiBjb3B5CgoyMDAyLTAzLTE4IDExOjU5ICBhbmR5CgoJKiBTb3VyY2UvY2NvbW1hbmQuY3h4OiBSZW1vdmUgd2FybmluZyBhYm91dCBzaWduIGFuZCB1bnNpZ25lZAoKMjAwMi0wMy0xNSAxNTo0MiAgYW5keQoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAuZHN3LCBjY29tbWFuZC5jeHgsCgkgIGNjb21tYW5kLmRzcCwgY21ha2UuY3h4OiBBZGQgY2NvbW1hbmQgZm9yIGV4ZWN1dGluZyBjb21tYW5kcyBvbgoJICB0aGUgc3lzdGVtLCBzbyBieSB1c2luZyBBRERfQ1VTVE9NX0NPTU1BTkQsIHlvdSBjYW4gbWFrZSBydWxlcyB0bwoJICBkbyBzb21lIHN5c3RlbSBjb21tYW5kcyBkdXJpbmcgYnVpbGQuIEN1cnJlbnRseSBzdXBwb3J0ZWQKCSAgY29tbWFuZHMgYXJlIGNvcHkgYW5kIHJlbW92ZS4gT3RoZXJzIHdpbGwgZm9sbG93LgoKMjAwMi0wMy0xNSAxMzoyMCAgcGVyZXJhCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc0ZsYWdzQ29tbWFuZC5jeHg6IEJVRzogVGhlIHNvdXJjZSBmaWxlIG1heSBiZQoJICBzcGVjaWZpZWQgd2l0aCBhbiBleHRlbnNpb24uCgoyMDAyLTAzLTE1IDEwOjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBsZXNzIG5vaXN5IGFib3V0IGNoYW5naW5nIGRpcmVjdG9yaWVzCgoyMDAyLTAzLTE1IDA5OjQwICBiZXJrCgoJKiBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IFRoZXJlIGNhbiBiZSBtdWx0aXBsZSBhbnNpCgkgIGZsYWdzIG5vdwoKMjAwMi0wMy0xNSAwOToyMyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL2NvbmZpZ3VyZTogSFAgYWRkIEFlIGZsYWcKCjIwMDItMDMtMTUgMDk6MTQgIGJlcmsKCgkqIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEFkZGVkIGJldHRlciBzdXBwb3J0IGZvciBIUHV4CgoyMDAyLTAzLTE0IDE2OjA0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogYWRkIC5pbiBhcyBhIGhlYWRlciBmaWxlIHR5cGUsIGFzIGl0CgkgIGNhbiBub3QgYmUgY29tcGlsZWQKCjIwMDItMDMtMTQgMTY6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiAuaCBub3QgdHdvIC5jeHggZmlsZXMKCjIwMDItMDMtMTQgMTQ6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggUnVuQ29tbWFuZCBhZ2Fpbi4uLiBiYWNrIHRvCgkgIHN5c3RlbSwgYnV0IHdpdGggR2V0U2hvcnRQYXRoCgoyMDAyLTAzLTE0IDE0OjU5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IGZpeCBmb3IgcGF0aHMgd2l0aCBzcGFjZXMKCjIwMDItMDMtMTQgMTQ6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oOiBCVUc6IGZpeCBmb3IgZmlsZXMgd2l0aCBkYXNoZXMgaW4KCSAgdGhlbQoKMjAwMi0wMy0xNCAxMToxMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbWFrZXRlc3QuY3h4LCBjdGVzdC5jeHg6CgkgIEVOSDogb3ZlcmhhdWwgb2YgUnVuQ29tbWFuZCBvbiB3aW5kb3dzLCBpZiBvbmx5IHdpbjMyIGhhZAoJICBwb3Blbi4uLgoKMjAwMi0wMy0xMyAxNToyOSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXAuY3BwLCBDTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgUGF0aERpYWxvZy5jcHA6IFJlbW92ZSB3YXJuaW5ncwoKMjAwMi0wMy0xMyAxNDoyMyAgbWFydGluawoKCSogU291cmNlLzogY21EU1BXcml0ZXIuY3h4LCBjbURTV1dyaXRlci5jeHg6IEVOSDogY2xvc2VyIHRvIHdvcmtpbmcKCSAgd2l0aCBzcGFjZXMgaW4gdGhlIHBhdGgKCjIwMDItMDMtMTMgMTA6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlQ2xhc3NTZXQuY3h4LCBjbUNhYmxlQ2xhc3NTZXQuaCwgY21EaXJlY3RvcnkuY3h4LAoJICBjbURpcmVjdG9yeS5oLCBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgY21GaW5kRmlsZUNvbW1hbmQuY3h4LAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmN4eCwKCSAgY21SZWd1bGFyRXhwcmVzc2lvbi5jeHgsIGNtU291cmNlR3JvdXAuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LAoJICBjbWFrZXRlc3QuY3h4LCBjdGVzdC5jeHg6IEVOSDogcmVtb3ZlIHNldmVyYWwgY29tcGlsZXIgd2FybmluZ3MKCjIwMDItMDMtMTIgMTA6MTYgIGtpbmcKCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IEFkZGVkIHRlc3QgZm9yIGV4cGxpY2l0CgkgIGluc3RhbnRpYXRpb24gc3VwcG9ydC4KCjIwMDItMDMtMTEgMTY6MDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4OiBFTkg6IGFkZCBlcnJvciBjaGVja2luZyBmb3Igb3B0aW9uCgkgIGNvbW1hbmRzIHdpdGggdG9vIG1hbnkgYXJndW1lbnRzCgoyMDAyLTAzLTExIDEyOjExICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5oOiBFTkg6IGFkZAoJICBzdXBwb3J0IGZvciAuZGVmIGZpbGVzCgoyMDAyLTAzLTExIDA4OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHg6IEJVRzogbWFrZSBzdXJlIGxpYnJhcmllcyBkbyBub3QKCSAgZGVwZW5kIG9uIHRoZW1zZWx2ZXMKCjIwMDItMDMtMTAgMTg6MjQgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IHRyeSB0byBnZXQgY3JhenkgZGVjCgkgIGN4eCB0byB3b3JrIGFnYWluLi4uIG9uZSBtb3JlIHRpbWUKCjIwMDItMDMtMTAgMTA6MDIgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IHRyeSB0byBnZXQgY3JhenkgZGVjCgkgIGN4eCB0byB3b3JrIGFnYWluLi4uCgoyMDAyLTAzLTA4IDEzOjEyICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IG1vcmUgZGVjIHNpbGx5CgkgIHN0dWZmCgoyMDAyLTAzLTA4IDExOjAxICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBtb3JlIHN0dXBpZCBkZWMgY3h4CgkgIHRyaWNrcy4uLgoKMjAwMi0wMy0wOCAwODoxOSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogRU5IOiBhZGQgb25lIG1vcmUKCSAgc3R1cGlkIGZ1bmN0aW9uIGNhbGwgZm9yIHRoZSBkZWMgY3h4IGNvbXBpbGVyLi4uCgoyMDAyLTAzLTA4IDA3OjI1ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiB0cnkgdG8gZml4IGRlYyBjeHgKCjIwMDItMDMtMDcgMjI6MDcgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogYWRkIG1vcmUganVuawoJICBmb3IgdGhlIGRlYyBjeHggY29tcGlsZXIgdG8gZm9yY2UgaXQgdG8gaW5zdGFudGlhdGUgc3R1ZmYKCjIwMDItMDMtMDcgMTI6MTMgIGhvZmZtYW4KCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEVOSDogdXNlIHRoZSBzdHJpbmcKCSAgY2xhc3MgdG8gZm9yY2UgdGhlIGRlYyBjb21waWxlciB0byBpbnN0YW50aWF0ZSBzb21lIHRlbXBsYXRlcwoKMjAwMi0wMy0wNyAxMDo0MSAgYmFycmUKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQnVpbGQgY21ha2V0ZXN0IGV2ZW4gaWYgdGVzdGluZyBpZiBPRkYgKHNvCgkgIHRoYXQgaXQgY2FuIGJlIHVzZWQgZXh0ZXJuYWxseSkKCjIwMDItMDMtMDYgMTc6NTggIGJhcnJlCgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIGN0ZXN0Lmg6IEVOSDogYWRkIC1FIG9wdGlvbiAoZXhjbHVkZSB0ZXN0cwoJICBtYXRjaGluZyBhIHJlZ2V4cCkKCjIwMDItMDMtMDYgMTY6MzAgIGJhcnJlCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21ha2V0ZXN0LmN4eDogRU5IOiBhZGQgY21ha2V0ZXN0IHRvCgkgIGluc3RhbGwgdGFyZ2V0cyAoc28gdGhhdCBpdCBjYW4gYmUgdXNlZCBpbiBvdGhlciBwcm9qZWN0cykgYW5kCgkgIHBhc3MgdGhlIHJlc3Qgb2YgaXRzIGNvbW1hbmQtbGluZSBhcmdzIHRvIGNtYWtlCgoyMDAyLTAzLTA2IDEwOjQ0ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ01ha2VOTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IGJ1aWxkIHR5cGUgc2hvdWxkCgkgIG5vdCBiZSBhZHZhbmNlZAoKMjAwMi0wMy0wNiAxMDoxMSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgdGVzdCBmb3IKCSAgc2VtaS1jb2xvbiBzZXBhcmF0ZWQgbGlzdHMgb2YgbGlicmFyaWVzCgoyMDAyLTAzLTA2IDEwOjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBFTkg6IGFkZCBzdXBvcnQgZm9yIHNlbWktY29sb24KCSAgc2VwYXJhdGVkIGxpc3QgdmFyaWFibGVzCgoyMDAyLTAzLTA1IDE4OjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuY3h4LAoJICBjbUFkZERlcGVuZGVuY2llc0NvbW1hbmQuY3h4LCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtQWRkVGVzdENvbW1hbmQuY3h4LAoJICBjbUJ1aWxkQ29tbWFuZC5jeHgsIGNtQ2FibGVDbGFzc1NldENvbW1hbmQuY3h4LAoJICBjbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4LCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21FbHNlQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVDb21tYW5kLmN4eCwgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmN4eCwKCSAgY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1lc3NhZ2VDb21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmN4eCwKCSAgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5jeHgsIGNtU2V0Q29tbWFuZC5jeHgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21TdWJkaXJDb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuY3h4LAoJICBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eDogRU5IOiBleHBhbmQgdmFyaWFibGVzIGluCgkgIGFyZ3VtZW50cyBiZWZvcmUgdGhlIGNvbW1hbmRzIGdldCB0aGVtCgoyMDAyLTAzLTA1IDE4OjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZ2V0IHRoZSBjb3JyZWN0IHJldHVybiB2YWx1ZSBmcm9tCgkgIHBjbG9zZQoKMjAwMi0wMy0wNCAxNTowMCAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvZmlsZUZsYWdzLmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2ZpbGVGbGFncy5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvZmlsZUZsYWdzLmN4eDogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgcGVyIGZpbGUgZmxhZ3MKCjIwMDItMDMtMDQgMTQ6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsCgkgIGNtTVNEb3RORVRHZW5lcmF0b3IuY3h4LCBjbU1TRG90TkVUR2VuZXJhdG9yLmgsIGNtU291cmNlRmlsZS5oLAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtU291cmNlRmlsZXNGbGFnc0NvbW1hbmQuY3h4LCBjbVNvdXJjZUZpbGVzRmxhZ3NDb21tYW5kLmg6IEVOSDoKCSAgYWRkIGZpbGUgc3BlY2lmaWMgY29tcGlsZSBmbGFncwoKMjAwMi0wMy0wNCAxNDoxMSAgaG9mZm1hbgoKCSogVGVzdHMvOiBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhZGQgYSB0ZXN0IGZvcgoJICBwZXIgZmlsZSBmbGFncwoKMjAwMi0wMy0wMSAxNTo0OSAga2luZwoKCSogU291cmNlLzogY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHgsCgkgIGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuaDogRU5IOiBBZGRlZCBzdXBwb3J0IGZvciBpbmNsdWRpbmcKCSAgZXh0cmEgZmlsZXMgaW4gZ2VuZXJhdGVkIGhlYWRlciB0byBnZXQgYWNjZXNzIHRvIGV4cG9ydCBtYWNyb3Mgb2YKCSAgZGVyaXZlZCBwcm9qZWN0cy4KCjIwMDItMDMtMDEgMDk6MDAgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IENNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIENNYWtlRG90TmV0U3lzdGVtQ29uZmlnLmNtYWtlLAoJICBDTWFrZU5NYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwgQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sCgkgIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwgY29uZmlndXJlLCBjb25maWd1cmUuaW46IEVOSDogYWRkCgkgIHNvbWUgT1MvY29tcGlsZXIgdmFyaWFibGVzCgoyMDAyLTAyLTI4IDE1OjU4ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogYWRkIFZFUkJPU0VfQlVJTEQgdG8gb3B0aW9ucwoKMjAwMi0wMi0yOCAxNTo1NyAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtld2l6YXJkLmN4eDogY2hlY2sgYm9vbCB2YWx1ZXMgYW5kIHByZWZlcmUgb2ZmCgoyMDAyLTAyLTI4IDE1OjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5oOiB1c2UgeG1sCgkgIG91dHB1dCBxdW90ZXMgZm9yIHBhdGhzCgoyMDAyLTAyLTI4IDE1OjA2ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogY2hhbmdlIGhwIGNoZWNrcyB0byBhbGwgaHBzCgkgIGFuZCBub3QganVzdCB2ZXJzaW9uIDEwCgoyMDAyLTAyLTI4IDExOjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogbG9vayBmb3IgZXhlIHBhdGggYXMgd2VsbC4KCjIwMDItMDItMjggMTA6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiAgbG9vayBmb3IgLmNvbSBmaWxlcyBiZWZvcmUgLmV4ZQoKMjAwMi0wMi0yOCAwODo0NSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL0NNYWtlRG90TmV0U3lzdGVtQ29uZmlnLmNtYWtlOiBmaW5kIHBhdGggdG8gZGV2ZW52CgoyMDAyLTAyLTI4IDA3OjUwICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ01ha2VEb3ROZXRTeXN0ZW1Db25maWcuY21ha2U6IEVOSDogYWRkIGJ1aWxkIG5hbWUgdG8KCSAgdGhlIGNhY2hlIHdpdGggYSBkZWZhdWx0IHZhbHVlIGZvciBkb3QgbmV0CgoyMDAyLTAyLTI3IDE4OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlRG90TmV0U3lzdGVtQ29uZmlnLmNtYWtlOiBjbGVhbiB1cCBpbiBkb3QgbmV0CgoyMDAyLTAyLTI2IDE1OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIGN0ZXN0Lmg6IGFkZCBjb21tYW5kIGxpbmUgb3B0aW9uIC1EIGZvcgoJICBjb25maWcgZGlyZWN0b3J5IHRvIHJ1bgoKMjAwMi0wMi0yNiAxNToxNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21EU1dXcml0ZXIuY3h4LCBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eDogRU5IOiBhZGQKCSAgUlVOX1RFU1RTCgoyMDAyLTAyLTI2IDExOjQ2ICBiYXJyZQoKCSogU291cmNlL2NtQWRkVGVzdENvbW1hbmQuY3h4OiBGSVg6IGNvbW1hbmQgbm93IGV4cGFuZHMgYXJncyBkdXJpbmcKCSAgdGhlIGZpcnN0IHBhc3MgKGZvdW5kIHRocm91Z2ggRk9SRUFDSCBleGFtcGxlKQoKMjAwMi0wMi0yNiAxMDoxMSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL0NNYWtlRG90TmV0U3lzdGVtQ29uZmlnLmNtYWtlOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTAyLTI2IDA4OjU2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DYWJsZUNsYXNzU2V0LmN4eDogQlVHOiBmaXggdHlwZSBwcm9ibGVtIHNpemVfdHlwZSBpcwoJICB1bnNpZ25lZAoKMjAwMi0wMi0yNSAxODoxNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21CdWlsZENvbW1hbmQuY3h4LCBjbURpcmVjdG9yeS5oLAoJICBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5oLAoJICBjbVJlZ3VsYXJFeHByZXNzaW9uLmgsIGNtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGRvdCBuZXQgYWxtb3N0CgkgIHdvcmtpbmcKCjIwMDItMDItMjUgMTY6NTcgIGJhcnJlCgoJKiBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHg6IEZJWDogY29tbWFuZCBub3cgZXhwYW5kcyAqYWxsKgoJICBhcmdzIChmb3VuZCB0aHJvdWdoIEZPUkVBQ0ggZXhhbXBsZSkKCjIwMDItMDItMjUgMTU6MjIgIGJhcnJlCgoJKiBUZXN0cy9UZXN0aW5nLzogQ01ha2VMaXN0cy50eHQsIFN1Yi9DTWFrZUxpc3RzLnR4dCwKCSAgU3ViL1N1YjIvQ01ha2VMaXN0cy50eHQsIFN1Yi9TdWIyL3Rlc3RpbmcyLmN4eDogRU5IOiBwcm92aWRlIGEKCSAgdGVzdCBmb3IgdG9kYXkncyBSZWFkTGlzdEZpbGUoKSBidWcgZml4CgoyMDAyLTAyLTI1IDE1OjA2ICBiYXJyZQoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBGSVg6IGFsdGhvdWdoIGEgQ01ha2VMaXN0cy50eHQgZmlsZSBjb3VsZAoJICBiZSBzZWFyY2hlZCB1cCAnbicgbGV2ZWwgaW4gdGhlIGRpcmVjdG9yeSB0cmVlLCBSZWFkTGlzdEZpbGUoKQoJICBhbHdheXMgaW1wbGllZCBhIENNYWtlTGlzdHMudHh0IGZpbGUgd2FzIHVwICpvbmUqIGxldmVsLgoKMjAwMi0wMi0yNSAxMzoyMCAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRGFydC5jbWFrZTogRU5IOiBsb29rIGZvciBEYXJ0IGluIGM6CgoyMDAyLTAyLTI1IDEyOjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1BhdGhEaWFsb2cuaDogRU5IOiBmaXggd2FybmluZwoKMjAwMi0wMi0yNSAxMTo1OCAgYmFycmUKCgkqIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuY3h4OiBFTkg6IEV4cGFuZCB2YXJzIGluIFNVQkRJUlMKCjIwMDItMDItMjUgMTA6NDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggcmVtb3ZlIG9mIGN5Z2RyaXZlIHBhdGggc3R1ZmYKCjIwMDItMDItMjMgMTA6MDAgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBzdGQ6Omlvczo6YmluYXJ5IGlzIG9ubHkgbmVlZGVkCgkgIGZvciBXaW5kb3dzIHBsYXRmb3JtcywgYW5kIGlzbid0IHN1cHBvcnRlZCBmb3IgYWxsIFVOSVgKCSAgcGxhdGZvcm1zLgoKMjAwMi0wMi0yMiAxNTo0MCAgaG9mZm1hbgoKCSogU291cmNlLzogY21BZGRUZXN0Q29tbWFuZC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBzcGFjZXMgaW4gcGF0aHMgb24gdW5peAoKMjAwMi0wMi0yMiAxMzozOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbURTUFdyaXRlci5jeHgsCgkgIGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21NU0RvdE5FVEdlbmVyYXRvci5jeHgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtYWtldGVzdC5jeHg6IEVOSDogYmlnIGNoYW5nZSBpbiB0aGUKCSAgcGF0aCBoYW5kbGluZywgb25lIGZ1bmN0aW9uIENyZWF0ZU91dHB1dFBhdGggaXMgdXNlZCB0byBlc2NhcGUKCSAgc3BhY2VzIGFuZCBjb252ZXJ0IHRvIHRoZSBuYXRpdmUgcGF0aCB0eXBlCgoyMDAyLTAyLTIyIDEwOjA4ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogQW5vdGhlciBhdHRlbXB0IGF0IGdldHRpbmcKCSAgY21Db3B5RmlsZSB0byB3b3JrIGNvcnJlY3RseS4gIFRoZSBwcmV2aW91cyBpbXBsZW1lbnRhdGlvbiB3YXMKCSAgY29ycmVjdCwgYnV0IGRpZG4ndCB3b3JrIG9uIEhQVVggZHVlIHRvIHN0cmVhbSBsaWJyYXJ5IGJ1Z3MuCgkgIFRoaXMgaW1wbGVtZW50YXRpb24gd2lsbCBob3BlZnVsbHkgd29yayBldmVyeXdoZXJlLgoKMjAwMi0wMi0yMSAxNzozMiAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGZpeCBjb3B5IGZpbGUgZm9yIEhQCgoyMDAyLTAyLTIxIDE2OjA2ICBiYXJyZQoKCSogU291cmNlLzogY3Rlc3QuY3h4LCBjdGVzdC5oOiBFTkg6IFNpbmNlIGVhY2ggdGVzdCBjYW4gc2VuZCBhIGxvdAoJICBvZiB0ZXh0IHRvIHN0ZGVyci9zdGRvdXQsIGN0ZXN0IG5vdyBkaXNwbGF5cyB0aGUgbGlzdCBvZiB0ZXN0cwoJICB0aGF0IGZhaWxlZCBhdCB0aGUgZW5kIG9mIHRoZSBwcm9jZXNzLgoKMjAwMi0wMi0yMSAxNTo1NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oLCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogYWRkCgkgIGEgdmlydHVhbCBDcmVhdGVNYWtlVmFyaWFibGUgdG8gc2hvcnRlbiBtYWtlZmlsZSB2YXJpYWJsZXMgZm9yCgkgIGJvcmxhbmQgbWFrZQoKMjAwMi0wMi0yMSAwODo1MyAgYmVyawoKCSogU291cmNlL2NtYWtlLmRzcDogQXJnaAoKMjAwMi0wMi0yMSAwODo0MyAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IGFkZCBpZmRlZiBmb3Igd2luZG93cyBmdW5jdGlvbgoKMjAwMi0wMi0yMCAxNToyNyAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogZG90IG5ldCBwb3J0CgoyMDAyLTAyLTIwIDE1OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1TRG90TkVUR2VuZXJhdG9yLmN4eCwgY21ha2V0ZXN0LmN4eDogY2xvc2UgdG8gZG90IG5ldAoJICB3b3JraW5nCgoyMDAyLTAyLTIwIDA5OjE2ICBiZXJrCgoJKiBTb3VyY2UvY21ha2UuZHNwOiBCaWxsIGZvcmdvdCB0byBhZGQgYSBsaWJyYXJ5IHRvIHRoZSByZWxlYXNlCgkgIHRhcmdldC4KCjIwMDItMDItMTkgMTc6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTVNEb3RORVRHZW5lcmF0b3IuY3h4LCBjbU1TRG90TkVUR2VuZXJhdG9yLmg6IEVOSDoKCSAgZ2V0dGluZyBjbG9zZXIKCjIwMDItMDItMTkgMTE6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IE1ha2VmaWxlLmJvcmxhbmQsIENNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBkb3RuZXQgc3R1ZmYKCjIwMDItMDItMTkgMTA6MjMgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvRkxUS0RpYWxvZy5jeHg6IEZJWDogRkxUSyBpbmNsdWRlcyBzaG91bGQgdXNlCgkgICIuSCIgaW5zdGVhZCBvZiAiLmgiCgoyMDAyLTAyLTE5IDA5OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmM6IGZpeCBzcGFjaW5nIG9uIHRleHQKCjIwMDItMDItMTkgMDk6NDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGliLmRzcCwgQ01ha2VMaXN0cy50eHQ6IGFkZCBkb3QgbmV0IHN0dWZmIHRvCgkgIGNtYWtlbGlzdHMgZmlsZSBhbmQgZHNwIGZpbGUKCjIwMDItMDItMTggMTc6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTVNEb3RORVRHZW5lcmF0b3IuY3h4LCBjbU1TRG90TkVUR2VuZXJhdG9yLmgsCgkgIGNtU0xOV3JpdGVyLmN4eCwgY21TTE5Xcml0ZXIuaCwgY21WQ1Byb2pXcml0ZXIuY3h4LAoJICBjbVZDUHJvaldyaXRlci5oOiBnZXR0aW5nIGNsb3NlciBidXQgc3RpbGwgbm90IHdvcmtpbmcgZG90IG5ldAoJICBzdXBwb3J0CgoyMDAyLTAyLTE4IDE0OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAyLTAyLTE4IDE0OjM2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpYi5kc3AsIGNtTVNEb3RORVRHZW5lcmF0b3IuY3h4LAoJICBjbU1TRG90TkVUR2VuZXJhdG9yLmgsIGNtU0xOV3JpdGVyLmN4eCwgY21TTE5Xcml0ZXIuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtVkNQcm9qV3JpdGVyLmN4eCwgY21WQ1Byb2pXcml0ZXIuaCwKCSAgY21ha2UuY3h4LCBjbWFrZS5kc3A6IEVOSDogZmlyc3QgcGFzcyBhdCBkb3QgbmV0IHN1cHBvcnQKCjIwMDItMDItMTggMTQ6MDkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGZpeCBmb3IgYm9ybGFuZCB0bGliIGZpbGVzIHdpdGgKCSAgZGFzaCBpbiB0aGVtIHByb2JsZW0uCgoyMDAyLTAyLTE0IDEwOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6CgkgIEVOSDogb25seSBkZXBlbmQgc3ViZGlyIGJ1aWxkcyBvbiBUQVJHRVRTLCBub3QgYWxsIHN1YiBkaXIKCSAgb3BlcmF0aW9ucywgd2UgZG8gbm90IHdhbnQgdG8gYnVpbGQgd2hlbiBkb2luZyBhIG1ha2UgZGVwZW5kCgoyMDAyLTAyLTE0IDEwOjAxICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbiwgVGVtcGxhdGVzL2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbjogRU5IOiBkbyBub3QgdXNlIE8yIGcgYXMgZGVmYXVsdCBmbGFncwoKMjAwMi0wMi0xNCAwOTozMSAgYmFycmUKCgkqIERhcnRDb25maWcuY21ha2U6IEVOSDogQWRkIFBST0pFQ1RfVVJMCgoyMDAyLTAyLTEzIDE4OjU3ICBiYXJyZQoKCSogRGFydENvbmZpZy5jbWFrZTogRU5IOiBEb3h5Z2VuIHBhZ2UKCjIwMDItMDItMTMgMTg6NTAgIGJhcnJlCgoJKiBVdGlsaXRpZXMvRG94eWdlbi9kb2NfbWFrZWFsbC5zaC5pbjogRklYOiByZW1vdmUgdGhhdCBnb29kIG9sJwoJICBleGl0IDA7CgoyMDAyLTAyLTEzIDE4OjMyICBiYXJyZQoKCSogVXRpbGl0aWVzL0RveHlnZW4vZG9jX21ha2VhbGwuc2guaW46IEZJWDogdXBkYXRlIGh0bWwgYXJjaGl2ZQoJICBmaWxlbmFtZQoKMjAwMi0wMi0xMyAxODoyOCAgYmFycmUKCgkqIFV0aWxpdGllcy9Eb3h5Z2VuLzogQ01ha2VMaXN0cy50eHQsIGF1dGhvcnMudHh0LAoJICBkb2NfbWFrZWFsbC5zaC5pbiwgZG94eWZpbGUuaW46IEVOSDogQ29udHJpYnV0aW9uIGdyYXBocwoKMjAwMi0wMi0xMyAxNjoxNyAgYmFycmUKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS8uTm9EYXJ0Q292ZXJhZ2U6IFRoaXMgZGlyIHNob3VsZCBub3QgYmUKCSAgY292ZXJlZCAoZm9ybSBkaXN0cmliKQoKMjAwMi0wMi0xMiAxNzozOCAgYmFycmUKCgkqIFRlc3RzL1dyYXBwaW5nLzogQ01ha2VMaXN0cy50eHQsIGR1bW15OiBFTkg6IFRyaWNrIFZUS19XUkFQX0pBVkEKCSAgaW4gYSBiZXR0ZXIgd2F5IChhdm9pZCBDVVNUT01fVEFSR0VUKQoKMjAwMi0wMi0xMSAwOToyMCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXAucmMsIFByb3BlcnR5TGlzdC5jcHAsCgkgIFByb3BlcnR5TGlzdC5oLCByZXNvdXJjZS5oOiBFTkg6IGFkZCBJR05PUkUgb3B0aW9uIGZvciBjYWNoZQoJICB2YWx1ZXMKCjIwMDItMDItMDggMTU6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggQ29sbGFwc2VGdWxsUGF0aCBzbyBhIHRyYWlsaW5nCgkgIHNsYXNoIGlzIG5vdCBhZGRlZCB0byBkaXJlY3RvcmllcwoKMjAwMi0wMi0wNyAxMTozOSAgYW5keQoKCSogVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBFUlI6IENhY2hlIGJpZ2VuZGlhbgoKMjAwMi0wMi0wNyAxMToyOCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogbmV4dCBwYXRjaAoKMjAwMi0wMi0wNyAxMToyNyAgbWFydGluawoKCSogVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiB2YWx1ZSBuZWVkZWQgdG8gYmUgY2FjaGVkCgoyMDAyLTAyLTA2IDEyOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IGFkZCBlbmRzIGF0IGVuZCBvZiBzdHJpbmcKCjIwMDItMDItMDYgMTA6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IGFkZCBib29sIHJldHVybgoJICB2YWx1ZSBzbyBkaWFnbm9zdGljcyBhcmUgZWFzaWVyCgoyMDAyLTAyLTA2IDEwOjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eDogQlVHOiByZW1vdmUgZGVwZW5kIG9uCgkgIGRpcmVjdG9yeSBiZWNhdXNlIGl0IGlzIG5vdCBzdXBwb3J0ZWQgYnkgYWxsIG1ha2VzCgoyMDAyLTAyLTA0IDIyOjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IHVzZSB0YXJnZXQgbGluawoJICBsaWJyYXJpZXMgYW5kIGFkZCB0aGUgbGluayBkaXJlY3RvcnkgZm9yIGNtZm9ybQoKMjAwMi0wMi0wNCAxODo0MSAgYmFycmUKCgkqIE1vZHVsZXMvOiBEb2N1bWVudGF0aW9uLmNtYWtlLCBGaW5kR251cGxvdC5jbWFrZTogQWRkIG1vZHVsZSB0bwoJICBmaW5kIGdudXBsb3QKCjIwMDItMDItMDQgMDg6MjggIGlzY290dAoKCSogU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHg6IHRoZSBnZW5lcmF0ZWQKCSAgbWFrZWZpbGVzL0RTUGZpbGVzIG5vdyBkZXBlbmQgb24gdGhlIGF1eCBzb3VyY2UgZGlyZWN0b3J5J3MgbGFzdAoJICBtb2RpZmllZCBkYXRlLgoKMjAwMi0wMi0wMSAxMzowOCAgYmVyawoKCSogU291cmNlL2NtYWtlLmN4eDogVXNpbmcgY21TeXN0ZW1Ub29sczo6RXJyb3IoKSBpbnN0ZWFkIG9mIGNlcnIuCgoyMDAyLTAyLTAxIDEzOjA3ICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCZXR0ZXIgc3VwcG9ydCBmb3IgcGFyYWxsZWwKCSAgYnVpbGRzLiBTdWJkaXJzIGRlcGVuZCBvbiB0aGVpciBwYXJlbnQuCgoyMDAyLTAyLTAxIDA5OjI4ICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL0NNYWtlTGlzdHMudHh0OiB1c2UgQ01ha2VfU09VUkNFIGFuZCBub3QKCSAgQ01BS0VfUk9PVAoKMjAwMi0wMS0zMSAxNToxNiAgYmxlemVrCgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOiBFTkg6IEFkZGluZyBzZWFyY2ggcGF0aCdzIGZvcgoJICBQWVRIT05fTElCUkFSWQoKMjAwMi0wMS0zMSAxMDozMiAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIEN1cnNlc0RpYWxvZy9DTWFrZUxpc3RzLnR4dDogdHJ5IHRvIGdldAoJICB0aGlzIHdvcmtpbmcgZm9yIGRlYyBjeHggZGVmYXVsdCBjb21waWxlciBvcHRpb25zCgoyMDAyLTAxLTMwIDExOjIzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogZml4IGZvciBkZWMgY29tcGlsZXIsIHRoZXkKCSAgc3RpbGwgZG8gbm90IGhhdmUgdGhlIGNvcnJlY3QgYW5zaSBzdHJlYW0gbGlicmFyeQoKMjAwMi0wMS0yNSAwOTowNiAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtLzogZmxkX2RlZi5jLCBmcm1fZGF0YS5jLCBmcm1fZGVmLmMsCgkgIGZybV9kcml2ZXIuYzogRVJSOiBDb3JyZWN0ZWQgYXNzZXJ0aW9ucyBvZiBwb2ludGVycyB0byByZW1vdmUKCSAgd2FybmluZ3MuCgoyMDAyLTAxLTI0IDE0OjE1ICBiZXJrCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IGZvciBuZXR3b3JrIHBhdGhzCgoyMDAyLTAxLTIzIDExOjU4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBwYXRjaCAyIHJlbGVhc2UgdG8gZml4IGRzcCBoZWFkZXIgcHJvYmxlbQoKMjAwMi0wMS0yMyAxMTo1MiAgaG9mZm1hbgoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eDogQlVHOiBhbGxvdyAuaCBmaWxlcyB0byBiZSBhZGRlZCB0byB0aGUKCSAgc291cmNlcwoKMjAwMi0wMS0yMyAxMDo1NiAgYmFycmUKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBFTkg6IHJ1biBDTWFrZSBhIHNlY29uZCB0aW1lLiBUaGUgZmlyc3QKCSAgdGltZSBpdCBpcyBydW4sIHNvbWUgY2FjaGUgdmFsdWVzIGFyZSBjb21wdXRlZC4gVGhlIHNlY29uZCB0aW1lCgkgIGl0IGlzIHJ1biwgc29tZSBjb21tYW5kcyBjaGVjayBpZiB0aGUgdmFsdWUgaXMgYWxyZWFkeSBpbiB0aGUKCSAgY2FjaGUgYW5kIHJldHVybiB0aGF0IHZhbHVlIGluc3RlYWQgb2YgcmUtY29tcHV0aW5nIGl0LiBUaGVyZWZvcmUKCSAgdGhpcyBFTkg6IGEpIG1ha2Ugc3VyZSB0aGF0IHRoaXMgc3BlY2lmaWMgY29kZSBpcyB0ZXN0ZWQsIGIpCgkgIGluY3JlYXNlIGNvdmVyYWdlLgoKMjAwMi0wMS0yMiAxNzoxOCAga2luZwoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBFTkg6IEFkZGVkIG9wdGlvbiBvZiBkaXNhYmxpbmcgZXJyb3IKCSAgbWVzc2FnZSB3aGVuIFZUSyBpcyBub3QgZm91bmQuCgoyMDAyLTAxLTIyIDE1OjU1ICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL1RlbXAvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvVGVtcC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9UZW1wL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0aW5nL0NNYWtlTGlzdHMudHh0LCBUZXN0aW5nL1N1Yi9DTWFrZUxpc3RzLnR4dDogSnVzdCByZW5hbWUKCSAgZGlyCgoyMDAyLTAxLTIyIDE1OjUwICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlQ2FjaGUudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlQ2FjaGUudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUNhY2hlLnR4dCwgQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9DYWNoZS9DTWFrZUNhY2hlLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9DYWNoZS9DTWFrZUNhY2hlLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NhY2hlL0NNYWtlQ2FjaGUudHh0OiBFTkg6IE1vdmUKCSAgQ01ha2VDYWNoZS50eHQgdG8gQ2FjaGUvIGRpcmVjdG9yeSB0byBhdm9pZCBhbnkgaW4tc291cmNlIGJ1aWxkCgkgIHBiLgoKMjAwMi0wMS0yMiAxNDoxNSAgbWlsbGVyanYKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBOZXcgdmFyaWFibGVzIENWU19VUERBVEVfT1BUSU9OUywKCSAgREFSVF9URVNUSU5HX1RJTUVPVVQKCjIwMDItMDEtMjIgMTM6MzAgIGJhcnJlCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogQ292ZXJhZ2UgZm9yCgkgIE9VVFBVVF9SRVFVSVJFRF9GSUxFUwoKMjAwMi0wMS0yMiAxMDoxNyAga2luZwoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oLAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21ha2UuY3h4OiBFUlI6IFJlbW92ZWQKCSAgY21DYWNoZU1hbmFnZXI6OkRlZmluZUNhY2hlIG1ldGhvZC4gIEl0IGlzIG5vIGxvbmdlciBuZWVkZWQuCgoyMDAyLTAxLTIyIDA3OjM3ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBmbGFncyBhbHJlYWR5IHRoZXJlLCBqdXN0CgkgIG5vdCB3b3JraW5nCgoyMDAyLTAxLTIyIDA3OjE4ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0OiBCVUc6IG11c3QgdXNlIEFOU0kgZmxhZ3MgZm9yCgkgIGNvbXBsZXggdGVzdCBub3cuCgoyMDAyLTAxLTIxIDE1OjM5ICB3aWxsCgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHgsCgkgIEZMVEtEaWFsb2cuY3h4LCBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwgRkxUS1Byb3BlcnR5TGlzdC5jeHg6CgkgIEVOSDpVcGRhdGVkIGNvcHlyaWdodAoKMjAwMi0wMS0yMSAxNTozMCAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEFkZCB3YXJuaW5ncy9pbmZvcwoKMjAwMi0wMS0yMSAxNTozMCAgYmFycmUKCgkqIFRlc3RzL1dyYXBwaW5nL0NNYWtlTGlzdHMudHh0OiBBZGQgY292ZXJhZ2UgZm9yCgkgIFZUS19NQUtFX0lOU1RBTlRJQVRPUgoKMjAwMi0wMS0yMSAxNTozMCAgd2lsbAoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsIGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuaCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHgsIGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuaCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsCgkgIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eCwgY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmgsCgkgIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsCgkgIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtQWRkVGVzdENvbW1hbmQuY3h4LCBjbUFkZFRlc3RDb21tYW5kLmgsCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtQnVpbGRDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuaCwgY21CdWlsZE5hbWVDb21tYW5kLmN4eCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQ2FibGVDbGFzc1NldC5oLAoJICBjbUNhYmxlQ2xhc3NTZXRDb21tYW5kLmN4eCwgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5oLAoJICBjbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4LCBjbUNhYmxlV3JhcFRjbENvbW1hbmQuaCwKCSAgY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oLCBjbUNvbW1hbmQuaCwKCSAgY21Db21tYW5kcy5jeHgsIGNtQ29tbWFuZHMuaCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsCgkgIGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwgY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmgsIGNtQ3VzdG9tQ29tbWFuZC5jeHgsCgkgIGNtQ3VzdG9tQ29tbWFuZC5oLCBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsCgkgIGNtRFNXV3JpdGVyLmN4eCwgY21EU1dXcml0ZXIuaCwgY21EYXRhLmgsIGNtRGlyZWN0b3J5LmN4eCwKCSAgY21EaXJlY3RvcnkuaCwgY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsIGNtRWxzZUNvbW1hbmQuY3h4LAoJICBjbUVsc2VDb21tYW5kLmgsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuY3h4LAoJICBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmgsIGNtRW5kRm9yRWFjaENvbW1hbmQuY3h4LAoJICBjbUVuZEZvckVhY2hDb21tYW5kLmgsIGNtRW5kSWZDb21tYW5kLmN4eCwgY21FbmRJZkNvbW1hbmQuaCwKCSAgY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUV4ZWNQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUZMVEtXcmFwVUlDb21tYW5kLmN4eCwgY21GTFRLV3JhcFVJQ29tbWFuZC5oLAoJICBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZEZpbGVDb21tYW5kLmgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21GaW5kTGlicmFyeUNvbW1hbmQuaCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5oLAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmgsCgkgIGNtRm9yRWFjaENvbW1hbmQuY3h4LCBjbUZvckVhY2hDb21tYW5kLmgsIGNtRnVuY3Rpb25CbG9ja2VyLmgsCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLCBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21JbmNsdWRlQ29tbWFuZC5jeHgsIGNtSW5jbHVkZUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLCBjbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxGaWxlc0NvbW1hbmQuaCwgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmgsIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmN4eCwKCSAgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuaCwgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmN4eCwKCSAgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsIGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTGlzdEZpbGVDYWNoZS5oLAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuaCwKCSAgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LCBjbU1TUHJvamVjdEdlbmVyYXRvci5oLAoJICBjbU1ha2VEZXBlbmQuY3h4LCBjbU1ha2VEZXBlbmQuaCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIGNtTWFrZURpcmVjdG9yeUNvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21NYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21NYXJrQXNBZHZhbmNlZENvbW1hbmQuY3h4LCBjbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oLAoJICBjbU1lc3NhZ2VDb21tYW5kLmN4eCwgY21NZXNzYWdlQ29tbWFuZC5oLAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmgsCgkgIGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LCBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuY3h4LCBjbVByb2plY3RDb21tYW5kLmgsIGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsCgkgIGNtUVRXcmFwQ1BQQ29tbWFuZC5oLCBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmgsCgkgIGNtUmVndWxhckV4cHJlc3Npb24uY3h4LCBjbVJlZ3VsYXJFeHByZXNzaW9uLmgsIGNtU2V0Q29tbWFuZC5jeHgsCgkgIGNtU2V0Q29tbWFuZC5oLCBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZS5jeHgsIGNtU291cmNlRmlsZS5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmgsIGNtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuaCwgY21Tb3VyY2VHcm91cC5jeHgsIGNtU291cmNlR3JvdXAuaCwKCSAgY21Tb3VyY2VHcm91cENvbW1hbmQuY3h4LCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5oLAoJICBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21TdWJkaXJDb21tYW5kLmN4eCwgY21TdWJkaXJDb21tYW5kLmgsCgkgIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuY3h4LCBjbVN1YmRpckRlcGVuZHNDb21tYW5kLmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmgsCgkgIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmgsCgkgIGNtVlRLTWFrZUluc3RhbnRpYXRvckNvbW1hbmQuY3h4LCBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuaCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuaCwKCSAgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5jeHgsIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuaCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuaCwKCSAgY21ha2UuY3h4LCBjbWFrZS5oLCBjbWFrZW1haW4uY3h4LCBjbWFrZXRlc3QuY3h4LAoJICBjbWFrZXdpemFyZC5jeHgsIGNtYWtld2l6YXJkLmgsIGN0ZXN0LmN4eCwgY3Rlc3QuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHgsIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0Jvb2xXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNCb29sV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0R1bW15V2lkZ2V0LmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRHVtbXlXaWRnZXQuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRmlsZVBhdGhXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNGaWxlUGF0aFdpZGdldC5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNGb3JtLmN4eCwgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzRm9ybS5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNMYWJlbFdpZGdldC5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xhYmVsV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1BhdGhXaWRnZXQuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNQYXRoV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1dpZGdldC5jeHgsIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1dpZGdldC5oLAoJICBGTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5oLAoJICBGTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUl0ZW1Sb3cuaCwgRkxUS0RpYWxvZy9GTFRLUHJvcGVydHlMaXN0LmgsCgkgIE1GQ0RpYWxvZy9DTWFrZUNvbW1hbmRMaW5lSW5mby5oLCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5oLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBNRkNEaWFsb2cvTWFrZUhlbHAuaCwKCSAgTUZDRGlhbG9nL1BhdGhEaWFsb2cuaCwgTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5oLAoJICBNRkNEaWFsb2cvU3RkQWZ4LmgsIE1GQ0RpYWxvZy9yZXNvdXJjZS5oOiBFTkg6VXBkYXRlZCBjb3B5cmlnaHQKCjIwMDItMDEtMjEgMTU6MTEgIHdpbGwKCgkqIENvcHlyaWdodC50eHQ6IEVOSDpGb3JtYWwgY29weXJpZ2h0IG5vdGljZQoKMjAwMi0wMS0yMSAxMTozOSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiByZW1vdmUgd2FybmluZyBmcm9tIGhwdXgKCSAgbWFrZQoKMjAwMi0wMS0yMSAxMDozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IEVOSDogY2hlY2sgdGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdGVzdAoJICBwcm9ncmFtIHRvIGJlIHJ1bgoKMjAwMi0wMS0yMSAxMDoyMiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IENvbW1lbnQgdGVzdAoJICBPVVRQVVRfUkVRVUlSRUQKCjIwMDItMDEtMjEgMTA6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU291cmNlRmlsZS5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4OiBCVUc6IGZpeCBnZW5lcmF0ZWQgZmlsZXMgd2l0aCBubwoJICBleHRlbnNpb24gYnVnCgoyMDAyLTAxLTIwIDAyOjIxICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L1ZhclRlc3RzLmNtYWtlLCBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9WYXJUZXN0cy5jbWFrZTogTW9yZSBJRiBjb3ZlcmFnZQoKMjAwMi0wMS0yMCAwMTo1OCAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhPbmVDb25maWcvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0xpYnJhcnkvZW1wdHkuaCwgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L2VtcHR5LmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvZW1wdHkuaCwgVGVzdGluZy9DTWFrZUxpc3RzLnR4dCwKCSAgV3JhcHBpbmcvdnRrRXhjbHVkZWQuaCwgV3JhcHBpbmcvdnRrSW5jbHVkZWQuaDogSW5jcmVhc2UKCSAgQ292ZXJhZ2UuCgoyMDAyLTAxLTIwIDAxOjA1ICBiYXJyZQoKCSogVGVzdHMvV3JhcHBpbmcvOiBDTWFrZUxpc3RzLnR4dCwgZmx0azEuZmw6IEFkZCBjb3ZlcmFnZSBmb3IgUVQKCSAgYW5kIEZMVEsgd3JhcHBlcnMuIEFsc28gTUFOR0xFRF9NRVNBCgoyMDAyLTAxLTIwIDAwOjEyICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlQ2FjaGUudHh0LCBDb21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L1ZhclRlc3RzLmNtYWtlLCBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlQ2FjaGUudHh0LCBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUNhY2hlLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogTW9yZSB0ZXN0cyArCgkgIGNvdmVyYWdlCgoyMDAyLTAxLTIwIDAwOjExICBiYXJyZQoKCSogVGVzdHMvVGVzdGluZy86IENNYWtlTGlzdHMudHh0LCBEYXJ0Q29uZmlnLmNtYWtlOiBNb3JlIGNvdmVyYWdlICsKCSAgaW5jbHVkZSBEYXJ0LmNtYWtlIHRvIG1heGltaXplIGNoYW5jZSBuc2xvb2t1cC9ob3N0bmFtZSBhcmUgZm91bmQKCjIwMDItMDEtMjAgMDA6MTEgIGJhcnJlCgoJKiBUZXN0cy9XcmFwcGluZy86IENNYWtlTGlzdHMudHh0LCBoaW50cywgdnRrRXhjbHVkZWQuY3h4LAoJICB2dGtFeGNsdWRlZC5oLCB2dGtJbmNsdWRlZC5jeHgsIHZ0a0luY2x1ZGVkLmg6IEFkZCB0ZXN0IGZvcgoJICBWVEtfV1JBUF8qCgoyMDAyLTAxLTIwIDAwOjA2ICBiYXJyZQoKCSogU291cmNlL2NtTG9hZENhY2hlQ29tbWFuZC5oOiBUeXBvCgoyMDAyLTAxLTE5IDIxOjI0ICBiYXJyZQoKCSogVGVzdHMvOiBDb21wbGV4L0NNYWtlTGlzdHMudHh0LCBDb21wbGV4L1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLCBDb21wbGV4L0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwgQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0aW5nL0NNYWtlTGlzdHMudHh0LCBUZXN0aW5nL3Rlc3RpbmcuY3h4LAoJICBXcmFwcGluZy9DTWFrZUxpc3RzLnR4dCwgV3JhcHBpbmcvd3JhcHBpbmcuY3h4OiBBZGQKCSAgZG9jdW1lbnRhdGlvbiwgY29tbWVudHMuIE1vdmUgc29tZSAnQ29tcGxleCcgc3ViLXRlc3RzIGludG8gMiBuZXcKCSAgJ1dyYXBwaW5nJyBhbmQgJ1Rlc3RpbmcnIHRlc3RzLgoKMjAwMi0wMS0xOSAyMToyMyAgYmFycmUKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQWRkIDIgbmV3IHRlc3RzCgoyMDAyLTAxLTE5IDIxOjIyICBiYXJyZQoKCSogU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmN4eDogRklYOiBpZiB0aGUgJ2hvc3RuYW1lJyBhbmQKCSAgJ25zbG9va3VwJyBjb21tYW5kcyB3ZXJlIG5vdCBmb3VuZCBmcm9tIHRoZWlyIEhPU1ROQU1FIGFuZAoJICBOU0xPT0tVUCBjYWNoZSBkZWZpbml0aW9uLCBoYXJkLWNvZGVkIHZhbHVlcyB3ZXJlIHVzZWQgaW5zdGVhZCwKCSAgdGh1cyBjYXVzaW5nIHBiIGlmIHRoZSBjb3JyZXNwb25kaW5nIHByb2dzIHdlcmUgbm90IGluIHRoZSBQQVRICgkgIChSdW5Db21tYW5kKS4gTm93IHVzZSBGaW5kUHJvZ3JhbSgpIHRvIGJlIHN1cmUgdG8gZmluZCBib3RoLAoJICBvdGhlcndpc2UgZG8gbm90aGluZyBhbmQgc2V0IHRoZSBzaXRlIG5hbWUgdG8gInVua25vd24iCgkgIChhcmJpdHJhcnkuIGNvdWxkIGJlIGVtcHR5IHN0cmluZyA/IG9yIGVycm9yID8pLgoKMjAwMi0wMS0xOCAyMzozOCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FibGVDbGFzc1NldC5jeHg6IEJVRzogbWFrZSBzdXJlIHJlZ2V4IG1hdGNoIGhhcyBhCgkgIHN0cmluZyB0byBtYXRjaAoKMjAwMi0wMS0xOCAyMDozMyAgYmFycmUKCgkqIFNvdXJjZS9jbUV4ZWNQcm9ncmFtQ29tbWFuZC5jeHg6IEZpeDogImNkIGFyZzIgOyBhcmcxIiBub3QKCSAgd29ya2luZy4gT0sgd2l0aCAmJi4gQWxzbyBzaG91bGQgcHJldmVudCBmcm9tOiAiY2QKCSAgbm9uX2V4aXN0aW5nX2Rpcl9vb3BzICYmIHJtIC1mciAqIgoKMjAwMi0wMS0xOCAyMDozMiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXgvVmFyVGVzdHMudHh0LCBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLmNtYWtlLAoJICBDb21wbGV4T25lQ29uZmlnL1ZhclRlc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvVmFyVGVzdHMuY21ha2UsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL1ZhclRlc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IEluY3JlYXNlIHRlc3QgKwoJICBjb3ZlcmFnZQoKMjAwMi0wMS0xOCAxOToyMiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUNhY2hlLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUNhY2hlLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VDYWNoZS50eHQ6IEVOSDogSW5jcmVhc2UgdGVzdCArCgkgIGNvdmVyYWdlLiBUaGlzIGlzIG5vdCBhIGJ1ZywgdGhpcyBjYWNoZSBpcyB1c2VkIGZvciB0ZXN0LgoKMjAwMi0wMS0xOCAxOToyMSAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sIENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0OiBFTkg6IEluY3JlYXNlIHRlc3QgKwoJICBjb3ZlcmFnZQoKMjAwMi0wMS0xOCAxOToyMSAgYmFycmUKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogUmVtb3ZlRmlsZQoJICByZXR1cm5zIGlmIHRoZSBmaWxlIHdhcyByZW1vdmVkIG9yIG5vdAoKMjAwMi0wMS0xOCAxNzowMSAgYmFycmUKCgkqIFNvdXJjZS9jbUxpYnJhcnlDb21tYW5kLmg6IFVudXNlZCBhbmQgZGVwcmVjYXRlZCBjbGFzcy4gR29vZGJ5ZS4KCjIwMDItMDEtMTggMTY6NTkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IGJ1ZyBmaXgKCjIwMDItMDEtMTggMTY6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IGZpeCBpZiBsb2dpYyBmb3IgbnVsbCBkZWZzCgoyMDAyLTAxLTE4IDE1OjU0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmg6CgkgIHJlcXVpcmVkIGZvciB1dGlsdGllcwoKMjAwMi0wMS0xOCAxNTo1MSAgbWFydGluawoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OgoJICBmaXggZm9yIHV0aWx0aWVzCgoyMDAyLTAxLTE4IDE1OjM5ICBhbmR5CgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LAoJICBUZXN0cy9Db21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIFRlc3RzL0NvbXBsZXhPbmVDb25maWcvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9DTWFrZUxpc3RzLnR4dDogQWRkIEdFTkVSQVRFRAoJICB0byBjbVNvdXJjZUZpbGVzUmVtb3ZlQ29tbWFuZAoKMjAwMi0wMS0xOCAxNTozMiAgbWFydGluawoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiByZXZlcnQgdG8gb2xkIGJlaGF2aW91cgoKMjAwMi0wMS0xOCAxNTozMSAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQ6IEZpeDogY3JlYXRlX2ZpbGUuY3h4CgkgIGlzIG5vdCBHRU5FUkFURUQsIGl0IGV4aXN0cyAoc28gdGhhdCBpdCBjYW4gYmUgcmVtb3ZlZCwgdW50aWwKCSAgU09VUkNFX0ZJTEVTX1JFTU9WRSBpcyBzeW5jZWQgd2l0aCBTT1VSQ0VfRklMRVMpCgoyMDAyLTAxLTE4IDE1OjE4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBtaW5vciBidWcgZml4CgoyMDAyLTAxLTE4IDE1OjE2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBidWcgZml4ZXMKCjIwMDItMDEtMTggMTQ6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQnVpbGROYW1lQ29tbWFuZC5jeHg6IGJ1ZyBmaXhlcwoKMjAwMi0wMS0xOCAxNDozOCAgbWFydGluawoKCSogU291cmNlL2NtQnVpbGRDb21tYW5kLmN4eDogY29tcGlsZXIgd2FybmluZwoKMjAwMi0wMS0xOCAxNDowNyAgYmFycmUKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEZpeDogZXNjYXBpbmcgc3BhY2VzIHdhcyBwcmV2ZW50aW5nIGEgdmFsdWUKCSAgd2l0aCBzcGFjZSB0byBiZSBwYXNzZWQgY29ycmVjdGx5CgoyMDAyLTAxLTE4IDEzOjM3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4OiBtZXJnZWQgaWYgTUFUQ0hFUwoJICBmaXgKCjIwMDItMDEtMTggMTM6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCSAgc29tZSBmaXhlcyB0byByZWNlbnQgc2NyZXdlcmQgdXAgY2hhbmdlcwoKMjAwMi0wMS0xOCAxMjowMyAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9WYXJUZXN0cy50eHQsCgkgIENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvVmFyVGVzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvVmFyVGVzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvTGlicmFyeS9jcmVhdGVfZmlsZS5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvY3JlYXRlX2ZpbGUuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2NyZWF0ZV9maWxlLmN4eDogSW5jcmVhc2UgY292ZXJhZ2UsCgkgIGFkZCB0ZXN0cwoKMjAwMi0wMS0xOCAxMTo0OCAgYmFycmUKCgkqIFNvdXJjZS9jbUV4ZWNQcm9ncmFtQ29tbWFuZC5jeHg6IEZpeCBidWc6IHdhcyBleHBhbmRpbmcgc2Vjb25kCgkgIGFyZyBldmVuIGlmIG5vdCBwYXNzZWQuIGNyYXNoZWQKCjIwMDItMDEtMTggMTE6MzggIGJhcnJlCgoJKiBTb3VyY2UvOiBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmgsIGNtRXhlY1Byb2dyYW1Db21tYW5kLmg6IEZpeAoJICB0eXBvCgoyMDAyLTAxLTE4IDExOjM3ICBiYXJyZQoKCSogU291cmNlLzogY21CdWlsZE5hbWVDb21tYW5kLmN4eCwgY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBGaXg6CgkgIGFyZ3VtZW50IHdhcyBub3QgdXNlZC4KCjIwMDItMDEtMTggMTE6MzYgIGJhcnJlCgoJKiBTb3VyY2UvY21CdWlsZENvbW1hbmQuaDogRml4IHR5cG8gKHNlY29uZCBhcmd1bWVudCB3YXMgbm90CgkgIHJlcG9ydGVkKQoKMjAwMi0wMS0xOCAxMTozNiAgYmFycmUKCgkqIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHg6IG5vIG1lc3NhZ2UKCjIwMDItMDEtMTggMTA6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNhYmxlQ2xhc3NTZXQuY3h4OiBBSVggY29tcGlsZXIgZml4IHByaXZhdGUgdG8gcHVibGljCgoyMDAyLTAxLTE4IDEwOjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21FbHNlQ29tbWFuZC5jeHg6IEJVRzogR2V0RGVmaW5pdG9uIGNhbiByZXR1cm4gbnVsbAoKMjAwMi0wMS0xOCAwOTowMiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9zaW1wbGUuY3h4LCBDb21wbGV4T25lQ29uZmlnL3NpbXBsZS5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL3NpbXBsZS5jeHg6IElzIG5vdCB1c2VkIChzZWUgU2ltcGxlIHRlc3QpCgoyMDAyLTAxLTE4IDA3OjA1ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4OiBFTkg6IHJlbW92ZSB1bnVzZWQKCSAgYW5kIG5vbi1zdGFuZGFyZCBpby5oIGZpbGUKCjIwMDItMDEtMTggMDc6MDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IEJVRzogZml4IG51bGwgcG9pbnRlciByZWFkIGlmIGRlZiBpcyBub3QKCSAgZGVmaW5lZAoKMjAwMi0wMS0xNyAxNjozNiAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHg6IEZpeDogZGlzcGxheXMgbXNnIGlmCgkgIHBhc3NlZCBmb3IgY3VzdG9tIGNvbW1hbmQKCjIwMDItMDEtMTcgMTY6MzUgIGJhcnJlCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogRklYOiBuZWVkIGEgJ21ha2UgY2xlYW4nIGJlZm9yZSAnbWFrZSBhbGwnCgkgIG90aGVyd2lzZSB0aGUgcG9zdC1idWlsZCBjdXN0b20tY29tbWFuZCBhcmUgbm90IHJ1biAoc2luY2UgYSBsaWIKCSAgbWlnaHQgYmUgdXAgdG8gZGF0ZSBhbHJlYWR5IGZvciBleC4pLgoKMjAwMi0wMS0xNyAxNTo0OSAgYmFycmUKCgkqIFRlc3RzLzogQ29tcGxleC9DTWFrZUxpc3RzLnR4dCwgQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4L0V4ZWN1dGFibGUvY29tcGxleC5jeHgsIENvbXBsZXgvTGlicmFyeS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9MaWJyYXJ5L2NyZWF0ZV9maWxlLmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9jcmVhdGVfZmlsZS5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0V4ZWN1dGFibGUvY29tcGxleC5jeHgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0xpYnJhcnkvY3JlYXRlX2ZpbGUuY3h4OiBFTkg6IHRlc3RzCgkgIEFERF9ERVBFTkRFTkNJRVMgYW5kIEFERF9DVVNUT01fQ09NTUFORAoKMjAwMi0wMS0xNyAxNTo0NiAgYmFycmUKCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgRml4IHNvIHRoYXQgQUREX0RFUEVOREVOQ0lFUyB3b3JrICh0aGUgVXRpbGl0aWVzIGRlcGVuZGVuY2llcwoJICB3ZXJlIG5vdCBvdXRwdXQpCgoyMDAyLTAxLTE3IDE0OjExICBhbmR5CgoJKiBTb3VyY2UvOiBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmg6IEFkZAoJICBvcHRpb24gb2YgYWRkaW5nIGdlbmVyYXRlZCBmaWxlcyB0byBzb3VyY2UgbGlzdAoKMjAwMi0wMS0xNyAxMjo1NCAgaG9mZm1hbgoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eDogRU5IOiBvbmx5IG91dHB1dCBlYWNoIGxpbmsgcGF0aCBvbmNlCgoyMDAyLTAxLTE3IDEwOjQ4ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFUlI6IE1pc3NpbmcgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZgoJICBjbU1ha2VEZXBlbmQgYWRkZWQuCgoyMDAyLTAxLTE3IDA5OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IGFsbG93IGhlYWRlciBmaWxlcyB0byBiZSBhZGRlZCB0bwoJICB0aGUgZHNwIGZpbGUKCjIwMDItMDEtMTYgMTc6MjkgIGJhcnJlCgoJKiBTb3VyY2UvY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5jeHg6IFJlbW92ZSBoYWNrLgoKMjAwMi0wMS0xNiAxNzoyNiAgYW5keQoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiBIYWNrIHRvIG1ha2UgaXQgd29yayBhbG1vc3QKCSAgbGlrZSBiZWZvcmUKCjIwMDItMDEtMTYgMTU6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogYWRkIHNpbGVudCBhbmQgc3VmZml4ZXMKCSAgdG8gY2hlY2sgZGVwZW5kIGZpbGUKCjIwMDItMDEtMTYgMTU6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogQlVHOiBtYWtlIHN1cmUgbm9uIGNtYWtlZGVmCgkgIGxpbmVzIGFyZSBub3Qgc2tpcHBlZAoKMjAwMi0wMS0xNiAxMjo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4OiBFTkg6IGRvIG5vdCB1bmRlZiBjbWFrZWRlZmluZQoJICBzdHVmZiwganVzdCBjb21tZW50IG91dCB0aGUgbGluZQoKMjAwMi0wMS0xNSAxNzoyMSAgYmVyawoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogSW1wcm92ZWQgcGVyZm9ybWFuY2UgYnkKCSAgcmVtb3ZpbmcgaW1wbGljaXQgcnVsZXMuCgoyMDAyLTAxLTE1IDE2OjIwICBtYXJ0aW5rCgoJKiBDTWFrZS5wZGYsIENNYWtlLnJ0ZjogdXBkYXRlZAoKMjAwMi0wMS0xNSAxNjoxOSAgd2lsbAoKCSogQ01ha2UucGRmOiBFTkg6U3VwcG9ydCB2MS4yCgoyMDAyLTAxLTE1IDE2OjE1ICBob2ZmbWFuCgoJKiBDTWFrZS5ydGY6IHB1YmxpYyB0byB3d3cuY21ha2Uub3JnCgoyMDAyLTAxLTE1IDE1OjU2ICB3aWxsCgoJKiBDTWFrZS5wZGY6IEVOSDpEb2NzIGZvciB2ZXJzaW9uIDEuMgoKMjAwMi0wMS0xNSAxNTo1MiAgaG9mZm1hbgoKCSogQ01ha2UucnRmOiB1cGRhdGUgZm9yIG5leHQgdmVyc2lvbgoKMjAwMi0wMS0xNSAxNTo1MCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogbmV4dCByZWxlYXNlCgoyMDAyLTAxLTE1IDE1OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBuZXh0IHJlbGVhc2UKCjIwMDItMDEtMTUgMTU6MzggIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IGxvZyBmb3IgcmVsYXNlIDEuMgoKMjAwMi0wMS0xNSAxNToyOSAgbWlsbGVyanYKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBBZGRlZCBERUxJVkVSX0NPTlRJTlVPVVNfRU1BSUwgYXMgYW4KCSAgYWR2YW5jZWQgY2FjaGUgZW50cnkuCgoyMDAyLTAxLTE1IDEzOjIwICBiZXJrCgoJKiBTb3VyY2UvOiBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eDogRklYOgoJICBFbnRyeSBkb2MuIHNob3VsZCBuZXZlciBiZSBvdmVyd3JpdHRlbi4gVGhpcyBtYXkgY2F1c2UgY21ha2UgdG8KCSAgYmUgcmUtcnVuIHZlcnkgb2Z0ZW4uCgoyMDAyLTAxLTE0IDE5OjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBFTkg6IGRvIG5vdCBkZXBlbmQgb24gdGhlIC5kc3AgZmlsZSBidXQKCSAgcmF0aGVyIGRlcGVuZCBvbiAuZHNwLmNtYWtlIGFuZCBpZiB0aGUgLmRzcCBhY3R1YWxseSBjaGFuZ2VzLAoJICB0aGVuIHdyaXRlIGl0LCBzbyBjbGVhbiBhbmQgcmVidWlsZCB3aWxsIG5vdCBjYXVzZSBtYW55IHJlbG9hZHMKCjIwMDItMDEtMTQgMTg6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEVOSDogdHJ5IHRvIGtlZXAgdGhlIGRzcCBmaWxlcyBmcm9tCgkgIGNoYW5naW5nIGJldHdlZW4gZWFjaCB3cml0ZQoKMjAwMi0wMS0xNCAxNjoyOCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogcmVtb3ZlIGV4dHJhIGxvZ2ljIG5vdCBuZWVkZWQKCSAgYW55bW9yZSBiZWNhdXNlIG9mIGJldHRlciBkZXBlbmRzCgoyMDAyLTAxLTE0IDE2OjAyICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBRdW90ZSBlY2hvCgoyMDAyLTAxLTE0IDE0OjQ5ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBCVUc6IEN1cnNlcyB3YXMgYmVpbmcKCSAgdXNlZCB3aXRob3V0IGluaXRpYWxpemF0aW9uLgoKMjAwMi0wMS0xMiAyMjo1NSAgaG9mZm1hbgoKCSogU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiB1c2UgYm9ybGFuZCBydW4gdGltZQoJICBkbGwgZm9yIHNoYXJlZCBidWlsZHMgdG8gYXZvaWQgY3Jhc2hlcwoKMjAwMi0wMS0xMSAxMDo1NSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL2NvbmZpZ3VyZTogRU5IOiBhZGQgc3VwcG9ydCBmb3IgQUlYIHNoYXJlZCBsaWJyYXJpZXMKCSAgd2l0aCBnY2MKCjIwMDItMDEtMTEgMTA6NTQgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEVOSDogYWRkIHN1cHBvcnQgZm9yIHNoYXJlZCBsaWJyYXJpZXMKCSAgd2l0aCBnY2Mgb24gQUlYCgoyMDAyLTAxLTEwIDE4OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEVOSDogbWFrZSB0aGUgZmx0ayBidWlsZCBkZWZhdWx0IHRvIE9GRiwKCSAgaXQgZmFpbHMgb24gdG9vIG1hbnkgbGludXggbWFjaGluZXMgd2l0aCB0aGUgZGVmYXVsdCBidWlsZAoKMjAwMi0wMS0xMCAxODowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGJ1aWxkIG9mIGxpYnJhcnkgaW4KCSAgb3RoZXIgZGlyZWN0b3J5IGlmIGl0IGlzIG5vdCB0aGVyZQoKMjAwMi0wMS0xMCAxNjoyMiAgYW5keQoKCSogU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4OiBBZGQgc3BhY2UgdG8gb3V0cHV0CgoyMDAyLTAxLTA5IDE3OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBtYWtlIGl0IGEgbW9kYWwgZGlhbG9nCgoyMDAyLTAxLTA4IDE3OjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IG5lZWQgYSBsYXJnZXIgZGVmYXVsdAoJICBwYWdlIHNpemUKCjIwMDItMDEtMDggMTc6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURTUFdyaXRlci5jeHg6IEJVRzogbmVlZCBzcGFjZXMgYXJvdW5kIGxpbmtlciBvcHRpb25zCgoyMDAyLTAxLTA4IDEzOjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LCBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOgoJICBFTkg6IGFkZCBDTUFLRV9FWFRSQV9MSU5LX0ZMQUdTIHRvIGRzcCBnZW5lcmF0b3IKCjIwMDItMDEtMDggMTI6NTcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IHVzZSArWiBub3QgK3ogZm9yIHBpYwoJICBhbmQgdXNlIC1mUElDIGZvciBnY2MKCjIwMDItMDEtMDggMTI6NTMgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IGFkZCAtTC91c3IvbGliIGZvciBocAoJICBzbyBzaGFyZWQgbGlicyBmaW5kIHRoYXQgZGlyZWN0b3J5IGJlZm9yZSB0aGUgcGExLjEgZGlyZWN0b3J5CgoyMDAyLTAxLTA3IDE3OjI5ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBNb3JlIHVzZXIgZnJpZW5kbHkgKGJ1aWx0IHRyZWUgaXMKCSAgYXV0b21hdGljYWxseSB1c2VkKS4KCjIwMDItMDEtMDcgMTY6MzAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEJVRzogbm90IGFsbCBkaXNwbGF5ZWQKCSAgbWVzc2FnZXMgYXJlIGVycm9ycwoKMjAwMi0wMS0wNyAxNTo0OSAgcGVyZXJhCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6CgkgIFJvbGxpbmcgYmFjayBzeW1ib2xpYyBwYXRoIGNoYW5nZXMgdW50aWwgaXQgd29ya3Mgb24gV2luZG93cy4KCjIwMDItMDEtMDcgMTQ6MTIgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9jb25maWd1cmU6IEFkZCBzaXplb2Ygc29tZSB0eXBlcyBzdXBwb3J0CgoyMDAyLTAxLTA3IDE0OjA3ICBhbmR5CgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUuaW4sIENNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIENNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLCBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBBZGQgc2l6ZW9mIHNvbWUgdHlwZXMgc3VwcG9ydAoKMjAwMi0wMS0wNyAxMzo0NyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY29uZmlndXJlLCBjb25maWd1cmUuaW46IHVzZSAtc2hhcmVkIGZvciBzdW5vcyBidWlsZAoKMjAwMi0wMS0wNiAxNDo1OSAgcGVyZXJhCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbWFrZS5jeHgsIGNtYWtlLmg6CgkgIEVOSDogQWRkIGFuIGludm9jYXRpb24gdGhhdCBtYWludGFpbnMgc3ltYm9saWMgcGF0aHMgdG8gdGhlCgkgIHNvdXJjZSBhbmQgYmluYXJ5IHRyZWVzLCBtYWlubHkgZm9yIHN5c3RlbXMgd2l0aCBhdXRvbW91bnRlZAoJICBuZXR3b3JrIGRyaXZlcy4gIEVOSDogQ29sbGFwc2VGdWxsUGF0aCgpIG5vIGxvbmdlciBhZGRzIGEKCSAgdHJhaWxpbmcgIi8iIHRvIGRpcmVjdG9yeSBwYXRocy4KCjIwMDItMDEtMDQgMDk6MjMgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwLnJjLCBDTWFrZVNldHVwRGlhbG9nLmNwcDogYWRkZWQKCSAgcmVsZWFzZSB2ZXJzaW9uCgoyMDAyLTAxLTAzIDE2OjAyICBhbmR5CgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oOiBGaXggYWRkIGN1c3RvbSBjb21tYW5kIHNvIHRoYXQgaXQKCSAgYWN0dWFsbHkgZXhlY3V0ZXMgdGhlIGNvZGUKCjIwMDItMDEtMDMgMTQ6MTkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHg6CgkgIG1pbm9yIGZpeGVzCgoyMDAyLTAxLTAzIDE0OjA1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IG1pbm9yIGZpeAoKMjAwMi0wMS0wMyAxMzo1NiAgbWFydGluawoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBtaW5vciBmaXgKCjIwMDItMDEtMDMgMDk6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHg6IGV4cGFuZCB2YXJzIG53byBmb3IKCSAgZXhpc3RzIHRlc3QKCjIwMDItMDEtMDIgMTY6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmg6IGFkZGVkCgkgIGV4aXN0cyBvcHRpb24gZm9yIGlmIHN0YXRlbWVudAoKMjAwMi0wMS0wMiAxNjo0NSAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBDdXJzZXNEaWFsb2cvY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IHByaW50cyB0aGUgcmVsZXNlIHZlcnNpb24KCjIwMDItMDEtMDIgMTY6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IGFkZGVkIHJlbGVhc2UgdmVyaXNvbiB0byBjbU1ha2VmaWxlCgoyMDAyLTAxLTAyIDExOjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogcHV0IGJhY2sgcmVjdXJzaXZlIGNhbGwgdG8gbWFrZQoJICBmb3IgY2hlY2tpbmcgc291cmNlcwoKMjAwMS0xMi0zMSAxMjowMiAgYmVyawoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogVHlwZSB8fCBzaG91bGQgaGF2ZSBiZWVuICYmCgoyMDAxLTEyLTMxIDExOjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIG9uZSBjYWxsIHRvIG1ha2UsIGFuZAoJICBjbGVhbiBlY2hvIHN0dWZmIGEgYml0CgoyMDAxLTEyLTMwIDE3OjE4ICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBsb25nIGRlcGVuZCBsaXN0CgkgIGJlY2F1c2UgaXQgZ2V0cyBjdXQgb24gdGhlIGhwOiBJIG1heSBsb29rIGxpa2UgYmVyaywgYnV0IGl0IGlzCgkgIGJpbGwgSC4KCjIwMDEtMTItMjggMTc6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvTWFrZUhlbHAuY3BwOiBFTkg6IHVzZSB0aGUgY29ycmVjdCBjYXNlCgoyMDAxLTEyLTI4IDE3OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwOiBETyBOT1QgVVNFIElOQ1JFTUVOVEFMCgoyMDAxLTEyLTI4IDE3OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDoKCSAgcmVtb3ZlIHRoZSBydWxlIHRvIHJ1biBtYWtlIGRlcGVuZCBmcm9tIHRoZSB0b3Agd2l0aCBlYWNoIGNoYW5nZQoJICBpbiBhbnkgY21ha2VsaXN0IGZpbGUuICBJbnN0ZWFkLCBydW4gbWFrZSBkZXBlbmQgaW4gdGhlIGN1cnJlbnQKCSAgZGlyZWN0b3J5IGlmIGEgc291cmNlIGZpbGUgY2hhbmdlcywgb3IgaWYgYSAuaCBmaWxlIGNoYW5nZXMgb3IgaXMKCSAgcmVtb3ZlZAoKMjAwMS0xMi0yOCAxNTo1OCAgcGVyZXJhCgoJKiBTb3VyY2UvOiBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOgoJICBEb24ndCBnZW5lcmF0ZSBidWlsZCBydWxlcyBmb3IgaGVhZGVyIGZpbGVzLgoKMjAwMS0xMi0yOCAxNTo1NiAgcGVyZXJhCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogLnR4eCBhcmUgbm90IHNvdXJjZSBmaWxlcy4gVGhleQoJICBjb250YWluIHRlbXBsYXRlIGNvZGUgd2hpY2ggY2FuIG9ubHkgYmUgY29tcGlsZWQgd2hlbiBpbmNsdWRlZCBpbgoJICBhIHJlZ3VsYXIgLmN4eCBmaWxlLiBCeSB0aGVtc2VsdmVzLCB0aGV5IGNhdXNlIGRvIG5vdCBjYXVzZSBjb2RlCgkgIHRvIGJlIGdlbmVyYXRlZC4KCjIwMDEtMTItMjggMTU6NTQgIHBlcmVyYQoKCSogU291cmNlL2NtU291cmNlRmlsZS5jeHg6IEVOSDogQ2xhc3NpZnkgYSBmaWxlIGFzIHNvdXJjZSBvciBoZWFkZXIKCSAgZXZlbiB3aGVuIHRoZSBleHRlbnNpb24gaXMgZ2l2ZW4gZXhwbGljaXRseS4KCjIwMDEtMTItMjggMTU6MzcgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiByZW1vdmUgYmFkIEFERF9ERVBFTkRFTkNJRVMgY29tbWFuZHMKCjIwMDEtMTItMjggMTI6NDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRVJSOiByZW1vdmUgYmFkIEFERF9ERVBFTkRFTkNJRVMgY29tbWFuZHMKCjIwMDEtMTItMjcgMTQ6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IHJlbW92ZSB3YXJuaW5nCgoyMDAxLTEyLTI3IDEzOjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmN4eDogRU5IOiBhZGQgZXJyb3IgY2hlY2tpbmcKCjIwMDEtMTItMjEgMTg6MjUgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBGaXg6IHRoZSBnZW5lcmF0b3IgY2hvaWNlCgkgIHZhbHVlIHdhcyBoYXJkY29kZWQgYW5kIG92ZXJyb2RlIHRoZSB2YWx1ZSBwYXNzZWQgYXMgYQoJICBjb21tYW5kLWxpbmUgcGFyYW0gKGRlc2t0b3Agc2hvcnRjdXRzKQoKMjAwMS0xMi0yMSAxNjoxOSAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmNwcDogRml4OiB2YXJzIHRoYXQgaGF2ZSBqdXN0CgkgIGJlY29tZSBBRFZBTkNFRCBzaG91bGQgYmUgcmVtb3ZlZCBmcm9tIHRoZSBHVUkKCjIwMDEtMTItMjEgMTU6MzkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXggc28geW91IGNhbiByZW1vdmUgYQoJICBkaXJlY3RvcnkgaW4gdGhlIHNvdXJjZSB0cmVlLCBhbmQgY2xlYW4gdXAgZWNobyBvZiBjb21tYW5kcwoKMjAwMS0xMi0yMSAxNToxMSAgbWFydGluawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzQm9vbFdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzQm9vbFdpZGdldC5oLCBjbUN1cnNlc0R1bW15V2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNEdW1teVdpZGdldC5oLCBjbUN1cnNlc0Zvcm0uaCwgY21DdXJzZXNMYWJlbFdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzTGFiZWxXaWRnZXQuaCwgY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uY3h4LAoJICBjbUN1cnNlc01haW5Gb3JtLmN4eCwgY21DdXJzZXNNYWluRm9ybS5oLAoJICBjbUN1cnNlc1N0cmluZ1dpZGdldC5jeHgsIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmgsCgkgIGNtQ3Vyc2VzV2lkZ2V0LmN4eCwgY21DdXJzZXNXaWRnZXQuaDogdXBkYXRlIGludGVyZmFjZQoKMjAwMS0xMi0yMSAxNToxMCAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogYWRkIHBhdGNoIGhhY2sKCjIwMDEtMTItMjEgMTQ6NTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQnVpbGRDb21tYW5kLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGN0ZXN0LmN4eDogZml4CgkgIGZvciBkb3MgZmlsZXMgb24gVU5JWCBtYWtlIC1rIGFuZCBmbHVzaCBpbiBjdGVzdAoKMjAwMS0xMi0yMSAxNDo0NCAgbWFydGluawoKCSogTW9kdWxlcy86IEZpbmRDdXJzZXMuY21ha2UsIEZpbmRKTkkuY21ha2UsIEZpbmRNUEkuY21ha2UsCgkgIEZpbmRQeXRob25MaWJzLmNtYWtlOiBnZW5lcmFsIGltcHJvdmVtZW50cwoKMjAwMS0xMi0yMSAxNDo0MCAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVlRLLmNtYWtlOiBDaGFuZ2Ugc28gdGhhdCBkaWZmZXJlbnQgZmxhdm91cnMgb2YgVlRLCgkgIG1pZ2h0IGJlIGNob3NlbiBieSB0aGUgdXNlci4gU2VlIGZ1bGwgaW5zdHJ1Y3Rpb25zIGluIHRoYXQgZmlsZS4KCjIwMDEtMTItMjEgMTQ6NDAgIG1hcnRpbmsKCgkqIGNvbmZpZ3VyZS5pbiwgY29uZmlndXJlOiBmaXhlZCBmb3IgU0dJIENDCgoyMDAxLTEyLTIxIDE0OjM5ICBtYXJ0aW5rCgoJKiBUZW1wbGF0ZXMvOiBDTWFrZUJvcmxhbmRXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBDTWFrZU5NYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLCBETExIZWFkZXIuZHNwdGVtcGxhdGUsIGNvbmZpZ3VyZSwKCSAgY29uZmlndXJlLmluLCBzdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IHZhcmlldHkgb2YgYnVnIGZpeGVzCgoyMDAxLTEyLTIxIDA5OjU1ICBpYmFuZXoKCgkqIFNvdXJjZS9jbUZMVEtXcmFwVUlDb21tYW5kLmN4eDogRU5IOiBObyBsb25nZXIgdHJpZXMgdG8gY3JlYXRlIGEKCSAgZGlyZWN0b3J5IGZvciB0aGUgb3V0cHV0CgoyMDAxLTEyLTIxIDA5OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFkZCBzdXBwb3J0IGZvciBERVNURElSCgkgIGluIGluc3RhbGwgdGFyZ2V0cwoKMjAwMS0xMi0yMSAwMDowMSAgcGVyZXJhCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IEVOSDogQWRkIG9wdGlvbiB0byBkaXNhYmxlCgkgIHVzZSBvZiAtcnBhdGguCgoyMDAxLTEyLTIwIDE3OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciB3aW45OCBjaGVjayBmb3IKCSAgZGlyZWN0b3J5IGV4aXN0ZW5jZQoKMjAwMS0xMi0yMCAxNjoxMCAgYmFycmUKCgkqIE1vZHVsZXMvOiBGaW5kVGNsc2guY21ha2UsIEZpbmRXaXNoLmNtYWtlLCBGaW5kVENMLmNtYWtlOiBFTkg6CgkgIEFEVkFOQ0VEIHdhcyBub3QgcHJvcGFnYXRlZCB0byB0aGUgbmV3IHN1Yi1tb2RzCgoyMDAxLTEyLTIwIDE1OjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogYWRkIG1ha2Ugc2lsZW50IGZsYWcgZm9yIG5tYWtlCgkgIGFuZCBtb3ZlIC5TSUxFTlQ6IGRpcmVjdGl2ZSB0byB0b3Agb2YgbWFrZWZpbGUKCjIwMDEtMTItMjAgMTU6NDUgIGJhcnJlCgoJKiBNb2R1bGVzLzogRmluZEZMVEsuY21ha2U6IEVOSDogbWFyayBldmVyeXRoaW5nIEFEVkFOQ0VECgoyMDAxLTEyLTIwIDE1OjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBiZXR0ZXIgY29tbWFuZAoJICBmb3IgY3JlYXRpbmcgc3RhdGljIGxpYnJhcnkKCjIwMDEtMTItMjAgMTU6NDQgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IENNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIENNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEJVRzogbXVzdCB1c2UgQ0FDSEUgdmFsdWVzIGluCgkgIHRoZXNlCgoyMDAxLTEyLTIwIDE1OjIyICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBFTkg6IEFsc28gbG9vayBmb3IgNC4yLCA0LjEsIDQuMAoKMjAwMS0xMi0yMCAxNToxNyAgYmFycmUKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogRU5IOiBBbHNvIGxvb2sgZm9yIDQuMiwgNC4xLCA0LjAKCjIwMDEtMTItMjAgMDg6MTYgIGhvZmZtYW4KCgkqIEV4YW1wbGUvRGVtby9kZW1vLmN4eDogcmVtb3ZlIGZhbmN5IGN4eCBzdHVmZiBmcm9tIHRoZSBleGFtcGxlCgoyMDAxLTEyLTE5IDIxOjUxICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kSk5JLmNtYWtlOiBFTkg6IE1ha2UgZXZlcnl0aGluZyBBRFZBTkNFRAoKMjAwMS0xMi0xOSAxODo0NSAgaG9mZm1hbgoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oLCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogYWRkIHNpbGVudCBtb2RlIGZvciBtYWtlZmlsZQoJICBidWlsZHMgYW5kIGZpeCBib3JsYW5kIGFuZCBubWFrZSBhZnRlciB0aGUgZGVwZW5kIHN0dWZmCgoyMDAxLTEyLTE5IDE1OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21ha2V0ZXN0LmN4eDogYWRkIGV4YW1wbGUgdG8gdGVzdHMKCjIwMDEtMTItMTkgMTU6MjUgIGhvZmZtYW4KCgkqIEV4YW1wbGUvOiBDTWFrZUxpc3RzLnR4dCwgRGVtby9DTWFrZUxpc3RzLnR4dCwgRGVtby9kZW1vLmN4eCwKCSAgRGVtby9kZW1vX2IuY3h4LCBIZWxsby9DTWFrZUxpc3RzLnR4dCwgSGVsbG8vaGVsbG8uY3h4LAoJICBIZWxsby9oZWxsby5oOiBtb3ZlIGV4YW1wbGUgaW50byB0aGUgc291cmNlIHRyZWUgc28gaXQgd2lsbAoJICB3b3JrLi4uCgoyMDAxLTEyLTE5IDExOjM4ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBkZWZhdWx0IEFjdGl2ZVN0YXRlIFRjbCBpbnN0YWxsIGRpciBpcyBub3cKCSAgQzovVGNsCgoyMDAxLTEyLTE5IDA4OjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5jeHg6IGNoYW5nZSBvc3Ryc3RyZWFtIHRvCgkgIHN0cnN0cmVhbQoKMjAwMS0xMi0xOSAwODoyNiAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL2NvbmZpZ3VyZSwgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbiwgY29uZmlndXJlLAoJICBjb25maWd1cmUuaW46IGNoZWNrIGZvciBMQU5HOnN0ZAoKMjAwMS0xMi0xOCAyMTowMCAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFRlbXBsYXRlcy9jb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IC1MQU5HOnN0ZCBzaG91bGQgYmUgZGVmYXVsdCBvbiBzZ2kgZm9yCgkgIGFuc2kgQ1hYIEZsYWdzCgoyMDAxLTEyLTE4IDIwOjMyICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBmaXggY29tbWVudAoKMjAwMS0xMi0xOCAxNzozMCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY29uZmlndXJlLCBjb25maWd1cmUuaW46IHN5bnRheCBlcnJvcgoKMjAwMS0xMi0xOCAxNzoxNyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL2NvbmZpZ3VyZTogdXNlIGN4eCBjb21waWxlciBvbiBzZ2kgdG8gYnVpbGQgc3RhdGljIGxpYnMKCjIwMDEtMTItMTggMTc6MTYgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IHVzZSBjeHggY29tcGlsZXIgdG8gYnVpbGQgc3RhdGljIGxpYnMgb24KCSAgc2dpCgoyMDAxLTEyLTE4IDE2OjIxICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IGJhZCBzcGVsbGluZyBvZiBqYXZhCgoyMDAxLTEyLTE4IDE0OjU1ICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGVycm9yIHJlcG9ydGluZyBmb3IgbWlzc2luZwoJICBhcmd1bWVudHMgdG8gRU5ESUYuCgoyMDAxLTEyLTE4IDEzOjM1ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzQm9vbFdpZGdldC5jeHg6IEZpeGVkIHdhcm5pbmcuCgoyMDAxLTEyLTE4IDExOjM1ICBraW5nCgoJKiBTb3VyY2UvOiBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwKCSAgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oOiBFTkg6IEltcHJvdmVkIGZsZXhpYmlsaXR5IG9mCgkgIGNvbW1hbmQgYnkgYWxsb3dpbmcgc3BlY2lmaWNpYXRpb24gb2Ygc2VwYXJhdGUgaW5wdXQgYW5kIG91dHB1dHMKCSAgc291cmNlIGxpc3RzLiAgTXVsdGlwbGUgaW5wdXQgc291cmNlIGxpc3RzIGFyZSBub3cgYWxzbyBhbGxvd2VkLgoKMjAwMS0xMi0xOCAxMDoyMSAga2luZwoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDoKCSAgSW1wcm92ZWQgZGVwZW5kZW5jeSBnZW5lcmF0aW9uLiAgSWYgYW55IGNtYWtlLmRlcGVuZHMgaXMgb3V0IG9mCgkgIGRhdGUsIGFsbCBvZiB0aGVtIGluIHRoZSB0cmVlIGFyZSByZS1nZW5lcmF0ZWQuICBUaGlzIGlzCgkgIG5lY2Vzc2FyeSBpbiBjZXJ0YWluIGNhc2VzIHdoZW4gQ01ha2VMaXN0cy50eHQgZmlsZXMgY2hhbmdlLgoKMjAwMS0xMi0xOCAwOTo1MSAga2luZwoKCSogU291cmNlL2NtRWxzZUNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIG9wdGlvbiB0byBJRiBjb21tYW5kIHRvIHRlc3QKCSAgaWYgYSBjb21tYW5kIGV4aXN0cy4JU3ludGF4IGlzIElGKENPTU1BTkQgbmFtZS1vZi1jb21tYW5kKS4KCjIwMDEtMTItMTggMDk6MzkgIGtpbmcKCgkqIFNvdXJjZS86IGNtSWZDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOgoJICBBZGRlZCBvcHRpb24gdG8gSUYgY29tbWFuZCB0byB0ZXN0IGlmIGEgY29tbWFuZCBleGlzdHMuICBTeW50YXgKCSAgaXMgSUYoQ09NTUFORCBuYW1lLW9mLWNvbW1hbmQpLgoKMjAwMS0xMi0xOCAwOToxNiAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IEV4aXN0aW5nIHByb2plY3RzIGhhdmUgY2FjaGUgZW50cmllcwoJICB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdGhlIGNvbW1hbmQgdGhleSBhZGp1c3QgKFZUS19XUkFQX0pBVkEgaW4KCSAgVlRLLCBmb3IgZXhhbXBsZSkuICBTZXR0aW5nIHRoZSBjb21tYW5kIG5hbWUgYXMgYSB2YXJpYWJsZSBpcyB0b28KCSAgZGFuZ2Vyb3VzLgoKMjAwMS0xMi0xNyAxNzo0NCAgYW5keQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCZXR0ZXIgaGFuZGxpbmcgb2YgbmV3IGxpbmVzIHdoZW4KCSAgbW92aW5nIGZyb20gZG9zIHRvIHVuaXgKCjIwMDEtMTItMTcgMTY6MjAgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbVZUS01ha2VJbnN0YW50aWF0b3JDb21tYW5kLmN4eCwKCSAgY21WVEtNYWtlSW5zdGFudGlhdG9yQ29tbWFuZC5oOiBFTkg6IEFkZGluZyBWVEtfTUFLRV9JTlNUQU5USUFUT1IKCSAgY29tbWFuZC4gIFRoaXMgY29tbWFuZCB3aWxsIGJlIHVzZWQgYnkgVlRLIGtpdHMgdG8gcmVnaXN0ZXIgdGhlaXIKCSAgY2xhc3NlcyB3aXRoIHZ0a0luc3RhbnRpYXRvci4KCjIwMDEtMTItMTcgMTY6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBFYWNoIGNtYWtlIGNvbW1hbmQgbm93IGFkZHMgYSBjbWFrZQoJICB2YXJpYWJsZSBvZiBpdHMgb3duIG5hbWUsIHNldCB0byBPTi4JVGhpcyBhbGxvd3MgY29uc3RydWN0cyBpbgoJICBDTWFrZUxpc3RzLnR4dCBmaWxlcyBsaWtlOiBJRihGT09fQ09NTUFORCkgICBGT09fQ09NTUFORCgpCgkgIEVORElGKEZPT19DT01NQU5EKSBUaGlzIHByb3ZpZGVzIHRoZSBvcHRpb24gdG8gYWRkIENNYWtlIGNvbW1hbmRzCgkgIGZvciBleHRyYSBmdW5jdGlvbmFsaXR5IHdpdGhvdXQgYnJlYWtpbmcgY29tcGF0YWJpbGl0eSB3aXRoCgkgIGVhcmxpZXIgdmVyc2lvbnMgb2YgQ01ha2UuCgoyMDAxLTEyLTE3IDExOjMwICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBDTWFrZU5NYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgRExMSGVhZGVyLmRzcHRlbXBsYXRlOiByZW1vdmUgc3RhY2sgc3R1ZmYKCjIwMDEtMTItMTcgMTE6MjggIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IHVzZSBhIGJldHRlciBjb21waWxlcgoJICBuYW1lCgoyMDAxLTEyLTE3IDExOjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBFTkg6IGFsbG93IGN1c3RvbSBjb21tYW5kcyBmb3IgZmlsZXMgdGhhdAoJICBtc2RldiBrbm93cyBhYm91dAoKMjAwMS0xMi0xNiAxODo1MiAgYmFycmUKCgkqIFNvdXJjZS9jbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eDogV3JhcCBhYnN0cmFjdCBjbGFzcyB0b28sIGFzCgkgIHBlciBEYXZpZCBHb2JiaSdzIHJlcXVlc3QgKGZvciB0aGUgc2FrZSBvZiB0aGUgaW50ZXJuYWwKCSAgZG9jdW1lbnRhdGlvbiBmZWF0dXJlcyBvZiBweXRob24iKS4KCjIwMDEtMTItMTQgMjI6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHg6IHVzZSAtaSBub3QgLWsgZm9yIG1ha2UKCjIwMDEtMTItMTMgMTM6MjggIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjbUN1cnNlc0Jvb2xXaWRnZXQuY3h4LAoJICBjbUN1cnNlc0Jvb2xXaWRnZXQuaCwgY21DdXJzZXNEdW1teVdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzRHVtbXlXaWRnZXQuaCwgY21DdXJzZXNGb3JtLmgsIGNtQ3Vyc2VzTGFiZWxXaWRnZXQuY3h4LAoJICBjbUN1cnNlc0xhYmVsV2lkZ2V0LmgsIGNtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmN4eCwKCSAgY21DdXJzZXNNYWluRm9ybS5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uaCwKCSAgY21DdXJzZXNTdHJpbmdXaWRnZXQuY3h4LCBjbUN1cnNlc1N0cmluZ1dpZGdldC5oLAoJICBjbUN1cnNlc1dpZGdldC5jeHgsIGNtQ3Vyc2VzV2lkZ2V0Lmg6IFVwZGF0ZWQgdG9vbGJhci4KCjIwMDEtMTItMTIgMTg6MjcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogRU5IOiBhbGxvdyBsb2NhbCBjaGFuZ2VzCgoyMDAxLTEyLTEyIDEzOjU3ICBiZXJrCgoJKiBNb2R1bGVzL0ZpbmRNUEkuY21ha2U6IEFkZGVkIGRvYy4KCjIwMDEtMTItMTIgMTI6MDUgIGtpbmcKCgkqIE1vZHVsZXMvRmluZEN1cnNlcy5jbWFrZTogRU5IOiBBZGRlZCAvbGliIHRvIGN1cnNlcyBzZWFyY2ggcGF0aC4KCjIwMDEtMTItMTIgMTE6NTEgIGJlcmsKCgkqIE1vZHVsZXMvRmluZE1QSS5jbWFrZTogQWRkZWQgc3VwcG9ydCBmb3IgYSAybmQgbXBpIGxpYnJhcnkKCSAgKHVzdWFsbHkgbXBpKyspCgoyMDAxLTEyLTExIDE1OjU5ICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGNtYWtlLmRlcGVuZHMgZmlsZXMgb2YKCSAgemVybyBzaXplIHdlcmUgbm90IGJlaW5nIHJlLXdyaXR0ZW4gaW4gc29tZSBjYXNlcy4gIEFkZGVkIGEKCSAgY29tbWVudCBvdXRwdXQgdG8gdGhlIHRvcCBvZiB0aGUgZmlsZSBzbyBpdCB3aWxsIGJlIHJlLXdyaXR0ZW4KCSAgZXZlcnkgdGltZS4KCjIwMDEtMTItMTEgMTQ6MDkgIGJsZXplawoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogRU5IOiBBZGRpbmcgL3Vzci8qL3B5dGhvbjEuNSBmb3IKCSAgUmVkSGF0IDcuMS9QeXRob24gMS41IHVzZXJzCgoyMDAxLTEyLTExIDEyOjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5jeHg6IHJlbW92ZSB3YXJuaW5nCgoyMDAxLTEyLTExIDEwOjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGNoZWNrIGZvciBlbXB0eSBsaWJyYXJ5CgkgIG91dHB1dCBwYXRoCgoyMDAxLTEyLTExIDEwOjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiBFTkg6IGFkZCBmbHVzaAoKMjAwMS0xMi0xMSAwMjoyMSAgaWJhbmV6CgoJKiBTb3VyY2UvOiBjbUZMVEtXcmFwVUlDb21tYW5kLmgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBGSVg6IFRoZQoJICBjb21tYW5kIHdhcyBtb2RpZmllZCBpdCB1c2VzIG5vdyBhIHRhcmdldCBhbmQgYSBzb3VyY2UgbGlzdAoJICBjb21wb3NlZCBvZiAuZmwgZmlsZXMuIFRoZSBuYW1lcyBvZiB0aGUgZ2VuZXJhdGVkIC5jeHggZmlsZXMgYXJlCgkgIGFkZGVkIGludGVybmFsbHkgdG8gdGhlIFNvdXJjZXMgbGlzdCBvZiB0aGUgdGFyZ2V0LgoKMjAwMS0xMi0xMSAwMjoxNyAgaWJhbmV6CgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVGFyZ2V0Lmg6IEZJWDoKCSAgR0VORVJBVEVEX0NPREUgdHlwZSBpcyBubyBsb25nZXIgbmVlZGVkOiBnZW5lcmF0ZWQgY29kZSBpcyBub3QgYQoJICBUYXJnZXQuCgoyMDAxLTEyLTExIDAyOjE1ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIENNYWtlU2V0dXBHVUkuaDogRU5IOgoJICBUaGVzZSBmaWxlcyBhcmUgbm93IGdlbmVyYXRlZCBmcm9tIHRoZSAuZmwgZmlsZSBieSBGTFRLX1dSQVBfVUkKCSAgY29tbWFuZC4KCjIwMDEtMTItMTEgMDI6MTQgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEZJWDogRkxUS19XUkFQX1VJIGNvbW1hbmQKCSAgbW9kaWZpZWQuCgoyMDAxLTEyLTEwIDEyOjEwICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRUY2xzaC5jbWFrZTogRU5IOiBBZGRlZCBtb3JlIGZpbGVuYW1lcyBmb3IgdGNsc2gKCSAgcHJvZ3JhbS4gIEFsc28gbm93IG9ubHkgbG9va3MgZm9yIGN5Z3RjbHNoODAgaWYgdW5kZXIgY3lnd2luLgoKMjAwMS0xMi0xMCAxMjowNCAga2luZwoKCSogTW9kdWxlcy9GaW5kVGNsc2guY21ha2U6IEVOSDogQWRkZWQgbW9yZSBmaWxlbmFtZXMgZm9yIHRjbHNoCgkgIHByb2dyYW0uICBBbHNvIG5vdyBvbmx5IGxvb2tzIGZvciBjeWd0Y2xzaDgwIGlmIHVuZGVyIGN5Z3dpbi4KCjIwMDEtMTItMTAgMTI6MDIgIHBlcmVyYQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBMSUJSQVJZX09VVFBBVEhfUEFUSCBtYXkKCSAgYmUgInNldCIgdG8gdGhlIG51bGwgc3RyaW5nLCBpbiB3aGljaCBjYXNlIGl0IHNob3VsZCBiZSBpZ25vcmVkLgoKMjAwMS0xMi0xMCAxMToyNyAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5jeHgsIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IFBhcmFsbGVsIGJ1aWxkIHN1cHBvcnQgaXMgbm93CgkgIGF1dG9tYXRpYy4gIFNVQkRJUl9ERVBFTkRTIGNvbW1hbmQgbm93IGRvZXMgbm90aGluZy4JQWxzbyBmaXhlZAoJICBhIGJ1ZyBpbiBDTWFrZUxpc3RzLnR4dCBmaWxlIGluaGVyaXRhbmNlIHdoZW4gYSBkaXJlY3RvcnkgbGV2ZWwKCSAgaXMgc2tpcHBlZC4KCjIwMDEtMTItMTAgMTE6MDMgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuY3h4LCBjbVN1YmRpckRlcGVuZHNDb21tYW5kLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBTVUJESVJfREVQRU5EUyBjb21tYW5kIG5vdyBkb2VzCgkgIG5vdGhpbmcuICBUaGUgcGFyYWxsZWwgYnVpbGQgZnVuY3Rpb25hbGl0eSBpcyBub3cgYXV0b21hdGljLgoJICBEZXBlbmRlbmNpZXMgYXJlIHNldHVwIHRvIGZvcmNlIHRoZSBzYW1lIGJ1aWxkIG9yZGVyIGFzIGEgc2luZ2xlCgkgIHRocmVhZGVkIGJ1aWxkLCBidXQgbXVsdGlwbGUgZmlsZXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGNhbiBiZQoJICBidWlsdCBzaW11bHRhbmVvdXNseS4gIEFsc28gZml4ZWQgYnVnIHdpdGggaW5oZXJpdGluZwoJICBDTWFrZUxpc3RzLnR4dCBmaWxlcyB3aGVuIGEgZGlyZWN0b3J5IGxldmVsIGlzIHNraXBwZWQuCgoyMDAxLTEyLTA4IDIxOjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6CgkgIG1lcmdlIGJ1ZyBmaXhlcyB0byByZWxlYXNlCgoyMDAxLTEyLTA4IDIxOjE2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBtZXJnZSBidWcgZml4ZXMgdG8gcmVsZWFzZSwgbWlzdGFrZW4KCSAgY29tbWVudCBpbiBjYWNoZQoKMjAwMS0xMi0wOCAyMToxMCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBpZiBMSUJSQVJZX09VVFBVVF9QQVRICgkgIGlzIHNldCwgdGhlbiB1c2UgdGhlIGZ1bGxwYXRoIGZvciBhIHJlbW90ZSB0YXJnZXQKCjIwMDEtMTItMDggMjA6NDkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBXQVI6IHJlbW92ZSB3YXJuaW5nCgoyMDAxLTEyLTA3IDE5OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGV4ZWN1dGFibGUgZXh0ZW5zaW9uCgkgIHdyb25nIGZvciBjdGVzdCBzZWFyY2gsIGFuZCB3YXMgbm90IGxvb2tpbmcgaW4gRGVidWcgYW5kIFJlbGVhc2UKCjIwMDEtMTItMDcgMTg6MjcgIGJlcmsKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IElmIGFuIGVudHJ5IHN0YXJ0cyB3aXRoIC8vIChuZXR3b3JrCgkgIHBhdGhzKSwgZG91YmxlIHF1b3RlIGl0LgoKMjAwMS0xMi0wNyAxODoxNSAgcGVyZXJhCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IHRoZSBydWxlIGZvciBnZW5lcmF0aW5nCgkgIGEgbGlicmFyeSBubyBsb25nZXIgaGFzIHRoZSBmdWxsIHBhdGgsIGFuZCBzbyB0aGUgZGVwZW5kZW5jeQoJICB0YXJnZXRzIHNob3VsZG4ndCwgZWl0aGVyLgoKMjAwMS0xMi0wNyAxODoxMiAgYmVyawoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQ29tbWVudHMgc3RhcnQgd2l0aCBUV08gbGVhZGluZwoJICBzbGFzaGVzIG5vdCBfb25lXwoKMjAwMS0xMi0wNyAxNjowNiAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogdmVyc2lvbiByZXYKCjIwMDEtMTItMDcgMTY6MDEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IHJlbGVhc2UgMTAKCjIwMDEtMTItMDcgMTU6NDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbU1hcmtBc0FkdmFuY2VkQ29tbWFuZC5oLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBUZW1wbGF0ZXMvQ01ha2VCb3JsYW5kV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogRU5IOiBhZGQgbWFyayBhcwoJICBub3QgYWR2YW5jZWQgdG8gbWFyayBhcyBhZHZhbmNlZAoKMjAwMS0xMi0wNyAxNDo1NyAgaG9mZm1hbgoKCSogQ2hhbmdlTG9nLnR4dDogeWV0IGFub3RoZXIgcmVsZWFzZQoKMjAwMS0xMi0wNyAxNDozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtldGVzdC5jeHg6IEVOSDogY29udmVydCB0byB3aW5kb3dzIHBhdGhzCgoyMDAxLTEyLTA3IDEzOjEwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogRU5IOiB1c2Ugd2luZG93cyBwYXRocyB0byBydW4gY29tbWFuZHMgYW5kCgkgIGVzY2FwZSBzcGFjZXMKCjIwMDEtMTItMDcgMTA6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBFTkg6IGFkZCBjdXN0b20gY29tbWFuZHMgZm9yIHRhcmdldHMKCjIwMDEtMTItMDcgMTA6MzIgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvQ01ha2VCb3JsYW5kV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogUmVtb3ZlICJ1bnVzZWQKCSAgdmFyIiB3YXJuaW5nIGZyb20gQ19GTEFHUwoKMjAwMS0xMi0wNiAyMDowNCAgYmFycmUKCgkqIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBEbyBub3Qgb3V0cHV0IGxpYnJhcnkgc2VhcmNoCgkgIHBhdGggaWYgdGhlIGxpYnJhcnkgcGF0aCBvcHRpb24vZmxhZyBpcyBlbXB0eSArIGFkZAoJICBDTUFLRV9MSU5LRVJfSElERV9QQVJBTUVURVJTIHNpbmNlIHNvbWUgbGlua2VycyBqdXN0IGRvIG5vdAoJICBzdXBwb3J0IHRoZSBAPDwgc3ludGF4CgoyMDAxLTEyLTA2IDIwOjAyICBiYXJyZQoKCSogVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBBZGQKCSAgQ01BS0VfTElOS0VSX0hJREVfUEFSQU1FVEVSUyBzaW5jZSBzb21lIGxpbmtlcnMganVzdCBkbyBub3QKCSAgc3VwcG9ydCB0aGUgQDw8IHN5bnRheAoKMjAwMS0xMi0wNiAxNzo0MCAgYW5keQoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDogRml4IGJ1ZyB3aXRoIHN0cmluZwoKMjAwMS0xMi0wNiAxNzowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtld2l6YXJkLmN4eDogRU5IOiBjYWxsIGNvbnZlcnQgdG8gdW5peCBzbGFzaGVzIGZvcgoJICBwYXRoIGFuZCBmaWxlcGF0aCBlbnRyaWVzCgoyMDAxLTEyLTA2IDE3OjA3ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBBZGRlZCBzdXBwb3J0IGZvciB+LgoKMjAwMS0xMi0wNiAxNjo1MCAgbWFydGluawoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBoYW5kbGUgdGlsZGFzCgoyMDAxLTEyLTA2IDEzOjMyICBiYXJyZQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogTGliIHBhdGggc2hvdWxkIGJlIGNvbnZlcnRlZAoJICB0byBuYXRpdmUgcGF0aCB0b28uCgoyMDAxLTEyLTA2IDEzOjMxICBiYXJyZQoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oLCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaDogRml4IHRoZSBjb21tYW5kIHF1b3RpbmcgcGIgKHJlbW92ZQoJICBtX1F1b3RlTmV4dENvbW1hbmQpLCBtb3ZlIENvbnZlcnRUb05hdGl2ZVBhdGggdG8gTk1ha2UgZ2VuCgoyMDAxLTEyLTA2IDExOjUyICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IGJldHRlciB1c2Ugb2YgbW9kdWxlcwoKMjAwMS0xMi0wNiAxMTo1MiAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kRGFydC5jbWFrZTogYmV0dGVyIGRvY3MKCjIwMDEtMTItMDYgMTE6NTIgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogbm93IGJyb2tlbiBpbnRvIHBpZWNlcwoKMjAwMS0xMi0wNiAxMTo1MSAgbWFydGluawoKCSogTW9kdWxlcy86IEZpbmRUY2xzaC5jbWFrZSwgRmluZFdpc2guY21ha2U6IG5ldyBtb2R1bGVzCgoyMDAxLTEyLTA2IDExOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NjbWFrZS5jeHg6IENsZWFuaW5nIGxhc3QgbGluZSBhdCBleGl0LgoKMjAwMS0xMi0wNiAxMDoyNCAgbWFydGluawoKCSogVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBtYWRlIGluc3RhbGwgcHJlZml4IG5vbgoJICBhZHZhbmNlZAoKMjAwMS0xMi0wNSAxNjowNSAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IElmIFNoaWZ0IGlzIHByZXNzZWQgd2l0aAoJICAnT0snLCB0aGVuIGRvbid0IHF1aXQKCjIwMDEtMTItMDUgMTU6MzYgIHBlcmVyYQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBFTkg6IGFkZCBtb3JlIHBvc3NpYmxlIG5hbWVzIGZvcgoJICBleGVjdXRhYmxlcy4KCjIwMDEtMTItMDUgMTU6MjggIGJhcnJlCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbUNhY2hlTWFuYWdlci5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQWRkIHNpbmdsZSBxdW90ZXMgZmVhdHVyZS4KCjIwMDEtMTItMDUgMTU6MDAgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvQ01ha2VOTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEFkZCBzaW5nbGUgcXVvdGVzCgkgIGZlYXR1cmUuCgoyMDAxLTEyLTA1IDEyOjA3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cCB2ZXJzaW9uCgoyMDAxLTEyLTA1IDExOjU5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB1cCB2ZXJzaW9uCgoyMDAxLTEyLTA1IDExOjM4ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2cudHh0OiBuZXcgdmVyc2lvbgoKMjAwMS0xMi0wNSAxMTozNyAgd2lsbAoKCSogQ01ha2UucGRmOiB1cGRhdGVkIGZyb20gcnRmCgoyMDAxLTEyLTA1IDExOjMyICBob2ZmbWFuCgoJKiBDTWFrZS5ydGY6IEVOSDogdXBkYXRlIGN2cyBwYXRoCgoyMDAxLTEyLTA0IDE4OjQ5ICBzdGFycmV2ZWxkCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjoKCgkgIEFkZCB0aGUgZmxhdF9uYW1lc3BhY2UgYW5kIHVuZGVmaW5lZCBzdXBwcmVzcyBmbGFncyB0byBPU1ggYnVpbGRzCgoyMDAxLTEyLTA0IDE3OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogcmVtb3ZlIC90bXBfbW50IGZyb20gYWxsIHBhdGhzIGluCgkgIGNvbnZlcnQgdG8gdW5peCBzbGFzaGVzCgoyMDAxLTEyLTA0IDE2OjE5ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBGaXhlZCBvdXRkYXRlZCBjb21tZW50CgoyMDAxLTEyLTA0IDE1OjU1ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvQ01ha2VCb3JsYW5kV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogYWRkIHRXTSB0byBjCgkgIGZsYWdzIGFzIHdlbGwgYXMgQ1hYIGZsYWdzCgoyMDAxLTEyLTA0IDE1OjUzICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBGaXhlZCBvdmVyZmxvdyBwcm9ibGVtLgoKMjAwMS0xMi0wNCAxNToxNiAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL0NNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEVOSDogYWRkIC10V00gdG8KCSAgZGVmYXVsdCBmbGFncyBmb3IgY29tcGlsYXRpb24KCjIwMDEtMTItMDQgMTI6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGNyYXp5IGZpeCBmb3IgcHV0ZW52LCBhbmQKCSAgbmF0aXZlIHBhdGggY2FsbGVkIG9uIGN1c3RvbSBjb21tYW5kIHBhdGhzCgoyMDAxLTEyLTA0IDExOjIwICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzU3RhbmRhcmRJbmNsdWRlcy5oOiByZXBsYWNpbmcgY2xlYXIoKQoKMjAwMS0xMi0wNCAxMToxNiAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNjbWFrZS5jeHgsIGNtQ3Vyc2VzRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzRm9ybS5oLCBjbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc1N0cmluZ1dpZGdldC5jeHg6IEFkZGVkIGRlYnVnZ2luZy4KCjIwMDEtMTItMDQgMTA6NTUgIGJhcnJlCgoJKiBNb2R1bGVzLzogRG9jdW1lbnRhdGlvbi5jbWFrZSwgRmluZEN5Z3dpbi5jbWFrZSwKCSAgRmluZERveHlnZW4uY21ha2UsIEZpbmRIaGMuY21ha2UsIEZpbmRQZXJsLmNtYWtlLAoJICBGaW5kU2VsZlBhY2tlcnMuY21ha2UsIEZpbmRVbml4Q29tbWFuZHMuY21ha2UsIEZpbmRXZ2V0LmNtYWtlOgoJICBSZW1vdmUgdW5uZWVkZWQgdGVzdCBhbmQgY29kZSBkdXBsaWNhdGlvbi4gQWRkIFdJTjMyIHRlc3QuIE1ha2UKCSAgYWxsIEFEVkFOQ0VELgoKMjAwMS0xMi0wNCAxMDo1NCAgYmFycmUKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogUmVtb3ZlIGNvZGUgZHVwbGljYXRpb24uIENhbGwgRmluZFRjbC5jbWFrZSwKCSAgd2hpY2ggYWxzbyBkb2VzIHRoZSBBRFZBTkNFRCBzdHVmZi4KCjIwMDEtMTItMDQgMTA6NTMgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IE1ha2Ugc2hlbGxzIGFsc28gQURWQU5DRUQKCjIwMDEtMTItMDQgMTA6MjcgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRQeXRob25MaWJzLmNtYWtlOiBNYWtlIHZhcnMgQURWQU5DRUQgZm9yIFdJTjMyIChzYW1lCgkgIGFzIFRjbCkKCjIwMDEtMTItMDQgMTA6MTEgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mcm1fZHJpdmVyLmM6IG5vIGMrKyBjb21tZW50cyBpbiBjIGNvZGUsCgkgIGR1aGhoaAoKMjAwMS0xMi0wMyAxOTo1OCAgaG9mZm1hbgoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZybV9kcml2ZXIuYzogRU5IOiBBSVggc2VlbXMgdG8gZGVmaW5lCgkgIGxpbmVzIGFuZCBjb2x1bW5zIGFzIG1hY3JvcywgSSB1bmRlZmVkIHRoZW0KCjIwMDEtMTItMDMgMTg6MDQgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZUJvcmxhbmRXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBFTkg6IGZpeCBjcmFzaGVzCgkgIGluIGNvbnNvbGUgYXBwcwoKMjAwMS0xMi0wMyAxNzo0NyAgaG9mZm1hbgoKCSogU291cmNlL2NtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuY3h4OiBFTkg6IGxldCBwZW9wbGUga25vdyB0aGUKCSAgdmFyaWFibGUgaXMgYWR2YW5jZWQKCjIwMDEtMTItMDMgMTc6MDEgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZSwgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlQm9ybGFuZFdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEVOSDogZml4CgkgIGRlYnVnZ2luZyB3aXRoIGJvcmxhbmQKCjIwMDEtMTItMDMgMTc6MDAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVOSDogYWRkIC1DIGxvYWQgY2FjaGUgZmlsZSBvcHRpb24KCjIwMDEtMTItMDMgMTU6NTkgIGJhcnJlCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIENNYWtlQ29tbWFuZExpbmVJbmZvLmNwcCwgQ01ha2VDb21tYW5kTGluZUluZm8uaDogQWRkIC9BIGFuZCAvRwoJICBjb21tYW5kLWxpbmUgcGFyYW0gdG8gY2FycnkgdGhlIHZhbHVlIG9mICJTaG93IEFkdmFuY2VkIiBhbmQKCSAgZ2VuZXJhdG9yIG5hbWUgaW4gZGVza3RvcCBzaG9ydGN1dHMKCjIwMDEtMTItMDMgMTU6NTUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IG1pbm9yIGZpeCBmb3Igbm90IGZvdW5kIGV4ZWN1dGFibGVzCgoyMDAxLTEyLTAzIDE1OjQ4ICBob2ZmbWFuCgoJKiBDTWFrZS5ydGY6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMTItMDMgMTU6MTEgIGJlcmsKCgkqIFNvdXJjZS86IGNtYWtlLmN4eDogRml4ZWQgaGVscC4KCjIwMDEtMTItMDMgMTM6MDUgIGhvZmZtYW4KCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kOiBhZGQgd2l6YXJkCgoyMDAxLTEyLTAzIDA5OjM5ICBob2ZmbWFuCgoJKiBDTWFrZS5ydGY6IHVwZGF0ZSBkb2NzIHNvbWUKCjIwMDEtMTItMDIgMTg6MjIgIGliYW5legoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuY3h4OiBFTkg6IEFkZEN1c3RvbUNvbW1hbmQgcmVnaXN0ZXIKCSAgbm93IG11bHRpcGxlIG91dHB1dHMuIEF1eGlsaWFyeSB2YXJpYWJsZSBtYW5hZ2UgICAgICB0aGUgb3V0cHV0CgkgIGRpcmVjdG9yeSB3aGVyZSBGTFRLIGdlbmVyYXRlZCBjb2RlIGlzIGdvaW5nIHRvIGJlIHdyaXRlbi4KCjIwMDEtMTEtMzAgMTc6MjAgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUJ1aWxkQ29tbWFuZC5jeHgsIGNtRFNQV3JpdGVyLmN4eCwgY21EU1dXcml0ZXIuY3h4LAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21ha2UuY3h4OiBmaXgKCSAgd2FybmluZyBmb3IgQm9ybGFuZCBidWlsZAoKMjAwMS0xMS0zMCAxNjo1MSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtld2l6YXJkLmg6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMTEtMzAgMTY6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpYi5kc3AsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL01ha2VmaWxlLmJvcmxhbmQsIFNvdXJjZS9NYWtlZmlsZS5pbiwKCSAgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IyLmgsCgkgIFNvdXJjZS9jbUZvckVhY2hDb21tYW5kLmN4eCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL2NtYWtlbWFpbi5jeHgsIFNvdXJjZS9jbWFrZXdpemFyZC5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZUJvcmxhbmRXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzQm9ybGFuZENvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c0JvcmxhbmRDb25maWcyLmNtYWtlOiBuZXcgYm9ybGFuZCBnZW5lcmF0b3IKCSAgbW92ZWQgaW50byBwbGFjZQoKMjAwMS0xMS0zMCAxNjoyNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwLAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oOiBSZXBsYWNlIHdpdGggbm1ha2Ugc3ViY2xhc3NlZAoJICBnZW5lcmF0b3IKCjIwMDEtMTEtMzAgMTY6MDUgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEFkZAoJICBvcHRpb25zIGZvciBsaWJyYXJ5IG1hbmFnZXIgKGxpYikuCgoyMDAxLTExLTMwIDE2OjA0ICBiYXJyZQoKCSogVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBBZGQgb3B0aW9ucyBmb3IKCSAgbGlicmFyeSBtYW5hZ2VyIChsaWIpLiBBbHBoYSBzb3J0CgoyMDAxLTExLTMwIDE1OjU1ICBiZXJrCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IFVuaXggdXNlcnMgYXJlIHNtYXJ0ZXIuCgoyMDAxLTExLTMwIDE1OjA0ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogSW1wcm92aW5nIGludGVyZmFjZS4KCjIwMDEtMTEtMzAgMTQ6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IHByaW50IGNtYWtlIHJ1bm5pbmcKCSAgbWVzc2FnZSB0byBjZXJyCgoyMDAxLTExLTMwIDE0OjMzICBiYXJyZQoKCSogVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQWRkIGxpbmtlciBmbGFncyBmb3IgZWFjaAoJICBidWlsZCB0eXBlCgoyMDAxLTExLTMwIDE0OjI0ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBCZXR0ZXIgZG9jdW1lbnRhdGlvbi4KCjIwMDEtMTEtMzAgMTQ6MTYgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHg6IEJldHRlciBkb2N1bWVudGF0aW9uLgoKMjAwMS0xMS0zMCAxMzo1OSAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmN4eCwKCSAgY21DdXJzZXNNYWluRm9ybS5jeHgsIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogSW1wcm92ZWQgaGVscC4KCjIwMDEtMTEtMzAgMTM6NTMgIGJlcmsKCgkqIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogUmVtb3ZlZCB1bnVzZWQgb3B0aW9ucy4KCjIwMDEtMTEtMzAgMTM6MTAgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvQ01ha2VOTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IENNQUtFX0FOU0lfQ0ZMQUdTCgkgIGlzIHVzZWQgYnkgVlRLLCBzbyBpdCBzaG91bGQgYmUgc2V0IGluIHRoZSBOTWFrZSBjb25maWcgc28gdGhhdAoJICBpdCBnZXRzIGV4cGFuZGVkIChldmVuIHRvICIiKQoKMjAwMS0xMS0zMCAxMzowOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IGZpeCBsaWJyYXJ5IHN1ZmZpeAoKMjAwMS0xMS0zMCAxMjo0MSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogcmVtb3ZlIHN1ZmZpeCBydWxlcwoKMjAwMS0xMS0zMCAxMjowNSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogYWRkIG5ldyBzdWZmaXggcnVsZXMKCjIwMDEtMTEtMzAgMTE6MzQgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LCBjbUN1cnNlc0xvbmdNZXNzYWdlRm9ybS5jeHgsCgkgIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LCBjbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogQ2FuIG5vbiB1c2UKCSAgY2xlYXIgYmVjYXVzZSBpdCBpcyB1bmRlZidlZC4KCjIwMDEtMTEtMzAgMTA6NTggIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY2NtYWtlLmN4eDogRml4ZWQgd2FybmluZy4KCjIwMDEtMTEtMzAgMTA6NTQgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY21ha2UuY3h4LCBjbUN1cnNlc01haW5Gb3JtLmN4eDogRml4ZWQKCSAgd2FybmluZy4KCjIwMDEtMTEtMzAgMTA6NTEgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjbUN1cnNlc01haW5Gb3JtLmgsIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4OgoJICBTaW5jZSBpdCBpcyBiZWluZyB1c2VkIGFzIGFuIGFycmF5IHNpemUgaW4gYW5vdGhlciBmaWxlLCBpdCBpcwoJICBub3QgcG9zc2libGUgdG8gaW5pdGlhbGl6ZSBNQVhfV0lEVEggaW4gYSAuY3h4IGZpbGUuCgoyMDAxLTExLTMwIDEwOjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBmaXggd2FybmluZwoKMjAwMS0xMS0zMCAxMDozOSAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmN4eCwKCSAgY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uaDogTWlzc2VkIHN0ZDo6CgoyMDAxLTExLTMwIDEwOjI4ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uaDogTWlzc2VkIHN0ZDo6CgoyMDAxLTExLTMwIDEwOjI3ICBiZXJrCgoJKiBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IENNQUtFX1dPUkRTX0JJR0VORElBTgoJICBzaG91bGQgbm90IGJlIGluIHRoZSBjYWNoZS4KCjIwMDEtMTEtMzAgMTA6MjMgIGJlcmsKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IFBZVEhPTl9ERUJVR19MSUJSQVJZIGlzIG9ubHkgdXNlZAoJICBvbiBXaW5kb3dzLgoKMjAwMS0xMS0zMCAwOToxOSAgYmFycmUKCgkqIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogZml4OiBJZiBkb2N1bWVudGF0aW9uCgkgIGFkZGVkLCB0aGVuIG5lZWQgY2FjaGUgdHlwZQoKMjAwMS0xMS0yOSAyMzo0NSAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNtQ3Vyc2VzTG9uZ01lc3NhZ2VGb3JtLmN4eCwKCSAgY21DdXJzZXNMb25nTWVzc2FnZUZvcm0uaDogb3BwcyBJIGZvcmdvdCB0byBhZGQgdGhlc2UKCjIwMDEtMTEtMjkgMjM6MjQgIGhvZmZtYW4KCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kLCBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IyLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c0JvcmxhbmRDb25maWcyLmNtYWtlOiBFTkg6IGZpeCB2YXJpb3VzCgkgIHByb2JsZW1zIGNhdXNlZCBieSB0aGUgZ2VuZXJhbGl6YXRpb24gb2Ygbm1ha2UgZ2VuZXJhdG9yCgoyMDAxLTExLTI5IDIwOjU5ICBiYXJyZQoKCSogU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NCb3JsYW5kQ29uZmlnMi5jbWFrZSwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogTm1ha2UgYnVpbGQ6IG1vdmUgbW9zdAoJICBvZiBoYXJkLWNvZGVkIHZhbHVlcyB0byBjb25maWcgcGFyYW1ldGVycwoKMjAwMS0xMS0yOSAxNjo0NCAgYmVyawoKCSogU291cmNlLzogY21MaXN0RmlsZUNhY2hlLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAgY3Rlc3QuY3h4LCBDdXJzZXNEaWFsb2cvQ01ha2VMaXN0cy50eHQsIEN1cnNlc0RpYWxvZy9jY21ha2UuY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzQ2FjaGVFbnRyeUNvbXBvc2l0ZS5oLAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNGb3JtLmgsIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uaDogSW1wcm92ZW1lbnRzIHRvIHRoZSBjdXJzZXMKCSAgaW50ZXJmYWNlLgoKMjAwMS0xMS0yOSAxNToxNCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLmNwcDogRU5IOiBmaXggbWVtb3J5IGxlYWtzCgoyMDAxLTExLTI5IDE0OjUxICBiYXJyZQoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEZpeCBzcGFjZSBwYiAoZW1iZW5kZWQsIHRoZW4KCSAgZXNjYXBlZCkKCjIwMDEtMTEtMjkgMDk6MjIgIGhvZmZtYW4KCgkqIFNvdXJjZS9NYWtlZmlsZS5ib3JsYW5kOiBhZGQgYm9vdHN0cmFwIG1ha2VmaWxlIGZvciBib3JsYW5kCgkgIGNvbXBpbGVyCgoyMDAxLTExLTI5IDA5OjA5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBTb3VyY2UvY21ha2V3aXphcmQuY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzQm9ybGFuZENvbmZpZzIuY21ha2U6IGZpeCBmb3Igc2hhcmVkIGxpYnMKCSAgYW5kIGJvcmxhbmQKCjIwMDEtMTEtMjkgMDE6NTEgIGliYW5legoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBHRU5FUkFURURfQ09ERSBjYXNlCgkgIGFkZGVkIHRvIHN3aXRjaC4KCjIwMDEtMTEtMjkgMDE6NDggIGliYW5legoKCSogU291cmNlL2NtVGFyZ2V0Lmg6IEVOSDogQSB0eXBlIG9mIHRhcmdldCB3YXMgYWRkZWQgZm9yCgkgIHJlcHJlc2VudGluZyBHRU5FUkFURURfQ09ERQoKMjAwMS0xMS0yOSAwMTo0NiAgaWJhbmV6CgoJKiBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHg6IEVOSDogQ3VzdG9tIGNvbW1hbmRzIGFyZSBub3cKCSAgYnVpbGRlZC4KCjIwMDEtMTEtMjggMTg6MDcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpYi5kc3AsIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvcjIuY3h4LAoJICBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IyLmgsCgkgIFNvdXJjZS9jbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzQm9ybGFuZENvbmZpZzIuY21ha2U6IEVOSDogYm9ybGFuZAoJICBnZW5lcmF0b3IgMiBpcyB3b3JraW5nIG1vcmUgb3IgbGVzcwoKMjAwMS0xMS0yOCAxNDo0NSAgaWJhbmV6CgoJKiBTb3VyY2UvY21GTFRLV3JhcFVJQ29tbWFuZC5jeHg6IEVOSDogQ29tbWFuZCBzaW1wbGlmaWVkIGluIG9yZGVyCgkgIHRvIGNvbnN0cnVjdCBhIFNvdXJjZSBsaXN0IG9mIC5jeHggZnJvbSAgICAgIGEgc291cmNlIGxpc3Qgb2YgLmZsCgkgIEdVSSBmaWxlcy4KCjIwMDEtMTEtMjggMTQ6NDQgIGliYW5legoKCSogU291cmNlL2NtRkxUS1dyYXBVSUNvbW1hbmQuaDogRU5IOiBUaGUgY29tbWFuZCB3YXMgc2ltcGxpZmllZCB0bwoJICBnZW5lcmF0ZSBhIHNvdXJjZSBsaXN0IG9mIGN4eCBmcm9tIGEJICAgIHNvdXJjZSBsaXN0IG9mIC5mbCBHVUkKCSAgZmlsZXMuCgoyMDAxLTExLTI4IDEyOjQ5ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZTogRnluZCBQeXRob24gZGVidWcgbGliIGluIHVzdWFsIGxpYnMKCSAgZGlyIHRvbwoKMjAwMS0xMS0yOCAxMToxMiAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yMi5jeHgsCgkgIGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yMi5oLCBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21ha2UuY3h4OiBhZGQgbmV3IGJvcmxhbmQgZ2VuZXJhdG9yCgoyMDAxLTExLTI4IDEwOjUxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogW25vIGxvZyBtZXNzYWdlXQoKMjAwMS0xMS0yOCAwNzoxNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogYnVnOiBmaXggc2FtZSBwYXRoIGNvbXBhcmlzb24gd2hlbgoJICBzaG9ydCBwYXRocyBhcmUgdXNlZAoKMjAwMS0xMS0yOCAwNzoxNCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eDogZml4IHdhcm5pbmcKCjIwMDEtMTEtMjcgMTk6MzggIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eDogRklYOiBXaGVuCgkgIHN3aXRjaGluZyBmcm9tIG9uZSBwcm9qZWN0IHRvIGFub3RoZXIgdGhlIENhY2hlR1VJIHdhc24ndCBiZWluZwoJICBjbGVhcmVkLiBWYWx1ZXMgZnJvbSBvbmUgcHJvamVjdCB3ZXJlIG1peGVkIGludG8gdGhlIG90aGVyLgoKMjAwMS0xMS0yNyAxNzo1MyAgYmVyawoKCSogU291cmNlLzogY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBubWFrZSBnZW5lcmF0b3IgbXVjaCBjbG9zZXIgdG8KCSAgd29ya2luZyB3aXRoIHNwYWNlcwoKMjAwMS0xMS0yNyAxNzozMiAgYmVyawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGV4cGFuZCB2YXJpYWJsZXMgaW4gYSBjb21tYW5kIGJlZm9yZQoJICBlc2NhcGluZyBzcGFjZXMgaW4gdGhlIGNvbW1hbmQKCjIwMDEtMTEtMjcgMTc6MzEgIGJlcmsKCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4OiBFTkg6IGRvIG5vdCB3cml0ZSBvdmVyIGV4aXN0aW5nIGNhY2hlCgkgIHZhbHVlcyBldmVuIGRvYyBzdHJpbmdzIHRvIGF2b2lkIGNoYW5naW5nIHRoZSBjYWNoZSBmaWxlCgoyMDAxLTExLTI3IDE2OjEyICBiZXJrCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiByZW1vdmUgdW51c2VkIGluY2x1ZGUKCjIwMDEtMTEtMjcgMTU6MzQgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5yYzogYWRqdXN0ZWQgc3BhY2luZwoKMjAwMS0xMS0yNyAxNTozMyAgbWFydGluawoKCSogU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiByZW1vdmVkIGV4dHJhIGxpYiBwYXRocyB0bwoJICBhdm9pZCBmaW5kaW5nIG9sZCBsaWJzCgoyMDAxLTExLTI3IDE1OjMyICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IG1hZGUgc29tZSB2YXJzIGFkdmFuY2VkCgoyMDAxLTExLTI3IDE1OjIwICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IG1hZGUgc29tZSB2YXJzIGFkdmFuY2VkCgoyMDAxLTExLTI3IDAwOjAzICBpYmFuZXoKCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eDogRU5IOiBDb21tYW5kIGZvciBydW5uaW5nIEZMVEsncyBVSSB0b29sCgkgICJGbHVpZCIgd2FzIGFkZGVkLgoKMjAwMS0xMS0yNyAwMDowMiAgaWJhbmV6CgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IFN1cHBvcnQgZm9yIEZMVEsgRmx1aWQKCSAgdG9vbCBhZGRlZC4KCjIwMDEtMTEtMjYgMjM6NTcgIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRU5IOiBTdXBwb3J0IGZvciBydW5uaW5nIEZMVUlEIHdhcyBhZGRlZC4KCjIwMDEtMTEtMjYgMjI6NDAgIGliYW5legoKCSogU291cmNlLzogY21GTFRLV3JhcFVJQ29tbWFuZC5jeHgsIGNtRkxUS1dyYXBVSUNvbW1hbmQuaDogQ29tbWFuZAoJICBmb3IgaW52b2tpbmcgRkxUSydzIGNvZGUgZ2VuZXJhdG9yICJGbHVpZCIgZHVyaW5nIHRoZSBidWlsZGluZwoJICBwcm9jZXNzCgoyMDAxLTExLTI2IDE4OjI2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0RhcnQuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21ha2V3aXphcmQuY3h4LCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBTb3VyY2UvTUZDRGlhbG9nL3Jlc291cmNlLmgsCgkgIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTWFya0FzQWR2YW5jZWRDb21tYW5kLmg6IEVOSDogYWRkIGFkdmFuY2VkIHZhcmlhYmxlCgkgIHR5cGVzIGFuZCBjb21tYW5kIGxpbmUgd2l6YXJkIGd1aQoKMjAwMS0xMS0yNiAxODoyNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuaCwKCSAgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oOiBFTkg6IGFkZAoJICBwb3NzaWJpbGl0eSB0byBhZGQgZG9jIHN0cmluZ3MgdG8gdmFyaWJsZXMgY3JlYXRlZCBieSBmaW5kIHR5cGUKCSAgY29tbWFuZHMKCjIwMDEtMTEtMjYgMTY6MzIgIGJlcmsKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IE9vcHMuIFRoZSB3cm9uZyB2ZXJzaW9uIG9mIHRoZQoJICBkdXBsaWNhdGUgY29kZSB3YXMga2VwdC4gTG9hZGVkIGNhY2hlIHZhbHVlcyB3ZXJlIG5vdCBtYWRlCgkgIGludGVybmFsLgoKMjAwMS0xMS0yNiAxNTo0NSAgYmVyawoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBUS19JTlRFUk5BTF9QQVRIIGlzIG9ubHkgbmVlZGVkIG9uCgkgIFdpbmRvd3MuCgoyMDAxLTExLTI2IDExOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiByZW1vdmVkIHdhcm5pbmcKCSAgbWVzc2FnZXMKCjIwMDEtMTEtMjYgMTE6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUlmQ29tbWFuZC5jeHg6IGJldHRlciBlcnJvciBtZXNzYWdlcwoKMjAwMS0xMS0yNCAxODo0NyAgYmFycmUKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogSSB3YW50IHRvIGJlIGFibGUgdG8gc3RhcnQvZW5kCgkgIGV4cGVyaW1lbnRhbC1vbmx5IGRhc2hib2FyZHMKCjIwMDEtMTEtMjEgMTc6NDUgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21EU1BXcml0ZXIuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtYWtlLmN4eCwgY21ha2V0ZXN0LmN4eDogTk1ha2Ugd2l0aAoJICBzcGFjZXMgaW4gZGlyZWN0b3JpZXMKCjIwMDEtMTEtMjEgMTE6MzUgIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEZpeCB0aGUgY3VycmVudCBkaXJlY3RvcnkgY2hlY2sgZm9yCgkgIE5NYWtlCgoyMDAxLTExLTIxIDA4OjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IGNsZWFuIHVwIGNvbW1hbmQgbGluZSBhcmd1bWVudHMKCjIwMDEtMTEtMjEgMDg6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtUVRXcmFwVUlDb21tYW5kLmN4eCwgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5jeHg6CgkgIFdBUjogZml4IHdhcm5pbmcKCjIwMDEtMTEtMjAgMTc6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwgY21ha2UuY3h4LAoJICBjbWFrZS5oOiBFTkg6IGFkZCBjb21tYW5kIGxpbmUgYXJndW1lbnRzIHRvIHNldCBjYWNoZSBlbnRyaWVzCgoyMDAxLTExLTIwIDE3OjI3ICBiZXJrCgoJKiBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBjbG9zZXIgdG8gd29ya2luZyB3aXRoCgkgIHNwYWNlcyBpbiBzb3VyY2UgZGlyZWN0b3J5CgoyMDAxLTExLTIwIDE3OjI3ICBiZXJrCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogQlVHOiBmaXggbWVtb3J5IGxlYWsKCjIwMDEtMTEtMjAgMTc6MjYgIGJlcmsKCgkqIFNvdXJjZS9jbURTUFdyaXRlci5jeHg6IEJVRzogZml4IGZvciBzcGFjZXMgaW4gcGF0aCB0bwoJICBDTWFrZUxpc3QudHh0IGZpbGUKCjIwMDEtMTEtMjAgMDg6MjggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5jeHgsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogZGVmaW5lIGhhY2tzIGFuZCBzdWNoCgkgIGZvciB0aGUgZGVjIGNvbXBpbGVyCgoyMDAxLTExLTE5IDE3OjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5jeHgsIGNtVmFyaWFibGVSZXF1aXJlc0NvbW1hbmQuaCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IGFkZCBuZXcgY29tbWFuZAoJICBWQVJJQUJMRV9SRVFVSVJFUyBmb3IgYmV0dGVyIGRlYnVnZ2luZyBvZiBsaXN0IGZpbGVzCgoyMDAxLTExLTE5IDA5OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVZhcmlhYmxlUmVxdWlyZXNDb21tYW5kLmN4eCwKCSAgY21WYXJpYWJsZVJlcXVpcmVzQ29tbWFuZC5oOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAxLTExLTE5IDA5OjIwICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBFTkg6IHJlbW92ZSB1bnVzZWQgc291cmNlIGZpbGVzCgoyMDAxLTExLTE2IDE2OjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGxvb2sgZm9yIGNtYWtlIHRlc3Qgd2l0aAoJICAuZXhlIGlmIG5tYWtlCgoyMDAxLTExLTE2IDE2OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIENNYWtlU2V0dXAuZHNwLCBDTWFrZVNldHVwLnJjLAoJICBDTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5oLCBNYWtlSGVscC5jcHAsCgkgIE1ha2VIZWxwLmgsIHJlc291cmNlLmg6IGZhY2UgbGlmdCBmb3IgR1VJIGFuZCBzb21lIG1vcmUgaGVscAoKMjAwMS0xMS0xNiAxNjoyOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGZvciBkbGwgYnVpbGRzCgoyMDAxLTExLTE2IDEzOjA4ICBiZXR0aW5nZgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQWRkZWQgYSBtYWtlIGRlcGVuZCBpbiB0aGUKCSAgY2xlYW4gcnVsZSB0byByZWZyZXNoIHRoZSBkZXBlbmRlbmNpZXMKCjIwMDEtMTEtMTYgMTA6MTQgIGJldHRpbmdmCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiB1bmRvIHRoZSBsYXN0IGNoYW5nZSBiZWNhdXNlCgkgIG9mIHByb2JsZW0gd2l0aCBzb21lIHZlcnNpb25zIG9mIG1ha2UKCjIwMDEtMTEtMTYgMDk6NDAgIGJldHRpbmdmCgoJKiBNb2R1bGVzL0ZpbmRRdC5jbWFrZTogZml4ZWQgUVRfVUlDX0VYRSBuYW1lCgoyMDAxLTExLTE2IDA5OjA0ICBiZXR0aW5nZgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogYWRkZWQgdGhlIGRlbGV0aW9uIG9mCgkgIGNtYWtlLmRlcGVuZHMgaW4gdGhlIGNsZWFuaW5nIHNvIHRoYXQgaXQgaXMgcmVjb21wdXRlZCBldmVuCgkgIHNvdXJjZSBmaWxlcyAoaS5lLiAuY3h4IG9yIC5oKSBhcmUgZ2VuZXJhdGVkCgoyMDAxLTExLTE2IDA5OjAzICBiZXR0aW5nZgoKCSogU291cmNlL2NtTWFrZURlcGVuZC5jeHg6IE5vdyBhZGRzIGRlcGVuZGVuY3kgaWYgdGhlIGZpbGUgZG9lc24ndAoJICBleGlzdCBidXQgd2lsbCBiZSBjcmVhdGVkIGR1cmluZyB0aGUgY29tcGlsYXRpb24KCjIwMDEtMTEtMTYgMDk6MDEgIGJldHRpbmdmCgoJKiBTb3VyY2UvOiBjbVFUV3JhcFVJQ29tbWFuZC5jeHgsIGNtUVRXcmFwVUlDb21tYW5kLmg6IGNvcnJlY3RlZAoJICBwYXRoIHByb2JsZW0gYW5kIGFkZGVkIG1vYyBjb21waWxhdGlvbiB0b28KCjIwMDEtMTEtMTUgMjI6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9NYWtlZmlsZS5pbjogcmVtb3ZlIGRlcGVuZCBvbiBzdGFyIGRvdCBoIGFzIGl0IGlzIG5vdAoJICByZWFsbHkgbmVlZGVkIGFuZCBicmVha3Mgc29tZSB2ZXJzaW9ucyBvZiBnbWFrZQoKMjAwMS0xMS0xNSAxODoxOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGNyYXp5IHRlbXAgZmlsZXMKCSAgZm9yIGxvbmcgY29tbWFuZCBsaW5lcwoKMjAwMS0xMS0xNSAxNzo0NSAgaG9mZm1hbgoKCSogU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogcmVtb3ZlIGRlYnVnIHByaW50cwoKMjAwMS0xMS0xNSAxNzoxMSAgaG9mZm1hbgoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlLCBTb3VyY2UvY21CdWlsZENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NCb3JsYW5kQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBjbG9zZXIgdG8gbm1ha2UKCSAgd29ya2luZywgYWRkZWQgQ01BS0VfTUFLRV9DT01NQU5EIGluc3RlYWQgb2YgTUFLRUNPTU1BTkQgdXNlZCBieQoJICBEYXJ0LCBubWFrZSBtYWtlZmlsZXMgd29yayB3aXRoIGJvcmxhbmQgbWFrZSBhbmQgbm1ha2UKCjIwMDEtMTEtMTUgMTQ6NTQgIG1pbGxlcmp2CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogTmV3IG1ha2UgdGFyZ2V0cyBmb3IgQ29udGludW91cyBidWlsZHMuCgkgIEFkZGVkIGEgTmlnaHRseVN0YXJ0IGFuZCBOaWdodGx5VXBkYXRlIHRhcmdldCBmb3IgdW5peCBidWlsZHMgYXMKCSAgd2VsbC4KCjIwMDEtMTEtMTUgMTQ6NTIgIG1pbGxlcmp2CgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBFTkg6IENoYW5nZWQgTmlnaHRseSBzdGFydCB0aW1lCgoyMDAxLTExLTE1IDA5OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgY21ha2UuY3h4OgoJICBFTkg6IGZpeCBsaWJyYXJ5IGJ1aWxkcyB3aXRoIG5tYWtlCgoyMDAxLTExLTE1IDA5OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IHdyb25nIHNob3J0bmFtZSB1c2VkCgoyMDAxLTExLTE1IDA4OjQzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogQlVHOiBmaXggYnVpbGQgZm9yIGN5Z3dpbgoKMjAwMS0xMS0xNSAwODo0MiAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBhdm9pZCAuY3h4Lm8gbmFtZXMuLi4KCjIwMDEtMTEtMTQgMTg6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9jbWFrZXRlc3QuY3h4LCBTb3VyY2UvY21ha2V0ZXN0LmguaW4sCgkgIFRlbXBsYXRlcy9DTWFrZU5NYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogQ2xvc2VyIHRvIG5tYWtlCgkgIGJ1aWxkCgoyMDAxLTExLTE0IDE4OjExICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbU5NYWtlTWFrZWZpbGVHZW5lcmF0b3IuaDogY2xvc2VyIHRvIG5tYWtlIGJ1aWxkCgoyMDAxLTExLTE0IDE0OjM5ICBiYXJyZQoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXAucmMsIENNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBDTWFrZVNldHVwRGlhbG9nLmgsIHJlc291cmNlLmg6IFF1aWNrIGFkZGl0aW9uOiAiQ3JlYXRlIHNob3J0Y3V0IgoJICBtZW51IGVudHJ5LgoKMjAwMS0xMS0xNCAxMDoyMSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzL0NNYWtlTk1ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBTb3VyY2UvY21OTWFrZU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogbm1ha2Ugc3VwcG9ydAoKMjAwMS0xMS0xNCAwOTo1NiAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jY21ha2UuY3h4OiBFUlI6IFJlLW9yZGVyZWQgaW5jbHVkZXMgdG8gZml4CgkgIG1hY3JvIGNvbmZsaWN0IGZvciBnY2MgMy4wLgoKMjAwMS0xMS0xNCAwOTo1NSAga2luZwoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2ZybV9kcml2ZXIuYzogRVJSOiBGaXhlZCBjb21waWxlcgoJICB3YXJuaW5nIGZvciBnY2MgMy4wLgoKMjAwMS0xMS0xNCAwOToyMiAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiByZW1vdmUgZGVidWcgc3RhdGVtZW50cwoKMjAwMS0xMS0xNCAwODo0OSAgaG9mZm1hbgoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSS5jeHg6IEVOSDogcmVtb3ZlIHdhcm5pbmcKCjIwMDEtMTEtMTMgMTg6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGliLmRzcCwgQ01ha2VMaXN0cy50eHQsCgkgIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtTk1ha2VNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IHN0YXJ0CgkgIHdvcmsgb24gbm1ha2UgZ2VuZXJhdG9yCgoyMDAxLTExLTEzIDE1OjU0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6CgkgIGNsZWFuIHVwIG9iamVjdCBmaWxlIGJ1aWxkIHJ1bGUsIGFuZCBkbyBub3QgYXR0ZW1wdCB0byByZW1vdmUKCSAgbGlua19kaXJlY3RvcmllcyB0aGF0IGFyZSBpbiB0aGUgYnVpbGQgdHJlZQoKMjAwMS0xMS0xMyAxNDoyMiAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIEN1cnNlc0RpYWxvZy9DTWFrZUxpc3RzLnR4dDogZml4ZXMgdG8KCSAgY3Vyc2VzIHN0dWZmCgoyMDAxLTExLTEzIDEyOjQyICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vZnR5X251bS5jOiB3YXJuaW5ncwoKMjAwMS0xMS0xMyAxMjozOCAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRXh0ZXJuYWxNU1Byb2plY3RDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIEZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSS5jeHgsIEZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSS5oLAoJICBGTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHg6IEVOSDogY2xlYW4gdXAKCSAgd2FybmluZ3MKCjIwMDEtMTEtMTMgMTI6MjUgIGhvZmZtYW4KCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4OgoJICBXQVI6IGZpeCBjb21waWxlIHdhcm5pbmdzCgoyMDAxLTExLTEzIDEyOjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGREZXBlbmRlbmNpZXNDb21tYW5kLmg6IEVOSDogZml4IHNwZWxsaW5nIGVycm9yCgoyMDAxLTExLTEzIDEyOjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4OiBFTkg6IHJlbW92ZSB3YXJuaW5ncwoKMjAwMS0xMS0xMiAxNTozNyAga2luZwoKCSogU291cmNlL2NtTWFrZURlcGVuZC5jeHg6IEVOSDoKCSAgY21NYWtlRGVwZW5kOjpHZW5lcmF0ZURlcGVuZEluZm9ybWF0aW9uIHdpbGwgbm93IHVzZSBoaW50cwoJICByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIGFjdHVhbCBmaWxlIGV4aXN0cy4gIFRoaXMgY2FuIGJlIHVzZWQKCSAgdG8gYWRkIGRlcGVuZGVuY2llcyB0byAuaCBmaWxlcyB3aGljaCBhcmUgZ2VuZXJhdGVkIGJ1dCBpbmNsdWRlZAoJICBpbiBoYW5kLXdyaXR0ZW4gLmN4eCBmaWxlcy4gIElmIHRoZSAuY3h4IGRvZXMgZXhpc3QsIHRob3VnaCwgaXQKCSAgd2lsbCBiZSB1c2VkIGZpcnN0LCBhbmQgdGhlIGhpbnRzIHdpbGwgYmUgdXNlZCBhZnRlcndhcmQuCgoyMDAxLTExLTEyIDA5OjIxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBtaW5vciBmaXgKCjIwMDEtMTEtMTAgMjM6MDEgIGliYW5legoKCSogTW9kdWxlcy9GaW5kWDExLmNtYWtlOiAgICAgIE1vZHVsZSB0byBzZWFyY2ggZm9yIHRoZSBpbnN0YWxsYXRpb24KCSAgb2YgWDExCgoyMDAxLTExLTA5IDE2OjE2ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nLzogQ01ha2VMaXN0cy50eHQsIGNjbWFrZS5jeHgsIGNjdXJzZXMuY3h4OgoJICBSZW5hbWluZyBjY3Vyc2VzIHRvIGNjbWFrZS4KCjIwMDEtMTEtMDkgMTY6MTUgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRTZWxmUGFja2Vycy5jbWFrZTogU2VsZi1wYWNrZXJzCgoyMDAxLTExLTA5IDE2OjA1ICBiZXJrCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgQ3Vyc2VzRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNTdGFuZGFyZEluY2x1ZGVzLmgsCgkgIEN1cnNlc0RpYWxvZy9mb3JtL2ZybV9kcml2ZXIuYywgQ3Vyc2VzRGlhbG9nL2Zvcm0vZnJtX3JlcV9uYW1lLmM6CgkgIFRyeWluZyB0byBmaXggY3Vyc2VzLgoKMjAwMS0xMS0wOSAxMzowMCAgbWFydGluawoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IHN1cHBvcnQgZm9yIGN1c3RvbSB0YXJnZXRzCgkgIG9uIGV4ZSBhbmQgbGliCgoyMDAxLTExLTA5IDEyOjA4ICBiZXR0aW5nZgoKCSogTW9kdWxlcy9GaW5kUXQuY21ha2U6IHN1cHBvcnQgZm9yIGNvbXBpbGF0aW9uIG9mIC51aSBmaWxlcyBpbnRvCgkgIC5oIGFuZCAuY3h4IGZpbGVzCgoyMDAxLTExLTA5IDEyOjA3ICBiZXR0aW5nZgoKCSogU291cmNlLzogY21RVFdyYXBDUFBDb21tYW5kLmN4eCwgY21RVFdyYXBDUFBDb21tYW5kLmg6IGNsZWFudXBzCgoyMDAxLTExLTA5IDEyOjAyICBiZXR0aW5nZgoKCSogU291cmNlLzogY21RVFdyYXBVSUNvbW1hbmQuaCwgY21RVFdyYXBVSUNvbW1hbmQuY3h4LAoJICBjbUNvbW1hbmRzLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBzdXBwb3J0IGZvcgoJICBjb21waWxhdGlvbiBvZiAudWkgZmlsZXMgaW50byAuaCBhbmQgLmN4eCBmaWxlcwoKMjAwMS0xMS0wOSAxMDo0MiAgYmFycmUKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eDogU09VUkNFLCBDT01NQU5ELCBUQVJHRVQgYXJlCgkgIHJlcXVpcmVkIG5vdwoKMjAwMS0xMS0wOSAxMDozNyAgYmFycmUKCgkqIFNvdXJjZS9jbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmg6IFNPVVJDRSwgQ09NTUFORCwgVEFSR0VUIGFyZQoJICByZXF1aXJlZCBub3cKCjIwMDEtMTEtMDkgMTA6MzMgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21Db21tYW5kQ29tbWFuZC5oOiBSZWltcGxlbWVudCBjb2RlLiBTaW5jZSBhIGN1c3RvbQoJICBjb21tYW5kIGlzIHZlcnkgZmxleGlibGUgYW5kIG1pZ2h0IGJlIGV4dGVuZGVkIGluIHRoZSBmdXR1cmUsCgkgIG1ha2UgYWxsIGFyZ3VtZW50cyBwcmVmaXhlZCB3aXRoIGFyZyB0eXBlLCBtYWtlIG9yZGVyaW5nCgkgIGlycmVsZXZhbnQgYW5kIHBvdGVudGlhbGx5IGFsbCBhcmdzIG9wdGlvbmFsLgoKMjAwMS0xMS0wOCAxNzozMCAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtLzogZnJtX2RyaXZlci5jLCBmcm1fcmVxX25hbWUuYzogVHJ5aW5nCgkgIHRvIGZpeCBjdXJzZXMgcHJvYmxlbXMuCgoyMDAxLTExLTA4IDE3OjI1ICBiZXJrCgoJKiBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vOiBmcm1fZHJpdmVyLmMsIGZybV9yZXFfbmFtZS5jOiBGaXhpbmcKCSAgcHJvYmxlbXMgd2l0aCBjdXJzZXMgaGVhZGVycy4KCjIwMDEtMTEtMDggMTc6MTcgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS86IGZybV9kcml2ZXIuYywgZnJtX3JlcV9uYW1lLmM6IFRyeWluZwoJICB0byBmaXggY3Vyc2VzIHByb2JsZW1zLgoKMjAwMS0xMS0wOCAxNzoxMCAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtL2Zvcm0uaDogT29wcy4KCjIwMDEtMTEtMDggMTc6MDMgIGJlcmsKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ3Vyc2VzRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2Zvcm0vQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mb3JtLmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9uY19hbGxvYy5oOiBDaGFuZ2VzIHRvIHJlbW92ZSB3YXJuaW5ncwoJICBhbmQgZml4IGRlcGVuZGVuY2llcy4KCjIwMDEtMTEtMDggMTU6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbURTV1dyaXRlci5jeHg6IGEgYmV0dGVyIGZpeCBtYXliZQoKMjAwMS0xMS0wOCAxNDo0NCAgaG9mZm1hbgoKCSogU291cmNlL2NtRFNXV3JpdGVyLmN4eDogbWFrZSBzdXJlIGN1c3RvbSB0YXJnZXRzIGFyZSBpbiB0aGUKCSAgQUxMX0JVSUxECgoyMDAxLTExLTA4IDE0OjM0ICBiYXJyZQoKCSogU291cmNlL2NtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4OiBGaXggbnVtYmVyIG9mIHBhcmFtcyBhbmQKCSAgZXhwYW5kIHZhcnMgaW4gYWxsIGFyZ3MKCjIwMDEtMTEtMDggMTE6NTAgIGJhcnJlCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBGaXggYnVnLiBXYXMgdXNpbmcgdW5leHBhbmRlZAoJICB2YXIgaW5zdGVhZCBvZiBjb3B5CgoyMDAxLTExLTA4IDExOjQwICBiYXJyZQoKCSogU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuY3h4OiBCcmVhayB0aGUgInRvIGluZmluaXR5IGFuZAoJICBiZXlvbmQiIHN0dWZmCgoyMDAxLTExLTA4IDEwOjQ4ICBiYXJyZQoKCSogU291cmNlL2NtQWRkTGlicmFyeUNvbW1hbmQuY3h4OiBFeHBhbmQgdmFyIGluIHNyY2xpc3QgbmFtZSB0b28KCjIwMDEtMTEtMDggMTA6NDAgIGJhcnJlCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBFeHBhbmQgdmFyIGluIG5hbWUgdG9vCgoyMDAxLTExLTA4IDA5OjE2ICBiYXJyZQoKCSogU291cmNlL2NtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHg6IEV4cGFuZCB2YXJpYWJsZXMgaW4gYWxsCgkgIHRhcmdldCBhcmdzCgoyMDAxLTExLTA4IDA4OjQyICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBOZWVkZWQgdG8gcmVwbGFjZSBzcmNkaXIgdG8KCSAgbWFrZSBpbnN0YWxsIHRhcmdldHMgd29yay4KCjIwMDEtMTEtMDcgMTc6MTIgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBwdXQgYmFjawoJICBDTUFLRV9URU1QTEFURV9GTEFHUwoKMjAwMS0xMS0wNyAxNzowNCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBubyArPSsKCjIwMDEtMTEtMDcgMTY6NDcgIGFuZHkKCgkqIFNvdXJjZS86IGNtQWRkQ3VzdG9tQ29tbWFuZENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbUNvbW1hbmRDb21tYW5kLmgsIGNtQ29tbWFuZHMuY3h4OiBBZGRlZCBhY2Nlc3NvciBmb3IKCSAgYWRkIGN1c3RvbSBjb21tYW5kCgoyMDAxLTExLTA3IDE2OjA3ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVW5peENvbW1hbmRzLmNtYWtlOiBBZGQgY3AgKENQKQoKMjAwMS0xMS0wNyAxNTo1NyAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUsIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IHJlbW92ZSB0ZW1wbGF0ZQoJICBmbGFncyBmcm9tIGNtYWtlLCBubyBwdHVzZWQsIG9yIC1pbnN0YW5jZT1zdGF0aWMKCjIwMDEtMTEtMDcgMTU6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNTdGFuZGFyZEluY2x1ZGVzLmg6IFRyeWluZyB0byBmaXgKCSAgY3Vyc2VzIHByb2JsZW1zIHdpdGggc29tZSBzeXN0ZW1zLgoKMjAwMS0xMS0wNyAxNTowMSAgYmVyawoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogVHJ5aW5nIHRvIGZpeAoJICBidWlsZCBwcm9ibGVtcyByZWxhdGVkIHRvIGN1cnNlcy4KCjIwMDEtMTEtMDcgMTQ6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogdXNlIGZ1bGwgc291cmNlIG5hbWUgZm9yCgkgIGMgY29kZSBhcyB3ZWxsIGFzIGMrKwoKMjAwMS0xMS0wNyAxNDo0NCAgaG9mZm1hbgoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9jY3Vyc2VzLmN4eDogdXNlIGNtYWtlIGFzIHRoZSBleGVjdXRhYmxlIGZvcgoJICBjbWFrZSBhbmQgbm90IGNjdXJzZXMKCjIwMDEtMTEtMDcgMTQ6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IG1ha2Ugc3VyZSBkZWZhdWx0X3RhcmdldCBpcwoJICBmaXJzdAoKMjAwMS0xMS0wNyAxMzo0NiAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGFuc2kgZmxhZyBmb3IgYyBjb21waWxlcgoKMjAwMS0xMS0wNyAxMjoyMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuY3h4OiBBbGxvdyBtdWx0aWxpbmUgbWVzc2FnZXMKCjIwMDEtMTEtMDcgMDk6NTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgQ2xlYW4gdXAgYSBiaXQgbW9yZQoKMjAwMS0xMS0wNyAwOToyOSAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogT25lIG1vcmUgdGltZS4uLiAgY2FzZSBkb2VzIG5vdCBtYXR0ZXIKCSAgb24gY3lnd2luCgoyMDAxLTExLTA2IDE2OjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuaDogRU5IOiBmaXggZG9jIHN0cmluZwoKMjAwMS0xMS0wNiAxNToyOSAgYmV0dGluZ2YKCgkqIFNvdXJjZS86IGNtUVRXcmFwQ1BQQ29tbWFuZC5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogYWRkCgkgIGNsZWFuaW5nIG9mIFFUIGdlbmVyYXRlZCBmaWxlcyB3aGVuIG1ha2UgY2xlYW4gaXMgdXNlZAoKMjAwMS0xMS0wNiAxMjowMyAgaG9mZm1hbgoKCSogU291cmNlL0N1cnNlc0RpYWxvZy86IGNjdXJzZXMuY3h4LCBjbUN1cnNlc01haW5Gb3JtLmN4eCwKCSAgY21DdXJzZXNNYWluRm9ybS5oOiBFTkg6IHRlbGwgY21ha2Ugb2JqZWN0IHdoZXJlIGNtYWtlIGlzCgoyMDAxLTExLTA2IDA5OjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4LCBjbVFUV3JhcENQUENvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBUY2xDb21tYW5kLmN4eDogQlVHOiBDdXN0b21Db21tYW5kIGhhcyB0byB1c2UgZnVsbCBwYXRoCgkgIHRvIFNvdXJjZSBmaWxlIG5vdwoKMjAwMS0xMS0wNiAwODo0MCAgaG9mZm1hbgoKCSogU291cmNlL0N1cnNlc0RpYWxvZy9mb3JtLzogZmxkX3R5cGUuYywgZm9ybS5oOiBSZW1vdmVkIGEgZnVuY3Rpb24KCSAgd2hpY2ggdXNlZCB2YV9zdGFydCAoZGlkIG5vdCBjb21waWxlIG9uIFN1biB3aXRoIGdjYykKCjIwMDEtMTEtMDUgMjI6MTAgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY3Vyc2VzLmN4eCwgY21DdXJzZXNCb29sV2lkZ2V0LmN4eCwKCSAgY21DdXJzZXNMYWJlbFdpZGdldC5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBjbUN1cnNlc01haW5Gb3JtLmgsIGNtQ3Vyc2VzU3RyaW5nV2lkZ2V0LmN4eDogTWFueSBpbXByb3ZlbWVudHMuCgoyMDAxLTExLTA1IDE2OjM4ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IHVzZSBmdWxsIHBhdGhzIGZvcgoJICBvYmplY3QgY29tcGlsZSBydWxlcwoKMjAwMS0xMS0wNSAxNTo1NSAgYmVyawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIEN1cnNlc0RpYWxvZy9jbUN1cnNlc01haW5Gb3JtLmN4eDoKCSAgUmUtZW5hYmxpbmcgY3Vyc2VzIHN1cHBvcnQuCgoyMDAxLTExLTA1IDE1OjM5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGNoYW5nZSB0byB3b3JrIHdpdGgKCSAgbm1ha2UKCjIwMDEtMTEtMDUgMTM6MjIgIGJlcmsKCgkqIE1vZHVsZXMvRmluZEN1cnNlcy5jbWFrZSwgU291cmNlL0N1cnNlc0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc0Zvcm0uaCwKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc0xhYmVsV2lkZ2V0LmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oLAoJICBTb3VyY2UvQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzV2lkZ2V0LmgsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mcm1fZHJpdmVyLmMsCgkgIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS9mcm1fcmVxX25hbWUuYywKCSAgU291cmNlL0N1cnNlc0RpYWxvZy9jbUN1cnNlc1N0YW5kYXJkSW5jbHVkZXMuaDogSFBVWCBzdXBwb3J0LgoKMjAwMS0xMS0wNSAxMjo1NyAgbG9yZW5zZW4KCgkqIFNvdXJjZS9jbUluY2x1ZGVFeHRlcm5hbE1TUHJvamVjdENvbW1hbmQuY3h4OiBFUlI6IF5NJ3MgcmVtb3ZlZC4KCjIwMDEtMTEtMDUgMTE6NTIgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvZm9ybS86IENNYWtlTGlzdHMudHh0LCBSRUFELk1FLCBldGkuaCwKCSAgZmxkX2FyZy5jLCBmbGRfYXR0ci5jLCBmbGRfY3VycmVudC5jLCBmbGRfZGVmLmMsIGZsZF9kdXAuYywKCSAgZmxkX2Z0Y2hvaWNlLmMsIGZsZF9mdGxpbmsuYywgZmxkX2luZm8uYywgZmxkX2p1c3QuYywgZmxkX2xpbmsuYywKCSAgZmxkX21heC5jLCBmbGRfbW92ZS5jLCBmbGRfbmV3ZnR5cC5jLCBmbGRfb3B0cy5jLCBmbGRfcGFkLmMsCgkgIGZsZF9wYWdlLmMsIGZsZF9zdGF0LmMsIGZsZF90eXBlLmMsIGZsZF91c2VyLmMsIGZvcm0uaCwKCSAgZm9ybS5wcml2LmgsIGZybV9jdXJzb3IuYywgZnJtX2RhdGEuYywgZnJtX2RlZi5jLCBmcm1fZHJpdmVyLmMsCgkgIGZybV9ob29rLmMsIGZybV9vcHRzLmMsIGZybV9wYWdlLmMsIGZybV9wb3N0LmMsIGZybV9yZXFfbmFtZS5jLAoJICBmcm1fc2NhbGUuYywgZnJtX3N1Yi5jLCBmcm1fdXNlci5jLCBmcm1fd2luLmMsIGZ0eV9hbG51bS5jLAoJICBmdHlfYWxwaGEuYywgZnR5X2VudW0uYywgZnR5X2ludC5jLCBmdHlfaXB2NC5jLCBmdHlfbnVtLmMsCgkgIGZ0eV9yZWdleC5jLCBsbGliLWxmb3JtLCBtZl9jb21tb24uaCwgbmNfYWxsb2MuaDogQWRkaW5nIGZvcm0KCSAgbGlicmFyeS4KCjIwMDEtMTEtMDUgMTE6NTIgIGJlcmsKCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBDdXJzZXNEaWFsb2cvQ01ha2VMaXN0cy50eHQsCgkgIEN1cnNlc0RpYWxvZy9jbUN1cnNlc0NhY2hlRW50cnlDb21wb3NpdGUuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTGFiZWxXaWRnZXQuaCwKCSAgQ3Vyc2VzRGlhbG9nL2NtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBDdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oLCBDdXJzZXNEaWFsb2cvY21DdXJzZXNXaWRnZXQuaDoKCSAgRml4aW5nIHByb2JsZW1zIG9uIFN1biAobmFtZSBjb2xsdXNpb25zIGJldHdlZW4gU1RMIGFuZCBjdXJzZXMpCgkgIGFuZCBkaXNhYmxpbmcgY3Vyc2VzIHRlbXBvcmFyaWx5LgoKMjAwMS0xMS0wNSAxMDo0MiAgYW5keQoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBGaXggdGhlIElGIElGIHByb2JsZW0KCjIwMDEtMTEtMDUgMDg6MzcgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBjY3Vyc2VzLmN4eCwKCSAgY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmN4eCwgY21DdXJzZXNDYWNoZUVudHJ5Q29tcG9zaXRlLmgsCgkgIGNtQ3Vyc2VzTGFiZWxXaWRnZXQuaCwgY21DdXJzZXNNYWluRm9ybS5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uaCwKCSAgY21DdXJzZXNXaWRnZXQuaDogRVJSOiBUbyBpbmNsdWRlIGNtYWtlIGhlYWRlcnMsIG9uZSBzaG91bGQgdXNlCgkgIC4uLwoKMjAwMS0xMS0wNSAwNTo0MyAgcGNwCgoJKiBTb3VyY2UvOiBjbURTUFdyaXRlci5jeHgsIGNtRFNXV3JpdGVyLmN4eDogc3dpdGNoZWQKCSAgc3RyaW5nOjpjb21wYXJlIHRvIHN0cm5jbXAKCjIwMDEtMTEtMDQgMTg6MTAgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvY21DdXJzZXNNYWluRm9ybS5oOiBOZWVkIHRvIGluY2x1ZGUgc3RhbmRhcmQKCSAgaGVhZGVycy4KCjIwMDEtMTEtMDQgMTg6MDUgIGJlcmsKCgkqIFNvdXJjZS9DdXJzZXNEaWFsb2cvOiBDTWFrZUxpc3RzLnR4dCwgY21DdXJzZXNCb29sV2lkZ2V0LmgsCgkgIGNtQ3Vyc2VzQ2FjaGVFbnRyeUNvbXBvc2l0ZS5oLCBjbUN1cnNlc0R1bW15V2lkZ2V0LmgsCgkgIGNtQ3Vyc2VzRmlsZVBhdGhXaWRnZXQuaCwgY21DdXJzZXNGb3JtLmgsIGNtQ3Vyc2VzTGFiZWxXaWRnZXQuaCwKCSAgY21DdXJzZXNNYWluRm9ybS5oLCBjbUN1cnNlc1BhdGhXaWRnZXQuaCwgY21DdXJzZXNTdHJpbmdXaWRnZXQuaCwKCSAgY21DdXJzZXNXaWRnZXQuaCwgY2N1cnNlcy5jeHgsIGNtQ3Vyc2VzQm9vbFdpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzQ2FjaGVFbnRyeUNvbXBvc2l0ZS5jeHgsIGNtQ3Vyc2VzRHVtbXlXaWRnZXQuY3h4LAoJICBjbUN1cnNlc0ZpbGVQYXRoV2lkZ2V0LmN4eCwgY21DdXJzZXNGb3JtLmN4eCwKCSAgY21DdXJzZXNMYWJlbFdpZGdldC5jeHgsIGNtQ3Vyc2VzTWFpbkZvcm0uY3h4LAoJICBjbUN1cnNlc1BhdGhXaWRnZXQuY3h4LCBjbUN1cnNlc1N0cmluZ1dpZGdldC5jeHgsCgkgIGNtQ3Vyc2VzV2lkZ2V0LmN4eDogQWRkaW5nIGN1cnNlcyBzdXBwb3J0LgoKMjAwMS0xMS0wNCAxODowMCAgYmVyawoKCSogTW9kdWxlcy9GaW5kQ3Vyc2VzLmNtYWtlLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IEFkZGluZyBjdXJzZXMKCSAgc3VwcG9ydC4KCjIwMDEtMTEtMDIgMjI6MzIgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBBZGQKCSAgb3B0aW9uYWwgQkVGT1JFIHBhcmFtIHRvIElOQ0xVREVfRElSRUNUT1JJRVMgc28gdGhhdCBpbmNsdWRlIGRpcnMKCSAgY2FuIGJlIHNwZWNpZmllZCBiZWZvcmUgdGhlIGFjdHVhbCBpbmNsdWRlIGRpcnMKCjIwMDEtMTEtMDIgMTY6NDQgIGJhcnJlCgoJKiBVdGlsaXRpZXMvRG94eWdlbi86IENNYWtlTGlzdHMudHh0LCBkb2NfbWFrZWFsbC5zaC5pbjogVXBkYXRlCgoyMDAxLTExLTAyIDE2OjQzICBiYXJyZQoKCSogTW9kdWxlcy86IERvY3VtZW50YXRpb24uY21ha2UsIERvY3VtZW50YXRpb25WVEsuY21ha2UsCgkgIEZpbmRDeWd3aW4uY21ha2UsIEZpbmRQZXJsLmNtYWtlLCBGaW5kVW5peENvbW1hbmRzLmNtYWtlLAoJICBGaW5kV2dldC5jbWFrZTogTW92ZSB1c3VhbCBVbml4IGNvbW1hbmRzIHRvIEZpbmRVbml4Q29tbWFuZHMsIHVzZQoJICBGaW5nQ3lnd2luIGluIG90aGVyIG1vZHVsZXMKCjIwMDEtMTEtMDIgMTY6MDUgIGJhcnJlCgoJKiBVdGlsaXRpZXMvOiBDTWFrZUxpc3RzLnR4dCwgRG94eWdlbi9DTWFrZUxpc3RzLnR4dCwKCSAgRG94eWdlbi9kb2NfbWFrZWFsbC5zaC5pbiwgRG94eWdlbi9kb3h5ZmlsZS5pbjogRG94eWdlbiBkb2MKCSAgZ2VuZXJhdG9yCgoyMDAxLTExLTAyIDE2OjAxICBiYXJyZQoKCSogQ01ha2VMaXN0cy50eHQ6IERveHlnZW4gZG9jIGdlbmVyYXRvcgoKMjAwMS0xMS0wMiAxNToyNiAgYmxlemVrCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogTW9yZSBFeHBlcmltZW50YWwgdGFyZ2V0cyBmb3IgdW5peAoKMjAwMS0xMS0wMiAxMToxOSAgcGNwCgoJKiBTb3VyY2UvOiBjbURTV1dyaXRlci5jeHgsIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIGNtRFNQV3JpdGVyLmN4eDogYWxsb3cgbW9yZSB0aGFuIG9uZSBleHRlcm5hbCBNUyBwcm9qZWN0CgoyMDAxLTExLTAyIDA5OjE4ICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBPbiB3aW4zMiBwYXRoIGlzIGFsbCBpbiBsb3dlciBjYXNlIG5vdwoKMjAwMS0xMS0wMSAxODozNyAgaG9mZm1hbgoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICBFTkg6IGNsZWFuIHVwIGludGVyZmFjZSBhbmQgY2hhbmdlIGJ1aWxkIGluIGN1cnJlbnQgZGlyZWN0b3J5IHRvCgkgIGJ1aWxkIHRoZSBkZXBlbmQgZmlsZSBmaXJzdAoKMjAwMS0xMS0wMSAxODozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQlVHOiB1c2UgY29sbGFwc2UgZnVsbCBwYXRoIHdoZW4KCSAgdGVzdGluZyBjYWNoZSBkaXJlY3RvcnkKCjIwMDEtMTEtMDEgMTg6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURTUFdyaXRlci5jeHg6IEVOSDogSW50RGlyIHRvIElOVERJUgoKMjAwMS0xMS0wMSAxMzowOSAgYmFycmUKCgkqIFNvdXJjZS86IGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmN4eDoKCSAgRXhwYW5kIHZhcnMgaW4gZXhlIGFuZCBsaWIgbmFtZQoKMjAwMS0xMS0wMSAxMDo0MiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRU5IOiBjbGVhbiB1cCBkcml2ZSBsZXR0ZXIgY2hlY2sKCjIwMDEtMTAtMzEgMTg6NTYgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQ2FibGVDbGFzc1NldC5oOiBFTkg6IEFkZGVkCgkgIGF1dG9tYXRpYyBkZXRlY3Rpb24gb2YgPj4gc2VxdWVuY2VzIGluIHRlbXBsYXRlIG5hbWVzIGFuZAoJICByZXBsYWNlbWVudCB3aXRoICI+ID4iIGluIHRoZSBvdXRwdXQuCgoyMDAxLTEwLTMxIDE4OjU2ICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVOSDogUmVwbGFjZWQgY21TdGRTdHJpbmcKCSAgaW1wbGVtZW50YXRpb24gdG8gbWFrZSBpdCBtb3JlIHRyYW5zcGFyZW50bHkgYSBzdGQ6c3RyaW5nLgoKMjAwMS0xMC0zMSAwNzowMyAgcGNwCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21EU1BXcml0ZXIuY3h4LCBjbURTV1dyaXRlci5jeHgsCgkgIGNtRFNXV3JpdGVyLmgsIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZUV4dGVybmFsTVNQcm9qZWN0Q29tbWFuZC5oOiBJTkNMVURFX0VYVEVSTkFMX01TUFJPSkVDVAoJICBjb21tYW5kCgoyMDAxLTEwLTMwIDE4OjMyICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogRkxUS1Byb3BlcnR5SXRlbVJvdy5jeHgsCgkgIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuaDogRklYOiBSZXZlcnRlZCB0byB1c2UKCSAgRmlsbENhY2hlTWFuYWdlckZyb21HVUkoKS4KCjIwMDEtMTAtMzAgMTQ6MzYgIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEZpeCB0aGUgcHJvYmxlbSBvbiB3aW5kb3dzIG9mIGNhcGl0YWwKCSAgb3IgbG93ZXIgY2FzZSBkcml2ZSBsZXR0ZXIgZm9yIENNQUtFX0NBQ0hFRklMRV9ESVIKCjIwMDEtMTAtMzAgMTQ6MTUgIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IENoYW5nZSBDTUFLRV9DVVJSRU5UX0NXRCB0bwoJICBDTUFLRV9DQUNIRUZJTEVfRElSIGFuZCBjaGFuZ2UgdGhlIG1lc3NhZ2VzCgoyMDAxLTEwLTMwIDE0OjA1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBFTkg6IGFkZCBhbiBvcHRpb24gdG8gY29uZmlndXJlCgkgIGZpbGUgY29tbWFuZCB0aGF0IGFsbG93cyBmb3Igb25seSBleHBhbnNpb24gb2YgYXQgdmFyaWFibGVzIGFuZAoJICBub3QgZG9sbGFyIHZhcmlhYmxlcwoKMjAwMS0xMC0zMCAwNDozMyAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4OiBGSVg6IEluIG9yZGVyCgkgIHRvIGRpc2FibGUgYSBidXR0b24gaW4gZmxfY2hvaWNlLCBhIDAgcG9pbnRlciBtdXN0IGJlIHNlbnQKCSAgaW5zdGVhZCBvZiAgIiIuCgoyMDAxLTEwLTI5IDIxOjIyICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogRkxUS1Byb3BlcnR5SXRlbVJvdy5jeHgsCgkgIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuaDogRU5IOiBGaWxsQ2FjaGVNYW5hZ2VyRnJvbUdVSSgpIHdhcwoJICByZXBsYWNlZCBieSBTYXZlRnJvbUNhY2hlR1VJKCkgdG8JIGVuc3VyZSB0aGF0IGNoYW5nZXMgb24gdGhlCgkgIEdVSSBhcmUgZGlyZWN0bHkgdXBkYXRlIGluIHRoZSBjb25maWcgICAgICBmaWxlLgoKMjAwMS0xMC0yOSAyMToyMCAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4OiBFTkg6IGZsX2FzawoJICByZXBsYWNlZCBieSBmbF9jaG9pY2UgaW4gRkxUS0NhbGxiYWNrLgoKMjAwMS0xMC0yOSAxMDo0MSAgaG9mZm1hbgoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsCgkgIEZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IHVzZSBjYWxsYmFjayBub3QgaWZkZWYgZm9yCgkgIE1GQyBtZXNzYWdlIGJveCBlcnJvcnMKCjIwMDEtMTAtMjkgMTA6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaCwKCSAgRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4OiBFTkg6IGFkZCBjYWxsYmFjayBmb3IKCSAgbWVzc2FnZSBkaXNwbGF5CgoyMDAxLTEwLTI4IDE4OjUyICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIENNYWtlU2V0dXBHVUkuZmw6IEVOSDoKCSAgQnV0dG9uIHdlcmUgcmVuYW1lZCA6ICJDb25maWd1cmUiLCAiT0siIGFuZCAiQ2FuY2VsIiBhcyB0aGUgTUZDCgkgIHZlcnNpb24uCgoyMDAxLTEwLTI3IDIzOjQ3ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIENNYWtlU2V0dXBHVUkuZmwsCgkgIENNYWtlU2V0dXBHVUkuaCwgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmgsIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4LAoJICBGTFRLUHJvcGVydHlMaXN0LmN4eCwgRkxUS1Byb3BlcnR5TGlzdC5oOiBFTkg6IFVwZGF0ZWQgd2l0aAoJICByZXNwZWN0IHRvIE1GQyBDTWFrZVNldHVwLiBOZXcgY2FjaGUgZW50cmllcyBhcmUgbm93CSAgICBjb2xvcmVkCgkgIGluIHJlZC4gVGhlIGJyb3dzZXJzIGZvciByZWNlbnQgZGlyZWN0b3JpZXMgb25seSBwb3B1cCBpZgoJICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgaW4gdGhlIGxpc3QuCgoyMDAxLTEwLTI2IDE4OjIxICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRJVEsuY21ha2U6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMTAtMjYgMTc6MDYgIGJlcmsKCgkqIFRlbXBsYXRlcy86IENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjoKCSAgYWRkZWQgQ01BS0VfTk9fRVhQTElDSVRfVEVNUExBVEVfSU5TVEFOVElBVElPTgoKMjAwMS0xMC0yNiAxNTo0MiAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db25maWd1cmVGaWxlQ29tbWFuZC5jeHgsIGNtTWFrZWZpbGUuaCwgY21ha2V0ZXN0LmN4eDoKCSAgYWRkIGRlcGVuZGVuY3kgZm9yIGNvbmZpZ3VyZSBmaWxlcyBhbmQgdXNlIHNob3J0IHBhdGggaW4gV0lOMzIKCSAgY21ha2UgdGVzdAoKMjAwMS0xMC0yNiAxNDozNSAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiB1c2UgZmluZF9maWxlIGFuZCBub3QganVzdCBhIHNldCBmb3IKCSAgVVNFX1ZUS19GSUxFCgoyMDAxLTEwLTI2IDExOjIyICBiYXJyZQoKCSogTW9kdWxlcy9Eb2N1bWVudGF0aW9uVlRLLmNtYWtlOiBWVEsgZG9jdW1lbnRhdGlvbiBmcmFtZXdvcmsKCjIwMDEtMTAtMjYgMDk6MjkgIGFuZHkKCgkqIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHg6IEFkZGVkIGNoZWNrIGlmIHRoZSBiaW5hcnkgZGlyZWN0b3J5CgkgIGNoYW5nZWQuIElmIGl0IGRpZCwgaXQgd2lsbCBwcmludCB0aGUgd2FybmluZyBtZXNzYWdlCgoyMDAxLTEwLTI0IDIwOjM3ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kQ3lnd2luLmNtYWtlOiBBZGQgR1pJUCAoZ3ppcCkKCjIwMDEtMTAtMjQgMjA6MzMgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRDeWd3aW4uY21ha2U6IEFkZCBUQVIgKHBhdGggdG8gdGFyIG9yIGd0YXIpCgoyMDAxLTEwLTI0IDE3OjUxICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGFsbG93IC1mcmFtZXdvcmsgYXMgYQoJICBjb21wbGV0ZSBlbnRyeSBpbiB0aGUgbGluayBsaW5lIGZvciBNYWMgT1NYCgoyMDAxLTEwLTI0IDE1OjUxICBiZXJrCgoJKiBEYXJ0Q29uZmlnLmNtYWtlOiBwdWJsaWMgbm8gbG9uZ2VyIGhhcyBhbm9ueW1vdXMgZnRwLgoKMjAwMS0xMC0yNCAwOTo0MSAga2luZwoKCSogTW9kdWxlcy9GaW5kR0NDWE1MLmNtYWtlOiBFTkg6IEltcHJvdmVkIEZJTkRfUFJPR1JBTSBjYWxsIHRvIGZpbmQKCSAgdGhlIGV4ZWN1dGFibGUgaW4gUFJFRklYL3NoYXJlL0dDQ19YTUwsIHRoZSBuZXcgc3RhbmRhcmQgaW5zdGFsbAoJICBsb2NhdGlvbi4KCjIwMDEtMTAtMjMgMTg6MzAgIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRDeWd3aW4uY21ha2U6IEN5Z3dpbiBtb2QKCjIwMDEtMTAtMjMgMTc6NDkgIGJhcnJlCgoJKiBTb3VyY2UvOiBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmg6IFRoZSByZXN1bHQgb2YgdGhpcyB1dGlsaXR5CgkgIGNvbW1hbmQgY2FuIG5vdyBiZSBvcHRpb25hbGx5IGFkZGVkIHRvIHRoZSBjYWNoZQoKMjAwMS0xMC0yMyAxNzo0NyAgYmFycmUKCgkqIE1vZHVsZXMvRmluZERveHlnZW4uY21ha2U6IEZpbmQgR3JhcGhpdnoncyBkb3QgdG9vCgoyMDAxLTEwLTIzIDE3OjA2ICBiYXJyZQoKCSogTW9kdWxlcy86IEZpbmREb3h5Z2VuLmNtYWtlLCBGaW5kV2dldC5jbWFrZTogQWRkIERveHlnZW4gYW5kIFdnZXQKCSAgbW9kdWxlcy4gVmVyeSBzaW1wbGUuIEJ1dCBtaWdodCBiZSBtb3JlIGNvbXBsZXggbGF0ZXIsIHNvIGxldCdzCgkgIHVzZSB0aGVtIGFzYXAKCjIwMDEtMTAtMjMgMTY6NTUgIGJhcnJlCgoJKiBNb2R1bGVzLzogRmluZEhoYy5jbWFrZSwgRmluZFBlcmwuY21ha2U6IE1vZHVsZXMgdG8gZmluZCBQZXJsIGFuZAoJICB0aGUgSFRNTCBIZWxwIENvbXBpbGVyCgoyMDAxLTEwLTE5IDEwOjA3ICBiYXJyZQoKCSogU291cmNlL2NtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaDogQWRkIHdhcm5pbmcgcmVnYXJkaW5nIHRoZQoJICBsb2NhdGlvbiBvZiBFTkFCTEVfVEVTVElORyAoc2hvdWxkIGJlIGluIHRoZSB0b3AgQ01ha2VMaXN0LnR4dCwKCSAgb3RoZXJ3aXNlIERhcnQgaXMgbG9zdCkKCjIwMDEtMTAtMTggMTg6MDEgIGJhcnJlCgoJKiBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4OiBTSVRFX05BTUUgc2hvdWxkIHJldHVybiB0aGUgbW9zdAoJICBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgaG9zdC4gSWYgbnNsb29rdXAgd29ya3MsIG5vdyB0aGUgZG9tYWluIGlzCgkgIGFwcGVuZGVkIHRvIHRoZSBob3N0bmFtZSAod2hlcmVhcyBpdCAqcmVwbGFjZWQqIHRoZSBob3N0IG5hbWUKCSAgYmVmb3JlKQoKMjAwMS0xMC0xOCAxMzo1MSAgaXNjb3R0CgoJKiBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eDogRGV0ZWN0IGVycm9yIGFuZCBvdXRwdXQgdXNlZnVsCgkgIG1lc3NhZ2UgUHJldmlvdXNseSBpdCB3b3VsZCBoYXZlIGdvdCBjb25mdXNlZCBhYm91dCB0aGUKCSAgZGVzdGluYXRpb25Tb3VyY2VHcm91cAoKMjAwMS0xMC0xOCAxMzowMyAgaXNjb3R0CgoJKiBTb3VyY2UvY21GaW5kRmlsZUNvbW1hbmQuY3h4OiBUaGlzIGNvbW1hbmQgc2hvdWxkIGFsd2F5cyBzZXQgdGhlCgkgIGNhaGNlIHZhcmlhYmVsIHRvIGEgZmlsZXBhdGggbm90IGEgcGF0aAoKMjAwMS0xMC0xNyAxNToxMSAgYmFycmUKCgkqIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmN4eDogQWRkIFBST0pFQ1RfTkFNRSB0byB0aGUgc2V0IG9mCgkgIGRlZmluaXRpb25zCgoyMDAxLTEwLTE2IDE1OjQwICBpc2NvdHQKCgkqIE1vZHVsZXMvRmluZFF0LmNtYWtlOiBmaXhlZCBzb21lIHN0dXBpZCBtaXN0YWtlcyBJIHRob3VnaHQgSSBoYWQKCSAgdGVzdGVkIHRoZXNlIC0gaG9uZXN0CgoyMDAxLTEwLTE2IDE1OjMyICBpc2NvdHQKCgkqIE1vZHVsZXMvOiBGaW5kUXQuY21ha2UsIExpbmtRVC5jbWFrZTogU29tZSBzaW1wbGUgbW9kdWxlcyBmb3IKCSAgZmluZGluZyBhbmQgbGlua2luZyBxdAoKMjAwMS0xMC0xNSAxODozNyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuY3h4OiBFTkg6IGV4cGFuZCB2YXJpYWJsZXMgaW4gbWVzc2FnZQoJICBjb21tYW5kIG91dHB1dAoKMjAwMS0xMC0xNSAxODozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtU291cmNlRmlsZS5jeHg6IEVOSDogY2xlYW4gdXAgZXJyb3IgcmVwb3J0IGZvciBzb3VyY2UKCSAgZmlsZXMgbm90IGZvdW5kCgoyMDAxLTEwLTE1IDE0OjE5ICBpc2NvdHQKCgkqIENNYWtlLnJ0ZiwgU291cmNlL2NtQ29tbWFuZHMuY3h4LCBTb3VyY2UvY21RVFdyYXBDUFBDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtUVRXcmFwQ1BQQ29tbWFuZC5oOiBhZGRlZCBhIFFUX1dSQVBfQ1BQIGNvbW1hbmQKCjIwMDEtMTAtMTEgMTc6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IEltcHJvdmVkIHBhcnNpbmcgb2YKCSAgR0NDWE1MX0ZMQUdTIHRvIGltcHJvdmUgZ2VuZXJhdGlvbiBvZiBnY2N4bWwgcnVsZS4gIEFsc28gYWRkZWQKCSAgQUREX0RFRklOSVRJT05TIGFyZ3VtZW50cyB0byB0aGUgZ2VuZXJhdGVkIHJ1bGUuCgoyMDAxLTEwLTExIDE0OjU3ICBhbmR5CgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBBZGRlZCByZW1vdmluZyBvZiBzcGFjZXMgaW4KCSAgQ01ha2VDYWNoZS50eHQgaW4gZnJvbnQgb2YgY29tbWVudHMgYW5kIHZhcmlhYmxlcwoKMjAwMS0xMC0xMCAxMDoyMiAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRU5IOiBhZGQgYSB3YXJuaW5nIGNvbW1lbnQgZm9yIGNhY2hlCgkgIHZhbHVlcyB0aGF0IGNhbiBub3QgYmUgY2hhbmdlZCBiZWNhdXNlIHRoZXkgYXJlIGFsd2F5cyBsb2FkZWQKCSAgZnJvbSBhbm90aGVyIGNhY2hlCgoyMDAxLTEwLTA5IDIyOjE4ICBiaWRkaQoKCSogU291cmNlL2NtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmNwcDogRklYOiBTYW1lIGFzIGxhc3QgY2hlY2tpbgoJICBleGNlcHQgYXBwbGllcyB0byBicGkgZmlsZXMgYXMgd2VsbGFzIGxpYiBmaWxlcyBJZiB3ZSBjYW4ndCBmaW5kCgkgIGl0IC0gYW5kIGl0J3Mgbm90IGEgdGFyZ2V0IC0gYW5kIGl0IGhhcyBubyBwYXRoIGFscmVhZHkKCSAgc3BlY2lmaWVkLCBpdCBtdXN0IGJlIGluIE9VVERJUkxJQiBmcm9tIGFub3RoZXIgbWFrZWZpbGUgaW4gdGhlCgkgIHNhbWUgcHJvamVjdCAhIChXaGF0IHRoaXMgcmVhbGx5IG1lYW5zIGlzIHRoZSBsaWIgcGF0aHMgYXJlCgkgIGNvcnJlY3RseSBzcGVjaWZpZWQpCgoyMDAxLTEwLTA5IDEwOjI1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogYmV0dGVyIGZpeCBmb3IgZG9zIHJldHVybiBpbgoJICBsaW5lcywgdXNlIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gYW5kIGRvbid0IGVkaXQgdGhlIGlucHV0IGxpbmUKCjIwMDEtMTAtMDUgMTc6MzEgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBjbGVhbiB1cCByZXR1cm5zIGZyb20gaW5wdXQsIHNvIHdlCgkgIGNhbiByZWFkIGRvcyBmaWxlcyBvbiB1bml4CgoyMDAxLTEwLTA0IDA5OjMyICBzdGFycmV2ZWxkCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjoKCgkgIEVSUjogcmVtb3ZlIHVuZGVmaW5lZCB3YXJuaW5nIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbmV3IDEwLjEKCSAgbGlua2VyCgoyMDAxLTEwLTAzIDE1OjQ5ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0RhcnQuY21ha2UsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtYWtlLmN4eCwKCSAgU291cmNlL2NtYWtldGVzdC5jeHg6IEVOSDogZml4ZXMgZm9yIGJvcmxhbmQgY29tcGlsZXIgdGVzdGluZwoKMjAwMS0xMC0wMyAxMTozNiAga2luZwoKCSogTW9kdWxlcy9GaW5kQ0FCTEUuY21ha2U6IEVOSDogQ2hhbmdlZCBDQUJMRV9CVUlMRF9ESVIgdG8gbG9vayBmb3IKCSAgY2FibGVWZXJzaW9uLmggaW5zdGVhZCBvZiBjYWJsZS5SRUFETUUudHh0LgoKMjAwMS0xMC0wMiAyMzoxMCAgYmlkZGkKCgkqIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jcHA6IEZJWDppZiB3ZSBjYW4ndCBmaW5kIGl0IC0KCSAgYW5kIGl0J3Mgbm90IGEgdGFyZ2V0IC0gYW5kIGl0IGhhcyBubyBwYXRoIGFscmVhZHkgc3BlY2lmaWVkLCBpdAoJICBtdXN0IGJlIGluIE9VVERJUkxJQiBmcm9tIGFub3RoZXIgbWFrZWZpbGUgaW4gdGhlIHNhbWUgcHJvamVjdCAhCgkgIChXaGF0IHRoaXMgcmVhbGx5IG1lYW5zIGlzIHRoZSBsaWIgcGF0aHMgYXJlIGNvcnJlY3RseSBzcGVjaWZpZWQpCgoyMDAxLTEwLTAyIDE3OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUxpc3RGaWxlQ2FjaGUuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaCwgY3Rlc3QuY3h4OiBFTkg6IGFkZCBiZXR0ZXIgZXJyb3IgcmVwb3J0cyBpbgoJICBwYXJzaW5nIGNtYWtlIGZpbGVzLCBsaWtlIHdoYXQgZmlsZSBoYXMgdGhlIGVycm9yCgoyMDAxLTEwLTAxIDEzOjM1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmg6IHZlcnNpb24KCjIwMDEtMTAtMDEgMTM6MjYgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMTAtMDEgMTE6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBCVUc6IGFkZCBtaXNzaW5nIGluY2x1ZGUKCjIwMDEtMTAtMDEgMTA6MTQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtYWtldGVzdC5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOgoJICBjaGFuZ2UgY2hlY2tib3hlcyBiYWNrIHRvIHB1bGwgZG93biBtZW51cywgcmVtb3ZlIGxlYWsKCjIwMDEtMDktMjkgMTE6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggZnVsbCBwYXRoIGZvciBmaWxlIGluIGN1cnJlbnQKCSAgZGlyZWN0b3J5CgoyMDAxLTA5LTI4IDEzOjM1ICBiZXJrCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogZml4IHJlYWxwYXRoIHByb2JsZW0gYWdhaW4uLi4KCjIwMDEtMDktMjggMTI6MTQgIGJlcmsKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBzZXBhcmF0ZSBwYXRoIGZyb20gZmlsZSBuYW1lCgkgIGJlZm9yZSBjYWxsaW5nIHJlYWxwYXRoCgoyMDAxLTA5LTI4IDEwOjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGdldAoJICBjb3JyZWN0IGxpYnJhcnkgbmFtZQoKMjAwMS0wOS0yOCAxMDozNCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQ6IEJVRzogb3B0aW9uYWwgaW4gd3Jvbmcgb3JkZXIKCjIwMDEtMDktMjggMDk6NTcgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBtYWtlIHRoZSBpbmNsdWRlIG9mIHRoZSBpbml0aWFsIGNvbmZpZyBmbGFncwoJICBvcHRpb25hbCwgZm9yIGJ1aWxkcyB0aGF0IGRvIG5vdCB1c2UgY29uZmlndXJlCgoyMDAxLTA5LTI3IDE2OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IHVzZQoJICByZWFscGF0aCBpbnN0ZWFkIG9mIGNkL3B3ZAoKMjAwMS0wOS0yNyAxNTo1NCAgaG9mZm1hbgoKCSogQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogQlVHOiBmaXggaW5zdGFsbCBwcmVmaXgKCjIwMDEtMDktMjcgMTQ6NTggIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9Jbml0aWFsQ29uZmlndXJlRmxhZ3MuY21ha2UuaW46IEVOSDogcGFzcyBwcmVmaXggZnJvbQoJICBjb25maWd1cmUgaW50byBjbWFrZQoKMjAwMS0wOS0yNiAxNjoyMyAgYmVyawoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBUeXBvLgoKMjAwMS0wOS0yNSAxNDozOSAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kVlRLLmNtYWtlOiBjaGFuZ2VzIHRvIGNoYW1naGUKCjIwMDEtMDktMjUgMTQ6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IGltcHJvdmVkIHJlZ2lzdHJ5IGhhbmRsaW5nCgoyMDAxLTA5LTI1IDExOjA2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IG1lbW9yeSBsZWFrCgoyMDAxLTA5LTIxIDExOjQ4ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRWVEsuY21ha2U6IGJldHRlciBpbnN0YWxsIHRhcmdldHMKCjIwMDEtMDktMjEgMDk6NDAgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBDb3B5RmlsZSBzaG91bGQgcmV0dXJuIGltbWVkaWF0ZWx5CgkgIGFmdGVyIGFuIGVycm9yIG9jY3Vycy4KCjIwMDEtMDktMjAgMTc6MzEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogdXBkYXRlcwoKMjAwMS0wOS0yMCAxNjo0MyAgYmVyawoKCSogU291cmNlL2N0ZXN0LmN4eDogaGFuZGxlIHNwYWNlcyBpbiBjb21tYW5kcyBhbmQgYXJncwoKMjAwMS0wOS0yMCAxNToyOSAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3BwLCBQcm9wZXJ0eUxpc3QuY3BwLAoJICBQcm9wZXJ0eUxpc3QuaDogRU5IOiBjaGVjayBmb3IgdmFsdWVzIHRoYXQgc3dpdGNoIHRvIGludGVybmFsLAoJICBjYW4gaGFwcGVuIHdpdGggYSBsb2FkIGNhY2hlIGNvbW1hbmQKCjIwMDEtMDktMjAgMTU6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuY3h4LCBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmgsCgkgIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5jeHgsIGNtQWRkQ3VzdG9tVGFyZ2V0Q29tbWFuZC5oLAoJICBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5jeHgsIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHgsIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oLAoJICBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLAoJICBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwgY21BZGRMaWJyYXJ5Q29tbWFuZC5oLAoJICBjbUFkZFRlc3RDb21tYW5kLmN4eCwgY21BZGRUZXN0Q29tbWFuZC5oLAoJICBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgY21CdWlsZENvbW1hbmQuY3h4LCBjbUJ1aWxkQ29tbWFuZC5oLCBjbUJ1aWxkTmFtZUNvbW1hbmQuY3h4LAoJICBjbUJ1aWxkTmFtZUNvbW1hbmQuaCwgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbGFzc1NldENvbW1hbmQuaCwgY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21DYWJsZVdyYXBUY2xDb21tYW5kLmgsIGNtQ29tbWFuZC5oLCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLCBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuY3h4LAoJICBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuaCwgY21FbHNlQ29tbWFuZC5jeHgsIGNtRWxzZUNvbW1hbmQuaCwKCSAgY21FbmFibGVUZXN0aW5nQ29tbWFuZC5oLCBjbUVuZEZvckVhY2hDb21tYW5kLmN4eCwKCSAgY21FbmRGb3JFYWNoQ29tbWFuZC5oLCBjbUVuZElmQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmgsCgkgIGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwKCSAgY21GaW5kRmlsZUNvbW1hbmQuY3h4LCBjbUZpbmRGaWxlQ29tbWFuZC5oLAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmN4eCwgY21GaW5kUGF0aENvbW1hbmQuaCwKCSAgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUZvckVhY2hDb21tYW5kLmN4eCwgY21Gb3JFYWNoQ29tbWFuZC5oLAoJICBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21JbmNsdWRlQ29tbWFuZC5jeHgsIGNtSW5jbHVkZUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmN4eCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwgY21JbnN0YWxsVGFyZ2V0c0NvbW1hbmQuY3h4LAoJICBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5oLCBjbUxpYnJhcnlDb21tYW5kLmgsCgkgIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5jeHgsIGNtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5oLAoJICBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuaCwKCSAgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtTWFrZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21NZXNzYWdlQ29tbWFuZC5jeHgsCgkgIGNtTWVzc2FnZUNvbW1hbmQuaCwgY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmgsCgkgIGNtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4LCBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuY3h4LCBjbVByb2plY3RDb21tYW5kLmgsIGNtU2V0Q29tbWFuZC5jeHgsCgkgIGNtU2V0Q29tbWFuZC5oLCBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuaCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LCBjbVNvdXJjZUZpbGVzUmVtb3ZlQ29tbWFuZC5oLAoJICBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHgsIGNtU291cmNlR3JvdXBDb21tYW5kLmgsCgkgIGNtU3ViZGlyQ29tbWFuZC5jeHgsIGNtU3ViZGlyQ29tbWFuZC5oLAoJICBjbVN1YmRpckRlcGVuZHNDb21tYW5kLmN4eCwgY21TdWJkaXJEZXBlbmRzQ29tbWFuZC5oLAoJICBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLAoJICBjbVVzZU1hbmdsZWRNZXNhQ29tbWFuZC5jeHgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmgsCgkgIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuaCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuaCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuaCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuaDogRU5IOgoJICBjaGFuZ2UgSW5pdGlhbFBhc3MgdG8gdGFrZSBhIGNvbnN0IHJlZmVyZW5jZSB0byB0aGUgYXJndW1lbnQKCSAgc3RyaW5nLCB0byBhdm9pZCBjaGFuZ2VzIHRvIHRoZSBmaWxlIGNhY2hlCgoyMDAxLTA5LTIwIDEzOjQ0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogbWFrZSBhIGNvcHkgb2YgdGhlIGFyZ3VtZW50cyBiZWZvcmUKCSAgcGFzc2luZyB0aGVtIHRvIEV4ZWN1dGUKCjIwMDEtMDktMjAgMTI6MDAgIG1hcnRpbmsKCgkqIENNYWtlLnJ0ZjogZml4ZWQgc29tZSBwcm9ibGVtcwoKMjAwMS0wOS0yMCAxMDo1NyAga2luZwoKCSogTW9kdWxlcy9GaW5kQ0FCTEUuY21ha2U6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgZmluZGluZyBjYWJsZQoJICB3aGVuIGl0IGlzIGJ1aWx0IGluIGEgY29uZmlndXJhdGlvbiBzdWJkaXJlY3RvcnkgYnkgTVNWQy4KCjIwMDEtMDktMjAgMTA6NTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtRmluZEZpbGVDb21tYW5kLmN4eCwgY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGRlZAoJICBjbVN5c3RlbVRvb2xzOjpHbG9iRGlycyBmdW5jdGlvbiB0byBhbGxvdyB3aWxkY2FyZHMgaW4gcGF0aHMKCSAgKGxpa2UgL2Zvby9iYXIvKikuCgoyMDAxLTA5LTIwIDEwOjUzICBraW5nCgoJKiBTb3VyY2UvY21TZXRDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBleHRyYSBuZXdsaW5lIGluIGFuIGVycm9yCgkgIG1lc3NhZ2UgdG8gaW1wcm92ZSByZWFkYWJpbGl0eS4KCjIwMDEtMDktMjAgMTA6MjcgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZFZUSy5jbWFrZTogbWlub3IgY2hhbmdlcwoKMjAwMS0wOS0yMCAwOToxMSAgbWFydGluawoKCSogTW9kdWxlcy86IEZpbmRWVEsuY21ha2UsIFVzZVZUS0luY2x1ZGVzLmNtYWtlLAoJICBVc2VWVEtMaWJyYXJpZXMuY21ha2U6IHJlbW92ZWQgc29tZSBWVEsgc3R1ZmYKCjIwMDEtMDktMTkgMTQ6NTIgIG1hcnRpbmsKCgkqIE1vZHVsZXMvOiBGaW5kVlRLLmNtYWtlLCBVc2VWVEtJbmNsdWRlcy5jbWFrZSwKCSAgVXNlVlRLTGlicmFyaWVzLmNtYWtlOiB1cGRhdGVkIHRvIGhvdyBGaW5kVlRLIHdvcmtzCgoyMDAxLTA5LTE5IDE0OjIwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiB2ZXJzaW9uIHJldiB0byA5NQoKMjAwMS0wOS0xOSAxNDoyMCAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogdmVyc2lvbiByZXYgdG8gOTQKCjIwMDEtMDktMTggMTA6NDUgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDktMTggMTA6MzggIHdpbGwKCgkqIENNYWtlLnBkZjogRU5IOlVwZGF0ZWQgZG9jdW1lbnRhdGlvbgoKMjAwMS0wOS0xNyAxNzo0MCAgaG9mZm1hbgoKCSogQ01ha2UucnRmOiBFTkg6IHVwZGF0ZSBmb3IgbmV3IHZlcnNpb24KCjIwMDEtMDktMTcgMTY6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuaDoKCSAgRU5IOiBjaGFuZ2UgdG8gdGFrZSBhIHBhdGggYXMgaW5wdXQKCjIwMDEtMDktMTcgMTY6MzQgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUZpbmRGaWxlQ29tbWFuZC5jeHg6IEJVRzogZml4IHJldHVybiB3aGVuIGZpbGUgaXMgbm90CgkgIGZvdW5kCgoyMDAxLTA5LTE3IDE0OjE2ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRDQUJMRS5jbWFrZTogRU5IOiBBZGRlZCBmaW5kIHN1cHBvcnQgZm9yIGxvb2tpbmcgYXQKCSAgQ2FibGUncyBidWlsZCBkaXJlY3RvcnkgaWYgdGhlIHVzZXIgc2V0cyB0aGUgQ0FCTEVfQlVJTERfRElSCgkgIGNhY2hlIGVudHJ5LgoKMjAwMS0wOS0xNyAxMzo1OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtVXNlTWFuZ2xlZE1lc2FDb21tYW5kLmN4eCwKCSAgY21Vc2VNYW5nbGVkTWVzYUNvbW1hbmQuaDogRU5IOiBhZGQgVXNlIG1hbmdsZWQgbWVzYSBjb21tYW5kCgoyMDAxLTA5LTE3IDEyOjA3ICBibGV6ZWsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogRU5IOiBOaWdodGx5Q292ZXJhZ2UgZ290IGxvc3QKCjIwMDEtMDktMTQgMTY6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4OiBub3cgdXNlcyBmaXZlIGFyZ3VtZW50IHZlcnNpb24gb2YKCSAgd3JhcCBjb21tYW5kcwoKMjAwMS0wOS0xNCAxNjoyNiAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtYWtlbWFpbi5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogcmVtb3ZlIG1lbW9yeQoJICBsZWFrcwoKMjAwMS0wOS0xNCAxNToxOCAgaG9mZm1hbgoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eDogZml4IGVycm9yIGluIGN5Z3dpbgoKMjAwMS0wOS0xNCAxNToxOCAgaG9mZm1hbgoKCSogU291cmNlL2NtTGlzdEZpbGVDYWNoZS5oOiBpbml0aWFsaXplIGNsYXNzCgoyMDAxLTA5LTE0IDE1OjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21NYWtlZmlsZUdlbmVyYXRvci5oOiBhZGQKCSAgc3VwcG9ydCBmb3IgY2xlYW4gdXAKCjIwMDEtMDktMTQgMTA6MTQgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy86IERMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBFWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsIFV0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogbWFkZSBEZWJ1ZyB0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9uCgoyMDAxLTA5LTE0IDA4OjM0ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBtb3ZlIGN5Z3RjbHNoODAgdG8gdGhlIGVuZCBvZiBsaXN0LAoJICBvdGhlcndpc2UgaXQgbWlnaHQgYmUgZm91bmQgd2hpbGUgdGhlIG5vbi1jeWd3aW4gd2lzaDh4LmV4ZSB3aWxsCgkgIGJlIGZvdW5kIHRvby4gSWYgd2lzaDh4LmV4ZSBpcyBmb3VuZCwgdGhlbiB0aGUgbm9uLWN5Z3dpbgoJICB0Y2xzaDh4LmV4ZSBtdXN0IGJlIGZvdW5kIHRvby4KCjIwMDEtMDktMTMgMTQ6NDUgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogYWRkZWQgYmFjayBzb21lIHRhcmdldHMgZm9yIFVOSVgKCjIwMDEtMDktMTMgMTE6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuaCwgY21TeXN0ZW1Ub29scy5jeHg6IGFkZGVkIHNob3J0ZXN0IGV4dAoJICBmdW5jdGlvbgoKMjAwMS0wOS0xMiAxNzowOSAgbG9yZW5zZW4KCgkqIFNvdXJjZS9jbVNpdGVOYW1lQ29tbWFuZC5jeHg6IEVOSDogZHJvcCB0aGUgY2FzZSBvZiB0aGUgc2l0ZQoJICBuYW1lLiBUaGlzIG1ha2VzIGl0IGNvbnNpc3RlbnQgd2l0aCBEYXJ0J3MgdXNhZ2UuCgoyMDAxLTA5LTEyIDE3OjA5ICBsb3JlbnNlbgoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBBZGRlZCBMb3dlckNhc2UKCSAgbWV0aG9kLgoKMjAwMS0wOS0xMiAxNToxOCAga2luZwoKCSogU291cmNlLzogY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwgY21DYWJsZVdyYXBUY2xDb21tYW5kLmg6IEVOSDoKCSAgQWRkZWQgcGFyc2luZyBvZiBnY2N4bWwgZmxhZ3MgaW50byBzZXBhcmF0ZSBhcmd1bWVudHMgZm9yIHNldHRpbmcKCSAgdGhlIGN1c3RvbSBjb21tYW5kLiAgVGhpcyBpcyBuZWNlc3Nhcnkgc2luY2UgdGhlIGN1c3RvbSBjb21tYW5kCgkgIG5vdyB0YWtlcyBhIHZlY3RvciBvZiBpbmRpdmlkdWFsIGNvbW1hbmQgbGluZSBvcHRpb25zIGluc3RlYWQgb2YKCSAgYSBzaW5nbGUgc3RyaW5nLgoKMjAwMS0wOS0xMSAyMTo0NiAgYmlkZGkKCgkqIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NCb3JsYW5kQ29uZmlnLmNtYWtlOiBFUlI6IFNwZWxsaW5nCgoyMDAxLTA5LTExIDIxOjQ1ICBiaWRkaQoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwLAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oLCBjbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBDaGFuZ2UgdG8KCSAgRXNjYXBlU3BhY2VzIGZvcmNlcyByZXdvcmsgb2YgQm9ybGFuZCBnZW5lcmF0b3IgPHNpZ2g+IEFkZCBjbGF1c2UKCSAgdG8gcHJldmVudCBhZGRpbmcgcXVvdGVzIHdoZW4gdGhleSdyZSBhbHJlYWR5IHByZXNlbnQsIHRoZW4gc3R1ZmYKCSAgdGhlbSBvbnRvIGFsbCBsaWIgcGF0aHMgdG8gcHJldmVudCBmb3J3YXJkIHNsYXNoZXMgY2F1c2luZwoJICB0cm91YmxlLgoKMjAwMS0wOS0xMSAyMDowMCAgYmlkZGkKCgkqIFNvdXJjZS86IGNtQm9ybGFuZE1ha2VmaWxlR2VuZXJhdG9yLmNwcCwKCSAgY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaDogRU5IOiBNYWpvciBmaXggb2YgdGhlIEJvcmxhbmQKCSAgZ2VuZXJhdG9yIHdoaWNoIGFkZHJlc3NlcyB0aGUgcHJvYmxlbSBvZiBsaWJyYXJpZXMgd2l0aAoJICBkZXBlbmRlbmNpZXMgKG90aGVyIGxpYnJhcmllcykgbm90IGxpbmtpbmcgd2hlbiByZXF1aXJlZC4KCSAgRGVwZW5kZW5jeSBjaGVja2luZyByZXF1aXJlZCB0aGUgZnVsbCBwYXRoIHRvIGJlIHN1cHBsaWVkIHRvIGVhY2gKCSAgZmlsZSB3aGVuIHRoZXkncmUgbm90IGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAodmVyeSB0ZWRpb3VzKS4KCSAgQWxsIHNlZW1zIHRvIGJlIHdvcmtpbmcgbmljZWx5IG5vdy4KCjIwMDEtMDktMTEgMTk6NTggIGJpZGRpCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZCBhIGZpbmRmaWxlCgkgIHJvdXRpbmUgKGFzIG9wcG9zZWQgdG8gZmluZCBleGVjdXRhYmxlIG9yIGxpYnJhcnkpIHdoaWNoIGRvZXNuJ3QKCSAgYWRkIGFueSBleHRlbnNpb25zIC0gQm9ybGFuZCBtYWtlIG5lZWRzIGZ1bGwgcGF0aHMgdG8gY2VydGFpbgoJICBkZXBlbmRlbmNpZXMgb3RoZXJ3aXNlIGxpbmtpbmcgZG9lc24ndCB3b3JrIHByb3Blcmx5CgkgIChkZXBlbmRlbmNpZXMgYXJlbid0IGNoZWNrZWQpCgoyMDAxLTA5LTExIDE1OjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY3Rlc3QuY3h4OiB1cGRhdGVkIHRlc3RpbmcKCjIwMDEtMDktMTEgMTQ6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbURTUFdyaXRlci5jeHg6IGluY2x1ZGUgZml4ZXMKCjIwMDEtMDktMTEgMTQ6NDMgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogcmVkdWNlZCB0aGUgbnVtYmVyIG9mIHRhcmdldHMKCjIwMDEtMDktMTEgMTQ6NDIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBidWcgaW4gdGVzdGluZyBjb2RlCgoyMDAxLTA5LTExIDEzOjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwOiBCVUc6IGZpeCBidWlsZCB3aXRoCgkgIG5vbi1ib3JsYW5kIGNvbXBpbGVyCgoyMDAxLTA5LTExIDEzOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBmaXggZm9yIGluY2x1ZGUgcGF0aHMKCjIwMDEtMDktMTAgMTU6MTEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogcmVkdWNlZCB0YXJnZXRzIGFuZCBtZXJnZWQgdGNsc2ggY29tbWFuZHMKCjIwMDEtMDktMTAgMTU6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiB2YXJpb3VzIHdpbmRvd3MgZml4ZXMKCjIwMDEtMDktMTAgMTE6MDMgIGJlcmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogVHlwbyBpbiBsaW5rIGNvbW1hbmQuCgoyMDAxLTA5LTA4IDEyOjA5ICBiaWRkaQoKCSogU291cmNlLzogY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwLAoJICBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5oOiBFUlI6IEZvcmdvdCB0byBwdXQgYmFjayBhIGJhY2tzbGFzaAoKMjAwMS0wOS0wOCAxMDowMiAgYmlkZGkKCgkqIFNvdXJjZS9jbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jcHA6IEVSUjogTElOS19ESVIgbXVzdCBvdCBoYXZlCgkgIGJhY2tzbGFoIGF0IGVuZC4gRml4IHBsdXMgY2xlYW51cCBvZiBzb21lIGNvZGUuCgoyMDAxLTA5LTA3IDEwOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EaXJlY3RvcnkuY3h4OiBmaXhlZCBidWcgaW4gbWlzbWF0Y2hlZCBkaXJlY3Rvcnkgb3BlbnMKCSAgY29uc3VtaW5nIGZpbGUgZGVzY3JpcHRvcnMKCjIwMDEtMDktMDcgMDk6NDAgIGtpbmcKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuY3h4OiBFTkg6IFJlbW92ZWQgYWRkaXRpb24gb2YKCSAgY29tcGlsZXIgc3VwcG9ydCBkaXJlY3RvcnkgaW5jbHVkZSBvcHRpb24gc2luY2UgdGhlCgkgIGZpbmRfKl9vcHRpb25zIHNjcmlwdHMgbm93IGluY2x1ZGUgaXQgYXV0b21hdGljYWxseS4KCjIwMDEtMDktMDYgMTg6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBjbUJvcmxhbmRNYWtlZmlsZUdlbmVyYXRvci5jcHA6IEJVRzoKCSAgY2xlYW4gdXAgbGliIGFuZCBleGUgb3V0cHV0IHBhdGhzCgoyMDAxLTA5LTA2IDE3OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaWIuZHNwLCBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwLAoJICBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgU291cmNlL2NtTVNQcm9qZWN0R2VuZXJhdG9yLmgsIFNvdXJjZS9jbU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGVHZW5lcmF0b3IuaCwgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9jbWFrZS5oLCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBTb3VyY2UvTUZDRGlhbG9nL3Jlc291cmNlLmgsCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NCb3JsYW5kQ29uZmlnLmNtYWtlOiBFTkg6IGludGVncmF0ZSBib3JsYW5kCgkgIHN1cHBvcnQKCjIwMDEtMDktMDQgMTY6MjkgIGJpZGRpCgoJKiBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuY3BwLAoJICBTb3VyY2UvY21Cb3JsYW5kTWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c0JvcmxhbmRDb25maWcuY21ha2U6IE5FVzogRmlyc3QgY2hlY2sgaW4gb2YKCSAgQm9ybGFuZCBNYWtlZmlsZSBHZW5lcmF0b3IgYW5kIHRlbXBsYXRlIHN0dWZmCgoyMDAxLTA5LTA0IDE2OjA3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LCBjbUN1c3RvbUNvbW1hbmQuY3h4LAoJICBjbUN1c3RvbUNvbW1hbmQuaCwgY21EU1BXcml0ZXIuY3h4LCBjbURTV1dyaXRlci5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtU291cmNlR3JvdXAuY3h4LCBjbVNvdXJjZUdyb3VwLmgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eDogRU5IOiBzZXBhcmF0ZSBjb21tYW5kIGZyb20gaXRzCgkgIGFyZ3VtZW50cyBpbiB0aGUgY3VzdG9tIGNvbW1hbmQuICBUaGlzIGFsbG93cyB0aGUgZ2VuZXJhdG9yIG9uCgkgIHdpbmRvd3MgdG8gY2hhbmdlIHRoZSBzbGFzaGVzIGZvciBqdXN0IHRoZSBjb21tYW5kCgoyMDAxLTA5LTAxIDE3OjEzICBiaWRkaQoKCSogU291cmNlL2NtQnVpbGRDb21tYW5kLmN4eDogRU5IOiBBZGRlZCBhIGNsYXVzZSBmb3IgQm9ybGFuZAoJICBjb21waWxlciBjb21wYXRpYmlsaXR5CgoyMDAxLTA5LTAxIDE2OjU2ICBiYXJyZQoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eDogQ29udmVydCBwYXRoIGZvcm1hdCBiYWNrIHRvIFdpbmRvd3MKCSAgc2xhc2hlcyBzeW50YXguIE1hbmRhdG9yeSBmb3IgV2luOTggYnVpbGQuCgoyMDAxLTA5LTAxIDE2OjU1ICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBmaXggY29tbWVudCBwYgoKMjAwMS0wOS0wMSAxNjoxMyAgYmlkZGkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogV2luZG93cyBhbmQKCSAgVW5peCBzbGFzaCBjb252ZXJzaW9ucyByZXR1cm4gYSBjaGFyKiwgY2xlYW4gZnVuY3Rpb24gc2VwZXJhdGVkCgkgIGZyb20gQ29udmVydCBmdW5jdGlvbgoKMjAwMS0wOS0wMSAxNjoxMiAgYmlkZGkKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEVOSDogRXhwYW5kVmFyaWFibGVzCgkgIGZ1bmN0aW9ucyByZXR1cm4gYSBjaGFyICogZm9yIGNvbnZlbmllbmNlCgoyMDAxLTA4LTMxIDIxOjEwICBzdGFycmV2ZWxkCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OgoKCSAgRU5IOiBHZW5lcmF0ZSBjb21waWxlIGxpbmVzIGZvciAubSwgLk0sIGFuZCAubW0gZmlsZXMgKE9iakMgYW5kCgkgIE9iakMrKykKCjIwMDEtMDgtMzAgMTc6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBmaXggaW5jb3JyZWN0IGRlbGV0aW9uIG9mIGZ1bmN0aW9uCgkgIGJsb2NrZXJzCgoyMDAxLTA4LTMwIDE2OjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmg6IHZlcnNpb24gcmV2CgoyMDAxLTA4LTMwIDE2OjA2ICBob2ZmbWFuCgoJKiBDaGFuZ2VMb2csIENoYW5nZUxvZy50eHQ6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDgtMzAgMTU6NTQgIGhvZmZtYW4KCgkqIENoYW5nZUxvZy50eHQ6IEVOSDogYWRkIGF1dG9nZW5lcmF0ZWQgY2hhbmdlbG9nCgoyMDAxLTA4LTI5IDE3OjIxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBvcHBzCgoyMDAxLTA4LTI5IDE3OjExICBraW5nCgoJKiBTb3VyY2UvY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmN4eDogQlVHOiBHQ0NYTUxfRkxBR1MgZm91bmQgZnJvbQoJICBmaW5kX2djY19vcHRpb25zIG9yIGZpbmRfbXByb19vcHRpb25zIHNob3VsZCBoYXZlIHRoZSB0cmFpbGluZwoJICBuZXdsaW5lIHN0cmlwcGVkIGZyb20gdGhlIHN0cmluZy4KCjIwMDEtMDgtMjkgMTc6MTAgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IFVwZGF0ZWQgZ2VuZXJhdGVkCgkgIGRlcGVuZGVuY2llcyBzaW5jZSBjYWJsZSdzIGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgbm93IHVzZXMKCSAgc2VwYXJhdGUgQ3h4VHlwZXMgYW5kIFdyYXBUY2xGYWNpbGl0eSBzdWJkaXJlY29yaWVzIGZvciBpbmNsdWRlcy4KCjIwMDEtMDgtMjkgMTc6MDggIGtpbmcKCgkqIE1vZHVsZXMvRmluZENBQkxFLmNtYWtlOiBFTkg6IFVwZGF0ZWQgbGlicmFyeSBmaW5kaW5nIGNvZGUgdG8KCSAgaGFuZGxlIG5ldyBjYWJsZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHN0cnVjdHVyZS4gIEl0IG5vdyB1c2VzCgkgIHNlcGFyYXRlIGRpcmVjdG9yaWVzIGZvciBDeHhUeXBlcyBhbmQgV3JhcFRjbEZhY2lsaXR5IGhlYWRlcnMuCgoyMDAxLTA4LTI5IDE2OjQyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjdGVzdC5jeHgsIGN0ZXN0Lmg6IGFkZGVkIHJlZ2V4cCBvcHRpb24KCjIwMDEtMDgtMjkgMTY6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGliLmRzcCwgRHVtcERvY3VtZW50YXRpb24uZHNwLCBjbWFrZS5kc3AsCgkgIGN0ZXN0LmRzcDogcmVtb3ZlIC9aSQoKMjAwMS0wOC0yOSAxNTo1NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZXRlc3QuY3h4OiBFTkg6IHJ1biBjbWFrZSBmcm9tIGNtYWtldGVzdAoKMjAwMS0wOC0yOSAxMDo0NyAga2luZwoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogRU5IOiBBZGRlZCBhIGNvbnN0IHZlcnNpb24gb2YKCSAgR2V0TGlua0xpYnJhcmllcygpLgoKMjAwMS0wOC0yOSAxMDo0NiAga2luZwoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICBFTkg6IFByb3BlciBkZXBlbmRlbmNpZXMgYmV0d2VlbiBzaGFyZWQgbGlicmFyaWVzIG5vdyBleGlzdCBpbgoJICB0aGUgZ2VuZXJhdGVkIG1ha2VmaWxlcy4gIElmIGEgc2hhcmVkIGxpYnJhcnkgbGlua3MgdG8gYW5vdGhlciwKCSAgdGhlIG90aGVyIHdpbGwgYmUgYnVpbHQgYmVmb3JlIHRoZSBsaW5rIGlzIGF0dGVtcHRlZC4KCjIwMDEtMDgtMjkgMDk6NTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogY2xlYW4gdXAgYSBiaXQKCjIwMDEtMDgtMjkgMDk6NDQgIGJlcmsKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggb3V0IG9mIGJvdW5kcyByZWFkIG9uIHN0cmluZwoJICBpbiBta2RpcgoKMjAwMS0wOC0yOSAwOToyNiAgcGVyZXJhCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IFNwZWNpYWwgdmFsdWUKCSAgSUdOT1JFIGJlaGF2ZXMgbGlrZSBOT1RGT1VORCwgYnV0IG1ha2VzIEZpbmRMaWJyYXJ5LCBldGMsIF9ub3RfCgkgIHNlYXJjaCBmb3IgYSBsaWJyYXJ5LCBldGMuCgoyMDAxLTA4LTI4IDE4OjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21MaXN0RmlsZUNhY2hlLmg6IHJlbW92ZSB3YXJuaW5nCgoyMDAxLTA4LTI4IDE4OjI4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpYi5kc3AsIENNYWtlTGlzdHMudHh0LCBDTWFrZVNldHVwLmRzdywKCSAgTWFrZWZpbGUuaW4sIGNtTGlzdEZpbGVDYWNoZS5jeHgsIGNtTGlzdEZpbGVDYWNoZS5oLAoJICBjbU1ha2VmaWxlLmN4eDogRU5IOiBhZGQgY2FjaGluZyBmb3IgdGhlIGlucHV0IENNYWtlTGlzdC50eHQKCSAgZmlsZXMsIDJYIHNwZWVkIHVwCgoyMDAxLTA4LTI4IDE4OjI3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IHB1dCBzcGFjZXMgaW4gL0kgcGF0aHMKCjIwMDEtMDgtMjggMTg6MDIgIHN0YXJyZXZlbGQKCgkqIFNvdXJjZS86IGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVGFyZ2V0LmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDoKCgkgIENoYW5nZXMgdG8gYWxsb3cgTU9EVUxFIHR5cGUgdGFyZ2V0IGZvciBhIHNoYXJlZCBsaWJyYXJ5CgoyMDAxLTA4LTI4IDE4OjAxICBzdGFycmV2ZWxkCgoJKiBUZW1wbGF0ZXMvOiBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgY29uZmlndXJlLCBjb25maWd1cmUuaW46CgoJICBDaGFuZ2VzIHRvIGFsbG93IGEgTU9EVUxFIHRhcmdldCBmb3IgYSBzaGFyZWQgbGlicmFyeS4KCjIwMDEtMDgtMjggMTY6MDQgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0LCBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogbWlub3IgZml4CgoyMDAxLTA4LTI4IDE0OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURTUFdyaXRlci5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6CgkgIGJldHRlciBuZXR3b3JrIGJ1aWxkIHN1cHBvcnQKCjIwMDEtMDgtMjggMTM6NDkgIHN0YXJyZXZlbGQKCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOgoKCSAgQWRkZWQgc3VwcG9ydCBmb3IgRGFyd2luIChPU1gpCgoyMDAxLTA4LTI4IDEwOjU3ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IEVOSDogc3VwcG9ydCBmb3IgY3lnd2luCgoyMDAxLTA4LTI4IDEwOjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeAoJICBmb3IgYnJva2VuIGFwcGxlIG1rZGlyIGFuZCBnZW5lcmFsIGNsZWFuIHVwIG9mIE1ha2VEaXJlY3RvcnkKCSAgY29tbWFuZAoKMjAwMS0wOC0yNyAxNTo0OCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQlVHOiBmaXggc3dpdGNoIHByb2plY3RzCgkgIG5vdCBzYXZpbmcgY2FjaGUgY29ycmVjdGx5CgoyMDAxLTA4LTI3IDE1OjE5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBzdXBwb3J0IGZvciBuZXR3b3JrIHBhdGggbGluayBsaWJyYXJpZXMKCjIwMDEtMDgtMjcgMTQ6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBjaGFuZ2UgZXhwYW5kIHZhcmlhYmxlcyB0byB1c2UKCSAgR2V0RGVmaW5pdGlvbgoKMjAwMS0wOC0yNyAxNDozOCAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW46IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDgtMjcgMTQ6MzUgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvTWFrZWZpbGUuaW46IEVOSDogY2xlYW4gdXAgc2dpCgkgIGJ1aWxkIGFuZCB1c2Ugbm9uLWJyb2tlbiBhdXRvY29uZgoKMjAwMS0wOC0yNyAxMjoyNCAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvY29uZmlndXJlOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAxLTA4LTI3IDExOjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IHNldCBDWFggYW5kIENDIHdoZW4KCSAgcnVubmluZyBjb25maWd1cmUgZnJvbSBjbWFrZQoKMjAwMS0wOC0yNyAxMDoyMyAgbWFydGluawoKCSogU291cmNlL2N0ZXN0LmN4eDogYmV0dGVyIGZvcm1hdHRlZCBvdXRwdXQKCjIwMDEtMDgtMjcgMTA6MjIgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IHVzZSBBTlNJX0NYWEZMQUdTIGZvcgoJICB0ZXN0aW5nIGNvbXBpbGVyCgoyMDAxLTA4LTI3IDEwOjExICBob2ZmbWFuCgoJKiBDTWFrZUxpc3RzLnR4dCwgVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLAoJICBUZW1wbGF0ZXMvY29uZmlndXJlLCBUZW1wbGF0ZXMvY29uZmlndXJlLmluLAoJICBUZXN0cy9Db21wbGV4L0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4T25lQ29uZmlnL0NNYWtlTGlzdHMudHh0LAoJICBUZXN0cy9Db21wbGV4UmVsYXRpdmVQYXRocy9DTWFrZUxpc3RzLnR4dDogRU5IOiBzZ2kgLUxBTkc6c3RkCgoyMDAxLTA4LTI3IDEwOjA3ICBiZXJrCgoJKiBTb3VyY2UvQ01ha2VTZXR1cC5kc3c6IGtlbiBhZGRlZCBkZXBlbmRhbmN5IHRvIGJ1aWxkIGV2ZXJ5dGhpbmcKCjIwMDEtMDgtMjUgMTI6MzEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlU2V0dXAuZHN3LCBjdGVzdC5kc3A6IGFkZGVkIGN0ZXN0IHRvIHdpbjMyCgoyMDAxLTA4LTI0IDE3OjUwICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogW25vIGxvZyBtZXNzYWdlXQoKMjAwMS0wOC0yNCAxNzozMCAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOgoJICBFTkg6IG1vcmUgc2dpIC1MQU5HIHN0dWZmCgoyMDAxLTA4LTI0IDE3OjI1ICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogYXV0byBkZXRlY3QgbGFuZzpzdGQ6CgoyMDAxLTA4LTI0IDE3OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTWFrZWZpbGUuaW46IEVOSDogYnVpbGQgZm9yIHNnaSBDQyBvdXQgb2YgYm94CgoyMDAxLTA4LTI0IDE3OjEyICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogYXV0byBkZXRlY3QgbGFuZzpzdGQ6CgoyMDAxLTA4LTI0IDE3OjAwICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogYXV0byBkZXRlY3QgbGFuZzpzdGQ6CgoyMDAxLTA4LTI0IDE2OjUxICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogYXV0byBkZXRlY3QgbGFuZzpzdGQ6CgoyMDAxLTA4LTI0IDE1OjU0ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvY21UZXN0Q29uZmlndXJlLmguaW4sCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9jb21wbGV4LmN4eCwKCSAgQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvRXhlY3V0YWJsZS9jb21wbGV4LmN4eDogQlVHOiBmaXggY29tcGxleAoJICB0ZXN0IGZvciBvbGQgY29tcGlsZXJzCgoyMDAxLTA4LTI0IDE1OjQ1ICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbiwgVGVzdHMvQ29tcGxleC9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleE9uZUNvbmZpZy9jbVRlc3RDb25maWd1cmUuaC5pbiwKCSAgVGVzdHMvQ29tcGxleFJlbGF0aXZlUGF0aHMvY21UZXN0Q29uZmlndXJlLmguaW46IEJVRzogZml4IGZvciBTR0kKCSAgTmF0aXZlIGNvbXBpbGVyCgoyMDAxLTA4LTI0IDE1OjQxICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogQlVHOiBmaXggZmxhZyBmb3IgYnVpbGRpbmcKCSAgc2hhcmVkIG9uIEhQCgoyMDAxLTA4LTIzIDE4OjMwICBwZXJlcmEKCgkqIFNvdXJjZS86IGNtQWRkVGVzdENvbW1hbmQuY3h4LCBjbUFkZFRlc3RDb21tYW5kLmg6IEJVRzogQUREX1RFU1QKCSAgbm93IG9ubHkgZG9lcyBzdHVmZiBpZiBFTkFCTEVfVEVTVElORyBoYXMgYmVlbiBydW4uCgoyMDAxLTA4LTIzIDE4OjAyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOgoJICBpbXByb3ZlIGNvdmVyYWdlCgoyMDAxLTA4LTIzIDE3OjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmg6IEVOSDogYWRkIGR1bXAgZG9jdW1lbnRhdGlvbiB0ZXN0CgoyMDAxLTA4LTIzIDE2OjI4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4LCBjbUNhYmxlV3JhcFRjbENvbW1hbmQuaDogRU5IOgoJICBFYWNoIGNtQ2FibGVXcmFwVGNsQ29tbWFuZCBpbnN0YW5jZSBub3cgdXNlcyBhIHNpbmdsZQoJICBjbU1ha2VEZXBlbmQgb2JqZWN0IGZvciBkZXBlbmRlbmNpZXMgZm9yIGFsbCB0aGUgZ2NjeG1sIGlucHV0CgkgIGZpbGVzIGl0IGdlbmVyYXRlcy4gIFRoaXMgc2hvdWxkIHNpZ25pZmljYW50bHkgaW1wcm92ZSBnZW5lcmF0aW9uCgkgIHRpbWUuCgoyMDAxLTA4LTIzIDE2OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2V0ZXN0LmN4eDogQlVHOiBydW4gbWFrZSBhbGwgb24gdW5peCBub3QgbWFrZSBleGVuYW1lCgoyMDAxLTA4LTIzIDE2OjAwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtYWtldGVzdC5jeHgsCgkgIGN0ZXN0LmN4eDogRU5IOiBhZGQgbW9yZSB0ZXN0aW5nCgoyMDAxLTA4LTIzIDEzOjU3ICBob2ZmbWFuCgoJKiBUZXN0cy86IENvbXBsZXgvQ01ha2VMaXN0cy50eHQsIENvbXBsZXgvVmFyVGVzdHMudHh0LAoJICBDb21wbGV4L2NtVGVzdENvbmZpZ3VyZS5oLmluLCBDb21wbGV4L3NpbXBsZS5jeHgsCgkgIENvbXBsZXgvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleC9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LCBDb21wbGV4L0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXgvTGlicmFyeS9maWxlMi5jeHgsIENvbXBsZXgvTGlicmFyeS9maWxlMi5oLAoJICBDb21wbGV4L0xpYnJhcnkvc2hhcmVkRmlsZS5jeHgsIENvbXBsZXgvTGlicmFyeS9zaGFyZWRGaWxlLmgsCgkgIENvbXBsZXgvTGlicmFyeS9FeHRyYVNvdXJjZXMvZmlsZTEuY3h4LAoJICBDb21wbGV4L0xpYnJhcnkvRXh0cmFTb3VyY2VzL2ZpbGUxLmgsCgkgIENvbXBsZXhPbmVDb25maWcvQ01ha2VMaXN0cy50eHQsIENvbXBsZXhPbmVDb25maWcvVmFyVGVzdHMudHh0LAoJICBDb21wbGV4T25lQ29uZmlnL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4T25lQ29uZmlnL3NpbXBsZS5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvRXhlY3V0YWJsZS9DTWFrZUxpc3RzLnR4dCwKCSAgQ29tcGxleE9uZUNvbmZpZy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvQ01ha2VMaXN0cy50eHQsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9maWxlMi5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9maWxlMi5oLAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvc2hhcmVkRmlsZS5jeHgsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9zaGFyZWRGaWxlLmgsCgkgIENvbXBsZXhPbmVDb25maWcvTGlicmFyeS9FeHRyYVNvdXJjZXMvZmlsZTEuY3h4LAoJICBDb21wbGV4T25lQ29uZmlnL0xpYnJhcnkvRXh0cmFTb3VyY2VzL2ZpbGUxLmgsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9WYXJUZXN0cy50eHQsCgkgIENvbXBsZXhSZWxhdGl2ZVBhdGhzL2NtVGVzdENvbmZpZ3VyZS5oLmluLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9zaW1wbGUuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9FeGVjdXRhYmxlL2NvbXBsZXguY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0NNYWtlTGlzdHMudHh0LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L2ZpbGUyLmN4eCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9maWxlMi5oLAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L3NoYXJlZEZpbGUuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L3NoYXJlZEZpbGUuaCwKCSAgQ29tcGxleFJlbGF0aXZlUGF0aHMvTGlicmFyeS9FeHRyYVNvdXJjZXMvZmlsZTEuY3h4LAoJICBDb21wbGV4UmVsYXRpdmVQYXRocy9MaWJyYXJ5L0V4dHJhU291cmNlcy9maWxlMS5oOiBFTkg6IHRyeSB0bwoJICBnZXQgYmV0dGVyIHRlc3QgY292ZXJhZ2UKCjIwMDEtMDgtMjMgMTM6MTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jdGVzdC5jeHg6IGFsc28gY2hlY2sgcGF0aCBmb3IgdGVzdCBleGVjdXRhYmxlcwoKMjAwMS0wOC0yMyAxMTozOSAgbWFydGluawoKCSogU291cmNlL2N0ZXN0LmN4eDogZml4ZWQgZm9ybWF0CgoyMDAxLTA4LTIzIDExOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBiZXR0ZXIgY3Rlc3Qgc3VwcG9ydAoKMjAwMS0wOC0yMyAxMToxMiAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY3Rlc3QuY3h4LCBjdGVzdC5oOiBhZGRlZCB0ZXN0CgkgIGRyaXZlciBmb3IgbWFrZSB0ZXN0IHRhcmdldAoKMjAwMS0wOC0yMiAxNjozMyAgbWFydGluawoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eDogRU5IOiBkbyBub3QgcHV0IGEgcnVsZSBpbiB0byByZWJ1aWxkIHRoZQoJICBBTExfQlVJTEQuZHNwIGZpbGUsIGFzIGl0IGlzIG5vdCBwb3NzaWJsZS4uLgoKMjAwMS0wOC0yMiAxMTo1OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWJsZUNsYXNzU2V0LmgsIGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwgY21NYWtlRGVwZW5kLmgsCgkgIGNtTWFrZWZpbGUuaCwgY21Tb3VyY2VHcm91cC5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaCwgY21UYXJnZXQuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGNoYW5nZSBhbGwgbWFwcyBvZiBzdHJpbmcgdG8gYmUKCSAgbWFwcyBvZiBjbVN0ZFN0cmluZywgdG8gcmVkdWNlIHN5bWJvbCBsZW5ndGggaW4gb2JqZWN0IGZpbGVzLgoKMjAwMS0wOC0yMiAxMToyNiAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogQlVHOiBzaG9ydGVuIGxlbmd0aCBvZiBzeW1ib2xzCgoyMDAxLTA4LTIyIDEwOjEyICBiZXJrCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBPVVRESVItPkludERpcgoKMjAwMS0wOC0yMiAwODoyMSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZUxpc3RzLnR4dDogQlVHOiBhZGQgbWlzc2luZwoJICBDTWFrZUNvbW1hbmRMaW5lSW5mbwoKMjAwMS0wOC0yMSAxNzo0MSAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5kc3A6IENNYWtlU2V0dXAgbm93IGhhbmRsZXMKCSAgY29tbWFuZC1saW5lIGFyZ3VtZW50cyAoZXg6IC9IPXNvdXJjZV9kaXIgL0I9YnVpbGRfZGlyKQoKMjAwMS0wOC0yMSAxNzozOCAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIENNYWtlU2V0dXBEaWFsb2cuaCwgQ01ha2VDb21tYW5kTGluZUluZm8uY3BwLAoJICBDTWFrZUNvbW1hbmRMaW5lSW5mby5oOiBDTWFrZVNldHVwIG5vdyBoYW5kbGVzIGNvbW1hbmQtbGluZQoJICBhcmd1bWVudHMgKGV4OiAvSD1zb3VyY2VfZGlyIC9CPWJ1aWxkX2RpcikKCjIwMDEtMDgtMjEgMTE6MDQgIHN0YXJyZXZlbGQKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDoKCgkgIEFkZGVkIHN1cHBvcnQgZm9yIC5tbSBzb3VyY2UgZmlsZXMgKE9iakMrKykKCjIwMDEtMDgtMjAgMTM6MzIgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBCVUc6IGZpeCBjaGVjayBmb3Igbm8gc3RkOjoKCjIwMDEtMDgtMjAgMDk6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBCVUc6IGNtU3lzdGVtVG9vbHM6OkNvbGxhcHNlRnVsbFBhdGggaXMKCSAgYSBiYWQgdGhpbmcgdG8gY2FsbCBvbiB0aGUgY29tcGlsZXIgd2hpY2ggaXMgYSBmaWxlcGF0aAoKMjAwMS0wOC0xOSAxOToxMSAgYmFycmUKCgkqIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4OiBBbGxvdyBvcHRpb24gdmFsdWUgdG8gYmUgZXhwYW5kZWQKCSAgKHRodXMsIHdlIGNhbiB1c2UgdGhlIHZhbHVlIG9mIGFub3RoZXIgb3B0aW9uIGFzIGRlZmF1bHQpCgoyMDAxLTA4LTE5IDEyOjE0ICBiYXJyZQoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBnY2MgYW5kIE1TVkMgY2xhc2ggb24KCSAgYmFzaWNfc3RyaW5nOjpjb21wYXJlKCksIGxldCdzIHRyeSBzdWJzdHIoKQoKMjAwMS0wOC0xOSAwNzozNiAgYmFycmUKCgkqIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBJZiB0aGUgdmFsdWUgaXMgYSBwYXRoLCBjb2xsYXBzZSBpdAoJICAoY2xlYW5lcikKCjIwMDEtMDgtMTggMTc6NTcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBCVUc6IGdldCB0aGUgZmxhZ3MgcmlnaHQKCjIwMDEtMDgtMTggMTI6NTEgIGJhcnJlCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIE1vZHVsZXMvRmluZERhcnQuY21ha2U6IFN1cHBvcnQgZm9yCgkgICRFTlZ7VkFSfSBzeW50YXggKGxvb2t1cCBpbiB0aGUgZW52aXJvbm1lbnQgdmFycykKCjIwMDEtMDgtMTcgMTc6MTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHg6IGJhY2t3YXJkcyBNQVRDSEVTIGluCgkgIGlmIGFuZCBlbHNlIHN0YXRlbWVudHMKCjIwMDEtMDgtMTYgMTg6MDEgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9jb25maWd1cmU6IEVOSDogZGVmYXVsdCBmb3IgY3lnd2luIHNob3VsZCBiZSBwdGhyZWFkcwoKMjAwMS0wOC0xNiAxNzo0MiAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sCgkgIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwgY29uZmlndXJlLCBjb25maWd1cmUuaW46IEVOSDogYWRkCgkgIENNQUtFX1VTRV9XSU4zMl9USFJFQURTIHRvIHRoZSBwb3NzaWJsZSB0aHJlYWQgdHlwZXMKCjIwMDEtMDgtMTYgMTE6NDEgIGJlcmsKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwKCSAgY21Mb2FkQ2FjaGVDb21tYW5kLmN4eCwgY21Mb2FkQ2FjaGVDb21tYW5kLmg6IEFkZGluZyBuZXcgb3B0aW9ucwoJICB0byBMb2FkQ2FjaGUuCgoyMDAxLTA4LTE1IDEzOjQwICBiZXJrCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIGNtTG9hZENhY2hlQ29tbWFuZC5jeHg6IDEuIEFkZGVkIEVYQ0xVREUgb3B0aW9uIHRvIExPQURfQ0FDSEUuCgkgIDIuIEVudHJpZXMgYnJvdWdodCBpbiBmcm9tIGFub3RoZXIgY2FjaGUgYXJlIG5vdyBtYXJrZWQgYXMKCSAgaW50ZXJuYWwuCgoyMDAxLTA4LTE1IDEzOjIzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmREYXJ0LmNtYWtlOiBsb29rcyBhdCBzYW1lIGxldmVsCgoyMDAxLTA4LTE1IDEwOjAzICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogRU5IOiBtYWtlIHB0aHJlYWRzIHRoZQoJICBkZWZhdWx0IGZvciBjeWd3aW4KCjIwMDEtMDgtMTQgMTc6MTggIGtpbmcKCgkqIFNvdXJjZS86IGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuY3h4LCBjbUluc3RhbGxQcm9ncmFtc0NvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHg6IEVOSDogSW1wcm92ZWQgSU5TVEFMTF9GSUxFUyBhbmQgSU5TVEFMTF9QUk9HUkFNUwoJICBjb21tYW5kcyB0byBhbGxvdyBlYWNoIGNhbGwgdG8gdGhlIGNvbW1hbmQgaW4gYSBzaW5nbGUgZGlyZWN0b3J5CgkgIHRvIHNwZWNpZnkgYSBkaWZmZXJlbnQgaW5zdGFsbCBwYXRoLgoKMjAwMS0wOC0xMyAxNjowNCAgbWFydGluawoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiByZW1vdmVkIGdyZXAKCjIwMDEtMDgtMTAgMTU6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbU1ha2VmaWxlLmg6IG5vdyBjcmVhdGVzCgkgIG91dHB1dCBkaXJlY3RvcmllcwoKMjAwMS0wOC0wOSAxNTozNSAgaG9mZm1hbgoKCSogQ01ha2UucGRmOiBFTkg6IHVwZGF0ZSBwZGYgdG8gcnRmCgoyMDAxLTA4LTA5IDE1OjIzICBob2ZmbWFuCgoJKiBDTWFrZS5ydGY6IEVOSDogYWRkIHNvbWUgZG9jcyBmb3Igc2dpIENDCgoyMDAxLTA4LTA5IDE0OjU4ICBiZXJrCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4OiBCVUc6IG9yIGFuZCBhbmQgd2VyZQoJICBpbnZlcnRlZC4KCjIwMDEtMDgtMDkgMTE6MTIgIGhvZmZtYW4KCgkqIENoYW5nZUxvZzogYWRkIGdlbmVyYXRlZCBDaGFuZ2VMb2cgZmlsZS4gIFNob3VsZCBiZSB1cGRhdGVkIGVhY2gKCSAgdGltZSBhIG5ldyB2ZXJzaW9uIGlzIG1hZGUKCjIwMDEtMDgtMDkgMTE6MDggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuaDogdXBkYXRlZCB2ZXJzaW9uCgoyMDAxLTA4LTA5IDExOjA3ICBtYXJ0aW5rCgoJKiBSRUFETUU6IG91dCBvZiBkYXRlCgoyMDAxLTA4LTA5IDA5OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Db25maWd1cmUuY21ha2UuaC5pbjogQlVHOiBhZGQgaW4gZm9yIHNjb3BlIHZhcmlhYmxlCgoyMDAxLTA4LTA4IDE0OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4OiBFTkg6IHVwZGF0ZSB0bwoJICBuZXcgc3R5bGUgb2YgY2FjaGUgYWNjZXNzCgoyMDAxLTA4LTA4IDEzOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4OiBCVUc6CgkgIGNhbiBub3QgQWRkIGEgZGVmaW5pdGlvbiB0aGF0IHlvdSBqdXN0IGdvdAoKMjAwMS0wOC0wOCAxMTo1NCAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFNvdXJjZS9jbUJ1aWxkQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUJ1aWxkTmFtZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbUNvbmZpZ3VyZS5oLmluLCBTb3VyY2UvY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwKCSAgU291cmNlL2NtRmluZEZpbGVDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZFBhdGhDb21tYW5kLmN4eCwgU291cmNlL2NtRmluZFByb2dyYW1Db21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21TaXRlTmFtZUNvbW1hbmQuY3h4LCBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVZUS1dyYXBUY2xDb21tYW5kLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBUZW1wbGF0ZXMvY29uZmlndXJlLAoJICBUZW1wbGF0ZXMvY29uZmlndXJlLmluOiBFTkg6IGJpZyBjaGFuZ2UsIG9ubHkgYWxsb3cgY29tbWFuZHMKCSAgYWNjZXNzIHRvIHRoZSBjYWNoZSB2aWEgdGhlIGNtTWFrZWZpbGUgY2xhc3MgYW5kIEdldERlZmluaXRpb24sCgkgIGFsc28gdGhlIGNtTWFrZWZpbGUgaXMgdGhlIG9ubHkgd2F5IGZvciBjb21tYW5kcyB0byBhZGQgdG8gdGhlCgkgIGNhY2hlLiAgQWxzbywgc29tZSBjaGFuZ2VzIHRvIGNvbmZpZ3VyZS5pbiB0aGF0IGNoZWNrIGZvciBmb3IKCSAgc2NvcGluZwoKMjAwMS0wOC0wNyAxNTo0OSAgaG9mZm1hbgoKCSogU291cmNlLzogY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IGNvbXBpbGUKCSAgd2l0aCBicm9rZW4gNzIwIFNHSSBDKysgY29tcGlsZXIKCjIwMDEtMDgtMDcgMTM6NDYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBodG1sIG91dHB1dCBmb3IgZG9jcwoKMjAwMS0wOC0wNyAxMzoxNSAgaG9mZm1hbgoKCSogQ01ha2UucnRmOiBFTkg6IHVwZGF0ZSBkb2N1bWVudHMgd2l0aCBjdXJyZW50IGNvbW1hbmRzIGFuZCBuZXcKCSAgR1VJCgoyMDAxLTA4LTA3IDA4OjQ3ICBraW5nCgoJKiBDTWFrZUxpc3RzLnR4dDogRVJSOiBDTWFrZUxvZ28uZ2lmIGhhcyBiZWVuIG1vdmVkIHRvIHRoZSByb290CgkgIGRpcmVjdG9yeSBvZiB0aGUgc291cmNlIHNvIHRoYXQgdGhlIFdlYiBhbmQgV2ViL0FydCBkaXJlY3RvcmllcwoJICBhcmUgbm90IG5lZWRlZCBoZXJlLgoKMjAwMS0wOC0wNyAwODo0NiAga2luZwoKCSogQ01ha2VMb2dvLmdpZjogRU5IOiBDTWFrZUxvZ28gZm9yIERhcnQgdG8gdXNlIG9uIHRlc3Rpbmcgd2ViCgkgIHBhZ2UuCgoyMDAxLTA4LTA2IDE3OjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmN4eCwgY21FbHNlQ29tbWFuZC5oLCBjbUlmQ29tbWFuZC5jeHgsCgkgIGNtSWZDb21tYW5kLmg6IGFkZGVkIG5ldyBpZiBjb21tYW5kcwoKMjAwMS0wOC0wNiAxNToxMSAga2luZwoKCSogQ01ha2UucGRmLCBDTWFrZS5ydGY6IFJlLWFkZGluZyBkb2MgZmlsZXMuICBUaGV5IHdlcmUKCSAgYWNjaWRlbnRhbGx5IHJlbW92ZWQgZHVlIHRvIGEgc3ltbGluayBmcm9tIHRoZSBDTWFrZS9XZWIKCSAgZGlyZWN0b3J5IHdoZW4gaXQgd2FzIHJlbW92ZWQuCgoyMDAxLTA4LTA2IDE1OjAxICBraW5nCgoJKiBDTWFrZS5wZGYsIENNYWtlLnJ0ZjogUmVtb3ZpbmcgV2ViIGRpcmVjdG9yeSBmcm9tIENNYWtlLiAgSXQgaXMKCSAgbW92aW5nIHRvIGEgc2VwYXJhdGUsIHBhcmFsbGVsIENWUyBtb2R1bGUgY2FsbGVkICJDTWFrZVdlYiIKCjIwMDEtMDgtMDMgMTU6NDcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29uZmlndXJlRmlsZUNvbW1hbmQuY3h4LCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmg6CgkgIEVOSDogQWRkZWQgJ0lNTUVESUFURScgb3B0aW9uIHRvIENPTkZJR1VSRV9GSUxFIGNvbW1hbmQgdG8gZm9yY2UKCSAgZmlsZSBjb3B5IGFuZCBjb25maWd1cmF0aW9uIG9uIHRoZSBpbml0aWFsIHBhc3Mgc28gdGhhdCBjdXJyZW50CgkgIHZhcmlhYmxlIHZhbHVlcyBhcmUgdXNlZC4KCjIwMDEtMDgtMDIgMTc6MjcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsIGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5oOiBFTkg6CgkgIEFkZGVkIHVzZSBvZiBhIGNsYXNzJ3MgdGFnIHRvIGdlbmVyYXRlIGEgYmV0dGVyIHNldCBvZiBmaWxlbmFtZXMKCSAgZm9yIGl0cyB3cmFwcGVyIGNvbmZpZ3VyYXRpb24sIHhtbCwgYW5kIGdlbmVyYXRlZCBmaWxlcy4gIFRoaXMKCSAgc2hvdWxkIGFsc28gcHJldmVudCBoYWxmIHRoZSBjbGFzc2VzIGZyb20gcmUtd3JhcHBpbmcgd2hlbiBhIG5ldwoJICBvbmUgaXMgaW5zZXJ0ZWQgaW4gdGhlIG1pZGRsZS4KCjIwMDEtMDgtMDIgMTQ6NDIgIGtpbmcKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogR2VuZXJhdGVkIGxpbmsgbGluZSBmb3IKCSAgc2hhcmVkIGxpYnJhcmllcyBoYWQgQ01BS0VfQ1hYX0ZMQUdTIGluc3RlYWQgb2YgQ01BS0VfQ1hYRkxBR1MKCSAgKG5vdGUgdW5kZXJzY29yZSkuCgoyMDAxLTA4LTAyIDE0OjEwICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEJVRzogRml4ZWQgb2ZmLWJ5LW9uZSBlcnJvciBpbgoJICBFeHBhbmRWYXJpYWJsZXNJblN0cmluZyBmb3IgY2FzZSBvZiAkIG9yIEAgYXMgbGFzdCBjaGFyYWN0ZXIgb2YKCSAgc3RyaW5nLgoKMjAwMS0wOC0wMiAwOTowNyAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBXZSBkb24ndCB3YW50IHRvIG91dHB1dAoJICAtSS91c3IvaW5jbHVkZSBpbiB0aGUgSU5DTFVERV9GTEFHUyB2YXJpYWJsZS4gIFRoaXMgY2F1c2VzCgkgIHByb2JsZW1zIHdpdGggZmluZGluZyBzeXN0ZW0gaGVhZGVycyBpbiB0aGUgd3JvbmcgcGxhY2VzIGZvcgoJICBjZXJ0YWluIHN0YW5kYXJkIGxpYnJhcnkgaW1wbGVtZW50YXRpb25zLgoKMjAwMS0wOC0wMSAxNjoxNCAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU3ViZGlyRGVwZW5kc0NvbW1hbmQuY3h4LCBjbVN1YmRpckRlcGVuZHNDb21tYW5kLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZCBTVUJESVJfREVQRU5EUyBjb21tYW5kCgkgIGFuZCBjb3JyZXNwb25kaW5nIHN1cHBvcnQgY29kZS4gIFRoaXMgY29tbWFuZCBhbGxvd3MKCSAgc3BlY2lmaWNhdGlvbiB0aGF0IGEgc2V0IG9mIHN1YmRpcmVjdG9yaWVzIGJlIGJ1aWx0IGJlZm9yZSBhCgkgIHBhcnRpY3VsYXIgZGlyZWN0b3J5LgoKMjAwMS0wOC0wMSAxNjoxMyAga2luZwoKCSogU291cmNlL2NtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eDogQlVHOiBOZWVkZWQgdG8gZXhwYW5kCgkgIHZhcmlhYmxlcyBvZiBkZWZpbml0aW9ucy4KCjIwMDEtMDgtMDEgMTY6MTIgIGtpbmcKCgkqIFNvdXJjZS9jbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4OiBCVUc6IE5lZWQgdG8gZXhwYW5kIHZhcmlhYmxlcwoJICB3aGVuIGEgcmVndWxhciBleHByZXNzaW9uIGlzIHNwZWNpZmllZC4KCjIwMDEtMDgtMDEgMTY6MTEgIGtpbmcKCgkqIE1vZHVsZXMvRmluZENBQkxFLmNtYWtlOiBFTkg6IFN1cHBvcnQgdG8gZmluZCBDQUJMRSB1dGlsaXR5IGlmIGl0CgkgIGlzIGluc3RhbGxlZC4KCjIwMDEtMDgtMDEgMTE6MTkgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRU5IOiBBZGRlZCB0ayBsaWJyYXJ5IG5hbWVzIHRrOC40IHRrOC4zCgkgIHRrOC4yIGFuZCB0azguMCB0byBjb3JyZXNwb25kIHRvIHRrODQgdGs4MyB0azgyIGFuZCB0azgwLgoJICBUS19MSUJSQVJZIHNob3VsZCBub3cgYmUgZm91bmQgb24gbW9yZSBwbGF0Zm9ybXMuCgoyMDAxLTA3LTMxIDExOjI5ICBraW5nCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsCgkgIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsIFNvdXJjZS9jbUluc3RhbGxGaWxlc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbnN0YWxsUHJvZ3JhbXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbFByb2dyYW1zQ29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVRhcmdldC5jeHgsIFNvdXJjZS9jbVRhcmdldC5oLAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBUZW1wbGF0ZXMvQ01ha2VMaXN0cy50eHQ6CgkgIEVOSDogQWRkZWQgSU5TVEFMTF9QUk9HUkFNUyBjb21tYW5kIGFuZCBjb3JyZXNwb25kaW5nIHN1cHBvcnQuCgkgIFRoaXMgaW52b2x2ZWQgc3BsaXR0aW5nIGNtVGFyZ2V0OjpJTlNUQUxMIGludG8gSU5TVEFMTF9GSUxFUyBhbmQKCSAgSU5TVEFMTF9QUk9HUkFNUyBlbnVtIHZhbHVlcy4gIElOU1RBTExfRklMRVMgbm8gbG9uZ2VyIGFkZHMKCSAgZXhlY3V0ZSBwZXJtaXNzaW9uLiAgVGhlIElOU1RBTExfUFJPR1JBTVMgY29tbW5hZCB0YWtlcyBlaXRoZXIgYQoJICBsaXN0IG9mIGV4cGxpY2l0IG5hbWVzLCBvciBhIHJlZ2V4LiAgSXQgd2lsbCBub3QgZXhwYW5kIHNvdXJjZQoJICBsaXN0cyBsaWtlIHRoZSBJTlNUQUxMX0ZJTEVTIGNvbW1hbmQgd2lsbC4KCjIwMDEtMDctMzAgMTI6MjEgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlQ2xhc3NTZXQuY3h4OiBFUlI6CgkgIEVsZW1lbnRDb21iaW5hdGlvbkdlbmVyYXRvcjo6UmVwbGFjZVBvcnRpb24gbmVlZHMgdG8gYmUgYSBmcmllbmQKCSAgb2YgRWxlbWVudENvbWJpbmF0aW9uR2VuZXJhdG9yIHNvIHRoYXQgaXQgY2FuIGdldCBhY2Nlc3MgdG8KCSAgRWxlbWVudENvbWJpbmF0aW9uR2VuZXJhdG9yOjpTdWJzdGl0dXRpb24uICBBbHNvIGZpeGVkIG9uZSBtaW5vcgoJICBwcm9ibGVtIGZvciBIUCBidWlsZC4KCjIwMDEtMDctMzAgMTE6MzQgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIGNtRFNQV3JpdGVyLmN4eCwgY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IENoYW5nZWQgaW5jbHVkZSBhbmQgbGluawoJICBkaXJlY3RvcnkgcGF0aHMgaW4gY21NYWtlZmlsZSBiYWNrIHRvIHN0ZDo6dmVjdG9yIGJlY2F1c2UgdGhlcmUKCSAgaXMgYW4gb3JkZXIgZGVwZW5kZW5jeS4gIE9ubHkgY21NYWtlZmlsZTo6QWRkSW5jbHVkZURpcmVjdG9yeSBhbmQKCSAgY21NYWtlZmlsZTo6QWRkTGlua0RpcmVjdG9yeSBzaG91bGQgYmUgY2FsbGVkIHRvIGFkZCBkaXJlY3RvcmllcwoJICB0byB0aGUgcGF0aHMuICBUaGV5IG1ha2Ugc3VyZSB0aGUgcGF0aHMgYXJlIHVuaXF1ZSBhcyB0aGV5IGFyZQoJICBpbnNlcnRlZC4KCjIwMDEtMDctMzAgMDc6MTggIHNjb3R0aW0KCgkqIFNvdXJjZS86IGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsCgkgIGNtRFNQV3JpdGVyLmN4eCwgY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBSZW1vdmVkIHRoZSBVbmlxdWlmaWNhdGlvbiBvZiB0aGUKCSAgaW5jbHVkZSBhbmQgbGluayBkaXJlY3RvcnkgbGlzdCBpbiBGaW5hbFBhc3MsIGFuZCBhY2hpZXZlZCB0aGUKCSAgc2FtZSBlZmZlY3QgYnkgbWFrZWluIG1fTGlua0RpcmVjdG9yZXMgYW5kIG1fSW5jbHVkZURpcmVjdG9yaWVzIGEKCSAgc2V0IHJhdGhlciB0aGFuIHZlY3RvcgoKMjAwMS0wNy0yNyAxNjoyOSAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IFJlLWltcGxlbWVudGVkCgkgIEV4cGFuZFZhcmlhYmxlc0luU3RyaW5nIHRvIHNpZ25pZmljYW50bHkgaW1wcm92ZSBwZXJmb3JtYW5jZS4KCjIwMDEtMDctMjcgMTM6MDYgIHNjb3R0aW0KCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IE1Ba2VmaWxlIG5vdyBzdHJpcHMKCSAgZHVwbGljYXRlIGRpcmVjdG9yZXMgZnJvbSB0aGUgbGlicmFyaWVzIGFuZCBpbmNsdWRlIHBhdGhzCgoyMDAxLTA3LTI2IDExOjA3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ2xhc3NTZXQuY3h4LCBjbUNhYmxlQ2xhc3NTZXQuaCwKCSAgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5jeHgsIGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQKCSAgY2FibGUgY2xhc3Mtc2V0IGV4cGFuc2lvbiBhbmQgdGFnZ2luZyBmb3IgYWx0ZXJuYXRlIG5hbWUKCSAgZ2VuZXJhdGlvbi4gIFRoaXMgc2hvdWxkIG1ha2UgdGhlIGdlbmVyYXRlZCB3cmFwcGVycyBtdWNoIGVhc2llcgoJICB0byBzZXR1cCBhbmQgdXNlLgoKMjAwMS0wNy0yNiAxMDoxOCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXBEaWFsb2cuY3BwLCBQcm9wZXJ0eUxpc3QuY3BwOiBFTkg6CgkgIGNoYW5nZSB0aGUgbG9naWMgb2YgZGlzYWJsaW5nIHRoZSBvayBidXR0b24gYSBiaXQKCjIwMDEtMDctMjYgMDk6NDcgIGJlcmsKCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IFVwZGF0ZWQgcmVnZXhwIGZvciB0cmFjaW5nIGRlcGVuZGVuY2llcyBpbgoJICBGTFRLIGRpYWxvZy4KCjIwMDEtMDctMjYgMDg6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IGZpeGVkIHdhcm5pbmdzCgoyMDAxLTA3LTI1IDE4OjMwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbWFrZS5jeHgsIGNtYWtlLmgsCgkgIE1GQ0RpYWxvZy9DTWFrZURpYWxvZy5oLCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLAoJICBNRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcCwgTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5oLAoJICBNRkNEaWFsb2cvcmVzb3VyY2UuaDogRU5IOiByZXdvcmsgR1VJIHdpdGggY29uZmlndXJlL09LL0NhbmNlbAoKMjAwMS0wNy0yNSAxNjo1MyAgbWFydGluawoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtRnVuY3Rpb25CbG9ja2VyLmgsIGNtSWZDb21tYW5kLmN4eCwKCSAgY21JZkNvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogYWRkZWQgZm9yIGVhY2gKCSAgY29tbWFuZAoKMjAwMS0wNy0yNSAxNjo1MiAgbWFydGluawoKCSogU291cmNlLzogY21FbmRGb3JFYWNoQ29tbWFuZC5jeHgsIGNtRW5kRm9yRWFjaENvbW1hbmQuaCwKCSAgY21Gb3JFYWNoQ29tbWFuZC5jeHgsIGNtRm9yRWFjaENvbW1hbmQuaDogbmV3IGNvbW1hbmRzCgoyMDAxLTA3LTI1IDA5OjQwICBiZXJrCgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4OiBSZW1vdmluZyB0cmFpbGluZyBzcGFjZXMgYWZ0ZXIgY2FjaGUKCSAgZW50cnkgdmFsdWUuCgoyMDAxLTA3LTI0IDE2OjQ2ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIFByb3BlcnR5TGlzdC5jcHAsCgkgIFByb3BlcnR5TGlzdC5oLCByZXNvdXJjZS5oOiBCVUc6IGZpeCBvbiBzY3JvbGwgd2l0aCBidXR0b25zCgoyMDAxLTA3LTI0IDE2OjE2ICBraW5nCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IEZpeGVkIGRlcGVuZGVuY3kgZ2VuZXJhdGlvbiB0byB3b3JrCgkgIGZvciB3aGVuIHRoZXJlIGFyZSBtYW55LCBtYW55IGRlcGVuZGVuY2llcy4gIE91dHB1dCBpcyBub3cgZWFzaWVyCgkgIHRvIHJlYWR5IGFueXdheSBiZWNhdXNlIGVhY2ggZGVwZW5kZW5jeSBpcyBvbiBpdHMgb3duIGxpbmUuCgoyMDAxLTA3LTIzIDE0OjQzICBraW5nCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuY3h4LAoJICBjbUNvbmZpZ3VyZUdjY1htbENvbW1hbmQuaDogQlVHOiBDb21waWxlcklzTWlwc1BybyBuZWVkcyB0bwoJICByZWRpcmVjdCBzdGRlcnIgdG8gc3Rkb3V0IHNvIHRoYXQgdGhlIHRlc3Qgb3V0cHV0IGNhbiBiZSBjaGVja2VkLgoKMjAwMS0wNy0yMyAxMTo1NCAga2luZwoKCSogU291cmNlLzogY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVHY2NYbWxDb21tYW5kLmg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgVU5JWAoJICBjb21waWxlcnMuICBHQ0MgYW5kIE1JUFNwcm8gYXJlIHN1cHBvcnRlZC4KCjIwMDEtMDctMjMgMTE6NTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkZWQgc3VwcG9ydAoJICBmb3Igbm9uLXZlcmJvc2UgbW9kZSBvdXRwdXQgZnJvbSBydW5uaW5nIGEgY29tbWFuZC4gIFRoaXMgY2FuIGJlCgkgIHVzZWQgd2hlbiBpdCBpcyBleHBlY3RlZCB0aGF0IHRoZSBjb21tYW5kIG1heSBmYWlsLgoKMjAwMS0wNy0yMyAxMTowNyAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtQ29uZmlndXJlR2NjWG1sQ29tbWFuZC5jeHgsCgkgIGNtQ29uZmlndXJlR2NjWG1sQ29tbWFuZC5oOiBFTkg6IEFkZGVkIENPTkZJR1VSRV9HQ0NYTUwgY29tbWFuZAoJICB0byBkbyBoYXJkIHdvcmsgb2YgY29uZmlndXJpbmcgR0NDWE1MJ3MgZmxhZ3MgZm9yIHRoZSBjdXJyZW50CgkgIGNvbXBpbGVyLiAgQ3VycmVudGx5IG9ubHkgaW1wbGVtZW50ZWQgY29ycmVjdGx5IGZvciBWaXN1YWwgQysrIGluCgkgIFdpbmRvd3MuCgoyMDAxLTA3LTIzIDExOjA2ICBraW5nCgoJKiBNb2R1bGVzL0ZpbmRHQ0NYTUwuY21ha2U6IEVOSDogTW9kdWxlIHRvIGZpbmQgYW5kIGNvbmZpZ3VyZQoJICBHQ0NYTUwgYW5kIEdDQ1hNTF9GTEFHUy4KCjIwMDEtMDctMjAgMTE6NDEgIG1pbGxlcmp2CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogQWRkZWQgUHVyaWZ5IHRhcmdldHMKCjIwMDEtMDctMjAgMDk6MjAgIG1pbGxlcmp2CgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IEVOSDogQWRkZWQgcHVyaWZ5IGNvbW1hbmQuCgoyMDAxLTA3LTIwIDA0OjU2ICBzY290dGltCgoJKiBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlOiBhZGRpbmcgd2hhdCBJIHRoaW5rIGlzIGEgbWlzc2luZwoJICAvcGRidHlwZTpzZXB0CgoyMDAxLTA3LTE5IDE0OjMxICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIENNYWtlU2V0dXBHVUkuZmwsCgkgIENNYWtlU2V0dXBHVUkuaCwgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmgsIEZMVEtEaWFsb2cuY3h4OiBFTkg6IFNhdmUgYW5kIExvYWQKCSAgb2YgcmVjZW50IFNvdXJjZSBhbmQgQmluYXJ5IGRpcmVjdG9yaWVzIGFkZGVkLgoKMjAwMS0wNy0xOCAxNjo0NSAgbWFydGluawoKCSogU291cmNlL2NtTWFrZWZpbGUuaDogdXBkYXRlZCB2ZXJzaW9uCgoyMDAxLTA3LTE4IDExOjQwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IGxpbWl0IGxpYnJhcnkgc2VhcmNoIHRvIGFwcHJvcHJpYXRlCgkgIGV4dGVuc2lvbnMKCjIwMDEtMDctMTggMTA6MTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogQlVHOiBlbmFibGUgdGVzdGluZyBldmVuIGlmIG5vdCB0Y2wgZm91bmQKCjIwMDEtMDctMTcgMTU6NDEgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YKCSAgZGVwZW5kZW5jaWVzIG9uIHRoZSBDTWFrZS1nZW5lcmF0ZWQgaW5wdXQgdG8gZ2NjLXhtbCBzbyB0aGF0CgkgIHJlLWdlbmVyYXRpb24gb2Ygd3JhcHBlcnMgd2lsbCBvY2N1ciBpZiBhIGhlYWRlciBjaGFuZ2VzLgoKMjAwMS0wNy0xNyAxNTo0MSAga2luZwoKCSogU291cmNlL2NtTWFrZURlcGVuZC5jeHg6IEJVRzogTmVlZCB0byBleHBhbmQgdmFyaWFibGVzIGluIHNlYXJjaAoJICBwYXRocyBpbiBjYXNlIGl0IGhhc24ndCBiZWVuIGRvbmUgeWV0IGJ5IHRoZSBtYWtlZmlsZS4KCjIwMDEtMDctMTcgMTU6MDkgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZURlcGVuZC5oLAoJICBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OgoJICBFTkg6IEhhY2tlZCB0b2dldGhlciBhIG5ldyBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZGVwZW5kZW5jeQoJICBnZW5lcmF0b3IgY29kZS4gIFRoaXMgc2hvdWxkIHN1cHBvcnQgZmluZGluZyBkZXBlbmRlbmNpZXMgZm9yCgkgIGluZGl2aWR1YWwgZmlsZXMgd2l0aG91dCBkb2luZyB0aGVtIGZvciB0aGUgZW50aXJlIG1ha2VmaWxlLglVc2UKCSAgY21NYWtlRGVwZW5kOjpGaW5kRGVwZW5kZW5jaWVzKCkgdG8gZG8gdGhpcy4KCjIwMDEtMDctMTcgMDk6NTQgIGtpbmcKCgkqIE1vZHVsZXMvQ01ha2VMaXN0cy50eHQsIE1vZHVsZXMvRmluZERhcnQuY21ha2UsCgkgIE1vZHVsZXMvRmluZEpOSS5jbWFrZSwgTW9kdWxlcy9GaW5kUHl0aG9uTGlicy5jbWFrZSwKCSAgTW9kdWxlcy9GaW5kVENMLmNtYWtlLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFRlbXBsYXRlcy9jb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgdXNpbmcKCSAgYmFja3NsYXNoLXN0eWxlIGVzY2FwaW5nIGluIENNYWtlTGlzdHMudHh0IGZpbGUgYXJndW1lbnRzLiAgVGhpcwoJICBhbGxvd3MgZG91YmxlIHF1b3RlcyB0byBiZSB1c2VkIGluIGFyZ3VtZW50cy4KCjIwMDEtMDctMTYgMTg6NDAgIHBlcmVyYQoKCSogU291cmNlLzogY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21Tb3VyY2VGaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuY3h4LAoJICBjbVRhcmdldC5jeHg6IEVOSDogU291cmNlIGFuZCBoZWFkZXIgZmlsZSBleHRlbnNpb25zIGFyZSBpbgoJICB2YXJpYWJsZXMgaW4gY21NYWtlZmlsZS4gIEFVWF9TT1VSQ0VfRElSRUNUT1JZIHdpbGwgb25seSBhZGQKCSAgZmlsZXMgdGhhdCBoYXZlIGEgInNvdXJjZSIgZXh0ZW5zaW9uLgoKMjAwMS0wNy0xNiAxNToxOSAgaWJhbmV6CgoJKiBNb2R1bGVzLzogRmluZEdMVS5jbWFrZSwgRmluZEdMVVQuY21ha2U6CVNlYXJjaCBwYXRoIGZvcgoJICBPcGVuR0wgcmVsYXRlZCBsaWJyYXJpZXMKCjIwMDEtMDctMTYgMTA6MTcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjoKCSAgRU5IOiBhZGQgYSB2YXJpYWJsZSBmb3IgQ01BS0VfQ09NUElMRVJfSVNfR05VQ1hYCgoyMDAxLTA3LTE2IDEwOjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBCVUc6IG1ha2Ugc3VyZSBjYWNoZSBpcwoJICBjbGVhcmVkCgoyMDAxLTA3LTE2IDEwOjE0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Tb3VyY2VGaWxlLmN4eDogRU5IOiBhZGQgc3VwcG9ydCBmb3IKCSAgbWFjIG9zeAoKMjAwMS0wNy0xNSAyMToxMCAgYmFycmUKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IHVwZGF0ZSBpbmNsdWRlL2xpYiBwYXRoIHRvIFB5dGhvbgoJICAoTGludXgpCgoyMDAxLTA3LTEyIDE5OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIENNYWtlU2V0dXBEaWFsb2cuaCwKCSAgUHJvcGVydHlMaXN0LmNwcCwgUHJvcGVydHlMaXN0Lmg6IEVOSDogYWRkIGEgY2hlY2sgdG8gYXZvaWQKCSAgcXVpdHRpbmcgYmVmb3JlIHJlYnVpbGRpbmcKCjIwMDEtMDctMTEgMTM6MzAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuaDogdmVyc2lvbiBudW0KCjIwMDEtMDctMTEgMTM6MDYgIG1hcnRpbmsKCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IGZpeGVkIHVwIHJlc2l6aW5nIGluZm8KCjIwMDEtMDctMTEgMTI6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBtYWtlIHN1cmUgZmluZCBwcm9ncmFtIGRvZXMgbm90CgkgIGZpbmQgZGlyZWN0b3JpZXMKCjIwMDEtMDctMTAgMTc6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtSW5jbHVkZUNvbW1hbmQuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4OiBCVUc6CgkgIHJlbW92ZSBpb3N0cmVhbS5oIGluY2x1ZGVzCgoyMDAxLTA3LTEwIDE2OjIwICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBVbm5lY2Vzc2FyeSB2YXJpYWJsZQoKMjAwMS0wNy0xMCAxNjoyMCAgYmVyawoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCZXR0ZXIgZXJyb3IgY2hlY2tpbmcuCgoyMDAxLTA3LTEwIDE0OjI5ICBob2ZmbWFuCgoJKiBUZW1wbGF0ZXMvOiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogQlVHOiBmaXggZXhjYXBlIG9mICogZm9yCgkgIGNtYWtlCgoyMDAxLTA3LTEwIDEzOjU3ICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFdoZW4gc3BsaXR0aW5nIGEgZnVsbAoJICBwYXRoIGxpYnJhcnkgaW50byBzZXBhcmF0ZSAtTCBhbmQgLWwgcGFydHMsIHRoZSAtbCBwYXJ0IG1heSBub3QKCSAgaGF2ZSBhICJsaWIiIHByZWZpeCBvbiBjeWd3aW4uCgoyMDAxLTA3LTEwIDEyOjA5ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IFJlbW92aW5nIGF1dG9tYXRpYyBzZXR0aW5nIG9mCgkgIEJVSUxEX1NIQVJFRF9MSUJTLiAgUHJvamVjdHMgdGhhdCBzdXBwb3J0IHRoaXMgc2hvdWxkIGV4cGxpY2l0bHkKCSAgZGVjbGFyZSBpdCB3aXRoIHRoZSBPUFRJT04gY29tbWFuZCwgb3Igc2V0IGl0cyBsaWJyYXJpZXMgdG8KCSAgc2hhcmVkIG9yIHN0YXRpYyBkaXJlY3RseSBvbiBlYWNoIEFERF9MSUJSQVJZIGNvbW1hbmQuCgoyMDAxLTA3LTEwIDExOjU2ICBiZXJrCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IENoZWNraW5nIGlmIHRjbHNoY29tbWFuZCBpcyBkZWZpbmVkIGJlZm9yZQoJICBydW5uaW5nIGl0LgoKMjAwMS0wNy0xMCAxMTo0NiAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBBZGRlZAoJICAtRChsaWJyYXJ5X25hbWUpX0VYUE9SVFMgdG8gYnVpbGQgcnVsZXMgZm9yIHNvdXJjZXMgdGhhdCBhcmUKCSAgZ29pbmcgdG8gYmUgbGlua2VkIGludG8gYSBzaGFyZWQgbGlicmFyeS4gIFRoaXMgYWxsb3dzIGRsbGV4cG9ydAoJICBzZXR1cCBmb3IgRExMIGJ1aWxkaW5nIG9uIGN5Z3dpbi4gIEl0IG1heSBhbHNvIGNvbWUgaW4gaGFuZHkgaW4KCSAgdW5peCBpbiB0aGUgZnV0dXJlLiAgVGhpcyBjb3JyZXNwb25kcyB0byB0aGUgc2FtZSBkZWZpbml0aW9uCgkgIGFkZGVkIGJ5IHRoZSBkbGwgZHNwIHRlbXBsYXRlIGluIHdpbmRvd3MuCgoyMDAxLTA3LTEwIDA5OjIzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21CdWlsZE5hbWVDb21tYW5kLmN4eDogY2hhbmdlcyB0byBiZXR0ZXIgaGFuZGxlIG9sZAoJICB2YWx1ZXMgb3IgaGFuZCBzZXQgdmFsdWVzCgoyMDAxLTA3LTA5IDEyOjQ2ICBub2JvZHkKCgkqIERhcnRDb25maWcuY21ha2U6IERpc2FibGVkIGRveHlnZW4gYW5kIGduYXRzCgoyMDAxLTA3LTA4IDE3OjU0ICBwZXJlcmEKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogbGlicmFyeSBleHRlbnNpb24gZ29lcwoJICBhZnRlciBsaWJyYXJ5IG5hbWUsIG5vdCBiZWZvcmUKCjIwMDEtMDctMDYgMTQ6NDEgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBzb21lIGNsZWFuIHVwLCBhbmQgYmV0dGVyIGNoZWNraW5nIHRvIHNlZSBpZiB3ZSBhcmUgYnVpbGRpbmcKCSAgY21ha2UKCjIwMDEtMDctMDYgMTQ6MTEgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBFTkg6IHJ1biBtYWtlIGRlcGVuZAoKMjAwMS0wNy0wNiAxMjo0NiAgd2lsbAoKCSogU291cmNlL2NtQ29tbWFuZC5oOiBFUlI6U3BlbGxpbmcgbWlzdGFrZQoKMjAwMS0wNy0wNiAwOToyMiAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBFTkg6IFdhcm5pbmcgNDUwMyBkaXNhYmxlIGZvciBNU1ZDLgoKMjAwMS0wNy0wNSAxODoxNSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY29uZmlndXJlLCBjb25maWd1cmUuaW46IEJVRzogZml4IGZsYWdzIGZvciBjeWd3aW4KCSAgYW5kIHNoYXJlZCBidWlsZHMKCjIwMDEtMDctMDUgMTc6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBhZGQgYmV0dGVyIGVycm9yIG91dHB1dAoKMjAwMS0wNy0wNSAxMjowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgVGVtcGxhdGVzL2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbjogQlVHOiBmaXggc29sYXJpcyBwcm9ibGVtcyBpbiBpbnN0YWxsIGFuZAoJICBhcgoKMjAwMS0wNy0wMyAxMDo1MyAga2luZwoKCSogU291cmNlL2NtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IEVOSDogUmVtb3ZlZCAtZnN5bnRheC1vbmx5IGZsYWcKCSAgZnJvbSBjYWxsIHRvIGdjYy14bWwuICBJdCBzaG91bGQgYmUgcGFydCBvZiBHQ0NYTUxfRkxBR1MuCgoyMDAxLTA3LTAzIDA1OjI3ICBzY290dGltCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LCBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLAoJICBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBUZW1wbGF0ZXMvRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBUZW1wbGF0ZXMvVXRpbGl0eUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogUmVuYW1lZCB0aGUKCSAgUmVsZWFzZVdpdGhEZWJ1Z0luZm8gQnVpbGQgY29uZmlndXJhdGlvbiB0byBSZWxXaXRoRGViSW5mbywKCSAgYmVjYXVzZSBtc2RldiBkb2VzIHNpbXBsZSBtYXRjaGluZyBvbiBidWlsZCB0YXJnZXQsIGFuZAoJICBzcGVjaWZ5aW5nIGVpdGhlciBSZWxlYXNlIG9yIERlYnVnIGJ1aWxkcyB3b3VsZCBhbHNvIGJ1aWxkCgkgIFJlbGVhc2VXaXRoRGVidWdJbmZvCgoyMDAxLTA3LTAyIDE2OjUyICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFdoZW4gb3V0cHV0dGluZyByZWxhdGl2ZQoJICBwYXRoIG9mIC5vLCB0aGUgcmVsYXRpdmUgcGF0aCBvZiB0aGUgc291cmNlIGZpbGUgbXVzdCBhbHNvIGJlCgkgIHdyaXR0ZW4gKG5vdCBmdWxsIHBhdGgpLgoKMjAwMS0wNy0wMiAxNjozMCAgbWlsbGVyanYKCgkqIFNvdXJjZS9jbUJ1aWxkTmFtZUNvbW1hbmQuY3h4OiBGSVg6IEJ1aWxkTmFtZSByZW1vdmVzIHBhdGggdG8KCSAgY29tcGlsZXIgYW5kIGNvbnZlcnRzIGFueSBpbGxlZ2FsIGNoYXJhY3RlcnMKCjIwMDEtMDctMDIgMTU6NTcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUJ1aWxkU2hhcmVkTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtQnVpbGRTaGFyZWRMaWJyYXJpZXNDb21tYW5kLmg6IEVOSDogUmVtb3ZlZCBkZXByZWNhdGVkIGNvbW1hbmQKCSAgY29tcGxldGVseS4KCjIwMDEtMDctMDIgMTU6MzggIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BXcml0ZXIuaCwgY21EU1dXcml0ZXIuY3h4LCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZS5oLCBjbVRhcmdldC5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3Igc2VsZWN0aW9uIG9mCgkgIHN0YXRpYy9zaGFyZWQgYnVpbGQgb24gYSBwZXItbGlicmFyeSBiYXNpcy4KCjIwMDEtMDctMDIgMTQ6MzggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IGJldHRlciBhcmcgc3VwcG9ydAoKMjAwMS0wNy0wMiAxNDowMyAgYmVyawoKCSogU291cmNlLzogY21WVEtXcmFwSmF2YUNvbW1hbmQuaCwgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5oLAoJICBjbVZUS1dyYXBUY2xDb21tYW5kLmg6IFNob3VsZCBub3QgYmUgaW5oZXJpdGVkLgoKMjAwMS0wNy0wMiAxNDowMyAgYmVyawoKCSogU291cmNlLzogY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6IEJldHRlciBlcnJvciBjaGVja2luZy4KCjIwMDEtMDctMDIgMTQ6MDIgIGJlcmsKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogV3JvbmcgcGxhY2UgZm9yIGZvdXQKCjIwMDEtMDYtMjkgMTY6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogYmV0dGVyIGNvbmZpZ3VyZSBmaWxlIGNvbW1hbmQKCjIwMDEtMDYtMjkgMTY6MDYgIG5vYm9keQoKCSogQ01ha2VMaXN0cy50eHQ6IGFkZGVkIGxvZ28KCjIwMDEtMDYtMjkgMDk6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBtaW5vciBjb21waWxlIGZpeAoKMjAwMS0wNi0yOSAwOTozMCAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBUZW1wbGF0ZXMvY29uZmlndXJlLAoJICBUZW1wbGF0ZXMvY29uZmlndXJlLmluOiBCVUc6IGJyZWFrIHVwIENNQUtFX0FSIGludG8gcHJvZ3JhbSBhbmQKCSAgQVJHUwoKMjAwMS0wNi0yOCAxNzo0NSAgaG9mZm1hbgoKCSogY29uZmlndXJlLCBjb25maWd1cmUuaW4sIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgVGVtcGxhdGVzL2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbjogRU5IOiB2YXJpb3VzIGZpeGVzIHRvIGFsbG93IGJvb3RzdHJhcCBvbgoJICBzdW5vcyB3aXRoIENDCgoyMDAxLTA2LTI4IDE2OjQ1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21FbmFibGVUZXN0aW5nQ29tbWFuZC5jeHg6IGZpeGVkIERhcnQgaXNzdWUKCjIwMDEtMDYtMjggMTU6MjcgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogc2V0IHZhbHVlcyBpbiB0aGUgY2FjaGUgbm90CgkgIGp1c3QgdGhlIGN1cnJlbnQgbWFrZWZpbGUKCjIwMDEtMDYtMjggMTU6MTEgIGJlcmsKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4OiBVbmRlZmluZWQgc3ltYm9sCgoyMDAxLTA2LTI4IDE1OjA4ICBiZXJrCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBTcGVjaWFsIHJ1bGVzIGZvcgoJICBvdXQtb2YtcGFja2FnZSBzb3VyY2UgZmlsZXMuCgoyMDAxLTA2LTI4IDE0OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlTGlzdHMudHh0LAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LCBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwKCSAgRkxUS1Byb3BlcnR5TGlzdC5jeHg6IEJVRzogZml4IGZvciBzZ2kgY29tcGlsZXIKCjIwMDEtMDYtMjggMTQ6MzggIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy86IGNvbmZpZ3VyZSwgY29uZmlndXJlLmluOiBCVUc6IHBhc3MgZmxhZ3MgdG8gY29tcGlsZXIKCSAgZHVyaW5nIGNvbmZpZ3VyZQoKMjAwMS0wNi0yOCAxNDoyNyAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogY29uZmlndXJlLCBjb25maWd1cmUuaW46IEJVRzogcGFzcyBmbGFncyB0byBjb21waWxlcgoJICBkdXJpbmcgY29uZmlndXJlCgoyMDAxLTA2LTI4IDE0OjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Tb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBCVUc6IGZpbmQgZmlsZXMgaW4KCSAgc3ViZGlyZWN0b3JpZXMKCjIwMDEtMDYtMjggMTE6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogZml4IGZvciBzY29wZSBvbiBocAoKMjAwMS0wNi0yOCAxMTo0MCAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGNoZWNrIHNpemUgb2YgcGF0aCBlcnJvciwgSFAKCSAgZ2NvdW50IHByb2JsZW0KCjIwMDEtMDYtMjcgMTc6MTkgIGJlcmsKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHg6IEFkZGVkIHZhcmlhYmxlIGV4cGFuc2lvbi4KCjIwMDEtMDYtMjcgMTY6MTggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IHVwZGF0ZWQgdmVyc2lvbiB0byAwLjMKCjIwMDEtMDYtMjcgMTY6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IHVwZGF0ZWQgdmVyc2lvbiB0byAwLjIKCjIwMDEtMDYtMjcgMTY6MTQgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogZml4IGluc3RhbGwgd2hlbgoJICBleGVjdXRhYmxlIGFuZCBsaWIgcGF0aCBzZXQKCjIwMDEtMDYtMjcgMTU6NDIgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvQ01ha2VMaXN0cy50eHQsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtYWtlLmN4eCwgVGVtcGxhdGVzL2luc3RhbGwtc2g6IEVOSDogZml4IGluc3RhbGwgZm9yCgkgIGN5Z3dpbiwgYnVpbGQgY21ha2UgZnJvbSBjb25maWd1cmUKCjIwMDEtMDYtMjcgMTU6MTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgQlVHOiBDaGVjayBmb3IgYnVpbGRpbmcgc2hhcmVkIGxpYnJhcmllcyBzaG91bGQgcmVhZCBmcm9tIHRoZQoJICBtYWtlIGZpbGUncyBzZXR0aW5nLCBub3QgZGlyZWN0bHkgZnJvbSB0aGUgY2FjaGUuCgoyMDAxLTA2LTI3IDE1OjA5ICBraW5nCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IENoZWNrIGZvciBidWlsZGluZyBzaGFyZWQgbGlicmFyaWVzCgkgIHNob3VsZCByZWFkIGZyb20gbWFrZWZpbGUncyBzZXR0aW5nLCBub3QgZGlyZWN0bHkgZnJvbSB0aGUgY2FjaGUuCgoyMDAxLTA2LTI3IDEzOjE2ICBtYXJ0aW5rCgoJKiBDTWFrZS5ydGY6IHVwZGF0ZWQgZm9yIDAuMgoKMjAwMS0wNi0yNyAxMzoxMiAgbWFydGluawoKCSogU291cmNlLzogY21MaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbVN1YmRpckNvbW1hbmQuaDoKCSAgZG9jdW1lbnRhdGlvbiBjaGFuZ2UKCjIwMDEtMDYtMjcgMTI6MDkgIHBlcmVyYQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBVc2UgJHtNQUtFfSBpbnN0ZWFkIG9mCgkgIG1ha2UgZm9yIGRlcGVuZGVudCBsaWJyYXJ5IHJ1bGVzCgoyMDAxLTA2LTI3IDExOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Db21tYW5kcy5jeHg6IGFscGhhYmV0aXplZAoKMjAwMS0wNi0yNyAxMTozNSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogYWRkZWQgaGVscCBvcHRpb25zCgoyMDAxLTA2LTI3IDA5OjE3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21ha2V0ZXN0LmN4eCwgY21ha2V0ZXN0LmguaW46IG1pbm9yCgkgIGZpeGVzIHRvIHRlc3RpbmcKCjIwMDEtMDYtMjcgMDk6MTYgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogbW9kIHRvIHRoZSB0ZXN0aW5nCgoyMDAxLTA2LTI3IDA5OjE2ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dDogYWRkZWQgZGVwZW5kZW5jaWVzIGZvciB0ZXN0aW5nCgoyMDAxLTA2LTI2IDE2OjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHA6IEVOSDogY29udmVydCB0byB1bml4IHNsYXNoZXMKCSAgb24gYnJvd3NlLCByZW1vdmUgZm9udCBhbmQgY29sb3IganVuawoKMjAwMS0wNi0yNiAxNjoxOSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmRzcDogQlVHOiBjaGFuZ2UgdG8gZG9zIG1vZGUKCjIwMDEtMDYtMjYgMTM6NDEgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRGFydC5jbWFrZTogdXBkYXRlIGZvciBDTWFrZSBjaGFuZ2VzCgoyMDAxLTA2LTI2IDEzOjIzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsIGNtQnVpbGRDb21tYW5kLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OiBtb2RpZmllZCBob3cgcGF0aHMgYXJlIGVzY2FwZWQsIGFkZGVkCgkgIGRlcGVuZHMKCjIwMDEtMDYtMjYgMTA6MDEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5jeHgsCgkgIGNtQWRkRGVwZW5kZW5jaWVzQ29tbWFuZC5oLCBjbUNvbW1hbmRzLmN4eDogYWRkZWQgYWRkCgkgIGRlcGVuZGVuY2llcyBjb21tYW5kCgoyMDAxLTA2LTI2IDA5OjU1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cC5yYywgQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIENNYWtlU2V0dXBEaWFsb2cuaDogYmV0dGVyIEdVSSByZXNpemUgYW5kIGNvbWJvIGJveCBmaXhlcwoKMjAwMS0wNi0yNSAxMzozNCAgbWlsbGVyanYKCgkqIFNvdXJjZS86IGNtQnVpbGROYW1lQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmN4eDogRklYOgoJICBhZGRlZCBBZGREZWZpbml0aW9uKCkgdG8gc3RvcmUgc2l0ZSBuYW1lIGFuZCBidWlsZCBuYW1lIGluCgkgIG1ha2VmaWxlLiAgQWxzbyBzdHJpcHBlZAl3aGl0ZSBzcGFjZSBmcm9tIHRoZSByZXN1bHQgb2YKCSAgaG9zdG5hbWUuCgoyMDAxLTA2LTI1IDEwOjU5ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dDogbWFkZSBjbWFrZSB3cml0ZSBpdHMgZXhlY3MgaW50byBDTWFrZS9Tb3VyY2UKCjIwMDEtMDYtMjIgMTQ6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogc2hhcmVkIGxpYnJhcmllcyBzaG91bGQKCSAgbm90IGRlcGVuZCBvbiBvdGhlciBzaGFyZWQgbGlicmFyaWVzLCB0aGV5IGdldCByZWxpbmtlZCB0b28KCSAgb2Z0ZW4uCgoyMDAxLTA2LTIyIDE0OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogcHV0IGJhY2sgc3RkaW8uaCB0byBnZXQgc3ByaW50ZgoKMjAwMS0wNi0yMiAxNDoyMyAgYmlkZGkKCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eDogRVJSOiBTZXJpb3VzIHByb2JsZW1zIHdpdGggbXkgQ1ZTLiBIb3cgZGlkCgkgIHRoaXMgZ2V0IGNvbW1pdHRlZD8KCjIwMDEtMDYtMjIgMTI6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBXcm90ZSBjb3JyZWN0IGltcGxlbWVudGF0aW9uIG9mCgkgIGNtQ29weUZpbGUuCgoyMDAxLTA2LTIyIDEyOjE4ICBraW5nCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IEZpeGVkIGdlbmVyYXRpb24gb2YgY01ha2VSb290IGluIG9uZSBjYXNlLgoKMjAwMS0wNi0yMiAxMjoxOCAga2luZwoKCSogU291cmNlL2NtU3RhbmRhcmRJbmNsdWRlcy5oOiBFTkg6IEFkZGVkIHN0cmluZy5oIGluY2x1ZGUuCgoyMDAxLTA2LTIyIDEyOjE3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVSUjogUmVtb3ZlZCBzdHJheSBzdGFuZGFyZCBoZWFkZXIKCSAgaW5jbHVkZS4gIFRoZXkgc2hvdWxkIGJlIGFkZGVkIHRvIGNtU3RhbmRhcmRJbmNsdWRlcy5oCgoyMDAxLTA2LTIyIDEyOjE3ICBraW5nCgoJKiBTb3VyY2UvY21JbmNsdWRlQ29tbWFuZC5jeHg6IEJVRzogQWRkZWQgbWlzc2luZyBuZXdsaW5lIGluIGVycm9yCgkgIG1lc3NhZ2UuCgoyMDAxLTA2LTIyIDExOjMyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IHJlbW92ZWQgc3RyaWNtcAoKMjAwMS0wNi0yMiAxMToyOCAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBlc2NhcGUgcXVvdGVzIG9uIGNtYWtldGVzdC5oLmluCgoyMDAxLTA2LTIyIDExOjE1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oOgoJICBhZGRlZCBlc2NhcGUgcXVvdGVzIG9wdGlvbgoKMjAwMS0wNi0yMiAxMToxNCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogYWRkZWQgZXNjYXBlIHF1b3RlcyBvcHRpb24KCSAgaW4gcmVwbGFjZSBzdHJpbmdzCgoyMDAxLTA2LTIyIDEwOjIxICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBhZGRlZCBlc2NhcGUgcXVvdGUKCSAgbWV0aG9kCgoyMDAxLTA2LTIyIDA5OjU4ICBiaWRkaQoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtU291cmNlRmlsZXNSZW1vdmVDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlbW92ZUNvbW1hbmQuaDogRU5IOiBBZGRlZCBuZXcgY29tbWFuZAoJICBTT1VSQ0VfRklMRVNfUkVNT1ZFIHdoaWNoIGNhbiBiZSB1c2VkIHRvIHRha2UgZmlsZXMgb3V0IG9mIHRoZQoJICBidWlsZC4gRXNwZWNpYWxseSB1c2VmdWwgd2hlbiBjZXJ0YWluIGNvbXBpbGVycyBjaG9rZSBvbiB0aGUgb2RkCgkgIGZpbGUuCgoyMDAxLTA2LTIyIDA5OjQ3ICBiaWRkaQoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGRlZAoJICBSZW1vdmVTb3VyY2UoLi4uKSB0byBjb21wbGVtZW50IEFkZFNvdXJjZS4gTmV3IGNvbW1hbmQKCSAgU09VUkNFX0ZJTEVTX1JFTU9WRSB1c2VzIGl0IGFuZCBjYW4gYmUgdXNlZCB0byB0YWtlIGZpbGVzIG91dCBvZgoJICB0aGUgYnVpbGQKCjIwMDEtMDYtMjIgMDk6MjcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbWFrZXRlc3QuY3h4OiBuYW1lc3BhY2UgaXNzdWVzCgoyMDAxLTA2LTIxIDE3OjU1ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21EU1dXcml0ZXIuY3h4OiBhbGxvdyBubyBuYW1lIHByb2plY3QKCjIwMDEtMDYtMjEgMTc6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dDogYmV0dGVyIHRlc3RpbmcKCjIwMDEtMDYtMjEgMTc6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IGFkZGUgY2hhbmdlRGlyZWN0b3J5CgoyMDAxLTA2LTIxIDE3OjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbWFrZXRlc3QuY3h4LCBjbWFrZXRlc3QuaC5pbjogbmV3IHRlc3QgZHJpdmVyCgoyMDAxLTA2LTIxIDE3OjUyICBtYXJ0aW5rCgoJKiBUZXN0cy9TaW1wbGUvOiBDTWFrZUxpc3RzLnR4dCwgc2ltcGxlLmN4eDogbmV3IHRlc3RzCgoyMDAxLTA2LTIxIDE3OjQxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBCVUc6IGZpeCBmb3IgdW5peAoKMjAwMS0wNi0yMSAxNzoyNSAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBjbGVhbiB1cAoKMjAwMS0wNi0yMSAxNzoyMCAgaG9mZm1hbgoKCSogU291cmNlL2NtYWtlLmN4eDogRU5IOiBsb29rIGluIHRoZSBQUkVGSVggZGlyIGZvciB0aGUgbW9kdWxlcwoKMjAwMS0wNi0yMSAxNjozNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21Db25maWd1cmUuY21ha2UuaC5pbiwgY21ha2UuY3h4OiBFTkg6IGJldHRlciBhYmlsaXR5CgkgIHRvIGZpbmQgY21ha2UgcHJvZ3JhbQoKMjAwMS0wNi0yMSAxNTo1NyAgbWFydGluawoKCSogVGVtcGxhdGVzL0NNYWtlTGlzdHMudHh0OiBtaW5vciBpbnN0YWxsIGZpeAoKMjAwMS0wNi0yMSAxNTo1NCAgbWFydGluawoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogYmV0dGVyIHBlcm1pc3Npb24gaGFuZGxpbmcKCjIwMDEtMDYtMjEgMTU6MDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLCBjbU1ha2VEZXBlbmQuY3h4LAoJICBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEV4dGVuZGVkCgkgIElOQ0xVREVfUkVHVUxBUl9FWFBSRVNTSU9OIHRvIGFsbG93IHNlbGVjdGl2ZSBjb21wbGFpbnRzIGFib3V0CgkgIG1pc3NpbmcgZGVwZW5kZW5jaWVzLgoKMjAwMS0wNi0yMSAxNTowMiAga2luZwoKCSogU291cmNlL0NNYWtlTGlzdHMudHh0OiBFTkg6IEFkZGVkIEJVSUxEX0ZMVEtfR1VJIG9wdGlvbiAoZGVmYXVsdHMKCSAgdG8gT04pLgoKMjAwMS0wNi0yMSAxMzo0OCAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaXN0cy50eHQsIGNtU291cmNlRmlsZS5jeHgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oOgoJICBCVUc6IGZpeCBib290c3RyYXAgYnVpbGQgb24gdW5peAoKMjAwMS0wNi0yMSAxMjo0MyAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHgsCgkgIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4LCBGTFRLUHJvcGVydHlJdGVtUm93Lmg6IEVOSDogVXBkYXRlIHRoZQoJICBjYWNoZU1hbmFnZXIgZnJvbSB0aGUgR1VJIGFmdGVyIGVhY2ggY2FsbGJhY2suICAgICAgIE9ubHkgbG9hZAoJICB0aGUgY2FjaGUgZnJvbSBkaXNrIGlmIHRoZSBiaW5hcnkgcGF0aCBoYXMgY2hhbmdlZC4KCjIwMDEtMDYtMjEgMTI6MzEgIGhvZmZtYW4KCgkqIENNYWtlTGlzdHMudHh0OiBFTkg6IGFkZCBpbmNsdWRlIHJlZ2V4cAoKMjAwMS0wNi0yMSAxMjoxOSAgbWFydGluawoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IGFkZGVkIGluc3RhbGwgdGFyZ2V0CgoyMDAxLTA2LTIxIDEyOjAxICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgTWFrZWZpbGUuaW4sIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBpbnN0YWxsLXNoLAoJICBNb2R1bGVzL0NNYWtlTGlzdHMudHh0LCBTb3VyY2UvY21JbnN0YWxsRmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZUxpc3RzLnR4dCwgVGVtcGxhdGVzL2luc3RhbGwtc2g6IGJldHRlciBpbnN0YWxsCgkgIHN1cHBvcnQKCjIwMDEtMDYtMjEgMTA6NTggIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogQlVHOiByZW1vdmUgcXVvdGVzCgoyMDAxLTA2LTIxIDEwOjM2ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUluY2x1ZGVDb21tYW5kLmN4eCwgY21JbmNsdWRlQ29tbWFuZC5oOiBFTkg6IGFkZAoJICBvcHRpb25hbCBpbmNsdWRlIGFuZCBvbmx5IGFsbG93IG9uZSBmaWxlIHBlciBJTkNMVURFCgoyMDAxLTA2LTIxIDEwOjE3ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHg6IEVOSDogSU5URVJOQUwKCSAgcHJvcGVydGllcyBhcmUgbm90IGRpc3BsYXkgYW55IGxvbmdlciBpbiB0aGUgR1VJCgoyMDAxLTA2LTIxIDA5OjU2ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4OiBFTkg6IFRoZSBjYWNoZSBpcyBub3QKCSAgc2F2ZWQgbm93IGFmdGVyIGV2ZXJ5IG1vZGlmaWNhdGlvbiBvZiB0aGUgR1VJCgoyMDAxLTA2LTIxIDA5OjQ1ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5jeHg6IEVOSDogQ2xlYXJpbmcgYW5kIHJlZHJhd2luZyB0aGUgcHJvcGVydHkKCSAgbGlzdCBhZnRlciBhIGJ1aWxkIHRvIGxvYWQgdGhlIG5ldyBjYWNoZS4KCjIwMDEtMDYtMjEgMDg6NDEgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwgRkxUS1Byb3BlcnR5SXRlbVJvdy5oLAoJICBGTFRLUHJvcGVydHlMaXN0LmN4eCwgRkxUS1Byb3BlcnR5TGlzdC5oOiBFTkg6IFByb3BlcnR5Um93cyBoYXZlCgkgIG5vdyBhIHJlZmVyZW5jZSB0byBDTWFrZVNldHVwR1VJIGFuZCBzYXZlIHRoZSBjYWNoZQkgICBhdCBlYWNoCgkgIGNhbGxiYWNrIGFjdGlvbgoKMjAwMS0wNi0yMSAwNzozNyAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlTGlzdHMudHh0LCBDTWFrZVNldHVwR1VJLmN4eCwKCSAgQ01ha2VTZXR1cEdVSS5mbCwgQ01ha2VTZXR1cEdVSS5oLAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LCBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5oOiBFTkg6IFByb3BlcnR5TmFtZUJ1dHRvbiB3YXMgcmVtb3ZlZC4KCSAgUHJvcGVydHlSb3cgbWFuYWdlcyBhbGwgdGhlIGNhbGxiYWNrcyBub3cKCjIwMDEtMDYtMjEgMDc6MzUgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBGTFRLUHJvcGVydHlOYW1lQnV0dG9uV2l0aEhlbHAuaCwKCSAgRkxUS1Byb3BlcnR5TmFtZUJ1dHRvbldpdGhIZWxwLmN4eDogUmVtb3ZlZDogbm93IHRoZSBoZWxwIHN0cmluZwoJICBpcyBtYW5hZ2VkIGJ5IHRoZSBQcm9wZXJ0eVJvdyBjbGFzcwoKMjAwMS0wNi0yMCAxNzowMyAgaG9mZm1hbgoKCSogU291cmNlLzogRkxUS0RpYWxvZy9DTWFrZUxpc3RzLnR4dCwgTUZDRGlhbG9nL0NNYWtlTGlzdHMudHh0OgoJICBFTkg6IGFkZCBDTWFrZVNldHVwIGFzIGEgdGFyZ2V0CgoyMDAxLTA2LTIwIDE2OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvQ01ha2VMaXN0cy50eHQsIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogYm9vdCBzdHJhcCBtZmMgZ3VpCgkgIGFuZCBzdXBwb3J0IGZvciBNRkMKCjIwMDEtMDYtMjAgMTM6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtQ29uZmlndXJlLmNtYWtlLmguaW4sCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4LCBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9jbWFrZS5jeHgsIFNvdXJjZS9GTFRLRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIFRlbXBsYXRlcy9jb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEVOSDogZml4IGNtYWtlIHNvIGl0IGNhbiBib290IHN0cmFwCgkgIGl0c2VsZiBiZXR0ZXIKCjIwMDEtMDYtMTkgMTY6MjkgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZEZMVEsuY21ha2U6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDYtMTkgMTY6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGlzdHMudHh0LCBGTFRLRGlhbG9nL0NNYWtlTGlzdHMudHh0LAoJICBGTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHgsCgkgIEZMVEtEaWFsb2cvRkxUS1Byb3BlcnR5TmFtZUJ1dHRvbldpdGhIZWxwLmN4eDogRU5IOiBidWlsZCBmbHRrCgkgIGNtYWtlIG9uIHVuaXggd2l0aCBib290c3RyYXAKCjIwMDEtMDYtMTkgMTY6MDUgIGtpbmcKCgkqIE1ha2VmaWxlLmluOiBCVUc6IEV4ZWN0dWFibGUgaW5zdGFsbGF0aW9uIG11c3Qgc2V0IHBlcm1pc3Npb25zIHRvCgkgIDc1NSBpbiBjYXNlIGluc3RhbGxlciBoYXMgYSB1bWFzayBsaWtlIDAwNy4KCjIwMDEtMDYtMTkgMTU6NTAgIGtpbmcKCgkqIFNvdXJjZS86IGNtQnVpbGRTaGFyZWRMaWJyYXJpZXNDb21tYW5kLmN4eCwgY21ha2UuY3h4OiBFTkg6IENNYWtlCgkgIG5vdyBhbHdheXMgYWRkcyB0aGUgQlVJTERfU0hBUkVEX0xJQlMgY2FjaGUgZW50cnkuICBUaGUKCSAgQlVJTERfU0hBUkVEX0xJQlJBUklFUyBjb21tYW5kIHRoYXQgdXNlZCB0byBiZSB1c2VkIGlzIG5vdwoJICBkZXByZWNhdGVkLgoKMjAwMS0wNi0xOSAxNTo0OSAgaG9mZm1hbgoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VMaXN0cy50eHQ6IEVOSDogYWRkIGJvb3RzdHJhcCBzdXBwb3J0IGZvcgoJICBidWlsZGluZyBmbHRrCgoyMDAxLTA2LTE5IDE1OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZUxpc3RzLnR4dCwgRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IGFkZCBib290c3RyYXAgc3VwcG9ydCBmb3IKCSAgYnVpbGRpbmcgZmx0awoKMjAwMS0wNi0xOSAxNDozMiAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlRGlhbG9nLmgsIENNYWtlU2V0dXAucmMsCgkgIENNYWtlU2V0dXBEaWFsb2cuY3BwLCBDTWFrZVNldHVwRGlhbG9nLmgsIHJlc291cmNlLmg6IEVOSDogYWRkCgkgIHJlc2l6ZSBhYmlsaXR5IHRvIGRpYWxvZyBhbmQgZml4IHRhYiBzdG9wIG9yZGVycwoKMjAwMS0wNi0xOSAxMjowMyAga2luZwoKCSogU291cmNlLzogY21DYWJsZUNsb3NlTmFtZXNwYWNlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbG9zZU5hbWVzcGFjZUNvbW1hbmQuaCwgY21DYWJsZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlQ29tbWFuZC5oLCBjbUNhYmxlRGF0YS5jeHgsIGNtQ2FibGVEYXRhLmgsCgkgIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmN4eCwgY21DYWJsZURlZmluZVNldENvbW1hbmQuaCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmgsIGNtQ2FibGVJbnN0YW50aWF0ZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmgsIGNtQ2FibGVPcGVuTmFtZXNwYWNlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVPcGVuTmFtZXNwYWNlQ29tbWFuZC5oLCBjbUNhYmxlUGFja2FnZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlUGFja2FnZUNvbW1hbmQuaCwgY21DYWJsZVBhY2thZ2VFbnRyeUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlUGFja2FnZUVudHJ5Q29tbWFuZC5oLCBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5oLCBjbUNhYmxlV3JhcENvbW1hbmQuY3h4LAoJICBjbUNhYmxlV3JhcENvbW1hbmQuaCwgY21Db21tYW5kcy5jeHg6IEVOSDogUmVtb3Zpbmcgb2xkLXN0eWxlCgkgIGNhYmxlIGNvbW1hbmRzIHJlbGF0ZWQgdG8gdGhlIGluc3RhbnRpYXRpb24gZnVuY3Rpb25hbGl0eSB3aGljaAoJICBoYXMgbm93IGJlZW4gcmVtb3ZlZCBmcm9tIGNhYmxlLgoKMjAwMS0wNi0xOSAxMjowMSAga2luZwoKCSogU291cmNlL2NtT3V0cHV0UmVxdWlyZWRGaWxlc0NvbW1hbmQuY3h4OiBFUlI6IFJlbW92ZWQgdW51c2VkCgkgIHZhcmlhYmxlLgoKMjAwMS0wNi0xOSAwNzo0MSAgbWlsbGVyanYKCgkqIFNvdXJjZS86IGNtQWRkVGVzdENvbW1hbmQuY3h4LCBjbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eDogRU5IOgoJICBDaGFuZ2VkIGdlbmVyYXRlZCBmaWxlbmFtZSB0byBEYXJ0VGVzdGZpbGUudHh0CgoyMDAxLTA2LTE4IDE3OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogdXNlIHBjbG9zZSBub3QgZmNsb3NlCgoyMDAxLTA2LTE4IDE2OjU0ICBwZXJlcmEKCgkqIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmN4eDogRU5IOiBMSU5LX0xJQlJBUklFUyhhYmMpIHdpbGwKCSAgYXV0b21hdGljYWxseSBhZGQgdGhlIHBhdGggdG8gYWJjIHRvIHRoZSBsaW5rIGRpcmVjdG9yaWVzLCBpZiB0aGUKCSAgcGF0aCBpcyBrbm93bi4KCjIwMDEtMDYtMTggMTU6MzUgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogcmVtb3ZlIHVudXNlZAoKMjAwMS0wNi0xOCAxNTozMiAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBjcmVhdGUgZGlyZWN0b3JpZXMgaW4KCSAgdGhlIHJpZ2h0IHBsYWNlCgoyMDAxLTA2LTE4IDE1OjMxICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuY3h4OiBFTkg6IG1vdmUgRVhFQ1VUQUJMRV9PVVRQVVRfUEFUSCBhbmQKCSAgTElCUkFSWV9PVVRQVVRfUEFUSCBpbml0aWFsIGNyZWF0aW9uIHRvIGFmdGVyIHRoZSBDTWFrZUxpc3RzLnR4dAoJICBmaWxlcyBoYXZlIGJlZW4gcGFyc2VkCgoyMDAxLTA2LTE4IDEzOjE2ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0RhcnQuY21ha2U6IG91dCBvZiBzb3VyY2UgZGFydCBzdXBwb3J0CgoyMDAxLTA2LTE1IDE3OjU3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IGRvIG5vdCBhZGQgYW55dGhpbmcgZnJvbQoJICB0aGUgY3VycmVudCBkaXJlY3RvcnkgdG8gdGhlIGRlcGVuZHMKCjIwMDEtMDYtMTUgMTA6MzUgIHBlcmVyYQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBmaXhlZCBzbyB0aGF0IGVtcHR5CgkgIGxpYnJhcnkgcGF0aHMgYXJlIGlnbm9yZWQKCjIwMDEtMDYtMTUgMDc6NTEgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uaCwgRkxUS0RpYWxvZy5jeHgsCgkgIEZMVEtQcm9wZXJ0eU5hbWVCdXR0b25XaXRoSGVscC5jeHg6IEVOSDogQWJzb2x1dGUgcGF0aCB0byBjbWFrZQoJICByZXNvbHZlZAoKMjAwMS0wNi0xNSAwNzo0OSAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9NYWtlZmlsZS5pbjogRU5IOiBHZXR0aW5nIGhlYWRlcnMgYW5kIGxpYnMgZm9yCgkgIEZMVEsgYW5kIE9wZW5HTAoKMjAwMS0wNi0xNCAxNzowNiAgYmlkZGkKCgkqIFNvdXJjZS9jbVNvdXJjZUZpbGUuY3h4OiBFUlI6IGFsbG93ICouY3BwIGFzIHdlbGwgYXMgKi5jeHggZXRjCgkgIGV0YwoKMjAwMS0wNi0xNCAxNDozMiAgYmVyawoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwgRkxUS1Byb3BlcnR5SXRlbVJvdy5oLAoJICBGTFRLUHJvcGVydHlMaXN0LmN4eCwgRkxUS1Byb3BlcnR5TmFtZUJ1dHRvbldpdGhIZWxwLmN4eCwKCSAgRkxUS1Byb3BlcnR5TmFtZUJ1dHRvbldpdGhIZWxwLmg6IEluY2x1ZGUgZGlyZWN0b3J5IG5hbWVzIGFyZQoJICBDYXNlIHNlbnNpdGl2ZSBpbiBVbml4LgoKMjAwMS0wNi0xNCAxMTo0NSAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGliLmRzcDogYWRkZWQgbWFrZSBkZXBlbmQgb24gd2luMzIKCjIwMDEtMDYtMTQgMTA6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGl0IHNvIHRoYXQgaWYgYQoJICBNYWtlZmlsZSBpcyBvdXQgb2YgZGF0ZSBmb3Igc29tZSByZWFzb24sIGl0IGlzIG9ubHkgYnVpbHQgb25jZSwKCSAgaXQgd2FzIGRvaW5nIGl0IHR3aWNlLgoKMjAwMS0wNi0xNCAwOToxMCAgbWFydGluawoKCSogQ01ha2VMaXN0cy50eHQsIERhcnRDb25maWcuY21ha2U6IG1vZGlmaWVkIHRlc3RpbmcKCjIwMDEtMDYtMTMgMTc6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IHNvIGl0IGRvZXMgbm90IGp1bXAKCSAgaW50byB0aGUgY3VycmVudCBkaXJlY3RvcnkgZm9yIGluaXRhbCB0YXJnZXQgYnVpbGRzCgoyMDAxLTA2LTEzIDE3OjAzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIGNtYWtlLmN4eDogRU5IOiBmaXggRVhFQ1VUQUJMRV9PVVRQVVRfUEFUSCBhbmQKCSAgTElCUkFSWV9PVVRQVVRfUEFUSCBmb3IgdW5peAoKMjAwMS0wNi0xMyAxNjoxNSAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kRGFydC5jbWFrZTogdXNlZCB0byBmaW5kIHRoZSBkYXJ0IHRlc3Rpbmcgc3lzdGVtCgoyMDAxLTA2LTEzIDE0OjQ5ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dDogbWlub3IgZGFydCBjaGFuZ2UKCjIwMDEtMDYtMTMgMTM6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtVGFyZ2V0LmN4eCwgY21UYXJnZXQuaDogZHVoCgoyMDAxLTA2LTEzIDEzOjQ5ICBtYXJ0aW5rCgoJKiBDTWFrZUxpc3RzLnR4dCwgU291cmNlL2NtVGFyZ2V0LmN4eCwgU291cmNlL2NtVGFyZ2V0Lmg6IG1pbm9yIGN2cwoJICB3ZWIgY2hhbmdlQ01ha2VMaXN0cy50eHQKCjIwMDEtMDYtMTMgMTA6MjggIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eDogRU5IOiBTZWFyY2gKCSAgZm9yIGNtYWtlIGV4ZWN1dGFibGUgZnVsbCBwYXRoIGFkZGVkICh3aW5kb3cvdW5peCkKCjIwMDEtMDYtMTMgMDA6MTYgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5oLCBGTFRLUHJvcGVydHlMaXN0LmN4eCwgRkxUS1Byb3BlcnR5TGlzdC5oLAoJICBGTFRLUHJvcGVydHlOYW1lQnV0dG9uV2l0aEhlbHAuY3h4LAoJICBGTFRLUHJvcGVydHlOYW1lQnV0dG9uV2l0aEhlbHAuaDogRU5IOiBBZGRlZCBwb3B1cCBtZW51IGZvcgoJICByZW1vdmluZyBhIHByb3BlcnR5LglTb21lIHN0eWxlIGNoYW5nZXMKCjIwMDEtMDYtMTIgMTg6NDQgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBGTFRLUHJvcGVydHlJdGVtUm93LmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5oLCBNYWtlZmlsZS5pbjogRU5IOiBBZGRlZCBoZWxwIGJsb2JzIHRoYXQKCSAgcG9wdXAgd2hlbiB0aGUgbW91c2UgaXMgbGVmdCBvbiB0b3Agb2YgdGhlCSAgcHJvcGVydHkgbmFtZQoKMjAwMS0wNi0xMiAxODo0MyAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IEZMVEtQcm9wZXJ0eU5hbWVCdXR0b25XaXRoSGVscC5jeHgsCgkgIEZMVEtQcm9wZXJ0eU5hbWVCdXR0b25XaXRoSGVscC5oOiAgQ2xhc3MgZGVyaXZlZCBmcm9tIEZsX0J1dHRvbgoJICB3aXRoIGFkZGVkIGhlbHAgYmxvYnMKCjIwMDEtMDYtMTIgMTQ6MTUgIHBlcmVyYQoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgVGVtcGxhdGVzL2NvbmZpZ3VyZSwKCSAgVGVtcGxhdGVzL2NvbmZpZ3VyZS5pbjogQlVHOiBTSExJQl9MSU5LIHdhcyBiZWluZyB1c2VkIHdoZW4KCSAgbGlua2luZyBzdGF0aWMgZXhlY3V0YWJsZXMuIE1pc3NpbmcgY29tbWEgaW4gUlVOVElNRV9GTEFHIGZvcgoJICBJUklYLiAgRU5IOiBVc2VyIHN1cHBsaWVkIFNITElCX0NGTEFHUyAoLWZQSUMsIGV0Yykgd2lsbCBvdmVycmlkZQoJICBjb25maWd1cmUgZGV0ZWN0ZWQgZmxhZ3MKCjIwMDEtMDYtMTIgMTM6MzAgIG1hcnRpbmsKCgkqIENNYWtlTGlzdHMudHh0LCBTb3VyY2UvQ01ha2VMaXN0cy50eHQ6IHN1cHBvcnQgdGVzdGluZwoKMjAwMS0wNi0xMiAxMjoyMiAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBDTWFrZSdzIGNvbmZpZ3VyZSBuZWVkcwoJICB0byBydW4gd2l0aCB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXMgdGhlIHByb2plY3QncyBiaW5hcnkKCSAgZGlyZWN0b3J5LgoKMjAwMS0wNi0xMiAxMjoyMCAga2luZwoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJLmgsCgkgIENNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5jeHgsIENNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5oOgoJICBFUlI6IE5lZWRlZCB2aXJ0dWFsIGRlc3RydWN0b3IgdG8gY29ycmVzcG9uZCB0byB2aXJ0dWFsCgkgIGZ1bmN0aW9ucy4gIEFsc28gYWRkZWQgc2V2ZXJhbCBzdGQ6OiBxdWFsaWZpZXJzIHRvIHN0cmluZy4KCjIwMDEtMDYtMTIgMTE6NTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtYWtlbWFpbi5jeHg6IGNtYWtlIGRvZXMgbm90IHJlcXVpcmUgdHdvIGFyZ3VtZW50cwoKMjAwMS0wNi0xMiAxMToxMiAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiByZW1vdmVkIG9sZCBhZGRlZCBuZXcKCjIwMDEtMDYtMTIgMTE6MDggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbW1hbmRzLmN4eDogcmVtb3ZlZCBvbGQgYWRkZWQgbmV3CgoyMDAxLTA2LTEyIDExOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU91dHB1dFJlcXVpcmVkRmlsZXNDb21tYW5kLmN4eCwKCSAgY21PdXRwdXRSZXF1aXJlZEZpbGVzQ29tbWFuZC5oOiBhZGRlZCBuZXcgY29tbWFuZAoKMjAwMS0wNi0xMiAxMTowOCAgbWFydGluawoKCSogU291cmNlLzogY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5jeHgsCgkgIGNtQ29uZmlndXJlRmlsZU5vQXV0b2NvbmYuaCwgY21UZXN0c0NvbW1hbmQuY3h4LAoJICBjbVRlc3RzQ29tbWFuZC5oOiByZW1vdmVkIG9sZCBjb21tYW5kcwoKMjAwMS0wNi0xMiAxMDo1OSAga2luZwoKCSogU291cmNlLzogY21NYWtlRGVwZW5kLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6CgkgIERlcGVuZGVuY3kgaGludHMgbXVzdCBiZSByZW1vdmVkIGJ5IHRoZSBtYWtlZmlsZSBnZW5lcmF0b3IgYmVmb3JlCgkgIGFkZGluZyB0aGUgZGVwZW5kZW5jaWVzIGdlbmVyYXRlZCBieSBjbU1ha2VEZXBlbmQuCgoyMDAxLTA2LTEyIDEwOjQ1ICBwZXJlcmEKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogVGhlcmUgd2FzIG5vIGRlcGVuZGVuY3kKCSAgZm9yIGxpYnJhcnkgdGFyZ2V0cyBvbiB0aGVpciByZXF1aXJlZCBsaWJyYXJpZXMuICAoSG9wZWZ1bGx5CgkgIHRoZXJlIGFyZW4ndCBhbnkgY3ljbGljIGRlcGVuZGVuY2llcyBmb3IgbGlicmFyaWVzLikKCSAgQ01BS0VfU0hMSUJfTElOSyBpcyBub3cgdXNlZCBmb3IgZXhlY3V0YWJsZSB0YXJnZXRzLgoKMjAwMS0wNi0xMiAwOTowMCAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlRGVwZW5kLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwgY21NYWtlRGVwZW5kLmN4eDogc29tZSBjbGVhbnVwIHRvIHRoZQoJICBtYWtlIGRlcGVuZCBwcm9jZXNzCgoyMDAxLTA2LTEyIDA4OjM0ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSS5jeHgsIENNYWtlU2V0dXBHVUkuZmwsCgkgIENNYWtlU2V0dXBHVUkuaCwgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmgsIEZMVEtQcm9wZXJ0eUl0ZW1Sb3cuY3h4OiBFTkg6CgkgIFBhdGhzIGFyZSBub3cgZXhwYW5kZWQgZm9yIGVudmlyb25tZW50IHZhcmlhYmxlcyBhbmQgbWFkZQoJICBhYnNvbHV0ZS4JICBUaGUgYmluYXJ5IGRpcmVjdG9yeSBpcyBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QKCSAgZXhpc3QuCgoyMDAxLTA2LTEyIDA4OjMxICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IFdJTjMyX0VYRUNVVEFCTEUgdGFyZ2V0cwoJICB3ZXJlIG5vdCBiZWluZyBpbnN0YWxsZWQgb24gdW5peCBwcm9wZXJseS4gIFRoZXkgYXJlIHN1cHBvc2VkIHRvCgkgIGJlIHRyZWF0ZWQganVzdCBsaWtlIGFueSBvdGhlciBFWEVDVVRBQkxFIHRhcmdldC4KCjIwMDEtMDYtMTIgMDg6MzAgIGtpbmcKCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEVSUjogaW50IC0+IHVuc2lnbmVkIGludC4KCjIwMDEtMDYtMTEgMjE6NTAgIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogRU5IOiBBZGRlZCB0aGUgcGF0aCB1c2VkIGluIFN1U2UgTGludXgKCSAgNy4xCgoyMDAxLTA2LTExIDE5OjE0ICBtaWxsZXJqdgoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBNb2RpZmllZCBmb3IgbmV3IERhcnQgc291cmNlIHRyZWUKCjIwMDEtMDYtMTEgMTg6MDAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtYWtlLmN4eCwgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBtaW5vciBmaXggaW4KCSAgZXJyb3IgY2hlY2tpbmcKCjIwMDEtMDYtMTEgMTc6MDkgIGtpbmcKCgkqIE1vZHVsZXMvRmluZFRDTC5jbWFrZTogRU5IOiBBZGRlZCBjaGVjayBmb3IgdGNsOC40IChhcyBhZ2FpbnN0CgkgIHRjbDg0KSwgdGNsOC4zLCB0Y2w4LjIsIGFuZCB0Y2w4LjAgd2hlbiBmaW5kaW5nIHRoZSBUQ0xfTElCUkFSWS4KCjIwMDEtMDYtMTEgMTY6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IGFkZGVkIHNvbWUgY29uc3QgdmVyc2lvbnMgb2YgZ2V0IG1ldGhvZHMKCjIwMDEtMDYtMTEgMTU6MzEgIG1pbGxlcmp2CgoJKiBNb2R1bGVzL1Rlc3RpbmcuY21ha2U6IENoYW5nZWQgVGVzdGluZy5jbWFrZSB0byBEYXJ0LmNtYWtlCgoyMDAxLTA2LTExIDE1OjI4ICBtaWxsZXJqdgoKCSogTW9kdWxlcy9EYXJ0LmNtYWtlOiBSZW5hbWUgVGVzdGluZy5jbWFrZSB0byBEYXJ0LmNtYWtlCgoyMDAxLTA2LTExIDEwOjE4ICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEJVRzogRml4ZWQgcmVndWxhciBleHByZXNzaW9uIHVzZWQgdG8KCSAgbWF0Y2ggcmVnaXN0cnkgZW50cmllcy4gIFRoZSBleHByZXNzaW9uIG5vdyBtYXRjaGVzIGV2ZXJ5dGhpbmcKCSAgYWZ0ZXIgYSBbSEtFWSB1bnRpbCB0aGUgZmlyc3QgJ10nIGlzIGVuY291bnRlcmVkLgoKMjAwMS0wNi0xMSAwMjoxMCAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4OiBFTkg6IFdhaXRpbmcKCSAgY3Vyc29yIGNvbG9yIHdlcmUgcmV2ZXJzZWQKCjIwMDEtMDYtMTEgMDE6MjAgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uaDogRU5IOiBDTWFrZSBpbnZva2F0aW9uIGlzIHdvcmtpbmcuCgoyMDAxLTA2LTEwIDIxOjM2ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmN4eCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmg6IEVOSDogQ2FjaGUgc2F2aW5nIGFkZGVkCgoyMDAxLTA2LTEwIDE4OjI3ICBpYmFuZXoKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRE9DOiBBZGRlZCBhIGNvbW1lbnQgYWJvdXQgdGhlIHJpc2sgb2YKCSAgdXNpbmcgdGVtcG5hbSBpbiBVbml4LCBhcyBvcHBvc2VkIHRvCSAgICB1c2luZyBta3N0ZW1wLgoKMjAwMS0wNi0xMCAxODoyNSAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUkuY3BwLAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3BwLCBGTFRLUHJvcGVydHlMaXN0LmNwcCwKCSAgRkxUS0RpYWxvZy5jcHA6ICAgICAgLmNwcCByZW5hbWVkIGFzIC5jeHgKCjIwMDEtMDYtMTAgMTg6MjMgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvRkxUS1Byb3BlcnR5SXRlbVJvdy5oOglDbGFzcyB0byBtYW5hZ2UKCSAgZXZlcnkgcm93IGluIHRoZSBHVUkgc2Nyb2xsaW5nLCBjb3JyZXNwb25kaW5nIHRvIGEKCSAgICAgICBzaW5nbGUgcHJvcGVydHkKCjIwMDEtMDYtMTAgMTg6MjMgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvTWFrZWZpbGUuaW46ICAgICAgVGVtcGxhdGUgZm9yIHRoZSBNYWtlZmlsZQoKMjAwMS0wNi0xMCAxODoyMSAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUkuY3h4LAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3h4LCBGTFRLRGlhbG9nLmN4eCwKCSAgRkxUS1Byb3BlcnR5SXRlbVJvdy5jeHgsIEZMVEtQcm9wZXJ0eUxpc3QuY3h4OiBFTkg6IGNwcCByZW5hbWVkCgkgIGN4eC4gQ29weSBvZiBkYXRhIHRvIGFuZCBmcm9tIHRoZSBHVUkgaXMgd29ya2luZwoKMjAwMS0wNi0xMCAxODoxOSAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUkuZmwsIENNYWtlU2V0dXBHVUkuaCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmgsIEZMVEtQcm9wZXJ0eUxpc3QuaDogRU5IOiBBZGRlZAoJICBGbF9UaWxlcyBhcyByb3cgZm9yIGhvbGRpbmcgcHJvcGVydHkgZGF0YS4gRGF0YSB0byBhbmQgZnJvbSB0aGUKCSAgR1VJIGlzIHdvcmtpbmcKCjIwMDEtMDYtMDkgMjA6NTQgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4OiBCVUc6IENoYW5nZWQgY3VzdG9tIGNvbW1hbmQKCSAgZ2VuZXJhdGlvbiB0byBub3QgdXNlIGZ1bGwgcGF0aCBvZiBvdXRwdXQgZmlsZSBmcm9tIGNhYmxlLgoKMjAwMS0wNi0wOCAxNDo0MCAga2luZwoKCSogU291cmNlLzogY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwgY21DYWJsZVdyYXBUY2xDb21tYW5kLmg6IEVOSDoKCSAgQWRkZWQgcHJvcGVyIHJlcXVlc3QgZm9yL2dlbmVyYXRpb24gb2YgQ0FCTEUsIEdDQ1hNTCwgYW5kCgkgIEdDQ1hNTF9GTEFHUyBjYWNoZSBlbnRyaWVzLiAgVGhpcyBhbHNvIGFsbG93ZWQgdGhlIGNvcnJlY3QKCSAgZ2VuZXJhdGlvbiBvZiBnY2N4bWwgcnVsZXMuCgoyMDAxLTA2LTA4IDE0OjM4ICBraW5nCgoJKiBTb3VyY2UvY21EU1BXcml0ZXIuY3h4OiBCVUc6IFJlbW92ZWQgZ2VuZXJhdGlvbiBvZiBzdHJheSAjIEJlZ2luCgkgIEN1c3RvbSBCdWlsZCBsaW5lLgoKMjAwMS0wNi0wOCAwMDoxOCAgcGVyZXJhCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIFRlbXBsYXRlcy9jb25maWd1cmUsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEVOSDogUnVudGltZSBsaWJyYXJ5IHNlYXJjaCBwYXRocyBjYW4gYmUKCSAgYWRkZWQgdG8gdGhlIGxpbmsgbGluZXMgZm9yIG9uIHNoYXJlZCBidWlsZHMuCgoyMDAxLTA2LTA3IDE2OjQ4ICBtYXJ0aW5rCgoJKiBDTWFrZS5wZGYuZ3o6IHJlcGxhY2VkIHdpdGggcGRmIHZlcnNpb24KCjIwMDEtMDYtMDcgMTY6NDUgIHdpbGwKCgkqIENNYWtlLnBkZjogdXBkYXRlZCBkb2NzCgoyMDAxLTA2LTA3IDE2OjM0ICBtYXJ0aW5rCgoJKiBDTWFrZS5kb2MuZ3o6IGNoZWNrZWQgaW4gcnRmIHZlcnNpb24KCjIwMDEtMDYtMDcgMTY6MjQgIG1hcnRpbmsKCgkqIENNYWtlLnJ0ZjogdXBkYXRlZCBkb2NzCgoyMDAxLTA2LTA3IDE0OjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21BZGRUZXN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUNhYmxlUGFja2FnZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLV3JhcEphdmFDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIFNvdXJjZS9jbWFrZS5jeHgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEVOSDogbW92ZSB1dGlsaXRpZXMgdG8KCSAgdGFyZ2V0cyBmcm9tIG1ha2VmaWxlLCBhbmQgYWRkIHZlcnNpb25pbmcgdG8gY2FjaGUKCjIwMDEtMDYtMDcgMTI6MjIgIGtpbmcKCgkqIFNvdXJjZS9jbUVuYWJsZVRlc3RpbmdDb21tYW5kLmN4eDogQlVHOiBFTkFCTEVfVEVTVElORyBjb21tYW5kCgkgIG1heSBuZWVkIHRvIGNyZWF0ZSBvdXRwdXQgZGlyZWN0b3J5IGJlZm9yZSB3cml0aW5nIHRoZQoJICBDTWFrZVRlc3RmaWxlIGludG8gaXQgc2luY2UgaXQgaXMgaW52b2tlZCBiZWZvcmUgdGhlIG1ha2VmaWxlCgkgIGdlbmVyYXRvciBydW5zLgoKMjAwMS0wNi0wNyAxMTozNiAgc2NvdHRpbQoKCSogU291cmNlL2NtRFNQV3JpdGVyLmN4eCwgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0RMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL0VYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL1V0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IGFkZGluZyBhICJSZWxlYXNlIHdpdGgKCSAgZGVidWdnaW5nIEluZm8iIGJ1aWxkIHRvIENNYWtlIGZvciBOVAoKMjAwMS0wNi0wNyAxMDoxNiAga2luZwoKCSogU291cmNlL2NtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IEVSUjogRml4ZWQgZ2VuZXJhdGlvbiBvZiBzb3VyY2UKCSAgbmFtZSBhbmQgZGlyZWN0b3J5IGZvciBjbVNvdXJjZUZpbGVzIG9mIGdlbmVyYXRlZCBUY2wgd3JhcHBlcgoJICBmaWxlcy4gIENoYW5nZWQgZXh0ZW5zaW9uIG9mIGdlbmVyYXRlZCBnY2MteG1sIGlucHV0IGMrKyBmaWxlIHRvCgkgIGJlIC5jYyBzbyB0aGF0IEdDQyB3aWxsIHJlY29nbml6ZSBpdCwgYnV0IE1zRGV2IHdpbGwgc3RpbGwgYWxsb3cKCSAgYSBjdXN0b20gY29tbWFuZCBvbiBpdC4KCjIwMDEtMDYtMDcgMDg6NTAgIG1pbGxlcmp2CgoJKiBTb3VyY2UvY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5jeHg6IEZJWDogQ2hhbmVkIGVycm9yIG1lc3NhZ2UKCSAgdG8gbWF0Y2ggY29tbWFuZAoKMjAwMS0wNi0wNiAxNjo0NSAga2luZwoKCSogU291cmNlL2NtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IEVOSDogQ2hhbmdlZCBnZW5lcmF0aW9uIG9mCgkgIGdjY3htbCBjb21tYW5kIHRvIHdyaXRlIG91dCBkZWZpbmUgYW5kIGluY2x1ZGUgZmxhZ3MgZXhwbGljaXRseQoJICBpbnN0ZWFkIG9mIHVzaW5nIENNQUtFX0NYWF9GTEFHUyBhbmQgSU5DTFVERV9GTEFHUyB2YXJpYWJsZXMuCgkgIFRoaXMgc2hvdWxkIGhlbHAgaXQgcnVuIHdoZW4gZ2NjeG1sIGlzIG5vdCB0aGUgY29tcGlsZXIgdGhhdCB3aWxsCgkgIGJ1aWxkIHRoZSBnZW5lcmF0ZWQgd3JhcHBlcnMuCgoyMDAxLTA2LTA2IDE2OjE0ICBtaWxsZXJqdgoKCSogU291cmNlL2NtQWRkVGVzdENvbW1hbmQuY3h4OiBGSVg6IEluaXRpYWxQYXNzKCkgc2VnIGZhdWx0IG9uCgkgIHN0ZDo6Y29weSBhbmQgRmluYWxQYXNzKCkgd2FzIG5vdCBhcHBlbmRpbmcgdG8gdGhlIGZpbGUKCjIwMDEtMDYtMDYgMTM6NTggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQWRkVGVzdENvbW1hbmQuY3h4LCBjbUFkZFRlc3RDb21tYW5kLmgsCgkgIGNtQ29tbWFuZHMuY3h4LCBjbUNvbmZpZ3VyZUZpbGVOb0F1dG9jb25mLmN4eCwKCSAgY21FbmFibGVUZXN0aW5nQ29tbWFuZC5jeHgsIGNtRW5hYmxlVGVzdGluZ0NvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21UZXN0c0NvbW1hbmQuY3h4OiBhZGRlZCBlbmFibGUKCSAgdGVzdGluZyBkZXByZWNhdGVkIHNvbWUgY29tbWFuZHMKCjIwMDEtMDYtMDYgMTM6NTUgIGhvZmZtYW4KCgkqIFNvdXJjZS9DTWFrZUxpYi5kc3A6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDYtMDYgMTM6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUE1ha2VmaWxlLmgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21EU1BXcml0ZXIuaCwgY21EU1dNYWtlZmlsZS5jeHgsIGNtRFNXTWFrZWZpbGUuaCwKCSAgY21EU1dXcml0ZXIuY3h4LCBjbURTV1dyaXRlci5oLCBjbU1TUHJvamVjdEdlbmVyYXRvci5jeHgsCgkgIGNtTVNQcm9qZWN0R2VuZXJhdG9yLmg6IEVOSDogcmVuYW1lIERTV01ha2VmaWxlIGFuZCBEU1BNYWtlZmlsZQoJICB0byBEU1dXcml0ZXIgYW5kIERTUFdyaXRlcgoKMjAwMS0wNi0wNiAxMzoxOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsIGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuaCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsCgkgIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmN4eCwgY21BZGREZWZpbml0aW9uc0NvbW1hbmQuaCwKCSAgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5jeHgsIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuaCwKCSAgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtQWRkTGlicmFyeUNvbW1hbmQuaCwKCSAgY21BZGRUZXN0Q29tbWFuZC5jeHgsIGNtQWRkVGVzdENvbW1hbmQuaCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtQnVpbGRDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuaCwgY21CdWlsZE5hbWVDb21tYW5kLmN4eCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtQnVpbGRTaGFyZWRMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21CdWlsZFNoYXJlZExpYnJhcmllc0NvbW1hbmQuaCwgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbGFzc1NldENvbW1hbmQuaCwgY21DYWJsZUNsb3NlTmFtZXNwYWNlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbG9zZU5hbWVzcGFjZUNvbW1hbmQuaCwgY21DYWJsZURlZmluZVNldENvbW1hbmQuY3h4LAoJICBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5oLCBjbUNhYmxlT3Blbk5hbWVzcGFjZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlT3Blbk5hbWVzcGFjZUNvbW1hbmQuaCwgY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VDb21tYW5kLmgsIGNtQ2FibGVQYWNrYWdlRW50cnlDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VFbnRyeUNvbW1hbmQuaCwgY21DYWJsZVdyYXBUY2xDb21tYW5kLmN4eCwKCSAgY21DYWJsZVdyYXBUY2xDb21tYW5kLmgsIGNtQ29tbWFuZC5oLCBjbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVGaWxlQ29tbWFuZC5oLCBjbUNvbmZpZ3VyZUZpbGVOb0F1dG9jb25mLmN4eCwKCSAgY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5oLCBjbUVsc2VDb21tYW5kLmN4eCwgY21FbHNlQ29tbWFuZC5oLAoJICBjbUVuZElmQ29tbWFuZC5jeHgsIGNtRW5kSWZDb21tYW5kLmgsIGNtRXhlY1Byb2dyYW1Db21tYW5kLmN4eCwKCSAgY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgY21GaW5kRmlsZUNvbW1hbmQuY3h4LAoJICBjbUZpbmRGaWxlQ29tbWFuZC5oLCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmgsIGNtRmluZFBhdGhDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuaCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBjbUdldEZpbGVuYW1lQ29tcG9uZW50Q29tbWFuZC5jeHgsCgkgIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmgsIGNtSWZDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuaCwKCSAgY21JbmNsdWRlQ29tbWFuZC5jeHgsIGNtSW5jbHVkZUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5jeHgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmN4eCwKCSAgY21JbmNsdWRlUmVndWxhckV4cHJlc3Npb25Db21tYW5kLmgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLCBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsCgkgIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsIGNtTGlicmFyeUNvbW1hbmQuaCwKCSAgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmN4eCwgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuY3h4LCBjbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsCgkgIGNtTG9hZENhY2hlQ29tbWFuZC5jeHgsIGNtTG9hZENhY2hlQ29tbWFuZC5oLAoJICBjbU1ha2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NZXNzYWdlQ29tbWFuZC5jeHgsIGNtTWVzc2FnZUNvbW1hbmQuaCwKCSAgY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmgsIGNtUHJvamVjdENvbW1hbmQuY3h4LAoJICBjbVByb2plY3RDb21tYW5kLmgsIGNtU2V0Q29tbWFuZC5jeHgsIGNtU2V0Q29tbWFuZC5oLAoJICBjbVNpdGVOYW1lQ29tbWFuZC5jeHgsIGNtU2l0ZU5hbWVDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21Tb3VyY2VGaWxlc0NvbW1hbmQuaCwKCSAgY21Tb3VyY2VHcm91cENvbW1hbmQuY3h4LCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5oLAoJICBjbVN1YmRpckNvbW1hbmQuY3h4LCBjbVN1YmRpckNvbW1hbmQuaCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21UZXN0c0NvbW1hbmQuY3h4LCBjbVRlc3RzQ29tbWFuZC5oLCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLCBjbVZUS1dyYXBKYXZhQ29tbWFuZC5jeHgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmgsIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBUY2xDb21tYW5kLmgsIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4LAoJICBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmg6IEVOSDogcmVuYW1lIEludm9rZSB0byBJbml0aWFsUGFzcwoKMjAwMS0wNi0wNiAxMzoxOCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBCVUc6IFBBVEggb3B0aW9ucyBzaG91bGQgbm90CgkgIHJlbW92ZSB0aGUgZmlsZSBwYXJ0IG9mIHRoZSBwYXRoLi4uCgoyMDAxLTA2LTA2IDExOjAyICBtaWxsZXJqdgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBDaGFuZ2UgbmFtZSBvZiBmaWxlIGNyZWF0ZWQgZnJvbSBUZXN0ZmlsZQoJICB0byBDTWFrZVRlc3RmaWxlLnR4dAoKMjAwMS0wNi0wNiAwOTo0NCAgbWFydGluawoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBiZXR0ZXIgcmVnZXhwIGZvciByZWcgZW50cmllcwoKMjAwMS0wNi0wNiAwOTo0MyAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kSk5JLmNtYWtlOiBiZXR0ZXIgdGVzdHMKCjIwMDEtMDYtMDYgMDc6NDcgIG1pbGxlcmp2CgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEZJWDogZm9yZ290IHRvIGNsb3NlIHRoZSBmaWxlcwoKMjAwMS0wNi0wNSAyMjo1NCAgcGVyZXJhCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IENvbXByZXNzIHRoZSBsaWJyYXJ5CgkgIHNlYXJjaCBkaXJlY3RvcmllcyBzbyB0aGF0IGVhY2ggYXBwZWFycyBvbmx5IG9uY2UuCgoyMDAxLTA2LTA1IDIwOjM0ICBtaWxsZXJqdgoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBFTkg6IEFkZGVkIEFkZFRlc3QgY29tbWFuZAoKMjAwMS0wNi0wNSAyMDozNCAgbWlsbGVyanYKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IEVOSDogQWRkZWQgQWRkVGVzdCwgYW5kCgkgIEdlbmVyYXRlVGVzdGZpbGUgcm91dGluZXMKCjIwMDEtMDYtMDUgMjA6MzIgIG1pbGxlcmp2CgoJKiBTb3VyY2UvOiBjbUFkZFRlc3RDb21tYW5kLmN4eCwgY21BZGRUZXN0Q29tbWFuZC5oOiBOZXcgY21ha2UKCSAgY29tbWFuZCB0byBzcGVjaWZ5IGEgc2luZ2xlIHRlc3QKCjIwMDEtMDYtMDUgMTc6NDYgIGJlcmsKCgkqIFNvdXJjZS9jbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eDogTW9kdWxlIG5hbWUgYmV0d2VlbiBVbml4IGFuZAoJICBXaW5kb3dzIGdvdCBzd2l0Y2hlZCBieSBtaXN0YWtlLgoKMjAwMS0wNi0wNSAxNzo0MSAgYmlkZGkKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVOSDogU29tZSB0d2Vha3MsCgkgIGhhY2tzIGFuZCAjaWZkZWZzIHJlcXVpcmVkIHRvIGNvbXBpbGUgY21ha2Ugb24gQm9ybGFuZCBDKytCdWlsZGVyCgoyMDAxLTA2LTA1IDE3OjI5ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwOiBFTkg6IGFkZCBQYXRoRGlhbG9nCgoyMDAxLTA2LTA1IDE3OjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIFBhdGhEaWFsb2cuY3BwLAoJICBQYXRoRGlhbG9nLmgsIFByb3BlcnR5TGlzdC5jcHA6IEVOSDogYWRkIGJldHRlciBwYXRoIGNob29zZXIKCSAgZGlhbG9nCgoyMDAxLTA2LTA1IDE1OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBCVUc6IGZpeCBFWEUgYW5kIExJQgoJICBwYXRoIHByb2JsZW1zCgoyMDAxLTA2LTA0IDE4OjI0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTV01ha2VmaWxlLmN4eCwgY21EU1dXcml0ZXIuY3h4OiBTVFlMRTogbGluZSB0b28gbG9uZwoKMjAwMS0wNi0wNCAxODoyNCAgaG9mZm1hbgoKCSogU291cmNlL2NtTWVzc2FnZUNvbW1hbmQuY3h4OiBFTkg6IHByaW50IGFsbCBhcmd1bWVudHMKCjIwMDEtMDYtMDQgMTg6MjMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBFTkg6IGFkZCBiZXR0ZXIgZXJyb3IgY2hlY2tpbmcKCjIwMDEtMDYtMDQgMTc6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRmluZEluY2x1ZGVDb21tYW5kLmN4eCwgY21GaW5kSW5jbHVkZUNvbW1hbmQuaDoKCSAgcmVtb3ZlZCBmaW5kIGluY2x1ZGUgY29tbWFuZAoKMjAwMS0wNi0wNCAxNzoxNiAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiByZW1vdmVkIGZpbmQgaW5jbHVkZSBjb21tYW5kIGZpbmFsbHkgYWRkZWQKCSAgbWVzc2FnZQoKMjAwMS0wNi0wNCAxNjo1NSAgbWFydGluawoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogbmV3IG1lc3NhZ2UgY29tbWFuZAoKMjAwMS0wNi0wNCAxNjo1NSAgbWFydGluawoKCSogU291cmNlLzogY21NZXNzYWdlQ29tbWFuZC5jeHgsIGNtTWVzc2FnZUNvbW1hbmQuaDogbmV3IGNvbW1hbmQKCjIwMDEtMDYtMDQgMTY6NDUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eDogdW51c2VkIHZhcmlhYmxlCgoyMDAxLTA2LTA0IDE1OjQ2ICBiYXJyZQoKCSogVGVtcGxhdGVzLzogRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBFWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIEVYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZSwgVXRpbGl0eUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiB0aGUgIlJlbGVhc2UiIHRhcmdldCBpcyBub3QgdGhlCgkgIGRlZmF1bHQuCgoyMDAxLTA2LTA0IDExOjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUdlbmVyYXRlZEZpbGVTdHJlYW0uaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OgoJICBFTkg6IHRyeSB0byBiZXR0ZXIgaGFuZGxlIGNvbnRyb2wtYyBkdXJpbmcgbWFrZSBNYWtlZmlsZXMKCjIwMDEtMDYtMDQgMTA6MTggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21EU1dNYWtlZmlsZS5jeHgsIGNtRFNXV3JpdGVyLmN4eCwKCSAgY21GdW5jdGlvbkJsb2NrZXIuaCwgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LCBjbU1ha2VmaWxlLmN4eCwKCSAgY21NYWtlZmlsZUdlbmVyYXRvci5oLCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogY2xlYW4KCSAgdXAgbWVtb3J5IGxlYWtzLgoKMjAwMS0wNi0wMSAxMzo1NCAgbWFydGluawoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogZml4IGZvciBuZXR3b3JrCgkgIGluY2x1ZCBwYXRocwoKMjAwMS0wNi0wMSAxMzoyOSAgYmVyawoKCSogU291cmNlL2NtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4OiBGaXhpbmcgdGhlIG1vZHVsZSBuYW1lIGZvcgoJICBVbml4LgoKMjAwMS0wNS0zMSAxNTo0OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21ha2UuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogZml4IGVkaXQKCSAgb2YgZGlyZWN0b3JpZXMKCjIwMDEtMDUtMzEgMTQ6MTUgIGJlcmsKCgkqIFNvdXJjZS9jbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eDogU2hvdWxkIG5vdCB1c2UgZGVjbCBpZiBub3Qgb24KCSAgV2luZG93cy4KCjIwMDEtMDUtMzAgMTU6NTYgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZW1haW4uY3h4OiBCVUc6IGFkZCBtaXNzaW5nIGZpbGUKCjIwMDEtMDUtMzAgMTU6MzYgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogcmVtb3ZlIHVudXNlZAoJICBpbmNsdWRlcwoKMjAwMS0wNS0zMCAxNToyOCAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaWIuZHNwLCBNYWtlZmlsZS5pbiwgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LAoJICBjbWFrZS5jeHgsIGNtYWtlLmRzcCwgY21ha2UuaCwgTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmg6CgkgIEVOSDogY2hhbmdlIE1GQyBndWkgdG8gdXNlIGNtYWtlIGNsYXNzCgoyMDAxLTA1LTI5IDE0OjE2ICBwZXJlcmEKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogTm93IG9ubHkgb25lIG1ha2VmaWxlCgkgIHJ1bGUgaXMgZ2VuZXJhdGVkIHBlciBkZXBlbmVuY3kuIFRoaXMgZWxpbWluYXRlcyBhIG51bWJlciBvZgoJICB3YXJuaW5ncy4KCjIwMDEtMDUtMjUgMTc6MTkgIGdlb2ZmCgoJKiBTb3VyY2UvY21TZXRDb21tYW5kLmN4eDogYnVnIG1lYW5pbmcgdGhhdCBzZXQoYSBiKSBqdXN0IHNldCBhIHRvCgkgICIiIGFuZCBub3QgdG8gYgoKMjAwMS0wNS0yNSAxNTozMyAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IEZpeGVkIHN0dXBpZCBlcnJvciBpbiB0aGUgaGFjayBJCgkgIGp1c3QgY2hlY2tlZCBpbi4KCjIwMDEtMDUtMjUgMTU6MzIgIGtpbmcKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogV0lOMzIgZXhlY3V0YWJsZSB0YXJnZXQKCSAgcnVsZXMgYXJlIG5vdyBnZW5lcmF0ZWQgaW4gdW5peCB0aGUgc2FtZSBhcyBhbnkgb3RoZXIgZXhlY3V0YWJsZQoJICAoaW5zdGVhZCBvZiBub3QgYXQgYWxsKS4KCjIwMDEtMDUtMjUgMTU6MjcgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBiZXR0ZXIgaGVscAoKMjAwMS0wNS0yNSAxNToyNyAgYmFycmUKCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogZGlzcGxheSB0aGUgcHJvcGVydHkgbmFtZSBpbgoJICB0aGUgaGVscCBib3gKCjIwMDEtMDUtMjUgMTQ6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBBZGRlZCBoYWNrIHRvCgkgIGNtU3lzdGVtVG9vbHM6OkdldFBhdGggdG8gbWFrZSBpdHMgYWxnb3JpdGhtIGNvcnJlY3RseSBwYXJzZSBvZmYKCSAgdGhlIGxhc3QgZW50cnkgb2YgdGhlIHN5c3RlbSBQQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLgoKMjAwMS0wNS0yNSAxNDoyNyAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiBGaXhlZCBsb2dpYyB0aGF0IHNwbGl0cwoJICBhIGZ1bGwgcGF0aCBsaWJyYXJ5IGxpbmsgaW50byB0aGUgLUwgYW5kIC1sIHBpZWNlcyB0byBub3Qgd3JpdGUKCSAgb3V0IGEgLWwgYnkgaXRzZWxmIGlmIHRoZSBmaWxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBkb2VzIG5vdCBtYXRjaC4KCjIwMDEtMDUtMjUgMDc6MzEgIG1pbGxlcmp2CgoJKiBNb2R1bGVzL1Rlc3RpbmcuY21ha2U6IEJVRzogbWlzc2luZyBxdW90ZSBvbiBhIGN1c3RvbSBjb21tYW5kCgoyMDAxLTA1LTI0IDIxOjE3ICBiYXJyZQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogTmV3IGZ1bmN0aW9ucyB1c2VkCgkgIHRvIGV4dHJhY3QgdGhlIGNvbXBvbmVudHMgb2YgYSBmdWxsIGZpbGVuYW1lLgoKMjAwMS0wNS0yNCAyMToxNCAgYmFycmUKCgkqIFNvdXJjZS9jbUZpbmRQYXRoQ29tbWFuZC5jeHg6IFRoZSBwYXRoIGZvdW5kIGlzIG5vdyBjb2xsYXBzZWQKCSAgKGNsZWFuZXIpLgoKMjAwMS0wNS0yNCAyMToxMyAgYmFycmUKCgkqIFNvdXJjZS86IGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kLmN4eCwKCSAgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQuaCwgY21Db21tYW5kcy5jeHg6IFdlbGNvbWUgdG8KCSAgY21HZXRGaWxlbmFtZUNvbXBvbmVudENvbW1hbmQgKCJHZXQgYSBzcGVjaWZpYyBjb21wb25lbnQgb2YgYQoJICBmdWxsIGZpbGVuYW1lIikKCjIwMDEtMDUtMjQgMjE6MTIgIGJhcnJlCgoJKiBTb3VyY2UvQ01ha2VMaWIuZHNwOiBXZWxjb21lIHRvIGNtR2V0RmlsZW5hbWVDb21wb25lbnRDb21tYW5kCgoyMDAxLTA1LTI0IDIxOjExICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBUcnkgdG8gZmluZCB0Y2xzaCBvciB3aXNoIGFuZCB1c2UgdGhhdAoJICBwYXRoIHRvIGZpbmQgdGhlIGluY2x1ZGUgb3IgbGliIGRpcmVjdG9yeS4gVEtfSU5URVJOQUxfUEFUSCBpcwoJICBzZWFyY2hlZCB0b28gKHBhdGggdG8gdGtXaW5JbnQuaCkKCjIwMDEtMDUtMjQgMTk6MTcgIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IG9wdGltaXplIENvbnZlcnRUb1VuaXhTbGFzaGVzIGEgbGl0dGxlCgkgIGJpdCwgYW5kIHVzZSBpdCBpbiBNYWtlRGlyZWN0b3J5IChjb2RlIHdhcyBkdXBsaWNhdGVkKQoKMjAwMS0wNS0yNCAxNzo1MSAga2luZwoKCSogVGVtcGxhdGVzL0NNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBFUlI6IFZBUiB0eXBlIGVudHJ5IG1pc3NpbmcKCSAgYWZ0ZXIgQ0FDSEUgZm9yIENNQUtFX1RFTVBMQVRFX0ZMQUdTLgoKMjAwMS0wNS0yNCAxNDo1OSAgYmFycmUKCgkqIFNvdXJjZS86IGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVZUS1dyYXBUY2xDb21tYW5kLmg6IHVwZGF0ZWQKCSAgdG8gaGFuZGxlIFRrIGNvbW1hbmRzIGNvbXBpbGVkL2xpbmtlZCBzZXBhcmF0ZWx5LiBVc2VmdWwgZm9yIFZUSwoJICBUayB3aWRnZXRzIGZvciBleGFtcGxlLgoKMjAwMS0wNS0yNCAxMzo0NSAgbWlsbGVyanYKCgkqIE1vZHVsZXMvVGVzdGluZy5jbWFrZTogUHJvamVjdCBpbmRlcGVuZGVudCBzZXR0aW5nIGZvciB0ZXN0aW5nCgoyMDAxLTA1LTI0IDEzOjQwICBiYXJyZQoKCSogU291cmNlLzogY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogbmV3IENhcGl0YWxpemVkCgkgIGZ1bmN0aW9uLiBXaWxsIGJlIHVzZWQgaW4gdGhlIFZUSyBUY2wgd3JhcHBlciBmb3IgZXhhbXBsZSAoaW4gYQoJICBtb3JlIHBvcnRhYmxlIHdheSkuCgoyMDAxLTA1LTI0IDEzOjM1ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmM6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDEtMDUtMjQgMTI6NTcgIGhvZmZtYW4KCgkqIE1vZHVsZXMvRmluZE9wZW5HTC5jbWFrZSwgU291cmNlL2NtU2V0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNldENvbW1hbmQuaCwgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLnJjLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sCgkgIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IEVOSDogY2hhbmdlIHRoZSBzeW50YXgKCSAgb2YgdGhlIFNFVCBjb21tYW5kLCBmaXggdGhlIGNvbWJvIGJveCBmb3IgbGFyZ2VyIHN0cmluZ3MKCjIwMDEtMDUtMjQgMTE6NDcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTWFrZWZpbGUuaCwgY21ha2UuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLCBNRkNEaWFsb2cvcmVzb3VyY2UuaDogYWRkZWQKCSAgdmVyc2lvbiBudW1iZXIKCjIwMDEtMDUtMjQgMTA6MzIgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvRExMSGVhZGVyLmRzcHRlbXBsYXRlOiByZW1vdmVkIGhhcmRjb2RlZCBWVEtETEwKCjIwMDEtMDUtMjQgMTA6MDAgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvOiBETExIZWFkZXIuZHNwdGVtcGxhdGUsIEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLCBzdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IHNsaWdodAoJICBjaGFuZ2UgaW4gdGhlIG9yZGVyIG9mIHRoZSBvcHRpb25zIChyaWdodC1tb3N0IHRha2VzIHByZWNlZGVuY2UpCgoyMDAxLTA1LTIzIDIwOjE2ICBtaWxsZXJqdgoKCSogU291cmNlL2NtQnVpbGRDb21tYW5kLmN4eDogQ2hhbmdlZCBXaW5kb3dzIGJ1aWxkIGNvbW1hbmQgdG8gYnVpbGQKCSAgUmVsZWFzZQoKMjAwMS0wNS0yMyAxODozMSAgYmFycmUKCgkqIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGU6IEludGVybWVkaWF0ZSBEaXIgd2FzIHdyb25nCgoyMDAxLTA1LTIzIDE4OjIyICBiYXJyZQoKCSogVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogL0d6ID0+IC9HWgoKMjAwMS0wNS0yMyAxODoxOSAgYmFycmUKCgkqIFRlbXBsYXRlcy9DTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2U6IHJlbW92ZWQgL08yIGZyb20gZGVidWcKCjIwMDEtMDUtMjMgMTc6MTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURTUE1ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwKCSAgVGVtcGxhdGVzL0NNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZSwKCSAgVGVtcGxhdGVzL0RMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgVGVtcGxhdGVzL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL0VYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgVGVtcGxhdGVzL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRU5IOiBjcmVhdGUKCSAgQ01BS0VfQ1hYX0ZMQUdTX1tCdWlsZHR5cGVdIGZsYWdzCgoyMDAxLTA1LTIzIDE2OjMzICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBhZGQgY29tcHV0ZSBzeXN0ZW1pbmZvCgoyMDAxLTA1LTIzIDE2OjMxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4OiBidWcgZmluZGluZyB3aW5kb3dzIHRlbXBsYXRlCgkgIGZpbGUKCjIwMDEtMDUtMjMgMTY6MjggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbWFrZS5jeHg6IGNvbW1hbmQgbGluZSBmaXhlcyBmb3IKCSAgd2luMzIKCjIwMDEtMDUtMjMgMTY6MDkgIGJhcnJlCgoJKiBUZW1wbGF0ZXMvOiBETExIZWFkZXIuZHNwdGVtcGxhdGUsIEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLCBVdGlsaXR5SGVhZGVyLmRzcHRlbXBsYXRlLAoJICBzdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IFJlbGVhc2VNaW5TaXplID0+IE1pblNpemVSZWwKCjIwMDEtMDUtMjMgMTU6NTMgIGhvZmZtYW4KCgkqIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGU6IEJVRzogcmVtb3ZlIHZ0a0NvbW1vbgoKMjAwMS0wNS0yMyAxNTo0OSAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogZml4ZWQgcXVvdGVkIGNtYWtlCgoyMDAxLTA1LTIzIDE0OjQ0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogYWRkIGJldHRlciBlcnJvciBtZXNzYWdlCgoyMDAxLTA1LTIzIDE0OjMzICBnZW9mZgoKCSogU291cmNlL2NtYWtlLmRzcDogRFNQcyBoYXZlIHRvIGJlIGJpbmFyeQoKMjAwMS0wNS0yMyAxNDowNSAgaG9mZm1hbgoKCSogVGVtcGxhdGVzLzogRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBFWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIEVYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZSwgVXRpbGl0eUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IGNoYW5nZSBSZWxlYXNlIE1pbnNpemUgdG8KCSAgTWluU2l6ZVJlbCwgYWRkIE1pblNpemVSZWwgdG8gZGxsIHRlbXBsYXRlCgoyMDAxLTA1LTIzIDEzOjE2ICBraW5nCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBFTkg6IEFkZGVkIElOU1RBTEwKCSAgdGFyZ2V0IHRvIHN3aXRjaCBpbiBPdXRwdXREU1BGaWxlLiAgQWxzbyBhZGRlZCBhIGRlZmF1bHQgdGhhdAoJICBwcmludHMgb3V0IGFuIGVycm9yIG1lc3NhZ2Ugc28gdGhhdCBhbnlvbmUgd2hvIGFkZHMgYSB0YXJnZXQKCSAgZG9lc24ndCBmb3JnZXQgdG8gdXBkYXRlIHRoZSBzd2l0Y2guCgoyMDAxLTA1LTIzIDEyOjAyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LCBjbURTV01ha2VmaWxlLmN4eCwKCSAgY21EU1dXcml0ZXIuY3h4OiBpbnN0YWxsIGZpeGVzIGZvciB3aW4zMgoKMjAwMS0wNS0yMyAxMTo1MyAgbWFydGluawoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogYWRkZWQgaW5zdGFsbCB0YXJnZXQgc3VwcG9ydAoKMjAwMS0wNS0yMyAxMTozNCAgaWJhbmV6CgoJKiBNb2R1bGVzL0ZpbmRWVEsuY21ha2U6ICAgICAgTW9kdWxlIHRvIHNlYXJjaCBmb3IgVlRLIGluY2x1ZGUgYW5kCgkgIGxpYnJhcnkgcGF0aHMKCjIwMDEtMDUtMjMgMTE6MjkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbEZpbGVzQ29tbWFuZC5oLAoJICBjbUluc3RhbGxUYXJnZXRzQ29tbWFuZC5jeHgsIGNtSW5zdGFsbFRhcmdldHNDb21tYW5kLmgsCgkgIGNtQ29tbWFuZHMuY3h4LCBjbVRhcmdldC5jeHgsIGNtVGFyZ2V0Lmg6IGFkZGVkIGluc3RhbGwgcnVsZXMKCjIwMDEtMDUtMjMgMTE6MjcgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogYWRkZWQgcHJlZml4IHRvIGNvbmZpZwoKMjAwMS0wNS0yMyAxMDo0NyAgaG9mZm1hbgoKCSogU291cmNlL2NtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBCVUc6IHJlbW92ZSB3YXJuaW5nCgoyMDAxLTA1LTIzIDEwOjQ3ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21ha2UuZHNwOiBCVUc6IGZpeCBvdXRwdXQgZGlyZWN0b3J5CgoyMDAxLTA1LTIzIDEwOjAxICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHg6IGFkZGVkIFBST0pFQ1RfU09VUkNFX0RJUgoKMjAwMS0wNS0yMyAwOTozNSAgaG9mZm1hbgoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogRU5IOiBhbGxvdyBkdXBsaWNhdGUgbGlicmFyaWVzCgoyMDAxLTA1LTIyIDIwOjQ1ICBiYXJyZQoKCSogVGVtcGxhdGVzL1V0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGU6IFRlbXBsYXRlIG5vdyB1c2VzCgkgIEVYRUNVVEFCTEVfT1VUUFVUX1BBVEggdG9vLgoKMjAwMS0wNS0yMiAyMDo0NCAgYmFycmUKCgkqIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGU6IFBST1AgQkFTRSBhbmQgUFJPUCB3ZXJlCgkgIGludmVydGVkCgoyMDAxLTA1LTIyIDIwOjM2ICBiYXJyZQoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogU2VlbXMgdG8gbWUgdGhhdAoJICBFWEVXaW5IZWFkZXIgd2FzIG5vdCBzZWFyY2hlZCBpbiB0aGUgcmlnaHQgcGxhY2UuCgoyMDAxLTA1LTIyIDE3OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGRvIG5vdCBpbmNsdWRlIC91c3IvbGliCgkgIGluIC1MCgoyMDAxLTA1LTIyIDEzOjUyICBob2ZmbWFuCgoJKiBTb3VyY2UvTWFrZWZpbGUuaW46IGZpeCBDWFhGTEFHUwoKMjAwMS0wNS0yMiAxMzo0MiAgaG9mZm1hbgoKCSogU291cmNlL01ha2VmaWxlLmluOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAxLTA1LTIyIDEzOjQwICBob2ZmbWFuCgoJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjogdXNlIGN4eGZsYWdzIGluIHRlc3QgYnVpbGRzCgoyMDAxLTA1LTIyIDEzOjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvTWFrZWZpbGUuaW4sIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9jb25maWd1cmUsIFRlbXBsYXRlcy9jb25maWd1cmUuaW46IEJVRzogZml4IGRlcGVuZHMgYW5kCgkgIENYWEZMQUdTIHBhc3NpbmcKCjIwMDEtMDUtMjIgMTI6MzggIGJhcnJlCgoJKiBTb3VyY2UvY21EU1BNYWtlZmlsZS5jeHgsIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsCgkgIFRlbXBsYXRlcy9ETExIZWFkZXIuZHNwdGVtcGxhdGUsIFRlbXBsYXRlcy9FWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9FWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFRlbXBsYXRlcy9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IGZpeGVkIHNvbWUgb2YgdGhlCgkgIExJQlJBUllfT1VUUFVUX1BBVEggYW5kIEVYRUNVVEFCTEVfT1VUUFVUX1BBVEggcHJvYmxlbXMuCgoyMDAxLTA1LTIyIDExOjE1ICBtYXJ0aW5rCgoJKiBkdW1teS5pbjogbm8gbG9uZ2VyIHVzZWQKCjIwMDEtMDUtMjIgMTA6NDMgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvRkxUS0RpYWxvZy5kc3A6IEVOSDogUHJvcGVydHlMaXN0IGNsYXNzIGFkZGVkCgoyMDAxLTA1LTIyIDEwOjQzICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nLzogQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmNwcCwKCSAgQ01ha2VTZXR1cEdVSUltcGxlbWVudGF0aW9uLmg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgdGhlCgkgIGZsdGs6OlByb3BlcnR5TGlzdCBjbGFzcwoKMjAwMS0wNS0yMiAxMDo0MiAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUkuY3BwLCBDTWFrZVNldHVwR1VJLmZsLAoJICBDTWFrZVNldHVwR1VJLmg6CUFkZGVkIGludGVyYWN0aW9ucyB3aXRoIHRoZSBQcm9wZXJ0eUxpc3QKCSAgY2xhc3MKCjIwMDEtMDUtMjIgMTA6NDEgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBGTFRLUHJvcGVydHlMaXN0LmNwcCwgRkxUS1Byb3BlcnR5TGlzdC5oOgoJICBDbGFzcyB0byBtYW5hZ2UgdGhlIGxpc3Qgb2YgcHJvcGVydGllcyBkaXNwbGF5ZWQgb24gdGhlIHNjcm9sbGVyCgoyMDAxLTA1LTIxIDE2OjQzICBraW5nCgoJKiBNYWtlZmlsZS5pbjogRVJSOiBBZGRlZCBtaXNzaW5nIEBzcmNkaXJAIGFuZCBtb2RpZmllZCBpbnN0YWxsCgkgIGV4cHJlc3Npb25zIHRvIGluY2x1ZGUgKi5jbWFrZSogZmlsZXMgaW5zdGVhZCBvZiBqdXN0ICouY21ha2UKCSAgZmlsZXMgKGZvciAuaW4pLgoKMjAwMS0wNS0yMSAxNjoyMSAga2luZwoKCSogU291cmNlL2NtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IEVOSDogQ29udmVydGVkIHRvIG5ldyBDbGFzcyBhbmQKCSAgR3JvdXAgdGFncyBpbiBwbGFjZSBvZiBXcmFwcGVyU2V0IGFuZCBHcm91cHMgdGFncy4KCjIwMDEtMDUtMjEgMTY6MTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFRlbXBsYXRlcy9DTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbjogZml4IGZvciBocCB4MTEgYW5kIGdsCgoyMDAxLTA1LTIxIDE1OjE2ICBob2ZmbWFuCgoJKiBNb2R1bGVzL0ZpbmRPcGVuR0wuY21ha2UsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogZml4IG9wZW5nbCBvbgoJICBocAoKMjAwMS0wNS0yMSAxNDo0MiAgbWFydGluawoKCSogU291cmNlL01GQ0RpYWxvZy86IENNYWtlU2V0dXAucmMsIHJlcy9DTWFrZVNldHVwRGlhbG9nLmljbzogaWNvbgoJICB1cGRhdGVzCgoyMDAxLTA1LTIxIDE0OjM2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cC5yYywgcmVzb3VyY2UuaDogbmV3IGljb24KCjIwMDEtMDUtMjEgMTQ6MTcgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbWFrZS5jeHg6IEJVRzogcmVtb3ZlIGRlY2xhcmF0aW9uIHdpdGhvdXQgdmFyaWFibGUKCjIwMDEtMDUtMjEgMTQ6MDEgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBTb3VyY2UvTWFrZWZpbGUuaW4sCgkgIFNvdXJjZS9jbUJ1aWxkTmFtZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBUZW1wbGF0ZXMvQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW46IGNsZWFuIHVwIGZvciBidWlsZCBvbiBpdHMKCSAgb3duCgoyMDAxLTA1LTIxIDExOjQzICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21ha2UuZHNwOiByZWxlYXNlIGZpeAoKMjAwMS0wNS0yMSAxMTozNCAgbWFydGluawoKCSogU291cmNlLzogQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBDTWFrZVNldHVwQ01ELmN4eCwKCSAgQ01ha2VTZXR1cENNRC5kc3A6IGNvbGxhcHNlZCBpbnRvIGNtYWtlLmN4eAoKMjAwMS0wNS0yMSAxMTozMiAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmRzcDogbmV3IGRzcAoKMjAwMS0wNS0yMSAxMToxMyAgbWFydGluawoKCSogU291cmNlL2NtYWtlLmN4eDogYnVnIGZpeCBpbiBmaW5kaW5nIENNQUtFX1JPT1QKCjIwMDEtMDUtMjEgMTE6MTAgIG1hcnRpbmsKCgkqIE1ha2VmaWxlLmluOiBhZGRlZCBpbnN0YWxsIHRhcmdldAoKMjAwMS0wNS0yMSAxMDo0NyAgaG9mZm1hbgoKCSogU291cmNlLzogY21CdWlsZE5hbWVDb21tYW5kLmN4eCwgY21TZXRDb21tYW5kLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlRGlhbG9nLmgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLnJjLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmgsCgkgIE1GQ0RpYWxvZy9yZXNvdXJjZS5oOiBCVUc6IGZpeCBjb21waWxlciBuYW1lCgoyMDAxLTA1LTIxIDA5OjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZVNldHVwLmRzdywgY21ha2UuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IHVwZGF0ZWQgZm9yIG91dCBvZiB0cmVlIGJ1aWxkcwoKMjAwMS0wNS0yMSAwOTozMiAgbWFydGluawoKCSogTWFrZWZpbGUuaW4sIGNvbmZpZ3VyZSwgY29uZmlndXJlLmluLCBpbnN0YWxsLXNoOiBvdXQgb2YgcGxhY2UKCSAgY21ha2UKCjIwMDEtMDUtMjEgMDk6MzIgIG1hcnRpbmsKCgkqIENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBjb25maWd1cmUuaW4uc2FtcGxlLAoJICBTb3VyY2UvTWFrZWZpbGUuaW4sIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgU291cmNlL2NtYWtlLmN4eDogbmV3IG91dCBvZgoJICBwbGFjZSBidWlsZHMKCjIwMDEtMDUtMjEgMDk6MzEgIG1hcnRpbmsKCgkqIFRlbXBsYXRlcy86IENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBjb25maWd1cmUsIGNvbmZpZ3VyZS5pbjoKCSAgbmV3IHN0cnVjdHVyZQoKMjAwMS0wNS0xOCAxNjo0NSAgaG9mZm1hbgoKCSogQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6CgkgIEVOSDogYWRkIHN1cHBvcnQgZm9yIFgxMQoKMjAwMS0wNS0xOCAxNjozMCAgbWFydGluawoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogIGR1aAoKMjAwMS0wNS0xOCAxNToyNSAgbWFydGluawoKCSogU291cmNlLzogY21ha2UuY3h4LCBjbWFrZS5oOiBuZXcgY29tbWFuZAoKMjAwMS0wNS0xOCAxNToyMyAgbWFydGluawoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuaDogbWlub3Igd2hpdGVzcGFjZSBjaGFuZ2UKCjIwMDEtMDUtMTggMTU6MjIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbU1TUHJvamVjdEdlbmVyYXRvci5jeHg6IGNvbXBpbGVyIGZpeAoKMjAwMS0wNS0xOCAxNToyMCAgbWFydGluawoKCSogU291cmNlLzogY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LCBjbU1TUHJvamVjdEdlbmVyYXRvci5oLAoJICBjbU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDogY2hhbmdlcyBmb3IgY21ha2UgdG8gbGl2ZSBvdXRzaWRlIG9mCgkgIHRoZSBzb3VyY2UgdHJlZQoKMjAwMS0wNS0xOCAxMzowNCAgaG9mZm1hbgoKCSogQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIFNvdXJjZS9jbVNldENvbW1hbmQuY3h4OiBFTkg6IGFsbG93CgkgIGNhY2hlIHRvIG92ZXJyaWRlIGNvbmZpZyBmaWxlCgoyMDAxLTA1LTE4IDExOjQ4ICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IGZpeCBsaW5rIG9mIGV4ZWN1dGFibGVzCgoyMDAxLTA1LTE4IDExOjEyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21NYWtlZmlsZUdlbmVyYXRvci5oOiBhZGRlZCBTZXRMb2NhbCBtZXRob2QKCjIwMDEtMDUtMTggMTE6MDkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtTVNQcm9qZWN0R2VuZXJhdG9yLmN4eCwgY21NU1Byb2plY3RHZW5lcmF0b3IuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOiBhZGRlZAoJICBTZXRMb2NhbCBtZXRob2QKCjIwMDEtMDUtMTggMTA6MTUgIGhvZmZtYW4KCgkqIENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OgoJICBCVUc6IHF1b3RlIHRoZSBjb21waWxlciBhbmQgb3RoZXIgb3B0aW9ucwoKMjAwMS0wNS0xNyAxNzo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBNYWtlZmlsZS5pbjogY29tcGlsZSBzb3VyY2UgZGlyCgkgIGludG8gY21ha2UKCjIwMDEtMDUtMTcgMTU6NDggIHdpbGwKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOkJhZCAjaWZkZWYncwoKMjAwMS0wNS0xNyAxMjozOCAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9DTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3BwOiBFTkg6IEFkZGVkCgkgIE1ldGhvZHMgZm9yIGxvYWRpbmcgdGhlIGNhY2hlCgoyMDAxLTA1LTE3IDEyOjM3ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtEaWFsb2cuY3BwOiBFTkg6IExvYWQgdGhlIGNhY2hlIGF0IHN0YXJ0CgoyMDAxLTA1LTE3IDEyOjM2ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUlJbXBsZW1lbnRhdGlvbi5oOiBFTkg6IEFkZGVkCgkgIG1ldGhvZHMgdG8gbG9hZCB0aGUgY2FjaGUKCjIwMDEtMDUtMTcgMTI6MzYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IERMTEZvb3Rlci5kc3B0ZW1wbGF0ZSwgRExMSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBFWEVGb290ZXIuZHNwdGVtcGxhdGUsIEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLCBVdGlsaXR5Rm9vdGVyLmRzcHRlbXBsYXRlLAoJICBVdGlsaXR5SGVhZGVyLmRzcHRlbXBsYXRlLCBzdGF0aWNMaWJGb290ZXIuZHNwdGVtcGxhdGUsCgkgIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogbW92ZWQgaW50byBUZW1wbGF0ZSBkaXJlY3RvcnkKCjIwMDEtMDUtMTcgMTI6MjUgIG1hcnRpbmsKCgkqIENNYWtlTWFrZWZpbGVUZW1wbGF0ZS5pbiwgQ01ha2VNYXN0ZXIubWFrZS5pbiwKCSAgQ01ha2VSdWxlcy5tYWtlLmluLCBDTWFrZVNpbXBsZVJ1bGVzLm1ha2UuaW4sCgkgIENNYWtlVGFyZ2V0cy5tYWtlLmluLCBDTWFrZVRvcE1ha2VmaWxlVGVtcGxhdGUuaW4sCgkgIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy5jbWFrZTogbm8gbG9uZ2VyCgkgIHVzZWQKCjIwMDEtMDUtMTcgMTI6MTQgIG1hcnRpbmsKCgkqIFNvdXJjZS9DTWFrZUJ1aWxkVGFyZ2V0cy5jeHg6IHVuaXggZml4CgoyMDAxLTA1LTE3IDEyOjA4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsIENNYWtlU2V0dXBDTUQuY3h4LAoJICBjbUNhYmxlUGFja2FnZUNvbW1hbmQuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IGhhbGYgY2hlY2tlZCBpbiBjaGFuZ2VzIGZvcgoJICBDTUFLRV9ST09UCgoyMDAxLTA1LTE3IDEyOjA0ICBtYXJ0aW5rCgoJKiBUZW1wbGF0ZXMvOiBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcuY21ha2UsCgkgIERMTEZvb3Rlci5kc3B0ZW1wbGF0ZSwgRExMSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBFWEVGb290ZXIuZHNwdGVtcGxhdGUsIEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwKCSAgRVhFV2luSGVhZGVyLmRzcHRlbXBsYXRlLCBVdGlsaXR5Rm9vdGVyLmRzcHRlbXBsYXRlLAoJICBVdGlsaXR5SGVhZGVyLmRzcHRlbXBsYXRlLCBzdGF0aWNMaWJGb290ZXIuZHNwdGVtcGxhdGUsCgkgIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogbmV3IGRpcmVjdG9yeQoKMjAwMS0wNS0xNyAxMjowMiAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy9GTFRLRGlhbG9nLmRzcDoJIFZDKysgUHJvamVjdCBmaWxlIHRvCgkgIGNvbnN0cnVjdCB0aGUgRkxUSyBHVUkgZm9yIENNYWtlCgoyMDAxLTA1LTE3IDEyOjAyICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0ZMVEtEaWFsb2cuY3BwOgkgTWFpbiBmaWxlIHRoYXQKCSAgaW5zdGFudGlhdGVzIHRoZSBHVUkgY2xhc3MgYW5kIHJ1biBpdC4KCjIwMDEtMDUtMTcgMTI6MDEgIGliYW5legoKCSogU291cmNlL0ZMVEtEaWFsb2cvOiBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uY3BwLAoJICBDTWFrZVNldHVwR1VJSW1wbGVtZW50YXRpb24uaDogICAgICBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgdmlydHVhbAoJICBDYWxsYmFja3MgZGVjbGFyZWQgaW4gdGhlIEdVSQoKMjAwMS0wNS0xNyAxMjowMCAgaWJhbmV6CgoJKiBTb3VyY2UvRkxUS0RpYWxvZy86IENNYWtlU2V0dXBHVUkuY3BwLCBDTWFrZVNldHVwR1VJLmg6ICAgICAgRmlsZQoJICBnZW5lcmF0ZWQgYnkgRkxUSyBGTFVJRCBjb250YWluaW5nIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgR1VJCgoyMDAxLTA1LTE3IDExOjU4ICBpYmFuZXoKCgkqIFNvdXJjZS9GTFRLRGlhbG9nL0NNYWtlU2V0dXBHVUkuZmw6CSAgIEdVSSBkZXNjcmlwdGlvbiBmaWxlCgkgIHVzZWQgYnkgRkxUSyBpbnRlcmFjdGl2ZSB0b29sIDogRkxVSUQKCjIwMDEtMDUtMTcgMTE6NDQgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHgsIGNtQ29uZmlndXJlLmguaW4sCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbS5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaDogQlVHOiBmaXggdG8KCSAgY29tcGlsZSBvbiBocCB3aXRoIGFDQwoKMjAwMS0wNS0xNyAxMToyMiAga2luZwoKCSogU291cmNlL2NtQ2FibGVXcmFwVGNsQ29tbWFuZC5jeHg6IFJlbmFtZWQgZ2NjeG1sIGlucHV0L291dHB1dAoJICBmaWxlcyB0byBkcm9wIF90Y2wgcXVhbGlmaWNhdGlvbi4KCjIwMDEtMDUtMTYgMTg6MTAgIGhvZmZtYW4KCgkqIENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBFTkg6IGZpeCBmb3Igc3VuQ0MKCjIwMDEtMDUtMTYgMTg6MDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6CgkgIGZpeCBmb3Igc3VuIGNvbXBpbGVyCgoyMDAxLTA1LTE2IDE3OjQzICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ2xhc3NTZXQuY3h4LCBjbUNhYmxlQ2xhc3NTZXQuaDogRVJSOiBSZW1vdmVkIHVzZQoJICBvZiBtZW1iZXIgdGVtcGxhdGVzLgoKMjAwMS0wNS0xNiAxNzoxOCAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBpbnQgLT4gdW5zaWduZWQgaW50CgoyMDAxLTA1LTE2IDE3OjE4ICBraW5nCgoJKiBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmg6IEVSUjogY29uc3QgZXJyb3IgZml4ZWQuCgoyMDAxLTA1LTE2IDE3OjExICBraW5nCgoJKiBTb3VyY2UvQ01ha2VMaWIuZHNwOiBFTkg6IEFkZGVkIGNtQ2FibGVDbGFzc1NldC5jeHggdG8gYnVpbGQuCgoyMDAxLTA1LTE2IDE3OjExICBraW5nCgoJKiBTb3VyY2UvY21HZW5lcmF0ZWRGaWxlU3RyZWFtLmg6IEVSUjogQWRkZWQgaXNfb3BlbigpIGNoZWNrIGluCgkgIGNtR2VuZXJhdGVkRmlsZVN0cmVhbTo6b3BlcmF0b3IgYm9vbCgpIHNvIHRoYXQgaW1wbGljaXQKCSAgY29udmVyc2lvbiB0byBib29sIGlzIG5vdCB1c2VkLgoKMjAwMS0wNS0xNiAxNzoxMSAga2luZwoKCSogU291cmNlL2NtQ2FibGVDbGFzc1NldC5jeHg6IEVSUjogUmVtb3ZlZCBkeW5hbWljX2Nhc3Qgc28gdGhhdAoJICBSVFRJIGlzbid0IHJlcXVpcmVkLgoKMjAwMS0wNS0xNiAxNjo0MSAga2luZwoKCSogU291cmNlLzogTWFrZWZpbGUuaW4sIGNtQ2FibGVDbGFzc1NldC5jeHgsIGNtQ2FibGVDbGFzc1NldC5oLAoJICBjbUNhYmxlQ2xhc3NTZXRDb21tYW5kLmN4eCwgY21DYWJsZUNsYXNzU2V0Q29tbWFuZC5oLAoJICBjbUNhYmxlV3JhcFRjbENvbW1hbmQuY3h4LCBjbUNhYmxlV3JhcFRjbENvbW1hbmQuaCwKCSAgY21Db21tYW5kcy5jeHg6IEVOSDogQWRkaW5nIENBQkxFX0NMQVNTX1NFVCBhbmQgQ0FCTEVfV1JBUF9UQ0wKCSAgY29tbWFuZHMuICBUaGV5IGNhbm5vdCB5ZXQgYmUgdXNlZCB3aXRoIHRoZSBtYWluIGJyYW5jaCBvZiBDQUJMRSwKCSAgdGhvdWdoLgoKMjAwMS0wNS0xNiAxNjo0MCAga2luZwoKCSogU291cmNlL2NtR2VuZXJhdGVkRmlsZVN0cmVhbS5oOiBFTkg6IGNtR2VuZXJhdGVkRmlsZVN0cmVhbSBjbGFzcwoJICBhZGRlZCB0byBzaW1wbGlmeSBjb3B5LWlmLWRpZmZlcmVudCB1c2FnZSBvbiBnZW5lcmF0ZWQgZmlsZXMuCgoyMDAxLTA1LTE2IDE1OjQzICBob2ZmbWFuCgoJKiBjb25maWd1cmUuaW4uc2FtcGxlOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAxLTA1LTE2IDE1OjE1ICBob2ZmbWFuCgoJKiBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21CdWlsZE5hbWVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQnVpbGRTaGFyZWRMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbURTUE1ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwKCSAgU291cmNlL2NtTWFrZURlcGVuZC5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtUHJvamVjdENvbW1hbmQuY3h4LCBTb3VyY2UvY21TZXRDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogdW5pZnkgbWFrZSBwcm9jZXNzIG9uCgkgIHVuaXgKCjIwMDEtMDUtMTYgMDk6MTkgIGtpbmcKCgkqIFNvdXJjZS86IGNtRGF0YS5oLCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oOiBFTkg6IEFkZGVkCgkgIGNtRGF0YSBhbmQgY29ycmVzcG9uZGluZyBEYXRhTWFwIGluIGNtTWFrZWZpbGUgdG8gYWxsb3cgY29tbWFuZHMKCSAgdG8gcmVnaXN0ZXIgYXJiaXRyYXJ5IGV4dHJhIGRhdGEgd2l0aCB0aGUgbWFrZWZpbGUgd2l0aG91dAoJICBtb2RpZnlpbmcgdGhlIGNtTWFrZWZpbGUgY2xhc3MgZGVmaW5pdGlvbi4KCjIwMDEtMDUtMTUgMTM6MTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IERMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBFWEVXaW5IZWFkZXIuZHNwdGVtcGxhdGUsIGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHgsCgkgIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogYWRkZWQgb3V0cHV0IGRpcmVjdG9yeSBzdXBwb3J0CgoyMDAxLTA1LTE0IDE2OjQ3ICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBDaGFuZ2VkIHNlcGFyYXRvciBiZXR3ZWVuIHJlZ2lzdHJ5IGtleQoJICBhbmQgaXRzIHZhbHVlLiBDaGFuZ2UgcmVnZXhwIGZvciByZWdpc3RyeSBrZXkuCgoyMDAxLTA1LTE0IDE2OjQ2ICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBDaGFuZ2VkIHNlcGFyYXRvciBiZXR3ZWVuIHJlZ2lzdHJ5IGtleSBhbmQKCSAgaXRzIHZhbHVlLgoKMjAwMS0wNS0xNCAxMDozNiAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IHB1dCBiYWNrIGxvc3QgY2hhbmdlcyBmcm9tIHIxLjM4CgoyMDAxLTA1LTEyIDA3OjI5ICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBmaXggKyA9PiArPSBidWcgcmVwb3J0ZWQgYnkgQS4gUGVyZXJhCgoyMDAxLTA1LTExIDE3OjQxICBiYXJyZQoKCSogU291cmNlL01GQ0RpYWxvZy9yZXMvQ01ha2VTZXR1cERpYWxvZy5pY286IEkga25vdywgdGhlcmUgYXJlIG1vcmUKCSAgc2VyaW91cyB0aGluZ3MgdG8gZG8gOikgQSBuZXcgaWNvbi4gVGhlIHByZXZpb3VzIG9uZSBoYXMgbm90IGJlCgkgIG92ZXJ3cml0dGVuLCBpdCdzIGluIHRoZXJlIHRvby4KCjIwMDEtMDUtMTEgMTc6MjIgIGJhcnJlCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEV4dGVuZGVkIHRoZSByZWdpc3RyeSBrZXkgcmVnZXhwCgoyMDAxLTA1LTExIDE3OjExICBiYXJyZQoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBBZGQgOC40IGFuZCByZWdpc3RyeSBzdXBwb3J0CgoyMDAxLTA1LTExIDE3OjExICBiYXJyZQoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBBZGQgc3VwcG9ydCBmb3IgYSBzcGVjaWZpYyB2YWx1ZSBuYW1lCgkgIGluIGEgcmVnaXN0cnkga2V5CgoyMDAxLTA1LTExIDE0OjQ5ICBnZW9mZgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogQ2FjaGUgZmlsZSBpcyBhIGJpdCBwcmV0dGllcgoKMjAwMS0wNS0xMSAxNDozOSAgaG9mZm1hbgoKCSogU291cmNlLzogY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogZml4IGZpbmQgbGlicmFyeSBmb3IgdW5peAoKMjAwMS0wNS0xMSAxMzo1OCAgYmFycmUKCgkqIE1vZHVsZXMvRmluZFB5dGhvbkxpYnMuY21ha2U6IE5BTUVTIHN5bnRheAoKMjAwMS0wNS0xMSAxMzo1MiAgbWFydGluawoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogZml4IGZvciBleHBhbmRpbmcKCSAgbGlicmFyeSB2YXJzCgoyMDAxLTA1LTExIDEyOjMwICBiYXJyZQoKCSogU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eDogRml4IGhlbHAgc3RyaW5nIHdoZW4gTkFNRVMgd2FzCgkgIHVzZWQgKGZvcmdvdCB0aGUgY2FzZSB3aGVuIHRoZXJlIGlzIG5vIG5hbWUpCgoyMDAxLTA1LTExIDEyOjEzICBiYXJyZQoKCSogU291cmNlL2NtRmluZExpYnJhcnlDb21tYW5kLmN4eDogRml4IGhlbHAgc3RyaW5nIHdoZW4gTkFNRVMgd2FzCgkgIHVzZWQKCjIwMDEtMDUtMTEgMTE6NDUgIGtpbmcKCgkqIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHg6IEVSUjogaW50IC0+IHVuc2lnbmVkIGludC4KCjIwMDEtMDUtMTEgMTE6MzkgIGhvZmZtYW4KCgkqIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHg6IEJVRzogYWRkCgkgIGJhY2sgdGhyZWFkIGxpYnJhcnkKCjIwMDEtMDUtMTEgMTE6MDcgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHg6IGV4cGFuZHMgcmVnIHZhbHVlcwoKMjAwMS0wNS0xMSAxMDo1MiAgbWFydGluawoKCSogU291cmNlLzogRVhFSGVhZGVyLmRzcHRlbXBsYXRlLCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmN4eCwKCSAgY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLAoJICBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIEVYRVdpbkhlYWRlci5kc3B0ZW1wbGF0ZTogYWRkZWQgcmVnaXN0cnkgZW50cnkgc3VwcG9ydCBhbmQKCSAgd2luZG93cyBhcHAgc3VwcG9ydAoKMjAwMS0wNS0xMSAxMDoyNyAgbWFydGluawoKCSogTW9kdWxlcy86IEZpbmRKTkkuY21ha2UsIEZpbmRQeXRob25MaWJzLmNtYWtlOiBtaW5vciBmaXhlcyBhbmQKCSAgbmV3IHB5dGhvbiBtb2R1bGUKCjIwMDEtMDUtMTEgMTA6MDQgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogZml4IGd1aSBwcm9ibGVtCgoyMDAxLTA1LTEwIDE3OjIyICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsIE1GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBCVUc6CgkgIGZpeCB1cCBndWkgd2l0aCB2YWx1ZXMgdGhhdCBzdGF5IGFyb3VuZCB0b28gbG9uZwoKMjAwMS0wNS0xMCAxNjoyMSAgZ2VvZmYKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogZGVmaW5pdGlvbnMgc2hvdWxkIG5vdyBiZSBvdmVyd3JpdHRlbiBpZgoJICB0aGV5IGFscmVhZHkgZXhpc3QKCjIwMDEtMDUtMTAgMTU6NTAgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXggdW5peCBwYXRoIHNlYXJjaAoKMjAwMS0wNS0xMCAxNTozMiAgbWFydGluawoKCSogU291cmNlL2NtVGFyZ2V0LmN4eDogZml4IGZvciBleHBhbmluZyBsaWJyYXJpZXMgcHJpb3IgdG8KCSAgZ2VuZXJhdGluZyBkc3AKCjIwMDEtMDUtMTAgMTQ6MzAgIGdlb2ZmCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBSZWFkcyBhbmQgdXNlcwoJICBNU1BST0pFQ1RfVEVNUExBVEVfRElSRUNUT1JZIGlmIGl0IGV4aXN0cwoKMjAwMS0wNS0xMCAxNDowMiAga2luZwoKCSogQ01ha2UuZG9jOiBCVUc6IFJlbW92aW5nIHRoaXMgZmlsZS4gIEl0IGhhcyBiZWVuIHJlcGxhY2VkIGJ5CgkgIENNYWtlLmRvYy5neiB0byBnZXQgYXJvdW5kIGEgcHJvYmxlbSB3aXRoIENWUy4KCjIwMDEtMDUtMTAgMTM6NTIgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbVRhcmdldC5oOiBhZGRlZCB3aW4zMiBleGVjdXRhYmxlIG9wdGlvbgoKMjAwMS0wNS0xMCAxMjoyNSAga2luZwoKCSogQ01ha2UuZG9jLmd6OiBUZXN0aW5nIHN0cmFuZ2UgY3ZzIHByb2JsZW0gd2l0aCAuZG9jIGZpbGVzLgoKMjAwMS0wNS0xMCAxMjowNSAga2luZwoKCSogQ01ha2UucGRmLCBDTWFrZS5wZGYuZ3o6IEJVRzogUmVtb3Zpbmcgb2xkIENNYWtlLnBkZiBhbmQgYWRkaW5nCgkgIHRoZSBnemlwcGVkIHZlcnNpb24sIENNYWtlLnBkZi5neiBiZWNhdXNlIG9mIGZpbGUgc2l6ZSBwcm9ibGVtcwoJICB3aXRoIGN2cy4KCjIwMDEtMDUtMTAgMTE6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogUmVtb3ZlZCBzdHJheSBkZWJ1Z2dpbmcKCSAgb3V0cHV0IHN0YXRlbWVudC4gIEFsc28gcmVuYW1lZCBzb21lIHZhcmlhYmxlcyBmb3IgY2xhcml0eS4KCjIwMDEtMDUtMTAgMTE6MTkgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRVJSOiBSdW5Db21tYW5kIG1ldGhvZCBuZWVkZWQgcmV0dXJuIGluCgkgIHVuaXguCgoyMDAxLTA1LTEwIDExOjE4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eDogRVJSOgoJICBSZW1vdmVkIHVudXNlZCB2YXJpYWJsZQoKMjAwMS0wNS0xMCAwOTo0NSAga2luZwoKCSogQ01ha2VWYXJpYWJsZXMubWFrZS5pbjogQlVHOiBBTlNJX0NGTEFHUyAtPiBDTUFLRV9BTlNJX0NGTEFHUwoKMjAwMS0wNS0wOSAxODowMCAgZ2VvZmYKCgkqIFNvdXJjZS86IEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwgY21EU1BNYWtlZmlsZS5jeHgsCgkgIGNtRFNQV3JpdGVyLmN4eDogQUREIExJTkszMnMgYXJlIG5vdyBvbiBtdWx0aXBsZSBsaW5lcyBiZWNhdXNlIFZDCgkgIGJyZWFrcyBvdGhlcndpc2UKCjIwMDEtMDUtMDkgMTc6MzggIGJhcnJlCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IEVOSDogYWRkIDguMyBzdXBwb3J0CgoyMDAxLTA1LTA5IDE2OjE3ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBCVUc6IGVzY2FwZSBzcGFjZXMKCSAgYmVmb3JlIGFkZGluZyAubGliCgoyMDAxLTA1LTA5IDE2OjA4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBFTkg6IGVzY2FwZSBzcGFjZXMKCjIwMDEtMDUtMDkgMTU6NDggIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHg6IEVOSDogb25seSBhZGQgLmxpYgoJICBpZiBubyAubGliIGV4aXN0cwoKMjAwMS0wNS0wOSAxNDo1MyAgaG9mZm1hbgoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZSwgTW9kdWxlcy9GaW5kR1RLLmNtYWtlLAoJICBNb2R1bGVzL0ZpbmRKTkkuY21ha2UsIE1vZHVsZXMvRmluZEpQRUcuY21ha2UsCgkgIE1vZHVsZXMvRmluZE1QSS5jbWFrZSwgTW9kdWxlcy9GaW5kVENMLmNtYWtlLCBTb3VyY2UvY21Db21tYW5kLmgsCgkgIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDoKCSAgY2hhbmdlIGZpbmQgbGlicmFyeSBhbmQgZmluZCBwcm9ncmFtIHRvIGxvb2sgZm9yIG1vcmUgdGhhbiBvbmUKCSAgbmFtZQoKMjAwMS0wNS0wOSAxMzo0NCAgaG9mZm1hbgoKCSogU291cmNlL2NtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmN4eDogQlVHOiBtYXRjaCBjYWxsZWQgb24gaW52YWxpZAoJICBudW1iZXIKCjIwMDEtMDUtMDkgMTM6MjIgIG1hcnRpbmsKCgkqIENNYWtlTWFzdGVyLm1ha2UuaW4sIENNYWtlUnVsZXMubWFrZS5pbiwKCSAgQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIENNYWtlVG9wTWFrZWZpbGVUZW1wbGF0ZS5pbiwKCSAgQ01ha2VWYXJpYWJsZXMubWFrZS5pbiwgY29uZmlndXJlLmluLnNhbXBsZSwgU291cmNlL01ha2VmaWxlLmluOgoJICBjbGVhbmVkIHVwIGNvbmZpZ3VyZSBzb21lCgoyMDAxLTA1LTA5IDExOjE1ICBtaWxsZXJqdgoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRklYOiBvbmx5IGNsZWFyIHRoZSBjYWNoZSBvbiBhIGxvYWQKCSAgd2hlbiB0aGUgbG9hZCBuZWVkcyB0byByZWFkIGludGVybmFsIHZhbHVlcy4JT3RoZXJ3aXNlLCBpdCBpcwoJICBhc3N1bWVkIHRoYXQgd2UgYXJlIHJlYWRpbmcgYW5vdGhlciBwcm9qZWN0cyBjYWNoZS4KCjIwMDEtMDUtMDkgMTA6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcDogQlVHOiBmaXggY3Jhc2gKCjIwMDEtMDUtMDkgMDk6NTIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eDogQlVHOiBmaXggdXNlIGJleW9uZCBlbmQgb2YKCSAgYXJyYXkKCjIwMDEtMDUtMDkgMDg6NTEgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUxvYWRDYWNoZUNvbW1hbmQuY3h4LAoJICBjbUxvYWRDYWNoZUNvbW1hbmQuaCwgY21Tb3VyY2VGaWxlLmN4eDogYWRkZWQgbG9hZCBjYWNoZSBjb21tYW5kCgkgIGFuZCBmaXhlZCBzb3VyY2UgZmlsZQoKMjAwMS0wNS0wOCAxNzozNyAga2luZwoKCSogU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eDogRVJSOiBMb2FkQ2FjaGUgbmVlZGVkIHRvIHJldHVybiBhCgkgIHZhbHVlLgoKMjAwMS0wNS0wOCAxNzowNCAgbWFydGluawoKCSogU291cmNlLzogY21DYWNoZU1hbmFnZXIuY3h4LCBjbUNhY2hlTWFuYWdlci5oOiBhZGRlZCBhYmlsaXR5IHRvCgkgIGxvYWQgYW5vdGhlciBjYWNoZQoKMjAwMS0wNS0wOCAxNzowMyAgbWFydGluawoKCSogU291cmNlL2NtUHJvamVjdENvbW1hbmQuY3h4OiBub3cgYWRkcyBzcmMgYW5kIGJpbiBkaXIgaW50byBjYWNoZQoKMjAwMS0wNS0wOCAxNjoyMCAgbWFydGluawoKCSogU291cmNlL2NtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBmaXhlZCBidWcgaW4gaW5pdCBjb2RlCgoyMDAxLTA1LTA4IDE2OjAxICBob2ZmbWFuCgoJKiBjb25maWd1cmUuaW4uc2FtcGxlOiBjbGVhbiB1cAoKMjAwMS0wNS0wOCAxMzo0MCAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9Qcm9wZXJ0eUxpc3QuY3BwOiBFTkg6IGFkZCBpbml0aWFsIHBhdGggc3VwcG9ydAoJICBmb3IgZmlsZSBjaG9vc2VycwoKMjAwMS0wNS0wOCAxMTo0MCAgbWFydGluawoKCSogU291cmNlL2NtVGFyZ2V0TGlua0xpYnJhcmllc0NvbW1hbmQuY3h4OiBCVUc6IGFkZGVkIGFyZzAgdG8gbGluawoJICBsaWJyYXJpZXMKCjIwMDEtMDUtMDggMTA6MTYgIGliYW5legoKCSogTW9kdWxlcy9GaW5kRkxUSy5jbWFrZTogTW9kdWxlIHRvIHNlYXJjaCB0aGUgcGF0aCBmb3IgRkxUSwoJICBsaWJyYXJ5ICAgKCBodHRwOi8vd3d3LmZsdGsub3JnICkKCjIwMDEtMDUtMDcgMTg6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21NYWtlZmlsZS5jeHg6IEVOSDogTW92ZWQgY2FjaGUgZW50cnkgYWRkaXRpb24gaW50bwoJICBjbU1ha2VmaWxlOjpBZGRMaWJyYXJ5IGFuZCBBZGRFeGVjdXRhYmxlIHNvIHRoYXQgY29tbWFuZHMgZG8gbm90CgkgIGhhdmUgdG8gYWRkIGl0IGV4cGxpY2l0bHkuCgoyMDAxLTA1LTA3IDE4OjExICBob2ZmbWFuCgoJKiBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgU291cmNlL0NNYWtlQnVpbGRUYXJnZXRzLmN4eCwKCSAgU291cmNlL01ha2VmaWxlLmluLCBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LAoJICBTb3VyY2UvY21Db21tYW5kcy5jeHgsIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGUuY3h4LAoJICBTb3VyY2UvY21Db25maWd1cmVGaWxlLmgsIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQ29uZmlndXJlRmlsZUNvbW1hbmQuaCwgU291cmNlL2NtRXhlY1Byb2dyYW0uY3h4LAoJICBTb3VyY2UvY21FeGVjUHJvZ3JhbS5oLCBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21FeGVjUHJvZ3JhbUNvbW1hbmQuaCwgU291cmNlL2NtTWFrZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NYWtlRGlyZWN0b3J5Q29tbWFuZC5oLCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IEVOSDogY2FsbCBjb25maWd1cmUgZnJvbSBjbWFrZQoKMjAwMS0wNS0wNyAxMDowMiAgYmxlemVrCgoJKiBTb3VyY2UvY21Db25maWd1cmVGaWxlLmN4eDogQlVHOiBSZW1vdmluZyBSZW1vdmUgVmFyaWFibGVzIGNhbGwKCjIwMDEtMDUtMDcgMDk6MTYgIGdlb2ZmCgoJKiBjb25maWd1cmUuaW4uc2FtcGxlOiBVbmRlciBGcmVlQlNEOiBzaG91bGQgYmUKCSAgQ01BS0VfU0hMSUJfQlVJTERfRkxBR1MgYW5kIG5vdCBDTUFLRV9TSExJQl9MSU5LX0ZMQUdTLgoJICBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZSBub3QgYmVpbmcgbWFkZQoKMjAwMS0wNS0wNSAxMToyOCAgaG9mZm1hbgoKCSogU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4OiBCVUc6IGFkZCBpbnRlcm5hbCBjYWNoZSBlbnRyeQoJICBmb3IgZXhlY3V0YWJsZXMsIHNvIGRlcGVuZHMgY2FuIHdvcmsKCjIwMDEtMDUtMDUgMTE6MDMgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQWRkVGFyZ2V0Q29tbWFuZC5jeHgsIGNtQWRkVGFyZ2V0Q29tbWFuZC5oLAoJICBjbUNhYmxlSW5zdGFudGlhdGVDbGFzc0NvbW1hbmQuaCwgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5oLAoJICBjbUNvbW1hbmRzLmN4eCwgY21MaWJyYXJ5Q29tbWFuZC5jeHg6IEJVRzogYWRkIHJlbW92ZWQgY29tbWFuZCwKCSAgYW5kIHNvcnQgdGhlIG9yZGVyIGluIGNtQ29tbWFuZHMuY3h4CgoyMDAxLTA1LTA0IDE3OjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBmaXhlcyBmb3IKCSAgdW50aWx0aXkgdGFyZ2V0cyBpbiBhbGwKCjIwMDEtMDUtMDQgMTY6NDQgIGJsZXplawoKCSogU291cmNlL2NtQnVpbGROYW1lQ29tbWFuZC5jeHg6IEVOSDogUHJvcGVyIGJ1aWxkIG5hbWUKCjIwMDEtMDUtMDQgMTY6NDMgIGJsZXplawoKCSogU291cmNlL2NtU2l0ZU5hbWVDb21tYW5kLmN4eDogRU5IOiBDb3JyZWN0IHNpdGVuYW1lCgoyMDAxLTA1LTA0IDE1OjUwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuY3h4LAoJICBjbUFkZEN1c3RvbVRhcmdldENvbW1hbmQuaCwgY21BZGRUYXJnZXRDb21tYW5kLmN4eCwKCSAgY21BZGRUYXJnZXRDb21tYW5kLmgsIGNtRFNXTWFrZWZpbGUuY3h4LCBjbURTV1dyaXRlci5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsIGNtVGFyZ2V0LmgsCgkgIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eDogb3B0aW9uIHRvIG1ha2UgdXRpbGl0aWVzIGluIHRoZSBhbGwKCSAgdGFyZ2V0CgoyMDAxLTA1LTA0IDE0OjUzICBob2ZmbWFuCgoJKiBDTWFrZVN5c3RlbUNvbmZpZy5jbWFrZS5pbiwgQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlOiBFTkg6CgkgIG1vdmUgdG8gY21ha2UgZm9yIGl0a0NvbmZpZ3VyZS5oLmluCgoyMDAxLTA1LTA0IDEyOjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4OiB1cGRhdGVzCgoyMDAxLTA1LTA0IDExOjM1ICBnZW9mZgoKCSogTW9kdWxlcy86IEZpbmRHVEsuY21ha2UsIEZpbmRKUEVHLmNtYWtlOiBJTkNMVURFIHRoZXNlIHRvIGZpbmQKCSAgdGhlIHJlbGV2YW50IGxpYnJhcmllcwoKMjAwMS0wNS0wNCAxMTozNCAgaG9mZm1hbgoKCSogU291cmNlLzogY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmN4eCwKCSAgY21BZGRDdXN0b21UYXJnZXRDb21tYW5kLmgsIGNtQnVpbGRDb21tYW5kLmN4eCwgY21CdWlsZENvbW1hbmQuaCwKCSAgY21CdWlsZE5hbWVDb21tYW5kLmN4eCwgY21CdWlsZE5hbWVDb21tYW5kLmgsIGNtRXhlY1Byb2dyYW0uY3h4LAoJICBjbUV4ZWNQcm9ncmFtLmgsIGNtU2l0ZU5hbWVDb21tYW5kLmN4eCwgY21TaXRlTmFtZUNvbW1hbmQuaDogRU5IOgoJICBtb3ZlIHRlc3Rpbmcgc3R1ZmYgdG8gY21ha2UgZnJvbSBjb25maWd1cmUsIGdvb2QgYnllIGRhc2hib2FyZC4uLgoJICA6KQoKMjAwMS0wNS0wNCAxMTozMCAgaG9mZm1hbgoKCSogQ01ha2VSdWxlcy5tYWtlLmluLCBDTWFrZVN5c3RlbUNvbmZpZy50eHQuaW4sCgkgIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy50eHQsIFNvdXJjZS9jbUFkZFRhcmdldENvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRUYXJnZXRDb21tYW5kLmgsIFNvdXJjZS9jbUNhY2hlTWFuYWdlci5jeHgsCgkgIFNvdXJjZS9jbUNvbW1hbmRzLmN4eCwgU291cmNlL2NtRFNXTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21EU1dXcml0ZXIuY3h4LCBTb3VyY2UvY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU9wdGlvbkNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21PcHRpb25Db21tYW5kLmgsIFNvdXJjZS9jbVNvdXJjZUdyb3VwLmN4eCwKCSAgU291cmNlL2NtU291cmNlR3JvdXAuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4LAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5oLCBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmM6IEVOSDogbW92ZSB0ZXN0aW5nIHN0dWZmIHRvIGNtYWtlCgkgIGZyb20gY29uZmlndXJlLCBnb29kIGJ5ZSBkYXNoYm9hcmQuLi4gOikKCjIwMDEtMDUtMDQgMTA6NDQgIGtpbmcKCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBBZGRlZCBzdXBwb3J0IHRvIEVzY2FwZVNwYWNlcyB0bwoJICB1c2UgZG91YmxlIHF1b3RlcyBvbiB3aW5kb3dzLgoKMjAwMS0wNS0wNCAxMDo0NCAga2luZwoKCSogU291cmNlL2NtQ2FibGVQYWNrYWdlQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQgdXNlIG9mIENNQUtFIGNhY2hlCgkgIGVudHJ5IGZvciBnZW5lcmF0aW5nIHRoZSBEU1AvbWFrZWZpbGUgYnVpbGQgcnVsZXMuCgoyMDAxLTA1LTA0IDEwOjQ0ICBraW5nCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLCBjbURTUFdyaXRlci5jeHgsCgkgIGNtRFNQV3JpdGVyLmg6IEVOSDogQWRkZWQgdXNlIG9mIENNQUtFIGNhY2hlIGVudHJ5IGZvciBnZW5lcmF0aW5nCgkgIHRoZSBEU1AgYnVpbGQgcnVsZXMuCgoyMDAxLTA1LTA0IDEwOjEzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IG1pbm9yIGZpeGVzCgoyMDAxLTA1LTA0IDA5OjU2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4OiBmaXhlZCBjdXN0b20gY29tbWFuZAoJICBydWxlCgoyMDAxLTA1LTA0IDA5OjQ3ICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRKTkkuY21ha2U6IG5ldyBtb2R1bGUKCjIwMDEtMDUtMDQgMDk6MzkgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHgsIGNtU291cmNlR3JvdXAuY3h4LAoJICBjbVNvdXJjZUdyb3VwLmgsIGNtVlRLV3JhcEphdmFDb21tYW5kLmN4eDogYmV0dGVyIGN1c3RvbSBydWxlcwoKMjAwMS0wNS0wNCAwODo0NiAgbWFydGluawoKCSogU291cmNlLzogY21GdW5jdGlvbkJsb2NrZXIuaCwgY21JZkNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4OiBiZXR0ZXIgSWYgY2hlY2tzCgoyMDAxLTA1LTA0IDA4OjQ1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVNvdXJjZUZpbGVzUmVxdWlyZUNvbW1hbmQuY3h4LAoJICBjbVNvdXJjZUZpbGVzUmVxdWlyZUNvbW1hbmQuaCwgY21Vbml4RGVmaW5lc0NvbW1hbmQuY3h4LAoJICBjbVVuaXhEZWZpbmVzQ29tbWFuZC5oLCBjbVVuaXhMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21Vbml4TGlicmFyaWVzQ29tbWFuZC5oLCBjbVdpbjMyRGVmaW5lc0NvbW1hbmQuY3h4LAoJICBjbVdpbjMyRGVmaW5lc0NvbW1hbmQuaCwgY21XaW4zMkluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwKCSAgY21XaW4zMkluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmgsIGNtV2luMzJMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21XaW4zMkxpYnJhcmllc0NvbW1hbmQuaDogcmVtb3ZlZCBvbGQgZnVuY3Rpb25zCgoyMDAxLTA1LTAzIDE2OjU1ICBraW5nCgoJKiBTb3VyY2UvOiBDTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsIENNYWtlU2V0dXBDTUQuY3h4LAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogQWRkZWQgZ2VuZXJhdGlvbiBvZiBpbnRlcm5hbAoJICBDTUFLRSBjYWNoZSBlbnRyeSB3aXRoIHBhdGggdG8gY29tbWFuZC1saW5lIENNYWtlIGV4ZWN1dGFibGUuCgoyMDAxLTA1LTAzIDE2OjU1ICBraW5nCgoJKiBTb3VyY2UvOiBjbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVN5c3RlbVRvb2xzLmg6IEVOSDogQWRkZWQgY21TeXN0ZW1Ub29sczo6RmluZFByb2dyYW0oKSBhbmQKCSAgZnVsbC1wYXRoIGRldGVjdGlvbiB1dGlsaXRpZXMuCgoyMDAxLTA1LTAzIDE1OjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbW1hbmRzLmN4eCwgY21WVEtXcmFwSmF2YUNvbW1hbmQuY3h4LAoJICBjbVZUS1dyYXBKYXZhQ29tbWFuZC5oOiBtaW5vciBmaXhlcwoKMjAwMS0wNS0wMyAxMTowNCAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiByZW1vdmVkIGRlcHJlY2F0ZWQgY29tbWFuZHMKCjIwMDEtMDUtMDMgMTA6NTggIG1hcnRpbmsKCgkqIENNYWtlU3lzdGVtQ29uZmlnLmNtYWtlLmluOiBiZXR0ZXIgY29uZmlnIGluZm8KCjIwMDEtMDUtMDMgMTA6MzUgIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNvbmZpZ3VyZUZpbGUuY3h4OiBub3cgc3VwcG9ydCBjbWFrZWRlZmluZQoKMjAwMS0wNS0wMyAwODo1MyAgbWFydGluawoKCSogQ01ha2VTeXN0ZW1Db25maWcudHh0LmluLCBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcudHh0OiB1c2VzCgkgIGNtYWtlIGNvbW1hbmRzIG5vdwoKMjAwMS0wNS0wMyAwODo1MiAgbWFydGluawoKCSogQ01ha2VTeXN0ZW1Db25maWcuY21ha2UuaW4sIENNYWtlU3lzdGVtQ29uZmlnLnR4dC5pbiwKCSAgQ01ha2VXaW5kb3dzU3lzdGVtQ29uZmlnLmNtYWtlLCBDTWFrZVdpbmRvd3NTeXN0ZW1Db25maWcudHh0LAoJICBTb3VyY2UvY21NYWtlZmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmg6IHN5c3RlbSBjb25maWcgdXNlcwoJICBjbWFrZSBjb21tYW5kcyBub3cKCjIwMDEtMDUtMDIgMTc6MzMgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZE1QSS5jbWFrZTogbWlub3IgZml4ZXMKCjIwMDEtMDUtMDIgMTc6MDcgIG1hcnRpbmsKCgkqIE1vZHVsZXMvRmluZE1QSS5jbWFrZTogbmV3IG1vZHVsZQoKMjAwMS0wNS0wMiAxNDowOCAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kT3BlbkdMLmNtYWtlOiBzaW1wbGUgbW9kdWxlCgoyMDAxLTA1LTAyIDExOjUzICBtYXJ0aW5rCgoJKiBNb2R1bGVzL0ZpbmRUQ0wuY21ha2U6IGZpbmRzIHRrIGFzIHdlbGwKCjIwMDEtMDUtMDIgMTE6NTMgIG1hcnRpbmsKCgkqIFNvdXJjZS86IENNYWtlQnVpbGRUYXJnZXRzLmN4eCwgQ01ha2VTZXR1cENNRC5jeHg6IGNhY2hlIGxvYWRlZAoJICBpbnRvIG1ha2VmaWxlCgoyMDAxLTA1LTAxIDE3OjUyICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHg6CgkgIGZpeGVkIGJ1ZyBpbiBsaW1pdGluZyB0byBzb3VyY2UgbGlzdHMKCjIwMDEtMDUtMDEgMTc6MzcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmN4eCwgY21DYWJsZURlZmluZVNldENvbW1hbmQuaCwKCSAgY21DYWJsZVdyYXBDb21tYW5kLmN4eCwgY21DYWJsZVdyYXBDb21tYW5kLmg6IEVOSDogQ2hhbmdlZAoJICBjbUNhYmxlV3JhcENvbW1hbmQgdG8gaW5oZXJpdCBmcm9tIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kIHNpbmNlCgkgIHRoZXkgZG8gYWxtb3N0IGV4YWN0bHkgdGhlIHNhbWUgdGhpbmcuICBBZGRlZCBhIEdldFhtbFRhZyB2aXJ0dWFsCgkgIGZ1bmN0aW9uIHRvIGJvdGggY2xhc3NlcyB0byByZXR1cm4gd2hhdCBYTUwgdGFnIHRvIGdlbmVyYXRlIGluCgkgIHRoZSBzZXQncyBvdXRwdXQuICBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZCBnZW5lcmF0ZXMgYSAiU2V0IiB0YWcsCgkgIGFuZCBjbUNhYmxlV3JhcENvbW1hbmQgZ2VuZXJhdGVzIGEgIldyYXBwZXJTZXQiIHRhZy4JV2hhdCBpcwoJICBpbnNpZGUgdGhlIHRhZ3MgaXMgc3RpbGwgZ2VuZXJhdGVkIGJ5IHRoZSBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZAoJICBzdXBlcmNsYXNzLgoKMjAwMS0wNS0wMSAxNzozNSAga2luZwoKCSogU291cmNlLzogY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmgsIGNtQ2FibGVJbnN0YW50aWF0ZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmgsIGNtQ2FibGVQYWNrYWdlRW50cnlDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VFbnRyeUNvbW1hbmQuaCwgY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuaDogRU5IOiBDaGFuZ2VkIFdyaXRlQ29uZmlndXJhdGlvbiBiYWNrCgkgIHRvIGNvbnN0IGJlY2F1c2UgaXQgZG9lc24ndCBuZWVkIHRvIHJlcG9ydCBlcnJvcnMgYW55bW9yZS4KCjIwMDEtMDUtMDEgMTc6MTIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IFV0aWxpdHlGb290ZXIuZHNwdGVtcGxhdGUsIFV0aWxpdHlIZWFkZXIuZHNwdGVtcGxhdGU6CgkgIEFERDogYWRkIHV0aWx0aXR5IHRlbXBsYXRlcwoKMjAwMS0wNS0wMSAxNjo1NSAgaG9mZm1hbgoKCSogY29uZmlndXJlLmluLnNhbXBsZSwgU291cmNlL2NtQWRkVGFyZ2V0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbURTUE1ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNQTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmgsCgkgIFNvdXJjZS9jbURTV01ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNXTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwgU291cmNlL2NtRFNXV3JpdGVyLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogaW1wbGVtZW50IEFERF9UQVJHRVQKCSAgY29tbWFuZCwgYW5kIGFkZCBhbiBBTExfQlVJTEQgdGFyZ2V0CgoyMDAxLTA1LTAxIDE2OjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbU1ha2VmaWxlLmN4eCwgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBjYWNoZQoJICBub3cgbG9hZGVkIGludG8gbWFrZWZpbGUKCjIwMDEtMDUtMDEgMTY6MjggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaDogYWRkZWQgbWV0aG9kIHRvCgkgIHB1Y2ggY2FjaGUgaW50byBtYWtlZmlsZSBkZWZpbmVzCgoyMDAxLTA1LTAxIDE2OjI3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuY3h4OiBzbGlnaHQgYnVnIGluIElmIGNvbW1hbmQgSSB0aGluawoKMjAwMS0wNS0wMSAxMToyOCAgbWFydGluawoKCSogTW9kdWxlcy9GaW5kVENMLmNtYWtlOiBmaXJzdCBtb2R1bGUKCjIwMDEtMDUtMDEgMTE6MTYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbUVsc2VDb21tYW5kLmN4eCwgY21JZkNvbW1hbmQuY3h4LAoJICBjbUlmQ29tbWFuZC5oLCBjbVNldENvbW1hbmQuY3h4LCBjbVNldENvbW1hbmQuaCwKCSAgY21WVEtXcmFwUHl0aG9uQ29tbWFuZC5jeHgsIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4OiBuZXcgc2V0CgkgIGNvbW1hbmQgYW5kIElGIE5PVAoKMjAwMS0wNC0zMCAxNDo1NiAgbWFydGluawoKCSogU291cmNlLzogY21FbHNlQ29tbWFuZC5jeHgsIGNtRmluZEZpbGVDb21tYW5kLmN4eCwKCSAgY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LCBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogYnVnIGZpeGVzCgoyMDAxLTA0LTMwIDExOjUxICBraW5nCgoJKiBTb3VyY2UvY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eDogQlVHOiBGaXhlZCBvdXRwdXQgb2YKCSAgQ01ha2VMaXN0cy50eHQgcGF0aCBpbiBjYWJsZV9jb25maWcueG1sIGRlcGVuZGVuY3kgbGlzdCBmb3IgdW5peC4KCSAgTmVlZGVkIHRvIGVzY2FwZSBzcGFjZXMgaW5zdGVhZCBvZiBlbmNsb3NpbmcgaW4gZG91YmxlIHF1b3Rlcy4KCjIwMDEtMDQtMzAgMTE6MjkgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmg6IEVSUjogUmVtb3ZlZCBhIGNvbmZsaWN0IHRoYXQgd2FzIGNoZWNrZWQgaW4uCgoyMDAxLTA0LTMwIDEwOjUyICBhbm9ueW1vdXMKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsIGNtSW5jbHVkZUNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVDb21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6IE5ldyBjb21tYW5kOgoJICBJTkNMVURFKHNvbWVmaWxlLnR4dCkKCjIwMDEtMDQtMzAgMTA6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LAoJICBjbURTV01ha2VmaWxlLmN4eCwgY21EU1dXcml0ZXIuY3h4LCBjbUZpbmRJbmNsdWRlQ29tbWFuZC5jeHgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oLCBjbVRhcmdldExpbmtMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21UYXJnZXRMaW5rTGlicmFyaWVzQ29tbWFuZC5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmg6IGFkZGVkIFRBUkdFVF9MSU5LX0xJQlJBUlkgY29tbWFuZCBhbmQKCSAgc3VwcG9ydCBmb3IgZGVidWcgYW5kIHJlbGVhc2UgbGlicmFyaWVzIHRvIGxpbmsgYWdhaW5zdAoKMjAwMS0wNC0yNyAxNDo1NyAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRVJSOiBSZW5hbWVkIEN1c3RvbUNvbW1hbmRzCgkgIHRvIEJ1aWxkUnVsZXMgdG8gbWF0Y2ggY2hhbmdlIGluIGNtU291cmNlR3JvdXAuCgoyMDAxLTA0LTI3IDE0OjUyICBraW5nCgoJKiBTb3VyY2UvY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eDogQlVHOiBSZW1vdmVkIG91dHB1dCBvZiBHQ0NfWE1MCgkgIHJ1bGVzIHdoZW4gdGhlIGNvbW1hbmQgY2Fubm90IGJlIGZvdW5kLgoKMjAwMS0wNC0yNyAxNDo1MSAga2luZwoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQTWFrZWZpbGUuaCwgY21EU1BXcml0ZXIuY3h4LAoJICBjbURTUFdyaXRlci5oLCBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oOiBCVUc6IFJlbW92ZWQKCSAgb3V0cHV0IG9mIGR1YWwgcnVsZXMgZm9yIHNvdXJjZSBmaWxlcyB0aGF0IGFyZSBwcm9jZXNzZWQgYnkgYm90aAoJICB0aGUgY29tcGlsZXIgYW5kIGJ5IGEgY3VzdG9tIGNvbW1hbmQuICBBbHNvIHJlbW92ZWQgZ2VuZXJhdGlvbiBvZgoJICBkdXBsaWNhdGUgQ01ha2VMaXN0cy50eHQgaW4gdGhlIHByb2plY3QgZmlsZXMuCgoyMDAxLTA0LTI3IDE0OjQwICBtYXJ0aW5rCgoJKiBDTWFrZVN5c3RlbUNvbmZpZy50eHQuaW4sIENNYWtlV2luZG93c1N5c3RlbUNvbmZpZy50eHQ6IGdldAoJICBzeXN0ZW0gaW5mbyBpbnRvIGNtYWtlCgoyMDAxLTA0LTI3IDE0OjI1ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGUuY3h4LCBjbUNvbmZpZ3VyZUZpbGUuaDogYWRkZWQgY29uZmlndXJlCgkgIGZpbGUKCjIwMDEtMDQtMjcgMTE6NTMgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZS5pbi5zYW1wbGU6IEJVRzogcnVuIGNhY2hlIGJ1aWxkIHdpdGggZWFjaCBjb25maWd1cmUKCjIwMDEtMDQtMjcgMTE6MzYgIGhvZmZtYW4KCgkqIENNYWtlUnVsZXMubWFrZS5pbiwgU291cmNlL2NtTWFrZWZpbGUuY3h4OiBCVUc6IGZpeCBpbnBsYWNlCgkgIGJ1aWxkcwoKMjAwMS0wNC0yNyAxMTowMyAgaG9mZm1hbgoKCSogU291cmNlL2NtTWFrZWZpbGUuY3h4OiBFTkg6IGZpeCBpbiBzb3VyY2UgYnVpbGQgd2l0aCBub24tZ251CgoyMDAxLTA0LTI3IDA5OjMyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVOSDogYWRkIG91dHB1dCB3aGVuIGNyZWF0aW5nIGZpbGVzCgoyMDAxLTA0LTI3IDA5OjMwICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GaW5kUGF0aENvbW1hbmQuY3h4OiBiZXR0ZXIgaGVscCBzdHJpbmdzCgoyMDAxLTA0LTI3IDA5OjEzICB3aWxsCgoJKiBTb3VyY2UvY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmg6IEVOSDpOZXcgY29weXJpZ2h0CgoyMDAxLTA0LTI3IDA4OjQ2ICBtYXJ0aW5rCgoJKiBDTWFrZVZhcmlhYmxlcy5tYWtlLmluOiByZW1vdmVkIG9sZCBqdW5rCgoyMDAxLTA0LTI3IDA4OjAxICB3aWxsCgoJKiBTb3VyY2UvOiBDTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsIENNYWtlU2V0dXBDTUQuY3h4LAoJICBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5jeHgsIGNtQWRkRGVmaW5pdGlvbnNDb21tYW5kLmgsCgkgIGNtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LCBjbUFkZEV4ZWN1dGFibGVDb21tYW5kLmgsCgkgIGNtQWRkTGlicmFyeUNvbW1hbmQuY3h4LCBjbUFkZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtQWRkVGFyZ2V0Q29tbWFuZC5jeHgsIGNtQWRkVGFyZ2V0Q29tbWFuZC5oLAoJICBjbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUJ1aWxkU2hhcmVkTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDbG9zZU5hbWVzcGFjZUNvbW1hbmQuY3h4LCBjbUNhYmxlQ2xvc2VOYW1lc3BhY2VDb21tYW5kLmgsCgkgIGNtQ2FibGVDb21tYW5kLmN4eCwgY21DYWJsZUNvbW1hbmQuaCwgY21DYWJsZURhdGEuY3h4LAoJICBjbUNhYmxlRGF0YS5oLCBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmgsIGNtQ2FibGVJbnN0YW50aWF0ZUNsYXNzQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVJbnN0YW50aWF0ZUNsYXNzQ29tbWFuZC5oLCBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5oLCBjbUNhYmxlT3Blbk5hbWVzcGFjZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlT3Blbk5hbWVzcGFjZUNvbW1hbmQuaCwgY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VDb21tYW5kLmgsIGNtQ2FibGVQYWNrYWdlRW50cnlDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VFbnRyeUNvbW1hbmQuaCwgY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuaCwgY21DYWJsZVdyYXBDb21tYW5kLmN4eCwKCSAgY21DYWJsZVdyYXBDb21tYW5kLmgsIGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwKCSAgY21Db21tYW5kLmgsIGNtQ29tbWFuZHMuaCwgY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5jeHgsCgkgIGNtQ29uZmlndXJlRmlsZU5vQXV0b2NvbmYuaCwgY21DdXN0b21Db21tYW5kLmN4eCwKCSAgY21DdXN0b21Db21tYW5kLmgsIGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUE1ha2VmaWxlLmgsCgkgIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BXcml0ZXIuaCwgY21EU1dNYWtlZmlsZS5jeHgsCgkgIGNtRFNXTWFrZWZpbGUuaCwgY21EU1dXcml0ZXIuY3h4LCBjbURTV1dyaXRlci5oLCBjbURpcmVjdG9yeS5jeHgsCgkgIGNtRGlyZWN0b3J5LmgsIGNtRWxzZUNvbW1hbmQuY3h4LCBjbUVsc2VDb21tYW5kLmgsCgkgIGNtRW5kSWZDb21tYW5kLmN4eCwgY21FbmRJZkNvbW1hbmQuaCwgY21GaW5kRmlsZUNvbW1hbmQuY3h4LAoJICBjbUZpbmRGaWxlQ29tbWFuZC5oLCBjbUZpbmRJbmNsdWRlQ29tbWFuZC5jeHgsCgkgIGNtRmluZEluY2x1ZGVDb21tYW5kLmgsIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21GaW5kTGlicmFyeUNvbW1hbmQuaCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBjbUZ1bmN0aW9uQmxvY2tlci5oLCBjbUlmQ29tbWFuZC5jeHgsCgkgIGNtSWZDb21tYW5kLmgsIGNtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLCBjbUxpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21MaWJyYXJ5Q29tbWFuZC5oLCBjbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuY3h4LAoJICBjbUxpbmtEaXJlY3Rvcmllc0NvbW1hbmQuaCwgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LAoJICBjbU1TUHJvamVjdEdlbmVyYXRvci5oLCBjbU1ha2VEZXBlbmQuY3h4LCBjbU1ha2VEZXBlbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21NYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtTWFrZWZpbGVHZW5lcmF0b3IuaCwgY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmgsCgkgIGNtUHJvamVjdENvbW1hbmQuY3h4LCBjbVByb2plY3RDb21tYW5kLmgsCgkgIGNtUmVndWxhckV4cHJlc3Npb24uY3h4LCBjbVJlZ3VsYXJFeHByZXNzaW9uLmgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZS5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmgsCgkgIGNtU291cmNlRmlsZXNSZXF1aXJlQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNSZXF1aXJlQ29tbWFuZC5oLAoJICBjbVNvdXJjZUdyb3VwLmN4eCwgY21Tb3VyY2VHcm91cC5oLCBjbVNvdXJjZUdyb3VwQ29tbWFuZC5jeHgsCgkgIGNtU291cmNlR3JvdXBDb21tYW5kLmgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLAoJICBjbVN1YmRpckNvbW1hbmQuY3h4LCBjbVN1YmRpckNvbW1hbmQuaCwgY21TeXN0ZW1Ub29scy5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuaCwgY21UYXJnZXQuY3h4LCBjbVRhcmdldC5oLCBjbVRlc3RzQ29tbWFuZC5jeHgsCgkgIGNtVGVzdHNDb21tYW5kLmgsIGNtVW5peERlZmluZXNDb21tYW5kLmN4eCwKCSAgY21Vbml4RGVmaW5lc0NvbW1hbmQuaCwgY21Vbml4TGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtVW5peExpYnJhcmllc0NvbW1hbmQuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgY21VdGlsaXR5U291cmNlQ29tbWFuZC5oLCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwKCSAgY21WVEtXcmFwVGNsQ29tbWFuZC5jeHgsIGNtV2luMzJEZWZpbmVzQ29tbWFuZC5jeHgsCgkgIGNtV2luMzJEZWZpbmVzQ29tbWFuZC5oLCBjbVdpbjMySW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbVdpbjMySW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaCwgY21XaW4zMkxpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbVdpbjMyTGlicmFyaWVzQ29tbWFuZC5oLCBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5oOiBFTkg6TmV3IGNvcHlyaWdodAoKMjAwMS0wNC0yNyAwNzo1NSAgd2lsbAoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsIGNtQWJzdHJhY3RGaWxlc0NvbW1hbmQuaDoKCSAgRU5IOkNvcHlyaWdodAoKMjAwMS0wNC0yNiAxNjoyMiAgbWFydGluawoKCSogU291cmNlLzogRExMSGVhZGVyLmRzcHRlbXBsYXRlLCBFWEVIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUE1ha2VmaWxlLmgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21EU1BXcml0ZXIuaCwgY21EU1dNYWtlZmlsZS5jeHgsIGNtRFNXV3JpdGVyLmN4eCwKCSAgY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVZUS1dyYXBQeXRob25Db21tYW5kLmN4eCwgTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIE1GQ0RpYWxvZy9yZXNvdXJjZS5oOiBzdXBwb3J0IGZvciBkZWJ1ZyBhbmQgb3B0IGxpYnJhcmllcwoKMjAwMS0wNC0yNiAxNTo0MSAgbWFydGluawoKCSogU291cmNlLzogY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmg6IGJldHRlciBoZWxwCgoyMDAxLTA0LTI2IDE1OjI3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlSW5zdGFudGlhdGVDbGFzc0NvbW1hbmQuY3h4LAoJICBjbUNhYmxlSW5zdGFudGlhdGVDbGFzc0NvbW1hbmQuaCwgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVJbnN0YW50aWF0ZUNvbW1hbmQuaCwgY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZVBhY2thZ2VFbnRyeUNvbW1hbmQuY3h4LCBjbUNhYmxlUGFja2FnZUVudHJ5Q29tbWFuZC5oLAoJICBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmN4eCwgY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5oLAoJICBjbUNhYmxlV3JhcENvbW1hbmQuY3h4LCBjbUNhYmxlV3JhcENvbW1hbmQuaDogRU5IOiBDaGFuZ2VkCgkgIFdyaXRlQ29uZmlndXJhdGlvbiB0byBub24tY29uc3Qgc28gaXQgY2FuIGRvIGVycm9yIGNoZWNraW5nLgoJICBBZGRlZCBwYXJzaW5nIGFuZCBvdXRwdXQgb2YgYSBuYW1lIGZvciBlYWNoIFdyYXBwZXJTZXQgZ2VuZXJhdGVkCgkgIGZyb20gYSBDQUJMRV9XUkFQIGNvbW1hbmQuCgoyMDAxLTA0LTI2IDE0OjUzICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUFkZExpYnJhcnlDb21tYW5kLmN4eCwKCSAgY21CdWlsZFNoYXJlZExpYnJhcmllc0NvbW1hbmQuY3h4LCBjbUNhY2hlTWFuYWdlci5jeHgsCgkgIGNtQ2FjaGVNYW5hZ2VyLmgsIGNtRmluZEZpbGVDb21tYW5kLmN4eCwKCSAgY21GaW5kSW5jbHVkZUNvbW1hbmQuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmN4eCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbU9wdGlvbkNvbW1hbmQuY3h4LCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLCBNRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcCwKCSAgTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5oOiBFTkg6IGFkZCBoZWxwIGZvciBjYWNoZSBlbnRyaWVzCgoyMDAxLTA0LTI2IDEwOjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNhY2hlTWFuYWdlci5jeHgsIGNtRWxzZUNvbW1hbmQuY3h4LCBjbUlmQ29tbWFuZC5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IHNvbWUgZml4ZXMgZm9yIElmIGNvbW1hbmRzCgoyMDAxLTA0LTI2IDA5OjM4ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZVNldHVwLmRzdywgRHVtcERvY3VtZW50YXRpb24uZHNwLCBjbUNvbW1hbmRzLmN4eCwKCSAgY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5oLCBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZEluY2x1ZGVDb21tYW5kLmN4eCwKCSAgY21GaW5kSW5jbHVkZUNvbW1hbmQuaCwgY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLCBjbUZpbmRQYXRoQ29tbWFuZC5jeHgsCgkgIGNtRmluZFBhdGhDb21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogYnVnIGZpeGVzCgoyMDAxLTA0LTI1IDE5OjAxICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IHNldCBpbml0aWFsIGJ1aWxkIHRvCgkgIHNvdXJjZSBkaXIKCjIwMDEtMDQtMjUgMTg6NTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEVOSDogYWRkIGVycm9yIGNoZWNraW5nCgkgIGZvciBlbXB0eSBidWlsZCBkaXIKCjIwMDEtMDQtMjUgMTY6MDkgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZS5pbi5zYW1wbGUsIFNvdXJjZS9NYWtlZmlsZS5pbiwKCSAgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmN4eCwgU291cmNlL2NtQ2FjaGVNYW5hZ2VyLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL01GQ0RpYWxvZy9DTWFrZURpYWxvZy5oLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLAoJICBTb3VyY2UvTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvUHJvcGVydHlMaXN0Lmg6IEVOSDogY2xlYW4gdXAgY21ha2UgR1VJIGFuZAoJICByZW1vdmUgdGhlIHBhcnNpbmcgb2YgQ01ha2VMaXN0cy50eHQgZmlsZXMgYnkgY29uZmlndXJlCgoyMDAxLTA0LTI1IDExOjQ3ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUVsc2VDb21tYW5kLmgsIGNtRW5kSWZDb21tYW5kLmgsIGNtSWZDb21tYW5kLmg6IHJ1bGVzCgkgIHdlcmUgbm90IGluaGVyaXRlZCB3aGVuIHRoZXkgc2hvdWxkIGJlCgoyMDAxLTA0LTI1IDA5OjM5ICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBCVUc6IEZpeGVkIG91dHB1dCBvZgoJICBkZXBlbmRlbmNpZXMuICBJdCBuZWVkcyB0byBsb29wIG92ZXIgdGhlIG1ha2VmaWxlJ3MgdGFyZ2V0cywgbm90CgkgIHRoZSBzb3VyY2UgbGlzdHMuCgoyMDAxLTA0LTI1IDA5OjM3ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlRGVwZW5kLmN4eDogU1RZTEU6IFVwZGF0ZWQgY29tbWVudHMgZm9yIG5hbWUgY2hhbmdlCgkgIGNtQ2xhc3NGaWxlLT5jbVNvdXJjZUZpbGUKCjIwMDEtMDQtMjUgMDk6MzMgIG1hcnRpbmsKCgkqIENNYWtlLmRvYzogdXBkYXRlZCB0aGUgZG9jcyBzb21lCgoyMDAxLTA0LTI0IDE3OjMzICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFUlI6IGNtQ2xhc3NGaWxlLmggLT4KCSAgY21Tb3VyY2VGaWxlLmggaW5jbHVkZSBjaGFuZ2UuCgoyMDAxLTA0LTI0IDE2OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNsYXNzRmlsZS5jeHgsIGNtQ2xhc3NGaWxlLmg6IG1hbnkgZml4ZXMgYW5kIGNsZWFudXAKCSAgYW5kIGZlYXR1cmVzCgoyMDAxLTA0LTI0IDE2OjQ2ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBDTWFrZUxpYi5kc3AsIE1ha2VmaWxlLmluLCBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmN4eCwgY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgY21DYWNoZU1hbmFnZXIuaCwgY21Db21tYW5kcy5jeHgsIGNtRFNQTWFrZWZpbGUuY3h4LAoJICBjbURTUE1ha2VmaWxlLmgsIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BXcml0ZXIuaCwKCSAgY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlRGVwZW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtT3B0aW9uQ29tbWFuZC5jeHgsIGNtU291cmNlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlcXVpcmVDb21tYW5kLmN4eCwgY21UYXJnZXQuaCwKCSAgY21Vbml4RGVmaW5lc0NvbW1hbmQuY3h4LCBjbVVuaXhMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVdpbjMyRGVmaW5lc0NvbW1hbmQuY3h4LAoJICBjbVdpbjMySW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LCBjbVdpbjMyTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIGNtV3JhcEV4Y2x1ZGVGaWxlc0NvbW1hbmQuY3h4LCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIGNtVlRLV3JhcFB5dGhvbkNvbW1hbmQuY3h4LCBjbVZUS1dyYXBQeXRob25Db21tYW5kLmgsCgkgIGNtVlRLV3JhcFRjbENvbW1hbmQuY3h4LCBjbVZUS1dyYXBUY2xDb21tYW5kLmgsIGNtU291cmNlRmlsZS5jeHgsCgkgIGNtU291cmNlRmlsZS5oLCBjbVRhcmdldC5jeHgsIGNtV3JhcFRjbENvbW1hbmQuY3h4LAoJICBjbVdyYXBUY2xDb21tYW5kLmg6IG1hbnkgZml4ZXMgYW5kIGNsZWFudXAgYW5kIGZlYXR1cmVzCgoyMDAxLTA0LTI0IDE0OjE5ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIFByb3BlcnR5TGlzdC5jcHAsCgkgIFByb3BlcnR5TGlzdC5oOiBCVUc6IGZpeCBkdXBsaWNhdGUgcHJvcGVydHkgaXRlbXMKCjIwMDEtMDQtMjQgMTM6MzIgIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvOiBDTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VTZXR1cERpYWxvZy5oLAoJICBQcm9wZXJ0eUxpc3QuY3BwOiBCVUc6IGZpeCBjYWNoZSB1cGRhdGVzCgoyMDAxLTA0LTI0IDEyOjQwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUJ1aWxkU2hhcmVkTGlicmFyaWVzQ29tbWFuZC5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmN4eCwKCSAgY21DYWNoZU1hbmFnZXIuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21PcHRpb25Db21tYW5kLmN4eCwgY21XcmFwVGNsQ29tbWFuZC5jeHgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogQlVHOiBmaXggYnVpbGQgZGlyZWN0b3J5IHByb2JsZW0KCjIwMDEtMDQtMjQgMDk6NDUgIGtpbmcKCgkqIENNYWtlVmFyaWFibGVzLm1ha2UuaW46IEVSUjogUmVtb3ZlZCBleHRyYSBTUkNfT0JKIHJlZmVyZW5jZS4KCSAgVGhlIHZhcmlhYmxlIGlzIG5vIGxvbmdlciB1c2VkLgoKMjAwMS0wNC0yMyAxNjo0MCAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaWIuZHNwLCBjbUNhY2hlTWFuYWdlci5jeHgsIGNtQ2FjaGVNYW5hZ2VyLmgsCgkgIGNtRFNXTWFrZWZpbGUuY3h4LCBjbURTV1dyaXRlci5jeHgsIGNtU291cmNlR3JvdXAuaCwKCSAgY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtV2luZG93c0NvbmZpZ3VyZS5jeHgsCgkgIGNtV2luZG93c0NvbmZpZ3VyZS5oLCBNRkNEaWFsb2cvQ01ha2VEaWFsb2cuaCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwLCBNRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwLCBNRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLAoJICBNRkNEaWFsb2cvUHJvcGVydHlMaXN0LmNwcCwgTUZDRGlhbG9nL1Byb3BlcnR5TGlzdC5oLAoJICBNRkNEaWFsb2cvcmVzb3VyY2UuaDogRU5IOiBuZXcgR1VJIGVkaXRvciBmb3IgY21ha2UgY2FjaGUgZmlsZQoKMjAwMS0wNC0yMyAxNjozNCAgbWFydGluawoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtV3JhcFRjbENvbW1hbmQuY3h4OiBhZGRlZCBvcHRpb24KCSAgY29tbWFuZAoKMjAwMS0wNC0yMyAxNjozMyAgbWFydGluawoKCSogU291cmNlLzogY21PcHRpb25Db21tYW5kLmN4eCwgY21PcHRpb25Db21tYW5kLmg6IG5ldyBjb21tYW5kCgoyMDAxLTA0LTIzIDEzOjU4ICBibGV6ZWsKCgkqIENNYWtlUnVsZXMubWFrZS5pbiwgU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOgoJICBDbGVhbiB3YXMgbm90IGRvaW5nIGl0J3Mgam9iCgoyMDAxLTA0LTIzIDEwOjIzICBraW5nCgoJKiBTb3VyY2UvY21JZkNvbW1hbmQuaDogRVJSOiBBZGRlZCB2aXJ0dWFsIGRlc3RydWN0b3IgdG8gY29tcGxlbWVudAoJICB2aXJ0dWFsIGZ1bmN0aW9ucyBpbiBjbUlmRnVuY3Rpb25CbG9ja2VyLgoKMjAwMS0wNC0xOSAxNzozOSAgbWFydGluawoKCSogU291cmNlLzogY21BZGREZWZpbml0aW9uc0NvbW1hbmQuY3h4LCBjbUFkZERlZmluaXRpb25zQ29tbWFuZC5oLAoJICBjbUNvbW1hbmRzLmN4eCwgY21FbHNlQ29tbWFuZC5jeHgsIGNtRWxzZUNvbW1hbmQuaCwKCSAgY21FbmRJZkNvbW1hbmQuY3h4LCBjbUVuZElmQ29tbWFuZC5oLCBjbUZ1bmN0aW9uQmxvY2tlci5oLAoJICBjbUlmQ29tbWFuZC5jeHgsIGNtSWZDb21tYW5kLmgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6CgkgIGFkZGVkIGlmIGVsc2UgZW5kaWYgYWRkIGRlZmluaXRpb24KCjIwMDEtMDQtMTkgMTM6MjggIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5jeHgsIGNtQ3VzdG9tQ29tbWFuZC5oLAoJICBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LCBjbURTV01ha2VmaWxlLmN4eCwKCSAgY21EU1dXcml0ZXIuY3h4LCBjbU1ha2VmaWxlLmN4eCwgY21Tb3VyY2VHcm91cC5jeHgsIGNtVGFyZ2V0LmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogY2xlYW5lZCB1cCB0aGUgY29kaW5nIHN0eWxlIG1hZGUKCSAgaXZhcnMgcHJpdmF0ZSBldGMKCjIwMDEtMDQtMTggMDg6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4OiBFUlI6IFdlIGNhbid0IGFzc3VtZSBhIHZlY3RvciBpdGVyYXRvcgoJICBpcyBhIHBvaW50ZXIuICBJdCBtdXN0IGJlIGRlcmVmZXJlbmNlZCB0byBnZXQgYSByZWZlcmVuY2UgdG8gdGhlCgkgIGVsZW1lbnQsIGFuZCB0aGVuIHdlIGNhbiB0YWtlIHRoZSBhZGRyZXNzIG9mIHRoYXQgdG8gZ2V0IGEKCSAgcG9pbnRlci4gICJpIiBiZWNvbWVzICImKmkiCgoyMDAxLTA0LTE3IDA3OjQyICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFUlI6IFJlbW92ZWQgdW51c2VkIHZhcmlhYmxlLgoKMjAwMS0wNC0xNiAxNTo0MCAgaG9mZm1hbgoKCSogU291cmNlLzogY21TdGFuZGFyZEluY2x1ZGVzLmgsIGNtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGZpeCBzbWFsbAoJICBjb21waWxlIGlzc3VlcyBvbiBIUCBhQ0MKCjIwMDEtMDQtMTYgMTI6MzEgIGtpbmcKCgkqIFNvdXJjZS86IGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZURlcGVuZC5oOiBFTkg6IENoYW5nZWQgbV9JbmRpY2VzCgkgIHRvIGFuIHN0bCBzZXQgYW5kIHJlbmFtZWQgaXQgdG8gbV9JbmRleFNldC4gIFVzaW5nIGEgc2V0IHJlc3VsdHMKCSAgaW4gYSBzaWduaWZpY2FudCBwZXJmb3JtYW5jZSBpbmNyZWFzZSBhbmQgcmVkdWN0aW9uIGluIG1lbW9yeQoJICB1c2FnZS4KCjIwMDEtMDQtMTYgMTA6MTUgIG1pbGxlcmp2CgoJKiBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHg6IEZJWDogYWxsb3cgQUREX0xJQlJBUlkgd2l0aCBubwoJICBzb3VyY2UgbGlzdAoKMjAwMS0wNC0xNiAxMDowMSAgbWFydGluawoKCSogU291cmNlLzogY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwgY21NYWtlZmlsZS5oOiBmaXhlZCBjYWJsZQoJICBwYWNrYWdlIGlzc3VlCgoyMDAxLTA0LTEyIDE1OjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBNYWtlZmlsZS5pbiwgY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtQ2FjaGVNYW5hZ2VyLmN4eCwgY21DYWNoZU1hbmFnZXIuaCwgY21NYWtlZmlsZS5oLAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsIGNtV3JhcFRjbENvbW1hbmQuY3h4OiBzb21lIGJ1ZyBmaXhlcwoKMjAwMS0wNC0xMiAwOTo1NSAga2luZwoKCSogU291cmNlLzogY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oOgoJICBFTkg6IEFkZGVkIGluZGl2aWR1YWwgbGlicmFyeSBsaW5rYWdlIG91dHB1dCBzbyB0aGF0IHNoYXJlZAoJICBsaWJyYXJpZXMgd2lsbCBub3QgdHJ5IHRvIGxpbmsgYWdhaW5zdCB0aGVtc2VsdmVzLgoKMjAwMS0wNC0xMiAwOTo0OSAgbWFydGluawoKCSogU291cmNlLzogY21FeGVjdXRhYmxlc0NvbW1hbmQuY3h4LCBjbUV4ZWN1dGFibGVzQ29tbWFuZC5oOgoJICByZW1vdmVkIG9sZCBydWxlcwoKMjAwMS0wNC0xMSAxNjozNCAga2luZwoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogRU5IOiBHZW5lcmF0aW9uIG5vdyBzZXRzIHVwCgkgIHByb3BlciBsaW5raW5nIG9mIHNoYXJlZCBsaWJyYXJpZXMgdG8gZWFjaCBvdGhlci4KCjIwMDEtMDQtMTEgMTU6NDMgIGtpbmcKCgkqIENNYWtlTWFzdGVyLm1ha2UuaW46IEVSUjogTmVlZGVkIHRvIHN3aXRjaCBwb2ludCB3aGVyZQoJICBDTWFrZVRhcmdldHMubWFrZSBpcyBpbmNsdWRlZCBzbyB0aGF0IFZhcmlhYmxlcyB3aWxsIGJlIGF2YWlsYWJsZQoJICB0byB0aGUgdGFyZ2V0cyBmaWxlLgoKMjAwMS0wNC0xMSAxNDo1OCAgbWFydGluawoKCSogU291cmNlL0NNYWtlTGliLmRzcCwgU291cmNlL0NNYWtlU2V0dXBDTUQuZHNwLAoJICBTb3VyY2UvTWFrZWZpbGUuaW4sIFNvdXJjZS9jbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtQWRkRXhlY3V0YWJsZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BZGRFeGVjdXRhYmxlQ29tbWFuZC5oLCBTb3VyY2UvY21BZGRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZExpYnJhcnlDb21tYW5kLmgsCgkgIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsIFNvdXJjZS9jbUNhYmxlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUNhYmxlRGF0YS5jeHgsIFNvdXJjZS9jbUNhYmxlRGF0YS5oLAoJICBTb3VyY2UvY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwgU291cmNlL2NtQ2FibGVQYWNrYWdlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21DYWJsZVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsIFNvdXJjZS9jbUNsYXNzRmlsZS5jeHgsCgkgIFNvdXJjZS9jbUNsYXNzRmlsZS5oLCBTb3VyY2UvY21Db21tYW5kcy5jeHgsCgkgIFNvdXJjZS9jbUN1c3RvbUNvbW1hbmQuY3h4LCBTb3VyY2UvY21DdXN0b21Db21tYW5kLmgsCgkgIFNvdXJjZS9jbURTUE1ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNQTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmgsCgkgIFNvdXJjZS9jbURTV01ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNXTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwgU291cmNlL2NtRFNXV3JpdGVyLmgsCgkgIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LCBTb3VyY2UvY21NYWtlRGVwZW5kLmgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtU291cmNlRmlsZXNDb21tYW5kLmN4eCwgU291cmNlL2NtU291cmNlRmlsZXNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVzUmVxdWlyZUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlcXVpcmVDb21tYW5kLmgsIFNvdXJjZS9jbVNvdXJjZUdyb3VwLmN4eCwKCSAgU291cmNlL2NtU291cmNlR3JvdXAuaCwgU291cmNlL2NtVGFyZ2V0LmgsCgkgIFNvdXJjZS9jbVRlc3RzQ29tbWFuZC5jeHgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVdyYXBUY2xDb21tYW5kLmN4eCwgU291cmNlL2NtV3JhcFRjbENvbW1hbmQuaCwKCSAgQ01ha2VSdWxlcy5tYWtlLmluOiBtYWpvciBjaGFuZ2VzIHRvIHN1cHBvcnQgbXVsdGlwbGUgbGlicmFyaWVzCgkgIGFuZCBzb3VyY2UgbGlzdHMKCjIwMDEtMDQtMTAgMTU6MjYgIGtpbmcKCgkqIFNvdXJjZS9ETExIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogTmVlZCBCVUlMRF9TSEFSRURfTElCUkFSSUVTCgkgIGRlZmluZWQgZm9yIG1ha2luZyB3aW5kb3dzIERMTHMuCgoyMDAxLTA0LTA5IDEwOjU2ICBraW5nCgoJKiBTb3VyY2UvY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eDogRVJSOiBBZGRlZCBkb3VibGUtcXVvdGVzIGFyb3VuZAoJICBjb21tYW5kIG5hbWUgYmVmb3JlIGFyZ3VtZW50cyBhcmUgYXBwZW5kZWQuCgoyMDAxLTA0LTA5IDEwOjUzICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFUlI6IE1pc3NlZCBvbmUgRXNjYXBlU3BhY2VzCgkgIGNhbGwuCgoyMDAxLTA0LTA5IDEwOjMxICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ29tbWFuZC5jeHgsIGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21VdGlsaXR5U291cmNlQ29tbWFuZC5jeHg6IEVSUjogQ29ycmVjdGVkIHVzZSBvZiBkb3VibGUtcXVvdGVzCgkgIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBVTklYIG1ha2UuICBOb3cgZG91YmxlIHF1b3RlcyAod2luZG93cykgb3IKCSAgZXNjYXBlIHNlcXVlbmNlcyBmb3Igc3BhY2VzICh1bml4KSBhcmUgYWRkZWQgd2hlbiBkZXBlbmRlbmNpZXMKCSAgYXJlIG91dHB1dC4KCjIwMDEtMDQtMDkgMDk6NDQgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVDb21tYW5kLmN4eCwgY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21VdGlsaXR5U291cmNlQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3Igc3BhY2VzIGluIHRoZQoJICBvdXRwdXQgZGlyZWN0b3J5IG5hbWVzLiAgU3BhY2VzIGluIHRoZSBpbnB1dCBkaXJlY3RvcnkgbmFtZSBtYXkKCSAgd29yayBhbHNvLCBidXQgYXJlIHVudGVzdGVkLgoKMjAwMS0wNC0wNiAxNzowMSAgaG9mZm1hbgoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5oLCBjbURTV01ha2VmaWxlLmN4eCwgY21EU1dXcml0ZXIuY3h4OiBCVUc6IGZpeAoJICBkZXBlbmRzIGZvciBsaWJyYXJpZXMgYW5kIGV4ZWN1dGFibGVzIGluIHRoZSBzYW1lIGRpcgoKMjAwMS0wNC0wNiAxNDo1MSAgaG9mZm1hbgoKCSogU291cmNlLzogY21GaW5kSW5jbHVkZUNvbW1hbmQuY3h4LCBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsCgkgIGNtTWFrZWZpbGUuY3h4OiBFTkg6IGJldHRlciBlcnJvciByZXBvcnRpbmcsIGFuZCBhZGQgTk9URk9VTkQKCSAgaW50byBjYWNoZSBmb3IgbGlicmFyeSBhbmQgZmlsZSBmaW5kCgoyMDAxLTA0LTA2IDEyOjAwICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21GaW5kSW5jbHVkZUNvbW1hbmQuaDogZml4ZWQgdGhlIGRvY3VtZW50YXRpb24gc29tZQoKMjAwMS0wNC0wNiAwODoyOCAgbWlsbGVyanYKCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHg6IEZJWDogY29uZmlndXJhdGlvbnMKCSAgbGlzdCBuZWVkZWQgdG8gYmUgcmVzZXQgZm9yIGVhY2ggZHNwIGZpbGUgY3JlYXRlZAoKMjAwMS0wNC0wNCAwOTozMyAgbWlsbGVyanYKCgkqIFNvdXJjZS86IEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwgc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBGSVg6CgkgIHJldHVybmVkIHRvIHVzaW5nIC9PMiBvcHRpbWl6YXRpb24gbGV2ZWwgYW5kIHB1dCBhIHByYWdtYSBpbiB0aGUKCSAgbmV0bGliIGNvZGUgdGhhdCBjb3VsZCBub3QgaGFuZGxlIHRoZSAvT2cgY29tcG9uZW50IG9mIC9PMgoKMjAwMS0wMy0yOCAxMTo0OSAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFUlI6IEJsYW5rIGxpbmUgcmVndWxhciBleHByZXNzaW9uCgkgIHVwZGF0ZWQgdG8gYWxsb3cgd2hpdGVzcGFjZSBvbiB0aGUgbGluZS4KCjIwMDEtMDMtMjMgMTQ6MjcgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IKCSAgQ0FCTEVfU09VUkNFX0ZJTEVTIHRvIHJlZmVyIHRvIGZpbGVzIHRoYXQgYXJlIG5vdCBpbiB0aGUgY3VycmVudAoJICBkaXJlY3RvcnkuICBUaGUgaW5jbHVkZSBwYXRoIGlzIHNlYXJjaGVkIGZvciB0aGUgZmlsZXMuCgoyMDAxLTAzLTIxIDE1OjUyICBraW5nCgoJKiBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmg6IEVSUjogQWRkZWQgcHJhZ21hIHRvIGRpc2FibGUgc3ltYm9sCgkgIGxlbmd0aCB3YXJuaW5nIGZvciBJbnRlbCBjb21waWxlci4KCjIwMDEtMDMtMjAgMTM6NDggIGtpbmcKCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHg6IEVSUjogU21hbGwgYnVnIGluCgkgIGdlbmVyYXRlZCBEU1AgZmlsZSBmaXhlZC4gIEEgY3VzdG9tIGNvbW1hbmQgZW52aXJvbm1lbnQgdmFyaWFibGUKCSAgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCBleHBsaWNpdHkgd3JpdGluZyBvdXQgdGhlIGNvbW1hbmQuCgoyMDAxLTAzLTIwIDEzOjIwICBraW5nCgoJKiBTb3VyY2UvOiBDTWFrZUxpYi5kc3AsIE1ha2VmaWxlLmluLCBjbUNhYmxlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5jeHgsIGNtQ29tbWFuZHMuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwKCSAgY21EU1BNYWtlZmlsZS5oLCBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsIGNtTWFrZWZpbGUuY3h4LAoJICBjbU1ha2VmaWxlLmgsIGNtU291cmNlR3JvdXAuY3h4LCBjbVNvdXJjZUdyb3VwLmgsCgkgIGNtU291cmNlR3JvdXBDb21tYW5kLmN4eCwgY21Tb3VyY2VHcm91cENvbW1hbmQuaCwKCSAgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVdyYXBUY2xDb21tYW5kLmN4eDogRU5IOiBBZGRlZAoJICBTT1VSQ0VfR1JPVVAgY29tbWFuZCBhbmQgY29ycmVzcG9uZGluZyBzdXBwb3J0IGNvZGUuCVRoaXMKCSAgY29tbWFuZCBhbGxvd3MgQ01ha2VMaXN0cyBmaWxlcyB0byBzcGVjaWZ5IGhvdyBzb3VyY2VzIGFyZQoJICBvcmdhbml6ZWQgaW50byBncm91cHMgaW4gdGhlIGdlbmVyYXRlZCBEU1AgZmlsZXMgYW5kIG1ha2VmaWxlcy4KCjIwMDEtMDMtMTkgMTE6NDcgIG1pbGxlcmp2CgoJKiBTb3VyY2UvRVhFSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IGlnbm9yZSB1bnVzZWQgbGliYXJ5IHdhcm5pbmdzLAoJICByZW1vdmVkIC9mb3JjZQoKMjAwMS0wMy0xOSAxMTowMiAga2luZwoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogRU5IOiBBZGRlZCB0ZXh0CgkgIGZpbGVzIGdyb3VwIHRvIERTUCBvdXRwdXQuICBDTWFrZUxpc3RzLnR4dCBpcyBkdXBsaWNhdGVkIGluIHRoaXMKCSAgZ3JvdXAgYW5kIG91dHNpZGUsIGJ1dCBmaXhpbmcgdGhpcyB3aWxsIHJlcXVpcmUgYSByZW9yZ2FuaXphdGlvbgoJICBvZiBjdXN0b20gcnVsZSBnZW5lcmF0aW9uLiAgSSBzaG91bGQgZ2V0IHRvIHRoYXQgc29vbi4KCjIwMDEtMDMtMTkgMTE6MDEgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlQ29tbWFuZC5jeHg6IEVSUjogQ2hhbmdlZCBnZW5lcmF0aW9uIG9mIHJ1bGUgdG8KCSAgZ2VuZXJhdGUgY2FibGVfY29uZmlnLnhtbCB0byBiZSBwcm9kdWNlZCBkaWZmZXJlbnRseSBmb3Igd2luZG93cwoJICBhbmQgdW5peC4KCjIwMDEtMDMtMTkgMTE6MDAgIGtpbmcKCgkqIFNvdXJjZS86IGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmg6IEVSUjogUmVtb3ZlZAoJICBmdW5jdGlvbnMgSSBqdXN0IGFkZGVkLiAgVGhleSBkb24ndCBiZWxvbmcgaGVyZSAoeWV0PykuCgoyMDAxLTAzLTE5IDEwOjA5ICBraW5nCgoJKiBTb3VyY2UvY21DYWJsZUNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIGdlbmVyYXRpb24gb2YgYSBydWxlIHRvCgkgIHJlLXJ1biBDTWFrZSBpZiB0aGUgY2FibGVfY29uZmlnLnhtbCBmaWxlIGlzIG1pc3NpbmcuCgoyMDAxLTAzLTE5IDEwOjA5ICBraW5nCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6IEFkZGVkIGZ1bmN0aW9ucwoJICB0byBnZXQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIENNYWtlIGV4ZWN1dGFibGUgb24gZWFjaCBwbGF0Zm9ybS4KCjIwMDEtMDMtMTYgMTE6MTQgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVEYXRhLmN4eCwgY21DYWJsZURhdGEuaDogRVJSOiBSZS1vcmRlcmVkCgkgIGRlY2xhcmF0aW9uIG9mIG1lbWJlcnMgdi4gb3JkZXIgb2YgaW5pdGlhbGl6YXRpb24gb24gdGhlCgkgIGNvbnN0cnVjdG9yIHRvIG1hdGNoIGVhY2ggb3RoZXIuCgoyMDAxLTAzLTE2IDExOjA0ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlRGF0YS5jeHgsIGNtQ2FibGVEYXRhLmg6IEJVRzogUmVhcnJhbmdlZCBjYWJsZQoJICBjb25maWcgZmlsZSBvcGVuIHRvIGRvIG9wZW4gaW4gY29uc3RydWN0aW9uIG9mIG1fT3V0cHV0RmlsZS4KCSAgRml4ZXMgcHJvYmxlbSBvbiBTR0kgd2l0aCBvcGVuaW5nIHRoZSBmaWxlLgoKMjAwMS0wMy0xNiAwOToyNSAga2luZwoKCSogU291cmNlLzogY21DYWJsZURlZmluZVNldENvbW1hbmQuY3h4LAoJICBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmN4eDogRU5IOiBDaGFuZ2VkIGdlbmVyYXRlZCBpbmNsdWRlcyB0bwoJICBub3QgaGF2ZSBmdWxsIHBhdGggc3BlY2lmaWVkLgoKMjAwMS0wMy0xNSAxODowOSAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5jeHgsCgkgIGNtSW5jbHVkZVJlZ3VsYXJFeHByZXNzaW9uQ29tbWFuZC5oLCBjbU1ha2VEZXBlbmQuY3h4LAoJICBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBBZGRlZAoJICBJTkNMVURFX1JFR1VMQVJfRVhQUkVTU0lPTiBjb21tYW5kIHRvIHNldCByZWd1bGFyIGV4cHJlc3Npb24gdXNlZAoJICBpbiBkZXBlbmRlbmN5IGNoZWNraW5nLgoKMjAwMS0wMy0xNSAxNDo0NiAga2luZwoKCSogU291cmNlLzogY21DYWJsZURlZmluZVNldENvbW1hbmQuY3h4LCBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5oOgoJICBFTkg6IEFkZGVkIFNPVVJDRV9GSUxFUyBzeW50YXggdG8gQ0FCTEVfREVGSU5FX1NFVCBjb21tYW5kLgoKMjAwMS0wMy0xNSAxNDozMyAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogQlVHOiBNb3ZlZCBkZWZpbml0aW9uIG9mCgkgIENNQUtFX1NPVVJDRV9ESVIgYW5kIENNQUtFX0JJTkFSWV9ESVIgdG8gYmUgYXMgc29vbiBhcyB0aGVpcgoJICBpbmZvcm1hdGlvbiBpcyBrbm93bi4KCjIwMDEtMDMtMTUgMTA6NDIgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5jeHgsIGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5oOiBCVUc6CgkgIEZpeGVkIHNlZ2ZhdWx0IHdoZW4gQ0FCTEVfUEFDS0FHRSBpcyBvbmx5IENBQkxFIGNvbW1hbmQuICBSZWxhdGVkCgkgIHRvIG9yZGVyIG9mIHZpcnR1YWwgZGVzdHJ1Y3RvciBjYWxscy4KCjIwMDEtMDMtMTQgMTc6NDkgIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogRVJSOiBBZGRlZCBmb3ItbG9vcCBzY29waW5nIGhhY2sgZm9yCgkgIENNYWtlIHNvdXJjZXMgb24gTVNWQwoKMjAwMS0wMy0xNCAxNjozNCAga2luZwoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBFTkg6IEFkZGVkIHN1cHBvcnQgZm9yIGNvbW1lbnRzIGluc2lkZQoJICBmdW5jdGlvbiBjYWxscyBhbmQgaW5kZW50ZWQgY29tbWVudHMuCgoyMDAxLTAzLTEzIDE4OjAxICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5jeHgsIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmg6CgkgIEVOSDogQWRkZWQgc3VwcG9ydCBmb3IgZWxlbWVudCB0YWcgc3BlY2lmaWNhdGlvbiB3aXRoIHN5bnRheAoJICB0YWc6ZWxlbWVudCBhcyBhbiBhcmd1bWVudCB0byB0aGUgQ0FCTEVfREVGSU5FX1NFVCBjb21tYW5kLiAgQQoJICBzaW5nbGUgY29sb24gd2l0aCBub3RoaW5nIHRvIGl0cyBsZWZ0IHdpbGwgcmVzdWx0IGluIGFuIGVtcHR5CgkgIHRhZy4KCjIwMDEtMDMtMTMgMDk6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbVdyYXBUY2xDb21tYW5kLmN4eDogRVJSOiBMZXNzLXRoYW4temVybyB0ZXN0IHJlcGxhY2VkCgkgIHdpdGggZ3JlYXRlci10aGFuLXplcm8gc2luY2Ugd2Ugd2FudCB6ZXJvIGFyZ3VtZW50cy4KCjIwMDEtMDMtMTIgMTg6MzAgIGtpbmcKCgkqIFNvdXJjZS86IGNtQ29tbWFuZC5oLCBjbVN5c3RlbVRvb2xzLmN4eCwgY21TeXN0ZW1Ub29scy5oOiBFTkg6CgkgIEltcHJvdmVkIGVycm9yIGhhbmRsaW5nIHdoZW4gR2V0RXJyb3IgaXMgY2FsbGVkIG9uIGEgY29tbWFuZCB0aGF0CgkgIGhhcyBub3QgY2FsbGVkIFNldEVycm9yLgoKMjAwMS0wMy0xMiAxMDoxMCAgZ2VvZmYKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbVdpbjMySW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBjbVdpbjMySW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuaDogSW5jbHVkZSBkaXJlY3RvcmllcyB1bmRlciBXaW4zMgoJICBvbmx5IChpbmhlcml0ZWQgYnkgc3ViZGlycykKCjIwMDEtMDMtMDkgMTY6NTYgIGtpbmcKCgkqIFNvdXJjZS86IERMTEhlYWRlci5kc3B0ZW1wbGF0ZSwgRVhFSGVhZGVyLmRzcHRlbXBsYXRlLAoJICBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLCBjbURTUFdyaXRlci5jeHgsCgkgIGNtRFNQV3JpdGVyLmgsIHN0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRU5IOiBGaW5pc2hlZAoJICBTaW1wbGlmeWluZyBkc3B0ZW1wbGF0ZSBwcm9jZXNzaW5nIHdpdGggIGluIHBsYWNlIG9mIHNlcGFyYXRlCgkgIFJlbGVhc2UsIERlYnVnLCBSZWxlYXNlRExMLCAuLi4gY29uZmlndXJhdGlvbnMuCgoyMDAxLTAzLTA5IDE1OjM1ICBraW5nCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LAoJICBzdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVSUjogRml4ZWQgbGlicmFyeSBwYXRoIHByb2JsZW0gZm9yCgkgIFJlbGVhc2VNaW5TaXplIGJ1aWxkLiAgIHNob3VsZCBub3cgYmUgdXNlZCBpbiBwbGFjZSBvZiBzZXBhcmF0ZQoJICBSZWxlYXNlLCBEZWJ1ZywgYW5kIFJlbGVhc2VNaW5TaXplLgoKMjAwMS0wMy0wOSAxNDozNSAga2luZwoKCSogU291cmNlL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZTogRVJSOiBGaXhlZCBoZWFkZXIgdGVtcGxhdGUgZm9yCgkgIFJlbGVhc2UgTWluU2l6ZSBidWlsZHMuCgoyMDAxLTAzLTA5IDExOjM0ICBraW5nCgoJKiBTb3VyY2UvRVhFSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IEFkZGVkIFJlbGVhc2UgTWluU2l6ZQoJICBjb25maWd1cmF0aW9uIGZvciBleGVjdXRhYmxlcy4KCjIwMDEtMDMtMDkgMTE6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbVV0aWxpdHlTb3VyY2VDb21tYW5kLmg6IEVOSDogTWFkZSBVVElMSVRZX1NPVVJDRSBjb21tYW5kCgkgIGluaGVyaXRlZCwganVzdCBsaWtlIEZJTkRfUFJPR1JBTS4KCjIwMDEtMDMtMDkgMTE6MTYgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlUGFja2FnZUNvbW1hbmQuY3h4OiBFUlI6IE1pc3NpbmcgaW5pdGFsaXphdGlvbiBvZiBhCgkgIGNtQ2xhc3NGaWxlOjptX0hlYWRlckZpbGVPbmx5IGZpeGVkLgoKMjAwMS0wMy0wOSAxMDo1MyAga2luZwoKCSogU291cmNlLzogY21EU1dNYWtlZmlsZS5jeHgsIGNtRFNXV3JpdGVyLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGUuaCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4LAoJICBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmN4eDogRU5IOiBBZGRlZAoJICB1dGlsaXR5IGRlcGVuZGVuY3kgc3VwcG9ydC4gIE5vdyBhIHByb2plY3QgY2FuIGRlcGVuZCBvbiBvdGhlcgoJICBleGVjdXRhYmxlcyBhcyB3ZWxsIGFzIGxpbmsgbGlicmFyaWVzLgoKMjAwMS0wMy0wOSAxMDo1MiAga2luZwoKCSogU291cmNlLzogY21DYWJsZUNvbW1hbmQuY3h4LCBjbUNhYmxlRGF0YS5jeHg6IEVSUjogQWRkZWQKCSAgYXV0b21hdGljIGNyZWF0aW9uIG9mIGRpcmVjdG9yeSBmb3IgY2FibGVfY29uZmlnLnhtbCBmaWxlIGFuZAoJICBjb3JyZXNwb25kaW5nIGVycm9yIHJlcG9ydGluZy4KCjIwMDEtMDMtMDkgMTA6NTIgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlUGFja2FnZUNvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIHByb3BlciBkZXBlbmRlbmN5CgkgIGdlbmVyYXRpb24gZm9yIGEgcGFja2FnZSBvbiBjYWJsZSBleGVjdXRhYmxlLgoKMjAwMS0wMy0wOCAxODoyNCAga2luZwoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4OiBFUlI6CgkgIFJlcGxhY2VkIENNQUtFX0NGRz0gd2l0aCBDTUFLRV9DRkdfT1VURElSPSB0byBmaXggd2luZG93cwoJICBiZWhhdmlvci4KCjIwMDEtMDMtMDggMTg6MTMgIGtpbmcKCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUFdyaXRlci5jeHg6IEVOSDogQWRkZWQgb3V0cHV0IG9mCgkgIGN1c3RvbSBydWxlcyBmb3IgWE1MIHNvdXJjZXMuCgoyMDAxLTAzLTA4IDE3OjM4ICBraW5nCgoJKiBTb3VyY2UvY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFTkg6IEFkZGVkIG91dHB1dCBvZiBkZWZpbmVzCgkgIGZsYWdzIGFzIHBhcnQgb2YgSU5DTFVERV9GTEFHUy4KCjIwMDEtMDMtMDggMTc6MzEgIGtpbmcKCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEVOSDogQWRkZWQgb3V0cHV0IG9mIGEgY3VzdG9tCgkgIGNvbW1hbmQncyBtX1NvdXJjZSBhcyBhIGRlcGVuZGVuY3kuCgoyMDAxLTAzLTA4IDE3OjMxICBraW5nCgoJKiBTb3VyY2UvY21Vbml4RGVmaW5lc0NvbW1hbmQuY3h4OiBFUlI6IE1pbm9yIHdvcmRpbmcgZXJyb3IgaW4KCSAgb3V0cHV0IG1lc3NhZ2UuCgoyMDAxLTAzLTA4IDE3OjMwICBraW5nCgoJKiBTb3VyY2UvY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eDogRU5IOiBDcmVhdGlvbiBvZiBnZW5lcmF0b3IgcnVsZQoJICBub3cgcHJvcGVybHkgdXNlcyB0aGUgY3VzdG9tIGNvbW1hbmQncyBtX1NvdXJjZSBtZW1iZXIuCgoyMDAxLTAzLTA4IDE2OjEzICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ29tbWFuZC5jeHgsIGNtQ2FibGVEYXRhLmN4eCwgY21DYWJsZURhdGEuaCwKCSAgY21DYWJsZVBhY2thZ2VDb21tYW5kLmN4eCwgY21DYWJsZVBhY2thZ2VDb21tYW5kLmgsCgkgIGNtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuY3h4LCBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmg6IEVOSDoKCSAgQWRkZWQgY3JlYXRpb24gb2YgY3VzdG9tIHJ1bGVzIGZvciBnZW5lcmF0aW5nIENBQkxFIHBhY2thZ2VzLgoKMjAwMS0wMy0wOCAxNjoxMiAga2luZwoKCSogU291cmNlLzogY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlRGVwZW5kLmg6IEVOSDogQWRkZWQgc3VwcG9ydCBmb3IKCSAgZmluZGluZyBkZXBlbmRlbmNpZXMgZm9yIGZpbGVzIHRoYXQgZG9uJ3QgZXhpc3QuICBEZXBlbmRlbmN5CgkgIHJlY3Vyc2lvbiBiZWdpbnMgd2l0aCBoaW50cyBwcm92aWRlZCBpbiB0aGUgY21DbGFzc0ZpbGUgZm9yIGEKCSAgZmlsZSBpZiBpdCBkb2Vzbid0IGV4aXN0LgoKMjAwMS0wMy0wOCAxMTozMCAga2luZwoKCSogU291cmNlL2NtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuY3h4OiBFTkg6IEFkZGVkIC50eHggZGV0ZWN0aW9uCgkgIGZvciBIZWFkZXIgYmxvY2sgb3V0cHV0LgoKMjAwMS0wMy0wOCAxMDozMCAga2luZwoKCSogU291cmNlLzogY21Db21tYW5kcy5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmgsCgkgIGNtU3lzdGVtVG9vbHMuY3h4LCBjbVN5c3RlbVRvb2xzLmgsIGNtVXRpbGl0eVNvdXJjZUNvbW1hbmQuY3h4LAoJICBjbVV0aWxpdHlTb3VyY2VDb21tYW5kLmg6IEVOSDogQWRkZWQgVVRJTElUWV9TT1VSQ0UgY29tbWFuZCBmb3IKCSAgc3BlY2lmeWluZyB3aGVyZSBhIDNyZCBwYXJ0eSB1dGlsaXR5J3Mgc291cmNlIGlzIGxvY2F0ZWQgd2hlbiBpdAoJICBpcyBpbmNsdWRlZCBpbiB0aGUgZGlzdHJpYnV0aW9uIG9mIGEgcHJvamVjdC4KCjIwMDEtMDMtMDcgMTM6MzMgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlQ29tbWFuZC5jeHg6IEVSUjogQ29tbWVudGVkIG91dCBleHBlcmltZW50YWwgY29kZQoJICB0aGF0IHdhcyBhY2NpZGVudGFsbHkgY2hlY2tlZCBpbi4KCjIwMDEtMDMtMDcgMTM6MjMgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlQ29tbWFuZC5jeHg6IEVOSDogQWRkZWQgQ2FibGUgdG8gVXRpbGl0aWVzIGFuZAoJICBhcHByb3ByaWF0ZSBDTWFrZUxpc3RzLnR4dCBjaGFuZ2VzLiAgTW92ZWQgVlhMTnVtZXJpY3MgbGluayBvdXQKCSAgb2Ygc291cmNlJ3Mgcm9vdCBkaXJlY3RvcnkgYW5kIGludG8gc2VwYXJhdGUgZW50cmllcyBmb3IgQ29kZSBhbmQKCSAgVGVzdGluZyBkaXJlY3Rvcmllcy4JVGhpcyBwcmV2ZW50cyBsaW5raW5nIG9mIGFsbCBwcm9ncmFtcyAobGlrZQoJICBDYWJsZSkgd2l0aCB0aGUgbnVtZXJpY3MgbGlicmFyeS4KCjIwMDEtMDMtMDIgMTY6MDQgIGtpbmcKCgkqIFNvdXJjZS86IGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaDoKCSAgRU5IOiBBZGRlZCBjdXN0b20gcnVsZSBzdXBwb3J0IHRvIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLgoKMjAwMS0wMy0wMiAxMzo0NyAgd2lsbAoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eDogQlVHOiByZXBlYXQgYWxsIC1sIG9wdGlvbnMgdG8KCSAgYXZvaWQgaGF2aW5nIHRvIHdvcnJ5IGFib3V0IGxpbmsgb3JkZXIuCgoyMDAxLTAzLTAyIDEyOjI3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ29tbWFuZC5jeHgsIGNtQ2FibGVEYXRhLmN4eCwgY21DYWJsZURhdGEuaDogRU5IOgoJICBDQUJMRSBjb25maWcgZmlsZSAoY29uZmlnX2NhYmxlLnhtbCkgc2hvdWxkIG5vdyBiZSBvcGVuZWQgaW4gdGhlCgkgIG91dHB1dCBkaXJlY3RvcnkuCgoyMDAxLTAzLTAxIDE2OjQ3ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ2xvc2VOYW1lc3BhY2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZUNsb3NlTmFtZXNwYWNlQ29tbWFuZC5oLCBjbUNhYmxlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVDb21tYW5kLmgsIGNtQ2FibGVEYXRhLmN4eCwgY21DYWJsZURhdGEuaCwKCSAgY21DYWJsZURlZmluZVNldENvbW1hbmQuY3h4LCBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5oLAoJICBjbUNhYmxlSW5zdGFudGlhdGVDbGFzc0NvbW1hbmQuY3h4LAoJICBjbUNhYmxlSW5zdGFudGlhdGVDbGFzc0NvbW1hbmQuaCwgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVJbnN0YW50aWF0ZUNvbW1hbmQuaCwgY21DYWJsZU9wZW5OYW1lc3BhY2VDb21tYW5kLmN4eCwKCSAgY21DYWJsZU9wZW5OYW1lc3BhY2VDb21tYW5kLmgsIGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVQYWNrYWdlQ29tbWFuZC5oLCBjbUNhYmxlUGFja2FnZUVudHJ5Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVQYWNrYWdlRW50cnlDb21tYW5kLmgsIGNtQ2FibGVTb3VyY2VGaWxlc0NvbW1hbmQuY3h4LAoJICBjbUNhYmxlU291cmNlRmlsZXNDb21tYW5kLmgsIGNtQ2FibGVXcmFwQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVXcmFwQ29tbWFuZC5oLCBjbUNvbW1hbmRzLmN4eDogRU5IOiBDaGFuZ2UgdG8gbmV3IENBQkxFCgkgIGNvbW1hbmQgYXJjaGl0ZWN0dXJlLiAgQ0FCTEUgY29uZmlndXJhdGlvbiBjb2RlIGlzIG5vdyBnZW5lcmF0ZWQKCSAgb24gdGhlIGZpcnN0IHBhc3MsIGR1cmluZyB0aGUgSW52b2tlKCkgY2FsbHMuCgoyMDAxLTAyLTI4IDE3OjUwICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BXcml0ZXIuY3h4LCBjbURTUE1ha2VmaWxlLmgsCgkgIGNtRFNQV3JpdGVyLmgsIGNtRFNXTWFrZWZpbGUuY3h4LCBjbURTV1dyaXRlci5jeHg6IEJVRzogZml4CgkgIGNpcmN1bGFyIGRlcGVuZHMgb24gbGlicmFyaWVzIGFuZCByZW1vdmUgZGVwZW5kcyBmb3Igc3RhdGljCgkgIGxpYnJhcmllcwoKMjAwMS0wMi0yOCAwOTozNCAga2luZwoKCSogU291cmNlLzogY21DYWJsZUNvbW1hbmQuY3h4LCBjbUNhYmxlQ29tbWFuZC5oLCBjbUNhYmxlRGF0YS5jeHgsCgkgIGNtQ2FibGVEYXRhLmgsIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmN4eCwKCSAgY21DYWJsZURlZmluZVNldENvbW1hbmQuaCwgY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ2xhc3NDb21tYW5kLmgsIGNtQ2FibGVJbnN0YW50aWF0ZUNvbW1hbmQuY3h4LAoJICBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmgsIGNtQ29tbWFuZHMuY3h4OiBFTkg6IENBQklMIC0+IENBQkxFCgkgIHJlbmFtZS4KCjIwMDEtMDItMjcgMTY6NTAgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRFNQTWFrZWZpbGUuY3h4LCBjbURTUE1ha2VmaWxlLmgsIGNtRFNQV3JpdGVyLmN4eCwKCSAgY21EU1BXcml0ZXIuaCwgY21EU1dNYWtlZmlsZS5jeHgsIGNtRFNXV3JpdGVyLmN4eDogbWFueQoJICBlbmhhbmNlbWVudHMgaW5jbHVkaW5nIGRsbCBzdXBwb3J0CgoyMDAxLTAyLTI3IDE2OjQ5ICBtYXJ0aW5rCgoJKiBTb3VyY2UvY21XcmFwVGNsQ29tbWFuZC5jeHg6IGJ1ZyBmaXhlcwoKMjAwMS0wMi0yNyAxNjo0OSAgbWFydGluawoKCSogU291cmNlL2NtQ29tbWFuZHMuY3h4OiBhZGRlZCBuZXcgY29tbWFuZHMKCjIwMDEtMDItMjcgMTY6NDggIG1hcnRpbmsKCgkqIFNvdXJjZS9jbUNsYXNzRmlsZS5oOiBhZGRlZCB3cmFwIGV4Y2x1ZGUgaXZhcgoKMjAwMS0wMi0yNyAxNjo0OCAgbWFydGluawoKCSogU291cmNlLzogY21CdWlsZFNoYXJlZExpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBjbUJ1aWxkU2hhcmVkTGlicmFyaWVzQ29tbWFuZC5oLCBjbVdyYXBFeGNsdWRlRmlsZXNDb21tYW5kLmN4eCwKCSAgY21XcmFwRXhjbHVkZUZpbGVzQ29tbWFuZC5oOiBuZXcgY29tbWFuZHMKCjIwMDEtMDItMjcgMTY6NDYgIG1hcnRpbmsKCgkqIFNvdXJjZS86IERMTEZvb3Rlci5kc3B0ZW1wbGF0ZSwgRExMSGVhZGVyLmRzcHRlbXBsYXRlOiBkbGwgYnVpbGQKCSAgcnVsZXMKCjIwMDEtMDItMjcgMTY6NDQgIG1hcnRpbmsKCgkqIFNvdXJjZS9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IGNoYW5nZSBpbiBvcHRpb25zIGZvciBtdWNoCgkgIHNtYWxsZXIgbGlicmFyaWVzCgoyMDAxLTAyLTI3IDE2OjI4ICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ29tbWFuZC5oLCBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5jeHgsCgkgIGNtQ2FibGVEZWZpbmVTZXRDb21tYW5kLmgsIGNtQ2FibGVJbnN0YW50aWF0ZUNsYXNzQ29tbWFuZC5jeHgsCgkgIGNtQ2FibGVJbnN0YW50aWF0ZUNsYXNzQ29tbWFuZC5oLCBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5oLCBjbUNvbW1hbmRzLmN4eDogRU5IOiBJbXBsZW1lbnRlZAoJICBhdXRvbWF0aWMgdGFnIGdlbmVyYXRpb24gZm9yIENBQklMX0RFRklORV9TRVQgY29tbWFuZC4gIEFkZGVkIHRhZwoJICBvdXRwdXQgdG8gV3JpdGVDb25maWd1cmF0aW9uIG1ldGhvZHMuICBBZGRlZAoJICBDQUJJTF9JTlNUQU5USUFURV9DTEFTUyBjb21tYW5kIHRvIGdlbmVyYXRlIGV4cGxpY2l0IGNsYXNzCgkgIHRlbXBsYXRlIGluc3RhbnRpYXRpb24gY29uZmlndXJhdGlvbiBvdXRwdXQuCgoyMDAxLTAyLTI3IDE1OjQxICBraW5nCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSC9CVUc6IEltcHJvdmVkIGZ1bmN0aW9uIHBhcnNpbmcgdG8KCSAgYWxsb3cganVzdCBhYm91dCBhbnl0aGluZyBpbnNpZGUgYSBkb3VibGUtcXVvdGVkIGFyZ3VtZW50LiAgQWxzbwoJICBmaXhlZCBwYXJzaW5nIG9mIGxpbmVzIHdpdGggYm90aCBxdW90ZWQgYW5kIG5vbi1xdW90ZWQgYXJndW1lbnRzLgoKMjAwMS0wMi0yNyAxMjowMCAgbG9yZW5zZW4KCgkqIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eDogRU5IOiBtYXNrIG9uIG1rZGlyIHNldCB0byA3NzcuCgoyMDAxLTAyLTI3IDEyOjAwICBsb3JlbnNlbgoKCSogU291cmNlL0NNYWtlQnVpbGRUYXJnZXRzLmN4eDogRVJSOiBtaXNzaW5nIHN0ZDo6IG9uIGNvdXQuCgoyMDAxLTAyLTI2IDIwOjU4ICBtaWxsZXJqdgoKCSogU291cmNlL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRklYOiBhZGRlZCAvR1IgdG8gTWluU2l6ZQoJICBidWlsZCB0byBhdm9pZCB3YXJuaW5ncyBhYm91dCBkeW5hbWljIGNhc3QKCjIwMDEtMDItMjYgMTg6MjAgIGtpbmcKCgkqIFNvdXJjZS9jbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmN4eDogRVJSOiBGaXhlZCBjb25maWd1cmF0aW9uCgkgIGZpbGUgb3V0cHV0IHRvIG9wZW4gZmlsZSBpbiBvdXRwdXQgZGlyZWN0b3J5LgoKMjAwMS0wMi0yNiAxODoxNiAga2luZwoKCSogU291cmNlL2NtV3JhcFRjbENvbW1hbmQuY3h4OiBpbnQgLT4gdW5zaWduZWQgaW50CgoyMDAxLTAyLTI2IDE4OjAwICBraW5nCgoJKiBTb3VyY2UvOiBjbUNhYmxlQ29tbWFuZC5jeHgsIGNtQ2FibGVDb21tYW5kLmgsIGNtQ2FibGVEYXRhLmN4eCwKCSAgY21DYWJsZURhdGEuaCwgY21DYWJsZURlZmluZVNldENvbW1hbmQuY3h4LAoJICBjbUNhYmxlRGVmaW5lU2V0Q29tbWFuZC5oLCBjbUNhYmxlSW5zdGFudGlhdGVDb21tYW5kLmN4eCwKCSAgY21DYWJsZUluc3RhbnRpYXRlQ29tbWFuZC5oLCBjbUNvbW1hbmRzLmN4eDogRU5IOiBBZGRlZCBDQUJJTAoJICBjb21tYW5kcyBmb3IgY29uZmlndXJhdGlvbiBmaWxlIGdlbmVyYXRpb24uCgoyMDAxLTAyLTI2IDE3OjU4ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5oOiBFTkg6IEFkZGVkIEdldFVzZWRDb21tYW5kcygpIG1ldGhvZC4KCjIwMDEtMDItMjYgMTc6NTggIGtpbmcKCgkqIFNvdXJjZS9jbVN0YW5kYXJkSW5jbHVkZXMuaDogRVJSOiBmc3JlYW0uaCAtPiBmc3RyZWFtLmgKCjIwMDEtMDItMjYgMTc6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ29tbWFuZHMuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsIGNtTWFrZWZpbGUuaDogYSB2YXJpZXR5IG9mIGZpeGVzCgkgIGFuZCBlbmhhbmNlbWVudHMKCjIwMDEtMDItMjYgMTc6MTcgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtV3JhcFRjbENvbW1hbmQuY3h4LCBjbVdyYXBUY2xDb21tYW5kLmg6IHZlcnkgZWFybHkKCSAgdmVyc2lvbiBvZiBhIHdyYXBwZXIKCjIwMDEtMDItMjYgMTc6MTUgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtQ2xhc3NGaWxlLmN4eCwgY21DbGFzc0ZpbGUuaDogYWRkZWQgZnVuY3Rpb25hbGl0eSwKCSAgZml4ZWQgYnVnIGlmIG5vIGZpbGUgZXhpc3RlZCBhbmQgd2l0aCBoZWFkZXIgZmlsZXMKCjIwMDEtMDItMjYgMTc6MTQgIG1hcnRpbmsKCgkqIFNvdXJjZS86IGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuaDogZml4ZWQKCSAgYnVnIGFuZCBtb2RpZmllZCBmdW5jdGlvbmFsaXR5CgoyMDAxLTAyLTI2IDE3OjEzICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUZpbmRGaWxlQ29tbWFuZC5jeHgsIGNtRmluZEZpbGVDb21tYW5kLmg6IG5ldyBjb21tYW5kCgoyMDAxLTAyLTI2IDEzOjI1ICBraW5nCgoJKiBTb3VyY2UvY21NYWtlZmlsZS5jeHg6IEVSUjogRml4ZWQgdW5rbm93biBjb21tYW5kIG91dHB1dCBlcnJvcgoJICBtZXNzYWdlIGZvciBzcGFjaW5nLgoKMjAwMS0wMi0yNiAxMjowNyAga2luZwoKCSogU291cmNlLzogY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5oLCBjbUFkZFRhcmdldENvbW1hbmQuaCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlDb21tYW5kLmgsIGNtQ29tbWFuZC5oLAoJICBjbUV4ZWN1dGFibGVzQ29tbWFuZC5oLCBjbUZpbmRJbmNsdWRlQ29tbWFuZC5oLAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5oLCBjbUZpbmRQcm9ncmFtQ29tbWFuZC5oLAoJICBjbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmgsIGNtTGlicmFyeUNvbW1hbmQuaCwKCSAgY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmgsIGNtTGlua0xpYnJhcmllc0NvbW1hbmQuaCwKCSAgY21Qcm9qZWN0Q29tbWFuZC5oLCBjbVNvdXJjZUZpbGVzQ29tbWFuZC5oLAoJICBjbVNvdXJjZUZpbGVzUmVxdWlyZUNvbW1hbmQuaCwgY21TdWJkaXJDb21tYW5kLmgsCgkgIGNtVGVzdHNDb21tYW5kLmgsIGNtVW5peERlZmluZXNDb21tYW5kLmgsCgkgIGNtVW5peExpYnJhcmllc0NvbW1hbmQuaCwgY21XaW4zMkRlZmluZXNDb21tYW5kLmgsCgkgIGNtV2luMzJMaWJyYXJpZXNDb21tYW5kLmg6IEVOSDogQWRkZWQgc2FmZSBkb3duY2FzdCBzdXBwb3J0CgkgICh3aXRob3V0IFJUVEkpIHRvIGNtQ29tbWFuZCBhbmQgaXRzIHN1YmNsYXNzZXMuCgoyMDAxLTAyLTIzIDEwOjQwICBraW5nCgoJKiBTb3VyY2UvOiBjbUFic3RyYWN0RmlsZXNDb21tYW5kLmN4eCwgY21Db21tYW5kLmgsIGNtQ29tbWFuZHMuaCwKCSAgY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5oLCBjbUZpbmRJbmNsdWRlQ29tbWFuZC5jeHgsCgkgIGNtRmluZExpYnJhcnlDb21tYW5kLmN4eCwgY21GaW5kUHJvZ3JhbUNvbW1hbmQuY3h4LAoJICBjbU1ha2VmaWxlLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuY3h4OiBFUlI6IEZpeGVkIHdhcm5pbmdzCgkgIChpbnQtPnVuc2lnbmVkIGludCBhbmQgYSBmZXcgb3RoZXJzKS4KCjIwMDEtMDItMjIgMTk6MzcgIGhvZmZtYW4KCgkqIGNvbmZpZ3VyZS5pbi5zYW1wbGU6IEVOSDogdXBkYXRlIHNhbXBsZQoKMjAwMS0wMi0yMiAxOTozMSAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IHJlbW92ZSBkZWJ1ZyBwcmludAoKMjAwMS0wMi0yMiAxOToyMyAgaG9mZm1hbgoKCSogU291cmNlL0NNYWtlQnVpbGRUYXJnZXRzLmN4eCwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LCBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaCwKCSAgU291cmNlL2NtQ29uZmlndXJlRmlsZU5vQXV0b2NvbmYuY3h4LCBTb3VyY2UvY21EU1BNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsIFNvdXJjZS9jbURTV01ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21TdGFuZGFyZEluY2x1ZGVzLmgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmN4eCwgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwgQ01ha2VSdWxlcy5tYWtlLmluLAoJICBDTWFrZVRvcE1ha2VmaWxlVGVtcGxhdGUuaW4sIFNvdXJjZS9jbUNvbmZpZ3VyZS5oLmluOiBFTkg6IGFkZAoJICBDTWFrZUNhY2hlLnR4dCBzdXBwb3J0CgoyMDAxLTAyLTIwIDE0OjEyICBob2ZmbWFuCgoJKiBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHg6IEVOSDogcmVtb3ZlIHJlbGF0aXZlIGFuZCBleHRyYSBwYXRocyBpbgoJICBDTWFrZUxpc3RzLnR4dCBmaWxlcwoKMjAwMS0wMi0yMCAxMjoyNSAgaG9mZm1hbgoKCSogQ01ha2VSdWxlcy5tYWtlLmluOiBCVUc6IGZpeCBmb3IgaW4gc291cmNlIGJ1aWxkCgoyMDAxLTAyLTE5IDE1OjEzICBob2ZmbWFuCgoJKiBDTWFrZU1ha2VmaWxlVGVtcGxhdGUuaW4sIE1ha2VmaWxlVGVtcGxhdGUuaW4sCgkgIGNvbmZpZ3VyZS5pbi5zYW1wbGUsIFNvdXJjZS9DTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsCgkgIFNvdXJjZS9DTWFrZVNldHVwQ01ELmN4eCwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21DYWNoZU1hbmFnZXIuY3h4LCBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaCwKCSAgU291cmNlL2NtQ29tbWFuZC5oLCBTb3VyY2UvY21EU1dNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsIFNvdXJjZS9jbUZpbmRJbmNsdWRlQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlDb21tYW5kLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21SZWd1bGFyRXhwcmVzc2lvbi5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5oLCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvcmVzb3VyY2UuaDogRU5IOiBmaXJzdCBwYXNzIGF0IGNhY2hlLCBjbGVhbiB1cAoJICB0aGUgdW5peCBnZW5lcmF0b3IsIGNsZWFuIHVwIGNvbmZpZ3VyZS5pbiBzb21lCgoyMDAxLTAyLTE4IDEzOjAyICBob2ZmbWFuCgoJKiBjb25maWd1cmUuaW4uc2FtcGxlOiBFTkg6IGFkZCBhIHNtYXBsZSBjb25maWd1cmUuaW4gZm9yIENNYWtlCgkgIGJhc2VkIHByb2plY3RzCgoyMDAxLTAyLTE4IDEyOjQ3ICBob2ZmbWFuCgoJKiBjb25maWd1cmUuaW4uc2FtcGxlOiBFTkg6IGFkZCBhIHNtYXBsZSBjb25maWd1cmUuaW4gZm9yIENNYWtlCgkgIGJhc2VkIHByb2plY3RzCgoyMDAxLTAyLTE2IDE1OjM0ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21DYWNoZU1hbmFnZXIuaDogRU5IOiBjbGVhbiB1cCBjb21tZW50cyBzb21lCgoyMDAxLTAyLTE2IDE1OjAxICB3aWxsCgoJKiBDTWFrZS5wZGY6IEVOSDpBZGRlZCBwZGYgZmlsZQoKMjAwMS0wMi0xNiAxMTo1MiAgbWFydGluawoKCSogQ01ha2UuZG9jOiBjbGVhbiB1cCBkb2NzCgoyMDAxLTAyLTE2IDExOjM0ICBtYXJ0aW5rCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVOb0F1dG9jb25mLmN4eCwgY21EU1dNYWtlZmlsZS5jeHgsCgkgIGNtRFNXV3JpdGVyLmN4eCwgY21GaW5kSW5jbHVkZUNvbW1hbmQuY3h4LAoJICBjbUZpbmRMaWJyYXJ5Q29tbWFuZC5jeHgsIGNtRmluZExpYnJhcnlDb21tYW5kLmgsCgkgIGNtRmluZFByb2dyYW1Db21tYW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIGNtU3lzdGVtVG9vbHMuaDogRU5IOiBhZGQgbmV3IGNvbW1hbmRzIGZybwoJICBmaW5kIGxpYnJhcnkgYW5kIGZpbmQgcHJvZ3JhbQoKMjAwMS0wMi0xNSAxMzozMCAgbWFydGluawoKCSogQ01ha2VSdWxlcy5tYWtlLmluLCBDTWFrZVZhcmlhYmxlcy5tYWtlLmluLAoJICBTb3VyY2UvQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBTb3VyY2UvQ01ha2VTZXR1cENNRC5jeHgsCgkgIFNvdXJjZS9jbUNsYXNzRmlsZS5jeHgsIFNvdXJjZS9jbUNsYXNzRmlsZS5oLAoJICBTb3VyY2UvY21Db25maWd1cmVGaWxlTm9BdXRvY29uZi5oLCBTb3VyY2UvY21EU1BNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsIFNvdXJjZS9jbURTV01ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmgsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6CgkgIHNvbWUgY2xlYW51cCBhbmQgZml4ZXMKCjIwMDEtMDItMTQgMTI6NTggIGhvZmZtYW4KCgkqIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHA6IEJVRzogc2V0IG91dHB1dCBkaXJlY3RvcnkKCSAgY29ycmVjdGx5CgoyMDAxLTAyLTE0IDEyOjI2ICBob2ZmbWFuCgoJKiBTb3VyY2UvY21NYWtlRGVwZW5kLmN4eDogRU5IOiBmaXggZGVwZW5kIHNlZ2ZhdWx0CgoyMDAxLTAyLTEzIDE4OjQ5ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbUNvbmZpZ3VyZUZpbGVOb0F1dG9jb25mLmN4eCwgY21NYWtlZmlsZS5jeHg6IEVOSDogbmV3CgkgIHZubAoKMjAwMS0wMi0xMyAxNjo0OCAgaG9mZm1hbgoKCSogU291cmNlLzogY21NYWtlZmlsZS5jeHgsIGNtTWFrZWZpbGUuaDogRU5IOiBhZGQgY29uZmlndXJlIHN0eWxlCgkgIEB2YXJAIGV4cGFuc2lvbgoKMjAwMS0wMi0xMiAxOTo0OSAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBNYWtlZmlsZS5pbiwgY21Db21tYW5kcy5jeHgsCgkgIGNtQ29uZmlndXJlRmlsZU5vQXV0b2NvbmYuY3h4LCBjbUNvbmZpZ3VyZUZpbGVOb0F1dG9jb25mLmgsCgkgIGNtQ29uZmlndXJlSGVhZGVyQ29tbWFuZC5jeHgsIGNtQ29uZmlndXJlSGVhZGVyQ29tbWFuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaCwKCSAgY21TeXN0ZW1Ub29scy5jeHgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwgY21Db21tYW5kcy5oOgoJICBFTkg6IGdldCByaWQgb2Ygc3BlY2lhbCBtc2MgY29uZmlndXJlIGZpbGUKCjIwMDEtMDItMTIgMTQ6NDIgIGhvZmZtYW4KCgkqIFNvdXJjZS86IENNYWtlTGliLmRzcCwgQ01ha2VTZXR1cC5kc3csIENNYWtlU2V0dXBDTUQuZHNwLAoJICBNRkNEaWFsb2cvQ01ha2VTZXR1cC5kc3A6IEVOSDogc2hhcmUgYSAubGliIHdpdGggdGhlIGNvbW1hbmQgbGluZQoJICBhbmQgbWZjIHZlcnNpb25zLgoKMjAwMS0wMi0xMiAxNDoyNiAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VMaWIuZHNwLCBDTWFrZVNldHVwLmRzdywgQ01ha2VTZXR1cENNRC5jeHgsCgkgIENNYWtlU2V0dXBDTUQuZHNwLCBNYWtlZmlsZS5pbiwgY21DYWNoZU1hbmFnZXIuY3h4LAoJICBjbUNhY2hlTWFuYWdlci5oLCBjbUNvbW1hbmRzLmN4eCwgY21Db25maWd1cmVIZWFkZXJDb21tYW5kLmN4eCwKCSAgY21Db25maWd1cmVIZWFkZXJDb21tYW5kLmgsIGNtRFNXTWFrZWZpbGUuY3h4LCBjbURTV1dyaXRlci5jeHgsCgkgIGNtTVNQcm9qZWN0R2VuZXJhdG9yLmgsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcCwKCSAgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IGFkZCBjYWNoZSBtYW5hZ2VyIGNsYXNzLAoJICBtb3ZlIGFsbCBjb21tYW5kcyBpbnRvIGNtQ29tbWFuZHMuY3h4IHRvIHNwZWVkIHVwIGNvbXBpbGUgdGltZXMsCgkgIHNoYXJlIGEgLmxpYiB3aXRoIHRoZSBjb21tYW5kIGxpbmUgYW5kIG1mYyB2ZXJzaW9ucy4KCjIwMDEtMDItMDYgMTc6MDEgIGhvZmZtYW4KCgkqIFNvdXJjZS9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGU6IEVOSDogYWRkIC9HWCAvWm0xMDAwCgoyMDAxLTAyLTA2IDE2OjQ4ICBob2ZmbWFuCgoJKiBTb3VyY2Uvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IG1pbiBzaXplIGJ1aWxkCgoyMDAxLTAyLTA2IDEwOjUyICBob2ZmbWFuCgoJKiBTb3VyY2Uvc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBFTkg6IHB1dCBiYWNrIC9abTEwMDAgc28gd2UKCSAgY2FuIGJ1aWxkIGxhcmdlIGZpbGVzCgoyMDAxLTAyLTA2IDA4OjU2ICBtaWxsZXJqdgoKCSogU291cmNlL3N0YXRpY0xpYkhlYWRlci5kc3B0ZW1wbGF0ZTogRklYOiByZW1vdmUgcHJlY29tcGlsZWQKCSAgaGVhZGVyIHNldHRpbmdzCgoyMDAxLTAyLTA2IDA4OjU0ICBtaWxsZXJqdgoKCSogU291cmNlL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZTogRklYOiBhZGRlZCAvZm9yY2UgdG8gbGluayBvcHRpb25zCgkgIGFuZCByZW1vdmVkIHByZWNvbXBpbGVkIGhlYWRlciB1c2FnZQoKMjAwMS0wMS0yNSAxNTo0OCAgbWlsbGVyanYKCgkqIFNvdXJjZS86IEVYRUhlYWRlci5kc3B0ZW1wbGF0ZSwgc3RhdGljTGliSGVhZGVyLmRzcHRlbXBsYXRlOiBCVUc6CgkgIGJhY2tlZCBvZmYgb24gdGhlIGNvbXBpbGVyIG9wdGltaXphdGlvbiB1c2VkLiAgSW5zdGVhZCBvZiB1c2luZwoJICAvTzIsIHdlIG5vdyB1c2UgYWxsIHRoZSBjb21wb25lbnRzIG9mIC9PeCAoL09iMSAvT2kgL090IC9PeSAvR3MpCgkgIGV4Y2VwdCBmb3IgL09nCgoyMDAxLTAxLTIyIDEwOjAwICB3aWxsCgoJKiBTb3VyY2UvQ01ha2VTZXR1cENNRC5kc3A6IEJVRzogY29udmVydCB0byBkb3MgZm9ybWF0CgoyMDAxLTAxLTIyIDA5OjQ5ICB3aWxsCgoJKiBTb3VyY2UvOiBDTWFrZVNldHVwLmRzdywgQ01ha2VTZXR1cENNRC5kc3AsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcDogQlVHOiBtYWtlIGRzcCBhbmQgZHN3IGZpbGVzIGJpbmFyeQoKMjAwMS0wMS0xOCAxMzo0MyAgd2lsbAoKCSogUkVBRE1FOiBFTkg6Q29tbWFuZHMgbm90IHJ1bGVzCgoyMDAxLTAxLTE4IDEyOjA2ICB3aWxsCgoJKiBTb3VyY2UvTWFrZWZpbGUuaW46IEVSUjpPb3BzLCB1c2UgU2ltcGxlUnVsZSBub3QgU2ltcGxlQ29tbWFuZAoKMjAwMS0wMS0xOCAxMTo1MSAgd2lsbAoKCSogQ01ha2VDb21tYW5kcy5tYWtlLmluLCBDTWFrZU1hc3Rlci5tYWtlLmluLCBDTWFrZVJ1bGVzLm1ha2UuaW4sCgkgIENNYWtlU2ltcGxlQ29tbWFuZHMubWFrZS5pbiwgQ01ha2VTaW1wbGVSdWxlcy5tYWtlLmluOiBFUlI6T29wcywKCSAgcmVuYW1lZCBiYWNrCgoyMDAxLTAxLTE4IDExOjIwICB3aWxsCgoJKiBDTWFrZUNvbW1hbmRzLm1ha2UuaW4sIENNYWtlTWFzdGVyLm1ha2UuaW4sIENNYWtlUnVsZXMubWFrZS5pbiwKCSAgQ01ha2VTaW1wbGVDb21tYW5kcy5tYWtlLmluLCBDTWFrZVNpbXBsZVJ1bGVzLm1ha2UuaW4sCgkgIFNvdXJjZS9DTWFrZVNldHVwQ01ELmRzcCwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21BYnN0cmFjdEZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFic3RyYWN0RmlsZXNDb21tYW5kLmgsIFNvdXJjZS9jbUFic3RyYWN0RmlsZXNSdWxlLmN4eCwKCSAgU291cmNlL2NtQWJzdHJhY3RGaWxlc1J1bGUuaCwgU291cmNlL2NtQWRkVGFyZ2V0Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUFkZFRhcmdldENvbW1hbmQuaCwgU291cmNlL2NtQWRkVGFyZ2V0UnVsZS5jeHgsCgkgIFNvdXJjZS9jbUFkZFRhcmdldFJ1bGUuaCwgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5Q29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeUNvbW1hbmQuaCwKCSAgU291cmNlL2NtQXV4U291cmNlRGlyZWN0b3J5UnVsZS5jeHgsCgkgIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeVJ1bGUuaCwgU291cmNlL2NtQ29tbWFuZC5oLAoJICBTb3VyY2UvY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsIFNvdXJjZS9jbUV4ZWN1dGFibGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUV4ZWN1dGFibGVzQ29tbWFuZC5oLCBTb3VyY2UvY21FeGVjdXRhYmxlc1J1bGUuY3h4LAoJICBTb3VyY2UvY21FeGVjdXRhYmxlc1J1bGUuaCwgU291cmNlL2NtRmluZEluY2x1ZGVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtRmluZEluY2x1ZGVDb21tYW5kLmgsIFNvdXJjZS9jbUZpbmRJbmNsdWRlUnVsZS5jeHgsCgkgIFNvdXJjZS9jbUZpbmRJbmNsdWRlUnVsZS5oLCBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21GaW5kTGlicmFyeUNvbW1hbmQuaCwgU291cmNlL2NtRmluZExpYnJhcnlSdWxlLmN4eCwKCSAgU291cmNlL2NtRmluZExpYnJhcnlSdWxlLmgsIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUZpbmRQcm9ncmFtQ29tbWFuZC5oLCBTb3VyY2UvY21GaW5kUHJvZ3JhbVJ1bGUuY3h4LAoJICBTb3VyY2UvY21GaW5kUHJvZ3JhbVJ1bGUuaCwgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeUNvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5Q29tbWFuZC5oLAoJICBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5UnVsZS5jeHgsCgkgIFNvdXJjZS9jbUluY2x1ZGVEaXJlY3RvcnlSdWxlLmgsIFNvdXJjZS9jbUxpYnJhcnlDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlicmFyeUNvbW1hbmQuaCwgU291cmNlL2NtTGlicmFyeVJ1bGUuY3h4LAoJICBTb3VyY2UvY21MaWJyYXJ5UnVsZS5oLCBTb3VyY2UvY21MaW5rRGlyZWN0b3JpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtTGlua0RpcmVjdG9yaWVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21MaW5rRGlyZWN0b3JpZXNSdWxlLmN4eCwgU291cmNlL2NtTGlua0RpcmVjdG9yaWVzUnVsZS5oLAoJICBTb3VyY2UvY21MaW5rTGlicmFyaWVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNDb21tYW5kLmgsIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNSdWxlLmN4eCwKCSAgU291cmNlL2NtTGlua0xpYnJhcmllc1J1bGUuaCwgU291cmNlL2NtTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21NYWtlZmlsZS5oLCBTb3VyY2UvY21NYWtlZmlsZUdlbmVyYXRvci5oLAoJICBTb3VyY2UvY21Qcm9qZWN0Q29tbWFuZC5jeHgsIFNvdXJjZS9jbVByb2plY3RDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVByb2plY3RSdWxlLmN4eCwgU291cmNlL2NtUHJvamVjdFJ1bGUuaCwKCSAgU291cmNlL2NtUnVsZU1ha2VyLmgsIFNvdXJjZS9jbVNvdXJjZUZpbGVzQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVzQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlcXVpcmVDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtU291cmNlRmlsZXNSZXF1aXJlQ29tbWFuZC5oLAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc1JlcXVpcmVSdWxlLmN4eCwKCSAgU291cmNlL2NtU291cmNlRmlsZXNSZXF1aXJlUnVsZS5oLCBTb3VyY2UvY21Tb3VyY2VGaWxlc1J1bGUuY3h4LAoJICBTb3VyY2UvY21Tb3VyY2VGaWxlc1J1bGUuaCwgU291cmNlL2NtU3ViZGlyQ29tbWFuZC5jeHgsCgkgIFNvdXJjZS9jbVN1YmRpckNvbW1hbmQuaCwgU291cmNlL2NtU3ViZGlyUnVsZS5jeHgsCgkgIFNvdXJjZS9jbVN1YmRpclJ1bGUuaCwgU291cmNlL2NtU3lzdGVtVG9vbHMuaCwKCSAgU291cmNlL2NtVGVzdHNDb21tYW5kLmN4eCwgU291cmNlL2NtVGVzdHNDb21tYW5kLmgsCgkgIFNvdXJjZS9jbVRlc3RzUnVsZS5jeHgsIFNvdXJjZS9jbVRlc3RzUnVsZS5oLAoJICBTb3VyY2UvY21Vbml4RGVmaW5lc0NvbW1hbmQuY3h4LCBTb3VyY2UvY21Vbml4RGVmaW5lc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtVW5peERlZmluZXNSdWxlLmN4eCwgU291cmNlL2NtVW5peERlZmluZXNSdWxlLmgsCgkgIFNvdXJjZS9jbVVuaXhMaWJyYXJpZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtVW5peExpYnJhcmllc0NvbW1hbmQuaCwgU291cmNlL2NtVW5peExpYnJhcmllc1J1bGUuY3h4LAoJICBTb3VyY2UvY21Vbml4TGlicmFyaWVzUnVsZS5oLCBTb3VyY2UvY21XaW4zMkRlZmluZXNDb21tYW5kLmN4eCwKCSAgU291cmNlL2NtV2luMzJEZWZpbmVzQ29tbWFuZC5oLCBTb3VyY2UvY21XaW4zMkRlZmluZXNSdWxlLmN4eCwKCSAgU291cmNlL2NtV2luMzJEZWZpbmVzUnVsZS5oLCBTb3VyY2UvY21XaW4zMkxpYnJhcmllc0NvbW1hbmQuY3h4LAoJICBTb3VyY2UvY21XaW4zMkxpYnJhcmllc0NvbW1hbmQuaCwKCSAgU291cmNlL2NtV2luMzJMaWJyYXJpZXNSdWxlLmN4eCwgU291cmNlL2NtV2luMzJMaWJyYXJpZXNSdWxlLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5kc3A6IEVOSDpSZXdvcmtlZCBDTWFrZSBmb3IKCSAgY29uc2lzdGVuY3kKCjIwMDEtMDEtMTIgMTQ6MzUgIHdpbGwKCgkqIFJFQURNRSwgU291cmNlL2NtQWJzdHJhY3RGaWxlc1J1bGUuaCwgU291cmNlL2NtQWRkVGFyZ2V0UnVsZS5oLAoJICBTb3VyY2UvY21BdXhTb3VyY2VEaXJlY3RvcnlSdWxlLmgsIFNvdXJjZS9jbUV4ZWN1dGFibGVzUnVsZS5oLAoJICBTb3VyY2UvY21GaW5kSW5jbHVkZVJ1bGUuaCwgU291cmNlL2NtRmluZExpYnJhcnlSdWxlLmgsCgkgIFNvdXJjZS9jbUZpbmRQcm9ncmFtUnVsZS5oLCBTb3VyY2UvY21JbmNsdWRlRGlyZWN0b3J5UnVsZS5oLAoJICBTb3VyY2UvY21MaWJyYXJ5UnVsZS5oLCBTb3VyY2UvY21MaW5rRGlyZWN0b3JpZXNSdWxlLmgsCgkgIFNvdXJjZS9jbUxpbmtMaWJyYXJpZXNSdWxlLmgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtUHJvamVjdFJ1bGUuaCwgU291cmNlL2NtUnVsZU1ha2VyLmgsCgkgIFNvdXJjZS9jbVNvdXJjZUZpbGVzUmVxdWlyZVJ1bGUuaCwgU291cmNlL2NtU291cmNlRmlsZXNSdWxlLmgsCgkgIFNvdXJjZS9jbVN1YmRpclJ1bGUuaCwgU291cmNlL2NtVGVzdHNSdWxlLmgsCgkgIFNvdXJjZS9jbVVuaXhEZWZpbmVzUnVsZS5oLCBTb3VyY2UvY21Vbml4TGlicmFyaWVzUnVsZS5oLAoJICBTb3VyY2UvY21XaW4zMkRlZmluZXNSdWxlLmgsIFNvdXJjZS9jbVdpbjMyTGlicmFyaWVzUnVsZS5oOgoJICBFTkg6VHdlYWtzIHRvIGR1bXAgZG9jdW1lbnRhdGlvbgoKMjAwMS0wMS0xMiAxNDowNSAgaG9mZm1hbgoKCSogU291cmNlLzogY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogRU5IOiBhZGQgZGVmaW5lCgkgIGZsYWdzIGluIHRoZSByaWdodCBwbGFjZQoKMjAwMS0wMS0xMiAxMzo0OSAgaG9mZm1hbgoKCSogU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiBhbGxvdyBjb250aW51ZSBpZgoJICBtaXNzaW5nIE1TQyBjb25maWd1cmUgZmlsZQoKMjAwMS0wMS0xMiAxMzo0OCAgaG9mZm1hbgoKCSogU291cmNlL2NtU3lzdGVtVG9vbHMuY3h4OiBCVUc6IGFkZCBjaGVjayBmb3IgbWlzc2luZyApIG9uCgkgIGZ1bmN0aW9uCgoyMDAxLTAxLTEyIDEzOjA3ICB3aWxsCgoJKiBSRUFETUUsIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeVJ1bGUuaCwKCSAgU291cmNlL2NtSW5jbHVkZURpcmVjdG9yeVJ1bGUuaCwgU291cmNlL2NtTGlua0xpYnJhcmllc1J1bGUuaCwKCSAgU291cmNlL2NtUHJvamVjdFJ1bGUuaCwgU291cmNlL2NtU291cmNlRmlsZXNSZXF1aXJlUnVsZS5oLAoJICBTb3VyY2UvY21TdWJkaXJSdWxlLmgsIFNvdXJjZS9jbVVuaXhEZWZpbmVzUnVsZS5oLAoJICBTb3VyY2UvY21XaW4zMkRlZmluZXNSdWxlLmg6IEVOSDpUd2Vha3MgdG8gZHVtcCBkb2N1bWVudGF0aW9uCgoyMDAxLTAxLTEyIDEyOjQ5ICB3aWxsCgoJKiBTb3VyY2UvOiBjbUFkZFRhcmdldFJ1bGUuaCwgY21NYWtlZmlsZS5jeHg6IEVOSDpUd2Vha3MgdG8KCSAgZG9jdW1lbnRhdGlvbgoKMjAwMS0wMS0xMiAxMjo0OSAgd2lsbAoKCSogUkVBRE1FOiBFTkg6VXBkYXRlZCBmb3IgcnVsZS1iYXNlZCBDTWFrZQoKMjAwMS0wMS0xMiAxMjo0MiAgd2lsbAoKCSogU291cmNlLzogY21EdW1wRG9jdW1lbnRhdGlvbi5jeHgsIGNtTWFrZWZpbGUuY3h4LCBjbU1ha2VmaWxlLmg6CgkgIEVOSDpTaW1wbGUgcHJvZ3JhbSBkdW1wcyBvdXQgaW50ZXJuYWwgZG9jdW1lbnRhdGlvbiBmb3IgQ01ha2UKCjIwMDEtMDEtMTIgMDc6NDMgIHdpbGwKCgkqIFJFQURNRTogUkVBRE1FCgoyMDAxLTAxLTExIDE2OjE5ICB3aWxsCgoJKiBkb3h5Z2VuLmNvbmZpZzogRU5IOkRveHlnZW5hdGVkIENNYWtlCgoyMDAxLTAxLTExIDE0OjU1ICB3aWxsCgoJKiBTb3VyY2UvOiBDTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsIENNYWtlU2V0dXBDTUQuY3h4LAoJICBjbUFic3RyYWN0RmlsZXNSdWxlLmN4eCwgY21DbGFzc0ZpbGUuY3h4LCBjbURTUE1ha2VmaWxlLmN4eCwKCSAgY21EU1BXcml0ZXIuY3h4LCBjbURTV01ha2VmaWxlLmN4eCwgY21EU1dXcml0ZXIuY3h4LAoJICBjbUV4ZWN1dGFibGVzUnVsZS5jeHgsIGNtRmluZEluY2x1ZGVSdWxlLmN4eCwKCSAgY21GaW5kTGlicmFyeVJ1bGUuY3h4LCBjbUZpbmRQcm9ncmFtUnVsZS5jeHgsCgkgIGNtSW5jbHVkZURpcmVjdG9yeVJ1bGUuY3h4LCBjbUxpYnJhcnlSdWxlLmN4eCwKCSAgY21MaW5rRGlyZWN0b3JpZXNSdWxlLmN4eCwgY21MaW5rTGlicmFyaWVzUnVsZS5jeHgsCgkgIGNtTVNQcm9qZWN0R2VuZXJhdG9yLmN4eCwgY21NYWtlRGVwZW5kLmN4eCwgY21NYWtlZmlsZS5jeHgsCgkgIGNtTWFrZWZpbGVHZW5lcmF0b3IuY3h4LCBjbVByb2plY3RSdWxlLmN4eCwKCSAgY21Tb3VyY2VGaWxlc1JlcXVpcmVSdWxlLmN4eCwgY21Tb3VyY2VGaWxlc1J1bGUuY3h4LAoJICBjbVN1YmRpclJ1bGUuY3h4LCBjbVN5c3RlbVRvb2xzLmN4eCwgY21UZXN0c1J1bGUuY3h4LAoJICBjbVVuaXhEZWZpbmVzUnVsZS5jeHgsIGNtVW5peExpYnJhcmllc1J1bGUuY3h4LAoJICBjbVdpbjMyRGVmaW5lc1J1bGUuY3h4LCBjbVdpbjMyTGlicmFyaWVzUnVsZS5jeHg6CgkgIEVOSDpEb2N1bWVudGF0aW9uIGFuZCBjbGVhbnVwcwoKMjAwMS0wMS0xMSAxNDo0NyAgd2lsbAoKCSogU291cmNlLzogQ01ha2VTZXR1cENNRC5jeHgsIGNtQWRkVGFyZ2V0UnVsZS5jeHgsCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5UnVsZS5jeHgsIGNtQ2xhc3NGaWxlLmgsIGNtRFNXTWFrZWZpbGUuY3h4LAoJICBjbURTV01ha2VmaWxlLmgsIGNtRFNXV3JpdGVyLmN4eCwgY21EU1dXcml0ZXIuaCwgY21EaXJlY3RvcnkuaCwKCSAgY21GaW5kUHJvZ3JhbVJ1bGUuaCwgY21NU1Byb2plY3RHZW5lcmF0b3IuY3h4LAoJICBjbU1TUHJvamVjdEdlbmVyYXRvci5oLCBjbU1ha2VEZXBlbmQuaCwgY21NYWtlZmlsZS5oLAoJICBjbU1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtUmVndWxhckV4cHJlc3Npb24uY3h4LAoJICBjbVJlZ3VsYXJFeHByZXNzaW9uLmgsIGNtU3RhbmRhcmRJbmNsdWRlcy5oLCBjbVN5c3RlbVRvb2xzLmN4eCwKCSAgY21TeXN0ZW1Ub29scy5oLCBjbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmgsIGNtV2luZG93c0NvbmZpZ3VyZS5jeHgsCgkgIGNtV2luZG93c0NvbmZpZ3VyZS5oOiBFTkg6RG9jdW1lbnRhdGlvbiBhbmQgY2xlYW51cHMKCjIwMDEtMDEtMTEgMTE6MzUgIGJsZXplawoKCSogU291cmNlLzogY21XaW4zMkRlZmluZXNSdWxlLmN4eCwgY21XaW4zMkxpYnJhcmllc1J1bGUuY3h4OiBCVUc6CgkgIEJyb2tlbiBvbiBub24gV0lOMzIgcGxhdGZvcm1zLCBjaGFuZ2VkIFNldEVuYWJsZU9mZiB0byBFbmFibGVkT2ZmCgoyMDAxLTAxLTExIDA4OjA0ICB3aWxsCgoJKiBTb3VyY2UvOiBjbUZpbmRJbmNsdWRlUnVsZS5oLCBjbUZpbmRMaWJyYXJ5UnVsZS5oLAoJICBjbUZpbmRQcm9ncmFtUnVsZS5oLCBjbUluY2x1ZGVEaXJlY3RvcnlSdWxlLmgsIGNtTGlicmFyeVJ1bGUuaCwKCSAgY21MaW5rRGlyZWN0b3JpZXNSdWxlLmgsIGNtTGlua0xpYnJhcmllc1J1bGUuaCwgY21Qcm9qZWN0UnVsZS5oLAoJICBjbVNvdXJjZUZpbGVzUmVxdWlyZVJ1bGUuaCwgY21Tb3VyY2VGaWxlc1J1bGUuaCwgY21TdWJkaXJSdWxlLmgsCgkgIGNtVGVzdHNSdWxlLmgsIGNtVW5peERlZmluZXNSdWxlLmgsIGNtVW5peExpYnJhcmllc1J1bGUuaCwKCSAgY21XaW4zMkRlZmluZXNSdWxlLmgsIGNtV2luMzJMaWJyYXJpZXNSdWxlLmg6IEVOSDpBZGRlZAoJICBkb2N1bWVudGF0aW9uOyBjbGVhbi11cAoKMjAwMS0wMS0xMCAxNzoyOSAgd2lsbAoKCSogU291cmNlLzogY21FeGVjdXRhYmxlc1J1bGUuaCwgY21GaW5kSW5jbHVkZVJ1bGUuaDogRU5IOkJlZ2lubmluZwoJICBjbGVhbiB1cDsgYWRkaW5nIGRvY3VtZW50YXRpb24KCjIwMDEtMDEtMTAgMTc6MTMgIHdpbGwKCgkqIFNvdXJjZS9jbUF1eFNvdXJjZURpcmVjdG9yeVJ1bGUuaDogRU5IOkJlZ2lubmluZyBjbGVhbiB1cDsgYWRkaW5nCgkgIGRvY3VtZW50YXRpb24KCjIwMDEtMDEtMTAgMTc6MDUgIHdpbGwKCgkqIFNvdXJjZS86IGNtQWJzdHJhY3RGaWxlc1J1bGUuaCwgY21BZGRUYXJnZXRSdWxlLmgsCgkgIGNtQXV4U291cmNlRGlyZWN0b3J5UnVsZS5oLCBjbURTUE1ha2VmaWxlLmgsIGNtRFNQV3JpdGVyLmgsCgkgIGNtRXhlY3V0YWJsZXNSdWxlLmgsIGNtRmluZEluY2x1ZGVSdWxlLmgsIGNtRmluZExpYnJhcnlSdWxlLmgsCgkgIGNtRmluZFByb2dyYW1SdWxlLmgsIGNtSW5jbHVkZURpcmVjdG9yeVJ1bGUuaCwgY21MaWJyYXJ5UnVsZS5oLAoJICBjbUxpbmtEaXJlY3Rvcmllc1J1bGUuaCwgY21MaW5rTGlicmFyaWVzUnVsZS5oLCBjbVByb2plY3RSdWxlLmgsCgkgIGNtUnVsZU1ha2VyLmgsIGNtU291cmNlRmlsZXNSZXF1aXJlUnVsZS5oLCBjbVNvdXJjZUZpbGVzUnVsZS5oLAoJICBjbVN1YmRpclJ1bGUuaCwgY21UZXN0c1J1bGUuaCwgY21Vbml4RGVmaW5lc1J1bGUuY3h4LAoJICBjbVVuaXhEZWZpbmVzUnVsZS5oLCBjbVVuaXhMaWJyYXJpZXNSdWxlLmN4eCwKCSAgY21Vbml4TGlicmFyaWVzUnVsZS5oLCBjbVdpbjMyRGVmaW5lc1J1bGUuaCwKCSAgY21XaW4zMkxpYnJhcmllc1J1bGUuaDogRU5IOkJlZ2lubmluZyBjbGVhbiB1cDsgYWRkaW5nCgkgIGRvY3VtZW50YXRpb24KCjIwMDEtMDEtMDkgMTU6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbVVuaXhNYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogbG9vayBmb3IgLWwgYW5kIC1MIG9ubHkKCSAgYXQgdGhlIGJlZ2luaW5nIG9mIGEgbGluayBzdHJpbmcKCjIwMDEtMDEtMDUgMTM6NTIgIGJsZXplawoKCSogU291cmNlLzogQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBDTWFrZVNldHVwQ01ELmN4eDogQlVHOiBtYWluIGNhbgoJICBub3QgYmUgdm9pZCB1bmRlciBBTlNJIEMrKwoKMjAwMS0wMS0wNSAxMzo0OSAgYmxlemVrCgoJKiBTb3VyY2UvY21NYWtlZmlsZUdlbmVyYXRvci5jeHg6IEJVRzogTG9va2luZyBmb3IKCSAgY21NYWtlRmlsZUdlbmVyYXRvci5oIHJhdGhlciB0aGFuIGNtTWFrZWZpbGVHZW5lcmF0b3IuaAoKMjAwMS0wMS0wNSAxMTo0MSAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VCdWlsZFRhcmdldHMuY3h4LCBDTWFrZVNldHVwQ01ELmN4eCwKCSAgQ01ha2VTZXR1cENNRC5kc3AsIE1ha2VmaWxlLmluLCBjbUFic3RyYWN0RmlsZXNSdWxlLmN4eCwKCSAgY21BYnN0cmFjdEZpbGVzUnVsZS5oLCBjbUFkZFRhcmdldFJ1bGUuY3h4LCBjbUFkZFRhcmdldFJ1bGUuaCwKCSAgY21BdXhTb3VyY2VEaXJlY3RvcnlSdWxlLmN4eCwgY21BdXhTb3VyY2VEaXJlY3RvcnlSdWxlLmgsCgkgIGNtQ2xhc3NGaWxlLmN4eCwgY21DbGFzc0ZpbGUuaCwgY21Db2xsZWN0RmxhZ3MuY3h4LAoJICBjbUNvbGxlY3RGbGFncy5oLCBjbURTUE1ha2VmaWxlLmN4eCwgY21EU1BNYWtlZmlsZS5oLAoJICBjbURTUFdyaXRlci5jeHgsIGNtRFNQV3JpdGVyLmgsIGNtRFNXTWFrZWZpbGUuY3h4LAoJICBjbURTV1dyaXRlci5jeHgsIGNtRFNXTWFrZWZpbGUuaCwgY21EU1dXcml0ZXIuaCwgY21EaXJlY3RvcnkuY3h4LAoJICBjbURpcmVjdG9yeS5oLCBjbUV4ZWN1dGFibGVzUnVsZS5jeHgsIGNtRXhlY3V0YWJsZXNSdWxlLmgsCgkgIGNtRmluZEluY2x1ZGVSdWxlLmN4eCwgY21GaW5kSW5jbHVkZVJ1bGUuaCwKCSAgY21GaW5kTGlicmFyeVJ1bGUuY3h4LCBjbUZpbmRMaWJyYXJ5UnVsZS5oLAoJICBjbUZpbmRQcm9ncmFtUnVsZS5jeHgsIGNtRmluZFByb2dyYW1SdWxlLmgsCgkgIGNtSW5jbHVkZURpcmVjdG9yeVJ1bGUuY3h4LCBjbUluY2x1ZGVEaXJlY3RvcnlSdWxlLmgsCgkgIGNtTGlicmFyeVJ1bGUuY3h4LCBjbUxpYnJhcnlSdWxlLmgsIGNtTGlua0RpcmVjdG9yaWVzUnVsZS5jeHgsCgkgIGNtTGlua0RpcmVjdG9yaWVzUnVsZS5oLCBjbUxpbmtMaWJyYXJpZXNSdWxlLmN4eCwKCSAgY21MaW5rTGlicmFyaWVzUnVsZS5oLCBjbU1TUHJvamVjdEdlbmVyYXRvci5jeHgsCgkgIGNtTVNQcm9qZWN0R2VuZXJhdG9yLmgsIGNtTWFrZURlcGVuZC5jeHgsIGNtTWFrZURlcGVuZC5oLAoJICBjbU1ha2VmaWxlLmN4eCwgY21NYWtlZmlsZS5oLCBjbU1ha2VmaWxlR2VuZXJhdG9yLmN4eCwKCSAgY21NYWtlZmlsZUdlbmVyYXRvci5oLCBjbVByb2plY3RSdWxlLmN4eCwgY21Qcm9qZWN0UnVsZS5oLAoJICBjbVJlZ3VsYXJFeHByZXNzaW9uLmN4eCwgY21SZWd1bGFyRXhwcmVzc2lvbi5oLCBjbVJ1bGVNYWtlci5oLAoJICBjbVNvdXJjZUZpbGVzUmVxdWlyZVJ1bGUuY3h4LCBjbVNvdXJjZUZpbGVzUmVxdWlyZVJ1bGUuaCwKCSAgY21Tb3VyY2VGaWxlc1J1bGUuY3h4LCBjbVNvdXJjZUZpbGVzUnVsZS5oLCBjbVN0YW5kYXJkSW5jbHVkZXMuaCwKCSAgY21TdWJkaXJSdWxlLmN4eCwgY21TdWJkaXJSdWxlLmgsIGNtU3lzdGVtVG9vbHMuY3h4LAoJICBjbVN5c3RlbVRvb2xzLmgsIGNtVGVzdHNSdWxlLmN4eCwgY21UZXN0c1J1bGUuaCwKCSAgY21Vbml4RGVmaW5lc1J1bGUuY3h4LCBjbVVuaXhEZWZpbmVzUnVsZS5oLAoJICBjbVVuaXhMaWJyYXJpZXNSdWxlLmN4eCwgY21Vbml4TGlicmFyaWVzUnVsZS5oLAoJICBjbVVuaXhNYWtlZmlsZS5jeHgsIGNtVW5peE1ha2VmaWxlLmgsCgkgIGNtVW5peE1ha2VmaWxlR2VuZXJhdG9yLmN4eCwgY21Vbml4TWFrZWZpbGVHZW5lcmF0b3IuaCwKCSAgY21XaW4zMkRlZmluZXNSdWxlLmN4eCwgY21XaW4zMkRlZmluZXNSdWxlLmgsCgkgIGNtV2luMzJMaWJyYXJpZXNSdWxlLmN4eCwgY21XaW4zMkxpYnJhcmllc1J1bGUuaCwKCSAgY21XaW5kb3dzQ29uZmlndXJlLmN4eCwgY21XaW5kb3dzQ29uZmlndXJlLmgsCgkgIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcCwgTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6CgkgIHJld29yayBjbWFrZSwgYWRkZWQgcnVsZU1ha2VyIGNsYXNzZXMgYW5kIGNoYW5nZWQgdGhlIHN5bnRheCBvZgoJICB0aGUgQ01ha2VMaXN0cy50eHQgZmlsZXMuCgoyMDAwLTEyLTA3IDE1OjQ1ICBibGV6ZWsKCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogRU5IOiBBZGRlZCBURVNUUyB0YXJnZXQKCjIwMDAtMTEtMjIgMTE6MDIgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4OiBCVUc6IHJlbW92ZSBib2d1cyB3YXJuaW5nIGFib3V0IG5vdAoJICBmaW5kaW5nIGEgZGVwZW5kIGZpbGUsIGlmIHRoZXJlIGFyZSBubyBpbmNsdWRlIHBhdGhzCgoyMDAwLTExLTEwIDE3OjEzICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBCVUc6IGZpeCBpbnBsYWNlIGJ1aWxkCgoyMDAwLTExLTA5IDEwOjQxICB3aWxsCgoJKiBSRUFETUUsIFNvdXJjZS9jbUNvbGxlY3RGbGFncy5jeHgsIFNvdXJjZS9jbUNvbGxlY3RGbGFncy5oLAoJICBTb3VyY2UvY21XaW5kb3dzQ29uZmlndXJlLmN4eDogRU5IOkNoYW5nZWQgQ01BS0VfU09VUkNFX1JPT1QgdG8KCSAgQ01BS0VfU09VUkNFX0RJUgoKMjAwMC0xMS0wMyAxNjozOCAgaG9mZm1hbgoKCSogUkVBRE1FOiBbbm8gbG9nIG1lc3NhZ2VdCgoyMDAwLTExLTAzIDE2OjM3ICBob2ZmbWFuCgoJKiBTb3VyY2UvTUZDRGlhbG9nLzogQ01ha2VTZXR1cERpYWxvZy5jcHAsIENNYWtlU2V0dXBEaWFsb2cuaDogRU5IOgoJICBhZGQgYWJpbGl0eSB0byBydW4gZnJvbSBkaWZmZXJlbnQgZGlyZWN0b3JpZXMKCjIwMDAtMTEtMDIgMTE6MTMgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDogQlVHOiBtYWtlIHN1cmUgU09VUkNFX0ZJTEVTIHN0YXJ0cyBhdCB0aGUKCSAgYmVnaW5pbmcgb2YgbGluZQoKMjAwMC0xMS0wMiAxMDo1NiAgYmxlemVrCgoJKiBDTWFrZVZhcmlhYmxlcy5tYWtlLmluOiBFTkg6IE1vdmVkIEBKQVZBQCB0byBASkFWQUNPTU1BTkRACgoyMDAwLTExLTAyIDEwOjI0ICB3aWxsCgoJKiBSRUFETUUsIFNvdXJjZS9jbUNsYXNzRmlsZS5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eDoKCSAgRU5IOlJld29ya2VkIENNYWtlIHRvIGNsZWFyZXIgaW5kaWNhdGUgd2hhdCB0aGUgdmFyaWFibGVzIGRvCgoyMDAwLTEwLTI1IDE3OjE4ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBjbVN5c3RlbVRvb2xzLmN4eDogQlVHOiByZW1vdmUgdGFicyBmcm9tIGNsYXNzbmFtZXMKCjIwMDAtMTAtMDQgMDk6NTggIGxvcmVuc2VuCgoJKiBDTWFrZVZhcmlhYmxlcy5tYWtlLmluOiBFbmg6IEFkZGVkIFRDTFNICgoyMDAwLTEwLTAyIDE0OjIxICBibGV6ZWsKCgkqIFNvdXJjZS9DTWFrZUJ1aWxkVGFyZ2V0cy5jeHg6IEJVRzogaWYgdGhlIHBhdGggdG8geW91ciBzb3VyY2UKCSAgZGlyZWN0b3J5IGhhcyBhIC1TIGluIGl0LCBpdCB3aWxsIGJlIHBpY2tlZCB1cCBhcyB0aGUgc291cmNlCgkgIGRpcmVjdG9yeSBieSB0aGUgY29tbWFuZCBsaW5lIHBhcnNlciwgYmVjYXVzZSBpdCBtYXRjaGVzIC1TIGF0CgkgIGFueSBjaGFyYWN0ZXIgcG9zaXRpb24gaW4gdGhlIGFyZ2VtZW50cy4gIEJhZCwgc2hvdWxkIGhhdmUgdXNlZAoJICBnZXRvcHQsIGV4Y2VwdCB0aGF0IGl0IGlzIG5vdCBjcm9zcyBwbGF0Zm9ybS4KCjIwMDAtMTAtMDIgMTM6NTAgIGJsZXplawoKCSogQ01ha2VWYXJpYWJsZXMubWFrZS5pbjogRU5IOiBTdXBwb3J0IGZvciBYTUwgYnVpbGRzIGFuZCBEYXNoYm9hcmQKCjIwMDAtMDktMjggMTI6NDMgIGJsZXplawoKCSogUkVBRE1FOiBFTkg6IEFkZGVkIG5vdGUgYWJvdXQgVkVSQkFUSU0gdGFyZ2V0cyBpbiBDTWFrZUxpc3QudHh0CgoyMDAwLTA5LTI3IDE1OjAxICBob2ZmbWFuCgoJKiBDTWFrZU1hc3Rlci5tYWtlLmluLCBDTWFrZVJ1bGVzLm1ha2UuaW4sIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sCgkgIFJFQURNRSwgU291cmNlL2NtRFNXTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21EU1dNYWtlZmlsZS5oLAoJICBTb3VyY2UvY21EU1dXcml0ZXIuY3h4LCBTb3VyY2UvY21EU1dXcml0ZXIuaCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5jeHgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5oOiBFTkg6IGNoYW5nZQoJICBNRSB0byBMSUJSQVJZIGFuZCBhZGRlZCBQUk9KRUNULCBhbHNvIHJlbW92ZSBJVEsgc3R1ZmYgYW5kCgkgIHJlcGxhY2VkIHdpdGggQ01ha2UKCjIwMDAtMDktMjEgMTM6NDUgIGhvZmZtYW4KCgkqIFJFQURNRSwgU291cmNlL0NNYWtlQnVpbGRUYXJnZXRzLmN4eCwgU291cmNlL0NNYWtlU2V0dXBDTUQuY3h4LAoJICBTb3VyY2UvY21Db2xsZWN0RmxhZ3MuY3h4LCBTb3VyY2UvY21Db2xsZWN0RmxhZ3MuaCwKCSAgU291cmNlL2NtRFNQTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LAoJICBTb3VyY2UvY21EU1dNYWtlZmlsZS5jeHgsIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsCgkgIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9pdGtWQzYwQ29uZmlndXJlLmN4eCwgU291cmNlL2l0a1ZDNjBDb25maWd1cmUuaDogRU5IOgoJICBjbGVhbiB1cCBjb2RlLCBhbmQgdmFyaWJsZSBuYW1lcwoKMjAwMC0wOS0xOCAxMDoxOSAgaG9mZm1hbgoKCSogU291cmNlL2NtVW5peE1ha2VmaWxlLmN4eDogQlVHOiByZW1vdmUgY291dAoKMjAwMC0wOS0xOCAwOToxOSAgaG9mZm1hbgoKCSogQ01ha2VSdWxlcy5tYWtlLmluLCBDTWFrZVZhcmlhYmxlcy5tYWtlLmluLCBSRUFETUUsCgkgIFNvdXJjZS9jbURTUE1ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNQV3JpdGVyLmN4eCwKCSAgU291cmNlL2NtTWFrZURlcGVuZC5jeHgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVdpbmRvd3NDb25maWd1cmUuY3h4LCBTb3VyY2UvY21XaW5kb3dzQ29uZmlndXJlLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5kc3AsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5yYywKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcCwKCSAgU291cmNlL01GQ0RpYWxvZy9yZXNvdXJjZS5oOiBFTkg6IGFkZGVkIGEgY29uZmlnIHNldHVwIGZpbGUgZm9yCgkgIENNYWtlU2V0dXAuCUNsZWFuZWQgdXAgdGhlIG5hbWVzIG9mIHRoZSBzb3VyY2UgYW5kIGJpbmFyeQoJICBkaXJlY3RvcmllcwoKMjAwMC0wOS0xOCAwNzoyNyAgaG9mZm1hbgoKCSogU291cmNlLzogQ01ha2VTZXR1cENNRC5kc3AsIE1GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcDogRU5IOiByZW1vdmUKCSAgdW51c2VkIGZpbGVzCgoyMDAwLTA5LTEyIDA2OjQ0ICBob2ZmbWFuCgoJKiBDTWFrZVJ1bGVzLm1ha2UuaW4sIENNYWtlVmFyaWFibGVzLm1ha2UuaW46IEJVRzogZml4IGJ1aWxkIGluCgkgIHBsYWNlIHNvdXJjZSBkaXJlY3RvcnkKCjIwMDAtMDktMTIgMDU6MzcgIGhvZmZtYW4KCgkqIFNvdXJjZS86IGNtQ29sbGVjdEZsYWdzLmN4eCwgY21Db2xsZWN0RmxhZ3MuaDogTkVXOiBjbGFzcyB0bwoJICBjb2xsZWN0IGFsbCB0aGUgZmxhZ3MgZnJvbSBwYXJlbnQgZGlyZWN0b3JpZXMKCjIwMDAtMDktMTIgMDU6MzAgIGhvZmZtYW4KCgkqIENNYWtlTWFzdGVyLm1ha2UuaW4sIENNYWtlUnVsZXMubWFrZS5pbiwgQ01ha2VUYXJnZXRzLm1ha2UuaW4sCgkgIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sIE1ha2VmaWxlVGVtcGxhdGUuaW4sIFJFQURNRSwKCSAgU291cmNlL0NNYWtlQnVpbGRUYXJnZXRzLmN4eCwgU291cmNlL0NNYWtlU2V0dXAuY3h4LAoJICBTb3VyY2UvQ01ha2VTZXR1cC5kc3csIFNvdXJjZS9DTWFrZVNldHVwQ01ELmN4eCwKCSAgU291cmNlL0NNYWtlU2V0dXBDTUQuZHNwLCBTb3VyY2UvTWFrZWZpbGUuaW4sCgkgIFNvdXJjZS9jbUNsYXNzRmlsZS5jeHgsIFNvdXJjZS9jbUNsYXNzRmlsZS5oLAoJICBTb3VyY2UvY21EU1BCdWlsZGVyLmN4eCwgU291cmNlL2NtRFNQQnVpbGRlci5oLAoJICBTb3VyY2UvY21EU1BNYWtlZmlsZS5jeHgsIFNvdXJjZS9jbURTUFdyaXRlci5jeHgsCgkgIFNvdXJjZS9jbURTV0J1aWxkZXIuY3h4LCBTb3VyY2UvY21EU1dCdWlsZGVyLmgsCgkgIFNvdXJjZS9jbURTV01ha2VmaWxlLmN4eCwgU291cmNlL2NtRFNXTWFrZWZpbGUuaCwKCSAgU291cmNlL2NtRFNXV3JpdGVyLmN4eCwgU291cmNlL2NtRFNXV3JpdGVyLmgsCgkgIFNvdXJjZS9jbU1ha2VEZXBlbmQuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbU1ha2VmaWxlLmgsIFNvdXJjZS9jbVBDQnVpbGRlci5jeHgsCgkgIFNvdXJjZS9jbVBDQnVpbGRlci5oLCBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsCgkgIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5oLCBTb3VyY2UvY21XaW5kb3dzQ29uZmlndXJlLmgsCgkgIFNvdXJjZS9pdGtWQzYwQ29uZmlndXJlLmgsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VEaWFsb2cuY3BwLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAuZHNwLAoJICBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXBEaWFsb2cuY3BwOiBFTkg6IENNYWtlIGFuZCBjb25maWd1cmUKCSAgbm93IHVzZSBTVUJESVJTIGluIENNYWtlTGlzdHMudHh0IHRvIGZpbmQgYWxsIHRoZSBkaXJlY3RvcmllcyBvZgoJICB0aGUgc3lzdGVtLgoKMjAwMC0wOS0wMSAxMDo0MyAgaG9mZm1hbgoKCSogU291cmNlLzogRVhFSGVhZGVyLmRzcHRlbXBsYXRlLCBjbVN5c3RlbVRvb2xzLmN4eDogQlVHOiBmaXgKCSAgcmVsZWFzZSBidWlsZCBvbiB3aW5kb3dzCgoyMDAwLTA4LTMxIDE0OjI2ICBob2ZmbWFuCgoJKiBDTWFrZVZhcmlhYmxlcy5tYWtlLmluLCBTb3VyY2UvY21Vbml4TWFrZWZpbGUuY3h4OiBCVUc6IGZpeCBidWlsZAoJICBvZiBsaWIuYSBwcm9ibGVtCgoyMDAwLTA4LTMxIDE0OjE1ICBob2ZmbWFuCgoJKiBTb3VyY2UvOiBDTWFrZVNldHVwLmRzdywgY21EU1BNYWtlZmlsZS5jeHgsIGNtRFNQV3JpdGVyLmN4eDogQlVHOgoJICBmaXggbmFtZSBvZiBjb21tYW5kIGxpbmUgdmVyc2lvbiBpbiBkc3AgZmlsZXMKCjIwMDAtMDgtMzEgMTM6NTQgIGhvZmZtYW4KCgkqIENNYWtlU2ltcGxlUnVsZXMubWFrZSwgQ01ha2VTaW1wbGVSdWxlcy5tYWtlLmluOiBCVUc6IGZpeCBmb3Igb3V0CgkgIG9mIHNvdXJjZSBidWlsZAoKMjAwMC0wOC0zMSAxMzo1MiAgaG9mZm1hbgoKCSogQ01ha2VTaW1wbGVSdWxlcy5tYWtlOiBFTkg6IGZpeCBmb3IgU2dpIG1ha2UKCjIwMDAtMDgtMzEgMDk6MzYgIGhvZmZtYW4KCgkqIENNYWtlUnVsZXMubWFrZS5pbiwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21Vbml4TWFrZWZpbGUuY3h4OiBFTkg6IGZpeCBmb3IgU0dJIG1ha2UKCjIwMDAtMDgtMzEgMDY6MzYgIGhvZmZtYW4KCgkqIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sIFJFQURNRTogRU5IOiBjbGVhbiB0aGluZ3MgdXAgYSBiaXQKCjIwMDAtMDgtMzAgMTM6NTkgIGhvZmZtYW4KCgkqIFNvdXJjZS9jbURpcmVjdG9yeS5jeHgsIFNvdXJjZS9jbURpcmVjdG9yeS5oLAoJICBNYWtlZmlsZVRlbXBsYXRlLmluOiBFTkg6IGFkZCBhYmlsaXR5IHRvIGNvbXBpbGUgYWxsIHRoZSBmaWxlcyBpbgoJICBhIHN1Yi1kaXJlY3RvcnkKCjIwMDAtMDgtMzAgMTM6MzUgIGhvZmZtYW4KCgkqIENNYWtlUnVsZXMubWFrZS5pbiwgQ01ha2VWYXJpYWJsZXMubWFrZS5pbiwgUkVBRE1FLAoJICBTb3VyY2UvQ01ha2VTZXR1cENNRC5kc3AsIFNvdXJjZS9NYWtlZmlsZS5pbiwKCSAgU291cmNlL2NtQ2xhc3NGaWxlLmN4eCwgU291cmNlL2NtRFNQTWFrZWZpbGUuY3h4LAoJICBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LCBTb3VyY2UvY21EU1dNYWtlZmlsZS5jeHgsCgkgIFNvdXJjZS9jbURTV1dyaXRlci5jeHgsIFNvdXJjZS9jbU1ha2VmaWxlLmN4eCwKCSAgU291cmNlL2NtTWFrZWZpbGUuaCwgU291cmNlL2NtVW5peE1ha2VmaWxlLmN4eCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwLmRzcCwKCSAgU291cmNlL01GQ0RpYWxvZy9DTWFrZVNldHVwRGlhbG9nLmNwcDogRU5IOiAgbW92ZSBmcm9tIHRvb2xzIGFuZAoJICBjcmVhdGUgd29ya2luZyBDTWFrZSBwcm9ncmFtCgoyMDAwLTA4LTI5IDE1OjI2ICBob2ZmbWFuCgoJKiBDTWFrZU1hc3Rlci5tYWtlLmluLCBDTWFrZVJ1bGVzLm1ha2UuaW4sIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sCgkgIFNvdXJjZS9DTWFrZUJ1aWxkVGFyZ2V0cy5jeHgsIFNvdXJjZS9DTWFrZVNldHVwLmN4eCwKCSAgU291cmNlL0NNYWtlU2V0dXAuZHN3LCBTb3VyY2UvQ01ha2VTZXR1cENNRC5jeHgsCgkgIFNvdXJjZS9DTWFrZVNldHVwQ01ELmRzcCwgU291cmNlL0VYRUZvb3Rlci5kc3B0ZW1wbGF0ZSwKCSAgU291cmNlL0VYRUhlYWRlci5kc3B0ZW1wbGF0ZSwgU291cmNlL01ha2VmaWxlLmluLAoJICBTb3VyY2UvY21DbGFzc0ZpbGUuY3h4LCBTb3VyY2UvY21DbGFzc0ZpbGUuaCwKCSAgU291cmNlL2NtRFNQQnVpbGRlci5jeHgsIFNvdXJjZS9jbURTUEJ1aWxkZXIuaCwKCSAgU291cmNlL2NtRFNQTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21EU1BNYWtlZmlsZS5oLAoJICBTb3VyY2UvY21EU1BXcml0ZXIuY3h4LCBTb3VyY2UvY21EU1BXcml0ZXIuaCwKCSAgU291cmNlL2NtRFNXQnVpbGRlci5jeHgsIFNvdXJjZS9jbURTV0J1aWxkZXIuaCwKCSAgU291cmNlL2NtRFNXTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21EU1dNYWtlZmlsZS5oLAoJICBTb3VyY2UvY21EU1dXcml0ZXIuY3h4LCBTb3VyY2UvY21EU1dXcml0ZXIuaCwKCSAgU291cmNlL2NtTWFrZURlcGVuZC5jeHgsIFNvdXJjZS9jbU1ha2VEZXBlbmQuaCwKCSAgU291cmNlL2NtTWFrZWZpbGUuY3h4LCBTb3VyY2UvY21NYWtlZmlsZS5oLAoJICBTb3VyY2UvY21QQ0J1aWxkZXIuY3h4LCBTb3VyY2UvY21QQ0J1aWxkZXIuaCwKCSAgU291cmNlL2NtUmVndWxhckV4cHJlc3Npb24uY3h4LCBTb3VyY2UvY21SZWd1bGFyRXhwcmVzc2lvbi5oLAoJICBTb3VyY2UvY21TeXN0ZW1Ub29scy5jeHgsIFNvdXJjZS9jbVN5c3RlbVRvb2xzLmgsCgkgIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5jeHgsIFNvdXJjZS9jbVVuaXhNYWtlZmlsZS5oLAoJICBTb3VyY2UvY21XaW5kb3dzQ29uZmlndXJlLmN4eCwgU291cmNlL2NtV2luZG93c0NvbmZpZ3VyZS5oLAoJICBTb3VyY2UvaXRrVkM2MENvbmZpZ3VyZS5jeHgsIFNvdXJjZS9pdGtWQzYwQ29uZmlndXJlLmgsCgkgIFNvdXJjZS9zdGF0aWNMaWJGb290ZXIuZHNwdGVtcGxhdGUsCgkgIFNvdXJjZS9zdGF0aWNMaWJIZWFkZXIuZHNwdGVtcGxhdGUsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VEaWFsb2cuY3BwLCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlRGlhbG9nLmgsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5jcHAsIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5kc3AsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cC5oLCBTb3VyY2UvTUZDRGlhbG9nL0NNYWtlU2V0dXAucmMsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvQ01ha2VTZXR1cERpYWxvZy5oLCBTb3VyY2UvTUZDRGlhbG9nL1N0ZEFmeC5jcHAsCgkgIFNvdXJjZS9NRkNEaWFsb2cvU3RkQWZ4LmgsIFNvdXJjZS9NRkNEaWFsb2cvcmVzb3VyY2UuaCwKCSAgU291cmNlL01GQ0RpYWxvZy9yZXMvQ01ha2VTZXR1cERpYWxvZy5pY28sCgkgIFNvdXJjZS9NRkNEaWFsb2cvcmVzL0NNYWtlU2V0dXBEaWFsb2cucmMyLCBSRUFETUU6IE5FVzogbW92ZSBmcm9tCgkgIHRvb2xzIGFuZCBjb25maWcgdG8gY3JlYXRlIENNYWtlCgoyMDAwLTA4LTI5IDEwOjU2ICBob2ZmbWFuCgoJKiBDTWFrZU1hc3Rlci5tYWtlLmluLCBDTWFrZVJ1bGVzLm1ha2UuaW4sIENNYWtlVmFyaWFibGVzLm1ha2UuaW4sCgkgIGR1bW15LmluOiBbbm8gbG9nIG1lc3NhZ2VdCgo=