ZGlmZiAtLWdpdCBhL0FOTk9VTkNFIGIvQU5OT1VOQ0UKaW5kZXggZWU3NmE1Ny4uMzIxNDZlMiAxMDA2NDQKLS0tIGEvQU5OT1VOQ0UKKysrIGIvQU5OT1VOQ0UKQEAgLTEsMTQgKzEsMTQgQEAKLVRoaXMgaXMgcmVsZWFzZSAyMDA1MDUyNCBvZiBXaW5lLCBhIGZyZWUgaW1wbGVtZW50YXRpb24gb2YgV2luZG93cyBvbgorVGhpcyBpcyByZWxlYXNlIDIwMDUwNjI4IG9mIFdpbmUsIGEgZnJlZSBpbXBsZW1lbnRhdGlvbiBvZiBXaW5kb3dzIG9uCiBVbml4LiAgVGhpcyBpcyBzdGlsbCBhIGRldmVsb3BlcnMgb25seSByZWxlYXNlLiAgVGhlcmUgYXJlIG1hbnkgYnVncwogYW5kIHVuaW1wbGVtZW50ZWQgZmVhdHVyZXMuICBNb3N0IGFwcGxpY2F0aW9ucyBzdGlsbCBkbyBub3Qgd29yawogY29ycmVjdGx5LgogCi1XSEFUJ1MgTkVXIHdpdGggV2luZS0yMDA1MDUyNDogKHNlZSBDaGFuZ2VMb2cgZm9yIGRldGFpbHMpCi0gICAgICAgIC0gTWFueSBNU0kgaW1wcm92ZW1lbnRzLgotICAgICAgICAtIE1vcmUgZmVhdHVyZXMgaW4gdGhlIGZpbGUgbWFuYWdlci4KLSAgICAgICAgLSBCZXR0ZXIgY29tcGF0aWJpbGl0eSBmb3IgV2luZWxpYiBpbXBvcnQgbGlicmFyaWVzLgotICAgICAgICAtIFNHTUwgZG9jdW1lbnRhdGlvbiBtb3ZlZCBvdXQgb2YgdGhlIHNvdXJjZSB0cmVlLgotICAgICAgICAtIEhlYWRlciBmaWxlcyBjbGVhbnVwcy4KK1dIQVQnUyBORVcgd2l0aCBXaW5lLTIwMDUwNjI4OiAoc2VlIENoYW5nZUxvZyBmb3IgZGV0YWlscykKKyAgICAgICAgLSBDb25maWd1cmF0aW9uIHNldHRpbmdzIG1vdmVkIHRvIHRoZSByZWdpc3RyeS4KKyAgICAgICAgLSBHcmFwaGljYWwgV2luZSBjb25maWd1cmF0aW9uIHRvb2wgaXMgbm93IGVuYWJsZWQuCisgICAgICAgIC0gTW9yZSBNU0kgYW5kIE9MRSBpbXByb3ZlbWVudHMuCisgICAgICAgIC0gUmVvcmdhbmlzYXRpb24gb2YgdGhlIERpcmVjdERyYXcgZGlyZWN0b3J5LgorICAgICAgICAtIEluaXRpYWwgc3VwcG9ydCBmb3Igd2ViY2Ftcy4KICAgICAgICAgLSBMb3RzIG9mIGJ1ZyBmaXhlcy4KIAogU2VlIHRoZSBSRUFETUUgZmlsZSBpbiB0aGUgZGlzdHJpYnV0aW9uIGZvciBpbnN0YWxsYXRpb24gaW5zdHJ1Y3Rpb25zLgpAQCAtMTcsMTMgKzE3LDEzIEBACiB0aGUgcmVsZWFzZSBpcyBhdmFpbGFibGUgYXQgdGhlIGZ0cCBzaXRlcy4gIFRoZSBzb3VyY2VzIHdpbGwgYmUgYXZhaWxhYmxlCiBmcm9tIHRoZSBmb2xsb3dpbmcgbG9jYXRpb25zOgogCi0gIGh0dHA6Ly93d3cuaWJpYmxpby5vcmcvcHViL0xpbnV4L0FMUEhBL3dpbmUvZGV2ZWxvcG1lbnQvV2luZS0yMDA1MDUyNC50YXIuZ3oKLSAgaHR0cDovL3ByZG93bmxvYWRzLnNvdXJjZWZvcmdlLm5ldC93aW5lL1dpbmUtMjAwNTA1MjQudGFyLmd6CisgIGh0dHA6Ly93d3cuaWJpYmxpby5vcmcvcHViL0xpbnV4L0FMUEhBL3dpbmUvZGV2ZWxvcG1lbnQvV2luZS0yMDA1MDYyOC50YXIuZ3oKKyAgaHR0cDovL3ByZG93bmxvYWRzLnNvdXJjZWZvcmdlLm5ldC93aW5lL1dpbmUtMjAwNTA2MjgudGFyLmd6CiAKIEl0IHNob3VsZCBhbHNvIGJlIGF2YWlsYWJsZSBmcm9tIGFueSBvdGhlciBzaXRlIHRoYXQgbWlycm9ycyBpYmlibGlvLm9yZy4KIFRoZXNlIGxvY2F0aW9ucyBhbHNvIGhvbGQgcHJlLWJ1aWx0IGRvY3VtZW50YXRpb24gcGFja2FnZXMgaW4gdmFyaW91cwotZm9ybWF0czogd2luZS1kb2MtaHRtbC50YXIuZ3osIHdpbmUtZG9jLXR4dC50YXIuZ3osCi13aW5lLWRvYy1wZGYudGFyLmd6IGFuZCB3aW5lLWRvYy1wcy50YXIuZ3ouCitmb3JtYXRzOiB3aW5lLWRvYy1lbi1odG1sLnRhci5neiwgd2luZS1kb2MtZW4tdHh0LnRhci5neiwKK3dpbmUtZG9jLWVuLXBkZi50YXIuZ3ogYW5kIHdpbmUtZG9jLWVuLXBzLnRhci5nei4KIAogWW91IGNhbiBhbHNvIGdldCB0aGUgY3VycmVudCBzb3VyY2UgZGlyZWN0bHkgZnJvbSB0aGUgQ1ZTIHRyZWUuIENoZWNrCiBodHRwOi8vd3d3LndpbmVocS5vcmcvY3ZzIGZvciBkZXRhaWxzLgpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDdkYmFkZjcuLjc4ZmRmYjggMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsNCArMSwzMzQ5IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisyMDA1LTA2LTI4ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL2dkaS9wcmludGRydi5jOgorCU1vdmVkIHNwb29sZXIgY29uZmlndXJhdGlvbiB0byBIS0NVXFNvZnR3YXJlXFdpbmVcUHJpbnRpbmdcU3Bvb2xlci4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmgsIHRvb2xzL3dpZGwvdHlwZWxpYl9zdHJ1Y3QuaDoKKwlIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUFkZCBjb21tZW50cyBkZXNjcmliaW5nIHRoZSBmaXJzdCBEV09SRCBpbiBhbiBpbXBvcnQgdGFibGUgZW50cnkuCisKKwkqIGRsbHMvYWR2YXBpMzIvdGVzdHMvc2VjdXJpdHkuYzoKKwlNYXJrIGFzIHRvZG8gYSBjb3VwbGUgb2YgdGVzdHMgdGhhdCBjdXJyZW50bHkgZmFpbC4KKworCSogZGxscy9yaWNoZWQyMC9jYXJldC5jLCBkbGxzL3JpY2hlZDIwL2VkaXRvci5jLAorCSAgZGxscy9yaWNoZWQyMC9lZGl0b3IuaDoKKwlQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUltcGxlbWVudGVkIEVNX0dFVFRFWFRMRU5HVEhFWCBSaWNoRWRpdCBtZXNzYWdlLgorCisJKiBkbGxzL3dpbmVwcy9pbml0LmMsIGRsbHMvd2luc3Bvb2wvaW5mby5jOgorCU1vdmVkIHBwZCBmaWxlIGNvbmZpZ3VyYXRpb24gdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXFByaW50aW5nXFBQRCBGaWxlcy4KKworCSogZGxscy9udGRsbC9zZWMuYzogSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJRm9yd2FyZCBSdGxBZGRBY2Nlc3MqIHRvIGFkZF9hY2Nlc3NfYWNlLgorCisJKiB0b29scy93aW5hcGkvd2luMzIuYXBpOiBKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlBZGQgc29tZSBtaXNzaW5nIHR5cGVzIHRvIHdpbjMyLmFwaS4KKworCSogZGxscy9vbGVhdXQzMi92YXJpYW50LmM6IE1pY2hhZWwgU3RlZmFuaXVjIDxtc3RlZmFuaUByZWRoYXQuZGU+CisJLSBWYXJDbXA6IGhhbmRsZSBjb21wYXJpc2lvbiBvZiBWVF9FTVBUWSB3aXRoIGFuIGludGVnZXIKKwktIHNtYWxsIGNvbW1lbnQgZml4CisKKwkqIGRsbHMvbXNodG1sL01ha2VmaWxlLmluLCBkbGxzL21zaHRtbC9odG1sZG9jLmMsCisJICBkbGxzL21zaHRtbC9tc2h0bWxfcHJpdmF0ZS5oLCBkbGxzL21zaHRtbC9vbGVvYmouYywKKwkgIGRsbHMvbXNodG1sL29sZXduZC5jOgorCUphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJQWRkZWQgc3R1YiBpbXBsZW1lbnRhdGlvbiBvZiBJT2xlSW5QbGFjZU9iamVjdFdpbmRvd2xlc3MuCisKKwkqIGluY2x1ZGUvd2ludGVybmwuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlY2xhcmUgc29tZSBOdCogZnVuY3Rpb25zLgorCisyMDA1LTA2LTI3ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL3dpbm1tL2xvbHZsZHJ2LmM6CisJR2V0IHJpZCBvZiB0aGUgV2F2ZU1hcHBlciBhbmQgTWlkaU1hcHBlciBvcHRpb25zLCB0aGUgZGVmYXVsdHMgc2hvdWxkCisJYmUgZ29vZCBlbm91Z2ggaW4gYWxsIGNhc2VzLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy9jb21tLmM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCUFkZGVkIHRlc3QgY2FzZXMuIEhvd2V2ZXIgbW9zdCBhZGRlZCB0ZXN0cyBuZWVkIGEgbG9vcGJhY2sgcGx1ZwlhbmQKKwluZWVkIHRvIGJlIGVuYWJsZWQgaW4gdGhlIGNvZGUuCisKKwkqIGRsbHMvYWR2YXBpMzIvdGVzdHMvc2VjdXJpdHkuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCVRlc3QgQUNDRVNTX1NZU1RFTV9TRUNVUklUWSBBY2Nlc3NDaGVjayBiZWhhdmlvdXIuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYzogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCS0gdXNlIGV4Y2VwdGlvbiBoYW5kbGluZyBpbiBlbmNvZGluZworCS0gY29uc29saWRhdGUgaW50ZWdlciBlbmNvZGVycworCisJKiBkbGxzL21zaHRtbC9NYWtlZmlsZS5pbiwgZGxscy9tc2h0bWwvYmxhbmsuaHRtLCBkbGxzL21zaHRtbC9yc3JjLnJjOgorCUphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJQWRkZWQgYmxhbmsuaHRtLgorCisJKiBkbGxzL3BzYXBpL3Rlc3RzLy5jdnNpZ25vcmUsIGRsbHMvcHNhcGkvdGVzdHMvTWFrZWZpbGUuaW4sCisJICBkbGxzL3BzYXBpL3Rlc3RzL21vZHVsZS5jLCBkbGxzL3BzYXBpL3Rlc3RzL3BzYXBpX21haW4uYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlSZXdyb3RlIHRoZSBwc2FwaSB0ZXN0IHN1aXRlLgorCisJKiB0b29scy93aW5lYnVpbGQvYnVpbGQuaCwgdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jLAorCSAgdG9vbHMvd2luZWJ1aWxkL3JlbGF5LmMsIHRvb2xzL3dpbmVidWlsZC9zcGVjMzIuYywKKwkgIHRvb2xzL3dpbmVidWlsZC91dGlscy5jOgorCVJlcGxhY2VkIGFsbCB1c2VzIG9mIHRoZSBfX0FTTV9OQU1FIG1hY3JvIGJ5IHRoZSBhc21fbmFtZSBmdW5jdGlvbiB0bworCWFsbG93IHJ1bi10aW1lIGRldGVybWluYXRpb24gb2YgdGhlIGNvcnJlY3QgZm9ybWF0LgorCisJKiBkbGxzL3dpbmVwcy90eXBlMWFmbS5jOgorCU1vdmVkIEFGTSBkaXJzIGNvbmZpZ3VyYXRpb24gdG8gYSBzaW5nbGUgQUZNUGF0aCBrZXkgdW5kZXIKKwlIS0NVXFNvZnR3YXJlXFdpbmVcRm9udHMuCisKKwkqIGRsbHMvd2luZWRvcy9wcGRldi5jOgorCU1vdmVkIHBvcnQgY29uZmlndXJhdGlvbiB0byBIS0NVXFNvZnR3YXJlXFdpbmVcVkRNXHBwZGV2LgorCisJKiBkbGxzL3dpbmVkb3MvaW9wb3J0cy5jOgorCU1vdmVkIEkvTyBwb3J0IGNvbmZpZ3VyYXRpb24gdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXFZETVxQb3J0cy4KKworCSogZGxscy9zaGVsbDMyL2Jyc2ZvbGRlci5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUZpeCB0aGUgQnJvd3NlRm9yRm9sZGVyIGRpYWxvZyBzbyB0aGF0IHdoZW4gaXQgZG9lcyB0aGUgY2FsbGJhY2tzIGl0CisJdXNlcyB0aGUgY29ycmVjdCBtZXNzYWdlIGluc3RlYWQgb2YgYWx3YXlzIHNlbmRpbmcgQkVGTV9JTklUSUFMSVpFRC4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUHJlY2lzZWx5IGNvbXB1dGUgdGhlIG5lY2Vzc2FyeSBwaWRsIGxlbmd0aCBpbiBVTklYRlNfcGF0aF90b19waWRsLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVJlcGFpbnQgdGhlIGFyZWEgYmVoaW5kIHRoZSAidHJhbnNwYXJlbnQiIHRleHQgY29udHJvbCB3aGVuIGl0CisJY2hhbmdlcy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvbnRkbGwvY2Ryb20uYywgaW5jbHVkZS9jb25maWcuaC5pbjoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhIGNoZWNrIGZvciBzZ19pb19oZHJfdCBhbmQgKG5vdCB0ZXN0ZWQpIGNoZWNrIGZvciBzY3NpcmVxX3QKKwlwcmVzZW5jZS4KKworCSogZGxscy9pdHNzL2l0c3Muc3BlYzogSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlFeHBvcnQgRGxsTWFpbiBhcyBuYXRpdmUgZG9lcy4KKworCSogZGxscy9rZXJuZWwvdGhyZWFkLmM6IEVyaWMgUG91ZWNoIDxwb3VlY2gtZXJpY0B3YW5hZG9vLmZyPgorCUltcGxlbWVudGVkIE9wZW5UaHJlYWQgb24gdG9wIG9mIE50T3BlblRocmVhZC4KKworCSogdG9vbHMvd2luZWJ1aWxkL2J1aWxkLmgsIHRvb2xzL3dpbmVidWlsZC9pbXBvcnQuYywKKwkgIHRvb2xzL3dpbmVidWlsZC9tYWluLmMsIHRvb2xzL3dpbmVidWlsZC9wYXJzZXIuYywKKwkgIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jLCB0b29scy93aW5lYnVpbGQvc3BlYzMyLmMsCisJICB0b29scy93aW5lYnVpbGQvdXRpbHMuYzoKKwlCZWdpbm5pbmdzIG9mIGFuIGluZnJhc3RydWN0dXJlIHRvIGFsbG93IHNwZWNpZnlpbmcgdGhlIHRhcmdldCBDUFUgYW5kCisJcGxhdGZvcm0gYXQgcnVuLXRpbWUuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL21zaHRtbC9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvbXNodG1sL3Rlc3RzLy5jdnNpZ25vcmUsIGRsbHMvbXNodG1sL3Rlc3RzL01ha2VmaWxlLmluLAorCSAgZGxscy9tc2h0bWwvdGVzdHMvaHRtbGRvYy5jOgorCUphY2VrIENhYmFuIDxjamFjZWtAZ21haWwuY29tPgorCUFkZGVkIHRlc3RzLgorCisJKiBkbGxzL2tlcm5lbC9wcm9jZXNzLmMsIGRsbHMvbnRkbGwvbnRkbGwuc3BlYywgZGxscy9udGRsbC9wcm9jZXNzLmMsCisJICBpbmNsdWRlL3dpbnRlcm5sLmg6CisJRXJpYyBQb3VlY2ggPHBvdWVjaC1lcmljQHdhbmFkb28uZnI+CisJSW1wbGVtZW50ZWQgT3BlblByb2Nlc3Mgb24gdG9wIG9mIE50T3BlblByb2Nlc3MuCisKKwkqIGRsbHMvbWxhbmcvbWxhbmcuYywgZGxscy9tbGFuZy9tbGFuZy5zcGVjLCBpbmNsdWRlL21sYW5nLmlkbDoKKwlWaXRhbHkgTGlwYXRvdiA8bGF2QGV0ZXJzb2Z0LnJ1PgorCUNoYW5nZXMgc3R1YiB0byBGSVhNRSBmb3IgR2V0R2xvYmFsRm9udExpbmtPYmplY3QuCisKKwkqIGRsbHMvZ2RpL3Rlc3RzL2JpdG1hcC5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCVJlcG9ydCBhIHRvZG8gYW5kIHNraXAgRElCIHRlc3RzIHdoZW4gdGhleSBmYWlsIGF0IGEgbm9uLXRydWVjb2xvcgorCXNjcmVlbiBkZXB0aC4KKworCSogaW5jbHVkZS93aW5udC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWRkIHBvaW50ZXIgdHlwZXMgZm9yIHRva2VuIHN0cnVjdHVyZXMuCisKKwkqIGRsbHMvbXN2Y3J0L3Rlc3RzL3RpbWUuYywgZGxscy9udGRsbC90ZXN0cy9wYXRoLmMsCisJICBkbGxzL250ZGxsL3Rlc3RzL3N0cmluZy5jLCBkbGxzL29sZWF1dDMyL3Rlc3RzL29sZXBpY3R1cmUuYywKKwkgIGRsbHMvc2hsd2FwaS90ZXN0cy9zdHJpbmcuYywgZGxscy91cmxtb24vdGVzdHMvdXJsLmMsCisJICBkbGxzL3VzZXIvdGVzdHMvbWVudS5jLCBwcm9ncmFtcy9zdGFydC9zdGFydC5jOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJRml4IHNvbWUgLVdzdHJpY3QtcHJvdG90eXBlcyB3YXJuaW5ncy4KKworCSogZGxscy9rZXJuZWwvY29uc29sZS5jLCBkbGxzL2tlcm5lbC90ZXN0cy9wcm9jZXNzLmMsCisJICBkbGxzL21zdmNydC9jb25zb2xlLmM6CisJRXJpYyBQb3VlY2ggPHBvdWVjaC1lcmljQHdhbmFkb28uZnI+CisJLSBPcGVuQ29uc29sZTogdHJ5IHRvIG9wZW4gdGhlIFVuaXggY29uc29sZSBpZiB3ZSBmYWlsIHdpdGggd2luZXNlcnZlcgorCS0ga2VybmVsMzI6IHNpbXBsaWZ5aW5nIGNvZGUgZm9yIG9wZW5pbmcgYSBjb25zb2xlIGhhbmRsZQorCS0gbXN2Y3J0OiBub3cgY29ycmVjdGx5IGluaXRpYWxpemluZyB0aGUgaGFuZGxlcyB0byB0aGUgV2luZG93cworCSAgY29uc29sZQorCisJKiBkbGxzL2QzZDkvZGV2aWNlLmMsIGRsbHMvZGJnaGVscC9kd2FyZi5jLAorCSAgZGxscy9kbXN0eWxlL2NvbW1hbmR0cmFjay5jLCBkbGxzL2lwaGxwYXBpL2lwaGxwYXBpX21haW4uYywKKwkgIGRsbHMvb2xlMzIvc3RnX3Byb3AuYywgZGxscy91c2VyL3dpbi5jLCBkbGxzL3dpbnNvY2svc29ja2V0LmMsCisJICBkbGxzL3gxMWRydi9kaWIuYywgbGlicy91bmljb2RlL2NwdGFibGUuYywgdG9vbHMvd3JjL3BhcnNlci55OgorCUVyaWMgUG91ZWNoIDxwb3VlY2gtZXJpY0B3YW5hZG9vLmZyPgorCUNvbnN0IGNvcnJlY3RuZXNzIGZpeGVzLgorCisJKiBkbGxzL21zaHRtbC9NYWtlZmlsZS5pbiwgZGxscy9tc2h0bWwvbWFpbi5jLAorCSAgZGxscy9tc2h0bWwvbXNodG1sX3ByaXZhdGUuaCwgZGxscy9tc2h0bWwvcHJvdG9jb2wuYzoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUFkZGVkIHN0dWIgaW1wbGVtZW50YXRpb24gb2YgYWJvdXQgYW5kIHJlcyBwcm90b2NvbHMuCisKKwkqIGluY2x1ZGUvYmFzZXRzZC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVmaW5lIEtBRkZJTklUWS4KKworCSogZGxscy9yYXNhcGkzMi9yYXNhcGkuYywgaW5jbHVkZS9yYXMuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVjbGFyZSBhbmQgZml4IGZ1bmN0aW9uIHByb3RvdHlwZXMuCisKKwkqIGRsbHMva2VybmVsL3Rlc3RzL2ZpbGUuYzogSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlGaXggdGVzdCBvbiBOVCA0LgorCisJKiBwcm9ncmFtcy93Y21kL2J1aWx0aW5zLmMsIHByb2dyYW1zL3djbWQvd2NtZG1haW4uYzoKKwlBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJQ29uc3RpZnkgd2NtZC4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9hcHBkZWZhdWx0cy5jLCBwcm9ncmFtcy93aW5lY2ZnL2F1ZGlvLmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL2RyaXZlZGV0ZWN0LmMsIHByb2dyYW1zL3dpbmVjZmcvcHJvcGVydGllcy5jLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9wcm9wZXJ0aWVzLmg6CisJQW5kcmVhcyBNb2hyIDxhbmRpQHJobHgwMS5maHQtZXNzbGluZ2VuLmRlPgorCUNvbnN0aWZ5IGFsbCBuZWVkbGVzc2x5IG5vbi1jb25zdCB3aW5lY2ZnIHN0cnVjdHMuCisKKwkqIGRsbHMvb3BlbmdsMzIvbWFrZV9vcGVuZ2wsIGRsbHMvb3BlbmdsMzIvb3BlbmdsX2V4dC5jLAorCSAgZGxscy9vcGVuZ2wzMi9vcGVuZ2xfbm9ybS5jOgorCUVyaWMgUG91ZWNoIDxwb3VlY2gtZXJpY0B3YW5hZG9vLmZyPgorCU5vdyBnZW5lcmF0aW5nIGFyZ3VtZW50LWxlc3MgZnVuY3Rpb25zIGFzICh2b2lkKSBpbnN0ZWFkIG9mICgpLgorCisJKiBkbGxzL3dpbm1tL21jaWF2aS93bmQuYzogRXJpYyBQb3VlY2ggPHBvdWVjaC1lcmljQHdhbmFkb28uZnI+CisJRml4ZWQgd2luZG93IHNpemUgY29tcHV0YXRpb24gZm9yIG5vbiBjaGlsZCB3aW5kb3dzLgorCisJKiBpbmNsdWRlL3dpbnRlcm5sLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIHNvbWUgTnQqIGZ1bmN0aW9ucy4KKworCSogaW5jbHVkZS93aW5iYXNlLmgsIGluY2x1ZGUvd2lubnQuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRFVQTElDQVRFXyogZmxhZ3Mgc2hvdWxkIGJlIGRlZmluZWQgaW4gd2lubnQuaC4KKworCSogZGxscy9zaGRvY3Z3L3NoZG9jdndfbWFpbi5jOiBjamFjZWsgPGNqYWNla0BnbWFpbC5jb20+CisJRml4IHR5cG8gaW4gY29tbWVudCBhYm91dCBXaW5lIHJlZ2lzdHJ5IGtleS4KKworCSogcHJvZ3JhbXMvd2luZW1pbmUvbWFpbi5jOiBKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUFkZGVkIHdpbmVtaW5lIGRlYnVnIGNoYW5uZWwuCisKKwkqIGRsbHMvdXNlci9lZGl0LmM6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJQmV0dGVyIG5vdGlmeSBtYWNybworCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmMsIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJLSBpbXBsZW1lbnQgZW5jb2RlIGFuZCBkZWNvZGUgb2YgQmFzaWNDb25zdHJhaW50czIsIHNlcXVlbmNlIG9mIGFueQorCS0gZml4IGVuY29kaW5nIG9mIGludGVnZXIgdmFsdWUgMAorCS0gbW9yZSB0ZXN0cworCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJU2F1bGl1cyBLcmFzdWNrYXMgPHNhdWxpdXMua3Jhc3Vja2FzQGllZWUub3JnPgorCUFkZGl0aW9uYWwgdGVzdCBjYXNlcyBmb3IgSVNoZWxsRm9sZGVyX0JpbmRUb09iamVjdC4KKworMjAwNS0wNi0yNSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy93aW5zb2NrL2FzeW5jLmMsIGRsbHMvd2luc29jay9wcm90b2NvbC5jLCBkbGxzL3dpbnNvY2svc29ja2V0LmMsCisJICBpbmNsdWRlL3dzMnNwaS5oOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUZpeCBzb21lIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgd2FybmluZ3MuCisJImVycm5vIiBpcyBub3QgYSBnb29kIGNob2ljZSBmb3IgYSBwYXJhbWV0ZXIgbmFtZS4KKworCSogZGxscy9rZXJuZWwva2VybmVsMTZfcHJpdmF0ZS5oLCB0b29scy93aW5lYnVpbGQvc3BlYzE2LmM6CisJUmVtb3ZlIHNvbWUgaTM4NiBpZmRlZnMgZm9yIDE2LWJpdCBlbnRyeSBwb2ludHMgc2luY2UgdGhleSBhcmUgbm8KKwlsb25nZXIgdXNlZCBieSBkZWZhdWx0IG9uIG90aGVyIHBsYXRmb3JtcyBhbnl3YXkuCisKKwkqIGRsbHMvdXNlci9kZGVtbC5zcGVjOiBBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJRml4IHNvbWUgMTYtYml0IHJldHVybiB2YWx1ZXMuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGxmb2xkZXIuYzogTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUZpeCBhIGx1cmtpbmcgaW5maW5pdGUgbG9vcCBpbiBTSEdldFBhdGhGcm9tSURMaXN0LgorCisJKiBkbGxzL3VzZXIvZWRpdC5jLCBkbGxzL3VzZXIvdGVzdHMvZWRpdC5jOgorCU1pY2hhZWwgS2F1Zm1hbm4gPGhhbGxvQG1pY2hhZWwta2F1Zm1hbm4uY2g+CisJLSBSZW1vdmUgdGhlIG9sZCBtYXJnaW5zIGZyb20gdGhlIGZvcm1hdCByZWN0YW5nbGUgYmVmb3JlIGFkZGluZyB0aGUKKwkgIG5ldyBtYXJnaW5zLgorCS0gQWRqdXN0IHRoZSBmb3JtYXQgcmVjdGFuZ2xlIGFuZCByZXBhaW50IHRoZSBjb250cm9sIGFmdGVyIHRoZQorCSAgbWFyZ2lucyBoYXZlIGJlZW4gc2V0LgorCS0gTmV3IHRlc3RzLgorCisJKiBkbGxzL250ZGxsL2NyaXRzZWN0aW9uLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIHVzZSBTVEFUVVNfVElNRU9VVCBpbnN0ZWFkIG9mIFdBSVRfVElNRU9VVAorCS0gYWRkIFJUTF8gdG8gb25lIG1vcmUgQ1JJVElDQUxfU0VDVElPTl9ERUJVRworCisJKiBkbGxzL250ZGxsL3J0bC5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJLSBOdFdhaXRGb3JTaW5nbGVPYmplY3QgZG9lc24ndCByZXR1cm4gV0FJVF9GQUlMRUQuCisJLSBVc2UgU1RBVFVTX1dBSVRfMCBub3QgV0FJVF9PQkpFQ1RfMC4KKworCSogZGxscy9udGRsbC9leGNlcHRpb24uYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVVzZSBOVCBzdGF0dXMgY29kZXMgZm9yIGV4Y2VwdGlvbnMuCisKKwkqIGRsbHMvbXNodG1sL21haW4uYzogSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlDaGFuZ2VkIG1lc3NhZ2UgYWJvdXQgTW96aWxsYSBBY3RpdmVYIENvbnRyb2wuCisKKwkqIGRsbHMvbnRkbGwvY2Ryb20uYywgZGxscy9udGRsbC9kaXJlY3RvcnkuYywgZGxscy9udGRsbC9leGNlcHRpb24uYywKKwkgIGRsbHMvbnRkbGwvaGVhcC5jLCBkbGxzL250ZGxsL2xvYWRlci5jLCBkbGxzL250ZGxsL250ZGxsX21pc2MuaCwKKwkgIGRsbHMvbnRkbGwvcnRsLmMsIGRsbHMvbnRkbGwvdGltZS5jLCBkbGxzL250ZGxsL3ZpcnR1YWwuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVXNlIFJUTF9DUklUSUNBTF9TRUNUSU9OIGluc3RlYWQgb2YgQ1JJVElDQUxfU0VDVElPTi4KKworCSogdG9vbHMvd2luZS5pbmY6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJQWRkZWQgbXNodG1sLmRsbCByZWdpc3RyYXRpb24gdG8gd2luZS5pbmYuCisJUmVtb3ZlZCBrZXlzIHRoYXQgYXJlIHJlZ2lzdGVyZWQgYnkgbXNodG1sLmRsbC4KKworCSogZGxscy9tc2h0bWwvLmN2c2lnbm9yZSwgZGxscy9tc2h0bWwvTWFrZWZpbGUuaW4sIGRsbHMvbXNodG1sL21haW4uYywKKwkgIGRsbHMvbXNodG1sL21zaHRtbC5pbmYsIGRsbHMvbXNodG1sL21zaHRtbC5zcGVjLCBkbGxzL21zaHRtbC9yc3JjLnJjOgorCUphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJSW1wbGVtZW50ZWQgRGxsW1VuXVJlZ2lzdGVyU2VydmVyLgorCisJKiBkbGxzL21zdmNydC9maWxlLmMsIGRsbHMvbXN2Y3J0L3Rlc3RzL2ZpbGUuYzoKKwlQYXVsIFJ1cGUgPHBydXBlQG15cmVhbGJveC5jb20+CisJTWFrZSB1bmdldGMoRU9GKSBhIG5vLW9wLgorCisJKiBpbmNsdWRlL3dpbmUvc2VydmVyLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEb24ndCBpbmNsdWRlIHdpbnJlZy5oLgorCisJKiBkbGxzL3BzYXBpL3BzYXBpX21haW4uYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlEb24ndCBkdW1wIGNvbnRlbnQgb2Ygb3V0cHV0IGJ1ZmZlcnMuCisKKwkqIGluY2x1ZGUvd2luY3J5cHQuaDogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUFkZCBtb3JlIG1pc3NpbmcgZGVmaW5pdGlvbnMuCisKKwkqIGRsbHMvc2hlbGwzMi9yZWdzdnIuYywgZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJVXNlIHRoZSBDYWxsRm9yQXR0cmlidXRlcyByZWdpc3RyeSB2YWx1ZSwgaW5zdGVhZCBvZiBwcm9tb3RpbmcgdGhlCisJcm9vdCBmb2xkZXIncyBTRkdBT19GSUxFU1lTVEVNIGZsYWcgdG8gdGhlIHJlZ2lzdHJ5LgorCisJKiBkbGxzL3NoZWxsMzIvY2xhc3Nlcy5jLCBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmgsCisJICBkbGxzL3NoZWxsMzIvc2hsZm9sZGVyLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVN1cHBvcnQgZm9yIHNoZWxsZm9sZGVyJ3MgQ2FsbEZvckF0dHJpYnV0ZXMgcmVnaXN0cnkgdmFsdWUuCisKKwkqIGRsbHMvY29tY3RsMzIvdG9vbGJhci5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBEb2N1bWVudCBob3cgdGhlIG5hdGl2ZSBsYXlzIG91dCB0aGUgaW50ZXJuYWwgY29tcG9uZW50cyBvZgorCSAgYnV0dG9ucy4KKwktIEZpeCBjb250cm9sIHRvIGZvbGxvdyB0aGVzZSBydWxlcy4KKwktIERvbid0IHJlZHJhdyBkaXNhYmxlZCBidXR0b25zLgorCS0gUGFkZGluZyBpcyBuZXZlciBsZXNzIHRoYXQgR2V0U3lzdGVtTWV0cmljcyhTTV97Q1gsQ1l9RURHRSkuCisJLSBDaGFuZ2UgZGVmYXVsdCBpTGlzdEdhcCB2YWx1ZSB0byA0IHRvIG1hdGNoIG5hdGl2ZS4KKworCSogZGxscy9jb21jdGwzMi9wYWdlci5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJRml4IGEgcmVncmVzc2lvbiBpbiBJRSB3aGVyZSB0aGUgRmF2b3VyaXRlcyBtZW51IGRpZG4ndCBhcHBlYXIKKwljb3JyZWN0bHkgYmVjYXVzZSB0aGUgaGVpZ2h0IGFuZCB3aWR0aCB3ZXJlIHN3YXBwZWQgaW4gdGhlIHBhZ2VyCisJY29udHJvbC4KKworMjAwNS0wNi0yNCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9udGRsbC9zZWMuYzogSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJSW1wbGVtZW50IFJ0bEFkZEF1ZGl0QWNjZXNzQWNlLgorCisJKiBkbGxzL2NhYmluZXQvY2FiaW5ldC5oLCBkbGxzL2NhYmluZXQvZmNpLmM6CisJR2Vyb2xkIEplbnMgV3VjaGVycGZlbm5pZyA8Z2p3dWNoZXJwZmVubmlnQGdteC5uZXQ+CisJU29tZSBGQ0kgd29yay4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUGVyZm9ybSBFeGVjdXRlQWN0aW9uIGF0IFVJTGV2ZWwgMi4KKworCSogZGxscy9tc2kvZmlsZXMuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZWRvIGhvdyB3ZSBleHRyYWN0IGZpbGVzIGZyb20gYSBjYWJpbmV0IGluIG9yZGVyIHRvIGRyYW1hdGljYWxseQorCWltcHJvdmUgcGVyZm9ybWFuY2UsIGVzcGVjaWFsbHkgaWYgcGlja2luZyBhbmQgY2hvb3NpbmcgZmlsZXMgb3V0IG9mCisJdGhlIGNhYmluZXQuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJld29yayBDcmVhdGVTaG9ydGN1dHMgdG8gdXNlIE1TSV9JdGVyYXRlUmVjb3Jkcy4KKworCSogZGxscy9udGRsbC9wYXRoLmMsIGRsbHMvbnRkbGwvdGVzdHMvcGF0aC5jOgorCVJ0bEdldEZ1bGxQYXRoTmFtZV9VIHNob3VsZCByZW1vdmUgdGhlIHRyYWlsaW5nIGRvdCBvbiBkaXJlY3RvcnkKKwluYW1lcy4KKworCSogZGxscy9hZHZhcGkzMi9zZWN1cml0eS5jLCBpbmNsdWRlL3dpbmlvY3RsLmg6CisJSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJLSBEZWZpbmUgRlNDVExfUElQRV9JTVBFUlNPTkFURS4KKwktIEltcGxlbWVudCBJbXBlcnNvbmF0ZU5hbWVkUGlwZUNsaWVudC4KKworCSogZGxscy93aW5lZDNkL2Jhc2V0ZXh0dXJlLmMsIGRsbHMvd2luZWQzZC9kZXZpY2UuYywKKwkgIGRsbHMvd2luZWQzZC9kaXJlY3R4LmMsIGRsbHMvd2luZWQzZC9yZXNvdXJjZS5jLAorCSAgZGxscy93aW5lZDNkL3V0aWxzLmMsIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaCwKKwkgIGluY2x1ZGUvd2luZS93aW5lZDNkX2dsLmgsIGluY2x1ZGUvd2luZS93aW5lZDNkX2ludGVyZmFjZS5oLAorCSAgaW5jbHVkZS93aW5lL3dpbmVkM2RfdHlwZXMuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQWRkIHN1cHBvcnQgZm9yIHNhbXBsZXJzLgorCVN3aXRjaCBmcm9tIHVzaW5nIGQzZDkgY29uc3RhbnRzIHRvIHdpbmVkM2QgY29uc3RhbnRzIHNvIHRoYXQgdGhlcmUncworCW5vIHJlY3Vyc2l2ZSBkZXBlbmRlbmNpZXMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVByb3Blcmx5IGhhbmRsZSAtMSBhcyBhIHJlZ2lzdHJ5IGtleSByb290LgorCisJKiBkbGxzL250ZGxsL250ZGxsLnNwZWM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQ29ycmVjdCB0aGUgZW50cmllcyBmb3IgW050fFp3XU9wZW5TeW1ib2xpY0xpbmtPYmplY3QuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50IHRyYW5zcGFyZW5jeSBpbiB0aGUgdGV4dCBjb250cm9sLgorCisJKiBkbGxzL250ZGxsL3JlZy5jLCBpbmNsdWRlL3dpbnRlcm5sLmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZCBwcm90b3R5cGUgYW5kIGZpeCBSdGxwTnRDcmVhdGVLZXkuCisKKwkqIHRvb2xzL21ha2VfY3Rlc3RzLmM6IFBpZXJyZSBkJ0hlcmJlbW9udCA8c3RlZ2VmaW5AZnJlZS5mcj4KKwlDaGFuZ2UgaGVhZGVycyB0byA8d2luZG93cy5oPiBpbiBvcmRlciB0byBwcmV2ZW50IGEgY29tcGlsYXRpb24KKwlmYWlsdXJlIHdpdGggZ2VuZXJhdGVkIGZpbGVzIG9uIERhcndpbi4KKworCSogZGxscy9zaGVsbDMyL3Rlc3RzL3NobGZvbGRlci5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlBZGRlZCB0ZXN0cyBmb3IgU2hlbGxGb2xkZXIncyBDYWxsRm9yQXR0cmlidXRlcyB2YWx1ZS4KKworCSogZGxscy91c2VyL2VkaXQuYzogTWljaGFlbCBLYXVmbWFubiA8aGFsbG9AbWljaGFlbC1rYXVmbWFubi5jaD4KKwlQYWludCB0aGUgYmFja2dyb3VuZCB3aXRoIHRoZSBjb3JyZWN0IGNvbG9yIGlmIFdTX0JPUkRFUi4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUmV3b3JrIFNlbGZSZWdNb2R1bGVzIHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKzIwMDUtMDYtMjMgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHRvb2xzL3dpbmVidWlsZC9wYXJzZXIuYzoKKwlBbGxvY2F0ZSBvcmRpbmFscyBpbiB0aGUgb3JkZXIgb2YgdGhlIGRlY2xhcmF0aW9ucyBpbiB0aGUgc3BlYyBmaWxlLgorCisJKiBkbGxzL2NvbW1kbGcvcHJpbnRkbGcuYzogVml0YWx5IExpcGF0b3YgPGxhdkBldGVyc29mdC5ydT4KKwktIEFkZCBzb21lIGRlc2NyaXB0aW9ucyBmb3IgUGFnZVNldHVwRGxnIGZ1bmN0aW9ucy4KKwktIEltcGxlbWVudCB1c2VyIHBhaW50IGhvb2sgc3VwcG9ydCBhbmQgUFNEX0VOQUJMRVBBR0VQQUlOVEhPT0sKKwkgIGNoZWNraW5nLgorCisJKiBkbGxzL21zaHRtbC9odG1sZG9jLmMsIGRsbHMvbXNodG1sL21zaHRtbF9wcml2YXRlLmgsIGRsbHMvbXNodG1sL3ZpZXcuYzoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUFkZGVkIHN0dWIgaW1wbGVtZW50YXRpb24gb2YgSVZpZXdPYmplY3RbMl0gaW50ZXJmYWNlLgorCisJKiBkbGxzL2l0c3MvaXRzcy5jLCBkbGxzL2l0c3MvaXRzcy5pZGw6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlVc2UgR1VJRHMgZnJvbSBpdHNzLmlkbC4KKworCSogZGxscy93aW5lZDNkL2Jhc2V0ZXh0dXJlLmMsIGRsbHMvd2luZWQzZC9kZXZpY2UuYywKKwkgIGRsbHMvd2luZWQzZC90ZXh0dXJlLmM6CisJT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCU1ha2UgYWxsIG5ld2x5IGNyZWF0ZWQgc3VyZmNlcyBkaXJ0eSwgc28gdGhhdCB0aGV5IGFyZSBsb2FkZWQgcHJvcGVybHkKKwl0aGUgZmlyc3QgdGltZSBhcm91bmQuCisJUmVwbGFjZSBzb21lIGNhbGxzIHRvIGN1YmV0ZXh0dXJlIGluIGJhc2V0ZXh0dXJlIHRvIGNhbGxzIHRvCisJYmFzZXRleHR1cmUuCisJQ2hlY2sgdGhhdCB0aGUgbGV2ZWwgaXNuJ3Qgb3V0IG9mIGJvdW5kcyBpbiBjYWxscyB0byB0ZXh0dXJlLgorCisJKiBkbGxzL21zaS9NYWtlZmlsZS5pbiwgZGxscy9tc2kvZGlhbG9nLmMsIGRsbHMvbXNpL21zaXByaXYuaCwKKwkgIGRsbHMvbXNpL3JlY29yZC5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIHRoZSBNU0kgaWNvbiBjb250cm9sIHdvcmsuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJld29yayBjb21wb25lbnQsIGZlYXR1cmUgYW5kIGZpbGUgbG9hZGluZyB0byB1c2UgTVNJX0l0ZXJhdGVSZWNvcmRzLgorCisJKiBpbmNsdWRlL21zaWRlZnMuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlZmluZSB0aGUgbXNpZGJDb250cm9sQXR0cmlidXRlcyBlbnVtZXJhdGlvbi4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9hcHBkZWZhdWx0cy5jLCBwcm9ncmFtcy93aW5lY2ZnL2F1ZGlvLmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL2RyaXZldWkuYywgcHJvZ3JhbXMvd2luZWNmZy9saWJyYXJpZXMuYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvd2luZWNmZy5jLCBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuaCwKKwkgIHByb2dyYW1zL3dpbmVjZmcveDExZHJ2ZGxnLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCU1hZGUgdGhlIHJlZ2lzdHJ5IGNhY2hlIG1vcmUgZ2VuZXJhbC4KKworCSogZGxscy9wc2FwaS9wc2FwaV9tYWluLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJLSBSZXBsYWNlZCBzZXJ2ZXIgcmVxdWVzdHMgYnkgbmF0aXZlIEFQSXMgaW4gRW51bVByb2Nlc3NNb2R1bGVzLAorCSAgR2V0TW9kdWxlQmFzZU5hbWVXLCBHZXRNb2R1bGVGaWxlTmFtZUV4VyBhbmQgR2V0TW9kdWxlSW5mb3JtYXRpb24uCisJLSBNYWtlIEVudW1Qcm9jZXNzTW9kdWxlcyByZXR1cm4gbW9kdWxlcyBpbiBsb2FkIG9yZGVyCisJLSBTZXQgRVJST1JfSU5TVUZGSUNJRU5UX0JVRkZFUiBpbiBHZXRNb2R1bGVJbmZvcm1hdGlvbiB3aGVuIGZhaWxpbmcKKwkgIGR1ZSB0byAoY2IgPCBzaXplb2YoTU9EVUxFSU5GTykpLgorCisJKiBkbGxzL2FkdmFwaTMyL2FkdmFwaTMyLnNwZWMsIGRsbHMvYWR2YXBpMzIvc2VjdXJpdHkuYzoKKwlKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlBZGQgc3R1YiBpbXBsZW1lbnRhdGlvbnMgZm9yIEJ1aWxkU2VjdXJpdHlEZXNjcmlwdG9yQS9XLgorCisJKiBkbGxzL2QzZDgvZDNkOF9wcml2YXRlLmgsIGRsbHMvZDNkOC9kaXJlY3R4LmMsCisJICBkbGxzL2QzZDkvZDNkOV9wcml2YXRlLmgsIGRsbHMvZDNkOS9kZXZpY2UuYywgZGxscy9kM2Q5L2RpcmVjdHguYywKKwkgIGRsbHMvZDNkOS9zd2FwY2hhaW4uYywgZGxscy93aW5lZDNkL01ha2VmaWxlLmluLAorCSAgZGxscy93aW5lZDNkL2RldmljZS5jLCBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLAorCSAgZGxscy93aW5lZDNkL3N3YXBjaGFpbi5jLCBkbGxzL3dpbmVkM2Qvd2luZWQzZF9wcml2YXRlLmgsCisJICBpbmNsdWRlL3dpbmUvd2luZWQzZF9pbnRlcmZhY2UuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJSW1wbGVtZW50IHN3YXBjaGFpbnMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJld29yayBSZWdpc3RlckZvbnRzIHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKwkqIGRsbHMvYWR2YXBpMzIvc2VjdXJpdHkuYzogSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJRm9yd2FyZCBBZGRBdWRpdEFjY2Vzc0FjZSB0byBpdHMgUnRsIGNvdW50ZXJwYXJ0LgorCisJKiBkbGxzL250ZGxsL250ZGxsLnNwZWMsIGRsbHMvbnRkbGwvc2VjLmMsIGluY2x1ZGUvd2ludGVybmwuaDoKKwlKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlBZGQgc3R1YiBpbXBsZW1lbnRhdGlvbiBvZiBSdGxBZGRBdWRpdEFjY2Vzc0FjZS4KKworCSogZGxscy9kM2RpbS9kM2RpbS5zcGVjLCBkbGxzL2RiZ2hlbHAvZGJnaGVscC5zcGVjLAorCSAgZGxscy9pY21wL2ljbXAuc3BlYywgZGxscy9pbWFnZWhscC9pbWFnZWhscC5zcGVjLAorCSAgZGxscy9rZXJuZWwva2VybmVsMzIuc3BlYywgZGxscy9tcHIvbXByLnNwZWMsCisJICBkbGxzL21zYWNtL21zYWNtMzIuc3BlYywgZGxscy9uZXRhcGkzMi9uZXRhcGkzMi5zcGVjLAorCSAgZGxscy9ycGNydDQvcnBjcnQ0LnNwZWMsIGRsbHMvc2hkb2N2dy9zaGRvY3Z3LnNwZWMsCisJICBkbGxzL3NoZWxsMzIvc2hlbGwzMi5zcGVjLCBkbGxzL3NobHdhcGkvc2hsd2FwaS5zcGVjLAorCSAgZGxscy91c2VyL3VzZXIzMi5zcGVjOgorCVNvcnQgZW50cnkgcG9pbnRzIGluIHRoZSBzYW1lIG9yZGVyIGFzIFdpbmRvd3MuCisKKwkqIHRvb2xzL3dpbmVkdW1wL2VtZi5jLCB0b29scy93aW5lZHVtcC9sbmsuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9vbGVhdXQzMi90ZXN0cy92YXJ0ZXN0LmMsIGRsbHMvb2xlYXV0MzIvdmFyZm9ybWF0LmM6CisJTWljaGFlbCBTdGVmYW5pdWMgPG1zdGVmYW5pQHJlZGhhdC5kZT4KKwktIG1vcmUgVmFyRm9ybWF0IGZpeGVzIGZvciBudW1iZXIgZm9ybWF0cyAoZXhwb25lbnQsIG1peGVkICcjJyBhbmQgJzAnCisJICBpbiBmb3JtYXRzLCByb3VuZGluZywgZXRjKS4gU2ltcGxpZnkgdGhlIGNvZGUuCisJLSBwcmV2aW91cyBWYXJGb3JtYXQgdG9kb193aW5lIHRlc3RzIHBhc3Mgbm93ICsgYWRkIG1vcmUgdGVzdHMKKworCSogZGxscy9udGRsbC90ZXN0cy9pbmZvLmM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJTlQ0IGRvZXNuJ3Qgc3VwcG9ydCBQcm9jZXNzSW9Db3VudGVycy4KKworCSogcHJvZ3JhbXMvcmVnZWRpdC9yZWdlZGl0LmM6IFN0ZXZlbiBFZHdhcmRzIDxzdGV2ZW5fZWQ0MTUzQHlhaG9vLmNvbT4KKwlSZW1vdmUgYW4gb3V0ZGF0ZWQgY29tbWVudCBpbiB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbnMuCisKKwkqIGRsbHMvbnRkbGwvb20uYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlSZXR1cm4gU1RBVFVTX09CSkVDVF9OQU1FX05PVF9GT1VORCBpbiBOdE9wZW5TeW1ib2xpY0xpbmtPYmplY3QgKHVudGlsCisJaW1wbGVtZW50ZWQpLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXdvcmsgV3JpdGVJbmlWYWx1ZXMgdG8gdXNlIE1TSV9JdGVyYXRlUmVjb3Jkcy4KKworMjAwNS0wNi0yMiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUmV3b3JrIFB1Ymxpc2hQcm9kdWN0IHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKwkqIGRsbHMvYWR2YXBpMzIvYWR2YXBpMzIuc3BlYywgZGxscy9jYXJkcy9jYXJkcy5zcGVjLAorCSAgZGxscy9jcnlwdDMyL2NyeXB0MzIuc3BlYywgZGxscy9kM2RpbS9kM2RpbS5zcGVjLAorCSAgZGxscy9kM2R4OC9kM2R4OC5zcGVjLCBkbGxzL2RkcmF3L2RkcmF3LnNwZWMsCisJICBkbGxzL2RpbnB1dC9kaW5wdXQuc3BlYywgZGxscy9nbHUzMi9nbHUzMi5zcGVjLAorCSAgZGxscy9nbHV0MzIvZ2x1dDMyLnNwZWMsIGRsbHMvaW1tMzIvaW1tMzIuc3BlYywKKwkgIGRsbHMvbXN2Y3J0ZC9tc3ZjcnRkLnNwZWMsIGRsbHMvbnRkbGwvbnRkbGwuc3BlYywKKwkgIGRsbHMvb2xlMzIvb2xlMzIuc3BlYywgZGxscy9vcGVuZ2wzMi9vcGVuZ2wzMi5zcGVjLAorCSAgZGxscy9zZXR1cGFwaS9zZXR1cGFwaS5zcGVjLCBkbGxzL3RhcGkzMi90YXBpMzIuc3BlYywKKwkgIGRsbHMvd2luaW5ldC93aW5pbmV0LnNwZWMsIGRsbHMvd2lubW0vd2luZWFsc2Evd2luZWFsc2EuZHJ2LnNwZWMsCisJICBkbGxzL3dpbm1tL3dpbmVhcnRzL3dpbmVhcnRzLmRydi5zcGVjLAorCSAgZGxscy93aW5tbS93aW5lamFjay93aW5lamFjay5kcnYuc3BlYywgZGxscy93aW5tbS93aW5tbS5zcGVjLAorCSAgZGxscy93aW5zcG9vbC93aW5zcG9vbC5kcnYuc3BlYywgZGxscy93aW50cnVzdC93aW50cnVzdC5zcGVjOgorCVNvcnQgZW50cnkgcG9pbnRzIGFscGhhYmV0aWNhbGx5LgorCisJKiBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQ29ycmVjdCBHZXREZXZpY2VDYXBzIHNvIHRoYXQgaXQgdXNlcyB3aW5lZDNkY2FwcyBhcyByZXF1aXJlZCBieSB0aGUKKwllYXJsaWVyIGRldmljZSBjYXBzIHBhdGNoLgorCisJKiBpbmNsdWRlL21zeG1sLmlkbDogVmlqYXkgS2lyYW4gS2FtdWp1IDxpbmZ5cXVlc3RAZ21haWwuY29tPgorCUFkZCBkZWZpbml0aW9uIGZvciBJWE1MQXR0cmlidXRlLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXdvcmsgUmVnaXN0ZXJUeXBlTGlicmFyaWVzIHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKwkqIGRsbHMvbXN2Y3J0ZC9tc3ZjcnRkLnNwZWMsIGRsbHMvbXN2Y3J0L2xvY2FsZS5jLAorCSAgZGxscy9tc3ZjcnQvbXN2Y3J0LnNwZWM6CisJRml4IGR1cGxpY2F0aW9uIG9mIF9HZXRuYW1lcyBhbmQgX0dldHRuYW1lcywgb25seSB0aGUgbGF0dGVyIGFjdHVhbGx5CisJZXhpc3RzLgorCisJKiBkbGxzL3VzZXIvY2xpcGJvYXJkLmMsIGRsbHMvdXNlci9saXN0Ym94LmMsIGRsbHMvdXNlci9tc2dib3guYywKKwkgIGRsbHMvdXNlci9zeXNwYXJhbXMuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGRlY2xhcmF0aW9ucywgcmVtb3ZlIHVudXNlZCBjb2RlLgorCisJKiBpbmNsdWRlL21zeG1sLmlkbDogVmlqYXkgS2lyYW4gS2FtdWp1IDxpbmZ5cXVlc3RAZ21haWwuY29tPgorCUFkZCBtaXNzaW5nIGd1aWRzIGFuZCBkZWNsYXJhdGlvbnMuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlTYXVsaXVzIEtyYXN1Y2thcyA8c2F1bGl1cy5rcmFzdWNrYXNAaWVlZS5vcmc+CisJLSBNb3ZlIHRlc3QgaW5pdCBjb2RlIGJhY2sgdG8gU1RBUlRfVEVTVChzaGxmb2xkZXIpLgorCS0gTW92ZSBjcmVhdGlvbiBhbmQgY2xlYW51cCBvZiBhIHRlc3QtZm9sZGVycyBuZWFyZXIgdG8KKwkgIHRlc3RfRW51bU9iamVjdHMuCisKKwkqIGRsbHMvZ2RpL3Rlc3RzL21ldGFmaWxlLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJLSBVc2Ugc21hbGxlciBudW1iZXJzIGFzIGNvb3JkaW5hdGVzIGZvciBtYXBwaW5nIHRlc3RzIHRvIGF2b2lkCisJICByb3VuZGluZy1lcnJvcnMuCisJLSBTaW1wbGlmeSBjYWxjdWxhdGlvbiBvZiBtYXBwZWQgY29vcmRpbmF0ZXMgZm9yIE1NX1RFWFQuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJld29yayBMYXVuY2hDb25kaXRpb25zIHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKwkqIGRsbHMveDExZHJ2L3hmb250LmM6CisJTW92ZWQgZm9udCBzZXR0aW5ncyB0byBIS0NVXFNvZnR3YXJlXFdpbmVcWDExIERyaXZlclxGb250cy4KKworCSogZGxscy9kbWJhbmQvYmFuZC5jLCBkbGxzL2RtYmFuZC9iYW5kdHJhY2suYywKKwkgIGRsbHMvZG1iYW5kL2RtYmFuZF9wcml2YXRlLmgsIGRsbHMvZG1iYW5kL2RtdXRpbHMuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IHVwIGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9udGRsbC9ydGxzdHIuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIFJ0bEdVSURGcm9tU3RyaW5nIGFuZCBSdGxTdHJpbmdGcm9tR1VJRC4KKworCSogcHJvZ3JhbXMvcmVnZWRpdC9yZWdwcm9jLmMsIHByb2dyYW1zL3JlZ2VkaXQvcmVncHJvYy5oOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJUmVtb3ZlIHNvbWUgbW9yZSAtV3N0cmljdC1wcm90b3R5cGVzIHdhcm5pbmdzLgorCisJKiBkbGxzL2F0bC9hdGxiYXNlLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgc29tZSBtaXNzaW5nIGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9zZWN1cml0eS5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCVNraXAgQUNMIHRlc3RzIG9uIFdpbjl4LgorCisJKiBkbGxzL3dpbm1tL2xvbHZsZHJ2LmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIGEgZnVuY3Rpb24gc3RhdGljLgorCisJKiBpbmNsdWRlL3dpbmJhc2UuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlY2xhcmUgUHJvY2Vzc0lkVG9TZXNzaW9uSWQuCisKKwkqIHRvb2xzL3dyYy90cmFuc2xhdGlvbi5jLCB0b29scy93cmMvd3JjLmMsIHRvb2xzL3dyYy93cmMuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTW92ZSBmdW5jdGlvbiBwcm90b3R5cGVzIHRvIGhlYWRlci4KKworMjAwNS0wNi0yMSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9udGRsbC9oZWFwLmM6CisJRG9uJ3QgcmVxdWlyZSBleGVjdXRlIHBlcm1pc3Npb24gb24gdGhlIHByb2Nlc3MgaGVhcC4KKworCSogZGxscy9jb21jdGwzMi90ZXN0cy9zdWJjbGFzcy5jLCBkbGxzL2RpbnB1dC90ZXN0cy9kaW5wdXRfdGVzdC5oLAorCSAgZGxscy9kaW5wdXQvdGVzdHMvbW91c2UuYywgZGxscy9kc291bmQvdGVzdHMvY2FwdHVyZS5jLAorCSAgZGxscy9nZGkvdGVzdHMvbWV0YWZpbGUuYywgZGxscy9tc2FjbS90ZXN0cy9tc2FjbS5jLAorCSAgZGxscy9tc2Ntcy9tc2Ntc19tYWluLmMsIGRsbHMvbXN2Y3J0L3Rlc3RzL3RpbWUuYywKKwkgIGRsbHMvb2xlMzIvb2xlb2JqLmMsIGRsbHMvb2xlMzIvdGVzdHMvbW9uaWtlci5jLAorCSAgZGxscy9vbGVhdXQzMi90eXBlbGliLmMsIGRsbHMvcmljaGVkMjAvZWRpdG9yLmMsCisJICBkbGxzL3JpY2hlZDIwL2VkaXRvci5oLCBkbGxzL3NobHdhcGkvcGF0aC5jLAorCSAgZGxscy9zaGx3YXBpL3Rlc3RzL29yZGluYWwuYywgZGxscy91cmxtb24vdXJsbW9uX21haW4uaCwKKwkgIGRsbHMvdXNlci9zdGF0aWMuYywgZGxscy91c2VyL3Rlc3RzL21zZy5jLCBkbGxzL3V4dGhlbWUvc3lzdGVtLmMsCisJICBkbGxzL3dpbmVkb3MvZGV2aWNlcy5jLCBkbGxzL3dpbm1tL3Rlc3RzL2NhcHR1cmUuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIG1vcmUgLVdzdHJpY3QtcHJvdG90eXBlcyB3YXJuaW5ncy4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUmV3b3JrIENvc3RGaW5hbGl6ZSB0byB1c2UgTVNJX0l0ZXJhdGVSZWNvcmRzLgorCisJKiBkbGxzL2FkdmFwaTMyL3NlY3VyaXR5LmM6IEphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCUltcGxlbWVudCBJc1Rva2VuUmVzdHJpY3RlZC4KKworCSogZGxscy9udGRsbC92aXJ0dWFsLmM6CisJQWRkIFBBR0VfR1VBUkQgZmxhZyB0byB0aGUgcmV0dXJuZWQgcHJvdGVjdGlvbiBvZiBndWFyZCBwYWdlcy4KKworCSogZGxscy9udGRsbC9wcm9jZXNzLmMsIGRsbHMvbnRkbGwvdGVzdHMvaW5mby5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQ2hhbmdlIFByb2Nlc3NCYXNpY0luZm9ybWF0aW9uIHRvIHRoZSBzYW1lIGJlaGF2aW9yIGFzIHRoZSByZXN0LgorCVVzZSBLRVJORUxfVVNFUl9USU1FUyBmb3IgUHJvY2Vzc1RpbWVzLgorCUFkZCB0ZXN0cyBmb3Igdm0sIGlvLCB0aW1lcyBhbmQgaGFuZGxlY291bnQgaW5mbyBjbGFzc2VzLgorCUZpeGVzIGZvciAtV3N0cmljdC1wcm90b3R5cGVzIHdhcm5pbmdzLgorCisJKiBkbGxzL2Rzb3VuZC90ZXN0cy9jYXB0dXJlLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJQWNjZXB0IERTRVJSX05PRFJJVkVSIGZyb20gSURpcmVjdFNvdW5kQ2FwdHVyZV9DcmVhdGVDYXB0dXJlQnVmZmVyLgorCisJKiBkbGxzL21zaS9oZWxwZXJzLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRml4IHNpdHVhdGlvbnMgd2hlcmUgVEFSR0VURElSIGlzIHNldCB0byBhIG5vbiBcIHRlcm1pbmF0ZWQKKwlwYXRoLiBGaXhlcyBhIGZldyBpbnN0YWxsZXJzLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXdvcmsgV3JpdGVSZWdpc3RyeVZhbHVlcyB0byB1c2UgTVNJX0l0ZXJhdGVSZWNvcmRzLgorCisJKiBpbmNsdWRlL2Ftc3RyZWFtLmlkbDogVmlqYXkgS2lyYW4gS2FtdWp1IDxpbmZ5cXVlc3RAZ21haWwuY29tPgorCUFkZCBkZWZpbml0aW9ucyBmb3IgQU1NU0ZfU1RPUElGTk9TQU1QTEVTIGFuZCBBTU1TRl9OT1NUQUxMLgorCisJKiBkbGxzL2FkdmFwaTMyL2FkdmFwaTMyLnNwZWMsIGRsbHMvYWR2YXBpMzIvc2VjdXJpdHkuYzoKKwlKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlJbXBsZW1lbnQgR2V0VHJ1c3RlZSogZnVuY3Rpb25zLgorCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJU2F1bGl1cyBLcmFzdWNrYXMgPHNhdWxpdXMua3Jhc3Vja2FzQGllZWUub3JnPgorCUNsZWFudXAgdGhlIHNobGZvbGRlciB0ZXN0IGEgYml0IG1vcmUuCisKKwkqIGRsbHMvZDNkOS9kZXZpY2UuYzogT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCUNhbGwgd2luZWQzZCBmb3IgR2V0RGlyZWN0M0QgaW5zdGVhZCBvZiB1c2luZyB0aGUgLT5kaXJlY3QzRCBpbnN0YW5jZSwKKwl3aGljaCBpcyBubyBsb25nZXIgdmFsaWQuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJld29yayBDcmVhdGVGb2xkZXJzIHRvIHVzZSBNU0lfSXRlcmF0ZVJlY29yZHMuCisKKwkqIGRsbHMvbXNpL2ZpbGVzLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRHVwbGljYXRlIGZpbGVzIHNob3VsZCBub3QgZmFpbCBpZiB1bmFibGUgdG8gZ2V0IERlc3RpbmF0aW9uCisJRGlyZWN0b3J5LgorCisJKiBkbGxzL29wZW5nbDMyL3dnbC5jOiBWaXRhbHkgTGlwYXRvdiA8bGF2QGV0ZXJzb2Z0LnJ1PgorCUluaXRpYWxpemUgZXh0ZW5zaW9ucyBhZnRlciBjb3JyZWN0IGNvbnRleHQgaXMgY3JlYXRlZC4KKworCSogZGxscy91c2VyL3N5c3BhcmFtcy5jOiBSZWluIEtsYXplcyA8d2lqbkB3YW5hZG9vLm5sPgorCUluIHJlZ19nZXRfbG9nZm9udDoKKwktIGhhbmRsZSB0aGUgY2FzZSB0aGF0IHRoZSByZWdpc3RyeSB2YWx1ZSBpcyBhIExPR0ZPTlQxNjsKKwktIGlmIHRoZSBsZkhlaWdodCBmaWVsZCBpcyBwb3NpdGl2ZSwgaXQgcmVwcmVzZW50cyB0aGUgZm9udCdzIHBvaW50CisJICBzaXplIGFuZCBtdXN0IGJlIGNvbnZlcnRlZCB0byBsb2dpY2FsIHVuaXRzLgorCisJKiBkbGxzL3dpbmluZXQvaHR0cC5jOiBNYWFydGVuIExhbmtob3JzdCA8bS5iLmxhbmtob3JzdEBnbWFpbC5jb20+CisJQ2hhbmdlZCBzZXR0aW5nIGRlZmF1bHQgcG9ydCBudW1iZXIgZnJvbSBIVFRQX0Nvbm5lY3QgdG8KKwlIdHRwT3BlblJlcXVlc3RXLgorCisJKiBkbGxzL3dpbmluZXQvaW50ZXJuZXQuYywgaW5jbHVkZS93aW5pbmV0Lmg6CisJTWFhcnRlbiBMYW5raG9yc3QgPG0uYi5sYW5raG9yc3RAZ21haWwuY29tPgorCS0gQWRkZWQgbmV3IElOVEVSTkVUX09QVElPTiogZGVmaW5lcy4KKwktIEZpeGVkIEludGVybmV0U2V0T3B0aW9uVyB1bmtub3duIG9wdGlvbiBoYW5kbGluZywgYW5kIGFkZGVkCisJICBJTlRFUk5FVF9PUFRJT05fRElTQUJMRV9QQVNTUE9SVF9BVVRILgorCisJKiBkbGxzL2tlcm5lbC9maWJlci5jLCBkbGxzL2tlcm5lbC90aHJlYWQuYywgZGxscy9udGRsbC90aHJlYWQuYzoKKwlEb24ndCByZXF1aXJlIGV4ZWN1dGUgcGVybWlzc2lvbiBmb3IgdGhyZWFkIHN0YWNrcy4KKworCSogZGxscy9udGRsbC9hdG9tLmMsIGRsbHMvbnRkbGwvY2Ryb20uYywgZGxscy9udGRsbC9jcml0c2VjdGlvbi5jLAorCSAgZGxscy9udGRsbC9kZWJ1Z2J1ZmZlci5jLCBkbGxzL250ZGxsL2RlYnVndG9vbHMuYywKKwkgIGRsbHMvbnRkbGwvZGlyZWN0b3J5LmMsIGRsbHMvbnRkbGwvZW52LmMsIGRsbHMvbnRkbGwvZXJyb3IuYywKKwkgIGRsbHMvbnRkbGwvZXhjZXB0aW9uLmMsIGRsbHMvbnRkbGwvaGFuZGxldGFibGUuYywgZGxscy9udGRsbC9oZWFwLmMsCisJICBkbGxzL250ZGxsL2xhcmdlX2ludC5jLCBkbGxzL250ZGxsL2xvYWRlci5jLCBkbGxzL250ZGxsL2xvYWRvcmRlci5jLAorCSAgZGxscy9udGRsbC9udC5jLCBkbGxzL250ZGxsL29tLmMsIGRsbHMvbnRkbGwvcGF0aC5jLAorCSAgZGxscy9udGRsbC9wcm9jZXNzLmMsIGRsbHMvbnRkbGwvcmVnLmMsIGRsbHMvbnRkbGwvcmVsYXkuYywKKwkgIGRsbHMvbnRkbGwvcmVzb3VyY2UuYywgZGxscy9udGRsbC9ydGwuYywgZGxscy9udGRsbC9ydGxiaXRtYXAuYywKKwkgIGRsbHMvbnRkbGwvcnRsc3RyLmMsIGRsbHMvbnRkbGwvc2VjLmMsIGRsbHMvbnRkbGwvc2VydmVyLmMsCisJICBkbGxzL250ZGxsL3NpZ25hbF9pMzg2LmMsIGRsbHMvbnRkbGwvc2lnbmFsX3Bvd2VycGMuYywKKwkgIGRsbHMvbnRkbGwvc2lnbmFsX3NwYXJjLmMsIGRsbHMvbnRkbGwvc3RyaW5nLmMsIGRsbHMvbnRkbGwvc3luYy5jLAorCSAgZGxscy9udGRsbC92ZXJzaW9uLmMsIGRsbHMvbnRkbGwvdmlydHVhbC5jLCBkbGxzL250ZGxsL3djc3RyaW5nLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURvbid0IGluY2x1ZGUgd2luYmFzZS5oIG9yIHdpbmVycm9yLmggd2hlbiBub3QgbmVjZXNzYXJ5LgorCisJKiBzZXJ2ZXIvY29udGV4dF9pMzg2LmMsIHNlcnZlci9jb250ZXh0X3Bvd2VycGMuYywKKwkgIHNlcnZlci9jb250ZXh0X3NwYXJjLmMsIHNlcnZlci9kZWJ1Z2dlci5jLCBzZXJ2ZXIvZmQuYywKKwkgIHNlcnZlci9maWxlLmMsIHNlcnZlci9oYW5kbGUuYywgc2VydmVyL21haWxzbG90LmMsIHNlcnZlci9tYXBwaW5nLmMsCisJICBzZXJ2ZXIvbmFtZWRfcGlwZS5jLCBzZXJ2ZXIvcHJvY2Vzcy5jLCBzZXJ2ZXIvcmVnaXN0cnkuYywKKwkgIHNlcnZlci9zZXJpYWwuYywgc2VydmVyL3NvY2suYywgc2VydmVyL3RocmVhZC5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEb24ndCBpbmNsdWRlIHdpbmJhc2UuaCB3aGVuIGl0J3Mgbm90IG5lY2Vzc2FyeS4KKworCSogZGxscy91cmxtb24vdXJsbW9uX21haW4uYzoKKwlNYWFydGVuIExhbmtob3JzdCA8bS5iLmxhbmtob3JzdEBnbWFpbC5jb20+CisJSW1wcm92ZWQgT2J0YWluVXNlckFnZW50U3RyaW5nIHN0dWIuCisKKwkqIGRsbHMvZG1pbWUvYXVkaW9wYXRoLmMsIGRsbHMvZG1pbWUvZG1pbWVfcHJpdmF0ZS5oLAorCSAgZGxscy9kbWltZS9ncmFwaC5jLCBkbGxzL2RtaW1lL2x5cmljc3RyYWNrLmMsCisJICBkbGxzL2RtaW1lL21hcmtlcnRyYWNrLmMsIGRsbHMvZG1pbWUvcGFyYW1jb250cm9sdHJhY2suYywKKwkgIGRsbHMvZG1pbWUvcGF0dGVybnRyYWNrLmMsIGRsbHMvZG1pbWUvcGVyZm9ybWFuY2UuYywKKwkgIGRsbHMvZG1pbWUvc2VnbWVudC5jLCBkbGxzL2RtaW1lL3NlZ21lbnRzdGF0ZS5jLAorCSAgZGxscy9kbWltZS9zZWd0cmlnZ2VydHJhY2suYywgZGxscy9kbWltZS9zZXF0cmFjay5jLAorCSAgZGxscy9kbWltZS9zeXNleHRyYWNrLmMsIGRsbHMvZG1pbWUvdGVtcG90cmFjay5jLAorCSAgZGxscy9kbWltZS90aW1lc2lndHJhY2suYywgZGxscy9kbWltZS90b29sLmMsIGRsbHMvZG1pbWUvd2F2ZXRyYWNrLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCS0gdXNlIGludGVyZmFjZXMgcmF0aGVyIHRoYW4gaW50ZXJuYWwgZnVuY3Rpb25zCisJLSByZW1vdmUgZGVjbGFyYXRpb24gb2YgQWRkUmVmIGFuZCBRdWVyeUludGVyZmFjZSBmdW5jdGlvbnMgZnJvbQorCSAgaGVhZGVycworCisJKiBpbmNsdWRlL3dpbmUvdGVzdC5oOiBQaWVycmUgZCdIZXJiZW1vbnQgPHN0ZWdlZmluQGZyZWUuZnI+CisJRml4IHdpbnNvY2suaCBhbmQgc3RkbGliLmggY29sbGlzaW9uIGJ5IGluY2x1ZGluZyB3aW5kb3dzLmggaW5zdGVhZAorCW9mIHRoZSBwcmV2aW91cyBoZWFkZXJzLgorCisJKiBkbGxzL2Rzb3VuZC9taXhlci5jOiBSb2JlcnQgUmVpZiA8cmVpZkBlYXJ0aGxpbmsubmV0PgorCUZpeCBhIHR5cG8uCisKKwkqIGluY2x1ZGUvd2ludGVybmwuaDogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlBZGRlZCBLRVJORUxfVVNFUl9USU1FUyBzdHJ1Y3QuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvTmwucmMsIHByb2dyYW1zL3dpbmVjZmcvd2luZWNmZy5yYzoKKwlQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCVVwZGF0ZSBEdXRjaCByZXNvdXJjZSBmaWxlLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlQcm9wYWdhdGUgdGhlIHJvb3QgZm9sZGVyJ3MgYXR0cmlidXRlcyB0byB0aGUgcmVnaXN0cnkuCisKKzIwMDUtMDYtMjAgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL2xpY2Vuc2UuYywgcHJvZ3JhbXMvd2luZWZpbGUvc3BsaXRwYXRoLmM6CisJTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwlSZW1vdmUgc3VwZXJmbHVvdXMgaW5jbHVkZSBzdGF0ZW1lbnRzLgorCisJKiBkbGxzL3F1YXJ0ei9jb250cm9sLmMsIGRsbHMvcXVhcnR6L2VudW1tZWRpYS5jLAorCSAgZGxscy9xdWFydHovZW51bW1vbmlrZXIuYywgZGxscy9xdWFydHovZmlsZXNvdXJjZS5jLAorCSAgZGxscy9xdWFydHovdHJhbnNmb3JtLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCU1ha2UgZnVuY3Rpb25zIHN0YXRpYywgZml4IGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9rZXJuZWwvdGltZS5jLCBkbGxzL250ZGxsL3RpbWUuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIGF2b2lkIHdpbnRlcm5sLmggZGVwZW5kaW5nIG9uIHdpbmJhc2UuaAorCS0gZGVmaW5lIFJUTCB2ZXJzaW9ucyBvZiBUSU1FX1pPTkVfSU5GT1JNQVRJT04gYW5kIFNZU1RFTVRJTUUKKworCSogZGxscy93aW5tbS9sb2x2bGRydi5jLCBkbGxzL3dpbm1tL3dpbmVtbS5oLCBwcm9ncmFtcy93aW5lY2ZnL2F1ZGlvLmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL3Byb3BlcnRpZXMuYzoKKwlNb3ZlZCB0aGUgYXVkaW8gZHJpdmVyIGNvbmZpZ3VyYXRpb24gdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXERyaXZlcnMgYW5kCisJY2hhbmdlZCBpdCBhIGJpdCB0byBmb2xsb3cgdGhlIG1vZGVsIG9mIHRoZSBncmFwaGljcyBkcml2ZXIuCisKKwkqIGRsbHMvZDNkOC9kM2Q4X21haW4uYywgZGxscy9nZGkvZHJpdmVyLmMsCisJICBkbGxzL3NoZG9jdncvc2hkb2N2d19tYWluLmMsIGRsbHMvdXNlci91c2VyX21haW4uYywKKwkgIGRsbHMvd2luZWQzZC93aW5lZDNkX21haW4uYzoKKwlNb3ZlZCBhIGZldyByZWdpc3RyeSBrZXlzIGZyb20gSEtMTVxTb2Z0d2FyZVxXaW5lIHRvCisJSEtDVVxTb2Z0d2FyZVxXaW5lIGZvciBjb25zaXN0ZW5jeS4KKworCSogZGxscy93aW5tbS93aW5lYWxzYS9hdWRpby5jOgorCU1vdmVkIGNvbmZpZ3VyYXRpb24gZGF0YSB0byBIS0NVXFNvZnR3YXJlXFdpbmVcQWxzYSBEcml2ZXIuCisKKwkqIGRsbHMvZG1pbWUvYXVkaW9wYXRoLmMsIGRsbHMvZG1pbWUvZG11dGlscy5jLCBkbGxzL2RtaW1lL2dyYXBoLmMsCisJICBkbGxzL2RtaW1lL2x5cmljc3RyYWNrLmMsIGRsbHMvZG1pbWUvbWFya2VydHJhY2suYywKKwkgIGRsbHMvZG1pbWUvcGFyYW1jb250cm9sdHJhY2suYywgZGxscy9kbWltZS9wYXR0ZXJudHJhY2suYywKKwkgIGRsbHMvZG1pbWUvcGVyZm9ybWFuY2UuYywgZGxscy9kbWltZS9zZWdtZW50LmMsCisJICBkbGxzL2RtaW1lL3NlZ21lbnRzdGF0ZS5jLCBkbGxzL2RtaW1lL3NlZ3RyaWdnZXJ0cmFjay5jLAorCSAgZGxscy9kbWltZS9zZXF0cmFjay5jLCBkbGxzL2RtaW1lL3N5c2V4dHJhY2suYywKKwkgIGRsbHMvZG1pbWUvdGVtcG90cmFjay5jLCBkbGxzL2RtaW1lL3RpbWVzaWd0cmFjay5jLAorCSAgZGxscy9kbWltZS90b29sLmMsIGRsbHMvZG1pbWUvd2F2ZXRyYWNrLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCU1ha2UgZnVuY3Rpb25zIHN0YXRpYy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWM6IFBpZXJyZSBkJ0hlcmJlbW9udCA8c3RlZ2VmaW5AZnJlZS5mcj4KKwlBbHNvIGNoZWNrIGZvciAvdXNyL1gxMVI2L2xpYi9saWJHTC5keWxpYi4KKworCSogZGxscy91c2VyL3N5c3BhcmFtcy5jLCBkbGxzL3VzZXIvdGVzdHMvc3lzcGFyYW1zLmM6CisJVml0YWx5IExpcGF0b3YgPGxhdkBldGVyc29mdC5ydT4KKwlGaXggcmV0dXJuZWQgdmFsdWUgZm9yIFNQSV9TRVRNT1VTRUJVVFRPTlNXQVAuCisKKwkqIGRsbHMvZGRyYXcvdGVzdHMvZGRyYXdtb2Rlcy5jLCBkbGxzL2lwaGxwYXBpL3Rlc3RzL2lwaGxwYXBpLmMsCisJICBkbGxzL2tlcm5lbC90ZXN0cy9waXBlLmMsIGRsbHMvbXN2Y3J0L3Rlc3RzL2hlYWRlcnMuYywKKwkgIGRsbHMvbXN2Y3J0ZC90ZXN0cy9kZWJ1Zy5jLCBkbGxzL25ldGFwaTMyL3Rlc3RzL2FjY2Vzcy5jLAorCSAgZGxscy9uZXRhcGkzMi90ZXN0cy9hcGlidWYuYywgZGxscy9ycGNydDQvdGVzdHMvcnBjLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlNYWtlIHNvbWUgZnVuY3Rpb24gc3RhdGljLgorCisJKiBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvLmMsIGluY2x1ZGUvbW1zeXN0ZW0uaDoKKwlKZXJlbXkgV2hpdGUgPGp3aGl0ZUBjb2Rld2VhdmVycy5jb20+CisJUmV2YW1wIHRoZSBpbml0aWFsaXphdGlvbiBmb3IgQWxzYS4KKworCSogZGxscy9zaGVsbDMyL3NoZWxsb3JkLmMsIGluY2x1ZGUvc2hlbGxhcGkuaDoKKwlWaXRhbHkgTGlwYXRvdiA8bGF2QGV0ZXJzb2Z0LnJ1PgorCS0gUmVhbGl6ZSBEb0Vudmlyb25tZW50U3Vic3RBIHZpYSBFeHBhbmRFbnZpcm9ubWVudFN0cmluZ3NBLgorCS0gRml4IHR5cGVzIGFuZCByZXR1cm4gdmFsdWVzLgorCS0gQWRkIHByb3RvdHlwZSBpbnRvIHNoZWxsYXBpLmguCisKKwkqIGRsbHMvbXNpL2ZpbGVzLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJVXNlIE1TSV9JdGVyYXRlUmVjb3JkcyBmb3IgRHVwbGljYXRlRmlsZXMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVVzZSBNU0lfSXRlcmF0ZVJlY29yZHMgZm9yIHByb2Nlc3NpbmcgYWN0aW9ucy4KKwlTb21lIHdoaXRlc3BhY2UgY2xlYW51cCBhbmQgcmVwbGFjZSBhIGNvbW1lbnQgYmxvY2sgSSBkaWQgbm90IHdhbnQgdG8KKwlyZW1vdmUuCisKKwkqIGRsbHMvYWR2YXBpMzIvdGVzdHMvY3J5cHQuYywgZGxscy9hZHZhcGkzMi90ZXN0cy9jcnlwdF9sbWhhc2guYywKKwkgIGRsbHMvYWR2YXBpMzIvdGVzdHMvcmVnaXN0cnkuYywgZGxscy9hZHZwYWNrL3Rlc3RzL2FkdnBhY2suYywKKwkgIGRsbHMvY29tY3RsMzIvbGlzdHZpZXcuYywgZGxscy9jb21jdGwzMi90ZXN0cy9pbWFnZWxpc3QuYywKKwkgIGRsbHMvZGRyYXcvdGVzdHMvZDNkLmMsIGRsbHMvZGRyYXcvdGVzdHMvZGRyYXdtb2Rlcy5jLAorCSAgZGxscy9kZHJhdy90ZXN0cy9kc3VyZmFjZS5jLCBkbGxzL2RpbnB1dC90ZXN0cy9qb3lzdGljay5jLAorCSAgZGxscy9kaW5wdXQvdGVzdHMva2V5Ym9hcmQuYywgZGxscy9kbWJhbmQvZG1iYW5kX3ByaXZhdGUuaCwKKwkgIGRsbHMvZG1jb21wb3MvZG1jb21wb3NfcHJpdmF0ZS5oLCBkbGxzL2RtaW1lL2RtaW1lX3ByaXZhdGUuaCwKKwkgIGRsbHMvZG1zY3JpcHQvZG1zY3JpcHRfcHJpdmF0ZS5oLCBkbGxzL2Rtc3R5bGUvZG1zdHlsZV9wcml2YXRlLmgsCisJICBkbGxzL2Rtc3ludGgvZG1zeW50aF9wcml2YXRlLmgsIGRsbHMvZG11c2ljL2RtdXNpY19wcml2YXRlLmgsCisJICBkbGxzL2Rzb3VuZC90ZXN0cy9kczNkLmMsIGRsbHMvZHNvdW5kL3Rlc3RzL2RzM2Q4LmMsCisJICBkbGxzL2Rzb3VuZC90ZXN0cy9kc291bmQuYywgZGxscy9kc291bmQvdGVzdHMvZHNvdW5kOC5jLAorCSAgZGxscy9kc291bmQvdGVzdHMvcHJvcHNldC5jLCBkbGxzL2Rzd2F2ZS9kc3dhdmVfcHJpdmF0ZS5oLAorCSAgZGxscy9keGRpYWduL2R4ZGlhZ19wcml2YXRlLmgsIGRsbHMvZ2RpL3Rlc3RzL2JydXNoLmMsCisJICBkbGxzL2tlcm5lbC90ZXN0cy9lbnZpcm9uLmMsIGRsbHMva2VybmVsL3Rlc3RzL2ZpbGUuYywKKwkgIGRsbHMva2VybmVsL3Rlc3RzL2xvY2FsZS5jLCBkbGxzL2tlcm5lbC90ZXN0cy9tYWlsc2xvdC5jLAorCSAgZGxscy9tc2Ntcy90ZXN0cy9wcm9maWxlLmMsIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS90ZXN0cy9kYi5jLAorCSAgZGxscy9tc3ZjcnQvdGVzdHMvaGVhZGVycy5jLCBkbGxzL250ZGxsL3Rlc3RzL2xhcmdlX2ludC5jLAorCSAgZGxscy9udGRsbC90ZXN0cy9yZWcuYywgZGxscy9vbGUzMi9jb21wb2JqLmMsIGRsbHMvb2xlMzIvaWZzLmMsCisJICBkbGxzL29sZTMyL3Rlc3RzL21hcnNoYWwuYywgZGxscy9vbGUzMi90ZXN0cy9wcm9wdmFyaWFudC5jLAorCSAgZGxscy9vbGVhdXQzMi90ZXN0cy9zYWZlYXJyYXkuYywgZGxscy9xY2FwL3FjYXBfbWFpbi5jLAorCSAgZGxscy9xdWFydHovdGVzdHMvZmlsdGVyZ3JhcGguYywgZGxscy9zaGRvY3Z3L3NoZG9jdncuaCwKKwkgIGRsbHMvc2hkb2N2dy9zaGRvY3Z3X21haW4uYywgZGxscy9zaGVsbDMyL3Rlc3RzL3NoZWxsbGluay5jLAorCSAgZGxscy9zaGx3YXBpL3Rlc3RzL2NsaXN0LmMsIGRsbHMvc2hsd2FwaS90ZXN0cy9zaHJlZy5jLAorCSAgZGxscy91c2VyL2NvbWJvLmMsIGRsbHMvdXNlci90ZXN0cy9lZGl0LmMsIGRsbHMvd2luZXBzL2FmbS5jLAorCSAgZGxscy93aW5zb2NrL3Rlc3RzL3Byb3RvY29sLmMsIGRsbHMvd2luc3Bvb2wvaW5mby5jLAorCSAgZGxscy93aW50YWIzMi9jb250ZXh0LmMsIHByb2dyYW1zL25vdGVwYWQvZGlhbG9nLmgsCisJICBwcm9ncmFtcy9wcm9nbWFuL2dycGZpbGUuYywgdG9vbHMvd2luZWdjYy93aW5lZ2NjLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlGaXggbW9yZSAtV3N0cmljdC1wcm90b3R5cGVzIHdhcm5pbmdzLgorCisJKiBkbGxzL3VzZXIvbWVudS5jLCBkbGxzL3VzZXIvdGVzdHMvbWVudS5jOgorCVJlaW4gS2xhemVzIDx3aWpuQHdhbmFkb28ubmw+CisJT3duZXIgZHJhd24gbWVudSBpdGVtIHNpemUgY2FsY3VsYXRpb24gZml4ZXM6CisJLSBDb3JyZWN0IHdpZHRoIGNhbGN1bGF0aW9uIG9mIG93bmVyIGRyYXduIG1lbnUgaXRlbXM7CisJLSBTZXQgdGhlIGhlaWdodCB2YWx1ZSBpbiB0aGUgTUVBU1VSRUlURU0gc3RydWN0IHRvIHRoZSBzYW1lIHZhbHVlIGFzCisJICBXaW5kb3dzIChOVC8yay9YUCkgZG9lcyAocHJvYmxlbSBkZWJ1Z2dlZCBieSBGZWxpeCBOYXdvdGhuaWcpOworCS0gQWRkIHRlc3RzIGZvciB0aGUgZml4ZXMgYWJvdmU7CisJLSBBbHNvIGFkZCB0ZXN0cyBmb3IgbWVudSBiYXJzIHdpdGggb3duZXIgZHJhd24gaXRlbXMuCisKKwkqIGRsbHMvZHNvdW5kL21peGVyLmM6IFJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJRml4IHJvdW5kb2ZmIGVycm9yIHRvIHByZXZlbnQgbmVnYXRpdmUgbGVuZ3RoLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCU1ha2UgdGFicyB3b3JrIGluIG1zaSBkaWFsb2dzLgorCisJKiB0b29scy93aW5lYnVpbGQvaW1wb3J0LmMsIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jOgorCVdvbGZnYW5nIFRoYWxsZXIgPHdvbGZnYW5nLnRoYWxsZXJAZ214Lm5ldD4KKwlVc2UgX19BU01fTkFNRSBhbmQgSEFWRV9BU01fRE9UX1NJWkUgaW4gYSBmZXcgcGxhY2VzIGluIHdpbmVidWlsZAorCXdoZXJlIHRoZXkgaGF2ZSBiZWVuIG1pc3NpbmcgKG5lZWRlZCBmb3IgRGFyd2luL3g4NikuCisKKwkqIGRsbHMvbnRkbGwvdGhyZWFkLmMsIGluY2x1ZGUvd2luZS9zZXJ2ZXJfcHJvdG9jb2wuaCwKKwkgIHNlcnZlci9wcm90b2NvbC5kZWYsIHNlcnZlci9zZWN1cml0eS5oLCBzZXJ2ZXIvdGhyZWFkLmMsCisJICBzZXJ2ZXIvdG9rZW4uYywgc2VydmVyL3RyYWNlLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUFkZCBzdXBwb3J0IGZvciBpbXBlcnNvbmF0aW5nIGEgdG9rZW4uCisKKwkqIGRsbHMvb2xlMzIvY29tcG9iai5jLCBkbGxzL29sZTMyL29sZTE2LmMsIGRsbHMvb2xlMzIvb2xlMi5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlDb252ZXJ0IHNvbWUgcmVnaXN0cnkgaGVscGVyIGZ1bmN0aW9ucyB0byB1c2UgdW5pY29kZSB2ZXJzaW9ucyBvZgorCUNMU0lEICYgcmVnaXN0cnkgZnVuY3Rpb25zICh1bnRlc3RlZCkuCisKKwkqIGRsbHMvZ2RpL3Rlc3RzL2JpdG1hcC5jOiBMYXVyaSBUdWxtaW4gPHR1bG1pbkBnbWFpbC5jb20+CisJLSBhZGQgc29tZSB0ZXN0cyBmb3Ige0dldHxTZXR9UGl4ZWwKKwktIHNraXAgdGVzdHMgdGhhdCBmYWlsIGluIHdpbjl4CisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL0NzLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0VuLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Fcy5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0ZyLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9IdS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0l0LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9ObC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1BsLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9QdC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1J1LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9TaS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1N2LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9aaC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL3Jlc291cmNlLmgsIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmg6CisJTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwktIFN5bmMgd2l0aCBSZWFjdE9TIHJlcG9zaXRvcnksIHJlLWluZGVudCBhbmQgcmVtb3ZlIHRhYnMgaW4gcmVzb3VyY2UKKwkgIHNjcmlwdHMgYW5kIGhlYWRlciBmaWxlcy4KKwktIEFkZCAjaWZkZWYgX19XSU5FX18gZm9yIHRoZSBXaW5lIEFib3V0IGRpYWxvZy4KKworCSogZGxscy91c2VyL21lbnUuYywgZGxscy91c2VyL3VzZXIzMi5zcGVjLCBpbmNsdWRlL3dpbnVzZXIuaDoKKwlIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlTdHViIGltcGxlbWVudGF0aW9uIGZvciBHZXRNZW51QmFySW5mby4KKworCSogZGxscy9hZHZhcGkzMi9zZWN1cml0eS5jLCBkbGxzL250ZGxsL3NlYy5jLCBpbmNsdWRlL3dpbnRlcm5sLmg6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCBSdGxJbXBlcnNvbmF0ZVNlbGYsIFJldmVydFRvU2VsZiBhbmQgTWFwR2VuZXJpY01hc2suCisKKwkqIGRsbHMvd2lubW0vbWNpLmMsIGRsbHMvd2lubW0vbWVzc2FnZTE2LmMsIGRsbHMvd2lubW0vd2luZW1tLmg6CisJUmVpbiBLbGF6ZXMgPHdpam5Ad2FuYWRvby5ubD4KKwlJbiBNQ0lfKFVuKU1hcE1zZzE2VG8zMlcgd2l0aCB3TXNnID09IE1DSV9PUEVOKF9EUklWRVIpIG9ubHkgZG8KKwlzdHJkdXBBdG9XIG9uIHRob3NlIHBhcmFtZXRlcnMgdGhhdCBhcmUgZmxhZ2dlZCB0byBiZSBhIHN0cmluZy4KKworCSogbGlicy93aW5lL21tYXAuYzogV29sZmdhbmcgVGhhbGxlciA8d29sZmdhbmcudGhhbGxlckBnbXgubmV0PgorCUltcGxlbWVudCB0cnlfbW1hcF9maXhlZCBmb3IgRGFyd2luLgorCisJKiB0b29scy93aW5lYnVpbGQvc3BlYzMyLmMsIHRvb2xzL3dpbmVidWlsZC91dGlscy5jOgorCVdvbGZnYW5nIFRoYWxsZXIgPHdvbGZnYW5nLnRoYWxsZXJAZ214Lm5ldD4KKwlXaW5lYnVpbGQgZGFyd2luL3g4Ni1zcGVjaWZpYyBmaXhlczoKKwktIEFzc2VtYmxlciBpbnRlcnByZXRzIC5hbGlnbiBhcyBwb3dlci1vZi10d28KKwktIEFkZCAud2Vha19yZWZlcmVuY2UgdG8gb3V0cHV0IHdoZXJlIGdjYyAzLjMgc3dhbGxvd3MgaXQKKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYzogVml0YWx5IExpcGF0b3YgPGxhdkBldGVyc29mdC5ydT4KKwlBbGxvdyBudWxsIHBvaW50ZXJzIGZvciBFTV9HRVRTRUwgbWVzc2FnZSAoYXMgTVNETiBzYXlzKS4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJVXNlIHN0YXQncyBkZXYvaW5vZGUgdG8gY29tcGFyZSBwYXRocyBpbnN0ZWFkIG9mIGNvbXBhcmluZyB0aGUKKwlzdHJpbmdzLiBEZWZlciBidWlsZGluZyBhIGZvbGRlcidzIGNoaWxkcmVuIFNISVRFTUlEUyB1bnRpbCBleHBsaWNpdGx5CisJYXNrZWQgZm9yLgorCisJKiBkbGxzL250ZGxsL3Byb2Nlc3MuYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlTdHViIGltcGxlbWVudGF0aW9ucyBmb3IgUHJvY2Vzc1ZtQ291bnRlcnMsIFByb2Nlc3NUaW1lcyBhbmQKKwlQcm9jZXNzSGFuZGxlQ291bnQuCisJQ2hhbmdlZCBQcm9jZXNzSW9Db3VudGVycyB0byBtYXRjaCB3aW5kb3dzIGJlaGF2aW9yLgorCisJKiBkbGxzL2tlcm5lbC9jaGFuZ2UuYywgZGxscy9rZXJuZWwvY29tcHV0ZXJuYW1lLmMsIGRsbHMva2VybmVsL2NwdS5jLAorCSAgZGxscy9rZXJuZWwvZG9zbWVtLmMsIGRsbHMva2VybmVsL2V4Y2VwdC5jLCBkbGxzL2tlcm5lbC9maWJlci5jLAorCSAgZGxscy9rZXJuZWwvZmlsZS5jLCBkbGxzL2tlcm5lbC9maWxlMTYuYywgZGxscy9rZXJuZWwvZm9ybWF0X21zZy5jLAorCSAgZGxscy9rZXJuZWwvZ2xvYmFsMTYuYywgZGxscy9rZXJuZWwvaGVhcC5jLAorCSAgZGxscy9rZXJuZWwva2VybmVsX21haW4uYywgZGxscy9rZXJuZWwvbGNmb3JtYXQuYywKKwkgIGRsbHMva2VybmVsL2xvY2FsMTYuYywgZGxscy9rZXJuZWwvbG9jYWxlLmMsIGRsbHMva2VybmVsL21vZHVsZS5jLAorCSAgZGxscy9rZXJuZWwvbmVfbW9kdWxlLmMsIGRsbHMva2VybmVsL25lX3NlZ21lbnQuYywKKwkgIGRsbHMva2VybmVsL29sZGNvbmZpZy5jLCBkbGxzL2tlcm5lbC9wYXRoLmMsIGRsbHMva2VybmVsL3Byb2Nlc3MuYywKKwkgIGRsbHMva2VybmVsL3Byb2ZpbGUuYywgZGxscy9rZXJuZWwvcHRocmVhZC5jLCBkbGxzL2tlcm5lbC9yZWxheTE2LmMsCisJICBkbGxzL2tlcm5lbC9yZXNvdXJjZS5jLCBkbGxzL2tlcm5lbC9zbm9vcDE2LmMsIGRsbHMva2VybmVsL3N5bmMuYywKKwkgIGRsbHMva2VybmVsL3N5c2xldmVsLmMsIGRsbHMva2VybmVsL3N5c3RlbS5jLCBkbGxzL2tlcm5lbC90aHVuay5jLAorCSAgZGxscy9rZXJuZWwvdGltZS5jLCBkbGxzL2tlcm5lbC91dHRodW5rLmMsIGRsbHMva2VybmVsL3ZpcnR1YWwuYywKKwkgIGRsbHMva2VybmVsL3ZvbHVtZS5jLCBkbGxzL2tlcm5lbC92eGQuYywgZGxscy9rZXJuZWwvd293dGh1bmsuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJLSBkb24ndCBpbmNsdWRlIHdpbnJlZy5oCisJLSBpbmNsdWRlIGtlcm5lbF9wcml2YXRlLmggdG8gZ2V0IGRlY2xhcmF0aW9uIGZvciBjb252ZXJ0X29sZF9jb25maWcoKQorCisJKiBzZXJ2ZXIvZmQuYywgc2VydmVyL2ZpbGUuYywgc2VydmVyL25hbWVkX3BpcGUuYywgc2VydmVyL3JlZ2lzdHJ5LmMsCisJICBzZXJ2ZXIvc2VyaWFsLmMsIHNlcnZlci90cmFjZS5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZW1vdmUgdW5uZWNlc3NhcnkgaW5jbHVkZXMuCisKKwkqIGRsbHMvbnRkbGwvbnRkbGwuc3BlYywgZGxscy9udGRsbC9zZWMuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCUphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCUltcGxlbWVudCBSdGxDb3B5U2VjdXJpdHlEZXNjcmlwdG9yLgorCisJKiBkbGxzL29sZTMyL3JwYy5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJQ2hhbmdlIHRoZSBSUEMgY29kZSB0byB1c2UgdGhlIHVuaWNvZGUgdmVyc2lvbnMgb2YgdGhlIENMU0lEICYKKwlyZWdpc3RyeSBmdW5jdGlvbnMuCisKKwkqIGRsbHMvb2xlMzIvY29tcG9iai5jLCBkbGxzL29sZTMyL2NvbXBvYmpfcHJpdmF0ZS5oLAorCSAgZGxscy9vbGUzMi90ZXN0cy8uY3ZzaWdub3JlLCBkbGxzL29sZTMyL3Rlc3RzL01ha2VmaWxlLmluLAorCSAgZGxscy9vbGUzMi90ZXN0cy9jb21wb2JqLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gQ2hhbmdlIHNvbWUgb2YgdGhlIHJlZ2lzdHJ5IGhlbHBlciBmdW5jdGlvbnMgdG8gdXNlIHRoZSB1bmljb2RlCisJICB2ZXJzaW9ucyBvZiB0aGUgQ0xTSUQgJiByZWdpc3RyeSBmdW5jdGlvbnMuCisJLSBSZWluZGVudCBDb0dldENsYXNzT2JqZWN0IGFuZCBvdXRwdXQgYW4gZXJyb3IgbWVzc2FnZSBpZiB0aGUgY2xhc3MKKwkgIGlzbid0IHJlZ2lzdGVyZWQuCisJLSBBZGQgdGVzdHMgZm9yIHRoZSB0b3VjaGVkIGZ1bmN0aW9ucy4KKworCSogZGxscy91c2VyL3Njcm9sbC5jOiBSZWluIEtsYXplcyA8d2lqbkB3YW5hZG9vLm5sPgorCUluIFNDUk9MTF9EcmF3U2Nyb2xsYmFyIGFsbG9jYXRlIHRoZSBpbnRlcm5hbCBpbmZvIGlmIG5lZWRlZC4KKworCSogaW5jbHVkZS93aW5udC5oOiBNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlBZGRlZCBQRl9OWF9FTkFCTEVEIGRlZmluaXRpb24uCisKKwkqIGluY2x1ZGUvd2luZ2RpLmg6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJRW5hYmxlIE1BS0VQT0lOVFMgdXNhZ2UgaW4gV2luZS4KKworCSogZGxscy9yaWNoZWQyMC93cml0ZXIuYzogS3J6eXN6dG9mIEZvbHRtYW4gPHdkZXZAZm9sdG1hbi5jb20+CisJLSBGaXggYSB3YXJuaW5nIGNhdXNlZCBieSB0aGUgVEFCIHBhdGNoLgorCS0gSW5pdGlhbGl6ZSAqcGNiIHRvIGEgbGFyZ2UgdmFsdWUgYmVmb3JlIGNhbGxpbmcgdGhlIHN0cmVhbS1vdXQKKwkgIGNhbGxiYWNrICh0byBtYWtlIGFwcGxpY2F0aW9ucyB0aGF0IGRvbid0IHNldCAqcGNiIGF0IGFsbCBoYXBweSkuCisJLSBEb24ndCBmbHVzaCB0aGUgb3V0cHV0IHN0cmVhbSB3aGVuIGVycm9yIGNvbmRpdGlvbiBpcyBzZXQuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlTdGVmYW4gTGVpY2h0ZXIgPFN0ZWZhbi5MZWljaHRlckBjYW1MaW5lLmNvbT4KKwlNYWtlIHNoZWxsMzIgdGVzdHMgbG9hZGFibGUgb24gTlQ0LgorCisJKiBkbGxzL250ZGxsL2ZpbGUuYzogUGllcnJlIGQnSGVyYmVtb250IDxzdGVnZWZpbkBmcmVlLmZyPgorCU1vdmUgdGhlIChNYWMgT1MgWCkgSU9LaXQgaGVhZGVycyB0byB0aGUgdG9wIG9mIHRoZSBmaWxlIHRvIHByZXZlbnQgYQorCWNvbXBpbGF0aW9uIGZhaWx1cmUuCisKKwkqIGRsbHMvd2luc29jay9zb2NrZXQuYzogVHJveSBSb2xsbyA8d2luZUB0cm95LnJvbGxvLm5hbWU+CisJQ2hhbmdlIFdTX2JpbmQgdG8gYWNjZXB0IGFuIHNhX2ZhbWlseSBvZiAwIGFzICJkb24ndCBjYXJlIi4KKworCSogdG9vbHMvd2luYXBpL21zdmNtYWtlcjoKKwlTYXVsaXVzIEtyYXN1Y2thcyA8c2F1bGl1cy5rcmFzdWNrYXNAaWVlZS5vcmc+CisJU3luYyBtc3ZjbWFrZXIgd2l0aCBtYWtlX2N0ZXN0cyB0byBnZW5lcmF0ZSB2YWxpZCBjb2RlLgorCisJKiBkbGxzL2ljY3ZpZC9pY2N2aWQuYywgZGxscy9pdHNzL3N0b3JhZ2UuYywgZGxscy9zaGVsbDMyL3NobG1lbnUuYywKKwkgIGRsbHMvc2hlbGwzMi9zeXN0cmF5LmMsIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmaWxlb3AuYywKKwkgIGRsbHMvd2lubW0vdGVzdHMvdGltZXIuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTWFrZSBmdW5jdGlvbnMgc3RhdGljLgorCisyMDA1LTA2LTE3ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiB0b29scy93aW5hcGkvd2luMTYuYXBpLCB0b29scy93aW5hcGkvd2luMzIuYXBpOgorCUZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCVVwZGF0ZSB0aGUgd2luKDE2fDMyKS5hcGkgZmlsZXMgdG8gbWF0Y2ggdGhlIGN1cnJlbnQgc291cmNlcy4KKworCSogZGxscy9tc2kvZXZlbnRzLmMsIGRsbHMvbXNpL21zaXByaXYuaCwgZGxscy9tc2kvcHJldmlldy5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQWxsb3cgY29udHJvbCBldmVudHMgdG8gcmV0dXJuIGNvZGVzIHRvIGhhbHQgdGhlIHByb2Nlc3Npbmcgb2YgZXZlbnQuCisJTmVlZGVkIGZvciB0aGUgU2V0VGFyZ2V0UGF0aCBFdmVudC4KKworCSogZGxscy9jcnlwdDMyL2NyeXB0MzIuc3BlYywgZGxscy9jcnlwdDMyL2VuY29kZS5jLCBpbmNsdWRlL3dpbmNyeXB0Lmg6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHRoZSBDcnlwdEVuY29kZU9iamVjdEV4KCkgcHJvdG90eXBlLgorCUZpeGVzIHdpbmFwaV9jaGVjayB3YXJuaW5ncy4KKworCSogZGxscy9vZGJjY3AzMi9vZGJjY3AzMi5jLCBkbGxzL29kYmNjcDMyL29kYmNjcDMyLnNwZWMsCisJICBpbmNsdWRlL29kYmNpbnN0LmgsIHRvb2xzL3dpbmFwaS93aW4zMi5hcGk6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHRoZSBwcm90b3R5cGVzIG9mIFNRTENyZWF0ZURhdGFTb3VyY2UqKCksIFNRTEdldFByaXZhdGVQcm9maWxlU3RyaW5nKigpLgorCUZpeCB0aGUgcmV0dXJuIHR5cGUgb2YgU1FMSW5zdGFsbGVyRXJyb3IqKCkgYW5kCisJU1FMUG9zdEluc3RhbGxlckVycm9yKigpLgorCUZpeCB0aGUgU1FMSW5zdGFsbERyaXZlcigpIGFuZCBTUUxJbnN0YWxsRHJpdmVyRXgoKSBwcm90b3R5cGVzIGluIHRoZQorCXNwZWMgZmlsZS4KKwlBZGQgYW4gb2RiY2NwMzIgc2VjdGlvbiB0byB3aW4zMi5hcGkgZm9yIHdpbmFwaV9jaGVjay4KKworCSogZGxscy9tc2kvaW5zdGFsbC5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUEgbG9uZyBvdmVyZHVlIGZpeCB0byBNU0lfU2V0VGFyZ2V0UGF0aC4gVGhpcyBzaG91bGQgZml4IGFuIGVycm9yIHdpdGgKKwlzb21lIGluc3RhbGxlcnMgdGhhdCB3aGVyZSB1bmFibGUgdG8gY2hhbmdlIHRoZSB0YXJnZXQgcGF0aC4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRmxlc2ggb3V0IHRoZSByZW1haW5pbmcga2V5cyBpbiBSZWdpc3RlclByb2R1Y3QuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvYXBwZGVmYXVsdHMuYywgcHJvZ3JhbXMvd2luZWNmZy9kcml2ZXVpLmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuYzoKKwlVcGRhdGVkIHBhdGhzIG9mIFNob3dEaXJTeW1saW5rcywgU2hvd0RvdEZpbGVzIGFuZCBWZXJzaW9uIG9wdGlvbnMuCisKKwkqIGRsbHMvbnRkbGwvZGlyZWN0b3J5LmM6CisJTW92ZWQgZGlyZWN0b3J5IG9wdGlvbnMgdG8gSEtDVVxTb2Z0d2FyZVxXaW5lLgorCisJKiBkbGxzL250ZGxsL3ZlcnNpb24uYzogTW92ZWQgdmVyc2lvbiBrZXkgdG8gSEtDVVxTb2Z0d2FyZVxXaW5lLgorCisJKiBkbGxzL3VzZXIvdGVzdHMvbXNnLmMsIGRsbHMveDExZHJ2L3dpbnBvcy5jOgorCVZpdGFsaXkgTWFyZ29sZW4gPHdpbmUtcGF0Y2hAa2lldmluZm8uY29tPgorCURlYWN0aXZhdGUgYWN0aXZlIHdpbmRvdyBpbiBTaG93V2luZG93KCxTV19ISURFKS4KKworCSogZGxscy9kZHJhdy90ZXN0cy9kc3VyZmFjZS5jLCBkbGxzL29sZWF1dDMyL3Rlc3RzL29sZXBpY3R1cmUuYywKKwkgIGRsbHMvb2xlYXV0MzIvdmFyaWFudC5jLCBkbGxzL3FjYXAvdjRsLmMsCisJICBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJQXNzb3J0ZWQgc3BlbGxpbmcgZml4ZXMuCisKKwkqIGRsbHMvZG1jb21wb3MvZG1jb21wb3NfbWFpbi5jLCBkbGxzL2RtaW1lL2RtaW1lX21haW4uYywKKwkgIGRsbHMvZG1zdHlsZS9kbXN0eWxlX21haW4uYywgZGxscy9kc291bmQvZHNvdW5kX21haW4uYywKKwkgIGRsbHMvb2xlcHJvMzIvb2xlcHJvMzJzdHVicy5jLCBkbGxzL3NoZWxsMzIvaWNvbmNhY2hlLmMsCisJICBkbGxzL3dpbm1tL21tc3lzdGVtLmM6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHdpbmFwaV9jaGVjayBkb2N1bWVudGF0aW9uIHdhcm5pbmdzLgorCisJKiBkbGxzL3VzZXIvZGVmd25kLmMsIGRsbHMvdXNlci93aW4uYzoKKwlWaXRhbGl5IE1hcmdvbGVuIDx3aW5lLXBhdGNoQGtpZXZpbmZvLmNvbT4KKwlTaG93T3duZWRQb3B1cHMgYW5kIFdNX1NIT1dXSU5ET1cgc2hvdWxkIGhhbmRsZSBub24tV1NfUE9QVVAgc3R5bGUKKwl3aW5kb3dzIGFzIHdlbGwuCisKKwkqIGRsbHMvbXNpL01ha2VmaWxlLmluLCBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvYWN0aW9uLmgsCisJICBkbGxzL21zaS9maWxlcy5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQnJlYWsgb3V0IGFsbCB0aGUgZmlsZSByZWxhdGVkIGFjdGlvbnMgYW5kIGhlbHBlciBmdW5jdGlvbnMgaW50bworCWZpbGVzLmMKKworCSogZGxscy9hY3RpdmVkcy9hY3RpdmVkc19tYWluLmMsIHRvb2xzL3dpbmFwaS93aW4zMi5hcGk6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHRoZSBGcmVlQURzTWVtKCkgcHJvdG90eXBlLgorCUFkZCBhbiBhY3RpdmVkcyBzZWN0aW9uIHRvIHdpbjMyLmFwaSBmb3Igd2luYXBpX2NoZWNrLgorCUZpeCBhIGRvY3VtZW50YXRpb24gd2FybmluZy4KKworCSogZGxscy9hZHZhcGkzMi9jcnlwdC5jLCBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCUZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCVByb3RlY3QgdGhlIHVuaXN0ZC5oIGFuZCBzeXMvc3RhdC5oIGluY2x1ZGVzLgorCUluY2x1ZGUgY29uZmlnLmguCisJRml4ZXMgd2FybmluZ3MgcmVwb3J0ZWQgYnkgd2luYXBpX2NoZWNrLgorCisJKiBkbGxzL250ZGxsL3Rlc3RzL2luZm8uYzogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJUmVtb3ZlIGFuIHVubmVlZGVkIHZhcmlhYmxlIGluIHRlc3RfcXVlcnlfdGltZW9mZGF5KCkuCisJUmVuYW1lIGEgdmFyaWFibGUgdG8gJ2lzX250JyB0byBtYWtlIGl0cyBtZWFuaW5nIGNsZWFyZXIuCisKKwkqIGRsbHMvcXVhcnR6L3ZpZGVvcmVuZGVyZXIuYzogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJUmVtb3ZlIHVubmVlZGVkIE5VTEwgY2FzdC4KKworCSogdG9vbHMvd2luYXBpL2NvbmZpZy5wbTogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJUmVtb3ZlIGEgY2hlY2sgZm9yIG9ic29sZXRlIGRpcmVjdG9yeSBhbmQgZmlsZSBzcGVjaWFsIGNhc2VzLgorCisJKiB0b29scy93aW5hcGkvd2luYXBpX2NoZWNrOiBGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAZnJlZS5mcj4KKwlXZSBzaG91bGQgc2V0IHRoZSBnbG9iYWwgJGFsbF9tb2R1bGVzIHZhcmlhYmxlIG90aGVyd2lzZSB0aGVyZSdzIG5vCisJcG9pbnQuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJVXNlIGEgc2ltcGxlciBleHByZXNzaW9uIGZvciB0aGUgIlJpY2hFZGl0MjBXIiBzdHJpbmcgdG8gd29ya2Fyb3VuZAorCWNvbXBpbGVyIGJ1Zy4KKworCSogZGxscy9rZXJuZWwvY3B1LmM6IE1hcmN1cyBNZWlzc25lciA8bWVpc3NuZXJAc3VzZS5kZT4KKwlTcGVjaWZ5IGVub3VnaCBidWZmZXIgZm9yIGlkW10gKDIwIGNoYXJzIGFyZSBub3QgZW5vdWdoKS4KKworCSogZGxscy9hZHZhcGkzMi9yZWdpc3RyeS5jLCBkbGxzL2tlcm5lbC9jb21wdXRlcm5hbWUuYywKKwkgIGRsbHMva2VybmVsL2NwdS5jLCBkbGxzL2tlcm5lbC9leGNlcHQuYywgZGxscy9rZXJuZWwvbG9jYWxlLmMsCisJICBkbGxzL2tlcm5lbC9vbGRjb25maWcuYywgZGxscy9rZXJuZWwvcGF0aC5jLCBkbGxzL2tlcm5lbC9wcm9jZXNzLmMsCisJICBkbGxzL2tlcm5lbC9yZWxheTE2LmMsIGRsbHMva2VybmVsL3ZvbHVtZS5jLCBkbGxzL250ZGxsL2Nkcm9tLmMsCisJICBkbGxzL250ZGxsL2NyaXRzZWN0aW9uLmMsIGRsbHMvbnRkbGwvZGVidWdidWZmZXIuYywKKwkgIGRsbHMvbnRkbGwvZGVidWd0b29scy5jLCBkbGxzL250ZGxsL2RpcmVjdG9yeS5jLCBkbGxzL250ZGxsL2Vudi5jLAorCSAgZGxscy9udGRsbC9lcnJvci5jLCBkbGxzL250ZGxsL2V4Y2VwdGlvbi5jLCBkbGxzL250ZGxsL2hhbmRsZXRhYmxlLmMsCisJICBkbGxzL250ZGxsL2hlYXAuYywgZGxscy9udGRsbC9sYXJnZV9pbnQuYywgZGxscy9udGRsbC9sb2FkZXIuYywKKwkgIGRsbHMvbnRkbGwvbG9hZG9yZGVyLmMsIGRsbHMvbnRkbGwvbnQuYywgZGxscy9udGRsbC9vbS5jLAorCSAgZGxscy9udGRsbC9wcm9jZXNzLmMsIGRsbHMvbnRkbGwvcmVnLmMsIGRsbHMvbnRkbGwvcmVsYXkuYywKKwkgIGRsbHMvbnRkbGwvcmVzb3VyY2UuYywgZGxscy9udGRsbC9ydGwuYywgZGxscy9udGRsbC9ydGxiaXRtYXAuYywKKwkgIGRsbHMvbnRkbGwvcnRsc3RyLmMsIGRsbHMvbnRkbGwvc2VjLmMsIGRsbHMvbnRkbGwvc2lnbmFsX3Bvd2VycGMuYywKKwkgIGRsbHMvbnRkbGwvc2lnbmFsX3NwYXJjLmMsIGRsbHMvbnRkbGwvc3RyaW5nLmMsIGRsbHMvbnRkbGwvdGltZS5jLAorCSAgZGxscy9udGRsbC92ZXJzaW9uLmMsIGRsbHMvbnRkbGwvdmlydHVhbC5jLCBkbGxzL250ZGxsL3djc3RyaW5nLmMsCisJICBkbGxzL3dpbmVkb3MvaW9wb3J0cy5jLCBkbGxzL3dpbmVkb3MvcHBkZXYuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlVc2UgSEFORExFIGluc3RlYWQgb2YgSEtFWSBpbiB0aGUgTlQgQVBJLgorCisJKiBkbGxzL2dkaS9kaWIuYzogTWljaGFlbCBLYXVmbWFubiA8aGFsbG9AbWljaGFlbC1rYXVmbWFubi5jaD4KKwlJbml0aWFsaXplIG1vcmUgc3RydWN0dXJlIG1lbWJlcnMsIGluY2x1ZGluZyBiaVNpemVJbWFnZSBpZiBiaXRzID09CisJTlVMTCBhbmQgYmlCaXRDb3VudCAhPSAwLgorCisJKiBkbGxzL250ZGxsL3RocmVhZC5jOiBUaGUgVEVCIGRvZXNuJ3QgbmVlZCBleGVjdXRlIHBlcm1pc3Npb25zLgorCisJKiBkbGxzL3VzZXIvdXNlcjMyLnNwZWM6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJRGRlQ3JlYXRlU3RyaW5nSGFuZGxlQS9XIHRha2VzIGEgcG9pbnRlciB0byBhIGNvbnN0IHN0cmluZywKKwlhY2NvcmRpbmdseSBmaXggdGhlIHNwZWMgZW50cmllcy4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUmVtb3ZlIHRyYWlsaW5nIGJhY2tzbGFzaCBmcm9tIERPUyBwYXRocyBpbiBHZXREaXNwbGF5TmFtZU9mLgorCisJKiBwcm9ncmFtcy93aW5lZmlsZS9Dcy5yYzogTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwlDb3JyZWN0aW9ucyBvZiBDemVjaCB0cmFuc2xhdGlvbiBieSBEZW56aWwuCisKKwkqIGRsbHMvbnRkbGwvb20uYywgaW5jbHVkZS93aW50ZXJubC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIE50IGRpcmVjdG9yeSBmdW5jdGlvbnMuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBsb2FkZXIvTWFrZWZpbGUuaW46CisJTW92ZSB0aGUgbG9hZGVyIGEgYml0IGhpZ2hlciBpbiBtZW1vcnkgdG8gbGVhdmUgbW9yZSBzcGFjZSBmb3IgbnRkbGwKKwlhbmQga2VybmVsMzIuCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydHlwZS5jLCBkbGxzL3VybG1vbi90ZXN0cy91cmwuYywKKwkgIGRsbHMvdXNlci90ZXN0cy93aW4uYywgZGxscy93aW5lZG9zL3NvdW5kYmxhc3Rlci5jLAorCSAgZGxscy93aW5tbS90ZXN0cy90aW1lci5jLCBkbGxzL3dpbm1tL3Rlc3RzL3dhdmUuYywKKwkgIGRsbHMvd2luc29jay90ZXN0cy9zb2NrLmMsIGRsbHMvd2ludGFiMzIvd2ludGFiMzIuYywKKwkgIGRsbHMveDExZHJ2L3hpbS5jLCBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJUmVtb3ZlIHNvbWUgLVdzdHJpY3QtcHJvdG90eXBlcyB3YXJuaW5ncy4KKworCSogZGxscy9kM2Q4L2QzZDhfcHJpdmF0ZS5oLCBkbGxzL2QzZDgvZGlyZWN0eC5jLAorCSAgZGxscy9kM2Q5L2QzZDlfcHJpdmF0ZS5oLCBkbGxzL2QzZDkvZGV2aWNlLmMsIGRsbHMvZDNkOS9kaXJlY3R4LmMsCisJICBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsIGluY2x1ZGUvd2luZS93aW5lZDNkX2ludGVyZmFjZS5oLAorCSAgaW5jbHVkZS93aW5lL3dpbmVkM2RfdHlwZXMuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQ2hhbmdlIHRoZSB3YXkgY2FwcyBhcmUgc2VudCBiZXR3ZWVuIGQzZDkvZDNkOCBhbmQgd2luZWQzZCB0byBtYWtlIGl0CisJZWFzaWVyIGZvciB3aW5lZDNkIHRvIHN1cHBvcnQgYWRkaXRpb25hbCB2ZXJzaW9ucyBvZiBEaXJlY3QzRC4KKworCSogZGxscy9zaGVsbDMyL2ljb25jYWNoZS5jOiBNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlFeHRyYWN0QXNzb2NpYXRlZEljb25BIG5lZWRzIHRvIGFsbG9jYXRlIGVub3VnaCBzcGFjZSB0byBoYXZlIEVBSVcKKwlmaWxsIGluIGxwSWNvblBhdGhXLgorCisJKiBkbGxzL21zaS9hY3Rpb24uaDogTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJUmVtb3ZlIGNzemJzIGZyb20gbXNpL2FjdGlvbi5oLgorCisJKiBkbGxzL2FkdmFwaTMyL3NlY3VyaXR5LmM6IEphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCUZvcndhcmQgR2V0UHJpdmF0ZS9LZXJuZWxPYmplY3RTZWN1cml0eSB0byBOdFF1ZXJ5U2VjdXJpdHlPYmplY3QuCisKKwkqIGluY2x1ZGUvd2luZGVmLmg6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJRml4ZWQgUE9JTlRTIGRlZmluaXRpb24gZm9yIFdPUkRTX0JJR0VORElBTiBjYXNlLgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmM6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlBZGQgYSBmZXcgdHJhY2VzIGFuZCBjb21tZW50cy4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQWRkIG1vcmUgbWlzc2luZyBkZWZzLgorCisyMDA1LTA2LTE2ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL250ZGxsL3JlbGF5LmMsIHRvb2xzL3dpbmVidWlsZC9pbXBvcnQuYzoKKwlNYWtlIGltcG9ydCB0aHVua3MgcG9zaXRpb24taW5kZXBlbmRlbnQgdG8gYXZvaWQgdGV4dCByZWxvY2F0aW9ucy4KKworCSogZGxscy93aW5lcHMvdHJ1ZXR5cGUuYzoKKwlVc2UgdGhlIHN0YW5kYXJkIGZvbnQgcGF0aCB0byBsb29rIGZvciBUcnVlVHlwZSBmb250cy4KKworCSogZGxscy93aW5lZDNkL2RpcmVjdHguYywgaW5jbHVkZS9kM2Q5Y2Fwcy5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlSZW5hbWUgX0QzRENBUFM5Lk1heFBpeGVsU2hhZGVyVmFsdWUgdG8gdGhlIGNvcnJlY3QKKwlfRDNEQ0FQUzkuUGl4ZWxTaGFkZXIxeE1heFZhbHVlLgorCisJKiBkbGxzL21zaS9NYWtlZmlsZS5pbiwgZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2luc3RhbGwuYzoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUJyZWFrIG91dCBhbGwgdGhlIHRvcCBsZXZlbCBhcGlzIGludG8gaW5zdGFsbC5jLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL2RyaXZldWkuYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlIaWRlIDwtPiBTaG93IEFkdmFuY2VkLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIHN1cHBvcnQgZm9yIHRoZSBNU0kgTWFza0VkaXQgY29udHJvbC4KKworCSogZGxscy9kM2Q5L3ZlcnRleGRlY2xhcmF0aW9uLmM6CisJT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCURpc2FibGUgdGhlIGNyZWF0aW9uIG9mIGludmFsaWQgdmVydGV4IGRlY2xhcmF0aW9ucyBpbiBkM2Q5IHByZXZlbnRpbmcKKwlzb21lIGFwcGxpY2F0aW9ucyBmcm9tIGNyYXNoaW5nLgorCisJKiBkbGxzL2QzZDkvdGV4dHVyZS5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQWRkZWQgcmVsYXkgdHJhY2luZyB0byB0ZXh0dXJlLgorCisJKiBpbmNsdWRlL2QzZDl0eXBlcy5oOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJRGVmaW5lIHNvbWUgbW9yZSBmbGFncworCisJKiBkbGxzL2FkdmFwaTMyL3Rlc3RzL3JlZ2lzdHJ5LmMsIHNlcnZlci9yZWdpc3RyeS5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIEFsbCB2ZXJzaW9ucyBvZiBXaW5kb3dzIGlnbm9yZSB0aGUgYWNjZXNzIHJpZ2h0cyBvZiB0aGUgcGFzc2VkIGluCisJICBwYXJlbnQgaGFuZGxlIHRvIFJlZ0NyZWF0ZUtleShFeCkuCisJLSBBZGQgYSB0ZXN0IHRoYXQgc2hvd3MgdGhpcy4KKworCSogZGxscy9tc2kvY3VzdG9tLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQSBzaW1wbGUgY2xlYW51cCB0byBvbmx5IHRyYWNrIHRoZSB0ZW1wIGZpbGUgaWYgd2UgbmVlZCB0byBoYXZlIGl0CisJbGF5aW5nIGFyb3VuZCBiZWNhdXNlIHRoZSBhY3Rpb24gaXMgZ29pbmcgb24gYXN5bmNocm9ub3VzbHkuIE90aGVyd2lzZQorCWNsZWFuIHVwIHRoZSB0ZW1wIGZpbGUgYXMgdGhlIGFjdGlvbiBmaW5pc2hlcy4KKworCSogcHJvZ3JhbXMvd2luZWNmZy93aW5lY2ZnLmM6CisJVXNlIFJlZ09wZW5LZXkgaW5zdGVhZCBvZiBSZWdPcGVuS2V5RXggdG8gYXZvaWQgdHJvdWJsZSB3aXRoIGhhbmRsZQorCWFjY2VzcyByaWdodHMuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvbWFpbi5jLCBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvd2luZWNmZy5oLCBwcm9ncmFtcy93aW5lY2ZnL3gxMWRydmRsZy5jOgorCUZpeGVkIHJlZ2lzdHJ5IHBhdGhzIHRvIGVkaXQgdGhlIHJlYWwgY29uZmlnLCBhbmQgcmVtb3ZlZCB0aGUgc3RhcnR1cAorCXdhcm5pbmcgbWVzc2FnZS4KKworCSogZGxscy94MTFkcnYveDExZHJ2X21haW4uYzoKKwlNb3ZlZCBjb25maWd1cmF0aW9uIGtleXMgdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXFgxMSBEcml2ZXIuCisKKwkqIGRsbHMvbnRkbGwvbG9hZG9yZGVyLmM6CisJTW92ZWQgY29uZmlndXJhdGlvbiBrZXlzIHRvIEhLQ1VcU29mdHdhcmVcV2luZVxEbGxPdmVycmlkZXMuCisKKwkqIGRsbHMvbXNpL3VwZ3JhZGUuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgVUkgbWVzc2FnZXMgdG8gRmluZFJlbGF0ZWRQcm9kdWN0cy4KKwlSZWR1Y2UgdW5uZWVkZWQgaW5jbHVkZXMuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwktIGltcGxlbWVudCBlbmNvZGluZyBhbmQgZGVjb2Rpbmcgb2YgZW51bWVyYXRlZCB0eXBlcywgdW5zaWduZWQKKwkgIGludGVnZXJzLCBvY3RldCBzdHJpbmdzLCBhbmQgYml0IHN0cmluZ3MKKwktIGNvcnJlY3QgbGVuZ3RoIGhhbmRsaW5nCisJLSB0aGUgdXN1YWwgdGVzdHMKKworCSogcHJvZ3JhbXMvd2luZWJvb3Qvd2luZWJvb3QuYywgcHJvZ3JhbXMvd2luZWNmZy9kcml2ZS5jLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9kcml2ZWRldGVjdC5jLCBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuaDoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIC1Xc3RyaWN0LXByb3RvdHlwZXMgd2FybmluZ3MuCisKKwkqIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jOgorCUdlbmVyYXRlIHByb3BlciBQSUMgY29kZSBmb3IgQ0FMTDMyX0NCQ2xpZW50LgorCisJKiBkbGxzL21zdmNydC9jcHAuYzoKKwlTdG9yZSB2dGFibGVzIGluIHRoZSBkYXRhIHNlZ21lbnQgdG8gYXZvaWQgdGV4dCByZWxvY2F0aW9ucy4KKworCSogZGxscy9jb21jdGwzMi90ZXN0cy90cmVldmlldy5jLCBkbGxzL2NvbWN0bDMyL3VwZG93bi5jLAorCSAgZGxscy9tc2h0bWwvdmlldy5jLCBkbGxzL250ZGxsL3Rlc3RzL3J0bC5jLAorCSAgZGxscy9udGRsbC90ZXN0cy9ydGxiaXRtYXAuYywgZGxscy9yc2FiYXNlL3Rlc3RzL3JzYWJhc2UuYywKKwkgIGRsbHMvcnNhZW5oL3Rlc3RzL3JzYWVuaC5jOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJRml4IHNvbWUgLVdzdHJpY3QtcHJvdG90eXBlcyB3YXJuaW5ncy4KKworCSogZGxscy9tc2kvTWFrZWZpbGUuaW4sIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9hY3Rpb24uaCwKKwkgIGRsbHMvbXNpL2NsYXNzZXMuYzoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUJyZWFrIG91dCBhbGwgdGhlIGNsYXNzIHJlZ2lzdHJhdGlvbiBhY3Rpb25zIGludG8gY2xhc3Nlcy5jLiBUaGlzCisJaW5jbHVkZXMgUmVnaXN0ZXJDbGFzc0luZm8sIFJlZ2lzdGVyUHJvZ0lkcywgUmVnaXN0ZXJFeHRlbnNpb25zIGFuZAorCVJlZ2lzdGVyTUlNRVR5cGVzLgorCisJKiBpbmNsdWRlL3dpbmNyeXB0Lmg6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlEZWZpbmUgc29tZSBtb3JlIE9JRCBzdHJpbmdzLgorCisJKiBkbGxzL250ZGxsL3JlbGF5LmMsIGluY2x1ZGUvd2luZS9wb3J0LmgsIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jOgorCVN0b3JlIGEgcmVsYXRpdmUgcG9pbnRlciBmb3IgcmVnaXN0cnkgZW50cnkgcG9pbnRzIHRvIGF2b2lkIHNvbWUgdGV4dAorCXJlbG9jYXRpb25zLgorCisJKiBkbGxzL250ZGxsL250LmMsIGRsbHMvbnRkbGwvb20uYywgaW5jbHVkZS93aW50ZXJubC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQvZml4IG1vcmUgTlQgbmF0aXZlIEFQSSBkZWNsYXJhdGlvbnMuCisKKwkqIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYywgZGxscy9udGRsbC9oZWFwLmMsCisJICBkbGxzL29sZWF1dDMyL3Rlc3RzL3R5cGVsaWIuYywgZGxscy93aW5tbS90ZXN0cy9taXhlci5jLAorCSAgZGxscy93aW5tbS93aW5lYWxzYS9hdWRpby5jLCBsaWJzL3VuaWNvZGUvbWJ0b3djLmMsCisJICBwcm9ncmFtcy9tc2lleGVjL21zaWV4ZWMuYywgcHJvZ3JhbXMvd2luZXRlc3QvdXRpbC5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggc29tZSBkZWNsYXJhdGlvbiBhbmQgd3JpdGUgc3RyaW5nIHdhcm5pbmdzLgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGxsaW5rLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIGZvcndhcmQgQWRkUmVmLCBSZWxlYXNlLCBRdWVyeUludGVyZmFjZSBhbmQgR2V0Q2xhc3NJRCB0byBpbnRlcm5hbAorCSAgaW1wbGVtZW50YXRpb25zCisJLSBpbXBsZW1lbnQgR2V0Q2xhc3NJRCBwcm9wZXJseQorCisJKiB0b29scy93aW5lYnVpbGQvc3BlYzMyLmM6CisJT3V0cHV0IHRoZSBleHBvcnRlZCBuYW1lcyBhcyBhIEMgc3RyaW5nIHNvIHRoYXQgdGhleSBlbmQgdXAgaW4gdGhlCisJY29ycmVjdCBzZWN0aW9uLgorCisJKiBkbGxzL250ZGxsL3JlbGF5LmM6CisJVXNlIHRoZSBERUZJTkVfUkVHU19FTlRSWVBPSU5UIG1hY3JvIHRvIGRlZmluZSByZWdpc3RlciBmdW5jdGlvbnMKKwlpbnN0ZWFkIG9mIGRvaW5nIGl0IGJ5IGhhbmQuCisKKwkqIGRsbHMva2VybmVsL3ZlcnNpb24uYzoKKwlSZW1vdmVkIHRoZSBET1MgdmVyc2lvbiBvcHRpb24sIHNwZWNpZnlpbmcgdGhlIFdpbmRvd3MgdmVyc2lvbiBzaG91bGQKKwliZSBlbm91Z2ggdG8gYWNoaWV2ZSB0aGUgc2FtZSByZXN1bHRzLgorCisJKiBkbGxzL3NoZWxsMzIvTWFrZWZpbGUuaW4sIGRsbHMvc2hlbGwzMi9tZW1vcnlzdHJlYW0uYywKKwkgIGRsbHMvc2hlbGwzMi9zaGVsbDMyX21haW4uaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJU0hDcmVhdGVTdHJlYW1PbkZpbGVXIGlzIGltcGxlbWVudGVkIGluIHNobHdhcGksIHNvIHdlIGRvbid0IG5lZWQKKwlhbm90aGVyIGltcGxlbWVudGF0aW9uIGluIHNoZWxsMzIuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbGxpbmsuYywgZGxscy9zaGx3YXBpL2lzdHJlYW0uYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJU3dpdGNoIElTaGVsbExpbmsgdG8gdXNlIHNobHdhcGkuU0hDcmVhdGVTdHJlYW1PbkZpbGVXLgorCisJKiBpbmNsdWRlL3dpbnJlZy5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVmaW5lIFJlZ09wZW5Vc2VyQ2xhc3Nlc1Jvb3QuCisKKwkqIGluY2x1ZGUvd2lubnQuaDogU3RldmVuIEVkd2FyZHMgPHN0ZXZlbl9lZDQxNTNAeWFob28uY29tPgorCVJlbW92ZWQgZHVwbGljYXRlZCBBTFBIQSBwbGF0Zm9ybSBjb250ZXh0IGRlZmluaXRpb25zLgorCUFkZGVkIEFSTSBjb250ZXh0IGRlZmluaXRpb25zLgorCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVRlc3QgR2V0QXR0cmlidXRlc09mIG9uIHRoZSBNeUNvbXB1dGVyIHNoZWxsZm9sZGVyLgorCisJKiBkbGxzL250ZGxsL250LmM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJUHJvY2Vzc05hbWUgc2hvdWxkIGJlIHdpdGhvdXQgdGhlIHBhdGguCisKKwkqIGRsbHMvbnRkbGwvdGVzdHMvaW5mby5jOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCVcySzMgcmV0dXJucyBTVEFUVVNfSU5WQUxJRF9IQU5ETEUgaW5zdGVhZCBvZiBTVEFUVVNfQUNDRVNTX1ZJT0xBVElPTi4KKworCSogZGxscy9tc3ZpZGVvL21zdmlkZW9fbWFpbi5jOgorCU1hYXJ0ZW4gTGFua2hvcnN0IDxtLmIubGFua2hvcnN0QGdtYWlsLmNvbT4KKwktIEltcGxlbWVudGVkIElDU2VxQ29tcHJlc3NGcmFtZXtTdGFydCwsRW5kfQorCS0gTW9kaWZpZWQgSUNDb21wcmVzc29yRnJlZSB0byBwcm9wZXJseSBmcmVlIHRoZSBpbml0aWFsaXplZCB2YXJpYWJsZXMKKwkgIGZyb20gSUNTZXFDb21wcmVzc0ZyYW1lU3RhcnQuCisKKwkqIHRvb2xzL3dpbmUuaW5mOiBNYWFydGVuIExhbmtob3JzdCA8bS5iLmxhbmtob3JzdEBnbWFpbC5jb20+CisJUmVnaXN0ZXIgcWNhcC5kbGwgb24gd2luZSBpbml0aWFsaXNhdGlvbi4KKworMjAwNS0wNi0xNSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9jb21jdGwzMi9wcm9wc2hlZXQuYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlGb3IgbW9kYWwgcHJvcHNoZWV0cyB3ZSBzaG91bGQgcnVuIG91ciBvd24gbWVzc2FnZSBsb29wIHJhdGhlciB0aGFuCisJdXNlIGEgbW9kYWwgZGlhbG9nYm94IGp1c3QgbGlrZSBXaW5kb3dzIGRvZXMuICBUaGlzIGhlbHBzIGFwcHMgdGhhdAorCXN1YmNsYXNzIHRoZSBwcm9wc2hlZXQncyB3bmRwcm9jLgorCisJKiBkbGxzL21zaS9NYWtlZmlsZS5pbiwgZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2FjdGlvbi5oLAorCSAgZGxscy9tc2kvaGVscGVycy5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQnJlYWsgb3V0IGFsbCB0aGUgaGVscGVyIGZ1bmN0aW9ucyBpbnRvIGhlbHBlcnMuYy4KKworCSogTWFrZWZpbGUuaW4sIGRvY3VtZW50YXRpb24vTWFrZWZpbGUuaW46CisJTW92ZWQgdGhlIEFQSSBkb2MgcnVsZXMgdG8gdGhlIGRvY3VtZW50YXRpb24gbWFrZWZpbGUuCisKKwkqIHRvb2xzL2JpbjJyZXMuYywgdG9vbHMvc2ZudDJmbnQuYywgdG9vbHMvd2lkbC9oZWFkZXIuYywKKwkgIHRvb2xzL3dpZGwvcHJveHkuYywgdG9vbHMvd2lkbC9zZXJ2ZXIuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgYnkgbWFraW5nIGZ1bmN0aW9ucyBzdGF0aWMuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJQWRkZWQgdGVzdHMgZm9yIFNIR2V0UGF0aEZyb21JRExpc3QuCisKKwkqIGRsbHMvc2hlbGwzMi9jbGFzc2VzLmM6IEh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJVW5xdW90ZSB0aGUgaWNvbiBmaWxlIHBhdGggaWYgaXQncyBxdW90ZWQuCisKKwkqIGRsbHMvdXNlci90ZXN0cy93aW4uYzogRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgYSB0ZXN0IGNhc2UgZm9yIFdNX1tMfFJ8TXxYXUJVVFRPTkRCTENMSyBnZW5lcmF0aW9uIGJlaGF2aW91ci4KKworCSogZGxscy9wc2FwaS9wc2FwaV9tYWluLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJLSBSZXBsYWNlZCBzZXJ2ZXIgcmVxdWVzdHMgaW4gRW51bVByb2Nlc3NlcyBieSBuYXRpdmUgQVBJcworCS0gRml4ZWQgdGhpcmQgcGFyYW1ldGVyIChzaG91bGQgcmV0dXJuIHRoZSBhbW91bnQgb2YgdXNlZCBhbmQgbm90CisJICBuZWVkZWQgbWVtb3J5KS4KKworCSogZG9jdW1lbnRhdGlvbi8uY3ZzaWdub3JlLCBkb2N1bWVudGF0aW9uL01ha2VmaWxlLmluLAorCSAgZG9jdW1lbnRhdGlvbi93aW5lLm1hbi5pbiwgbG9hZGVyLy5jdnNpZ25vcmUsIGxvYWRlci9NYWtlZmlsZS5pbiwKKwkgIGxvYWRlci93aW5lLm1hbi5pbjoKKwlNb3ZlZCB0aGUgd2luZSBtYW5wYWdlIHRvIHRoZSBsb2FkZXIvIGRpcmVjdG9yeS4KKworCSogZGxscy91c2VyL2NvbWJvLmMsIGluY2x1ZGUvd2ludXNlci5oOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbXBsZW1lbnQgR2V0Q29tYm9Cb3hJbmZvIGFuZCBDQl9HRVRDT01CT0JPWElORk8uCisKKwkqIGluY2x1ZGUvd2luZS90ZXN0LmgsIHRvb2xzL21ha2VfY3Rlc3RzLmM6CisJQXZvaWQgc3RhdGljIGZvcndhcmQgZGVjbGFyYXRpb24gdGhhdCBkb2Vzbid0IHdvcmsgb24gTVNWQy4KKworCSogZGxscy9zaGVsbDMyL3NoZWxsbGluay5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJUmVtb3ZlIHNvbWUgdXNlcyBvZiB3aW5lL3VuaWNvZGUuaCBmdW5jdGlvbnMuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlBZGQgZW5jb2RlL2RlY29kZSBzdXBwb3J0IGZvciBtdWx0aS1ieXRlIGludGVnZXJzLgorCisJKiBkbGxzL3VzZXIvdGVzdHMvY2xhc3MuYywgZGxscy91c2VyL3Rlc3RzL2VkaXQuYywKKwkgIGRsbHMvdXNlci90ZXN0cy9saXN0Ym94LmMsIGRsbHMvdXNlci90ZXN0cy9zeXNwYXJhbXMuYywKKwkgIGRsbHMvdXNlci90ZXN0cy93aW4uYywgZGxscy9yc2FlbmgvcnNhZW5oLmMsCisJICBkbGxzL3JzYWVuaC90ZXN0cy9yc2FlbmguYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9vbGUzMi90ZXN0cy9zdGdfcHJvcC5jLCBkbGxzL29sZTMyL3Rlc3RzL3N0b3JhZ2UzMi5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggZGVjbGFyYXRpb25zIGluIHRoZSB0ZXN0cy4KKworCSogZGxscy9hZHZhcGkzMi9zZWN1cml0eS5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJTVNETiBzdGF0ZXMgdGhhdCBEdXBsaWNhdGVUb2tlbiBzaG91bGQgY3JlYXRlIGEgbmV3IHRva2VuIHdpdGggdGhlCisJVE9LRU5fUVVFUlkgfCBUT0tFTl9JTVBFUlNPTkFURSByaWdodHMsIG5vdCAwLgorCisJKiBkbGxzL3NoZWxsMzIvcGlkbC5jLCBkbGxzL3NoZWxsMzIvcGlkbC5oOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlJbXBsZW1lbnQgU0hHZXRQYXRoRnJvbUlETGlzdCBiYXNlZCBvbiBHZXREaXNwbGF5TmFtZU9mLgorCisJKiBkbGxzL250ZGxsL250LmMsIGRsbHMvbnRkbGwvdGVzdHMvaW5mby5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJT25seSBleGFjdCBidWZmZXIgc2l6ZSBnaXZlcyBTVEFUVVNfU1VDQ0VTUy4KKworMjAwNS0wNi0xNCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZG9jdW1lbnRhdGlvbi9NYWtlZmlsZS5pbiwgZG9jdW1lbnRhdGlvbi93aW5lLmNvbmYubWFuLAorCSAgZG9jdW1lbnRhdGlvbi93aW5lLm1hbi5pbjoKKwlHZXQgcmlkIG9mIHRoZSB3aW5lLmNvbmYgbWFuIHBhZ2UuCisKKwkqIHNlcnZlci9wcm9jZXNzLmM6CisJUmVtb3ZlIHRoZSBwcm9jZXNzIGxvY2tzIGluIHByb2Nlc3Nfa2lsbGVkLCBub3QgcHJvY2Vzc19kZXN0cm95LgorCisJKiBkbGxzL2tlcm5lbC9yZWxheTE2LmMsIGRsbHMvbnRkbGwvcmVsYXkuYywgZGxscy91c2VyL3NweS5jOgorCU1vdmVkIGRlYnVnZ2luZyBjb25maWcgb3B0aW9ucyB0byBIS0NVXFNvZnR3YXJlXFdpbmVcRGVidWcuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUmVwbGFjZSBtYWdpYyBlcnJvciBjb25zdGFudC4KKworCSogZGxscy9tYXBpMzIvdGVzdHMvcHJvcC5jOgorCVNhdWxpdXMgS3Jhc3Vja2FzIDxzYXVsaXVzLmtyYXN1Y2thc0BpZWVlLm9yZz4KKwlBdm9pZCBhY2Nlc3NpbmcgdW5pbml0aWFsaXplZCBkYXRhIG9uIFdpbk1FIChiYXNlZCBvbiBhbiBvbGQgcGF0Y2ggYnkKKwlGZXJlbmMgV2FnbmVyKS4KKworCSogZGxscy91c2VyL25vbmNsaWVudC5jLCBkbGxzL3VzZXIvd2luLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlSZW1vdmUgaW5jbHVkZSAiY3Vyc29yaWNvbi5oIiBmcm9tIG5vbmNsaWVudC5jIGFuZCB3aW4uYy4KKworCSogZGxscy9zaGVsbDMyL2NsaXBib2FyZC5jLCBkbGxzL3NoZWxsMzIvc2hlbGxsaW5rLmMsCisJICBkbGxzL3NoZWxsMzIvc2hsZXhlYy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlVc2UgU0hHZXRQYXRoRnJvbUlETGlzdCBpbnN0ZWFkIG9mIFNIRUxMMzJfR2V0UGF0aEZyb21JRExpc3QuCisKKwkqIHNlcnZlci9oYW5kbGUuYzoKKwlDYWxsIHRoZSBjbG9zZV9oYW5kbGUgbm90aWZpY2F0aW9uIGZvciBhbGwgb2JqZWN0cyB3aGVuIHJlbGVhc2luZyBhCisJaGFuZGxlIHRhYmxlLgorCisJKiBzZXJ2ZXIvdG9rZW4uYywgc2VydmVyL3RyYWNlLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggc2l6ZSB1c2VkIHRvIHZhbGlkYXRlIHRoZSBzaWRzIGluIGFjZXMuCisKKwkqIGRsbHMveDExZHJ2L2luaXQuYzogUmVtb3ZlZCB0aGUgY2hlY2sgZm9yIHRoZSBvbGQgUmVzb2x1dGlvbiBvcHRpb24uCisKKwkqIGRsbHMveDExZHJ2L3BhbGV0dGUuYywgZGxscy94MTFkcnYveDExZHJ2LmgsIGRsbHMveDExZHJ2L3gxMWRydl9tYWluLmM6CisJTWVyZ2VkIHBhbGV0dGUgb3B0aW9uIHByb2Nlc3NpbmcgaW50byB0aGUgbWFpbiBjb25maWd1cmF0aW9uIGNvZGUuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfZGVza3RvcC5jLCBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVJldHVybiB0aGUgY29ycmVjdCBhdHRyaWJ1dGVzIGZvciB0aGUgZGVza3RvcCBmb2xkZXIuCisJQ29ycmVzcG9uZGluZyB0ZXN0cy4KKworCSogc2VydmVyL3Rva2VuLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgVG9rZW5UeXBlIGF0dHJpYnV0ZSB0byBzcGVjaWZ5IHdoZXRoZXIgdGhlIHRva2VuIGlzIGEgcHJpbWFyeSBvcgorCWltcGVyc29uYXRpb24gdG9rZW4uCisKKwkqIGRsbHMvdXNlci9zeXNwYXJhbXMuYzoKKwlVc2UgYSBiZXR0ZXIgbG9jYXRpb24gdGhhbiBIS0NVXFdpbmUgZm9yIHNhdmluZyB0aGUgdGVtcG9yYXJ5CisJcGFyYW1ldGVycy4KKworCSogZGxscy94MTFkcnYveGZvbnQuYzoKKwlBdm9pZCByZXBlYXRlZGx5IG9wZW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24gcmVnaXN0cnkga2V5LgorCisJKiBkbGxzL2lwaGxwYXBpL2lwaGxwYXBpX21haW4uYywgZGxscy9rZXJuZWwvY29tcHV0ZXJuYW1lLmMsCisJICBkbGxzL25ldGFwaTMyL25idC5jOgorCU1vdmVkIG5ldHdvcmsgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzIHRvIEhLQ1VcU29mdHdhcmVcV2luZVxOZXR3b3JrLgorCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUFkZGVkIHRlc3RzIHRvIGNvbXBhcmUgU0hHZXRQYXRoRnJvbUlETGlzdCBhbmQgR2V0RGlzcGxheU5hbWVPZi4KKworCSogZGxscy9zaGx3YXBpL3Rlc3RzL3BhdGguYywgZGxscy9zaGx3YXBpL3Rlc3RzL3N0cmluZy5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXhlcyBmb3IgLVdtaXNzaW5nLWRlY2xhcmF0aW9uIGFuZCAtV3dyaXRlLXN0cmluZyB3YXJuaW5ncy4KKworCSogZGxscy9kaW5wdXQvam95c3RpY2tfbGludXguYzoKKwlNb3ZlZCBjb25maWcgcGFyYW1ldGVycyB0byBIS0NVXFNvZnR3YXJlXFdpbmVcRGlyZWN0SW5wdXQuCisKKwkqIGRsbHMvZHNvdW5kL2Rzb3VuZF9tYWluLmM6CisJTW92ZWQgY29uZmlnIHBhcmFtZXRlcnMgdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXERpcmVjdFNvdW5kLgorCisJKiBkbGxzL2dkaS9mcmVldHlwZS5jOgorCU1vdmVkIGFsbCBmb250IGNvbmZpZyBwYXJhbWV0ZXJzIHRvIEhLQ1VcU29mdHdhcmVcV2luZVxGb250cy4KKwlSZXBsYWNlZCB0aGUgRm9udERpcnMga2V5IGVudW1lcmF0aW9uIGJ5IGEgc2ltcGxlIFBhdGggdmFsdWUuCisKKwkqIGRsbHMvbnRkbGwvY2Ryb20uYzogSXZhbiBMZW8gUHVvdGkgPGl2YW5sZW9AZ21haWwuY29tPgorCVJlaW1wbGVtZW50IElPQ1RMX1NDU0lfUEFTU19USFJPVUdIX0RJUkVDVCBhbmQKKwlJT0NUTF9TQ1NJX1BBU1NfVEhST1VHSCBvbiB0b3Agb2YgdGhlIGxpbnV4IHNjc2kgZHJpdmVyLgorCisJKiBkbGxzL29sZWF1dDMyL3Rlc3RzL3ZhcnRlc3QuYzoKKwlTYXVsaXVzIEtyYXN1Y2thcyA8c2F1bGl1cy5rcmFzdWNrYXNAaWVlZS5vcmc+CisJQ2hhbmdlIChsb25nIGxvbmcpIHRvIChMT05HTE9ORykgdG8gY29tcGlsZSB3aXRoIE1TVkMuCisKKwkqIGRsbHMvbnRkbGwvcHJvY2Vzcy5jLCBkbGxzL250ZGxsL3Rlc3RzL2luZm8uYzoKKwlQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCVJldHVybiBTVEFUVVNfSU5WQUxJRF9JTkZPX0NMQVNTIGZvciBub24taW1wbGVtZW50ZWQgY2xhc3Nlcy4KKwlSZXR1cm4gU1RBVFVTX0FDQ0VTU19WSU9MQVRJT04gaWYgbm8gYnVmZmVyIGdpdmVuLgorCUFkZGVkIHRlc3RzIGZvciBQcm9jZXNzQmFzaWNJbmZvcm1hdGlvbi4KKworCSogZGxscy91c2VyL2VkaXQuYywgZGxscy91c2VyL3Rlc3RzL2VkaXQuYzoKKwlMYXVyaSBUdWxtaW4gPHR1bG1pbkBnbWFpbC5jb20+CisJLSBFTV9DSEFSRlJPTVBPUyBzaG91bGQgcmV0dXJuIHRoZSBjbG9zZXN0IGNoYXIgKGNsaWNraW5nIG9uIHRoZSBmaXJzdAorCSAgaGFsZiBvZiBhIGNoYXJhY3RlciBzaG91bGQgcmV0dXJuIGN1cnJlbnQgY2hhciBhbmQgY2xpY2tpbmcgb24gdGhlCisJICBzZWNvbmQgaGFsZiBzaG91bGQgcmV0dXJuIG5leHQgY2hhcikKKwktIEVNX1BPU0ZST01DSEFSIHNob3VsZCByZXR1cm4gLTEgaWYgY2hhcmFjdGVyIGluZGV4IGlzIGdyZWF0ZXIgb3IKKwkgIGVxdWFsIHRvIHRleHQgbGVuZ3RoCisKKwkqIGRsbHMvZ2RpL2dkaW9iai5jOiBSZW1vdmVkIHRoZSBUd2Vhay5Gb250cyBjb25maWd1cmF0aW9uIGhhY2suCisKKwkqIGRsbHMveDExZHJ2L2JpdGJsdC5jOgorCUdldCByaWQgb2YgdGhlIFBlcmZlY3RHcmFwaGljcyBvcHRpb24sIHRoYXQncyBub3QgcmVhbGx5IHVzZWZ1bC4KKworCSogZGxscy93aW5lZG9zL2Rvc2NvbmYuYzoKKwlIYXJkY29kZSB0aGUgbG9jYXRpb24gb2YgY29uZmlnLnN5cywgbm8gbmVlZCBmb3IgYSBjb25maWcgcGFyYW1ldGVyCisJZm9yIHRoYXQuCisKKwkqIGluY2x1ZGUvd2luYmFzZS5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWRkIGEgY291cGxlIG9mIG1pc3NpbmcgZnVuY3Rpb25zLgorCisJKiBkbGxzL250ZGxsL250LmMsIGluY2x1ZGUvd2ludGVybmwuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVjbGFyZSBwb3J0IGZ1bmN0aW9ucyBhbmQgZml4IHByb3RvdHlwZXMuCisKKwkqIGRsbHMva2VybmVsL2NvbXB1dGVybmFtZS5jLCBkbGxzL2tlcm5lbC9jb25zb2xlLmMsCisJICBkbGxzL2tlcm5lbC9lbnZpcm9uLmMsIGRsbHMva2VybmVsL2tlcm5lbF9tYWluLmMsCisJICBkbGxzL2tlcm5lbC9rZXJuZWxfcHJpdmF0ZS5oLCBkbGxzL2tlcm5lbC9sY2Zvcm1hdC5jLAorCSAgZGxscy9rZXJuZWwvcHJvY2Vzcy5jLCBkbGxzL2tlcm5lbC9wcm9maWxlLmMsIGRsbHMva2VybmVsL3RocmVhZC5jLAorCSAgZGxscy9rZXJuZWwvdmVyc2lvbi5jLCBkbGxzL2tlcm5lbC93aW44N2VtLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCB3YXJuaW5ncyBmcm9tIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMuCisKKwkqIHNlcnZlci9maWxlLmgsIHNlcnZlci9oYW5kbGUuaCwgc2VydmVyL3Byb2Nlc3MuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQ2FsbCByZW1vdmVfcHJvY2Vzc19sb2NrcyB3aGVuIGEgcHJvY2VzcyBlbmRzLCBmaXggZGVjbGFyYXRpb25zLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy9wcm9maWxlLmMsIGRsbHMva2VybmVsL3Rlc3RzL3RocmVhZC5jLAorCSAgZGxscy9rZXJuZWwvdGVzdHMvdGltZS5jLCBkbGxzL2tlcm5lbC90ZXN0cy90aW1lci5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggZGVjbGFyYXRpb24gd2FybmluZ3MgaW4gdGhlIHRlc3QgY2FzZXMuCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydGVzdC5jLCBkbGxzL29sZWF1dDMyL3ZhcmZvcm1hdC5jOgorCU1pY2hhZWwgU3RlZmFuaXVjIDxtc3RlZmFuaUByZWRoYXQuZGU+CisJLSBGaXggVmFyRm9ybWF0IGZvciBmb3JtYXRzIHRoYXQgbWl4ICcwJyBhbmQgJyMnIGluIHRoZSB3aG9sZSBudW1iZXIKKwkgIHBhcnQuCisJLSBGaXggVmFyRm9ybWF0IGZvciBuZWdhdGl2ZSBleHBvbmVudCBmb3JtYXRzLgorCS0gQWRkIHRlc3RzIGZvciB0aGUgYWJvdmUgKyBhIGNvdXBsZSBvZiAidG9kb193aW5lIidzLgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGxsaW5rLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgdGhlIElDb250ZXh0TWVudSBpbnRlcmZhY2UgdG8gdGhlIFNoZWxsTGluayBvYmplY3QuCisKKwkqIGRsbHMvY3J5cHQzMi9jcnlwdDMyLnNwZWMsIGRsbHMvY3J5cHQzMi9tYWluLmMsCisJICBkbGxzL2NyeXB0MzIvdGVzdHMvLmN2c2lnbm9yZSwgZGxscy9jcnlwdDMyL3Rlc3RzL01ha2VmaWxlLmluLAorCSAgZGxscy9jcnlwdDMyL3Rlc3RzL21haW4uYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQWRkIENlcnRBbGdJZFRvT0lEIGFuZCBDZXJ0T0lEVG9BbGdJZCwgd2l0aCB0ZXN0cy4KKworCSogZGxscy9kbWxvYWRlci9sb2FkZXJzdHJlYW0uYzoKKwlBbGV4IFZpbGxhY+1zIExhc3NvIDxhX3ZpbGxhY2lzQHBhbG9zYW50by5jb20+CisJQXZvaWQgb25lIG1vcmUgYWNjZXNzIHRvIHBjYlJlYWQuCisKKzIwMDUtMDYtMTMgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvd2luaW5ldC9mdHAuYywgZGxscy93aW5pbmV0L2h0dHAuYywgZGxscy93aW5pbmV0L2ludGVybmV0LmMsCisJICBkbGxzL3dpbmluZXQvaW50ZXJuZXQuaCwgZGxscy93aW5pbmV0L3Rlc3RzL2h0dHAuYywKKwkgIGRsbHMvd2luaW5ldC91cmxjYWNoZS5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggc29tZSB3YXJuaW5ncy4KKworCSogZGxscy9kbWxvYWRlci9sb2FkZXJzdHJlYW0uYzoKKwlBbGV4IFZpbGxhY+1zIExhc3NvIDxhX3ZpbGxhY2lzQHBhbG9zYW50by5jb20+CisJUHJldmVudCBjcmFzaCBvbiBJRGlyZWN0TXVzaWNMb2FkZXJSZXNvdXJjZVN0cmVhbV9JU3RyZWFtX1JlYWQuCisKKwkqIGRsbHMvbXNpL21zaS5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUEgIjEiIGlzIHJldHVybmVkIG5vdCBhIDEgZm9yIEFzc2lnbm1lbnRUeXBlLiBBbHNvIGFzIGEgYml0IG1vcmUgdG8KKwl0aGUgRklYTUUgbWVzc2FnZS4KKworCSogZGxscy9zaGVsbDMyL3NoZWxsbGluay5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50IFNoZWxsTGluaydzIElTaGVsbEV4dEluaXQ6OkluaXRpYWxpemUoKSBtZXRob2QuCisKKwkqIGRsbHMvZDNkOC9kM2Q4X21haW4uYywgZGxscy9kaW5wdXQvam95c3RpY2tfbGludXguYywKKwkgIGRsbHMvZHNvdW5kL2Rzb3VuZF9tYWluLmMsIGRsbHMvZ2RpL2RyaXZlci5jLCBkbGxzL2dkaS9mcmVldHlwZS5jLAorCSAgZGxscy9nZGkvZ2Rpb2JqLmMsIGRsbHMvZ2RpL3ByaW50ZHJ2LmMsCisJICBkbGxzL2lwaGxwYXBpL2lwaGxwYXBpX21haW4uYywgZGxscy9rZXJuZWwvY29tcHV0ZXJuYW1lLmMsCisJICBkbGxzL2tlcm5lbC9vbGRjb25maWcuYywgZGxscy9rZXJuZWwvcmVsYXkxNi5jLAorCSAgZGxscy9rZXJuZWwvdmVyc2lvbi5jLCBkbGxzL2tlcm5lbC92b2x1bWUuYywgZGxscy9tcHIvcHdjYWNoZS5jLAorCSAgZGxscy9uZXRhcGkzMi9uYnQuYywgZGxscy9udGRsbC9kaXJlY3RvcnkuYywgZGxscy9udGRsbC9sb2Fkb3JkZXIuYywKKwkgIGRsbHMvbnRkbGwvcmVsYXkuYywgZGxscy9udGRsbC92ZXJzaW9uLmMsIGRsbHMvcnNhZW5oL3JzYWVuaC5jLAorCSAgZGxscy9zaGRvY3Z3L3NoZG9jdndfbWFpbi5jLCBkbGxzL3VzZXIvc3B5LmMsIGRsbHMvdXNlci9zeXNwYXJhbXMuYywKKwkgIGRsbHMvdXNlci91c2VyX21haW4uYywgZGxscy93aW5lZDNkL3dpbmVkM2RfbWFpbi5jLAorCSAgZGxscy93aW5lZG9zL2Rvc2NvbmYuYywgZGxscy93aW5lZG9zL2lvcG9ydHMuYywgZGxscy93aW5lZG9zL3BwZGV2LmMsCisJICBkbGxzL3dpbmVwcy9pbml0LmMsIGRsbHMvd2luZXBzL3RydWV0eXBlLmMsIGRsbHMvd2luZXBzL3R5cGUxYWZtLmMsCisJICBkbGxzL3dpbm1tL2xvbHZsZHJ2LmMsIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYywKKwkgIGRsbHMvd2luc3Bvb2wvaW5mby5jLCBkbGxzL3gxMWRydi9iaXRibHQuYywgZGxscy94MTFkcnYvaW5pdC5jLAorCSAgZGxscy94MTFkcnYvcGFsZXR0ZS5jLCBkbGxzL3gxMWRydi94MTFkcnZfbWFpbi5jLAorCSAgZGxscy94MTFkcnYveGZvbnQuYywgcHJvZ3JhbXMvdGFza21nci90YXNrbWdyLmMsCisJICBwcm9ncmFtcy93aW5lYnJvd3Nlci9tYWluLmMsIHByb2dyYW1zL3dpbmVkYmcvd2luZWRiZy5jLAorCSAgcHJvZ3JhbXMvd2luZW1lbnVidWlsZGVyL3dpbmVtZW51YnVpbGRlci5jLCBwcm9ncmFtcy93aW5lbWluZS9tYWluLmM6CisJQWRkZWQgbWFnaWMgY29tbWVudHMgdG8gYWxsIFdpbmUtc3BlY2lmaWMgcmVnaXN0cnkgYWNjZXNzZXMgdG8gbWFrZQorCXRoZW0gZWFzaWVyIHRvIGdyZXAuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvYXBwZGVmYXVsdHMuYywgcHJvZ3JhbXMvd2luZWNmZy9hdWRpby5jLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9kcml2ZXVpLmMsIHByb2dyYW1zL3dpbmVjZmcvbGlicmFyaWVzLmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuYywgcHJvZ3JhbXMvd2luZWNmZy93aW5lY2ZnLmgsCisJICBwcm9ncmFtcy93aW5lY2ZnL3gxMWRydmRsZy5jOgorCUNoYW5nZWQgcmVnaXN0cnkgYWNjZXNzIGZ1bmN0aW9ucyB0byB1c2UgbW9yZSBtZWFuaW5nZnVsIG5hbWVzLgorCisJKiBkbGxzL3dpbmVkb3MvaW50MTEuYzoKKwlSZW1vdmVkIHJlZmVyZW5jZXMgdG8gb2Jzb2xldGUgY29uZmlndXJhdGlvbiBlbnRyaWVzLgorCisJKiBkbGxzL3VzZXIvY3Vyc29yaWNvbi5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVdoZW4gbG9hZGluZyBhIGJpdG1hcCB3ZSBzaG91bGQgc3RyZXRjaCB0aGUgaW1hZ2UgdG8gdGhlIHJlcXVlc3RlZAorCXNpemUuCisKKwkqIGRsbHMvY29tY3RsMzIvdGVzdHMvLmN2c2lnbm9yZSwgZGxscy9jb21jdGwzMi90ZXN0cy9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvY29tY3RsMzIvdGVzdHMvdHJlZXZpZXcuYzoKKwlLcnp5c3p0b2YgRm9sdG1hbiA8d2RldkBmb2x0bWFuLmNvbT4KKwlUZXN0IHdoZW4gVFZOX1NFTENIQU5HSU5HIGFuZCBUVk5fU0VMQ0hBTkdFRCBhcmUgcmVhbGx5IHNlbnQuCisKKwkqIGRsbHMvZGRyYXcvdGVzdHMvZDNkLmMsIGRsbHMvZGRyYXcvdGVzdHMvZGRyYXdtb2Rlcy5jLAorCSAgZGxscy9kZHJhdy90ZXN0cy9kc3VyZmFjZS5jLCBkbGxzL2tlcm5lbC90ZXN0cy9maWxlLmMsCisJICBkbGxzL29sZTMyL3Rlc3RzL3Byb3B2YXJpYW50LmMsIGRsbHMvb2xlMzIvdGVzdHMvc3RnX3Byb3AuYywKKwkgIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydGVzdC5jLCBkbGxzL29sZWF1dDMyL3Rlc3RzL3ZhcnR5cGUuYywKKwkgIGRsbHMvdXJsbW9uL3Rlc3RzL3VybC5jLCBkbGxzL3dpbm1tL3Rlc3RzL21peGVyLmMsCisJICBpbmNsdWRlL3dpbmUvdGVzdC5oOgorCU1vdmVkIHRoZSBOT05BTUVMRVNTVU5JT04vU1RSVUNUIG1hY3JvcyB0byB3aW5lL3Rlc3QuaCBzbyB0aGF0IHRoZXkKKwljYW4gYmUgdXNlZCBpbiBhbGwgdGhlIHRlc3QuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbGxpbmsuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCS0gYWRkIHRoZSBJU2hlbGxFeHRJbml0IGludGVyZmFjZSB0byB0aGUgU2hlbGxMaW5rIG9iamVjdAorCS0gdXNlIGlubGluZSBmdW5jdGlvbnMgcmF0aGVyIHRoYW4gbWFjcm9zIHRvIHJlc29sdmUgdGhlCisJICBpbXBsZW1lbnRhdGlvbiBwb2ludGVyIGZyb20gYW4gaW50ZXJmYWNlIHBvaW50ZXIKKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvTWFrZWZpbGUuaW4sIGRsbHMvYWN0aXZlZHMvLmN2c2lnbm9yZSwKKwkgIGRsbHMvYWN0aXZlZHMvTWFrZWZpbGUuaW4sIGRsbHMvYWN0aXZlZHMvYWN0aXZlZHMuc3BlYywKKwkgIGRsbHMvYWN0aXZlZHMvYWN0aXZlZHNfbWFpbi5jOgorCURldGxlZiBSaWVrZW5iZXJnIDxkcmlla2VuYmVyZ0B3ZWIuZGU+CisJQWRkZWQgYWN0aXZlZHMuZGxsIHdpdGggc29tZSBzdHVicyB0byBnZXQgdGhlIG5hdGl2ZSBwcmludHVpLmRsbCB0bworCWxvYWQuCisKKwkqIHByb2dyYW1zL3JwY3NzL2VwbWFwX3NlcnZlci5jLCBwcm9ncmFtcy9ycGNzcy9ucF9zZXJ2ZXIuYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL2xpY2Vuc2UuYywgcHJvZ3JhbXMvd2luZWZpbGUvc3BsaXRwYXRoLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCU1vcmUgd2FybmluZyBmaXhlcy4KKworCSogZGxscy9jcnlwdDMyL2VuY29kZS5jLCBkbGxzL2NyeXB0MzIvdGVzdHMvZW5jb2RlLmM6CisJSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCS0gZW5jb2RlL2RlY29kZSBYNTA5X05BTUVzIGZvciBzaW1wbGUgc3RyaW5nIGVuY29kaW5ncywgd2l0aCB0ZXN0cworCS0gbW9yZSB0ZXN0cyBhbmQgc29tZSBmaXhlcyB0byBvdGhlciB0eXBlcworCisJKiBkbGxzL2NvbWN0bDMyL3RyZWV2aWV3LmM6IEtyenlzenRvZiBGb2x0bWFuIDx3ZGV2QGZvbHRtYW4uY29tPgorCURvbid0IHNlbmQgVFZOX1NFTENIQU5HSU5HIG5vciBUVk5fU0VMQ0hBTkdFRCBpZiB0aGUgc2FtZSBpdGVtIGlzCisJc2VsZWN0ZWQgYWdhaW4uCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmM6IE1hcnRpbiBGdWNocyA8bWFydGluLWZ1Y2hzQGdteC5uZXQ+CisJUmVtb3ZlIGR1cGxpY2F0ZSB0b29sYmFyIGJ1dHRvbi4KKworCSogZGxscy9xdWFydHovTWFrZWZpbGUuaW4sIGRsbHMvcXVhcnR6L3ZpZGVvcmVuZGVyZXIuYzoKKwlDaHJpc3RpYW4gQ29zdGEgPHRpdGFuLmNvc3RhQHdhbmFkb28uZnI+CisJQWRkZWQgd2luZG93IHN1cHBvcnQgdG8gdGhlIHZpZGVvIHJlbmRlcmVyOgorCS0gcmVwbGFjZWQgZGRyYXcgY29kZSBieSB3aW5kb3cgY29kZS4KKwktIGltcGxlbWVudGVkIElCYXNpY1ZpZGVvIGFuZCBJVmlkZW9XaW5kb3cgaW50ZXJmYWNlcy4KKworCSogZGxscy9udGRsbC9udC5jLCBkbGxzL250ZGxsL3Rlc3RzL2luZm8uYywgaW5jbHVkZS93aW50ZXJubC5oOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJRml4ZWQgc2l6ZSBvZiBvdXIgU1lTVEVNX1RJTUVPRkRBWV9JTkZPUk1BVElPTiBzdHJ1Y3QuCisJRml4ZWQgcmV0dXJuIGNvZGVzIGFuZCBSZXR1cm5MZW5ndGgvYnVmZmVyIGZvcgorCVN5c3RlbVRpbWVPZkRheUluZm9ybWF0aW9uLgorCUFkZGVkIHRlc3RzIGZvciBTeXN0ZW1UaW1lT2ZEYXlJbmZvcm1hdGlvbi4KKworCSogZGxscy9udGRsbC9zZWMuYzogSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJSW1wbGVtZW50IFJ0bEFic29sdXRlVG9TZWxmUmVsYXRpdmVTRC4KKworCSogcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuYzogTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwktIHVzZSBjb25zdCBwYXJhbWV0ZXIgaW4gZmluZF9lbnRyeV9zaGVsbCgpCisJLSByZW5hbWUgRXhlY3V0ZURpYWxvZ1duZFByb2coKSB0byBFeGVjdXRlRGlhbG9nRGxnUHJvYygpCisJLSByZW1vdmUgb2xkIGNvbW1lbnQKKwktIGFkZCBtaXNzaW5nIGNhbGwgdG8gQ3R4TWVudV9yZXNldCgpCisKKwkqIGluY2x1ZGUvYWNsYXBpLmgsIGluY2x1ZGUvbnRzZWNhcGkuaCwgaW5jbHVkZS93aW5iYXNlLmgsCisJICBpbmNsdWRlL3dpbnN2Yy5oLCBpbmNsdWRlL3dpbnVzZXIuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVjbGFyZSBzb21lIG1pc3NpbmcgZnVuY3Rpb25zLgorCisJKiBkbGxzL250ZGxsL3Rlc3RzL3J0bC5jLCBkbGxzL250ZGxsL3Rlc3RzL3J0bHN0ci5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggd2FybmluZ3MgaW4gdGVzdHMsIHJlbW92ZSBwb2ludGxlc3MgY29tbWVudHMuCisKKwkqIGRsbHMvbnRkbGwvbnQuYywgZGxscy9udGRsbC9udGRsbC5zcGVjLCBkbGxzL250ZGxsL3N5bmMuYywKKwkgIGluY2x1ZGUvd2ludGVybmwuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWRkIGFuZCBmaXggZnVuY3Rpb24gcHJvdG90eXBlcy4KKworCSogZGxscy9vbGUzMi90ZXN0cy9wcm9wdmFyaWFudC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJRml4IFByb3BWYXJpYW50IHRlc3RzIG9uIFdpbmRvd3MgMjAwMCBhbmQgYWJvdmUuCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCVJlbW92ZSBuZWVkbGVzcyBjYWxsIHRvIFNsZWVwLgorCisJKiBkbGxzL29sZTMyL3JlZ3N2ci5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBBZGQgcmVnaXN0cnkgZW50cmllcyBmb3IgbG9jYWwtb25seSBPTEUgaW50ZXJmYWNlcy4KKwktIENoYW5nZSBJVW5rbm93biB0byBsb2NhbCBpbnRlcmZhY2UuCisKKwkqIGRsbHMvcmljaGVkMjAvZWRpdG9yLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSaWNoZWRpdCBjbGFzc2VzIHNob3VsZCBiZSBnbG9iYWwuCisKKwkqIGRsbHMvaXBobHBhcGkvaWZlbnVtLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggc2l6ZSBwYXNzZWQgdG8gbHN0cmNweW5BIGZ1bmN0aW9uIC0gc2l6ZW9mKHN0cmluZykgPT0gNCBub3QgMTYgYXMKKwluZWVkZWQuCisKKwkqIGluY2x1ZGUvd2luZ2RpLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlDb3JyZWN0IEdkaUlzUGxheU1ldGFmaWxlREMgcHJvdG90eXBlLgorCisJKiBkbGxzL2FkdmFwaTMyL3NlcnZpY2UuYywgZGxscy9hZHZhcGkzMi90ZXN0cy9jcnlwdF9tZDQuYywKKwkgIGRsbHMvYWR2YXBpMzIvdGVzdHMvY3J5cHRfbWQ1LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVNpbGVuY2Ugc29tZSAtV21pc3NpbmctZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBpbmNsdWRlL3dpbmNyeXB0Lmg6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlBZGQvY29ycmVjdCBhIGZldyBtb3JlIGRlZmluaXRpb25zLgorCisJKiBpbmNsdWRlL2ljbS5oOiBIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlEZWNsYXJlIG1pc3NpbmcgZnVuY3Rpb25zLgorCisJKiBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYzogTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJQ29ycmVjdGVkIHN0cmluZyBsZW5ndGggbWV0aG9kIGluIElUeXBlTGliOjpJc05hbWUoKSBhbmQgRmluZE5hbWUoKQorCWZvciBMUE9MRVNUUiB0eXBlLgorCisyMDA1LTA2LTEyICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYzogQWRyaWFuIEhhcnZleSA8YWpoYXJ2ZXlAbXlyZWFsYm94LmNvbT4KKwlBZGRlZCBzeXMvdHlwZXMuaCB0byBjb25maWd1cmUgY2hlY2sgZm9yIHZpZGVvZGV2LmguCisKKwkqIGRsbHMvcmljaGVkMjAvd3JpdGVyLmM6IEtyenlzenRvZiBGb2x0bWFuIDx3ZGV2QGZvbHRtYW4uY29tPgorCUVtaXQgXHR4IGZvciB1c2VyLWRlZmluZWQgVEFCcy4KKworCSogcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuYzogTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwlSZW1vdmUgdW5uZWNlc3NhcnkgcGFpbnQgY29kZS4KKworCSogZGxscy9vcGVuZ2wzMi93Z2xfZXh0LmM6IExpb25lbCBVbG1lciA8bGlvbmVsLnVsbWVyQGZyZWUuZnI+CisJUmVtb3ZlIHNvbWUgRklYTUVzIGFuZCByZXBsYWNlIHRoZW0gd2l0aCBUUkFDRXMuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmg6IE1hcnRpbiBGdWNocyA8bWFydGluLWZ1Y2hzQGdteC5uZXQ+CisJTW92ZSBfX1dJTkVfXyBpZmRlZiBkaXJlY3RpdmUuCisKKwkqIGRsbHMvbnRkbGwvc2VjLmM6IEphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCVJlbW92ZSBzdHViIHN0YXR1cy4KKwlDaGVjayBmb3IgY29ycmVjdCByZXZpc2lvbiB2YWx1ZS4KKworCSogZGxscy9udGRsbC9udGRsbC5zcGVjLCBpbmNsdWRlL3dpbnRlcm5sLmg6CisJSmFtZXMgSGF3a2lucyA8dHJ1aWtlbkBnbWFpbC5jb20+CisJQWRkIFJ0bEFuc2lDaGFyVG9Vbmljb2RlQ2hhciBkZWZpbml0aW9uLgorCUNvcnJlY3Qgc3R1YiBzdGF0dXMgb2YgUnRsQW5zaUNoYXJUb1VuaWNvZGVDaGFyLgorCisJKiBkbGxzL3NldHVwYXBpL3F1ZXVlLmMsIGRsbHMvc2V0dXBhcGkvc2V0dXBhcGkuc3BlYzoKKwlNYXR0aGV3IERhdmlzb24gPG1qZDc3QGNhbS5hYy51az4KKwlTdHViIG91dCB0aGUgZXJyb3IgZGlhbG9nIGZ1bmN0aW9ucy4KKwlNb2RpZnkgdGhlIGRlZmF1bHQgY2FsbGJhY2tzIHRvIGNhbGwgdGhlc2UgZm9yIERlbGV0ZSBhbmQgUmVuYW1lCisJZXJyb3JzLgorCU1vZGlmeSB0aGUgZGVmYXVsdCBjYWxsYmFja3MgdG8gaWdub3JlIGZpbGUgbWlzc2luZyBlcnJvcnMgd2hlbgorCWRlbGV0aW5nIGZpbGVzLgorCisJKiBkbGxzL250ZGxsL250ZGxsLnNwZWMsIGRsbHMvbnRkbGwvc2VjLmMsIGluY2x1ZGUvd2ludGVybmwuaDoKKwlFcmljIEtvaGwgPGVyaWMua29obEB0LW9ubGluZS5kZT4KKwlJbXBsZW1lbnQgUnRsQWRqdXN0UHJpdmlsZWdlLgorCisJKiBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jOiBNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCUZpeCBmaWxlIHNpemUgaW4gcHJvcGVydHkgZGlhbG9nIGJ5IHVzaW5nIF9zdHByaW50ZigpIGluc3RlYWQgb2YKKwl3c3ByaW50ZigpLgorCisJKiBkbGxzL3JpY2hlZDIwL2VkaXRvci5jLCBkbGxzL3JpY2hlZDIwL3BhaW50LmMsIGRsbHMvcmljaGVkMjAvc3R5bGUuYzoKKwlLcnp5c3p0b2YgRm9sdG1hbiA8d2RldkBmb2x0bWFuLmNvbT4KKwktIGFkZGVkIHN1cHBvcnQgZm9yIFx1bG5vbmUgKHR1cm5pbmcgdW5kZXJsaW5lIG9mZikKKwktIHN1cHBvcnQgZm9yIGJhc2ljIHN1YnNjcmlwdCBhbmQgc3VwZXJzY3JpcHQKKwktIHVudGVzdGVkIHN1cHBvcnQgZm9yIHRleHQgb2Zmc2V0CisKKwkqIGRsbHMvZGRyYXcvZDNkX3ByaXZhdGUuaCwgZGxscy9kZHJhdy9kM2RfdXRpbHMuYywKKwkgIGRsbHMvZGRyYXcvZGV2aWNlX29wZW5nbC5jLCBkbGxzL2RkcmF3L2dsX2FwaS5oLAorCSAgZGxscy9kZHJhdy9nbF9wcml2YXRlLmgsIGRsbHMvZGRyYXcvb3BlbmdsX3ByaXZhdGUuaCwKKwkgIGRsbHMvZGRyYXcvdmVydGV4YnVmZmVyLmM6CisJTGlvbmVsIFVsbWVyIDxsaW9uZWwudWxtZXJAZnJlZS5mcj4KKwlTdXBwb3J0IGFsbCBwb3NzaWJsZSB0ZXh0dXJlIGNvb3JkaW5hdGVzIHNpemVzLgorCisJKiBkbGxzL29sZWF1dDMyL3Vzcm1hcnNoYWwuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gRG9uJ3QgcHJpbnQgb3V0IGNyeXB0aWMgbWVzc2FnZSBpZiBJRGlzcGF0Y2ggb3IgSVVua25vd24gb2JqZWN0IGlzCisJICBqdXN0IE5VTEwuCisJLSBwdUFyZ0VyciBpcyBhIHJlZiBwb2ludGVyIHNvIHdlIGhhdmUgdG8gcHJvdmlkZSBhIGR1bW15IHBvaW50ZXIgaWYKKwkgIGl0IGlzIE5VTEwuCisJLSBGYWlsIGdyYWNlZnVsbHkgYW5kIG5vdGlmeSBjYWxsZXIgaWYgd2UgcmFuIG91dCBvZiBtZW1veSBvciBpZgorCSAgdmFyaWFudCBjb3B5aW5nIGZhaWxlZC4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9yZWdpc3RyeS5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJRml4IHJlZ2lzdHJ5IHRlc3QgZm9yIFdpbjl4IGJ5IHNraXBwaW5nIGEgc2VjdGlvbiB0aGF0IGZhaWxzLCBidXQKKwlzdWNjZWVkcyBvbiBOVC4KKworCSogZGxscy9zaGRvY3Z3L2V2ZW50cy5jLCBkbGxzL3NoZG9jdncvb2xlb2JqZWN0LmMsIGRsbHMvc2hkb2N2dy9zaGRvY3Z3Lmg6CisJTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJTW92ZSBzdGF0aWMgdmFyaWFibGVzIG91dCBvZiBoZWFkZXIgZmlsZSwgYWxzbyB0aGUgbG9jYWwgaW50ZXJmYWNlCisJaW1wbGVtZW50YXRpb25zLgorCisJKiBkbGxzL2Rzb3VuZC90ZXN0cy9jYXB0dXJlLmM6IFJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJTWFrZSBkc291bmQgdGVzdHMgbG9hZGFibGUgb24gTlQ0LgorCisJKiBkbGxzL3gxMWRydi94MTFkcnYuaDogR2xlbm4gV3Vyc3RlciA8Z3d1cnN0ZXJAc2NzLmNhcmxldG9uLmNhPgorCUFkZCBkZWNsYXJhdGlvbiBvZiBYMTFEUlZfR2V0RElCQ29sb3JUYWJsZSB0byBhdm9pZCBjb21waWxlIHdhcm5pbmcuCisKKwkqIGRsbHMva2VybmVsL3BhdGguYzogRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJQWRkIGEgd29ya2Fyb3VuZCBmb3IgV2luOXggYXBwcyB3aGljaCBwYXNzIHRoZSBwYXJhbWV0ZXJzIGZvcgorCUdldEN1cnJlbnREaXJlY3RvcnlBIGluIHdyb25nIG9yZGVyLgorCisyMDA1LTA2LTEwICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiB0b29scy93aW5lYnVpbGQvc3BlYzMyLmM6IFBpZXJyZSBkJ0hlcmJlbW9udCA8c3RlZ2VmaW5AZnJlZS5mcj4KKwlVc2UgLm1vZF8qX2Z1bmMgc2VjdGlvbnMgb24gTWFjIE9TIFgvaTM4NiBpbnN0ZWFkIG9mIHRoZSBlbGYKKwljb25zdHJ1Y3Rvci9kZXN0cnVjdG9yLgorCisJKiB0b29scy93aW5lYnVpbGQvc3BlYzMyLmM6CisJUmV1c2Ugb3V0cHV0X2RsbF9pbml0IGZvciB0aGUgY29uc3RydWN0b3Igb2YgZGVidWcgZmlsZXMuCisKKwkqIHNlcnZlci9jaGFuZ2UuYywgc2VydmVyL2ZkLmMsIHNlcnZlci9tYWlsc2xvdC5jLCBzZXJ2ZXIvbmFtZWRfcGlwZS5jLAorCSAgc2VydmVyL3JlZ2lzdHJ5LmMsIHNlcnZlci90aHJlYWQuYywgc2VydmVyL3Rva2VuLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUNoYW5nZSBjb2RlIHN0eWxlIG9mIGZvcm0gImlmKCB4ICkiIHRvICJpZiAoeCkiIGZvciBjb25zaXN0ZW5jeS4KKworCSogaW5jbHVkZS9zZXR1cGFwaS5oOiBNYXR0aGV3IERhdmlzb24gPG1qZDc3QGNhbS5hYy51az4KKwlBZGRlZCBzb21lIGRlZmluaXRpb25zIHRvIHNldHVwYXBpLgorCisJKiBkbGxzL250ZGxsL250LmMsIGRsbHMvbnRkbGwvdGVzdHMvaW5mby5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJRml4ZWQgUmV0dXJuTGVuZ3RoIG9mIFN5c3RlbUNwdUluZm9ybWF0aW9uLgorCUFkZGVkIGZpcnN0IHRlc3QgZm9yIFN5c3RlbUNwdUluZm9ybWF0aW9uLgorCisJKiBkbGxzL21zaS9tc2kuc3BlYywgZGxscy9tc2kvbXNpcXVlcnkuYywgaW5jbHVkZS9tc2lxdWVyeS5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlDcmVhdGUgYSBzdHViIGltcGxlbWVudGF0aW9uIGZvciBNc2lWaWV3R2V0RXJyb3IuCisKKwkqIGRsbHMva2VybmVsL3N5bmMuYywgZGxscy9udGRsbC9yZWcuYywgZGxscy9udGRsbC9zeW5jLmMsCisJICBpbmNsdWRlL3dpbnRlcm5sLmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlcGVuZGVuY3kgZml4ZXMgZm9yIHdpbnRlcm5sLmguCisKKwkqIHByb2dyYW1zL3JlZ2VkaXQvbGlzdHZpZXcuYywgcHJvZ3JhbXMvdGFza21nci9wZXJmcGFnZS5jLAorCSAgcHJvZ3JhbXMvd2luZWJyb3dzZXIvbWFpbi5jLCBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IG1vcmUgd2FybmluZ3MuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfdW5peGZzLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVNldCB0aGUgRklMRVNZU0FOQ0VTVE9SIGFuZCBGSUxFU1lTVEVNIGZsYWdzIGNvcnJlY3RseSBpbgorCUdldEF0dHJpYnV0ZXNPZi4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlDbGVhciBvdXQgcGFyYW1ldGVycyB0byBzdG9wIGJhZCBwb2ludGVycyBseWluZyBhcm91bmQgaW4gbWVtb3J5IGlmCisJdGhlIGZ1bmN0aW9uIGRvZXNuJ3Qgc2V0IHRoZW0gdG8gYW55dGhpbmcuCisKKwkqIGRsbHMveDExZHJ2L3BhbGV0dGUuYzogR2xlbm4gV3Vyc3RlciA8Z3d1cnN0ZXJAc2NzLmNhcmxldG9uLmNhPgorCUFkZHMgc3VwcG9ydCBmb3IgdGhlIERJQklOREVYIHR5cGUgb2YgQ09MT1JSRUYuCisKKwkqIGRsbHMvbnRkbGwvcnRsc3RyLmM6IEphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCUltcGxlbWVudCBSdGxBbnNpQ2hhclRvVW5pY29kZUNoYXIuCisKKwkqIGluY2x1ZGUvd2luaW5ldC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW5jbHVkZSBtaXNzaW5nIEFXIG1hY3JvLgorCisJKiBpbmNsdWRlL21zaXF1ZXJ5Lmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIHRoZSBNU0lEQkVSUk9SIGVudW1lcmF0aW9uLgorCisJKiBkbGxzL3VybG1vbi91cmxtb25fbWFpbi5jLCBpbmNsdWRlL3VybG1vbi5pZGw6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlY2xhcmUgZnVuY3Rpb25zIGFuZCBjb3JyZWN0IHByb3RvdHlwZXMuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlDcnlwe0VufERlfWNvZGVPYmplY3RFeCBzaG91bGQgcmV0dXJuIHN1Y2Nlc3MgaWYgdGhlIGlucHV0IGJ1ZmZlciBpcworCU5VTEwsIHNvbWUgTVMgc2FtcGxlIHByb2dyYW1zIGRlcGVuZCBvbiB0aGF0LiAgRml4IGZ1bmN0aW9ucyBhbmQKKwl0ZXN0cy4KKworMjAwNS0wNi0wOSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy91c2VyL2VkaXQuYzogTGF1cmkgVHVsbWluIDx0dWxtaW5AZ21haWwuY29tPgorCUJvdHRvbSBlZGdlIG9mIHRoZSB1cGRhdGUgcmVnaW9uIHNob3VsZCBiZSByZWxhdGl2ZSB0byB0aGUgdG9wIGVkZ2Ugb2YKKwl0aGUgZm9ybWF0IHJlY3QuCisKKwkqIGRsbHMvZGRyYXcvdGVzdHMvZDNkLmM6IFN0ZWZhbiBMZWljaHRlciA8U3RlZmFuLkxlaWNodGVyQGNhbUxpbmUuY29tPgorCU1ha2UgZGRyYXcgdGVzdHMgbG9hZGFibGUgb24gTlQ0LgorCisJKiBzZXJ2ZXIvcmVnaXN0cnkuYzoKKwlTdG9yZSB0aGUgcHJvY2VzcyBhbG9uZyB3aXRoIHRoZSBrZXkgaGFuZGxlIGluIG5vdGlmaWNhdGlvbnMuCisKKwkqIGRsbHMvbnRkbGwvbnQuYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlSZWR1Y2Ugb3VyIGJ1ZmZlciBieSAxIFNZU1RFTV9USFJFQURfSU5GT1JNQVRJT04gcGVyIHByb2Nlc3MuCisJTWluaW1pemUgc29tZSBjYWxjdWxhdGlvbnMuCisKKwkqIGRsbHMvdXNlci9lZGl0LmMsIGRsbHMvdXNlci90ZXN0cy9lZGl0LmM6CisJTGF1cmkgVHVsbWluIDx0dWxtaW5AZ21haWwuY29tPgorCUFkZCBtb3JlIHRlc3RzIGZvciB0ZXh0IHBsYWNlbWVudCBpbiBzaW5nbGUgYW5kIG11bHRpbGluZSBlZGl0CisJY29udHJvbHMuIFNvbWUgb2YgdGhlIHRlc3RzIGFyZSBtYXJrZWQgYXMgdG9kby4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRXh0ZW5kaW5nIHVwb24gTWlrZSBNY0Nvcm1hY2sncyBjbGVhbnVwIHRvIHVzZSBNU0lfUmVjb3JkR2V0U3RyaW5nLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZWdpc3RlciB0aGUgUHJvZHVjdCBWZXJzaW9uIGFsc28uCisJQWxzbyBoZWxwIHBsdWcgc29tZSBtZW1vcnkgbGVha3MgcG9pbnRlZCBvdXQgYnkgTWlrZSBNY0Nvcm1hY2suCisKKwkqIGRsbHMvdXNlci90ZXN0cy93aW5zdGF0aW9uLmMsIHNlcnZlci9hdG9tLmMsIHNlcnZlci9jaGFuZ2UuYywKKwkgIHNlcnZlci9jb25zb2xlLmMsIHNlcnZlci9kZWJ1Z2dlci5jLCBzZXJ2ZXIvZXZlbnQuYywgc2VydmVyL2ZkLmMsCisJICBzZXJ2ZXIvZmlsZS5jLCBzZXJ2ZXIvaGFuZGxlLmMsIHNlcnZlci9ob29rLmMsIHNlcnZlci9tYWlsc2xvdC5jLAorCSAgc2VydmVyL21hcHBpbmcuYywgc2VydmVyL211dGV4LmMsIHNlcnZlci9uYW1lZF9waXBlLmMsCisJICBzZXJ2ZXIvb2JqZWN0LmMsIHNlcnZlci9vYmplY3QuaCwgc2VydmVyL3Byb2Nlc3MuYywgc2VydmVyL3F1ZXVlLmMsCisJICBzZXJ2ZXIvcmVnaXN0cnkuYywgc2VydmVyL3JlcXVlc3QuYywgc2VydmVyL3NlbWFwaG9yZS5jLAorCSAgc2VydmVyL3NlcmlhbC5jLCBzZXJ2ZXIvc2lnbmFsLmMsIHNlcnZlci9zbmFwc2hvdC5jLCBzZXJ2ZXIvc29jay5jLAorCSAgc2VydmVyL3RocmVhZC5jLCBzZXJ2ZXIvdGltZXIuYywgc2VydmVyL3Rva2VuLmMsIHNlcnZlci93aW5zdGF0aW9uLmM6CisJQWRkZWQgYSBjbG9zZV9oYW5kbGUgbWV0aG9kIHRvIHRoZSBvYmplY3Qgb3BlcmF0aW9ucywgYW5kIHVzZSBpdCB0bworCWltcGxlbWVudCByZWdpc3RyeSBub3RpZmljYXRpb25zIGFuZCB0aGUgc3RyYW5nZSBiZWhhdmlvciBvZgorCUNsb3NlSGFuZGxlIG9uIHdpbnN0YXRpb24vZGVza3RvcCBoYW5kbGVzLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBdm9pZCBhIGxvb3Agd2hlcmUgYSBwYXJlbnQncyBwYXJlbnQgcmVmZXJzIHRvIGl0c2VsZiBhcyBpdHMgcGFyZW50LgorCisJKiBkbGxzL3VzZXIvdGVzdHMvd2luc3RhdGlvbi5jLCBzZXJ2ZXIvaGFuZGxlLmMsIHNlcnZlci9wcm9jZXNzLmMsCisJICBzZXJ2ZXIvcHJvY2Vzcy5oLCBzZXJ2ZXIvdGhyZWFkLmMsIHNlcnZlci91c2VyLmgsCisJICBzZXJ2ZXIvd2luc3RhdGlvbi5jOgorCVRoZSBkZXNrdG9wIG9mIGEgbmV3IHRocmVhZCBzaG91bGQgYmUgc2V0IGZyb20gdGhlIHByb2Nlc3MgaW5pdGlhbAorCWRlc2t0b3AsIG5vdCBmcm9tIHRoZSBwYXJlbnQgdGhyZWFkLgorCUZpeGVkIGEgY291cGxlIG9mIGJ1Z3MgaW4gdGhlIGRlc2t0b3AgbmFtZSBoYW5kbGluZy4KKworCSogaW5jbHVkZS93aW5pbmV0Lmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIHNvbWUgbWlzc2luZyBmdW5jdGlvbnMuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlTYXVsaXVzIEtyYXN1Y2thcyA8c2F1bGl1cy5rcmFzdWNrYXNAaWVlZS5vcmc+CisJR2V0IGN1cnJlbnQgZGlyZWN0b3J5IGR1cmluZyB0ZXN0cyBvbiB3aW45eCB0b28uCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbGxpbmsuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZCB0aGUgSVNoZWxsTGlua0RhdGFMaXN0IGludGVyZmFjZSB0byB0aGUgU2hlbGxMaW5rIG9iamVjdC4KKworCSogZGxscy9tc2kvTWFrZWZpbGUuaW4sIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9hY3Rpb24uaCwKKwkgIGRsbHMvbXNpL3VwZ3JhZGUuYywgaW5jbHVkZS9tc2lkZWZzLmg6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCBtb2R1bGUgdXBncmFkZS5jIGFuZCBpbXBsZW1lbnRlZCBGaW5kUmVsYXRlZFByb2R1Y3RzLgorCisJKiB0b29scy93aW5hcGkvY29uZmlnLnBtLCB0b29scy93aW5hcGkvbXN2Y21ha2VyLAorCSAgdG9vbHMvd2luYXBpL3dpbmFwaV9jbGVhbnVwOgorCUZpeGVkIGEgbnVtYmVyIG9mIHJlZmVyZW5jZXMgdG8gcmVtb3ZlZCBkaXJlY3Rvcmllcy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvdXNlci9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvdXNlci9kZGVfY2xpZW50LmMsIGRsbHMvdXNlci9kZGVfbWlzYy5jLAorCSAgZGxscy91c2VyL2RkZV9wcml2YXRlLmgsIGRsbHMvdXNlci9kZGVfc2VydmVyLmMsIGRsbHMvdXNlci9kZGVtbDE2LmM6CisJTW92ZWQgZGRlIGZpbGVzIHRvIHRoZSBtYWluIGRpcmVjdG9yeSBhbmQgZ290IHJpZCBvZiB0aGUgZGxscy91c2VyL2RkZQorCXN1YmRpcmVjdG9yeS4KKworCSogREVWRUxPUEVSUy1ISU5UUywgY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvdXNlci9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvdXNlci9taXNjLmM6CisJTW92ZWQgbW9uaXRvciBmdW5jdGlvbnMgdG8gZGxscy91c2VyL21pc2MuYyBhbmQgZmluYWxseSBnb3QgcmlkIG9mIHRoZQorCXdpbmRvd3MvIGRpcmVjdG9yeS4KKworCSogZGxscy9udGRsbC90ZXN0cy9pbmZvLmM6IFBhdWwgVnJpZW5zIDxwYXVsLnZyaWVuc0B4czRhbGwubmw+CisJQWRkZWQgdGVzdCBmb3IgU3lzdGVtUHJvY2Vzc0luZm9ybWF0aW9uLgorCisJKiBkbGxzL2FkdmFwaTMyL3Rlc3RzL3NlY3VyaXR5LmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCB0ZXN0IGZvciBBY2Nlc3NDaGVjay4KKworCSogZGxscy9jb21jdGwzMi9jb21jdGwzMi5oLCBkbGxzL2NvbWN0bDMyL2NvbW1jdHJsLmMsCisJICBkbGxzL2NvbWN0bDMyL2ZsYXRzYi5jLCBkbGxzL2NvbWN0bDMyL2xpc3R2aWV3LmMsCisJICBkbGxzL2NvbWN0bDMyL21vbnRoY2FsLmMsIGRsbHMvY29tY3RsMzIvcHJvcHNoZWV0LmMsCisJICBkbGxzL2NvbWN0bDMyL3Rlc3RzL2RwYS5jLCBkbGxzL2NvbWN0bDMyL3Rlc3RzL3RhYi5jLAorCSAgZGxscy9jb21jdGwzMi90ZXN0cy91cGRvd24uYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJV2FybmluZyBmaXhlcyBmb3IgLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyBhbmQgLVd3cml0ZS1zdHJpbmdzLgorCisJKiBkbGxzL3VzZXIvTWFrZWZpbGUuaW4sIGRsbHMvdXNlci9kcml2ZXIxNi5jOgorCU1vdmVkIHdpbmRvd3MvZHJpdmVyLmMgdG8gZGxscy91c2VyL2RyaXZlcjE2LmMuCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYzogSmVyZW15IFdoaXRlIDxqd2hpdGVAY29kZXdlYXZlcnMuY29tPgorCUNvbWJpbmUgV0lORV9XQVZFT1VUIGFuZCBXSU5FX1dBVkVJTiBpbnRvIGEgc2luZ2xlIHN0cnVjdHVyZS4KKworCSogaW5jbHVkZS9vYmpiYXNlLmgsIGluY2x1ZGUvb2xlMi5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCBzb21lIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucy4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9jcnlwdC5jLCBkbGxzL2FkdmFwaTMyL3Rlc3RzL3NlY3VyaXR5LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCBzb21lIHdhcm5pbmdzLgorCisJKiB0b29scy93aW5lZHVtcC9sbmsuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUR1bXAgb3V0IHRoZSBtc2kgaW5mb3JtYXRpb24gaW4gbW9yZSBkZXRhaWwuCisKKwkqIGRsbHMvb2xlMzIvbW9uaWtlci5oOiBNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlSZW1vdmVkIENMU0lEX0NvbXBvc2l0ZU1vbmlrZXIgKGNvbmZsaWN0aW5nIHdpdGggc3RhdGljIGRlZmluaXRpb24pLgorCisJKiBzZXJ2ZXIvdG9rZW4uYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gQXZvaWQgZXZpbCBzaWduZWQgYml0ZmllbGRzLgorCS0gRml4IGJ1ZyB3aXRoIHVzaW5nIHdyb25nIHJldmlzaW9uIGluIHNlY3VyaXR5X3NpZF9hbGxvYy4KKwktIEFkZCBhbGwgYnVpbHRpbiBncm91cHMgcHJlc2VudCBpbiB0aGUgQWRtaW5pc3RyYXRvciB0b2tlbiBvbiBXaW5kb3dzCisJICB0byB0aGUgZGVmYXVsdCB0b2tlbi4KKworCSogZGxscy93aW5lZDNkL3dpbmVkM2RfcHJpdmF0ZS5oOgorCU1hcmN1cyBNZWlzc25lciA8bWFyY3VzQGpldC5mcmFua2VuLmRlPgorCUZpeGVkIGRlZmluaXRpb24vZGVjbGFyYXRpb24gbWlzbWF0Y2hlcyBvZiBuZXdseSBzdGF0aWMgdnRhYmxlcy4KKworCSogc2VydmVyL25hbWVkX3BpcGUuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUZpeCBhIHJlZ3Jlc3Npb24gaW4gdGhlIHBlcmZvcm1hbmNlIG9mIG5hbWVkIHBpcGVzIGJ5IG9ubHkgbWFraW5nIHRoZQorCWZkIG5vbi1ibG9ja2luZyB3aGVuIG92ZXJsYXBwZWQgSS9PIGlzIHJlcXVlc3RlZCBmb3IgdGhlIGZkIChyZXBvcnRlZAorCWJ5IEl2YW4gTGVvIFB1b3RpKS4KKworCSogZGxscy9kYmdoZWxwL2R3YXJmLmMsIGRsbHMvZGJnaGVscC9zdG9yYWdlLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCB3YXJuaW5ncyBleHBvc2VkIGJ5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgYW5kIC1Xd3JpdGUtc3RyaW5ncy4KKworCSogZGxscy9zaGVsbDMyL3Nodl9pdGVtX2NtZW51LmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgYSBjYXN0IHRvIGdldCByaWQgb2YgYSB3YXJuaW5nLgorCisJKiBkbGxzL3VzZXIvdGVzdHMvd2luc3RhdGlvbi5jOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQWRkZWQgYSBjb3VwbGUgb2YgQ2xvc2VIYW5kbGUgY2FsbHMuCisKKwkqIGRsbHMvb2xlMzIvbWFyc2hhbC5jLCBkbGxzL29sZTMyL3N0dWJtYW5hZ2VyLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUlVbmtub3duIGlzbid0IGEgcmVtb3RhYmxlIGludGVyZmFjZSBzbyB0aGUgc3R1YiBtYW5hZ2VyIHNob3VsZG4ndAorCW5lZWQgYSBtYXJzaGFsbGVyIGZvciBpdC4KKworCSogZGxscy9udGRsbC9maWxlLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIERvbid0IGZyZWUgdGhlIGZpbGVpbyBvYmplY3QgYmVjYXVzZSBpdCB3aWxsIGJlIGZyZWVkIGFueXdheSBpbgorCSAgZmlsZWlvX3Rlcm1pbmF0ZSBvbiBlcnJvci4KKwktIFByaW50IG91dCBzdGF0dXNlcyBpbiBoZXgsIHJhdGhlciB0aGFuIGRlY2ltYWwuCisKKwkqIHRvb2xzL3dpZGwvdHlwZWxpYi5jLCB0b29scy93aWRsL3dyaXRlX21zZnQuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJQWRkIG1vcmUgc3RydWN0IHR5cGVzIGZvciBUTEIgZ2VuZXJhdGlvbi4KKworCSogZGxscy9hZHZhcGkzMi9zZWN1cml0eS5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTWFrZSBBRFZBUElfSXNMb2NhbENvbXB1dGVyIHN0YXRpYyBhbmQgc2ltcGxpZnkgaXQgYSBsaXR0bGUuCisKKwkqIGRsbHMvYWR2YXBpMzIvYWR2YXBpLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbmNsdWRlIGFwcG1nbXQuaCB3aGVyZSBpdHMgZnVuY3Rpb25zIGFyZSB1c2VkLgorCisJKiBkbGxzL2RtY29tcG9zL2Nob3JkbWFwLmMsIGRsbHMvZG1jb21wb3MvY2hvcmRtYXB0cmFjay5jLAorCSAgZGxscy9kbWNvbXBvcy9jb21wb3Nlci5jLCBkbGxzL2RtY29tcG9zL3NpZ25wb3N0dHJhY2suYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTWFrZSBpbnRlcmZhY2UgbWV0aG9kcyBzdGF0aWMuCisKKwkqIHNlcnZlci93aW5zdGF0aW9uLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbmNsdWRlIHVzZXIuaCBpbiB0aGUgbmV3IHdpbnN0YXRpb24uYyB0byBhdm9pZCBhIHdhcm5pbmcgZnJvbQorCS1XbWlzc2luZy1kZWNsYXJhdGlvbnMuCisKKwkqIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gVGhlIHR5cGVsaWIgbWFyc2hhbGVyIHNob3VsZCBvbmx5IGZyZWUgdGhlIG1lbW9yeSBpdCBhY3R1YWxseSBhbGxvY2F0ZWQuCisJLSBBZGQgc3BlY2lhbCBjYXNlcyBmb3IgdHdvIGxlc3NlciB1c2VkIHR5cGVzIHRoYXQgYXJlbid0CisJICBzaXplb2YoRFdPUkQpIHNpemVkLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlVc2Ugc2hlbGwgaWNvbiBjYWNoZSBpbnN0ZWFkIG9mIGFuIG93biBJRXh0cmFjdEljb24gaW1wbGVtZW50YXRpb24uCisKKwkqIGRsbHMva2VybmVsL3Rlc3RzL2RyaXZlLmM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCURvbid0IHRyeSB0byBhY2Nlc3MgZmxvcHB5IGlmIGl0J3Mgbm90IG1vdW50ZWQuCisKKwkqIGRsbHMvY29tY3RsMzIvaXBhZGRyZXNzLmM6IEFsZXggWm9yYWNoIDxpbmZvQHN1c2NvbXB1dGluZy5jb20+CisJRml4ZWQgU2V0Rm9jdXMgYmVoYXZpb3IuCisKKzIwMDUtMDYtMDggIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVNldCB0aGUgUHJlc2VsZWN0ZWQgcHJvcGVydHkgaWYgYXBwcm9wcmlhdGUgKHJlbGV2YW50IHRvCisJTWlncmF0ZUZlYXR1cmVTdGF0ZXMgd2hlbiBpbXBsZW1lbnRlZCkuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVdyaXRlIG91dCBQcm9kdWN0IExhbmd1YWdlIGFuZCBQcm9kdWN0IEljb24gdG8gdGhlIHJlZ2lzdHJ5LgorCisJKiBkbGxzL250ZGxsL2ZpbGUuYywgaW5jbHVkZS93aW5lL3NlcnZlcl9wcm90b2NvbC5oLAorCSAgc2VydmVyL25hbWVkX3BpcGUuYywgc2VydmVyL3Byb3RvY29sLmRlZiwgc2VydmVyL3RyYWNlLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCBvdmVybGFwcGVkIEkvTyB3aXRoIG5hbWVkIHBpcGVzLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlXcml0ZSBvdXQgVXBncmFkZUNvZGVzIHRvIHRoZSByZWdpc3RyeSB0byBhbGxvdyBmb3IgZnV0dXJlIHVwZ3JhZGVzLgorCisJKiBkbGxzL3VzZXIvTWFrZWZpbGUuaW4sIGRsbHMvdXNlci9taXNjLmMsIGRsbHMvdXNlci90ZXN0cy8uY3ZzaWdub3JlLAorCSAgZGxscy91c2VyL3Rlc3RzL01ha2VmaWxlLmluLCBkbGxzL3VzZXIvdGVzdHMvd2luc3RhdGlvbi5jLAorCSAgZGxscy91c2VyL3VzZXIzMi5zcGVjLCBkbGxzL3VzZXIvd2luc3RhdGlvbi5jLAorCSAgaW5jbHVkZS93aW5lL3NlcnZlcl9wcm90b2NvbC5oLCBpbmNsdWRlL3dpbnVzZXIuaCwKKwkgIHNlcnZlci9NYWtlZmlsZS5pbiwgc2VydmVyL29iamVjdC5jLCBzZXJ2ZXIvb2JqZWN0LmgsCisJICBzZXJ2ZXIvcHJvY2Vzcy5jLCBzZXJ2ZXIvcHJvY2Vzcy5oLCBzZXJ2ZXIvcHJvdG9jb2wuZGVmLAorCSAgc2VydmVyL3JlcXVlc3QuaCwgc2VydmVyL3RocmVhZC5jLCBzZXJ2ZXIvdGhyZWFkLmgsIHNlcnZlci90cmFjZS5jLAorCSAgc2VydmVyL3VzZXIuaCwgc2VydmVyL3dpbnN0YXRpb24uYzoKKwlCZWdpbm5pbmdzIG9mIHN1cHBvcnQgZm9yIHdpbmRvdyBzdGF0aW9ucyBhbmQgZGVza3RvcHMuCisKKwkqIGRsbHMvbXNpL21zaS5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUFkZCBMYW5ndWFnZSB0byB0aGUgdmFsdWVzIHdlIGNhbiBxdWVyeSB3aXRoIE1zaUdldFByb2R1Y3RJbmZvLgorCisJKiBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsIGRsbHMvd2luZWQzZC9kaXJlY3R4LmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJLSBPdXRwdXQgYSBGSVhNRSB3aGVuIGEgc3VyZmFjZSB3aXRoIGRpbWVuc2lvbnMgbm90IGJlaW5nIGEgcG93ZXIgb2YKKwkgIHR3byBpcyByZXF1ZXN0ZWQuCisJLSBGYWlsIGdyYWNlZnVsbHkgd2hlbiBJV2luZUQzREltcGxfQ3JlYXRlRGV2aWNlIGZhaWxzIHRvIGNyZWF0ZSB0aGUKKwkgIGZyb250LSBvciBiYWNrYnVmZmVyLgorCisJKiBkbGxzL3VzZXIvc3lzcGFyYW1zLmM6IEh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJUmVhZCB0aGUgZW50aXJlIGxvZ2ZvbnQgZnJvbSB0aGUgcmVnaXN0cnkgaWYgaXQgZXhpc3RzLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVVzZSBNU0lfUmVjb3JkR2V0U3RyaW5nIGluIG1vcmUgYWN0aW9ucy4KKworCSogZGxscy9vbGVhdXQzMi92YXJmb3JtYXQuYzogTWljaGFlbCBTdGVmYW5pdWMgPG1zdGVmYW5pQHJlZGhhdC5jb20+CisJLSBpbXBsZW1lbnQgaGFuZGxpbmcgb2YgZXhwb25lbnRzIChlKyxlLSxFKyxFLSkgd2hlbiBwYXJzaW5nIG51bWJlcgorCSAgZm9ybWF0cworCS0gZml4IGEgc21hbGwgY3V0J24ncGFzdGUgZXJyb3IgaW4gdGhlIGNvbW1lbnRzCisKKwkqIGRsbHMvcnBjcnQ0L3JwY19zZXJ2ZXIuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUZpeCBhbiBSUEMgc2VydmVyIHN0YXJ0dXAgcmFjZSBpbnRyb2R1Y2VkIGJ5IG1lLgorCisJKiBkbGxzL2Rzb3VuZC9kc291bmRfbWFpbi5jOiBNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJRml4ZWQgY29uZnVzaW5nIGluZGVudGF0aW9uLgorCisJKiBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYzogTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJRml4ZWQgSVR5cGU6Okludm9rZSBpbiByZWdhcmRzIHRvIGhhbmRsaW5nIHByb3BlcnR5Z2V0IHZhcmlhYmxlcworCWxvbmdlciB0aGFuIDQgYnl0ZXMgKGxpa2UgVlRfREFURSkuCisKKwkqIGRsbHMvcnBjcnQ0L3JwY19iaW5kaW5nLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIERvbid0IHBhc3MgdGhlIFBST0ZJTEVfU0VSVkVSIGZsYWcgaW4gdG8gQ3JlYXRlTmFtZWRQaXBlIGFzIGl0IGlzCisJICBib2d1cy4KKwktIENhbGwgRmx1c2hGaWxlQnVmZmVycyB0byBtYWtlIHN1cmUgdGhlIG90aGVyIGVuZCBvZiB0aGUgcGlwZSBkb2Vzbid0CisJICBnZXQgY3V0IG9mZiBwcmVtYXR1cmVseS4KKwktIERvbid0IGNhbGwgQ2FuY2VsSW8gYXMgd2Ugc2hvdWxkIG5ldmVyIGhhdmUgYXN5bmMgSS9PIHBlbmRpbmcuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlJbXBsZW1lbnQgYXNuLjEgZW5jb2RpbmcvZGVjb2Rpbmcgb2YgdGltZXMsIHdpdGggdGVzdHMuCisKKzIwMDUtMDYtMDcgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvZGRyYXcvdGVzdHMvLmN2c2lnbm9yZSwgZGxscy9kZHJhdy90ZXN0cy9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvZGRyYXcvdGVzdHMvZDNkLmM6CisJQW50b2luZSBDaGF2YXNzZSA8YS5jaGF2YXNzZUBnbWFpbC5jb20+CisJVGVzdCBjYXNlcyBmb3IgdGhlIGRpcmVjdDNkNyBsaWdodCBhcGkuCisKKwkqIGRsbHMvZGRyYXcvZDNkX3ByaXZhdGUuaCwgZGxscy9kZHJhdy9kZXZpY2VfbWFpbi5jLAorCSAgZGxscy9kZHJhdy9kZXZpY2Vfb3BlbmdsLmM6CisJQW50b2luZSBDaGF2YXNzZSA8YS5jaGF2YXNzZUBnbWFpbC5jb20+CisJUmV3cm90ZSB0aGUgbGlnaHQgbWFuYWdlbWVudCBBUEkgdG8gYWxsb3cgZm9yIGFuIHVubGltaXRlZCBhbW91bnQgb2YKKwlsaWdodHMgdG8gYmUgc2V0LCBhbmQgb25seSBhIHN1YnNldCBvZiB0aGVtIHRvIGJlIGVuYWJsZWQuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVXNlIE1TSV9SZWNvcmRHZXRTdHJpbmcgd2hlcmUgcG9zc2libGUuCisKKwkqIGRsbHMvc2hlbGwzMi9kZWJ1Z2hscC5jLCBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmgsCisJICBkbGxzL3NoZWxsMzIvc2hmbGRyX2ZzLmMsIGRsbHMvc2hlbGwzMi9zaGx2aWV3LmMsCisJICBkbGxzL3NoZWxsMzIvc2h2X2l0ZW1fY21lbnUuYywgZGxscy9zaGVsbDMyL3Rlc3RzL3NobGZvbGRlci5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlXYXJuaW5nIGZpeGVzIGZvciAtV21pc3NpbmctZGVjbGFyYXRpb25zIGFuZCAtV3dyaXRlLXN0cmluZ3MuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVXNlIGEgcmljaGVkaXQgY29udHJvbCBmb3IgbGljZW5zZSB0ZXh0LgorCisJKiBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvYWN0aW9uLmgsIGRsbHMvbXNpL21zaXByaXYuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4ZXMgZm9yIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgYW5kIC1Xd3JpdGUtc3RyaW5ncyB3YXJuaW5ncy4KKworCSogZGxscy9xdWFydHovYXZpZGVjLmMsIGRsbHMvcXVhcnR6L3BhcnNlci5jLAorCSAgZGxscy9xdWFydHovdmlkZW9yZW5kZXJlci5jOgorCUNocmlzdGlhbiBDb3N0YSA8dGl0YW4uY29zdGFAd2FuYWRvby5mcj4KKwlEb24ndCB1c2UgZnVsbHNjcmVlbiBtb2RlIGluIHZpZGVvIHJlbmRlcmVyIGZvciBub3cgYW5kIGltcHJvdmUgZXJyb3IKKwloYW5kbGluZyBhIGJpdC4KKwlJbXByb3ZlZCBhIGJpdCBSdW4vUGF1c2UvU3RvcCBtZXRob2RzIG9mIHBhcnNlciB0ZW1wbGF0ZS4KKworCSogZGxscy91c2VyL3Rlc3RzL21zZy5jOiBEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhIHRlc3QgZm9yIHdpbmRvdyBzdGF0ZSB3aGVuIGEgd2luZG93IHJlY2VpdmVzIFdNX0VOQUJMRSBtZXNzYWdlLgorCisJKiBkbGxzL3VzZXIvd2luLmM6CisJU3RpbGwgc2VuZCBhIG1lc3NhZ2UgaW4gU2V0V2luZG93VGV4dCBmb3IgdGhlIGludGVyLXByb2Nlc3MgY2FzZSBldmVuCisJdGhvdWdoIGl0J3Mgbm90IGZ1bGx5IGNvcnJlY3QgKHJlcG9ydGVkIGJ5IEphc29uIENhbXBiZWxsKS4KKworCSogc2VydmVyL2ZkLmMsIHNlcnZlci9maWxlLmMsIHNlcnZlci9maWxlLmg6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gQWRkIGEgZGVmYXVsdCBhc3luY2hyb25vdXMgSS9PIGltcGxlbWVudGF0aW9uLgorCS0gTWFrZSBmaWxlIG9iamVjdHMgdXNlIGl0LgorCisJKiBkbGxzL3NldHVwYXBpL2Rldmluc3QuYywgaW5jbHVkZS9zZXR1cGFwaS5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWNsYXJlIHNvbWUgZnVuY3Rpb25zLgorCisJKiBkbGxzL3JwY3J0NC9uZHJfb2xlLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIE5kckludGVyZmFjZVBvaW50ZXIqIG1vcmUgcmVsaWFibGUuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL0NzLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0VuLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Fcy5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0ZyLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9IdS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0l0LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9ObC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1BsLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9QdC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1J1LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9TaS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1N2LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9aaC5yYzoKKwlNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCVN5bmNocm9uaXplIHJlc291cmNlIHNjcmlwdHMgSURzIG9mIHRoZSBkaWZmZXJlbnQgbGFuZ3VhZ2VzIGFuZCBhZGp1c3QKKwlJTkZPIGVudHJpZXMuCisKKwkqIGRsbHMvY2FiaW5ldC9jYWJleHRyYWN0LmMsIGRsbHMvY2FiaW5ldC9jYWJpbmV0X21haW4uYzoKKwlUaG9tYXMgV2VpZGVubXVlbGxlciA8d2luZS1wYXRjaGVzQHJlYWN0c29mdC5jb20+CisJUmVtb3ZlZCBsb2NhbCB2YXJpYWJsZXMgb25seSB1c2VkIGluIFRSQUNFIHN0YXRlbWVudHMuCisKKwkqIGluY2x1ZGUvYWNsYXBpLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEZWZpbmUgR2V0RXhwbGljaXRFbnRyaWVzRnJvbUFjbC4KKworCSogaW5jbHVkZS93aW5iYXNlLmg6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCBzb21lIHNlY3VyaXR5IHJlbGF0ZWQgZnVuY3Rpb25zIHRvIHdpbmJhc2UuaC4KKworCSogaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS9hcHBtZ210Lmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIHRoZSBhcHBtZ210LmggaGVhZGVyLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCByYWRpbyBidXR0b24gZ3JvdXBzLiBEb24ndCBhZGQgdGhlIFdTX0dST1VQIHN0eWxlIHRvIGV2ZXJ5CisJd2luZG93LgorCisJKiBpbmNsdWRlL29sZWN0bC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVjbGFyZSBPbGVMb2FkUGljdHVyZUV4LgorCisJKiBkbGxzL3NoZWxsMzIvc2hsZm9sZGVyLmM6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlDb25zdC1pZnkgYSBtYXNrLgorCisJKiBkbGxzL2NvbW1kbGcvZmlsZWRsZy5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYywKKwkgIGRsbHMvY29tbWRsZy9maWxlZGxnYnJvd3Nlci5oOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlGaXggcmV0dXJuIGNvZGUgYWJ1c2UgKGRvbid0IHVzZSBIUkVTVUxUIHdoZW4gaXQgaXNuJ3QgbWVhbnQpLCBtYWtlCisJZnVuY3Rpb25zIHN0YXRpYyB3aGVyZSBwb3NzaWJsZSwgcmVtb3ZlIHVudXNlZCBwcm90b3R5cGVzLgorCisJKiBkbGxzL21zaS9tc2lwcml2LmgsIGRsbHMvbXNpL3JlZ2lzdHJ5LmM6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgZnVuY3Rpb25zIHRvIGFkZCB0aGUgVXNlciBVcGdyYWRlQ29kZXMuCisKKwkqIGRsbHMvbXNpL21zaS5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUNvcnJlY3QgYSBjcmFzaCBpZiB0aGUgbGVuZ3RoIGJ1ZmZlciBpcyBOVUxMLgorCisJKiBkbGxzL250ZGxsL250LmM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJRml4ZWQgdHlwby4KKwlaZXJvIHRoZSB0aHJlYWQgaW5mb3JtYXRpb24gYmVmb3JlIHVzZS4KKworCSogaW5jbHVkZS93aW50ZXJubC5oOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCUFkZCBhbm90aGVyICh1bmtub3duKSBtZW1iZXIgdG8gU1lTVEVNX1RIUkVBRF9JTkZPUk1BVElPTi4KKworMjAwNS0wNi0wNiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9rZXJuZWwvY29uc29sZS5jLCBkbGxzL2tlcm5lbC9lbnZpcm9uLmMsIGRsbHMva2VybmVsL2V4Y2VwdC5jLAorCSAgZGxscy9rZXJuZWwvZmliZXIuYywgZGxscy9rZXJuZWwvaGVhcC5jLCBkbGxzL2tlcm5lbC9wcm9jZXNzLmMsCisJICBkbGxzL250ZGxsL2Vycm9yLmMsIGRsbHMvbnRkbGwvZXhjZXB0aW9uLmMsIGRsbHMvbnRkbGwvaGVhcC5jLAorCSAgZGxscy9udGRsbC9yZXNvdXJjZS5jLCBkbGxzL250ZGxsL3ZpcnR1YWwuYywgZGxscy93aW5lZG9zL3JlbGF5LmM6CisJUmVtb3ZlZCBzb21lIHVubmVjZXNzYXJ5IGluY2x1c2lvbnMgb2YgdGhyZWFkLmgKKworCSogZGxscy9udGRsbC9kZWJ1Z3Rvb2xzLmMsIGRsbHMvbnRkbGwvbnRkbGxfbWlzYy5oLAorCSAgZGxscy9udGRsbC9zZXJ2ZXIuYywgZGxscy9udGRsbC9zaWduYWxfaTM4Ni5jLCBkbGxzL250ZGxsL3N5bmMuYywKKwkgIGRsbHMvbnRkbGwvdGhyZWFkLmMsIGluY2x1ZGUvdGhyZWFkLmgsIGluY2x1ZGUvd2ludGVybmwuaDoKKwlNb3ZlZCB0aGUgbnRkbGwgcGVyLXRocmVhZCBkYXRhIG91dCBvZiB0aGUgVEVCIGludG8gYSBwcml2YXRlCisJc3RydWN0dXJlIHN0b3JlZCBpbiBURUIuU3lzdGVtUmVzZXJ2ZWQyLgorCisJKiBkbGxzL2tlcm5lbC9jaGFuZ2UuYywgZGxscy9rZXJuZWwvZ2xvYmFsMTYuYywKKwkgIGRsbHMva2VybmVsL2tlcm5lbF9tYWluLmMsIGRsbHMva2VybmVsL2tlcm5lbF9wcml2YXRlLmgsCisJICBkbGxzL2tlcm5lbC9sb2NhbDE2LmMsIGRsbHMva2VybmVsL2xvY2FsZS5jLCBkbGxzL2tlcm5lbC9uZV9tb2R1bGUuYywKKwkgIGRsbHMva2VybmVsL25lX3NlZ21lbnQuYywgZGxscy9rZXJuZWwvcHRocmVhZC5jLAorCSAgZGxscy9rZXJuZWwvcmVsYXkxNi5jLCBkbGxzL2tlcm5lbC9zbm9vcDE2LmMsIGRsbHMva2VybmVsL3N5c2xldmVsLmMsCisJICBkbGxzL2tlcm5lbC9zeXN0ZW0uYywgZGxscy9rZXJuZWwvdGFzay5jLCBkbGxzL2tlcm5lbC92eGQuYzoKKwlNb3ZlZCB0aGUga2VybmVsIHBlci10aHJlYWQgZGF0YSBvdXQgb2YgdGhlIFRFQiBpbnRvIGEgcHJpdmF0ZQorCXN0cnVjdHVyZSBzdG9yZWQgaW4gVEVCLlN5c3RlbVJlc2VydmVkMS4KKworCSogZGxscy9rZXJuZWwvdGh1bmsuYzoKKwlGZXRjaCB0aGUgc3RhY2sgc2VsZWN0b3IgdG8gdXNlIGZyb20gdGhlIHByZXZpb3VzIHN0YWNrZnJhbWUgaW5zdGVhZAorCW9mIHRoZSBURUIuCisKKwkqIGRsbHMvb2xlMzIvYW50aW1vbmlrZXIuYywgZGxscy9vbGUzMi9iaW5kY3R4LmMsCisJICBkbGxzL29sZTMyL2NsaXBib2FyZC5jLCBkbGxzL29sZTMyL2NvbXBvc2l0ZW1vbmlrZXIuYywKKwkgIGRsbHMvb2xlMzIvZGF0YWNhY2hlLmMsIGRsbHMvb2xlMzIvZGVmYXVsdGhhbmRsZXIuYywKKwkgIGRsbHMvb2xlMzIvZXJyb3JpbmZvLmMsIGRsbHMvb2xlMzIvZmlsZW1vbmlrZXIuYywKKwkgIGRsbHMvb2xlMzIvZnRtYXJzaGFsLmMsIGRsbHMvb2xlMzIvZ2l0LmMsIGRsbHMvb2xlMzIvaGdsb2JhbHN0cmVhbS5jLAorCSAgZGxscy9vbGUzMi9pZnMuYywgZGxscy9vbGUzMi9pdGVtbW9uaWtlci5jLAorCSAgZGxscy9vbGUzMi9tZW1sb2NrYnl0ZXMuYywgZGxscy9vbGUzMi9tZW1sb2NrYnl0ZXMxNi5jLAorCSAgZGxscy9vbGUzMi9tb25pa2VyLmMsIGRsbHMvb2xlMzIvb2xlMTYuYywgZGxscy9vbGUzMi9vbGVvYmouYywKKwkgIGRsbHMvb2xlMzIvb2xlcHJveHkuYywgZGxscy9vbGUzMi9yZWdzdnIuYywgZGxscy9vbGUzMi9zdGdfcHJvcC5jLAorCSAgZGxscy9vbGUzMi9zdGdfc3RyZWFtLmMsIGRsbHMvb2xlMzIvc3RvcmFnZS5jLAorCSAgZGxscy9vbGUzMi9zdG9yYWdlMzIuYywgZGxscy9vbGUzMi9zdG9yYWdlMzIuaCwKKwkgIGRsbHMvb2xlMzIvdGVzdHMvbWFyc2hhbC5jLCBkbGxzL29sZWF1dDMyL2Nvbm5wdC5jLAorCSAgZGxscy9vbGVhdXQzMi9kaXNwYXRjaC5jLCBkbGxzL29sZWF1dDMyL29haWRsX3AuYywKKwkgIGRsbHMvb2xlYXV0MzIvb2xlZm9udC5jLCBkbGxzL29sZWF1dDMyL29sZXBpY3R1cmUuYywKKwkgIGRsbHMvb2xlYXV0MzIvcmVjaW5mby5jLCBkbGxzL29sZWF1dDMyL3Rlc3RzL3NhZmVhcnJheS5jLAorCSAgZGxscy9vbGVhdXQzMi90ZXN0cy92YXJ0eXBlLmMsIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYywKKwkgIGRsbHMvb2xlYXV0MzIvdHlwZWxpYi5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIyLmMsCisJICBkbGxzL29sZWNsaS9vbGVjbGkxNi5jLCBkbGxzL29sZWNsaS9vbGVjbGlfbWFpbi5jLAorCSAgZGxscy9vbGVzdnIvb2xlc3ZyX21haW4uYywgZGxscy9xY2FwL3FjYXBfbWFpbi5jLAorCSAgZGxscy9xY2FwL3Zmd2NhcHR1cmUuYywgZGxscy9xdWFydHovZW51bW1vbmlrZXIuYywKKwkgIGRsbHMvcXVhcnR6L2ZpbGVzb3VyY2UuYywgZGxscy9xdWFydHovZmlsdGVyZ3JhcGguYywKKwkgIGRsbHMvcXVhcnR6L2ZpbHRlcm1hcHBlci5jLCBkbGxzL3F1YXJ0ei9tYWluLmMsCisJICBkbGxzL3F1YXJ0ei9tZW1hbGxvY2F0b3IuYywgZGxscy9xdWFydHovcGFyc2VyLmMsIGRsbHMvcXVhcnR6L3Bpbi5jLAorCSAgZGxscy9xdWFydHovc3lzdGVtY2xvY2suYywgZGxscy9xdWFydHovdmlkZW9yZW5kZXJlci5jLAorCSAgZGxscy9yaWNoZWQyMC9yaWNob2xlLmMsIGRsbHMvcnBjcnQ0L2Nwcm94eS5jLCBkbGxzL3JwY3J0NC9jcHNmLmMsCisJICBkbGxzL3JwY3J0NC9uZHJfb2xlLmMsIGRsbHMvc2hkb2N2dy9jbGFzc2luZm8uYywKKwkgIGRsbHMvc2hkb2N2dy9ldmVudHMuYywgZGxscy9zaGRvY3Z3L2ZhY3RvcnkuYywgZGxscy9zaGRvY3Z3L21pc2MuYywKKwkgIGRsbHMvc2hkb2N2dy9vbGVvYmplY3QuYywgZGxscy9zaGRvY3Z3L3BlcnNpc3QuYywKKwkgIGRsbHMvc2hkb2N2dy9zaGRvY3Z3LmgsIGRsbHMvc2hkb2N2dy9zaGRvY3Z3X21haW4uYywKKwkgIGRsbHMvc2hkb2N2dy93ZWJicm93c2VyLmMsIGRsbHMvc2hlbGwzMi9hdXRvY29tcGxldGUuYywKKwkgIGRsbHMvc2hlbGwzMi9jcGFuZWxmb2xkZXIuYywgZGxscy9zaGVsbDMyL2RhdGFvYmplY3QuYywKKwkgIGRsbHMvc2hlbGwzMi9kcmFnZHJvcGhlbHBlci5jLCBkbGxzL3NoZWxsMzIvZW51bWlkbGlzdC5jLAorCSAgZGxscy9zaGVsbDMyL2ZvbGRlcnMuYywgZGxscy9zaGVsbDMyL3NoZWxsbGluay5jLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsb2xlLmMsIGRsbHMvc2hlbGwzMi9zaGZsZHJfZGVza3RvcC5jLAorCSAgZGxscy9zaGVsbDMyL3NoZmxkcl9mcy5jLCBkbGxzL3NoZWxsMzIvc2hmbGRyX215Y29tcC5jLAorCSAgZGxscy9zaGVsbDMyL3NobGZzYmluZC5jLCBkbGxzL3NoZWxsMzIvc2hsdmlldy5jLAorCSAgZGxscy9zaGVsbDMyL3Nodl9iZ19jbWVudS5jLCBkbGxzL3NoZWxsMzIvc2h2X2l0ZW1fY21lbnUuYywKKwkgIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGVsbHBhdGguYywgZGxscy9zaGx3YXBpL2Fzc29jLmMsCisJICBkbGxzL3NobHdhcGkvaXN0cmVhbS5jLCBkbGxzL3NobHdhcGkvcmVnc3RyZWFtLmMsCisJICBkbGxzL3VybG1vbi9zZWNfbWdyLmMsIGRsbHMvdXJsbW9uL3Rlc3RzL3VybC5jLCBkbGxzL3VybG1vbi91bW9uLmMsCisJICBkbGxzL3VybG1vbi91cmxtb25fbWFpbi5jLCBkbGxzL3dpbmVkM2QvYmFzZXRleHR1cmUuYywKKwkgIGRsbHMvd2luZWQzZC9jdWJldGV4dHVyZS5jLCBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsCisJICBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLCBkbGxzL3dpbmVkM2QvaW5kZXhidWZmZXIuYywKKwkgIGRsbHMvd2luZWQzZC9xdWVyeS5jLCBkbGxzL3dpbmVkM2QvcmVzb3VyY2UuYywKKwkgIGRsbHMvd2luZWQzZC9zdGF0ZWJsb2NrLmMsIGRsbHMvd2luZWQzZC9zdXJmYWNlLmMsCisJICBkbGxzL3dpbmVkM2QvdGV4dHVyZS5jLCBkbGxzL3dpbmVkM2QvdmVydGV4YnVmZmVyLmMsCisJICBkbGxzL3dpbmVkM2QvdmVydGV4ZGVjbGFyYXRpb24uYywgZGxscy93aW5lZDNkL3ZlcnRleHNoYWRlci5jLAorCSAgZGxscy93aW5lZDNkL3ZvbHVtZS5jLCBkbGxzL3dpbmVkM2Qvdm9sdW1ldGV4dHVyZS5jLAorCSAgZGxscy93aW5lZDNkL3dpbmVkM2RfcHJpdmF0ZS5oLCBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvLmMsCisJICBkbGxzL3dpbm1tL3dpbmVhdWRpb2lvL2F1ZGlvLmMsIGRsbHMvd2lubW0vd2luZWphY2svYXVkaW8uYywKKwkgIGRsbHMvd2lubW0vd2luZW9zcy9kc2NhcHR1cmUuYywgZGxscy93aW5tbS93aW5lb3NzL2RzcmVuZGVyLmM6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIHJlbWFpbmluZyBPTEUgaW50ZXJmYWNlIHZ0YWJsZXMgY29uc3QuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfdW5peGZzLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUFsbG93IGZvciB1bml4ZnMgZm9sZGVycyB0byBiZSByb290ZWQgYXQgZGVza3RvcCBsZXZlbC4KKwlNb3ZlZCBkb3MtPnVuaXggcGF0aCBjb252ZXJzaW9uIGludG8gY2Fub25pY2FsaXplX3BhdGguCisJRmFpbCBpbiBCaW5kVG9PYmplY3QsIGlmIGNhbGxlZCB3aXRoIGVtcHR5IHBpZGwuCisKKwkqIHRvb2xzL3dpbmVidWlsZC9idWlsZC5oLCB0b29scy93aW5lYnVpbGQvaW1wb3J0LmMsCisJICB0b29scy93aW5lYnVpbGQvc3BlYzE2LmMsIHRvb2xzL3dpbmVidWlsZC9zcGVjMzIuYzoKKwlNb3ZlZCBhbGwgYXNzZW1ibHkgY29kZSB0byB0aGUgZW5kIG9mIHRoZSBnZW5lcmF0ZWQgQyBmaWxlcyB0byBhdm9pZAorCWNvbmZsaWN0aW5nIHdpdGggdGhlIGNvbXBpbGVyIG92ZXIgc2VjdGlvbiBjaGFuZ2VzLgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy9kZHJhdy9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvZGRyYXcvZDNkX3V0aWxzLmMsIGRsbHMvZGRyYXcvZDNkY29tbW9uLmMsCisJICBkbGxzL2RkcmF3L2QzZGV4ZWN1dGVidWZmZXIuYywgZGxscy9kZHJhdy9kM2RsaWdodC5jLAorCSAgZGxscy9kZHJhdy9kM2RtYXRlcmlhbC5jLCBkbGxzL2RkcmF3L2QzZHRleHR1cmUuYywKKwkgIGRsbHMvZGRyYXcvZDNkdmVydGV4YnVmZmVyLmMsIGRsbHMvZGRyYXcvZDNkdmlld3BvcnQuYywKKwkgIGRsbHMvZGRyYXcvZGRyYXdfbWFpbi5jLCBkbGxzL2RkcmF3L2RldmljZV9tYWluLmMsCisJICBkbGxzL2RkcmF3L2RldmljZV9vcGVuZ2wuYywgZGxscy9kZHJhdy9kaXJlY3QzZF9tYWluLmMsCisJICBkbGxzL2RkcmF3L2RpcmVjdDNkX29wZW5nbC5jLCBkbGxzL2RkcmF3L2V4ZWN1dGVidWZmZXIuYywKKwkgIGRsbHMvZGRyYXcvbGlnaHQuYywgZGxscy9kZHJhdy9tYWluLmMsIGRsbHMvZGRyYXcvbWF0ZXJpYWwuYywKKwkgIGRsbHMvZGRyYXcvbWVzYS5jLCBkbGxzL2RkcmF3L21lc2FfcHJpdmF0ZS5oLAorCSAgZGxscy9kZHJhdy9vcGVuZ2xfcHJpdmF0ZS5oLCBkbGxzL2RkcmF3L29wZW5nbF91dGlscy5jLAorCSAgZGxscy9kZHJhdy9zdXJmYWNlX21haW4uYywgZGxscy9kZHJhdy90ZXh0dXJlLmMsCisJICBkbGxzL2RkcmF3L3ZlcnRleGJ1ZmZlci5jLCBkbGxzL2RkcmF3L3ZpZXdwb3J0LmM6CisJQ2hyaXN0aWFuIENvc3RhIDx0aXRhbi5jb3N0YUB3YW5hZG9vLmZyPgorCU1vdmVkIGQzZGRldmljZSBhbmQgZGlyZWN0M2Qgb2JqZWN0cyBmaWxlcyB0byBkZHJhdyByb290IGRpci4KKwlSZW5hbWVkIGFsbCByZW1haW5pbmcgZmlsZXMuCisKKwkqIGRsbHMvbnRkbGwvbnQuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCU1ha2UgU1lTVEVNX1RIUkVBRF9JTkZPUk1BVElPTi5wc3pQcm9jZXNzTmFtZSBhIFVOSUNPREVfU1RSSU5HLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYywgZGxscy9tc2kvZXZlbnRzLmMsIGRsbHMvbXNpL21zaXByaXYuaCwKKwkgIGRsbHMvbXNpL3BhY2thZ2UuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVXNlIHN0YW5kYXJkIGxpc3RzIGluIHRoZSBldmVudCBzdWJzY3JpcHRpb24gY29kZS4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRG9uJ3QgZ2V0IGNhdWdodCBpbiBsb29wcyBvbiBwYXJlbnQgcHJvZ2lkcy4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVmaW5lIHNvbWUgQ2VydCogZnVuY3Rpb25zLgorCisJKiBkbGxzL250ZGxsL3ZlcnNpb24uYzogTWlrZSBIZWFybiA8bWhAY29kZXdlYXZlcnMuY29tPgorCURlbGV0ZSB2ZXJzaW9uIHNuaWZmaW5nIGxvZ2ljLgorCisJKiBkbGxzL3NoZWxsMzIvYnJzZm9sZGVyLmMsIGRsbHMvc2hlbGwzMi9zaGxmb2xkZXIuYywKKwkgIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJTGV0IEJpbmRUb09iamVjdCBmYWlsLCBpZiBjYWxsZWQgd2l0aCBlbXB0eSByZWxhdGl2ZSBwaWRsLgorCVRlc3RzIHRvIHNob3cgdGhhdCBpdCBzaG91bGQgZG8gc28uCisJRml4IFNIQnJvd3NlRm9yRm9sZGVyIHRvIG5vdCBwYXNzIGFuIGVtcHR5IHBpZGwgdG8gQmluZFRvT2JqZWN0LgorCisJKiBkbGxzL29sZWF1dDMyL29sZXBpY3R1cmUuYywgZGxscy9vbGVhdXQzMi90ZXN0cy8uY3ZzaWdub3JlLAorCSAgZGxscy9vbGVhdXQzMi90ZXN0cy9NYWtlZmlsZS5pbiwgZGxscy9vbGVhdXQzMi90ZXN0cy9vbGVwaWN0dXJlLmM6CisJTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJQWRkZWQgdGVzdGNhc2VzIGZvciBPTEUgUGljdHVyZSBoYW5kbGluZy4KKwlJbXBsZW1lbnRlZCBQSUNUWVBFX05PTkUgbG9hZGluZy4KKwlDbGVhbmVkIHVwIHN0cmVhbSBsb2FkaW5nLCBoYW5kbGUgImx0IiBtYWdpYy4KKwlGaXhlZCBzb21lIHNtYWxsIHByb2JsZW1zIGV4cG9zZWQgYnkgdGVzdHMgYWdhaW5zdCBuYXRpdmUuCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYzogUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlEb24ndCBvcGVuIGRldmljZSBpZiBhbHJlYWR5IG9wZW4uCisJRG9uJ3QgbmVlZCBvcGVuZWQgZGV2aWNlIHRvIGdldC9zZXQgdm9sdW1lLgorCisJKiBkbGxzL2NvbWN0bDMyL3RhYi5jOiBKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlBdWRpdCB0aGUgVGFiIGNvbnRyb2wuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL0RlLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Fbi5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL01ha2VmaWxlLmluLCBwcm9ncmFtcy93aW5lZmlsZS9yZXNvdXJjZS5oLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvcmVzb3VyY2UucmMsIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmM6CisJTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwlJbXBsZW1lbnQgZmlsZSBwcm9wZXJ0aWVzIGRpYWxvZyAocGFydGx5IGJhc2VkIG9uIFJvYiBELidzIHdpbmZpbGUKKwljb2RlKS4KKworMjAwNS0wNi0wNSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jLCB0b29scy93aW5lYnVpbGQvc3BlYzMyLmM6CisJU3dpdGNoIGJhY2sgdG8gLmRhdGEgYXQgdGhlIGVuZCBvZiBhc20gc2VjdGlvbnMgdG8gd29yayBhcm91bmQgYW4KKwlvcHRpbWl6YXRpb24gaW4gcmVjZW50IGdjYyB2ZXJzaW9ucy4KKworCSogZGxscy9ycGNydDQvbmRyX21pZGwuYzogTWlrZSBIZWFybiA8bWhAY29kZXdlYXZlcnMuY29tPgorCUluaXRpYWxpemUgRGF0YVJlcHJlc2VudGF0aW9uIGluIE5kckNsaWVudEluaXRpYWxpemVOZXcsIG5vdAorCU5kclNlbmRSZWNlaXZlLgorCisJKiBkbGxzL3dpbmluZXQvaW50ZXJuZXQuYzogTWlrZSBIZWFybiA8bWhAY29kZXdlYXZlcnMuY29tPgorCS0gRG9uJ3QgcmV0dXJuIE5VTEwgZm9yIHByb3h5IGRldGFpbHMgaWYgdGhlcmUgaXMgbm8gcHJveHkuCisJLSBSZW1vdmUgc3R1YiBtZXNzYWdlLCBpdCBzZWVtcyB0byBiZSBjb21wbGV0ZS4KKworCSogZGxscy9vbGUzMi9tYXJzaGFsLmM6IFJvYiBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEb24ndCBkaXNjb25uZWN0IHByb3hpZXMgZmxhZ2dlZCB3aXRoIFNPUkZQX05PTElGRVRJTUVNR01ULiBJdCBtYWtlcworCW5vIHNlbnNlIGFuZCBvbmx5IGNhdXNlcyB0cm91YmxlIGZvciBwcm94aWVzIHRoYXQgZGVwZW5kIG9uIHRoZXNlCisJcHJveGllcyBiZWluZyBhdmFpbGFibGUuCisKKwkqIGRsbHMvdXNlci9lZGl0LmMsIGRsbHMvdXNlci90ZXN0cy9lZGl0LmM6CisJTGF1cmkgVHVsbWluIDx0dWxtaW5AZ21haWwuY29tPgorCURvbid0IHRydW5jYXRlIHRleHQgb24gV01fU0VUVEVYVCBhbmQgc2VuZCBFTl9NQVhURVhULgorCisJKiBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvLmM6IFJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJRml4IGEgcHJvYmxlbSB3aGVyZSBhY3R1YWwgc2FtcGxlIHJhdGUgZG9lc24ndCBleGFjdGx5IG1hdGNoCisJcmVxdWVzdGVkLgorCisJKiBkbGxzL3F1YXJ0ei9hY213cmFwcGVyLmMsIGRsbHMvcXVhcnR6L2VudW1tZWRpYS5jLAorCSAgZGxscy9xdWFydHovZmlsZXNvdXJjZS5jLCBkbGxzL3F1YXJ0ei9wYXJzZXIuYywgZGxscy9xdWFydHovcGluLmMsCisJICBkbGxzL3F1YXJ0ei90cmFuc2Zvcm0uYzoKKwlDaHJpc3RpYW4gQ29zdGEgPHRpdGFuLmNvc3RhQHdhbmFkb28uZnI+CisJRml4ZWQgY2xvY2sgcmVsZWFzZSBpbiB0cmFuc2Zvcm0gdGVtcGxhdGUuCisJQWRkUmVmIHBVbmsgaW4gQ29weU1lZGlhVHlwZS4KKwlBZGRlZCBDcmVhdGVNZWRpYVR5cGUgaGVscGVyIGZ1bmN0aW9uIGFuZCB1c2UgaXQuCisJUmVwbGFjZWQgc29tZSBEZWxldGVNZWRpYVR5cGUgY2FsbHMgdG8gRnJlZU1lZGlhVHlwZSB0byBiZSBpbiBsaW5lCisJd2l0aCByZWNlbnQgY2hhbmdlcy4KKwlGaXhlZCBJRW51bU1lZGlhVHlwZXNJbXBsX05leHQuCisJQ2xlYXIgbWVkaWEgdHlwZSB3aGVuIGluaXRpYWxpemluZyBwaW5zLgorCUFkZGVkIHNvbWUgQWRkUmVmL1JlbGVhc2UgdHJhY2VzLgorCisJKiBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jOiBNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCVJlZnJlc2ggd2luZG93IGNvbnRlbnQgYWZ0ZXIgY29udGV4dCBtZW51IHBvcHVwcyBvbmx5IGlmIGFueSBjb21tYW5kCisJaGFzIGJlZW4gZXhlY3V0ZWQuCisKKwkqIGRsbHMva2VybmVsL3RocmVhZC5jLCBkbGxzL250ZGxsL250ZGxsLnNwZWMsIGRsbHMvbnRkbGwvc2VydmVyLmMsCisJICBpbmNsdWRlL3dpbmUvc2VydmVyLmg6CisJTW92ZWQgdGhlIHNlcnZlciBwYXJ0IG9mIHRoZSBFeGl0VGhyZWFkIGZ1bmN0aW9uYWxpdHkgdG8gbnRkbGwuCisKKwkqIHRvb2xzL3dpbmVidWlsZC9yZXMzMi5jLCB0b29scy93aW5lYnVpbGQvc3BlYzMyLmM6CisJR2VuZXJhdGUgdGhlIHJlc291cmNlIGRhdGEgZGlyZWN0bHkgaW5zaWRlIHRoZSByZXNvdXJjZSBkaXJlY3RvcnkuCisKKwkqIGRsbHMva2VybmVsL2V4Y2VwdC5jOgorCURvbid0IGJvdGhlciBsb29raW5nIGZvciBhIHJlc291cmNlIGRpcmVjdG9yeSBpbiBmcmVlIG1lbW9yeSBhcmVhcy4KKworCSogZGxscy9rZXJuZWwvdGFzay5jLCBkbGxzL250ZGxsL3RocmVhZC5jOgorCUF2b2lkIGFjY2Vzc2luZyB0aGUgaHRhc2sxNiBURUIgZmllbGQgZnJvbSBudGRsbC4KKworCSogZGxscy9udGRsbC9sb2FkZXIuYzoKKwlBbGxvY2F0ZSB0aGUgc3lzdGVtIHZpZXcgZm9yIGJ1aWx0aW4gbW9kdWxlcyBlYXJsaWVyIGluCisJbG9hZF9idWlsdGluX2NhbGxiYWNrIHNvIHRoYXQgd2UgYWxzbyBjcmVhdGUgb25lIGZvciB0aGUgbWFpbgorCWV4ZWN1dGFibGUuCisKKwkqIGluY2x1ZGUvd2ludXNlci5oOiBWaXRhbGl5IE1hcmdvbGVuIDx3aW5lLXBhdGNoQGtpZXZpbmZvLmNvbT4KKwlNYXRjaCBuYW1lcyBmb3IgV01fU0hPV1dJTkRPVyBzdGF0dXMgY29kZXMgdG8gTVNETi4KKworCSogZGxscy9vbGUzMi9vbGVwcm94eS5jOiBNaWtlIEhlYXJuIDxtaWtlQG5hdmkuY3g+CisJQWRkIHNvbWUgdHJhY2luZyB0byB0aGUgSVJlbVVua25vd24gUnBjUHJveHlCdWZmZXIgaW1wbGVtZW50YXRpb24uCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYzogUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlSZXR1cm4gcHJvcGVyIGVycm9yIGNvZGUuCisJQ2hhbmdlIEVSUiB0byBXQVJOIGZvciBmYWlsZWQgcmVxdWVzdHMuCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdHlwZWxpYi5jOiBKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCVRlc3Qgb25seSBzdGRvbGUzMi50bGIgYXMgd2UgZG9uJ3QgaGF2ZSBvbGVwcm8zMi5kbGwgaW4gV2luZS4KKworCSogZGxscy9rZXJuZWwvc3luYy5jOiBNaWtlIEhlYXJuIDxtaEBjb2Rld2VhdmVycy5jb20+CisJU3VwcHJlc3MgdGhlIG5vaXN5IFNldE5hbWVkUGlwZUhhbmRsZVN0YXRlIGZpeG1lLgorCisJKiBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jLCBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5oOgorCU1hcnRpbiBGdWNocyA8bWFydGluLWZ1Y2hzQGdteC5uZXQ+CisJU3luYyB3aW5lZmlsZSdzIGhlYWRlciBiZXR3ZWVuIFdJTkUgYW5kIFJlYWN0T1MuCisKKwkqIGRsbHMva2VybmVsL3Rlc3RzL3BpcGUuYzoKKwlVd2UgQm9ubmVzIDxib25AZWxla3Ryb24uaWtwLnBoeXNpay50dS1kYXJtc3RhZHQuZGU+CisJQWRkZWQgbW9yZSBwaXBlIHRlc3RzLgorCisJKiBkbGxzL2Rzb3VuZC90ZXN0cy9kczNkLmMsIGRsbHMvZHNvdW5kL3Rlc3RzL2RzM2Q4LmMsCisJICBkbGxzL2Rzb3VuZC90ZXN0cy9kc291bmQuYywgZGxscy9kc291bmQvdGVzdHMvZHNvdW5kOC5jOgorCVJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJRml4IHRlc3RzIHRvIHdvcmsgd2l0aCBkcml2ZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBhIHByaW1hcnkgYnVmZmVyLgorCisJKiBkbGxzL3dpbnRydXN0L3dpbnRydXN0LnNwZWMsIGRsbHMvd2ludHJ1c3Qvd2ludHJ1c3RfbWFpbi5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQWRkZWQgYSBzdHViIGZvciBDcnlwdENBVEFkbWluQ2FsY0hhc2hGcm9tRmlsZUhhbmRsZS4KKworCSogaW5jbHVkZS93aW5lcnJvci5oOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCUFkZGVkIHNvbWUgZXJyb3IgY29kZXMuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL2RkcmF3L01ha2VmaWxlLmluLAorCSAgZGxscy9kZHJhdy9zdXJmYWNlX2RpYi5jLCBkbGxzL2RkcmF3L3N1cmZhY2VfZmFrZXpidWZmZXIuYywKKwkgIGRsbHMvZGRyYXcvc3VyZmFjZV9nYW1tYS5jLCBkbGxzL2RkcmF3L3N1cmZhY2VfaGFsLmMsCisJICBkbGxzL2RkcmF3L3N1cmZhY2VfbWFpbi5jLCBkbGxzL2RkcmF3L3N1cmZhY2VfdGh1bmtzLmMsCisJICBkbGxzL2RkcmF3L3N1cmZhY2VfdXNlci5jLCBkbGxzL2RkcmF3L3N1cmZhY2Vfd25kcHJvYy5jOgorCUNocmlzdGlhbiBDb3N0YSA8dGl0YW4uY29zdGFAd2FuYWRvby5mcj4KKwlNb3ZlZCBkc3VyZmFjZSBvYmplY3QgZmlsZXMgdG8gZGRyYXcgcm9vdCBkaXIuCisKKwkqIGRsbHMvZHNvdW5kL2NhcHR1cmUuYywgZGxscy9kc291bmQvdGVzdHMvY2FwdHVyZS5jOgorCVJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJQWRkIHRlc3RzIHRvIGNoZWNrIERpcmVjdFNvdW5kQ2FwdHVyZSBjcmVhdGlvbi4KKwlGaXggZHNvdW5kL2NhcHR1cmUuYyB0byBwYXNzIHRlc3RzLgorCisyMDA1LTA2LTA0ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBwcm9ncmFtcy9jbWRsZ3RzdC9jbWRsZ3RzdC5jLCBwcm9ncmFtcy9yZWdlZGl0L2VkaXQuYywKKwkgIHByb2dyYW1zL3JlZ2VkaXQvZnJhbWV3bmQuYywgcHJvZ3JhbXMvcmVnZWRpdC9saXN0dmlldy5jLAorCSAgcHJvZ3JhbXMvcmVnZWRpdC9tYWluLmMsIHByb2dyYW1zL3JlZ2VkaXQvcmVnZWRpdC5jLAorCSAgcHJvZ3JhbXMvcmVnZWRpdC9yZWdwcm9jLmMsIHByb2dyYW1zL3JlZ2VkaXQvcmVncHJvYy5oLAorCSAgcHJvZ3JhbXMvcmVnZWRpdC90cmVldmlldy5jLCBwcm9ncmFtcy9yZWdzdnIzMi9yZWdzdnIzMi5jLAorCSAgcHJvZ3JhbXMvcnBjc3MvcnBjc3NfbWFpbi5jLCBwcm9ncmFtcy93aW5lZGJnL2RiZy55LAorCSAgcHJvZ3JhbXMvd2luZXRlc3QvbWFpbi5jLCBwcm9ncmFtcy93aW5ldGVzdC9zZW5kLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeGVzIGZvciAtV21pc3NpbmctZGVjbGFyYXRpb25zIGFuZCAtV3dyaXRlLXN0cmluZ3Mgd2FybmluZ3MuCisKKwkqIGRsbHMvY29tbWRsZy9maWxlZGxnLmM6IEh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJSWYgYSBmb2xkZXIgaXMgc2VsZWN0ZWQgb24gT3BlbiB0aGVuIGJyb3dzZSBpbnRvIGl0LCBvdGhlcndpc2Ugd2UKKwlzaG91bGQgcmV0dXJuIHRoZSBwYXRoIGluIHRoZSBlZGl0IGJveCB3aGV0aGVyIHRoYXQgYmUgYSBmb2xkZXIgb3IgYQorCWZpbGUuCisJRG9uJ3QgYWRkIGV4dGVuc2lvbnMgdG8gYSBmb2xkZXIuCisKKwkqIGRsbHMvY29tY3RsMzIvbGlzdHZpZXcuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlGaXggc29tZSBtaXNzZWQgaW52YWxpZGF0aW9ucyBhZnRlciBjb2x1bW4gcmVzaXplLgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmMsIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJSW1wbGVtZW50IGFzbi4xIGRlY29kaW5nIG9mIGludGVnZXJzLCB3aXRoIHRlc3RzLgorCisJKiBkbGxzL2NvbW1kbGcvZmlsZWRsZy5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVVzZSBEV0xQX01TR1JFU1VMVCB0byByZXR1cm4gdmFsdWVzIGZyb20gdGhlIGRpYWxvZyBwcm9jLgorCisJKiBkbGxzL3FjYXAvTWFrZWZpbGUuaW4sIGRsbHMvcWNhcC9jYXB0dXJlLmgsIGRsbHMvcWNhcC92NGwuYywKKwkgIGRsbHMvcWNhcC92ZndjYXB0dXJlLmM6CisJTWFhcnRlbiBMYW5raG9yc3QgPG0uYi5sYW5raG9yc3RAZ21haWwuY29tPgorCUltcGxlbWVudGVkIFZmd0NhcHR1cmUgaW50ZXJmYWNlLgorCisJKiBkbGxzL21zaS9hY3Rpb24uaCwgZGxscy9tc2kvZGlhbG9nLmM6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWxsb3cgZGlhbG9nIGNvbnRyb2xzIHRvIHN1YnNjcmliZSB0byBpbnN0YWxsZXIgZXZlbnRzLgorCisJKiBkbGxzL2Rzb3VuZC9jYXB0dXJlLmMsIGRsbHMvZHNvdW5kL2Rzb3VuZC5zcGVjLAorCSAgZGxscy9kc291bmQvZHNvdW5kX21haW4uYywgZGxscy9kc291bmQvZHNvdW5kX3ByaXZhdGUuaCwKKwkgIGRsbHMvZHNvdW5kL3Byb3BzZXQuYywgaW5jbHVkZS9kc291bmQuaDoKKwlSb2JlcnQgUmVpZiA8cmVpZkBlYXJ0aGxpbmsubmV0PgorCUZpbmlzaCBEaXJlY3RTb3VuZENhcHR1cmUvRGlyZWN0U291bmRDYXB0dXJlOCBzcGxpdC4KKwlBZGQgdGVzdHMgdG8gdmVyaWZ5IHNwbGl0LgorCisJKiBkbGxzL3F1YXJ0ei92aWRlb3JlbmRlcmVyLmM6IENocmlzdGlhbiBDb3N0YSA8dGl0YW4uY29zdGFAd2FuYWRvby5mcj4KKwlSZWxlYXNlIGNsb2NrIG9ubHkgd2hlbiBvbmUgaXMgc2V0LgorCisJKiBkbGxzL2NvbWN0bDMyL3RhYi5jOiBKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwktIEZhY3RvciBvdXQgY29tbW9uIHRleHQgc2hpZnRpbmcgbG9naWMuCisJLSBTaGlmdCBzZWxlY3RlZCB0YWIgdGV4dCB1cCBpbnN0ZWFkIG9mIGRvd24uCisKKwkqIGluY2x1ZGUvd2luZXJyb3IuaDogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUFkZGVkIGEgYnVuY2ggb2YgY3J5cHRvIGVycm9yIGNvZGVzLgorCisJKiBkbGxzL21zaS9mb3JtYXQuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIHN1cmUgdGhlIFRSQUNFIHN0YXRlbWVudHMgZG8gbm90IHNwZXcgZ2FyYmFnZSBieSB1c2luZworCWRlYnVnc3RyX3duLgorCisJKiBkbGxzL2NvbW1kbGcvZmlsZWRsZy5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVNlbmQgQ0ROX0ZPTERFUkNIQU5HRSB3aGVuZXZlciB3ZSBjaGFuZ2UgZm9sZGVyLgorCisJKiBkbGxzL21sYW5nL3Rlc3RzL01ha2VmaWxlLmluOiBIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlSZW1vdmUgbnRkbGwgZnJvbSBpbXBvcnRzLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVRha2UgdGhlIGRpYWxvZyBmcmFtZSBpbnRvIGFjY291bnQgd2hlbiBjYWxjdWxhdGluZyB0aGUgZGlhbG9nIHNpemUuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVNpbmNlIG11bHRpcGxlIHByb2dpZHMgY2FuIHJlZmVyIHRvIDEgY2xhc3Mgd2UgbmVlZCB0byBjaGVjayBpZiB0aGF0CisJY2xhc3MgaXMgaXNudGFsbGVkIGluc3RlYWQgb2YganVzdCByZWx5aW5nIG9uIGhhdmluZyBpdCBzZXQgdGhlCisJSW5zdGFsbE1lIHZhcmlhYmxlLgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy9kZHJhdy9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvZGRyYXcvZGRyYXdfaGFsLmMsIGRsbHMvZGRyYXcvZGRyYXdfbWFpbi5jLAorCSAgZGxscy9kZHJhdy9kZHJhd190aHVua3MuYywgZGxscy9kZHJhdy9kZHJhd191c2VyLmM6CisJQ2hyaXN0aWFuIENvc3RhIDx0aXRhbi5jb3N0YUB3YW5hZG9vLmZyPgorCU1vdmVkIGRkcmF3IG9iamVjdCBmaWxlcyB0byBkZHJhdyByb290IGRpci4KKworMjAwNS0wNi0wMyAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvZGRyYXcvTWFrZWZpbGUuaW4sCisJICBkbGxzL2RkcmF3L2NsaXBwZXIuYywgZGxscy9kZHJhdy9wYWxldHRlX2hhbC5jLAorCSAgZGxscy9kZHJhdy9wYWxldHRlX21haW4uYzoKKwlDaHJpc3RpYW4gQ29zdGEgPHRpdGFuLmNvc3RhQHdhbmFkb28uZnI+CisJTW92ZWQgY2xpcHBlciBhbmQgcGFsZXR0ZSBvYmplY3RzIGZpbGVzIHRvIGRkcmF3IHJvb3QgZGlyLgorCisJKiB0b29scy93aW5lLmluZjogTGlvbmVsIFVsbWVyIDxsaW9uZWwudWxtZXJAZnJlZS5mcj4KKwlBZGRlZCBrZXlzIHRvIGluc3RhbGwgYWxsIGtub3duIERQbGF5IHNlcnZpY2UgcHJvdmlkZXJzLgorCisJKiBkbGxzL2NhcGkyMDMyL2NhcGkyMDMyLnNwZWM6IFRyb3kgUm9sbG8gPHdpbmVAdHJveS5yb2xsby5uYW1lPgorCVJlbW92ZSBDUiBjaGFyYWN0ZXJzLgorCisJKiBkbGxzL2NyeXB0MzIvY2VydC5jOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJR2V0IHJpZCBvZiBhIG1hZ2ljIG51bWJlciwgYW5kIGltcHJvdmUgc3R1YnMgb2YKKwlDZXJ0T3BlblN5c3RlbVN0b3JlQS9XLgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmM6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlSZWFycmFuZ2UgQ3J5cHR7RGV8RW59Y29kZU9iamVjdEV4IHRvIG1ha2UgZXJyb3IgaGFuZGxpbmcgbW9yZQorCW5hdHVyYWwuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmM6IE1hcnRpbiBGdWNocyA8bWFydGluLWZ1Y2hzQGdteC5uZXQ+CisJRml4IHBvc2l0aW9uIG9mIGNvbHVtbiBoZWFkZXIgbGFiZWxzLgorCisJKiBkbGxzL21zaS9tc2kuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlMb2NhdGUgd2hlcmUgYSBidWZmZXIgc2l6ZSBpcyBub3QgYmVpbmcgc2V0IGFuZCBjb3JyZWN0bHkgaGFuZGxlIHRoZQorCWJ1ZmZlciBzaXplIGNvbnZlcnNpb24gZnJvbSBXIHRvIEEgKHdpdGggaGVscCBmcm9tIFJvYmVydCBTaGVhcm1hbikuCisKKwkqIGRsbHMvbnRkbGwvbnQuYywgaW5jbHVkZS93aW50ZXJubC5oOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQ2hhbmdlIFNZU1RFTV9QUk9DRVNTX0lORk9STUFUSU9OIHRvIHJlZmxlY3QgVzJLL1dpblhQL1cySzMgc3RydWN0dXJlLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgaW5zdGFsbF9vbl9kZW1hbmQgZm9yIEV4dGVuc2lvbiBzZXJ2ZXJzIGFsc28uIGN1cnJlbnRseSBkZWZhdWx0aW5nCisJdG8gVFJVRS4KKwlFeHRlbnNpb24gbmVlZCB0byBoYXZlIDEgdmVyYiB0byBtYXJrIHRoZSBnaXZlbiBwcm9naWQgdG8gYmUKKwlpbnN0YWxsZWQuCisKKzIwMDUtMDYtMDIgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvb2xlMzIvdGVzdHMvbW9uaWtlci5jOiBSaWNoYXJkIENvaGVuIDxyaWNoYXJkQGRhaWpvYnUuY28udWs+CisJLSBEb24ndCBhc3N1bWUgdGhlIFJPVCBpcyBhbHJlYWR5IGVtcHR5LgorCS0gVGVzdCB0aGF0IElFbnVtOjpDbG9uZSBkb2Vzbid0IGFsc28gZG8gYSBSZXNldC4KKworCSogZGxscy9vbGUzMi9tb25pa2VyLmM6IFJpY2hhcmQgQ29oZW4gPHJpY2hhcmRAZGFpam9idS5jby51az4KKwlJRW51bTo6Q2xvbmUgc2hvdWxkbid0IGRvIGEgUmVzZXQuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9hY3Rpb24uaDoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCURvIG5vdCBsb29wIGlmIGEgUHJvZ0lkJ3MgUGFyZW50IEluZGV4IGl0IGl0c2VsZi4KKwlBZGQgYSBWZXJzaW9uSW5kSW5kZXggZm9yIHRyYWNraW5nIHZlcnNpb24gaW5kZXBlbmRlbnQgZmllbGRzIGZvciB0aGUKKwlQcm9nSWRzIHByb3Blcmx5LgorCisJKiBkbGxzL21zZG1vL2Rtb3JlZy5jOiBNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJRHJvcCBkdXBsaWNhdGUgZGVmaW5pdGlvbiBvZiBJSURfSUVudW1ETU8uCisKKwkqIGRsbHMvb2xlMzIvdGVzdHMvbW9uaWtlci5jOiBSaWNoYXJkIENvaGVuIDxyaWNoYXJkQGRhaWpvYnUuY28udWs+CisJQWRkZWQgdGVzdHMgZm9yIGZpbGUgbW9uaWtlcnMuCisKKwkqIGRsbHMvb2xlMzIvZmlsZW1vbmlrZXIuYzogUmljaGFyZCBDb2hlbiA8cmljaGFyZEBkYWlqb2J1LmNvLnVrPgorCS0gQmFzZSBGaWxlTW9uaWtlckltcGxfU2F2ZSgpIG9uIFhQLgorCS0gQ29ycmVjdCBoYW5kbGluZyBvZiBVbmljb2RlIHN0cmluZ3MgJiBtdWx0aWJ5dGUgbG9jYWxlcy4KKwktIE1vcmUgZXJyb3IgY2hlY2tpbmcuCisJLSBDaGFuZ2UgRVJSIHRvIFdBUk4uCisJLSBNYXRjaCBXaW5kb3dzIHF1aWNrICYgZGlydHkgZXN0aW1hdGUgZm9yIEdldFNpemVNYXgoKS4KKworCSogZGxscy9tc2kvZGlhbG9nLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlVc2UgTVNJX1F1ZXJ5R2V0UmVjb3JkIGluIG9uZSBtb3JlIHBsYWNlLgorCisJKiBpbmNsdWRlL3dpbmNyeXB0Lmg6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlBZGRlZCBhIGNvdXBsZSBtaXNzaW5nIHByb3RvdHlwZXMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVByaW50IGEgbWVzc2FnZSBmb3Igc2tpcHBlZCBhY3Rpb25zIGluIFByb2Nlc3NFeGVjU2VxdWVuY2UgbGlrZSBpbiB0aGUKKwlVSVNlcXVlbmNlLgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGxwYXRoLmMsIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGVsbHBhdGguYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJU2V0IGRlZmF1bHQgZm9yICJNeSBEb2N1bWVudHMiIHRvICRIT01FLCBhbmQgIkRlc2t0b3AiIHRvIH4vRGVza3RvcC4KKworCSogZGxscy9tc2kvYWN0aW9uLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRG8gbm90IGNoYW5nZSBhIGZlYXR1cmVzIHN0YXRlIHRvIEFkdmVydGlzZSBpZiBpdCBleHBsaWNpdGx5IGRpc2FsbG93cworCWl0LgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGb3IgdHlwZWxpYnMgaW5kZXggMSBkbyBub3QgYWRkIFxcMSB0byB0aGUgcGF0aC4gVGhpcyBjbGVhbnMgdXAKKwlyZWdpc3RyeSBkaWZmcyB3aXRoIG5hdGl2ZSBNU0kuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvYXBwZGVmYXVsdHMuYywgcHJvZ3JhbXMvd2luZWNmZy9hdWRpby5jLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9kcml2ZS5jLCBwcm9ncmFtcy93aW5lY2ZnL2RyaXZlZGV0ZWN0LmMsCisJICBwcm9ncmFtcy93aW5lY2ZnL2RyaXZldWkuYywgcHJvZ3JhbXMvd2luZWNmZy9saWJyYXJpZXMuYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvbWFpbi5jLCBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcuYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvd2luZWNmZy5oLCBwcm9ncmFtcy93aW5lY2ZnL3gxMWRydmRsZy5jLAorCSAgcHJvZ3JhbXMvd2luZW1lbnVidWlsZGVyL3dpbmVtZW51YnVpbGRlci5jLCBwcm9ncmFtcy93aW5lbWluZS9tYWluLmMsCisJICBwcm9ncmFtcy93aW5ldGVzdC9ndWkuYywgcHJvZ3JhbXMvd2luaGVscC9tYWNyby5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXhlcyBmb3IgLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyBhbmQgLVd3cml0ZS1zdHJpbmdzIHdhcm5pbmdzLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZWdpc3RlciB0aGUgRmlsZVR5cGUgYW5kIGNvcnJlY3Qgc2hvcnQgdnMgbG9uZyBwYXRoIHByb2JsZW1zIHdpdGgKKwlJbnByb2NTZXJ2ZXIzMi4gQWxzbyBhZGQgaW5zdGFsbF9vbl9kZW1hbmQgYm9vbGVhbiBmb3IgZnV0dXJlCisJZXhwYW5zaW9uLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL0RlLnJjLCBwcm9ncmFtcy93aW5lY2ZnL3dpbmVjZmcucmMsCisJICBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYzoKKwlIZW5uaW5nIEdlcmhhcmR0IDxoZW5uaW5nLmdlcmhhcmR0QHdlYi5kZT4KKwlVcGRhdGUgR2VybWFuIHJlc291cmNlIGZpbGVzLgorCisJKiBkbGxzL3VzZXIvbWVzc2FnZS5jOiBEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCVVwZGF0ZSBpbnRlcm5hbCBzdGF0ZSBvbmx5IGlmIHRoZSBtZXNzYWdlIGlzIGJlaW5nIHJlbW92ZWQuCisKKwkqIGRsbHMvTWFrZWZpbGUuaW46CisJVGVtcCBoYWNrIHRvIGNsZWFuIHVwIC5kZWYgZmlsZXMgYW5kIGhvcGVmdWxseSBhdm9pZCBtb3JlIGJ1ZworCXJlcG9ydHMgYWJvdXQgZmFpbGVkIGJ1aWxkcy4KKworCSogZGxscy9jcnlwdDMyL2VuY29kZS5jLCBkbGxzL2NyeXB0MzIvdGVzdHMvLmN2c2lnbm9yZSwKKwkgIGRsbHMvY3J5cHQzMi90ZXN0cy9NYWtlZmlsZS5pbiwgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jLAorCSAgaW5jbHVkZS93aW5jcnlwdC5oOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwktIGFkZCBzb21lIHRlc3RzIGZvciBPSUQgZnVuY3Rpb25zCisJLSBpbXBsZW1lbnQgZW5jb2RpbmcgaW50ZWdlcnMKKworCSogZGxscy9kZHJhdy9kZHJhd19wcml2YXRlLmg6IENocmlzdGlhbiBDb3N0YSA8dGl0YW4uY29zdGFAd2FuYWRvby5mcj4KKwlNZXJnZWQgcmVtYWluaW5nIGhlYWRlciBmaWxlcyBpbiBEaXJlY3REcmF3IG9iamVjdHMgZm9sZGVycyBpbnRvCisJZGRyYXdfcHJpdmF0ZS5oLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy9sb2NhbGUuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCU1ha2Ugc3VyZSB0aGF0IHVudXNlZCBjb2RlIGdldHMgY29tcGlsZWQgdG8gYXZvaWQgd2FybmluZ3MuCisKKwkqIGRsbHMva2VybmVsL2tlcm5lbDMyLnNwZWMsIGRsbHMva2VybmVsL3ZvbHVtZS5jOgorCU1hcmN1cyBNZWlzc25lciA8bWFyY3VzQGpldC5mcmFua2VuLmRlPgorCUFkZGVkIHN0dWJzIGZvciBHZXRWb2x1bWVQYXRoTmFtZShBLFcpLgorCisJKiBsb2FkZXIvcHJlbG9hZGVyLmM6IE1hcmN1cyBNZWlzc25lciA8bWFyY3VzQGpldC5mcmFua2VuLmRlPgorCUVsZjMyX2F1eHZfdC5hX3VuLmFfcHRyIG5vIGxvbmdlciBleGlzdHMgaW4gSEVBRCBnbGliYyBDVlMsIHVzZQorCWFfdmFsLgorCisJKiBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvY3VzdG9tLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVVzZSB0aGUgbmV3IGhlbHBlciBmdW5jdGlvbiBNU0lfUXVlcnlHZXRSZWNvcmQuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jLCBkbGxzL21zaS9tc2lwcml2LmgsIGRsbHMvbXNpL21zaXF1ZXJ5LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUNyZWF0ZSBhIGhlbHBlciBmdW5jdGlvbiB0byBmZXRjaCBhIHNpbmdsZSByZWNvcmQgZnJvbSBhIHF1ZXJ5LgorCisJKiBwcm9ncmFtcy93aW5lYm9vdC93aW5lYm9vdC5jOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJUHJpbnQgY29tbWFuZCB0aGF0IGZhaWxzIHRvIG1ha2UgZXJyb3IgbWVzc2FnZSBhIGxpdHRsZSBtb3JlCisJY29tcHJlaGVuc2libGUuCisKKwkqIGRsbHMvZHNvdW5kL01ha2VmaWxlLmluLCBkbGxzL2Rzb3VuZC9jYXB0dXJlLmMsIGRsbHMvZHNvdW5kL2R1cGxleC5jOgorCVJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJTW92ZSBGdWxsRHVwbGV4IGNvZGUgZnJvbSBjYXB0dXJlLmMgdG8gZHVwbGV4LmMuCisKKwkqIGluY2x1ZGUvTWFrZWZpbGUuaW4sIGluY2x1ZGUvc25tcC5oOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQWRkZWQgc25tcC5oLgorCisyMDA1LTA2LTAxICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL3dpbjMycy93MzJza2VybmVsLmM6IEF2b2lkIGRlcGVuZGVuY3kgb24gdGhyZWFkLmguCisKKwkqIGRsbHMvZHNvdW5kL3Byb3BzZXQuYzogUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlGaXggcHJvcGVydHkgc2V0IGRlc2NyaXB0aW9uIGZvciBtb3JlIHRoYW4gb25lIGNhcHR1cmUgZGV2aWNlIGJ1Zy4KKwlBZGQgYmV0dGVyIHRyYWNlcyBtZXNzYWdlcy4KKworCSogZGxscy9kbXN5bnRoL2Rtc3ludGhfbWFpbi5jLCBkbGxzL2Rtc3ludGgvZG1zeW50aF9wcml2YXRlLmgsCisJICBkbGxzL2Rtc3ludGgvc3ludGguYywgZGxscy9kbXN5bnRoL3N5bnRoc2luay5jLCBkbGxzL2RtdXNpYy9idWZmZXIuYywKKwkgIGRsbHMvZG11c2ljL2Nsb2NrLmMsIGRsbHMvZG11c2ljL2NvbGxlY3Rpb24uYywgZGxscy9kbXVzaWMvZG11c2ljLmMsCisJICBkbGxzL2RtdXNpYy9kbXVzaWNfbWFpbi5jLCBkbGxzL2RtdXNpYy9kbXVzaWNfcHJpdmF0ZS5oLAorCSAgZGxscy9kbXVzaWMvZG93bmxvYWQuYywgZGxscy9kbXVzaWMvZG93bmxvYWRlZGluc3RydW1lbnQuYywKKwkgIGRsbHMvZG11c2ljL2luc3RydW1lbnQuYywgZGxscy9kbXVzaWMvcG9ydC5jLAorCSAgZGxscy9kbXVzaWMvcG9ydGRvd25sb2FkLmMsIGRsbHMvZG11c2ljL3RocnUuYywKKwkgIGRsbHMvZHBsYXl4L2RwY2xhc3NmYWN0b3J5LmMsIGRsbHMvZHBsYXl4L2RwbGF5LmMsCisJICBkbGxzL2RwbGF5eC9kcGxheV9nbG9iYWwuaCwgZGxscy9kcGxheXgvZHBsYXlzcC5jLAorCSAgZGxscy9kcGxheXgvZHBsb2JieS5jLCBkbGxzL2RwbGF5eC9sb2JieXNwLmMsIGRsbHMvZHBuZXQvYWRkcmVzcy5jLAorCSAgZGxscy9kcG5ldC9jbGllbnQuYywgZGxscy9kcG5ldC9kcG5ldF9tYWluLmMsCisJICBkbGxzL2RwbmV0L2RwbmV0X3ByaXZhdGUuaCwgZGxscy9kc291bmQvYnVmZmVyLmMsCisJICBkbGxzL2Rzb3VuZC9jYXB0dXJlLmMsIGRsbHMvZHNvdW5kL2Rzb3VuZC5jLAorCSAgZGxscy9kc291bmQvZHNvdW5kX21haW4uYywgZGxscy9kc291bmQvZHNvdW5kX3ByaXZhdGUuaCwKKwkgIGRsbHMvZHNvdW5kL3ByaW1hcnkuYywgZGxscy9kc291bmQvcHJvcHNldC5jLCBkbGxzL2Rzb3VuZC9zb3VuZDNkLmMsCisJICBkbGxzL2Rzd2F2ZS9kc3dhdmUuYywgZGxscy9kc3dhdmUvZHN3YXZlX21haW4uYywKKwkgIGRsbHMvZHN3YXZlL2Rzd2F2ZV9wcml2YXRlLmgsIGRsbHMvZHhkaWFnbi9jb250YWluZXIuYywKKwkgIGRsbHMvZHhkaWFnbi9keGRpYWdfbWFpbi5jLCBkbGxzL2R4ZGlhZ24vZHhkaWFnX3ByaXZhdGUuaCwKKwkgIGRsbHMvZHhkaWFnbi9wcm92aWRlci5jLCBkbGxzL2l0c3MvaXRzcy5jLCBkbGxzL2l0c3MvbW9uaWtlci5jLAorCSAgZGxscy9pdHNzL3N0b3JhZ2UuYywgZGxscy9tYXBpMzIvcHJvcC5jLCBkbGxzL21sYW5nL21sYW5nLmMsCisJICBkbGxzL21zZG1vL2Rtb3JlZy5jLCBkbGxzL21zaHRtbC9odG1sZG9jLmMsCisJICBkbGxzL21zaHRtbC9tc2h0bWxfcHJpdmF0ZS5oLCBkbGxzL21zaHRtbC9vbGVvYmouYywKKwkgIGRsbHMvbXNodG1sL3BlcnNpc3QuYywgZGxscy9tc2h0bWwvdmlldy5jLCBkbGxzL21zaS9tc2kuYzoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCU1ha2UgbW9yZSBvZiB0aGUgT0xFIGludGVyZmFjZSB2dGFibGVzIGNvbnN0LgorCisJKiBkbGxzL2RkcmF3L2QzZF9wcml2YXRlLmg6IENocmlzdGlhbiBDb3N0YSA8dGl0YW4uY29zdGFAd2FuYWRvby5mcj4KKwlNZXJnZWQgZDNkZGV2aWNlL21haW4uaCBhbmQgZGlyZWN0M2QvbWFpbi5oIGludG8gZDNkX3ByaXZhdGUuaC4KKwlGaXhlZCBUaHVua19JRGlyZWN0M0RJbXBsXzJfQ3JlYXRlVmlld3BvcnQuCisKKwkqIGluY2x1ZGUvY29tbWN0cmwuaDogRGltaSBQYXVuIDxkaW1pQGxhdHRpY2EuY29tPgorCU1pbm9yIGZvcm1hdHR0aW5nIGZpeGVzLgorCisJKiBpbmNsdWRlL3dpbnVzZXIuaDogRGltaSBQYXVuIDxkaW1pQGxhdHRpY2EuY29tPgorCUFkZCBkZWZpbml0aW9ucyBmb3IgSURUUllBR0FJTiBhbmQgSURDT05USU5VRS4KKworCSogZGxscy93aW50cnVzdC93aW50cnVzdC5zcGVjLCBkbGxzL3dpbnRydXN0L3dpbnRydXN0X21haW4uYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWRkIHN0dWJzIGFuZCBzdHViIGltcGxlbWVudGF0aW9ucy4KKworCSogaW5jbHVkZS93aW50cnVzdC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVmaW5lIHNvbWUgZnVuY3Rpb25zIGFuZCBzdHJ1Y3R1cmVzLgorCisJKiBkbGxzL21zaS9kaWFsb2cuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGhhbmRsaW5nIG9mIGNoZWNrYm94IHByb3BlcnRpZXMuCisKKwkqIGRsbHMveDExZHJ2L2Rlc2t0b3AuYywgZGxscy94MTFkcnYvZXZlbnQuYywgZGxscy94MTFkcnYvaW5pdC5jLAorCSAgZGxscy94MTFkcnYveDExZHJ2LmgsIGRsbHMveDExZHJ2L3gxMWRydl9tYWluLmM6CisJVXNlIHN0YW5kYXJkIFRMUyBmdW5jdGlvbnMgaW5zdGVhZCBvZiBhIFRFQiBpbnRlcm5hbCBmaWVsZCB0byBhY2Nlc3MKKwlwZXItdGhyZWFkIGRhdGEuCisKKwkqIGRsbHMvZ2RpL2dkaV9tYWluLmM6IEFsd2F5cyBsb2FkIDE2LWJpdCBnZGkuZXhlIGF0IGluaXQgdGltZS4KKworCSogZGxscy9zZXR1cGFwaS9wYXJzZXIuYzoKKwlSZXZlcnQgcHJldmlvdXMgY2hhbmdlLCBpdCBzaG91bGRuJ3QgYmUgbmVjZXNzYXJ5IChyZXBvcnRlZCBieSBSb2IKKwlTaGVhcm1hbikuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGVsbGxpbmsuYywgZGxscy9zaGVsbDMyL3Rlc3RzL3NobGZpbGVvcC5jLAorCSAgZGxscy9zaGVsbDMyL3Rlc3RzL3NobGZvbGRlci5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlFbGltaW5hdGUgc29tZSAtV3dyaXRlLXN0cmluZ3Mgd2FybmluZ3MuCisKKwkqIGRsbHMvcnBjcnQ0L25kcl9tYXJzaGFsbC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBJbXByb3ZlIHRyYWNpbmcuCisJLSBJbXBsZW1lbnQgRkNfVVAgYW5kIHBhcnRpYWxseSBGQ19PUC4KKwktIERvbid0IG5lZWRsZXNzbHkgbWFyc2hhbCA0IGJ5dGVzIGluIE5kclBvaW50ZXIqLgorCisJKiBkbGxzL29sZWF1dDMyL3RtYXJzaGFsLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJZiB3ZSBhcmUgYWNjZXNzaW5nIGEgbWV0aG9kIGZyb20gYSBzdXBlcmNsYXNzIHRoZW4gd2UgbmVlZCB0byB1c2UgdGhlCisJc3VwZXJjbGFzcydzIElUeXBlSW5mbyBvdGhlcndpc2Ugd2UgY291bGQgZ2V0IGVycm9ycyB3aGVuIGFjY2Vzc2luZworCWhyZWZ0eXBlcyB0aGF0IGFyZW4ndCBwcmVzZW50IGluIHRoZSBzdWJjbGFzcy4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIEZpeCB0aGUgcmV0dXJuIHZhbHVlcyBmcm9tIFF1ZXJ5UGF0aE9mUmVnVHlwZUxpYi4KKwktIE9wZW4gcmVnaXN0cnkga2V5IHdpdGggbGVhc3QgYWNjZXNzIHJpZ2h0cyBuZWNlc3NhcnkuCisJLSBEb2N1bWVudGF0aW9uIHVwZGF0ZXMuCisKKwkqIGRsbHMvb2xlYXV0MzIvZGlzcGF0Y2guYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCURpc3BJbnZva2UgaXMgY29ycmVjdCBzbyB0aGVyZSBpcyBubyBuZWVkIHRvIHByaW50IGEgZml4bWUuCisKKwkqIGRsbHMvbXNpL2Zvcm1hdC5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQ2xlYW4gdXAgaGVhZGVycyBhbmQgbWFrZSBzb21lIGZ1bmN0aW9ucyBzdGF0aWMuCisKKwkqIGRsbHMvbXN2aWRlby9kcmF3ZGliLmM6IFJpY2hhcmQgQ29oZW4gPHJpY2hhcmRAZGFpam9idS5jby51az4KKwktIEFkZCBzdGF0aWMsIGNvbnN0LgorCS0gRG9uJ3QgY2hhbmdlIHRoZSBwYXNzZWQgaW4gYml0bWFwIGhlYWRlci4KKworCSogZGxscy9tc2kvbXNpcHJpdi5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJLSBhdm9pZCB1bmljb2RlLmgKKwktIGFkZCBhIG1pc3NpbmcgZnVuY3Rpb24gcHJvdG90eXBlCisKKzIwMDUtMDUtMzEgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvdXNlci90ZXN0cy93aW4uYzogSmFzb24gRWRtZWFkZXMgPHVzQHRoZS1lZG1lYWRlcy5kZW1vbi5jby51az4KKwlBZGRlZCB0ZXN0IGNhc2UgZm9yIGluZmluaXRlIGxvb3BzIG9uIFJEV19SRURSQVdOT1cuCisKKwkqIGRsbHMvdXNlci9wYWludGluZy5jLCBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsCisJICBzZXJ2ZXIvcHJvdG9jb2wuZGVmLCBzZXJ2ZXIvdHJhY2UuYywgc2VydmVyL3dpbmRvdy5jOgorCUFkZGVkIGEgZnJvbV9jaGlsZCBwYXJhbWV0ZXIgdG8gdGhlIGdldF91cGRhdGVfcmVnaW9uIHJlcXVlc3QgdG8gYWxsb3cKKwlyZXN0YXJ0aW5nIHRoZSBzZWFyY2ggZnJvbSBhIGdpdmVuIGNoaWxkLCBpbiBvcmRlciB0byBhdm9pZCBsb29waW5nCisJZm9yZXZlciBvbiB3aW5kb3dzIHRoYXQgZG9uJ3QgcmVwYWludCBjb3JyZWN0bHkuCisKKwkqIGRsbHMvc2V0dXBhcGkvcGFyc2VyLmM6IFNraXAgdGhlIFVuaWNvZGUgc2lnbmF0dXJlIGlmIHByZXNlbnQuCisKKwkqIGRsbHMva2VybmVsL2luc3RyLmM6IEl2YW4gTGVvIFB1b3RpIDxpdmFubGVvQGdtYWlsLmNvbT4KKwlBZGRlZCBJRFQgZW11bGF0aW9uLgorCisJKiBkbGxzL250ZGxsL2RpcmVjdG9yeS5jOiBEZXRsZWYgUmlla2VuYmVyZyA8d2luZS5kZXZAd2ViLmRlPgorCU1hcmsgbGlua3MgdG8gZGlyIHdpdGggRklMRV9BVFRSSUJVVEVfUkVQQVJTRV9QT0lOVCwgc28gbW9kZXJuCisJYXBwbGljYXRpb25zIGNhbiB1c2UgdGhpcyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uLgorCisJKiBkbGxzL2FkdmFwaTMyL2FkdmFwaS5jLCBkbGxzL2FkdmFwaTMyL2FkdmFwaTMyLnNwZWMsCisJICBkbGxzL2tlcm5lbC9wcm9maWxlLmMsIGRsbHMvbnRkbGwvcnRsc3RyLmMsIGluY2x1ZGUvd2luYmFzZS5oLAorCSAgaW5jbHVkZS93aW50ZXJubC5oOgorCUZpeGVkIFJ0bElzVGV4dFVuaWNvZGUgcHJvdG90eXBlLCBhbmQgbWFkZSBpdCBwcm9wZXJseSB0YWtlIGludG8KKwlhY2NvdW50IHRoZSByZXN1bHRzIG9mIHRoZSB0ZXN0cyB0byBkZXRlcm1pbmUgdGhlIHJldHVybiB2YWx1ZS4KKworCSogaW5jbHVkZS9jb21tY3RybC5oOiBBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJVFZfSVRFTSBpcyB0aGUgb2xkIG5hbWUgb2YgVFZJVEVNLCBzaG91bGRuJ3QgYmUgdXNlZCBhbnkgbW9yZS4KKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL3F1ZXJ5Lmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVJlbW92ZSBzb21lIHVudXNlZCBjb2RlLgorCisJKiBkbGxzL3dpbnNwb29sL01ha2VmaWxlLmluOiBSZW1vdmUgaW1wb3J0IGxpYiBvbiBtYWtlIGNsZWFuLgorCisJKiBkbGxzL3dpbmVwcy9NYWtlZmlsZS5pbjoKKwlGaXhlZCBpbnN0YWxsIHJ1bGUgKHJlcG9ydGVkIGJ5IFZpbmNlbnQgQulyb24pLgorCisJKiBkbGxzL3ZlcnNpb24vdGVzdHMvLmN2c2lnbm9yZSwgZGxscy92ZXJzaW9uL3Rlc3RzL01ha2VmaWxlLmluLAorCSAgZGxscy92ZXJzaW9uL3Rlc3RzL2luZm8uYywgZGxscy92ZXJzaW9uL3Rlc3RzL3ZlcnNpb24ucmM6CisJU3RlZmFuIExlaWNodGVyIDxTdGVmYW4uTGVpY2h0ZXJAY2FtTGluZS5jb20+CisJVGVzdCBHZXRGaWxlVmVyc2lvbkluZm9TaXplQSB3aXRoIGV4ZWN1dGFibGVzLgorCisJKiBkbGxzL2RkcmF3L01ha2VmaWxlLmluLCBkbGxzL2RkcmF3L2NvbnZlcnQuYywKKwkgIGRsbHMvZGRyYXcvZGRyYXdfdXRpbHMuYywgZGxscy9kZHJhdy9oZWxwZXIuYywKKwkgIGRsbHMvZGRyYXcvc3RydWN0X2NvbnZlcnQuYzoKKwlDaHJpc3RpYW4gQ29zdGEgPHRpdGFuLmNvc3RhQHdhbmFkb28uZnI+CisJTWVyZ2VkIGNvbnZlcnQuYywgc3RydWN0X2NvbnZlcnQuYyBhbmQgaGVscGVyLmMgaW50byBkZHJhd191dGlscy5jLgorCisJKiBkbGxzL250ZGxsL3NlYy5jOiBFdmFuIERlYXVibCA8d2luZUB3YXJwZWR2aWV3LmNvbT4KKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBJbXBsZW1lbnQgUnRsR2V0Q29udHJvbFNlY3VyaXR5RGVzY3JpcHRvci4KKwktIEZpeCBOdEFjY2Vzc0NoZWNrIHNvIGl0IHdvcmtzIHdpdGggcmVsYXRpdmUgU0VDVVJJVFlfREVTQ1JJUFRPUnMuCisKKwkqIGRsbHMvY3J5cHQzMi9jcnlwdDMyLnNwZWMsIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywKKwkgIGRsbHMvY3J5cHQzMi9tYWluLmM6CisJSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCS0gaW1wbGVtZW50IENyeXB0e0dldHxTZXR9T0lERnVuY3Rpb25WYWx1ZQorCS0gZml4IGJ1ZyBhbmQgbWVtb3J5IGxlYWsgaW4gbGFzdCBwYXRjaAorCisJKiBkbGxzL2Rzb3VuZC9idWZmZXIuYywgZGxscy9kc291bmQvZHNvdW5kLmMsCisJICBkbGxzL2Rzb3VuZC9kc291bmRfbWFpbi5jLCBkbGxzL2Rzb3VuZC9kc291bmRfcHJpdmF0ZS5oLAorCSAgZGxscy9kc291bmQvbWl4ZXIuYywgZGxscy9kc291bmQvcHJpbWFyeS5jLCBkbGxzL2Rzb3VuZC9zb3VuZDNkLmM6CisJUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlBZGQgbXVsdGlwbGUgRElSRUNUU09VTkQgb2JqZWN0IHN1cHBvcnQgKG11bHRpcGxlIHNvdW5kIGNhcmRzIGNhbiBwbGF5CisJYXQgdGhlIHNhbWUgdGltZSkuCisJRml4IENvQ3JlYXRlSW5zdGFuY2Ugd2hlbiBubyBzb3VuZCBjYXJkIGlzIHByZXNlbnQuCisJRml4IGNyZWF0ZSBidWcgZm91bmQgYnkgTWlrZSBIZWFybi4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvZHJpdmUuYywgZGxscy9rZXJuZWwvdGVzdHMvZm9ybWF0X21zZy5jLAorCSAgZGxscy9rZXJuZWwvdGVzdHMvbG9jYWxlLmMsIGRsbHMva2VybmVsL3Rlc3RzL3BhdGguYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJU29tZSB3YXJuaW5nIGZpeGVzIGZvciB0aGUgcmVncmVzc2lvbiB0ZXN0cy4KKworCSogZGxscy9tc2kvZGF0YWJhc2UuYywgZGxscy9tc2kvZGlhbG9nLmMsIGRsbHMvbXNpL2V2ZW50cy5jLAorCSAgZGxscy9tc2kvbXNpcHJpdi5oLCBkbGxzL21zaS9tc2lxdWVyeS5jLCBkbGxzL21zaS9wYWNrYWdlLmMsCisJICBkbGxzL21zaS9yZWNvcmQuYywgZGxscy9tc2kvdGFibGUuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTW9yZSAtV21pc3NpbmctZGVjbGFyYXRpb25zIGFuZCAtV3dyaXRlLXN0cmluZ3Mgd2FybmluZyBmaXhlcy4KKworCSogZGxscy9tc2kvc3FsLnk6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbXByb3ZlIG51bWJlciBwYXJzaW5nIGFuZCBhdm9pZCB1bmljb2RlLmguCisKKzIwMDUtMDUtMzAgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvbnRkbGwvZGlyZWN0b3J5LmM6IEZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBjb2Rld2VhdmVycy5jb20+CisJT24gc29tZSBzeXN0ZW1zIChsaW51eCAyLjYuOCkgQUZTIGZhaWxzIHRvIHNldCBkX3JlY2xlbiB0byAwIG9yIGRvZXMKKwlub3Qgc3VwcG9ydCBWRkFUX0lPQ1RMX1JFQURESVJfQk9USCBidXQgcmV0dXJucyAwIChzdWNjZXNzKSBhbnl3YXkuIFNvCisJc2V0IGRfcmVjbGVuIHRvIDY1NTM1IChhbiBpbXBvc3NpYmxlIHZhbHVlKSBiZWZvcmUgdGhlIGlvY3RsKCkgYW5kCisJY2hlY2sgaXQgYWZ0ZXJ3YXJkcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ1Zy4KKworCSogZGxscy9tc2kvaW5zZXJ0LmMsIGRsbHMvbXNpL3F1ZXJ5LmgsIGRsbHMvbXNpL3NxbC55OgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZW1vdmUgbW9yZSB0eXBlcyBmcm9tIHRoZSBwYXJzZXIuCisKKwkqIGRsbHMvbXNpL21zaS5jLCBkbGxzL21zaS9zdW1pbmZvLmMsIGluY2x1ZGUvbXNpLmgsCisJICBpbmNsdWRlL21zaXF1ZXJ5Lmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhbmQgY29ycmVjdCBzb21lIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucy4KKworCSogZGxscy93aW5tbS93aW5lb3NzL2F1ZGlvLmMsIGRsbHMvd2lubW0vd2luZW9zcy9hdWRpby5oOgorCVJvYmVydCBSZWlmIDxyZWlmQGVhcnRobGluay5uZXQ+CisJQWRkIHN1cHBvcnQgZm9yIG1vcmUgdGhhbiAyIGF1ZGlvIGNoYW5uZWxzLgorCisJKiBkbGxzL2RkcmF3L3Rlc3RzLy5jdnNpZ25vcmUsIGRsbHMvZGRyYXcvdGVzdHMvTWFrZWZpbGUuaW4sCisJICBkbGxzL2RkcmF3L3Rlc3RzL2RzdXJmYWNlLmM6CisJQW50b2luZSBDaGF2YXNzZSA8YS5jaGF2YXNzZUBnbWFpbC5jb20+CisJLSBJbXBsZW1lbnRlZCB0aGUgaW1wbGljaXQgY3JlYXRpb24gb2YgbWlwbWFwcyBmb3Igc3VyZmFjZXMgdGhhdCBoYXZlCisJICBERFNDQVBTX0NPTVBMRVgsIEREU0NBUFNfTUlQTUFQIGFuZCBmb3Igd2hpY2ggdGhlIG1pcG1hcCBjb3VudCBpcworCSAgbm90IHNwZWNpZmllZC4KKwktIEltcGxlbWVudGVkIHRlc3QgY2FzZXMgZm9yIG1pcG1hcCB0ZXh0dXJlcyBjcmVhdGlvbi4KKworCSogZGxscy9jb21jdGwzMi9saXN0dmlldy5jOiBLb3VqaSBTYXNha2kgPHRhcm8teEBqdXN0c3lzdGVtLmNvLmpwPgorCUFkZGVkIHRoZSBmZWF0dXJlIHRvIGNoYW5nZSByb3cgaGVpZ2h0IGluIG93bmVyIGRyYXcgY29udHJvbHMuCisKKwkqIGRsbHMvdXNlci9lZGl0LmM6IEtvdWppIFNhc2FraSA8dGFyby14QGp1c3RzeXN0ZW0uY28uanA+CisJQ29ycmVjdGVkIHRoZSBkZXRlcm1pbmF0aW9uIG9mIGNhcHR1cmluZyBpbnNpZGUgRURJVF9XTV9Nb3VzZU1vdmUKKwlmdW5jdGlvbi4KKworCSogZGxscy9kZXZlbnVtL2NyZWF0ZWRldmVudW0uYywgZGxscy9kZXZlbnVtL2RldmVudW1fcHJpdmF0ZS5oLAorCSAgZGxscy9kZXZlbnVtL2ZhY3RvcnkuYywgZGxscy9kZXZlbnVtL21lZGlhY2F0ZW51bS5jLAorCSAgZGxscy9kZXZlbnVtL3BhcnNlZGlzcGxheW5hbWUuYywgZGxscy9kaW5wdXQvZGV2aWNlX3ByaXZhdGUuaCwKKwkgIGRsbHMvZGlucHV0L2RpbnB1dF9tYWluLmMsIGRsbHMvZGlucHV0L2RpbnB1dF9wcml2YXRlLmgsCisJICBkbGxzL2RpbnB1dC9qb3lzdGlja19saW51eC5jLCBkbGxzL2RpbnB1dC9qb3lzdGlja19saW51eGlucHV0LmMsCisJICBkbGxzL2RpbnB1dC9rZXlib2FyZC5jLCBkbGxzL2RpbnB1dC9tb3VzZS5jLCBkbGxzL2RtYmFuZC9iYW5kLmMsCisJICBkbGxzL2RtYmFuZC9iYW5kdHJhY2suYywgZGxscy9kbWJhbmQvZG1iYW5kX21haW4uYywKKwkgIGRsbHMvZG1iYW5kL2RtYmFuZF9wcml2YXRlLmgsIGRsbHMvZG1jb21wb3MvY2hvcmRtYXAuYywKKwkgIGRsbHMvZG1jb21wb3MvY2hvcmRtYXB0cmFjay5jLCBkbGxzL2RtY29tcG9zL2NvbXBvc2VyLmMsCisJICBkbGxzL2RtY29tcG9zL2RtY29tcG9zX21haW4uYywgZGxscy9kbWNvbXBvcy9kbWNvbXBvc19wcml2YXRlLmgsCisJICBkbGxzL2RtY29tcG9zL3NpZ25wb3N0dHJhY2suYywgZGxscy9kbWltZS9hdWRpb3BhdGguYywKKwkgIGRsbHMvZG1pbWUvZG1pbWVfbWFpbi5jLCBkbGxzL2RtaW1lL2RtaW1lX3ByaXZhdGUuaCwKKwkgIGRsbHMvZG1pbWUvZ3JhcGguYywgZGxscy9kbWltZS9seXJpY3N0cmFjay5jLAorCSAgZGxscy9kbWltZS9tYXJrZXJ0cmFjay5jLCBkbGxzL2RtaW1lL3BhcmFtY29udHJvbHRyYWNrLmMsCisJICBkbGxzL2RtaW1lL3BhdHRlcm50cmFjay5jLCBkbGxzL2RtaW1lL3BlcmZvcm1hbmNlLmMsCisJICBkbGxzL2RtaW1lL3NlZ21lbnQuYywgZGxscy9kbWltZS9zZWdtZW50c3RhdGUuYywKKwkgIGRsbHMvZG1pbWUvc2VndHJpZ2dlcnRyYWNrLmMsIGRsbHMvZG1pbWUvc2VxdHJhY2suYywKKwkgIGRsbHMvZG1pbWUvc3lzZXh0cmFjay5jLCBkbGxzL2RtaW1lL3RlbXBvdHJhY2suYywKKwkgIGRsbHMvZG1pbWUvdGltZXNpZ3RyYWNrLmMsIGRsbHMvZG1pbWUvdG9vbC5jLCBkbGxzL2RtaW1lL3dhdmV0cmFjay5jLAorCSAgZGxscy9kbWxvYWRlci9jbGFzc2ZhY3RvcnkuYywgZGxscy9kbWxvYWRlci9jb250YWluZXIuYywKKwkgIGRsbHMvZG1sb2FkZXIvZG1sb2FkZXJfcHJpdmF0ZS5oLCBkbGxzL2RtbG9hZGVyL2xvYWRlci5jLAorCSAgZGxscy9kbWxvYWRlci9sb2FkZXJzdHJlYW0uYywgZGxscy9kbXNjcmlwdC9kbXNjcmlwdF9tYWluLmMsCisJICBkbGxzL2Rtc2NyaXB0L2Rtc2NyaXB0X3ByaXZhdGUuaCwgZGxscy9kbXNjcmlwdC9zY3JpcHQuYywKKwkgIGRsbHMvZG1zY3JpcHQvc2NyaXB0dHJhY2suYywgZGxscy9kbXN0eWxlL2F1ZGl0aW9udHJhY2suYywKKwkgIGRsbHMvZG1zdHlsZS9jaG9yZHRyYWNrLmMsIGRsbHMvZG1zdHlsZS9jb21tYW5kdHJhY2suYywKKwkgIGRsbHMvZG1zdHlsZS9kbXN0eWxlX21haW4uYywgZGxscy9kbXN0eWxlL2Rtc3R5bGVfcHJpdmF0ZS5oLAorCSAgZGxscy9kbXN0eWxlL21vdGlmdHJhY2suYywgZGxscy9kbXN0eWxlL211dGV0cmFjay5jLAorCSAgZGxscy9kbXN0eWxlL3N0eWxlLmMsIGRsbHMvZG1zdHlsZS9zdHlsZXRyYWNrLmM6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIG1vcmUgb2YgdGhlIE9MRSBpbnRlcmZhY2UgdnRhYmxlcyBjb25zdC4KKworCSogZGxscy9jb21jdGwzMi9tb250aGNhbC5jLCBkbGxzL2NyeXB0MzIvcHJvdGVjdGRhdGEuYywKKwkgIGRsbHMvbXNpL2FjdGlvbi5oLCBkbGxzL29wZW5nbDMyL21ha2Vfb3BlbmdsLAorCSAgZGxscy93aW5lZDNkL3ZlcnRleGRlY2xhcmF0aW9uLmMsIGRsbHMvd2lubW0vd2lubW1fRW4ucmM6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJQXNzb3J0ZWQgc3BlbGxpbmcgZml4ZXMuCisKKwkqIHByb2dyYW1zL21zaWV4ZWMvdmVyc2lvbi5yYzoKKwlTdGVmYW4gTGVpY2h0ZXIgPFN0ZWZhbi5MZWljaHRlckBjYW1MaW5lLmNvbT4KKwlVcGRhdGUgdmVyc2lvbiByZXNvdXJjZSBvZiBtc2lleGVjLmV4ZSB0byBjdXJyZW50IHZlcnNpb24gc2hpcHBlZCBmcm9tCisJV2luZG93cyBVcGRhdGUuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL0NzLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0VuLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Fcy5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0ZyLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9IdS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0l0LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9ObC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1BsLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9QdC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1J1LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9TaS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1N2LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9aaC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL3Jlc291cmNlLmgsIHByb2dyYW1zL3dpbmVmaWxlL3Jlc291cmNlLnJjLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuYzoKKwlNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCS0gaW1wbGVtZW50IGNvbW1hbmRzICdjb3B5JyBhbmQgJ2RlbGV0ZScKKwktIGZpeCAnbW92ZScgY29tbWFuZCBmb3IgdGhlIGxlZnQgcGFuZQorCisyMDA1LTA1LTI5ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL29sZWF1dDMyL29sZWF1dDMyLnNwZWMsIGRsbHMvb2xlYXV0MzIvdmFyZm9ybWF0LmM6CisJTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJQWRkZWQgVmFyTW9udGhOYW1lKCkgaW1wbGVtZW50YXRpb24uCisKKwkqIGRsbHMvbXNpL2NyZWF0ZS5jLCBkbGxzL21zaS9pbnNlcnQuYywgZGxscy9tc2kvb3JkZXIuYywKKwkgIGRsbHMvbXNpL3F1ZXJ5LmgsIGRsbHMvbXNpL3NlbGVjdC5jLCBkbGxzL21zaS9zcWwueSwKKwkgIGRsbHMvbXNpL3VwZGF0ZS5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlHZXQgcmlkIG9mIHNvbWUgcmVkdW5kYW50IHBhcnNlciB0eXBlcy4KKworCSogcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuYzogTWFydGluIEZ1Y2hzIDxtYXJ0aW4tZnVjaHNAZ214Lm5ldD4KKwlSZWZyZXNoIGRpc3BsYXkgYWZ0ZXIgZXhlY3V0aW5nIGEgY29udGV4dCBtZW51IGNvbW1hbmQuCisKKwkqIGRsbHMvbXNpL2NvbmQueSwgZGxscy9tc2kvZm9ybWF0LmMsIGRsbHMvbXNpL3Rlc3RzL2RiLmMsCisJICBkbGxzL21zaS90ZXN0cy9yZWNvcmQuYywgZGxscy9tc2kvdG9rZW5pemUuYywgZGxscy9tc2kvd2hlcmUuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyBhbmQgLVd3cml0ZS1zdHJpbmdzIHdhcm5pbmcgZml4ZXMuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL0NzLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0VuLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Fcy5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0ZyLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9IdS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL0l0LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9NYWtlZmlsZS5pbiwKKwkgIHByb2dyYW1zL3dpbmVmaWxlL05sLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9QbC5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1B0LnJjLCBwcm9ncmFtcy93aW5lZmlsZS9SdS5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1NpLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9Tdi5yYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL1poLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9yZXNvdXJjZS5oLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuYzoKKwlNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCUltcGxlbWVudCBmaWxlIGZpbHRlcmluZyAobWF0Y2hpbmcgb2YgZmlsZSBuYW1lIHBhdHRlcm5zIGFuZCBmaWxlCisJdHlwZXMpLgorCisJKiBkbGxzL21zdmNydC9kaXIuYywgZGxscy9tc3ZjcnQvbXN2Y3J0LnNwZWM6CisJRXJpYyBQb3VlY2ggPHBvdWVjaC1lcmljQHdhbmFkb28uZnI+CisJX2ZpbmRjbG9zZSgpIGV4aXN0cyBvbiBNaW5HVywgc28gcHJlZml4IGl0LgorCisJKiBwcm9ncmFtcy93aW5lZGJnL2dkYnByb3h5LmM6IEVyaWMgUG91ZWNoIDxwb3VlY2gtZXJpY0B3YW5hZG9vLmZyPgorCVJlaW5kZW50ZWQgcGFydHMgdG8gYmUgY29uZm9ybSB0byB0aGUgcmVzdCBvZiB0aGUgY29kZS4KKworCSogcHJvZ3JhbXMvd2luZWRiZy9zdGFjay5jOiBFcmljIFBvdWVjaCA8cG91ZWNoLWVyaWNAd2FuYWRvby5mcj4KKwlSZXdyb3RlIGFsbCBzdGFjayBiYWNrdHJhY2UgY29kZSAobW9yZSBjb2RlIHNoYXJpbmcsIGVhc2llciB0byBmb2xsb3csCisJYW5kIGxlc3MgYnVncykuCisKKwkqIGluY2x1ZGUvd2luYmFzZS5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJLSBhbHdheXMgZGVjbGFyZSB0aGUgbHN0ciogZnVuY3Rpb25zLCBldmVuIGlmIHRoZXkncmUgaW5saW5lCisJLSBhZGQgcHJvdG90eXBlIGZvciBSZWFkRGlyZWN0b3J5Q2hhbmdlc1cKKworCSogZGxscy93aW5tbS93aW5lYWxzYS9hbHNhLmg6IE1hcmN1cyBNZWlzc25lciA8bWVpc3NuZXJAc3VzZS5kZT4KKwkjdW5kZWYgaW50ZXJmYWNlIGJlZm9yZSBpbmNsdWRpbmcgYWxzYSBoZWFkZXJzLgorCisJKiBkbGxzL3dpbm1tL3dpbmVvc3MvYXVkaW8uYzogUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlGaXggYSBtdWx0aXBsZSBzb3VuZCBjYXJkIGludGVyZmFjZSBidWcuCisJQWRkIGJldHRlciBlcnJvciBtZXNzYWdlcy4KKworCSogZGxscy9kYmdoZWxwL2RiZ2hlbHAuc3BlYywgZGxscy9kYmdoZWxwL21vZHVsZS5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQWRkIFN5bUxvYWRNb2R1bGU2NC4KKworCSogZGxscy9jb21jdGwzMi9saXN0dmlldy5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCVBhc3MgdGhlIHJpZ2h0IGh3bmQgdG8gUmVsZWFzZURDKCkuCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYzogUm9iZXJ0IFJlaWYgPHJlaWZAZWFydGhsaW5rLm5ldD4KKwlGaXggdm9sdW1lIGNvbnRyb2wuCisKKwkqIGRsbHMvZDNkOC9kM2Q4X3ByaXZhdGUuaDoKKwlLcmlzdGlhYW4gTGVuYWVydHMgPGtyaXN0aWFhbi5sZW5hZXJ0c0BnbWFpbC5jb20+CisJZ2NjIDQuMCBjb21waWxlIGZpeC4KKworCSogZGxscy94MTFkcnYva2V5Ym9hcmQuYzogRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggRXN0b25pYW4ga2V5Ym9hcmQgbGF5b3V0IHRvIGJldHRlciBtYXRjaCB0aGUgWDExIG9uZS4KKworCSogZGxscy9xY2FwL2RsbHNldHVwLmM6IEZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCVJlbW92ZSB1bm5lZWRlZCBjYXN0LgorCisJKiBkbGxzL29sZWF1dDMyL3Rlc3RzL3ZhcnRlc3QuYzoKKwlNaWNoYWVsIFN0ZWZhbml1YyA8bXN0ZWZhbmlAcmVkaGF0LmNvbT4KKwlUZXN0cyBmb3IgVmFyQWRkLgorCisJKiBkbGxzL29sZWF1dDMyL3ZhcmlhbnQuYzogTWljaGFlbCBTdGVmYW5pdWMgPG1zdGVmYW5pQHJlZGhhdC5kZT4KKwktIFJlaW1wbGVtZW50IFZhckFkZCwgaGFkIG1pc3NpbmcgZnVuY3Rpb25hbGl0eSBhbmQgd3JvbmcgYmVoYXZpb3VyLgorCS0gRml4IGEgdHlwbyBpbiBWYXJNdWwuCisKKwkqIGRsbHMva2VybmVsL2xvY2FsMTYuYzogRGltaSBQYXVuIDxkaW1pQGxhdHRpY2EuY29tPgorCUZpeCBpbmRlbnRhdGlvbi4KKworCSogcHJvZ3JhbXMvd2luZXRlc3QvTWFrZWZpbGUuaW46CisJU3RlZmFuIExlaWNodGVyIDxTdGVmYW4uTGVpY2h0ZXJAY2FtTGluZS5jb20+CisJSW5jbHVkZSBjcnlwdDMyIHRlc3RzIGludG8gd2luZXRlc3QuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYzogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCVVzZSByZWdpc3RlcmVkIERMTHMgZm9yIGVuY29kZS9kZWNvZGUuCisKKwkqIGluY2x1ZGUvd2luY3J5cHQuaDogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUFkZCBhIGZldyBtaXNzaW5nIGRlZmluZXMuCisKKzIwMDUtMDUtMjcgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvYW1zdHJlYW0vYW1zdHJlYW0uYywgZGxscy9hbXN0cmVhbS9tYWluLmMsIGRsbHMvYXRsL3JlZ2lzdHJhci5jLAorCSAgZGxscy9hdmlmaWwzMi9hY21zdHJlYW0uYywgZGxscy9hdmlmaWwzMi9hdmlmaWxlLmMsCisJICBkbGxzL2F2aWZpbDMyL2VkaXRzdHJlYW0uYywgZGxscy9hdmlmaWwzMi9mYWN0b3J5LmMsCisJICBkbGxzL2F2aWZpbDMyL2dldGZyYW1lLmMsIGRsbHMvYXZpZmlsMzIvaWNtc3RyZWFtLmMsCisJICBkbGxzL2F2aWZpbDMyL3RtcGZpbGUuYywgZGxscy9hdmlmaWwzMi93YXZmaWxlLmMsCisJICBkbGxzL2NvbWNhdC9jb21jYXRfcHJpdmF0ZS5oLCBkbGxzL2NvbWNhdC9mYWN0b3J5LmMsCisJICBkbGxzL2NvbWNhdC9pbmZvcm1hdGlvbi5jLCBkbGxzL2NvbWNhdC9tYW5hZ2VyLmMsCisJICBkbGxzL2NvbWNhdC9yZWdpc3Rlci5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYywKKwkgIGRsbHMvZDNkOC9iYXNldGV4dHVyZS5jLCBkbGxzL2QzZDgvY3ViZXRleHR1cmUuYywKKwkgIGRsbHMvZDNkOC9kM2Q4X3ByaXZhdGUuaCwgZGxscy9kM2Q4L2RldmljZS5jLCBkbGxzL2QzZDgvZGlyZWN0eC5jLAorCSAgZGxscy9kM2Q4L2luZGV4YnVmZmVyLmMsIGRsbHMvZDNkOC9yZXNvdXJjZS5jLCBkbGxzL2QzZDgvc3VyZmFjZS5jLAorCSAgZGxscy9kM2Q4L3N3YXBjaGFpbi5jLCBkbGxzL2QzZDgvdGV4dHVyZS5jLCBkbGxzL2QzZDgvdmVydGV4YnVmZmVyLmMsCisJICBkbGxzL2QzZDgvdm9sdW1lLmMsIGRsbHMvZDNkOC92b2x1bWV0ZXh0dXJlLmMsCisJICBkbGxzL2QzZDkvYmFzZXRleHR1cmUuYywgZGxscy9kM2Q5L2N1YmV0ZXh0dXJlLmMsCisJICBkbGxzL2QzZDkvZDNkOV9wcml2YXRlLmgsIGRsbHMvZDNkOS9kZXZpY2UuYywgZGxscy9kM2Q5L2RpcmVjdHguYywKKwkgIGRsbHMvZDNkOS9pbmRleGJ1ZmZlci5jLCBkbGxzL2QzZDkvcGl4ZWxzaGFkZXIuYywgZGxscy9kM2Q5L3F1ZXJ5LmMsCisJICBkbGxzL2QzZDkvcmVzb3VyY2UuYywgZGxscy9kM2Q5L3N0YXRlYmxvY2suYywgZGxscy9kM2Q5L3N1cmZhY2UuYywKKwkgIGRsbHMvZDNkOS9zd2FwY2hhaW4uYywgZGxscy9kM2Q5L3RleHR1cmUuYywgZGxscy9kM2Q5L3ZlcnRleGJ1ZmZlci5jLAorCSAgZGxscy9kM2Q5L3ZlcnRleGRlY2xhcmF0aW9uLmMsIGRsbHMvZDNkOS92ZXJ0ZXhzaGFkZXIuYywKKwkgIGRsbHMvZDNkOS92b2x1bWUuYywgZGxscy9kM2Q5L3ZvbHVtZXRleHR1cmUuYywKKwkgIGRsbHMvZDNkeDgvZDNkeDhjb3JlX3ByaXZhdGUuaCwgZGxscy9kM2R4OC9kM2R4YnVmZmVyLmMsCisJICBkbGxzL2QzZHhvZi9kM2R4b2YuYywgZGxscy9kM2R4b2YvZDNkeG9mX3ByaXZhdGUuaCwKKwkgIGRsbHMvZDNkeG9mL21haW4uYywgZGxscy9kZHJhdy9kM2RleGVjdXRlYnVmZmVyLmMsCisJICBkbGxzL2RkcmF3L2QzZGxpZ2h0LmMsIGRsbHMvZGRyYXcvZDNkbWF0ZXJpYWwuYywKKwkgIGRsbHMvZGRyYXcvZDNkdGV4dHVyZS5jLCBkbGxzL2RkcmF3L2QzZHZlcnRleGJ1ZmZlci5jLAorCSAgZGxscy9kZHJhdy9kM2R2aWV3cG9ydC5jLCBkbGxzL2RkcmF3L21haW4uYywgaW5jbHVkZS9vYmpiYXNlLmg6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIHNvbWUgb2YgdGhlIE9MRSBpbnRlcmZhY2UgdnRhYmxlcyBjb25zdC4KKworCSogaW5jbHVkZS93aW5lL3Rlc3QuaCwgcHJvZ3JhbXMvd2luZXRlc3QvbWFpbi5jOgorCUFkZGVkIC0tbGlzdCBvcHRpb24gdG8gdGhlIHRlc3RzIGFuZCB1c2UgdGhhdCBpbiB3aW5ldGVzdC4KKworCSogZGxscy9rZXJuZWwvaW5zdHIuYzogSXZhbiBMZW8gUHVvdGkgPGl2YW5sZW9AZ21haWwuY29tPgorCUFkZGVkIHNvbWUgcHJpdmlsZWdlZCBpbnN0cnVjdGlvbnMgZW11bGF0aW9uLgorCisJKiBkbGxzL2dkaS9nZGlvYmouYywgcHJvZ3JhbXMvd2luZXZkbS93aW5ldmRtLmM6CisJRGltaSBQYXVuIDxkaW1pQGxhdHRpY2EuY29tPgorCU1vdmUgcmVtYWluaW5nIEdESSBvYmplY3RzIHRvIHRoZSBsYXJnZSBoZWFwLgorCisJKiBkbGxzL250ZGxsL2xvYWRvcmRlci5jLCBkbGxzL3VzZXIvbXNnYm94LmMsIGRsbHMvdXNlci9ub25jbGllbnQuYywKKwkgIGRsbHMvdXNlci90ZXh0LmM6CisJUmljaGFyZCBDb2hlbiA8cmljaGFyZEBkYWlqb2J1LmNvLnVrPgorCUZpeCBzb21lIG9ic29sZXRlIGNvbW1lbnRzCisKKwkqIGRsbHMvbXNpL3Rlc3RzLy5jdnNpZ25vcmUsIGRsbHMvbXNpL3Rlc3RzL01ha2VmaWxlLmluLAorCSAgZGxscy9tc2kvdGVzdHMvZGIuYywgZGxscy9tc2kvdGVzdHMvZm9ybWF0LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQWRkIGZvcm1hdCByZWNvcmQgdGVzdHMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9hY3Rpb24uaCwgZGxscy9tc2kvY3VzdG9tLmMsCisJICBkbGxzL21zaS9ldmVudHMuYywgZGxscy9tc2kvbXNpcHJpdi5oOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJSW50cm9kdWNlIHJlYWxseSBiYXNpYyBzY3JpcHRpbmcgb2YgYWN0aW9ucy4gVGhpcyBpcyBwcmltYXJpbHkgdG8gZ2V0CisJdGhlIG9yZGVyIG9mIGV4ZWN1dGlvbiBvZiB0aGUgYWN0aW9uIGNvcnJlY3Qgc2luY2Ugc29tZSBjdXN0b20gYWN0aW9ucworCWNhbiBiZSBzY3JpcHRlZCBhbmQgb3RoZXJzIGFyZSBydW4gZHVyaW5nIHRoZSBzY3JpcHQgYnVpbGRpbmcgcGhhc2UuCisKKwkqIGRsbHMvbXNpL2Zvcm1hdC5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVJlc3RyaWN0IGRlZm9ybWF0aW5nIG9mIG5lc3RlZCBpbmRleCBrZXlzIFtbMV1dLgorCUludHJvZHVjZSB0aGUgYmVnaW5uaW5nIG9mIGdyb3VwIGRlZm9ybWF0aW5nIHt9LgorCisJKiBkbGxzL3JzYWVuaC9NYWtlZmlsZS5pbiwgZGxscy9yc2FlbmgvcnNhZW5oLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVVzZSB0aGUgRGF0YSBQcm90ZWN0aW9uIEFQSSB0byBwcm90ZWN0IHRoZSB1c2VycyBwcml2YXRlIGtleXMuCisKKwkqIGRsbHMvY3J5cHQzMi9wcm90ZWN0ZGF0YS5jOiBNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJSXQncyBzdWZmaWNpZW5jdCBmb3IgQ3J5cHRbVW5dUHJvdGVjdERhdGEgdG8gYWNxdWlyZSB0aGUgY3J5cHRvCisJY29udGV4dCB3aXRoIHRoZSBDUllQVF9WRVJJRllfQ09OVEVYVCBmbGFnIHNldC4KKworCSogZGxscy9xY2FwL01ha2VmaWxlLmluLCBkbGxzL3FjYXAvY2FwdHVyZS5oLCBkbGxzL3FjYXAvcWNhcF9tYWluLmMsCisJICBkbGxzL3FjYXAvdmZ3Y2FwdHVyZS5jOgorCU1hYXJ0ZW4gTGFua2hvcnN0IDxtLmIubGFua2hvcnN0QGdtYWlsLmNvbT4KKwlJbXBsZW1lbnRlZCBWZndDYXB0dXJlIGludGVyZmFjZS4KKworCSogZGxscy9yc2FlbmgvaW1wbGdsdWUuYzogTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCVVzZSBTeXN0ZW1GdW5jdGlvbjAzNiB0byBnZW5lcmF0ZSByYW5kb20gYnl0ZXMuCisKKwkqIGluY2x1ZGUvdmZ3Lmg6IFJvbGYgS2FsYmVybWF0dGVyIDxyb2xmLmthbGJlcm1hdHRlckBjaXRlbmcuY29tPgorCUFkZCBkZWNsYXJhdGlvbnMgZm9yIEFWSUNBUCBhbmQgU0RLIHBhcnQgb2YgVmlkZW8gQ2FwdHVyZSBEcml2ZXIKKwlJbnRlcmZhY2UuCisKKwkqIGRsbHMvbXNpL3JlY29yZC5jLCBkbGxzL21zaS90ZXN0cy9yZWNvcmQuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVGVzdCBhbmQgZml4IHRoZSBzaXplIG9mIHN0cmVhbSBmaWVsZHMgaW4gYSByZWNvcmQuCisKKwkqIGRsbHMvbXNpL01ha2VmaWxlLmluLCBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvYWN0aW9uLmgsCisJICBkbGxzL21zaS9ldmVudHMuYywgZGxscy9tc2kvbXNpcHJpdi5oOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCBkaWFsb2cgZXZlbnRzIGFuZCBob29rIHVwIHRoZSBkaWFsb2cgY29kZS4KKworCSogZGxscy91dWlkL3V1aWQuYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZCB4bWxkb20gZ3VpZHMuCisKKwkqIGRsbHMvYW1zdHJlYW0vYW1zdHJlYW0uYzogUGV0ZXIgT2Jlcm5kb3JmZXIgPGt1bWJheW84NEBhcmNvci5kZT4KKwlVc2UgcHJvcGVyIHJldHVybiB2YWx1ZXMgaW4gYW1zdHJlYW0gc3R1YiBmdW5jdGlvbnMuCisKKzIwMDUtMDUtMjYgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfZGVza3RvcC5jLCBkbGxzL3NoZWxsMzIvc2hmbGRyX2ZzLmMsCisJICBkbGxzL3NoZWxsMzIvc2hmbGRyX215Y29tcC5jOgorCVN0ZWZhbiBE9nNpbmdlciA8c3RlZmFuZG9lc2luZ2VyQGdteC5hdD4KKwkqSGFuZGxlIGNpZGw9PTAgaW4gc2hmbGRyX2Rlc2t0b3AsIHNoZmxkcl9mcyBhbmQgc2hmbGRyX215Y29tcC4KKwkqUmVtb3ZlIHRoZSBkd0F0dHJpYnV0ZXMgbWVtYmVyIGZyb20gdGhlIElHZW5lcmljU0ZJbXBsIGNsYXNzLCBpdCdzCisJbm90IG5lZWRlZCBhbmQgY2FuJ3QgYmUgaW5pdGlhbGlzZWQgaW4gSW5pdGlhbGl6ZSBhbmQgSW5pdGlhbGl6ZUV4LgorCisJKiBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvYWN0aW9uLmg6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXJzdCBwYXNzIGF0IHdyaXRpbmcgb3V0IEN1clZlciBrZXlzIGZvciBQcm9nSWRzLiBBbHNvIHByaW50IGEKKwltZXNzYWdlIGZvciB0aGUgYWN0aW9ucyB3ZSBza2lwLiBMaW5lcyB1cCB3aXRoIG5hdGl2ZSBNU0kgb3V0cHV0IGxvZ3MKKwlmb3IgZWFzZSBvZiBjb21wYXJpc29uLgorCisJKiBkbGxzL29kYmNjcDMyL29kYmNjcDMyLmMsIGRsbHMvb2RiY2NwMzIvb2RiY2NwMzIuc3BlYywKKwkgIGluY2x1ZGUvb2RiY2luc3QuaDoKKwlSZWluIEtsYXplcyA8d2lqbkB3YW5hZG9vLm5sPgorCUFkZCBhIHN0dWIgZm9yIE9EQkNDUGxBcHBsZXQuCisKKwkqIGRsbHMvcG93cnByb2YvcG93cnByb2YuYywgZGxscy9wb3dycHJvZi9wb3dycHJvZi5zcGVjOgorCVJlaW4gS2xhemVzIDx3aWpuQHdhbmFkb28ubmw+CisJQWRkIGEgc3R1YiBmb3IgSXNBZG1pbk92ZXJyaWRlQWN0aXZlLgorCisJKiBkbGxzL250ZGxsL2ZpbGUuYzoKKwlVd2UgQm9ubmVzIDxib25AZWxla3Ryb24uaWtwLnBoeXNpay50dS1kYXJtc3RhZHQuZGU+CisJQ2FsbCBmaWxlaW9fdGVybWluYXRlIGZvciBGSUxFX0FzeW5jV3JpdGVTZXJ2aWNlLgorCisJKiBzZXJ2ZXIvd2luZG93LmM6CisJQ3JvcCB0aGUgdXBkYXRlIHJlZ2lvbiB0byB0aGUgbmV3IHdpbmRvdyByZWN0YW5nbGUgd2hlbiByZXNpemluZyBhCisJd2luZG93LgorCisJKiBkbGxzL3VzZXIvc3B5LmM6CisJRG9uJ3QgZmV0Y2ggdGhlIHdpbmRvdyBjbGFzcyBuYW1lIGlmIGl0J3Mgbm90IG5lZWRlZCB0byBjb21wdXRlIHRoZQorCW1lc3NhZ2UgbmFtZS4KKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2FjdGlvbi5oLCBkbGxzL21zaS9tc2lwcml2Lmg6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBIGJpZyByZXdyaXRlIG9mIHRoZSB3aG9sZSBSZWdpc3RlckNsYXNzLCBSZWdpc3RlclByb2dJZCwKKwlSZWdpc3RlckV4dGVuc2lvbiBhbmQgUmVnaXN0ZXJNSU1FIGFjdGlvbnMuIFdlIG5vdyBoYW5kbGUgdmVyYnMKKwlwcm9wZXJseSwgaGFuZGxlIGRlcGVuZGFuY2llcyBhbmQgc3VjaCBwcm9wZXJseSBhbmQga2VlcCB0cmFjayBvZiB3aGF0CisJd2UgbmVlZCB0byByZWdpc3RlciBhbmQgd2hhdCB3ZSBkbyBub3QgcHJvcGVybHkuCisKKwkqIGRsbHMvY29tbWRsZy9maWxlZGxnLmMsIGRsbHMvY29tbWRsZy9maWxlZGxnYnJvd3Nlci5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlVc2UgSVNoZWxsRm9sZGVyOjpHZXREaXNwbGF5TmFtZU9mIGluc3RlYWQgb2YgU0hHZXRQYXRoRnJvbUlETGlzdCB0bworCWJlIGFibGUgdG8gYnJvd3NlIHNoZWxsIG5hbWVzcGFjZSBleHRlbnNpb25zLgorCisJKiBkbGxzL2NvbWN0bDMyL2xpc3R2aWV3LmM6IEtvdWppIFNhc2FraSA8dGFyby14QGp1c3RzeXN0ZW0uY28uanA+CisJQWRkZWQgdGhlIGNhbGxiYWNrIGl0ZW0gcHJvY2Vzc2luZyBmb3IgTElTVFZJRVdfRW5kRWRpdExhYmVsVAorCWZ1bmN0aW9uLgorCisJKiBpbmNsdWRlLy5jdnNpZ25vcmUsIGluY2x1ZGUvTWFrZWZpbGUuaW4sIGluY2x1ZGUveG1sZG9tLmlkbCwKKwkgIGluY2x1ZGUveG1sZG9tZGlkLmg6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIHNvbWUgaWRsIGRlZmluaXRpb25zLgorCisJKiB0b29scy93aWRsL3BhcnNlci55OgorCVdvcmthcm91bmQgdG8gYWxsb3cgdXNpbmcgdGhlIGFzeW5jIGtleXdvcmQgYXMgbWV0aG9kIG5hbWUuCisKKzIwMDUtMDUtMjUgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvdXNlci9NYWtlZmlsZS5pbiwgZGxscy91c2VyL2N1cnNvcmljb24uYywgZGxscy91c2VyL21pc2MuYywKKwkgIGRsbHMvdXNlci9zeXNwYXJhbXMuYywgZGxscy91c2VyL3VzZXJfbWFpbi5jOgorCU1vdmVkIGZ1bmN0aW9ucyBmcm9tIHdpbmRvd3MvdXNlci5jIHRvIG1vcmUgYXBwcm9wcmlhdGUgcGxhY2VzLCBhbmQKKwlnZXQgcmlkIG9mIHRoYXQgZmlsZS4KKworCSogc2VydmVyL2NvbnNvbGUuYywgc2VydmVyL2ZkLmMsIHNlcnZlci9maWxlLmMsIHNlcnZlci9tYWlsc2xvdC5jLAorCSAgc2VydmVyL21haW4uYywgc2VydmVyL25hbWVkX3BpcGUuYywgc2VydmVyL3Byb2Nlc3MuYywgc2VydmVyL3F1ZXVlLmMsCisJICBzZXJ2ZXIvcmVnaW9uLmMsIHNlcnZlci9yZWdpc3RyeS5jLCBzZXJ2ZXIvcmVxdWVzdC5jLAorCSAgc2VydmVyL3NpZ25hbC5jLCBzZXJ2ZXIvc25hcHNob3QuYywgc2VydmVyL3NvY2suYywgc2VydmVyL3RpbWVyLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gVXNlIE5VTEwgaW5zdGVhZCBvZiAwIGZvciBhbGwgbm9uLWhhbmRsZSBwb2ludGVycy4KKwktIEZpeCBub24tQU5TSSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMuCisJLSBNYWtlIGEgZnVuY3Rpb24gc3RhdGljLgorCisJKiBkbGxzL3VzZXIvdXNlcjE2LmM6CisJTW92ZWQgYSBjb3VwbGUgb2YgMTYtYml0IGZ1bmN0aW9ucyB0byBkbGxzL3VzZXIvdXNlcjE2LmMuCisKKwkqIGRsbHMvdXNlci9zeXNwYXJhbXMuYzogUmVpbiBLbGF6ZXMgPHdpam5Ad2FuYWRvby5ubD4KKwlVc2UgdGhlIHNjcmVlbiByZXNvbHV0aW9uIHRvIGNvbnZlcnQgZnJvbSB0d2lwcyAoMTQ0MCB0d2lwcyBpcyBvbmUKKwlpbmNoKSB0byBwaXhlbHMuCisKKwkqIGRsbHMvdXNlci9NYWtlZmlsZS5pbiwgZGxscy91c2VyL3N5c3BhcmFtcy5jLCBkbGxzL3VzZXIvdXNlcjE2LmMsCisJICBkbGxzL3VzZXIvdXNlcl9wcml2YXRlLmg6CisJTW92ZWQgdGhlIHN5c2NvbG9yIGZ1bmN0aW9ucyB0byBkbGxzL3VzZXIvc3lzcGFyYW1zLmMuCisKKwkqIGRsbHMvbXNpL2Zvcm1hdC5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCB0aGUgWyFmaWxlXSBmb3JtYXQgdG8gcHJvZHVjZSB0aGUgc2hvcnQgZmlsZW5hbWUuCisKKwkqIGluY2x1ZGUvd2luYmFzZS5oOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlGaXggc21hbGwgdHlwby4KKworCSogaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS9pZGlzcGlkcy5oLCBpbmNsdWRlL3htbGRvbWRpZC5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgc29tZSBtb3JlIGhlYWRlcnMuCisKKwkqIGluY2x1ZGUvd2luZS90ZXN0LmgsIHRvb2xzL21ha2VfY3Rlc3RzLmM6CisJQmV0dGVyIHN1cHBvcnQgZm9yIGJ1aWxkaW5nIHN0YW5kLWFsb25lIHRlc3RzLgorCisJKiBkbGxzL2dkaS9nZGkzMi5zcGVjLCBkbGxzL2dkaS9nZGlvYmouYzogRGltaSBQYXVuIDxkaW1pQGxhdHRpY2EuY29tPgorCVR1cm4gYSBHREkgb2JqZWN0IGludG8gYSBzeXN0ZW0gb2JqZWN0IHZpYSBhbiBleHBsaWNpdCBXaW5lIGV4dGVuc2lvbgorCXJhdGhlciB0aGVuIHRocm91Z2ggbWFnaWNhbCBwb2tlcyBpbiBtZW1vcnkuCisKKwkqIGRsbHMva2VybmVsL3Rlc3RzL21haWxzbG90LmMsIGRsbHMva2VybmVsL3Rlc3RzL3BpcGUuYywKKwkgIGRsbHMvbHpleHBhbmQvdGVzdHMvbHpleHBhbmRfbWFpbi5jOgorCVJlbW92ZWQgU1RBTkRBTE9ORSBpZmRlZnMuCisKKwkqIGRsbHMvdXJsbW9uL3Vtb24uYywgZGxscy91cmxtb24vdXJsbW9uLnNwZWM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCVN0dWIgaW1wbGVtZW50YXRpb24gZm9yIEdldFNvZnR3YXJlVXBkYXRlSW5mby4KKworCSogc2VydmVyL3RyYWNlLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIFByaW50IGNvbW1hcyBiZXR3ZWVuIEFDRSdzLgorCS0gRHVtcCBhY2Nlc3MgbWFza3MgZnJvbSBhbGwgQUNFJ3MuCisKKwkqIGRsbHMvY29tY3RsMzIvbGlzdHZpZXcuYzogS291amkgU2FzYWtpIDx0YXJvLXhAanVzdHN5c3RlbS5jby5qcD4KKwlDb3JyZWN0ZWQgdGhlIHByaW9yaXR5IG9mIG9wZXJhdG9ycyBmb3IgTElTVFZJRVdfR2V0TmV4dEl0ZW0KKwlmdW5jdGlvbi4KKworMjAwNS0wNS0yNCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogQU5OT1VOQ0UsIENoYW5nZUxvZywgVkVSU0lPTiwgY29uZmlndXJlOiBSZWxlYXNlIDIwMDUwNTI0LgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAyMDA1LTA1LTI0ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgogCiAJKiBkbGxzL3FjYXAvTWFrZWZpbGUuaW4sIGRsbHMvcWNhcC9xY2FwX21haW4uaCwgZGxscy9xY2FwL3l1di5jOgpkaWZmIC0tZ2l0IGEvVkVSU0lPTiBiL1ZFUlNJT04KaW5kZXggNzgyNmQzMy4uM2YxN2ZjOSAxMDA2NDQKLS0tIGEvVkVSU0lPTgorKysgYi9WRVJTSU9OCkBAIC0xICsxIEBACi1XaW5lIHZlcnNpb24gMjAwNTA1MjQKK1dpbmUgdmVyc2lvbiAyMDA1MDYyOApkaWZmIC0tZ2l0IGEvY29uZmlndXJlIGIvY29uZmlndXJlCmluZGV4IDA5NzEwY2MuLmQwMTZkMWUgMTAwNzU1Ci0tLSBhL2NvbmZpZ3VyZQorKysgYi9jb25maWd1cmUKQEAgLTEsNiArMSw2IEBACiAjISAvYmluL3NoCiAjIEd1ZXNzIHZhbHVlcyBmb3Igc3lzdGVtLWRlcGVuZGVudCB2YXJpYWJsZXMgYW5kIGNyZWF0ZSBNYWtlZmlsZXMuCi0jIEdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OSBmb3IgV2luZSAyMDA1MDUyNC4KKyMgR2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU5IGZvciBXaW5lIDIwMDUwNjI4LgogIwogIyBSZXBvcnQgYnVncyB0byA8d2luZS1kZXZlbEB3aW5laHEub3JnPi4KICMKQEAgLTI2OSw4ICsyNjksOCBAQAogIyBJZGVudGl0eSBvZiB0aGlzIHBhY2thZ2UuCiBQQUNLQUdFX05BTUU9J1dpbmUnCiBQQUNLQUdFX1RBUk5BTUU9J3dpbmUnCi1QQUNLQUdFX1ZFUlNJT049JzIwMDUwNTI0JwotUEFDS0FHRV9TVFJJTkc9J1dpbmUgMjAwNTA1MjQnCitQQUNLQUdFX1ZFUlNJT049JzIwMDUwNjI4JworUEFDS0FHRV9TVFJJTkc9J1dpbmUgMjAwNTA2MjgnCiBQQUNLQUdFX0JVR1JFUE9SVD0nd2luZS1kZXZlbEB3aW5laHEub3JnJwogCiBhY191bmlxdWVfZmlsZT0ic2VydmVyL2F0b20uYyIKQEAgLTc4OCw3ICs3ODgsNyBAQAogICAjIE9taXQgc29tZSBpbnRlcm5hbCBvciBvYnNvbGV0ZSBvcHRpb25zIHRvIG1ha2UgdGhlIGxpc3QgbGVzcyBpbXBvc2luZy4KICAgIyBUaGlzIG1lc3NhZ2UgaXMgdG9vIGxvbmcgdG8gYmUgYSBzdHJpbmcgaW4gdGhlIEEvVVggMy4xIHNoLgogICBjYXQgPDxfQUNFT0YKLVxgY29uZmlndXJlJyBjb25maWd1cmVzIFdpbmUgMjAwNTA1MjQgdG8gYWRhcHQgdG8gbWFueSBraW5kcyBvZiBzeXN0ZW1zLgorXGBjb25maWd1cmUnIGNvbmZpZ3VyZXMgV2luZSAyMDA1MDYyOCB0byBhZGFwdCB0byBtYW55IGtpbmRzIG9mIHN5c3RlbXMuCiAKIFVzYWdlOiAkMCBbT1BUSU9OXS4uLiBbVkFSPVZBTFVFXS4uLgogCkBAIC04NTMsNyArODUzLDcgQEAKIAogaWYgdGVzdCAtbiAiJGFjX2luaXRfaGVscCI7IHRoZW4KICAgY2FzZSAkYWNfaW5pdF9oZWxwIGluCi0gICAgIHNob3J0IHwgcmVjdXJzaXZlICkgZWNobyAiQ29uZmlndXJhdGlvbiBvZiBXaW5lIDIwMDUwNTI0OiI7OworICAgICBzaG9ydCB8IHJlY3Vyc2l2ZSApIGVjaG8gIkNvbmZpZ3VyYXRpb24gb2YgV2luZSAyMDA1MDYyODoiOzsKICAgIGVzYWMKICAgY2F0IDw8XF9BQ0VPRgogCkBAIC05ODQsNyArOTg0LDcgQEAKIHRlc3QgLW4gIiRhY19pbml0X2hlbHAiICYmIGV4aXQgMAogaWYgJGFjX2luaXRfdmVyc2lvbjsgdGhlbgogICBjYXQgPDxcX0FDRU9GCi1XaW5lIGNvbmZpZ3VyZSAyMDA1MDUyNAorV2luZSBjb25maWd1cmUgMjAwNTA2MjgKIGdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OQogCiBDb3B5cmlnaHQgKEMpIDIwMDMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCkBAIC05OTgsNyArOTk4LDcgQEAKIFRoaXMgZmlsZSBjb250YWlucyBhbnkgbWVzc2FnZXMgcHJvZHVjZWQgYnkgY29tcGlsZXJzIHdoaWxlCiBydW5uaW5nIGNvbmZpZ3VyZSwgdG8gYWlkIGRlYnVnZ2luZyBpZiBjb25maWd1cmUgbWFrZXMgYSBtaXN0YWtlLgogCi1JdCB3YXMgY3JlYXRlZCBieSBXaW5lICRhc19tZSAyMDA1MDUyNCwgd2hpY2ggd2FzCitJdCB3YXMgY3JlYXRlZCBieSBXaW5lICRhc19tZSAyMDA1MDYyOCwgd2hpY2ggd2FzCiBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTkuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKIAogICAkICQwICRACkBAIC0yMDY3Nyw3ICsyMDY3Nyw3IEBACiB9ID4mNQogY2F0ID4mNSA8PF9DU0VPRgogCi1UaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5IFdpbmUgJGFzX21lIDIwMDUwNTI0LCB3aGljaCB3YXMKK1RoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgV2luZSAkYXNfbWUgMjAwNTA2MjgsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU5LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgQ09ORklHX0ZJTEVTICAgID0gJENPTkZJR19GSUxFUwpAQCAtMjA3NDAsNyArMjA3NDAsNyBAQAogCiBjYXQgPj4kQ09ORklHX1NUQVRVUyA8PF9BQ0VPRgogYWNfY3NfdmVyc2lvbj0iXFwKLVdpbmUgY29uZmlnLnN0YXR1cyAyMDA1MDUyNAorV2luZSBjb25maWcuc3RhdHVzIDIwMDUwNjI4CiBjb25maWd1cmVkIGJ5ICQwLCBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTksCiAgIHdpdGggb3B0aW9ucyBcXCJgZWNobyAiJGFjX2NvbmZpZ3VyZV9hcmdzIiB8IHNlZCAncy9bXFwiIlxgXCRdL1xcXFwmL2cnYFxcIgogCg==