ZGlmZiAtLWdpdCBhL0FOTk9VTkNFIGIvQU5OT1VOQ0UKaW5kZXggMzIxNDZlMi4uZDM5Yzk3MCAxMDA2NDQKLS0tIGEvQU5OT1VOQ0UKKysrIGIvQU5OT1VOQ0UKQEAgLTEsMTQgKzEsMTUgQEAKLVRoaXMgaXMgcmVsZWFzZSAyMDA1MDYyOCBvZiBXaW5lLCBhIGZyZWUgaW1wbGVtZW50YXRpb24gb2YgV2luZG93cyBvbgorVGhpcyBpcyByZWxlYXNlIDIwMDUwNzI1IG9mIFdpbmUsIGEgZnJlZSBpbXBsZW1lbnRhdGlvbiBvZiBXaW5kb3dzIG9uCiBVbml4LiAgVGhpcyBpcyBzdGlsbCBhIGRldmVsb3BlcnMgb25seSByZWxlYXNlLiAgVGhlcmUgYXJlIG1hbnkgYnVncwogYW5kIHVuaW1wbGVtZW50ZWQgZmVhdHVyZXMuICBNb3N0IGFwcGxpY2F0aW9ucyBzdGlsbCBkbyBub3Qgd29yawogY29ycmVjdGx5LgogCi1XSEFUJ1MgTkVXIHdpdGggV2luZS0yMDA1MDYyODogKHNlZSBDaGFuZ2VMb2cgZm9yIGRldGFpbHMpCi0gICAgICAgIC0gQ29uZmlndXJhdGlvbiBzZXR0aW5ncyBtb3ZlZCB0byB0aGUgcmVnaXN0cnkuCi0gICAgICAgIC0gR3JhcGhpY2FsIFdpbmUgY29uZmlndXJhdGlvbiB0b29sIGlzIG5vdyBlbmFibGVkLgotICAgICAgICAtIE1vcmUgTVNJIGFuZCBPTEUgaW1wcm92ZW1lbnRzLgotICAgICAgICAtIFJlb3JnYW5pc2F0aW9uIG9mIHRoZSBEaXJlY3REcmF3IGRpcmVjdG9yeS4KLSAgICAgICAgLSBJbml0aWFsIHN1cHBvcnQgZm9yIHdlYmNhbXMuCitXSEFUJ1MgTkVXIHdpdGggV2luZS0yMDA1MDcyNTogKHNlZSBDaGFuZ2VMb2cgZm9yIGRldGFpbHMpCisgICAgICAgIC0gQmVnaW5uaW5ncyBvZiB0aGVtZSBzdXBwb3J0IGluIGNvbW1vbiBjb250cm9scy4KKyAgICAgICAgLSBNYW55IE1TSFRNTCBpbXByb3ZlbWVudHMuCisgICAgICAgIC0gQSBidW5jaCBvZiBPTEUgZml4ZXMgZm9yIEluc3RhbGxTaGllbGQgaW5zdGFsbGVycy4KKyAgICAgICAgLSBNYW55IERpcmVjdDNEIGZpeGVzIGFuZCBpbXByb3ZlbWVudHMuCisgICAgICAgIC0gQmVnaW5uaW5ncyBvZiBMREFQIHN1cHBvcnQuCisgICAgICAgIC0gVmFyaW91cyBjbGVhbnVwcyBhZnRlciByZW1vdmFsIG9mIHRoZSBjb25maWcgZmlsZS4KICAgICAgICAgLSBMb3RzIG9mIGJ1ZyBmaXhlcy4KIAogU2VlIHRoZSBSRUFETUUgZmlsZSBpbiB0aGUgZGlzdHJpYnV0aW9uIGZvciBpbnN0YWxsYXRpb24gaW5zdHJ1Y3Rpb25zLgpAQCAtMTcsOCArMTgsOCBAQAogdGhlIHJlbGVhc2UgaXMgYXZhaWxhYmxlIGF0IHRoZSBmdHAgc2l0ZXMuICBUaGUgc291cmNlcyB3aWxsIGJlIGF2YWlsYWJsZQogZnJvbSB0aGUgZm9sbG93aW5nIGxvY2F0aW9uczoKIAotICBodHRwOi8vd3d3LmliaWJsaW8ub3JnL3B1Yi9MaW51eC9BTFBIQS93aW5lL2RldmVsb3BtZW50L1dpbmUtMjAwNTA2MjgudGFyLmd6Ci0gIGh0dHA6Ly9wcmRvd25sb2Fkcy5zb3VyY2Vmb3JnZS5uZXQvd2luZS9XaW5lLTIwMDUwNjI4LnRhci5negorICBodHRwOi8vd3d3LmliaWJsaW8ub3JnL3B1Yi9MaW51eC9BTFBIQS93aW5lL2RldmVsb3BtZW50L1dpbmUtMjAwNTA3MjUudGFyLmd6CisgIGh0dHA6Ly9wcmRvd25sb2Fkcy5zb3VyY2Vmb3JnZS5uZXQvd2luZS9XaW5lLTIwMDUwNzI1LnRhci5negogCiBJdCBzaG91bGQgYWxzbyBiZSBhdmFpbGFibGUgZnJvbSBhbnkgb3RoZXIgc2l0ZSB0aGF0IG1pcnJvcnMgaWJpYmxpby5vcmcuCiBUaGVzZSBsb2NhdGlvbnMgYWxzbyBob2xkIHByZS1idWlsdCBkb2N1bWVudGF0aW9uIHBhY2thZ2VzIGluIHZhcmlvdXMKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA3OGZkZmI4Li4yN2MzOWYzIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDQgKzEsMjU2NyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorMjAwNS0wNy0yNSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9jb21jdGwzMi91cGRvd24uYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJQWRkIHRoZW1pbmcgZm9yIHRoZSB1cC9kb3duIGNvbnRyb2wuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjOgorCUFuZGVyc29uIExpemFyZG8gPGFuZGVyc29ubGl6YXJkb0B5YWhvby5jb20uYnI+CisJRml4ZWQgImJyb2tlbiBPcGVuR0wgc2V0dXAiIGNvbmZpZ3VyZSBjaGVjaywgd2hpY2ggdXNlZCB0byByZXBvcnQKKwlmYWxzZSBlcnJvcnMgb24gc29tZSBzeXN0ZW1zLgorCisJKiBkbGxzL3dsZGFwMzIvaW5pdC5jLCBkbGxzL3dsZGFwMzIvc2VhcmNoLmMsCisJICBkbGxzL3dsZGFwMzIvd2lubGRhcF9wcml2YXRlLmgsIGRsbHMvd2xkYXAzMi93bGRhcDMyLnNwZWM6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJSW1wbGVtZW50IGxkYXBfc2VhcmNoX2V4dCogYW5kIGxkYXBfc3RhcnRfdGxzX3MqIGZ1bmN0aW9ucy4KKworCSogZGxscy9jb21jdGwzMi9saXN0dmlldy5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlVc2UgdGhlbWluZyBmb3IgdGhlIExpc3RWaWV3IG5vbi1jbGllbnQgYXJlYS4KKworCSogZGxscy9jb21jdGwzMi9oZWFkZXIuYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJQWRkIHRoZW1pbmcgc3VwcG9ydCBmb3IgaGVhZGVyIGNvbnRyb2xzLgorCisJKiBkbGxzL3VzZXIvbWRpLmM6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJVGFrZSBpbnRvIGFjY291bnQgQ1NfTk9DTE9TRSB3aW5kb3cgY2xhc3Mgc3R5bGUgYW5kIFNDX0NMT1NFIHN5c3RlbQorCW1lbnUgaXRlbSBzdGF0ZSB3aGlsZSBhZGRpbmcgTURJIHN5c3RlbSBtZW51IGJ1dHRvbnMgYW5kIGdlbmVyYXRpbmcKKwlXTV9TWVNDT01NQU5EIG1lc3NhZ2VzLgorCisJKiBkbGxzL3gxMWRydi9ldmVudC5jOiBEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCVRha2UgaW50byBhY2NvdW50IENTX05PQ0xPU0Ugd2luZG93IGNsYXNzIHN0eWxlIGFuZCBTQ19DTE9TRSBzeXN0ZW0KKwltZW51IGl0ZW0gc3RhdGUgd2hpbGUgaGFuZGxpbmcgV01fWDExRFJWX0RFTEVURV9XSU5ET1cgcmVxdWVzdC4KKworCSogZGxscy9rZXJuZWwvTWFrZWZpbGUuaW4sIGRsbHMva2VybmVsL2tlcm5lbDMyLnNwZWMsCisJICBkbGxzL2tlcm5lbC9semV4cGFuZC5jLCBkbGxzL2x6ZXhwYW5kL2x6MzIuc3BlYywKKwkgIGRsbHMvbHpleHBhbmQvbHpleHBhbmRfbWFpbi5jOgorCVN0ZXZlbiBFZHdhcmRzIDxzdGV2ZW5fZWQ0MTUzQHlhaG9vLmNvbT4KKwlNb3ZlIGFuZCBmb3J3YXJkIGx6MzIgZnVuY3Rpb25zIHRvIGtlcm5lbDMyLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy90aHJlYWQuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlGaXggdGhyZWFkIHRlc3RzIG9uIFdpbk1FLgorCisyMDA1LTA3LTI0ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc3RyaW5nLmM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJU2tpcCB0ZXN0IHRoYXQgY3Jhc2hlcyBvbiBXMksvV2luWFAvVzJLLgorCisJKiBkbGxzL29sZTMyL3N0b3JhZ2UzMi5jLCBkbGxzL3JwY3J0NC9ycGNfYmluZGluZy5jLAorCSAgZGxscy9ycGNydDQvcnBjX21lc3NhZ2UuYywgZGxscy9ycGNydDQvcnBjX21lc3NhZ2UuaDoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIG1pc3NpbmctZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLCBkbGxzL3dpbmVkM2QvZHJhd3ByaW0uYywKKwkgIGRsbHMvd2luZWQzZC92ZXJ0ZXhidWZmZXIuYywgZGxscy93aW5lZDNkL3dpbmVkM2RfbWFpbi5jLAorCSAgZGxscy93aW5lZDNkL3dpbmVkM2RfcHJpdmF0ZS5oOgorCVJhcGhhZWwgSnVucXVlaXJhIDxmZW5peEBjbHViLWludGVybmV0LmZyPgorCS0gYWRkIGEgbmV3IHNldHRpbmdzIGZvciB2Ym8gc3VwcG9ydAorCS0gdXNlIGEgc3RydWN0IHRvIGhhbmRsZSB3aW5lZDNkIHNldHRpbmdzCisJLSBwcmVwYXJlIFZCTyB1c2luZyBzb21lIGFic3RyYWN0aW9uIEFQSXMKKworCSogZGxscy91eHRoZW1lL3N5c3RlbS5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlPcGVuVGhlbWVEYXRhKCkgbm93IGFsd2F5cyBzZXRzIHRoZSB3aW5kb3cgdGhlbWUgdG8gdGhlIGhhbmRsZQorCXJldHVybmVkIChldmVuIGlmIHRoYXQgaXMgTlVMTCkgLSBwcmV2aW91c2x5LCBpdCBjb3VsZCBoYXBwZW4gdGhhdAorCXdoZW4gbm8gdGhlbWUgd2FzIGFjdGl2ZSBvciB0aGUgdGhlbWUgZGF0YSBjb3VsZCBub3QgYmUgb3BlbmVkIHRoYXQKKwl0aGUgd2luZG93IHRoZW1lIHJlbWFpbmVkIGJlY2FtZSB0aGVuLWRhbmdsaW5nIChhbmQgaGVuY2Ugc3Vic2VxdWVudAorCWNhbGxzIHRvIEdldFdpbmRvd1RoZW1lKCkgd291bGQgcmV0dXJuIHRoYXQgYm9ndXMgdGhlbWUpLgorCisJKiBkbGxzL3dsZGFwMzIvYmluZC5jLCBkbGxzL3dsZGFwMzIvd2lubGRhcF9wcml2YXRlLmgsCisJICBkbGxzL3dsZGFwMzIvd2xkYXAzMi5zcGVjOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUltcGxlbWVudCBsZGFwX3Nhc2xfYmluZCogZnVuY3Rpb25zLgorCisJKiBkbGxzL3gxMWRydi9jbGlwYm9hcmQuYywgZGxscy94MTFkcnYvZGVza3RvcC5jLCBkbGxzL3gxMWRydi9kaWIuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBtaXNzaW5nLWRlY2xhcmF0aW9ucyB3YXJuaW5ncy4KKworCSogaW5jbHVkZS9vZGJjaW5zdC5oOiBNYXR0aGV3IERhdmlzb24gPG0uZGF2aXNvbkB2aXJnaW4ubmV0PgorCUFkZGVkIHNvbWUgZGVmaW5pdGlvbnMgdG8gb2RiY2luc3QuaC4KKworCSogZGxscy91eHRoZW1lL2RyYXcuYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJR2V0VGhlbWVCYWNrZ3JvdW5kQ29udGVudFJlY3QoKSBkb2VzIG5vdCB1c2UgdGhlIGNvbnRlbnQgbWFyZ2lucworCWFsb25lLCBpdCBhbHNvIGZhbGxzIGJhY2sgdG8gdGhlIGJvcmRlciBzaXplIG9yIHNpemluZyBtYXJnaW5zLCBhbmQgaWYKKwlpdCBjYW4ndCBmaW5kIGFueSBwb3NzaWJsZSBtYXJnaW5zIGF0IGFsbCwgaXQgcmV0dXJucyB0aGUgb3JpZ2luYWwKKwlyZWN0YW5nbGUuCisKKwkqIHRvb2xzL3dpbmFwaS93aW5hcGlfcGFyc2VyLnBtOgorCVZpbmNlbnQgQulyb24gPHZiZXJvbkBtZWNhbm8uZ21lLnVzaGVyYi5jYT4KKwlNYWtlIHdpbmFwaV9jaGVjayBsZWFybiB0byBwYXJzZSBzb21lIGNvbnN0cnVjdHMgd2l0aCBzb21lIHJhcmVseSB1c2VkCisJa2V5d29yZHMuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy8uY3ZzaWdub3JlLCBkbGxzL3NoZWxsMzIvdGVzdHMvTWFrZWZpbGUuaW4sCisJICBkbGxzL3NoZWxsMzIvdGVzdHMvc2hlbGwzMl90ZXN0LmgsIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGVsbGxpbmsuYywKKwkgIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxleGVjLmM6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGNvZGV3ZWF2ZXJzLmNvbT4KKwlHZXQgc3RhcnRlZCB0ZXN0aW5nIFNoZWxsRXhlY3V0ZSgpLgorCisJKiBkbGxzL3JpY2hlZDIwL2VkaXRvci5jLCBkbGxzL3JpY2hlZDIwL2VkaXRvci5oLAorCSAgZGxscy9yaWNoZWQyMC9lZGl0c3RyLmgsIGRsbHMvcmljaGVkMjAvcGFpbnQuYywKKwkgIGRsbHMvcmljaGVkMjAvc3R5bGUuYzoKKwlQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUFkZGVkIEVNX0dFVFpPT00gYW5kIEVNX1NFVFpPT00gUmljaEVkaXQgbWVzc2FnZSBoYW5kbGVycy4KKworCSogZGxscy9jb21tZGxnL2NkbGcxNi5oLCBkbGxzL2RkcmF3L2RkcmF3X3ByaXZhdGUuaCwKKwkgIGRsbHMva2VybmVsL3Rvb2xoZWxwLmgsIGRsbHMvc2hlbGwzMi91bmRvY3NoZWxsLmgsIGluY2x1ZGUvbXNpLmgsCisJICBpbmNsdWRlL29iamJhc2UuaCwgaW5jbHVkZS9vbGUyLmgsIGluY2x1ZGUvb2xlYXV0by5oLAorCSAgaW5jbHVkZS93aW5iYXNlLmgsIGluY2x1ZGUvd2luaW5ldC5oOgorCVZpbmNlbnQgQulyb24gPHZiZXJvbkBtZWNhbm8uZ21lLnVzaGVyYi5jYT4KKwlSZW1vdmUgbXVsdGlwbGUgZGVjbGFyYXRpb25zIG9mIHRoZSBzYW1lIGZ1bmN0aW9uLCBrZWVwaW5nIHRoZSBwdWJsaWMKKwlvbmUgYXMgcmVmZXJlbmNlLgorCisJKiBkbGxzL29sZTMyL2NvbXBvYmouc3BlYywgZGxscy9vbGUzMi9tZW1sb2NrYnl0ZXMxNi5jLAorCSAgZGxscy9vbGUzMi9vbGUxNi5jLCBkbGxzL29sZTMyL29sZTJfMTYuYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlJbXBsZW1lbnRlZCBJc1ZhbGlkSW50ZXJmYWNlMTYsIENvTWVtQWxsb2MuCisJQWRkZWQgZGVidWcgdG8gSEdMT0JBTExvY2tCeXRlczE2X1F1ZXJ5SW50ZXJmYWNlLgorCisJKiBkbGxzL250ZGxsL2ZpbGUuYzogVmluY2VudCBC6XJvbiA8dmJlcm9uQG1lY2Fuby5nbWUudXNoZXJiLmNhPgorCVVzZSBwcm9wZXIgbWFjcm8gZm9yIHVzaW5nIElPS2l0IGluY2x1ZGVzLgorCisJKiB0b29scy93aW5hcGkvd2luYXBpX3BhcnNlci5wbToKKwlWaW5jZW50IELpcm9uIDx2YmVyb25AbWVjYW5vLmdtZS51c2hlcmIuY2E+CisJUmVtb3ZlIG9sZCBzdHVmZiBmcm9tIHdpbmFwaV9jaGVjay4KKworMjAwNS0wNy0yMiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy93bGRhcDMyL3dsZGFwMzIuc3BlYzogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHRoZSBsZGFwX3NlYXJjaF9zIHByb3RvdHlwZXMgKHJlcG9ydGVkIGJ5IHdpbmFwaV9jaGVjaykuCisKKwkqIGRsbHMvY29tY3RsMzIvdG9vbGJhci5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBDYWxsIFNldEJrTW9kZSB3aXRoIHRoZSBjb3JyZWN0IHZhbHVlIGZyb20gdGhlIE5NVEJDVVNUT01EUkFXCisJICBzdHJ1Y3R1cmUuCisJLSBEb24ndCBmaWxsIHRoZSBOTVRCQ1VTVE9NRFJBVyBzdHJ1Y3R1cmUgaW4gYWdhaW4gZm9yCisJICBDRERTX1BPU1RQQUlOVC4KKwktIFJlbW92ZSByZWR1bmRhbnQgYkJ0blRyYW5zcHJudCB2YWx1ZS4KKworCSogZGxscy9jb21jdGwzMi90b29sYmFyLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIEhlaWdodCBpcyBub3cgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgbnVtYmVyIG9mIHJvd3MsIG5vdCBvbiB0aGUKKwkgIGJvdW5kaW5nIHJlY3QuCisJLSBPbmx5IGNhbGwgQ2FsY1Rvb2xiYXIgaW4gQXV0b1NpemUgaWYgaXQgaGFzIFRCU1RZTEVfV1JBUEFCTEUgb3IKKwkgIFRCU1RZTEVfRVhfVU5ET0MxIHNldC4KKwktIFJlbW92ZSBhIGJhZCB0ZXN0IGluIFNldEJ1dHRvbldpZHRoIHRoYXQgZml4ZXMgYSByZWdyZXNzaW9uIGZyb20gdGhlCisJICBhYm92ZSBjaGFuZ2UgaW4gSUUuCisJLSBSZW1vdmUgdW5uZWNlc3NhcnkgbkhlaWdodCBkYXRhLgorCS0gUmVtb3ZlIGR1cGxpY2F0ZWQgY29kZSBpbiBTaXplIGJ5IGNhbGxpbmcgQXV0b1NpemUuCisJLSBSZW1vdmUgdW5uZWNlc3NhcnkgYkF1dG9TaXplIHZhbHVlIGJlY2F1c2UgU2V0V2luZG93UG9zIGRvZXNuJ3QKKwkgIGdlbmVyYXRlIFdNX1NJWkUgd2hlbiB0aGVyZSBpcyBub3RoaW5nIHRvIGRvIG9uIGJvdGggV2luZG93cyBhbmQKKwkgIFdpbmUuCisKKwkqIGRsbHMvY29tY3RsMzIvdG9vbGJhci5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJVEJTVEFURV9JTkRFVEVSTUlOQVRFIG9ubHkgdGFrZXMgZWZmZWN0IGlmIHRoZSBidXR0b24gaXMgZW5hYmxlZCwKKwlvdGhlcndpc2UgaXQgc2hvdWxkIGp1c3QgYXBwZWFyIGxpa2UgYW55IG90aGVyIGRpc2FibGVkIGJ1dHRvbi4KKworCSogZGxscy9jb21jdGwzMi90b29sYmFyLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlOYXRpdmUgYXV0b3NpemVzIG9uIGluc2VydGluZy9hZGRpbmcgYnV0dG9ucywgc28gd2Ugc2hvdWxkIHRvby4KKworCSogZGxscy9rZXJuZWwvcmVsYXkxNi5jLCBkbGxzL250ZGxsL3JlbGF5LmM6CisJQWRkZWQgc21hbGwgYXNzZW1ibHkgd3JhcHBlciB0byBjYWxsIGVudHJ5IHBvaW50cyB3aXRob3V0IGhhdmluZyB0bworCXdvcnJ5IGFib3V0IHRoZWlyIGNhbGxpbmcgY29udmVudGlvbi4KKworCSogZGxscy93b3czMi93b3dfbWFpbi5jLCBpbmNsdWRlL3dvd250MzIuaDoKKwlGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAZnJlZS5mcj4KKwlUd2VhayBzb21lIHByb3RvdHlwZXMgdG8gYmUgY2xvc2VyIHRvIHRoZSBQU0RLLgorCisJKiB0b29scy93aW5hcGkvd2luMzIuYXBpOiBGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAZnJlZS5mcj4KKwlVcGRhdGUgd2luMzIuYXBpIHRvIG1hdGNoIHRoZSBjdXJyZW50IHNvdXJjZXMuCisKKwkqIGRsbHMvbnRkbGwvdGVzdHMvaW5mby5jOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCVVzZSBjdXJyZW50IHByb2Nlc3MgaWYgYXNzaWduZWQgcHJvY2VzcyBjYW5ub3QgYmUgb3BlbmVkLgorCisJKiBkbGxzL2NvbWN0bDMyL3Rvb2xiYXIuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCVRoZSBJc1ZhbGlkSW1hZ2VMaXN0IHRlc3QgaXMgbm90IG5lZWRlZCBiZWNhdXNlIGlmIGl0IGlzbid0IGEgdmFsaWQKKwlpbWFnZSBsaXN0IHdlIHdpbGwgaGF2ZSBzZXQgdGhlIGJpdG1hcCB3aWR0aCBhbmQgaGVpZ2h0IHRvIDEgYW5kIGl0CisJZG9lcyB0aGUgd3JvbmcgdGhpbmcgd2hlbiBubyBidXR0b25zIGFyZSBwcmVzZW50LgorCisJKiBkbGxzL3dsZGFwMzIvd2lubGRhcF9wcml2YXRlLmgsIGRsbHMvd2xkYXAzMi93bGRhcDMyLmg6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJQWRkIGhlbHBlciBmdW5jdGlvbnMgZm9yIGNvbnZlcnRpbmcgTERBUENvbnRyb2wgc3RydWN0dXJlcy4KKworCSogZGxscy91c2VyL3dpbnBvcy5jOgorCVN0b3JlIHRoZSBTeXNJUCBwcm9wZXJ0eSB1c2luZyBhIHN0cmluZyB0byBhdm9pZCB0cm91YmxlIHdpdGggMTYtYml0CisJYXBwcyB0aGF0IGRvbid0IGV4cGVjdCBhbiBhdG9tLgorCisJKiBkbGxzL3VzZXIvcHJvcGVydHkuYzoKKwlGaXhlZCBnZXRfd2luZG93X3Byb3BlcnRpZXMgdG8gY29ycmVjdGx5IHNwZWNpZnkgdGhlIG91dHB1dCBidWZmZXIgaW4KKwl0aGUgc2VydmVyIHJlcXVlc3QgKHNwb3R0ZWQgYnkgTWFyY3VzIE1laXNzbmVyKS4KKworCSogZGxscy9zZXR1cGFwaS9wYXJzZXIuYzoKKwlQcmVzZXJ2ZSB0aGUgc3BhY2VzIGJlZm9yZSBhbiBvcGVuaW5nIHF1b3RlIGluIHRoZSBtaWRkbGUgb2YgYSB0b2tlbgorCShyZXBvcnRlZCBieSBNYXR0aGV3IERhdmlzb24pLgorCisJKiBkbGxzL29sZTMyL29sZTIuc3BlYywgZGxscy9vbGUzMi9vbGUyXzE2LmM6CisJTWFyY3VzIE1laXNzbmVyIDxtZWlzc25lckBzdXNlLmRlPgorCUFkZGVkIE9sZVNldE1lbnVEZXNjcmlwdG9yMTYgc3R1Yi4KKworCSogZGxscy9vbGUzMi9vbGUyLmMsIGRsbHMvb2xlMzIvb2xlMzIuc3BlYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJT2xlSW5pdGlhbGl6ZVdPVyBnZXRzIDIgYXJndW1lbnRzLgorCisJKiBkbGxzL2NvbWN0bDMyL3Rvb2xiYXIuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCVRoZSBjYWxjdWxhdGVkIGJ1dHRvbiBoZWlnaHQgc2hvdWxkIGluY2x1ZGUgdGhlIHRleHQgaGVpZ2h0IHdoZW4gbm8KKwlidXR0b25zIGFyZSBwcmVzZW50LgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYywgZGxscy93aW5zcG9vbC93aW5zcG9vbC5kcnYuc3BlYywKKwkgIGluY2x1ZGUvd2luc3Bvb2wuaDoKKwlIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCB0aGUgdW5kb2N1bWVudGVkIFN0YXJ0RG9jRGxnW0F8V10uICBUaGVzZSB3aWxsIGJlIHVzZWQgYnkKKwlTdGFydERvYy4KKworCSogZGxscy9tc2kvYXBwc2VhcmNoLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQmFpbCBvdXQgaWYgdGhlIHJlZyBrZXkgaXMgZW1wdHkuIFRoaXMgcHJldmVudHMgdXMgZnJvbSB3cml0aW5nCisJZ2FyYmFnZSB0byB0aGUgcHJvcGVydHkgdGFibGUuCisKKwkqIGRsbHMvcmljaGVkMjAvcnVuLmM6IFBoaWwgS3J5bG92IDxwaGlsQG5ld3N0YXIucmluZXQucnU+CisJRml4ZWQgRU1fR0VUQ0hBUkZPUk1BVCBmb3Igc2VsZWN0aW9uIGNvbnRhaW5pbmcgYSBzaW5nbGUgY2hhcmFjdGVyLgorCisJKiBkbGxzL3JpY2hlZDIwL3dyaXRlci5jOiBQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUZpeGVkIGFuIG9mZi1ieS1vbmUgZXJyb3IgaW4gRU1fU1RSRUFNT1VUIGhhbmRsZXIgZm9yIG5vbi1Vbmljb2RlCisJcGxhaW4gdGV4dCBvdXRwdXQuCisKKwkqIGRsbHMvd2luZWQzZC9kcmF3cHJpbS5jOiBHZXJhbGQgUGZlaWZlciA8cGZlaWZlckBkYmFpLnR1d2llbi5hYy5hdD4KKwlSZW1vdmUgdW51c2VkIHZhcmlhYmxlIGluIHByaW1pdGl2ZUNvbnZlcnRUb1N0cmlkZWREYXRhKCkuCisKKwkqIGRsbHMvcmljaGVkMjAvZWRpdG9yLmM6IFBoaWwgS3J5bG92IDxwaGlsQG5ld3N0YXIucmluZXQucnU+CisJQWRkZWQgc29tZSBtaXNzaW5nIGJ1dCB1c2VmdWwgaXRlbXMgdG8gdGhlIFRPRE8gbGlzdC4KKworCSogZGxscy9vbGUzMi9tZW1sb2NrYnl0ZXMxNi5jOiBNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJMTZiaXQgQ09NIGludGVyZmFjZXMgYXJlIGNkZWNsLCBub3QgV0lOQVBJLgorCisJKiBkbGxzL3dpbmVkM2Qvd2luZWQzZF9tYWluLmM6CisJUmFwaGFlbCBKdW5xdWVpcmEgPGZlbml4QGNsdWItaW50ZXJuZXQuZnI+CisJLSBjbGVhbnVwIHdpbmVkM2Qgc2V0dGluZ3MgaW5pdCAobm93IGNsb3Npbmcgb3BlbmVkIHJlZ2lzdHJ5IGtleXMpCisJLSBzdXBwb3J0IHBlciBhcHBsaWNhdGlvbiBzZXR0aW5ncworCisJKiBsaWJzL3VuaWNvZGUvd2N0b21iLmM6CisJRmFzdGVyIGltcGxlbWVudGF0aW9uIG9mIHdjc3RvbWJzIHRoYXQgaGFuZGxlcyBvdmVybGFwcGluZyBidWZmZXJzCisJcHJvcGVybHkgKGJhc2VkIG9uIGEgcGF0Y2ggYnkgRG1pdHJ5IFRpbW9zaGtvdikuCisKKwkqIGRsbHMvd293MzIvd293MzIuc3BlYywgZGxscy93b3czMi93b3dfbWFpbi5jOgorCVdlIGNhbm5vdCB1c2UgZm9yd2FyZHMgYW55bW9yZSBub3cgdGhhdCBrZXJuZWwgZnVuY3Rpb25zIGFyZSBvbmx5CisJZXhwb3J0ZWQgYnkgb3JkaW5hbCAocmVwb3J0ZWQgYnkgTWFyY3VzIE1laXNzbmVyKS4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvbW9kdWxlLmMsIGRsbHMvd2luZWQzZC9kZXZpY2UuYywKKwkgIGRsbHMvd2luZWQzZC9zdXJmYWNlLmMsIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaDoKKwlGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAZnJlZS5mcj4KKwlBc3NvcnRlZCBzcGVsbGluZyBmaXhlcy4KKworCSogZGxscy9kaW5wdXQvam95c3RpY2tfbGludXhpbnB1dC5jOgorCURhbmllbCBSZW1lbmFrIDxkdHJlbWVuYWtAZ21haWwuY29tPgorCUNvcnJlY3QgZGlucHV0IGhhbmRsaW5nIG9mIHNsaWRlcnMgYW5kIG5vbi16ZXJvLWJhc2VkIGF4ZXMgdGhyb3VnaCB0aGUKKwlsaW51eCBpbnB1dCBzeXN0ZW0uCisKKwkqIGRsbHMveDExZHJ2L29wZW5nbC5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQWxsb3cgcnVubmluZyBvcGVuZ2wgYW5kIERpcmVjdFggYXBwbGljYXRpb25zIHdpdGhvdXQgc3RlbmNpbCBzdXBwb3J0LAorCWFuIGVhcmxpZXIgcGF0Y2ggYXNzdW1lZCB0aGF0IHN0ZW5jaWwgc3VwcG9ydCB3YXMgYXZhaWxhYmxlLCBidXQgaXQKKwlpc24ndCBpbiBhbGwgY2FzZXMuCisKKwkqIGluY2x1ZGUvc2hlbGxhcGkuaDogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgc29tZSBtaXNzaW5nIFNFRV9NQVNLXyogZmxhZ3MuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAZnJlZS5mcj4KKwlNYWtlIHRoZSB1bmlzdGQuaCBpbmNsdWRlIGNvbmRpdGlvbmFsLgorCisJKiBkbGxzL3JwY3J0NC9ycGNydDQuc3BlYzogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJRml4IHRoZSBOZHJWYXJ5aW5nQXJyYXlVbm1hcnNoYWxsIHByb3RvdHlwZSAocmVwb3J0ZWQgYnkKKwl3aW5hcGlfY2hlY2spLgorCisJKiBkbGxzL29sZTMyL2lmcy5oLCBkbGxzL29sZTMyL29sZTE2LmMsIGRsbHMvb2xlMzIvc3RvcmFnZS5jOgorCU1hcmN1cyBNZWlzc25lciA8bWVpc3NuZXJAc3VzZS5kZT4KKwkxNmJpdCBpbnRlcmZhY2VzIGFyZSBjZGVjbCwgc28gZHJvcCB0aGUgV0lOQVBJLgorCisJKiBkbGxzL2tlcm5lbC9uZV9tb2R1bGUuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlDb252ZXJ0IGxvbmcgdG8gc2hvcnQgcGF0aCBpbiBHZXRNb2R1bGVGaWxlTmFtZTE2LgorCisJKiBkbGxzL3dsZGFwMzIvTWFrZWZpbGUuaW4sIGRsbHMvd2xkYXAzMi9zZWFyY2guYywKKwkgIGRsbHMvd2xkYXAzMi93aW5sZGFwX3ByaXZhdGUuaCwgZGxscy93bGRhcDMyL3dsZGFwMzIuc3BlYzoKKwlIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlJbXBsZW1lbnQgbGRhcF9zZWFyY2gqIGZ1bmN0aW9ucy4KKworMjAwNS0wNy0yMSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9yaWNoZWQyMC93cml0ZXIuYywgZGxscy93aW5lcHMvZG93bmxvYWQuYywgdG9vbHMvd2lkbC9wYXJzZXIueToKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUNoYW5nZSBzb21lIGNoYXIqIHRvIGNvbnN0IGNoYXIqIHRvIGZpeCB3YXJuaWducy4KKworCSogdG9vbHMvd2luZWR1bXAvbGUuYywgdG9vbHMvd2luZWR1bXAvbWluaWR1bXAuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIC1Xc2lnbi1jb21wYXJlIHdhcm5pbmdzLgorCisJKiBkbGxzL3JpY2hlZDIwL2VkaXRvci5jOiBQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUFkZGVkIHNvbWUgdXNlZnVsIFRSQUNFcy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvTWFrZWZpbGUuaW4sIGRsbHMvbWlkaW1hcC8uY3ZzaWdub3JlLAorCSAgZGxscy9taWRpbWFwL01ha2VmaWxlLmluLCBkbGxzL21pZGltYXAvbWlkaW1hcC5jLAorCSAgZGxscy9taWRpbWFwL21pZGltYXAuc3BlYywgZGxscy93aW5tbS93aW5lbW0uaCwKKwkgIHRvb2xzL3dpbmFwaS93aW4zMi5hcGk6CisJUultaSBBc3NhaWxseSA8cmVtaS5hc3NhaWxseUBmcmVlLmZyPgorCU1vdmVkIG1pZGltYXAgdG8gdGhlIHRvcC1sZXZlbCBkbGxzIGRpcmVjdG9yeS4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlBbGxvdyBOVUxMIHBhcmFtZXRlciBmb3IgV01fU0VUVEVYVCBpbiBSaWNoRWRpdC4KKworCSogZGxscy9rZXJuZWwvcmVsYXkxNi5jOgorCVJlZ2lzdGVyIGZ1bmN0aW9ucyB3aXRoIG5vIGFyZ3VtZW50cyBzaG91bGQgc3RpbGwgYmUgY2FsbGVkIGFzIHN0ZGNhbGwKKwliZWNhdXNlIG9mIHRoZSBleHRyYSBDT05URVhUIGFyZy4KKworCSogZGxscy93bGRhcDMyL01ha2VmaWxlLmluLCBkbGxzL3dsZGFwMzIvaW5pdC5jLAorCSAgZGxscy93bGRhcDMyL3dpbmxkYXBfcHJpdmF0ZS5oLCBkbGxzL3dsZGFwMzIvd2xkYXAzMi5zcGVjOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUltcGxlbWVudCBsZGFwX2luaXQqIGFuZCBsZGFwX29wZW4qIGZ1bmN0aW9ucy4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlJbXBsZW1lbnRlZCBFTV9MSU5FTEVOR1RIIFJpY2hFZGl0IG1lc3NhZ2UuCisKKwkqIGRsbHMvd2xkYXAzMi93bGRhcDMyLmg6IEhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUFkZCBoZWxwZXIgZnVuY3Rpb25zIGZvciBjb252ZXJ0aW5nIHN0cmluZyBhcnJheXMgaW50byBkaWZmZXJlbnQKKwllbmNvZGluZ3MuCisKKwkqIGRsbHMvd2luZWQzZC9kcmF3cHJpbS5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQ29ycmVjdCBhIHByb2JsZW0gd2l0aCB0aGUgd2F5IHRoYXQgRlZGIHZlcnRleCBhcnJheXMgY29udGFpbmluZworCWJsZW5kcyBvciBvcnRob2dyYXBoaWMgaXMgY2FsY3VsYXRlZC4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzogVHJveSBSb2xsbyA8d2luZUB0cm95LnJvbGxvLm5hbWU+CisJUmV0dXJuIGF0dHJpYnV0ZXMgZm9yIHRoZSBjb3JyZWN0IGZpbGUgaW4gdGhlIHVuaXhmcyBQYXJzZURpc3BsYXlOYW1lLgorCisJKiBkbGxzL21zdmNydGQvTWFrZWZpbGUuaW4sIGRsbHMvbXN2Y3J0ZC9kZWJ1Zy5jLAorCSAgZGxscy9tc3ZjcnRkL3Rlc3RzL2RlYnVnLmMsIGluY2x1ZGUvbXN2Y3J0L2NydGRiZy5oOgorCVNhdWxpdXMgS3Jhc3Vja2FzIDxzYXVsaXVzLmtyYXN1Y2thc0BpZWVlLm9yZz4KKwktIERlY2xhcmUgaW1wbGVtZW50ZWQgZnVuY3Rpb25zIGluc2lkZSAjaWZuZGVmIF9ERUJVRyBibG9jay4KKwktIE1ha2UgTVNWQ1JURF9vcGVyYXRvcl9uZXdfZGJnIHJlY29nbml6ZSB0eXBlcyBvZiBtZW1vcnkgYmxvY2tzLgorCisJKiBkbGxzL3JpY2hlZDIwL2NhcmV0LmMsIGRsbHMvcmljaGVkMjAvZWRpdG9yLmMsCisJICBkbGxzL3JpY2hlZDIwL2VkaXRzdHIuaCwgZGxscy9yaWNoZWQyMC9wYXJhLmMsIGRsbHMvcmljaGVkMjAvcnVuLmMsCisJICBkbGxzL3JpY2hlZDIwL3dyaXRlci5jOgorCVBoaWwgS3J5bG92IDxwaGlsQG5ld3N0YXIucmluZXQucnU+CisJQWRkZWQgZW11bGF0aW9uIG9mIFJpY2hFZGl0IDEuMCBiZWhhdmlvdXIgd2hlbiB0aGUgMS4wIHdpbmRvdyBjbGFzcyBpcworCWJlaW5nIHVzZWQuIFRoaXMgZW11bGF0aW9uIChpbnRyb2R1Y2VkIGluIE0kIFJpY2hFZGl0IDMuMCkgY291bnRzCisJcGFyYWdyYXBoIGVuZGluZ3MgYXMgMiBjaGFyYWN0ZXJzIChDUitMRikgaW5zdGVhZCBvZiAxIChDUikuCisKKwkqIGluY2x1ZGUvbXNodG1oc3QuaWRsOiBKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlEZWZpbmUgdGhlIERPQ0hPU1RVSURCTENMSyBlbnVtZXJhdGlvbi4KKworCSogZGxscy93aW5lZDNkL2RyYXdwcmltLmM6IE9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlGaXhlZCByZWdyZXNzaW9uIHRoYXQgb2NjdXJyZWQgYmVjYXVzZSBjaGFuZ2VzIHRvIHRleHR1cmUgbG9hZGluZyB3ZXJlCisJY29tbWl0dGVkIGJlZm9yZSBjaGFuZ2VzIHRvIHRleHR1cmVzIGFuZCBzdGF0ZXMgdG8gc3VwcG9ydCB0aGUgY2hhbmdlCisJd2VyZSBjb21taXR0ZWQuCisKKwkqIGRsbHMvbXNpL2ZpbGVzLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJVXNlIFNPVVJDRURJUiBpbnN0ZWFkIG9mIFBhY2thZ2VQYXRoLiBCZWNhdXNlIHRoZSBQYWNrYWdlUGF0aCBtYXkgYmUKKwlsb2NhbCwgd2hpbGUgU09VUkNFRElSIGlzIG1vcmUgcHJvcGVyIGFuZCB3aWxsIGJlIGEgZnVsbCBkaXJlY3RvcnkuCisKKzIwMDUtMDctMjAgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL01ha2VmaWxlLmluLAorCSAgZGxscy9zdGRvbGUyLnRsYi8uY3ZzaWdub3JlLCBkbGxzL3N0ZG9sZTIudGxiL01ha2VmaWxlLmluLAorCSAgZGxscy9zdGRvbGUyLnRsYi9yc3JjLnJjLCBkbGxzL3N0ZG9sZTIudGxiL3N0ZF9vbGVfdjIuaWRsLAorCSAgZGxscy9zdGRvbGUyLnRsYi9zdGRvbGUyLnRsYi5zcGVjOgorCUh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50IHN0ZG9sZTIudGxiLgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlMb29rdXAgdGhlIHBvcnQgaW4gdGhlIHNwb29sZXIgcmVnaXN0cnkga2V5IGFuZCBtYXAgaXQgdG8gYSB1bml4CisJZmlsZW5hbWUgb3IgYSBwaXBlIGxpa2UgT3BlbkpvYjE2IGRvZXMuCisKKwkqIE1ha2UucnVsZXMuaW4sIGZvbnRzLy5jdnNpZ25vcmUsIGZvbnRzL01ha2VmaWxlLmluLCBmb250cy9nZW50dGYuZmY6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCXR0ZiBmaWxlcyBmb3IgYml0bWFwIGZvbnRzIHNob3VsZCBiZSBnZW5lcmF0ZWQgd2l0aCBhbiBleHRlbnNpb24gb2YKKwlqdXN0ICIuIiB0byB3b3JrIGFyb3VuZCBhIHF1aXJrIGluIGZvbnRmb3JnZSAod2l0aCB0aGFua3MgdG8gR2VvcmdlCisJV2lsbGlhbXMgZm9yIGhlbHBpbmcgbWUgZml4IHRoaXMpLgorCisJKiBkbGxzL3dsZGFwMzIvYmluZC5jLCBkbGxzL3dsZGFwMzIvd2lubGRhcF9wcml2YXRlLmgsCisJICBkbGxzL3dsZGFwMzIvd2xkYXAzMi5zcGVjOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUltcGxlbWVudCBsZGFwX3NpbXBsZV9iaW5kKiBhbmQgbGRhcF91bmJpbmQqIGZ1bmN0aW9ucy4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJSW5pdGlhbCBzdXBwb3J0IGZvciB0aGUgSVBlcnNpc3RGb2xkZXIzIGludGVyZmFjZS4KKworCSogZGxscy9vbGVhdXQzMi9vbGVwaWN0dXJlLmMsIGRsbHMvdXNlci9jdXJzb3JpY29uLmMsCisJICBkbGxzL3VzZXIvZXh0aWNvbi5jLCBkbGxzL3VzZXIvdXNlcjE2LmMsIGRsbHMvdXNlci91c2VyX3ByaXZhdGUuaCwKKwkgIGluY2x1ZGUvY3Vyc29yaWNvbi5oOgorCUdldCByaWQgb2YgY3Vyc29yaWNvbi5oLgorCisJKiBkbGxzL29sZTMyL3N0dWJtYW5hZ2VyLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlIYWNrIGFyb3VuZCBicm9rZW4gc3RhdGUgbWFuYWdlbWVudCBzbyBJbnN0YWxsU2hpZWxkIHdvcmtzLgorCisJKiBwcm9ncmFtcy93aW5oZWxwL0VuLnJjOiBEYW5pZWwgUmVtZW5hayA8ZHRyZW1lbmFrQGdtYWlsLmNvbT4KKwlDaGFuZ2VkIHdpbmhlbHAgZmlsZS0+ZXhpdCBhY2NlbGVyYXRvciBrZXkgZnJvbSAiZSIgdG8gIngiLgorCisJKiBkbGxzL3ZlcnNpb24vaW5mby5jLCBkbGxzL3ZlcnNpb24vdGVzdHMvaW5mby5jOgorCVBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJQWRkIHRlc3RzIGZvciBWZXJRdWVyeVZhbHVlW0FXXS4KKwlEb24ndCBjb252ZXJ0IHRoZSBzdHJ1Y3QgdG8gYSB3aW4xNiBvbmUgaW4gR2V0RmlsZVZlcnNpb25JbmZvQS4KKwlDb252ZXJ0IHRoZSBzdHJ1Y3QgdG8gd2luMTYgaW4gVmVyUXVlcnlWYWx1ZUEgKGZvciBub3cpLgorCisJKiBkbGxzL3NoZWxsMzIvc2hsZm9sZGVyLmM6IE1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlPbmx5IGluaXRpYWxpemUgc2hlbGwgZm9sZGVycyB2aWEgdGhlIElQZXJzaXN0Rm9sZGVyMyBpbnRlcmZhY2UgaW4KKwlTSEVMTDMyX0NvQ3JlYXRlSW5pdFNGIGlmIHRoZSBwaWRsIHdoaWNoIHNwZWNpZmllcyB0aGUgY2hpbGQgaXMgb2YKKwl0eXBlICdGb2xkZXInLiBPdGhlcndpc2UgZmFsbCBiYWNrIHRvIElQZXJzaXN0Rm9sZGVyLgorCisJKiBkbGxzL3JpY2hlZDIwL2VkaXRvci5jLCBpbmNsdWRlL3JpY2hlZGl0Lmg6CisJRGFuaWVsIFJlbWVuYWsgPGR0cmVtZW5ha0BnbWFpbC5jb20+CisJQmFzaWMgaGFuZGxpbmcgb2YgRU1fU0VUVEVYVEVYLgorCisJKiBkbGxzL250ZGxsL2Nkcm9tLmM6IFZpdGFsaXkgTWFyZ29sZW4gPHdpbmUtcGF0Y2hAa2lldmluZm8uY29tPgorCUZpeCBJT0NUTF9DRFJPTV9SQVdfUkVBRCBpb2N0bC4KKworMjAwNS0wNy0xOSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy93bGRhcDMyL01ha2VmaWxlLmluLCBkbGxzL3dsZGFwMzIvYmluZC5jLAorCSAgZGxscy93bGRhcDMyL3dpbmxkYXBfcHJpdmF0ZS5oLCBkbGxzL3dsZGFwMzIvd2xkYXAzMi5oLAorCSAgZGxscy93bGRhcDMyL3dsZGFwMzIuc3BlYzoKKwlIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlJbXBsZW1lbnQgbGRhcF9iaW5kKiBmdW5jdGlvbnMuCisKKwkqIGRsbHMvb2xlYXV0MzIvdHlwZWxpYi5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBGaXggVlRfQllSRUZ8VlRfVU5LTk9XTiByZXR1cm4gdmFsdWVzIGJ5IGNvbXBhcmluZyB0aGUgY29ycmVjdCB2YWx1ZQorCSAgd2l0aCBWVF9VTktOT1dOIGFuZCBWVF9ESVNQQVRDSC4KKwktIEJldHRlciB0cmFjaW5nLgorCisJKiBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCVJldHVybiBESVNQX0VfRVhDRVBUSU9OIGZyb20gSVR5cGVJbmZvX0ludm9rZSBvbiBhbiBlcnJvciBpbiB0aGUKKwljYWxsZWQgZnVuY3Rpb24uCisKKwkqIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gSVJwY1N0dWJCdWZmZXJfRGlzY29ubmVjdCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLgorCS0gUmVsZWFzZSBUeXBlTGliIHdoZW4gZnJlZWluZyBzdHViIGJ1ZmZlci4KKworCSogZGxscy9vbGUzMi9tYXJzaGFsLmMsIGRsbHMvb2xlMzIvc3R1Ym1hbmFnZXIuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBBbHdheXMgcXVlcnkgZm9yIHRoZSBjb3JyZWN0IHN0dWIgaW50ZXJmYWNlLCBvdGhlcndpc2Ugd2Ugd2lsbCBiZQorCSAgcG9pbnRpbmcgdG8gdGhlIGNvbXBsZXRlbHkgd3Jvbmcgb2JqZWN0IHdoZW4gYSBwcm94eSBkb2VzIGEKKwkgIHF1ZXJ5aW50ZXJmYWNlLgorCS0gUmVtb3ZlIGFzc3VtcHRpb24gdGhhdCB0aGUgc3R1YiBidWZmZXIgd2lsbCBoYW5kbGUgdGhlIGxpZmV0aW1lIG9mCisJICB0aGUgb2JqZWN0LgorCisJKiBzZXJ2ZXIvY2xhc3MuYzoKKwlDcmVhdGUgdGhlIGRlc2t0b3AgY2xhc3Mgd2hlbiBuZWVkZWQgd2l0aG91dCByZXF1aXJpbmcgYSBjbGllbnQKKwlyZXF1ZXN0LgorCisJKiBkbGxzL29sZWF1dDMyL29sZWF1dC5jLCBkbGxzL29sZWF1dDMyL3JlZ3N2ci5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBY3RpdmF0ZSBJVHlwZUxpYiwgSVR5cGVJbmZvIGFuZCBJRW51bVZBUklBTlQgTWFyc2hhbGVycy4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZW1vdmUgUmVnaXN0ZXJUeXBlTGliIGhhY2suCisKKwkqIGRsbHMvb2xlMzIvb2xlcHJveHkuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCU1hcnNoYWwgcmV0dXJuIHZhbHVlIGZyb20gSVJlbVVua25vd25fUmVtUXVlcnlJbnRlcmZhY2UuCisKKwkqIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUZpeCBjb25mdXNpb24gYmV0d2VlbiBudW1iZXIgb2YgY2hhcmFjdGVycyBhbmQgbnVtYmVyIG9mIGJ5dGVzIGluCisJdW5tYXJzaGFsaW5nIEJTVFJzLiBDb252ZXJ0IGl0IGFsbCB0byBjaGFyYWN0ZXJzIGZvciBjb25zaXN0ZW5jeSB3aXRoCisJdGhlIEJTVFJfVXNlciogcm91dGluZXMuCisKKwkqIGRsbHMvb2xlMzIvcnBjLmMsIGRsbHMvb2xlMzIvc3R1Ym1hbmFnZXIuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJU2lsZW5jZSBub3cgbm9pc3kgZXJyb3IgbWVzc2FnZXMgY2F1c2VkIGJ5IGNoYW5nZXMgaW4gdGhlIHdheSB3ZSBjYWxsCisJaXBpZF90b19zdHVibWFuYWdlci4gTW92ZSB0aGUgZXJyb3IgbWVzc2FnZSB0byB0aGUgb25lIHBsYWNlIGl0IGlzCisJbmVlZGVkLgorCisJKiBkbGxzL3VzZXIvbWVzc2FnZS5jOgorCVNhdmUgdGhlIHNjb3BlIHdpbmRvdyBmb3IgbW91c2UgZXZlbnRzIGJlZm9yZSBvdmVyd3JpdGluZyBpdC4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlTdXBwb3J0IFZUX0JZUkVGfFZUX0k0IGluIF9jb3B5X2FyZy4KKworCSogZGxscy9vbGVhdXQzMi90bWFyc2hhbC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJTWFyc2hhbCBhbmQgdW5tYXJzaGFsIFRLSU5EX0VOVU0gYW5kIFRLSU5EX0FMSUFTLgorCisJKiBkbGxzL29sZTMyL29sZXByb3h5LmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIFdlIHNob3VsZCBiZSBzdGFydGluZyB3aXRoIDEgcmVmZXJlbmNlLgorCS0gSVJwY1N0dWJCdWZmZXJfRGlzY29ubmVjdCBjYW4gYmUgY2FsbGVkIG1vcmUgdGhhbiBvbmNlLgorCisJKiBkbGxzL3JwY3J0NC9jc3R1Yi5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJSVJwY1N0dWJCdWZmZXJfRGlzY29ubmVjdCBjYW4gYmUgY2FsbGVkIG1vcmUgdGhhbiBvbmNlLgorCisJKiBkbGxzL29sZTMyL3JwYy5jLCBkbGxzL29sZTMyL3Rlc3RzL21hcnNoYWwuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJQnktcGFzcyB0aGUgUlBDIHJ1bnRpbWUgaWYgcG9zc2libGUgd2hlbiBjYWxsaW5nIGFuIFNUQSBieSBwb3N0aW5nIGEKKwltZXNzYWdlIGRpcmVjdGx5IHRvIHRoZSBhcGFydG1lbnQgd2luZG93IGZvciBpdCB0byBwcm9jZXNzLiBGaXhlcyBhCisJZGVhZGxvY2sgaW4gSW5zdGFsbFNoaWVsZCBjYXVzZWQgYnkgaGF2aW5nIHRvIGNyZWF0ZSBhIHRocmVhZCB3aGVuCisJZnJlZWluZyBhbiBvYmplY3QgdGhhdCBjb21lcyBmcm9tIGFuIFNUQSBhcGFydG1lbnQuIEFkZGVkIHRlc3RzIHRoYXQKKwlmYWlsIHdpdGhvdXQgdGhpcyBmaXguCisKKwkqIGRsbHMvb2xlMzIvc3R1Ym1hbmFnZXIuYzogUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCURlbGV0ZSB0aGUgc3R1YiBtYW5hZ2VyIG91dHNpZGUgb2YgdGhlIGFwYXJ0bWVudCBjcml0aWNhbCBzZWN0aW9uCisJYmVjYXVzZSB0aGUgZGVsZXRpb24gbWF5IHJlcXVpcmUgdGhlIG9iamVjdCB0byByZS1lbnRlciB0aGUKKwlhcGFydG1lbnQuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVByaW50ZXIgaGFuZGxlcyByZWZlcnJpbmcgdG8gdGhlIHNhbWUgcHJpbnRlciBzaG91bGQgaGF2ZSB0aGUgc2FtZSBqb2IKKwlxdWV1ZS4KKworCSogZGxscy91c2VyL2NvbnRyb2xzLmgsIGRsbHMvdXNlci9tZW51LmMsIGRsbHMvdXNlci91c2VyX21haW4uYywKKwkgIGRsbHMvdXNlci93aW4uYzoKKwlJbml0aWFsaXplIHRoZSB2YXJpb3VzIG1lbnUgZ2xvYmFsIHZhcmlhYmxlcyBvbiBkZW1hbmQgaW5zdGVhZCBvZiBhdAorCXN0YXJ0dXAgdGltZS4KKworCSogdG9vbHMvd2luZWR1bXAvcGUuYzogS2V2aW4gS29sdHphdSA8a2V2aW5AcGxvcC5vcmc+CisJQWRkIHN1cHBvcnQgZm9yIGR1bXBpbmcgNjRiaXQgUEUgZmlsZXMuCisKKwkqIGRsbHMvbnRkbGwvbG9hZGVyLmMsIGluY2x1ZGUvd2lubnQuaDogS2V2aW4gS29sdHphdSA8a2V2aW5AcGxvcC5vcmc+CisJRGVmaW5lIDY0Yml0IFBFIHN0cnVjdHVyZXMuCisKKwkqIGRsbHMveDExZHJ2L3dpbmRvdy5jOgorCURvbid0IHNldCB3aW4gZ3Jhdml0eSwgdGhlIGRlZmF1bHQgc2hvdWxkIHdvcmsgZmluZS4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzogVHJveSBSb2xsbyA8d2luZUB0cm95LnJvbGxvLm5hbWU+CisJV2hlbiB1c2luZyBQQVRITU9ERV9VTklYLCBhbGwgZmlsZXMgYXJlIGluIHRoZSBmaWxlIHN5c3RlbS4KKworCSogZGxscy9vbGUzMi9jb21wb2JqLmM6IEFsZXggVmlsbGFj7XMgTGFzc28gPGFfdmlsbGFjaXNAcGFsb3NhbnRvLmNvbT4KKwlJbml0aWFsaXplIFJlZ2lzdGVyZWRDbGFzcyBwcm9wZXJseSBpbiBDb1JlZ2lzdGVyQ2xhc3NPYmplY3QgdG8KKwlwcmV2ZW50IGNyYXNoIGluIENvUmV2b2tlQ2xhc3NPYmplY3Qgd2hlbiBhY2Nlc3NpbmcgKHVuaW5pdGlhbGl6ZWQpCisJcE1hcnNoYWxsZWREYXRhLgorCisJKiBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJSW1wbGVtZW50IHRoZSB1c2Ugb2YgUEJ1ZmZlcnMgZm9yIG9mZnNjcmVlbiB0ZXh0dXJlcy4KKworCSogZGxscy9vbGVhdXQzMi9vbGVwaWN0dXJlLmM6CisJQWxleCBWaWxsYWPtcyBMYXNzbyA8YV92aWxsYWNpc0BwYWxvc2FudG8uY29tPgorCUZpeCBHSUYgcGFsZXR0ZSBhbGxvY2F0aW9uLCBieSByZWx5aW5nIG9uIENvbG9yQ291bnQgaW5zdGVhZCBvZgorCVNDb2xvclJlc29sdXRpb24uCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydHlwZS5jLCBkbGxzL29sZWF1dDMyL3ZhcnR5cGUuYzoKKwlBbGV4IFZpbGxhY+1zIExhc3NvIDxhX3ZpbGxhY2lzQHBhbG9zYW50by5jb20+CisJRW5zdXJlIHRoYXQgdW5kZXJmbG93aW5nIG5lZ2F0aXZlIGZsb2F0IGlzIHJlcHJlc2VudGVkIGFzIGEgcG9zaXRpdmUKKwkwLCBqdXN0IGFzIG5hdGl2ZSBvbGVhdXQzMi4KKworMjAwNS0wNy0xOCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9nZGkvdGVzdHMvZ2Rpb2JqLmM6IEh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJVGVzdCB0byBzaG93IHRoYXQgdGhlIGhlaWdodCByZXR1cm5lZCBieSBHZXRUZXh0RXh0ZW50UG9pbnQgaXMgdGhlCisJc2FtZSBhcyB0bUhlaWdodC4KKworCSogZGxscy93bGRhcDMyL01ha2VmaWxlLmluLCBkbGxzL3dsZGFwMzIvYmVyLmMsCisJICBkbGxzL3dsZGFwMzIvd2xkYXAzMi5zcGVjOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUltcGxlbWVudCBiZXJfKiBmdW5jdGlvbnMuCisKKwkqIGluY2x1ZGUvd2luY3J5cHQuaDogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUFkZGVkIGEgYnVuY2ggbW9yZSBkZWZpbml0aW9ucy4KKworCSogZGxscy91c2VyL2NvbnRyb2xzLmgsIGRsbHMvdXNlci9kaWFsb2cuYywgZGxscy91c2VyL2RpYWxvZzE2LmMsCisJICBkbGxzL3VzZXIvbWVudS5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXBsYWNlIGNhbGxzIHRvIERJQUxPR19HZXRDaGFyU2l6ZSB3aXRoIGNvZGUgdG8gZG8gdGhlIGVxdWl2YWxlbnQKKwl1c2luZyBHZGlHZXRDaGFyRGltZW5zaW9ucy4KKworCSogZGxscy9nZGkvZm9udC5jLCBkbGxzL2dkaS9nZGkzMi5zcGVjLCBkbGxzL2dkaS90ZXN0cy9nZGlvYmouYywKKwkgIGluY2x1ZGUvd2luZ2RpLmg6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCBhbmQgdGVzdCBHZGlHZXRDaGFyRGltZW5zaW9ucy4KKworCSogZGxscy90dHlkcnYvTWFrZWZpbGUuaW4sIGRsbHMvdHR5ZHJ2L3VzZXIuYywKKwkgIGRsbHMvdHR5ZHJ2L3dpbmV0dHkuZHJ2LnNwZWM6CisJUmVtb3ZlIHNvbWUgbm8gbG9uZ2VyIG5lZWRlZCBzdHViIGZ1bmN0aW9ucy4KKworCSogZGxscy91c2VyL01ha2VmaWxlLmluLCBkbGxzL3VzZXIvY2xpcGJvYXJkLmMsIGRsbHMvdXNlci9jdXJzb3JpY29uLmMsCisJICBkbGxzL3VzZXIvZGVmd25kLmMsIGRsbHMvdXNlci9kaXNwbGF5LmMsIGRsbHMvdXNlci9kcml2ZXIuYywKKwkgIGRsbHMvdXNlci9mb2N1cy5jLCBkbGxzL3VzZXIvaW5wdXQuYywgZGxscy91c2VyL21lc3NhZ2UuYywKKwkgIGRsbHMvdXNlci9ub25jbGllbnQuYywgZGxscy91c2VyL3BhaW50aW5nLmMsIGRsbHMvdXNlci9zeXNwYXJhbXMuYywKKwkgIGRsbHMvdXNlci91c2VyX21haW4uYywgZGxscy91c2VyL3VzZXJfcHJpdmF0ZS5oLCBkbGxzL3VzZXIvd2luLmMsCisJICBkbGxzL3VzZXIvd2lucG9zLmM6CisJTG9hZCB0aGUgVVNFUiBkcml2ZXIgb24gZGVtYW5kIGluc3RlYWQgb2YgYXQgdXNlcjMyIGxvYWQgdGltZS4KKwlQcm92aWRlIGEgZmFsbGJhY2sgaW1wbGVtZW50YXRpb24gZm9yIGFsbCB0aGUgZnVuY3Rpb25zIHRvIGF2b2lkCisJaGF2aW5nIHRvIGNoZWNrIGZvciBOVUxMIGZ1bmN0aW9ucyBldmVyeXdoZXJlLgorCisJKiBkbGxzL21zY21zL2hhbmRsZS5jLCBkbGxzL21zY21zL2ljYy5jLCBkbGxzL21zY21zL21zY21zX3ByaXYuaCwKKwkgIGRsbHMvbXNjbXMvcHJvZmlsZS5jLCBkbGxzL21zY21zL3RyYW5zZm9ybS5jOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCU1ha2UgbGNtcyBzdXBwb3J0IGRlcGVuZCBvbiBoZWFkZXJzIF9hbmRfIGxpYnJhcmllcywgbm90IGp1c3QgdGhlCisJaGVhZGVycy4KKworCSogZGxscy9hZHZhcGkzMi9hZHZhcGkzMi5zcGVjLCBkbGxzL2FkdmFwaTMyL3JlZ2lzdHJ5LmMsCisJICBpbmNsdWRlL3dpbnJlZy5oOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUltcGxlbWVudCBSZWdHZXRWYWx1ZUEvVy4KKworCSogZGxscy9udGRsbC9udC5jLCBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsIHNlcnZlci9wcm90b2NvbC5kZWYsCisJICBzZXJ2ZXIvcmVnaXN0cnkuYywgc2VydmVyL3JlcXVlc3QuaCwgc2VydmVyL3NlY3VyaXR5LmgsCisJICBzZXJ2ZXIvdG9rZW4uYywgc2VydmVyL3RyYWNlLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPgorCS0gQ2hhbmdlIHRoZSBkZWZhdWx0IHVzZXIgU0lEIHRvIG1hdGNoIHdoYXQgd2FzIHByZXZpb3VzbHkgcmV0dXJuZWQgYnkKKwkgIE50UXVlcnlJbmZvcm1hdGlvblRva2VuLgorCS0gSW1wbGVtZW50IFRva2VuVXNlciBmb3IgTnRRdWVyeUluZm9ybWF0aW9uVG9rZW4uCisJLSBBZGQgYSBmdW5jdGlvbiBmb3IgZ2V0dGluZyB0aGUgdXNlcidzIHJlZ2lzdHJ5IHBhdGggZnJvbSBhIFNJRC4KKworCSogZGxscy91c2VyL3N5c3BhcmFtcy5jLCBkbGxzL3VzZXIvdXNlcl9tYWluLmMsCisJICBkbGxzL3VzZXIvdXNlcl9wcml2YXRlLmgsIGRsbHMveDExZHJ2L2NsaXBib2FyZC5jLCBkbGxzL3gxMWRydi9kY2UuYywKKwkgIGRsbHMveDExZHJ2L3NldHRpbmdzLmMsIGRsbHMveDExZHJ2L3dpbmRvdy5jLAorCSAgZGxscy94MTFkcnYvd2luZXgxMS5kcnYuc3BlYzoKKwlGaXhlZCBhIGZldyBwcm90b3R5cGVzIGluIHRoZSBVU0VSIGRyaXZlci4KKworCSogZGxscy9ycGNydDQvbmRyX21hcnNoYWxsLmMsIGRsbHMvcnBjcnQ0L3JwY3J0NC5zcGVjOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgc3R1YnMgZm9yIG1vc3Qgb2YgdGhlIE5EUiBtYXJzaGFsaW5nIGZ1bmN0aW9ucy4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJVXNlIENQX1VOSVhDUCBpbnN0ZWFkIG9mIENQX0FDUCB3aGVuIGNvbnZlcnRpbmcgcGF0aHMgKFBvaW50ZWQgb3V0IGJ5CisJVHJveSBSb2xsbykuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVBhcnRpYWwgaW1wbGVtZW50YXRpb24gb2YgR2V0Sm9iLgorCisJKiBkbGxzL3NoZWxsMzIvY2xhc3Nlcy5jOiBNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUmVsZWFzZSBzaGVsbCBmb2xkZXJzIG9ubHkgaWYgdGhleSB3ZXJlIHN1Y2Nlc3NmdWxseSBhY3F1aXJlZC4KKworCSogZGxscy9vbGVhdXQzMi90ZXN0cy92YXJ0eXBlLmM6CisJQWxleCBWaWxsYWPtcyBMYXNzbyA8YV92aWxsYWNpc0BwYWxvc2FudG8uY29tPgorCVRlc3QgZm9yIGJlaGF2aW9yIG9mIG5lZ2F0aXZlIHVuZGVyZmxvdyBmb3JtYXR0aW5nLgorCisJKiBkbGxzL3dpbmVkM2QvZGV2aWNlLmM6IE9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlJbXBsZW1lbnRlZCBhIHRpZGllZCB1cCBJV2luZUQzRGV2aWNlX0NvbG9yRmlsbC4KKworCSogZGxscy9jb21jdGwzMi9NYWtlZmlsZS5pbiwgZGxscy9jb21jdGwzMi9wcm9wc2hlZXQuYzoKKwlGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlFbmFibGVkICJ0YWIiIGRpYWxvZyB0ZXh0dXJlIGZvciBwcm9wZXJ0eSBzaGVldCBwYWdlcy4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9yZWdpc3RyeS5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCVJld3JvdGUgdGhlIFJlZ0dldFZhbHVlIHRlc3RzIGZvciBSRUdfU1ogLyBSRUdfRVhQQU5EX1NaLgorCisJKiBkbGxzL3VzZXIvc3lzcGFyYW1zLmM6CisJTG9hZCBzeXN0ZW0gbWV0cmljcyBvbiBkZW1hbmQgaW5zdGVhZCBvZiBpbml0aWFsaXppbmcgZXZlcnl0aGluZyBhdAorCXVzZXIzMiBsb2FkIHRpbWUuCisKKwkqIGRsbHMvbXNodG1sL01ha2VmaWxlLmluLCBkbGxzL21zaHRtbC9tc2h0bWxfcHJpdmF0ZS5oLAorCSAgZGxscy9tc2h0bWwvb2xlb2JqLmMsIGRsbHMvbXNodG1sL29sZXduZC5jLAorCSAgZGxscy9tc2h0bWwvdGVzdHMvaHRtbGRvYy5jLCBkbGxzL21zaHRtbC92aWV3LmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwktIEFkZGVkIG1vcmUgdGVzdHMuCisJLSBNYWtlIHRlc3RzIHBhc3MgdW5kZXIgV2luZS4KKworCSogZGxscy91c2VyL3VzZXIzMi5zcGVjLCBkbGxzL3VzZXIvd2luLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJQWRkIHN0dWIgZm9yIFNldExheWVyZWRXaW5kb3dBdHRyaWJ1dGVzLgorCisJKiBpbmNsdWRlL29kYmNpbnN0Lmg6IEhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUZpeCBzb21lIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgd2FybmluZ3MuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHIuaCwgZGxscy9zaGVsbDMyL3NoZmxkcl9mcy5jLAorCSAgZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJQXBwZW5kIGZpbGVuYW1lIGV4dGVuc2lvbiBpZiBuZWNlc3NhcnkgaW4gSVNoZWxsRm9sZGVyOjpTZXROYW1lT2YuCisKKwkqIGxpYnMvcG9ydC9pbnRlcmxvY2tlZC5jOiBLZXZpbiBLb2x0emF1IDxrZXZpbkBwbG9wLm9yZz4KKwlBZGQgeDg2XzY0IGludGVybG9ja2VkIGZ1bmN0aW9ucy4KKworCSogaW5jbHVkZS9iYXNldHNkLmgsIGluY2x1ZGUvd2lubnQuaDogS2V2aW4gS29sdHphdSA8a2V2aW5AcGxvcC5vcmc+CisJRGVmaW5lIHg4Nl82NCBjb250ZXh0LgorCisJKiBkbGxzL3NlY3VyMzIvc2VjdXIzMi5jLCBkbGxzL3NlY3VyMzIvc2VjdXIzMi5zcGVjLAorCSAgaW5jbHVkZS9udHNlY2FwaS5oOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCVN0dWIgaW1wbGVtZW50YXRpb25zIGZvciBHZXRVc2VyTmFtZUV4e0EsV30sIFRyYW5zbGF0ZU5hbWV7QSxXfSwKKwlMc2FDYWxsQXV0aGVudGljYXRpb25QYWNrYWdlLCBMc2FDb25uZWN0VW50cnVzdGVkIGFuZAorCUxzYURlcmVnaXN0ZXJMb2dvblByb2Nlc3MuCisKKwkqIGRsbHMvdGFwaTMyL2xpbmUuYywgaW5jbHVkZS90YXBpLmg6IEhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCUZpeCBwb2ludGVyIHNpZ25lZG5lc3MgYW5kIG1pc3NpbmcgZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBkbGxzL2NvbWN0bDMyL2xpc3R2aWV3LmM6IERpbWkgUGF1biA8ZGltaUBsYXR0aWNhLmNvbT4KKwlTaWxlbmNlIHVuaW5pdGlhbGl6ZWQgd2FybmluZ3MuCisKKwkqIGluY2x1ZGUvbXNjYXQuaCwgaW5jbHVkZS93aW5zcG9vbC5oOiBIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlGaXggc29tZSAtV21pc3NpbmctZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBkbGxzL3dzb2NrMzIvc2VydmljZS5jLCBkbGxzL3dzb2NrMzIvd3NvY2szMi5zcGVjLCBpbmNsdWRlL25zcGFwaS5oOgorCUhhbnMgTGVpZGVra2VyIDxoYW5zQGl0LnZ1Lm5sPgorCVN0dWJzIGZvciBHZXRBZGRyZXNzQnlOYW1le0EsV30uCisKKwkqIHByb2dyYW1zL3dpbmV0ZXN0L01ha2VmaWxlLmluOiBIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlJbmNsdWRlIHRoZSBtc2h0bWwgdGVzdC4KKworCSogZGxscy91c2VyL3Rlc3RzL3dpbnN0YXRpb24uYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlEb24ndCBydW4gdGVzdHMgb24gcGxhdGZvcm1zIHRoYXQgZG9uJ3Qgc3VwcG9ydCBXaW5kb3dTdGF0aW9uIGNhbGxzLgorCisJKiBkbGxzL21zY21zL3Rlc3RzL3Byb2ZpbGUuYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlTZXQgc2l6ZSBiZWZvcmUgY2FsbGluZyBwU2V0Q29sb3JQcm9maWxlRWxlbWVudC4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9yZWdpc3RyeS5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUZpeCByZWdpc3RyeSB0ZXN0cyBvbiBXaW45NS4KKworCSogZGxscy91cmxtb24vdW1vbi5jOiBGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlGaXggbWlzdXNlIG9mIFVybENvbWJpbmVXLgorCisJKiBkbGxzL2FkdmFwaTMyL2NyeXB0LmMsIGluY2x1ZGUvd2luY3J5cHQuaDoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQWRkL2NvcnJlY3QgYSBjb3VwbGUgZGVmaW5pdGlvbnMsIGFsbG93IGhhc2hpbmcgbm90aGluZy4KKworCSogZGxscy93aW5lZDNkL2Jhc2V0ZXh0dXJlLmMsIGRsbHMvd2luZWQzZC9kcmF3cHJpbS5jOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlTZXQgbWlwbWFwIGxldmVscyBjb3JyZWN0bHkgKGV2ZW4gd2l0aCBBVEkncyBidWdneSBkcml2ZXJzKS4KKworCSogZGxscy93aW5lZDNkL2RldmljZS5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJRGlydHkgdGhlIHN1cmZhY2UgKGluc3RlYWQgb2YgdGhlIHRleHR1cmUpIHdoZW4gYSByZW5kZXIgdGFyZ2V0cyBpcworCXNlbmQgYW5kIGVuZHNjZW5lIGlzIGNhbGxlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgY29ycmVjdCBzdXJmYWNlIGlzCisJdXBkYXRlZC4KKworCSogZGxscy9tc2h0bWwvdGVzdHMvcHJvdG9jb2wuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlTa2lwIGZ1dGlsZSB0ZXN0cyBpZiBDb0dldENsYXNzT2JqZWN0IGZhaWxzLgorCisyMDA1LTA3LTE1ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy93bGRhcDMyL01ha2VmaWxlLmluLAorCSAgaW5jbHVkZS9jb25maWcuaC5pbjoKKwlIYW5zIExlaWRla2tlciA8aGFuc0BpdC52dS5ubD4KKwlDb25maWd1cmUgY2hlY2tzIGZvciBPcGVuTERBUCBoZWFkZXJzIGFuZCBsaWJyYXJpZXMuCisKKwkqIGRsbHMvdXNlci9zeXNwYXJhbXMuYzoKKwlBZGRlZCBhIGJ1bmNoIG9mIHV0aWxpdHkgZnVuY3Rpb25zIHRvIGZhY3RvciBvdXQgYSBsb3Qgb2YgdGhlIHJlcGVhdGVkCisJY29kZSBpbiBTeXN0ZW1QYXJhbWV0ZXJzSW5mb1cuCisKKwkqIGRsbHMvZHNvdW5kL3Rlc3RzL2RzM2QuYywgZGxscy9kc291bmQvdGVzdHMvZHNvdW5kOC5jLAorCSAgZGxscy94MTFkcnYveHJlbmRlci5jOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJRml4IHNvbWUgc2lnbi1jb21wYXJlIHdhcm5pbmdzIGJ5IGNob29zaW5nIGNvcnJlY3QgZGF0YXR5cGVzLgorCisJKiBkbGxzL3dpbm1tL3dpbmVuYXMvYXVkaW8uYywgZGxscy94MTFkcnYvc2Nyb2xsLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlBZGQgc29tZSBjb25zdHMgdG8gZml4IGRpc2NhcmQtcXVhbCB3YXJuaW5ncy4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvY29kZXBhZ2UuYzoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhIHRlc3QgZm9yIGhhbmRsaW5nIG92ZXJsYXBwZWQgYnVmZmVycyBieSBXaWRlQ2hhclRvTXVsdGlCeXRlLgorCisJKiBkbGxzL3ZlcnNpb24vdGVzdHMvaW5mby5jOiBQYXVsIFZyaWVucyA8cGF1bC52cmllbnNAeHM0YWxsLm5sPgorCUFkZGVkIGEgdGVzdCwgc3BlY2lmaWNhbGx5IGZvciBOVC9XMksvWFAvVzJLMy4KKworCSogZGxscy91eHRoZW1lL2RyYXcuYywgZGxscy91eHRoZW1lL3N5c3RlbS5jOgorCUZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCU1ha2UgZGlhbG9nIHRoZW1lIHRleHR1cmUgc2V0dGluZyBub24tZ2xvYmFsIChpZSBhIHBlci13aW5kb3cKKwlzZXR0aW5nKS4KKworCSogZGxscy93aW5lZDNkL2RldmljZS5jOiBPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJRml4ZWQgYSBkaXZpc2lvbiBieSAwIGluIHNldHVwX2xpZ2h0IHRoYXQgb2NjdXJzIHdpdGggcmFuZ2UgaXMgemVyby4KKworCSogZGxscy91c2VyL25vbmNsaWVudC5jLCBpbmNsdWRlL3dpbmdkaS5oOgorCUZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCUFkZCBzdXBwb3J0IGZvciBkcmF3aW5nIGdyYWRpZW50IGNhcHRpb25zLgorCisJKiBkbGxzL250ZGxsL2hlYXAuYzogRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBdm9pZCB1bm5lY2Vzc2FyeSBjYXN0cy4KKworCSogaW5jbHVkZS93aW51c2VyLmg6CisJU29ydCB0aGUgU1BJXyogY29uc3RhbnRzIGFuZCByZW1vdmUgc29tZSBkdXBsaWNhdGVzLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlBZGQgZmlsZSB0eXBlIGNvbHVtbiBpbiBkZXRhaWxlZCBzaGVsbCB2aWV3LgorCU1ha2UgdGhlIG9yZGVyIG9mIHNoZWxsIHZpZXcgY29sdW1ucyAncHJlZml4LWNvbXBhdGlibGUnIHdpdGgKKwlzaGZsZHJfZnMuCisJRG9uJ3QgcmVtb3ZlIGZpbGVuYW1lIGV4dGVuc2lvbnMgZm9yIHBhdGggcGlkbHMgaW4gR2V0RGlzcGxheU5hbWVPZi4KKworCSogZGxscy9udGRsbC9udGRsbF9taXNjLmgsIGRsbHMvbnRkbGwvdmlydHVhbC5jOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJTWFrZSBWSVJUVUFMX0hhbmRsZUZhdWx0IHJldHVybiBhbiBOVFNUQVRVUy4KKworCSogZGxscy9jb21jdGwzMi9saXN0dmlldy5jOiBLZXZpbiBLb2x0emF1IDxrZXZpbkBwbG9wLm9yZz4KKwlGb3J3YXJkIHNvbWUgaGVhZGVyIG5vdGlmaWNhdGlvbnMgdG8gcGFyZW50IG9mIGxpc3R2aWV3LgorCisJKiBkbGxzL2NvbWN0bDMyL3Byb3BzaGVldC5jOgorCVRob21hcyBXZWlkZW5tdWVsbGVyIDx3aW5lLXBhdGNoZXNAcmVhY3Rzb2Z0LmNvbT4KKwlTdXBwb3J0IFBTTV9JRFRPSU5ERVguCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL21zY21zL01ha2VmaWxlLmluLCBkbGxzL21zY21zL2ljYy5jLAorCSAgZGxscy9tc2Ntcy9sY21zX2FwaS5oLCBkbGxzL21zY21zL21zY21zX21haW4uYywgZGxscy9tc2Ntcy9wcm9maWxlLmMsCisJICBkbGxzL21zY21zL3Rlc3RzL3Byb2ZpbGUuYywgZGxscy9tc2Ntcy90cmFuc2Zvcm0uYywKKwkgIGluY2x1ZGUvY29uZmlnLmguaW46CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJTGluayBkaXJlY3RseSB0byBsaWJsY21zLgorCUZpeCB0eXBvIGluIHRlc3QuCisKKwkqIGRsbHMva2VybmVsL3ZpcnR1YWwuYywgZGxscy9udGRsbC9oZWFwLmMsIGRsbHMvbnRkbGwvcHJvY2Vzcy5jLAorCSAgZGxscy9udGRsbC92aXJ0dWFsLmMsIGluY2x1ZGUvd2lubnQuaCwgaW5jbHVkZS93aW50ZXJubC5oOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJVXNlIFNJWkVfVCB0eXBlIGZvciBzaXplIHZhcmlhYmxlcyBpbiBOVERMTCB3aGVuIGFwcHJvcHJpYXRlLgorCisJKiBkbGxzL2NvbWN0bDMyL2NvbWN0bF9Dbi5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfQ3MucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9EZS5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfRW4ucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9Fcy5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfRnIucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9JdC5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfSmEucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9Lby5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfTmwucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9QbC5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfUHQucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9SdS5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfU2kucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9Tdi5yYywgZGxscy9jb21jdGwzMi9jb21jdGxfVGgucmMsCisJICBkbGxzL2NvbWN0bDMyL2NvbWN0bF9Vay5yYywgZGxscy9jb21jdGwzMi9wcm9wc2hlZXQuYzoKKwlUaG9tYXMgV2VpZGVubXVlbGxlciA8d2luZS1wYXRjaGVzQHJlYWN0c29mdC5jb20+CisJLSBTdXBwb3J0IFBTSF9XSVpBUkRIQVNGSU5JU0ggaW4gd2l6YXJkcy4KKwktIENvcnJlY3QgdGFiIG9yZGVyIG9mIHRoZSB3aXphcmQgYnV0dG9ucy4KKworCSogZGxscy9kc291bmQvZHNvdW5kLmMsIGRsbHMvZHNvdW5kL3Rlc3RzL2RzM2QuYywKKwkgIGRsbHMvd2luc29jay90ZXN0cy9zb2NrLmMsIHByb2dyYW1zL3J1bmRsbDMyL3J1bmRsbDMyLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlGaXggc29tZSB3cml0ZS1zdHJpbmdzIHdhcm5pbmdzLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlEbyBmaWxlbmFtZSBwb3N0cHJvY2Vzc2luZyBpbiBHZXREaXNwbGF5TmFtZU9mIChIaWRlIGZpbGVuYW1lCisJZXh0ZW5zaW9ucyBpZiBhcHByb3ByaWF0ZSkuCisKKwkqIGRsbHMvd2luZWQzZC9kZXZpY2UuYzogT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCUNvcnJlY3QgYSBtaXNzcGxhY2VkICNpZiBpbiBJV2luZUQzRERldmljZUltcGxfQ2xlYW5SZW5kZXIuCisKKwkqIGRsbHMvY29tY3RsMzIvdG9vbGJhci5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVdoZW4gYWRkaW5nIGFuIGltYWdlIGNvcHkgdGhlIGZ1bGwgcHJldmlvdXMgYnVmZmVyLgorCUltcGxlbWVudCByZXBsYWNpbmcgYW4gaWNvbiB3aXRoIG9uZSBmcm9tIGEgcmVzb3VyY2UuCisKKwkqIGluY2x1ZGUvd2ludHJ1c3QuaDogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlBZGQgbWlzc2luZyBtZW1iZXIgdG8gV0lOVFJVU1RfREFUQSBzdHJ1Y3QuCisKKwkqIGRsbHMvd2luaW5ldC9pbnRlcm5ldC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJRml4IHJldHVybiB2YWx1ZSBvZiBJbnRlcm5ldFF1ZXJ5RGF0YUF2YWlsYWJsZS4KKworCSogZGxscy93aW5tbS9kcml2ZXIuYywgZGxscy93aW5tbS9sb2x2bGRydi5jOgorCUVyaWMgUG91ZWNoIDxwb3VlY2gtZXJpY0B3YW5hZG9vLmZyPgorCUdldCByaWQgb2YgSGVhcFZhbGlkYXRlIGFzIGl0J3Mgbm90IHByb3Blcmx5IGhhbmRsZWQgYnkgc29tZSBtZW1vcnkKKwltYW5hZ2VtZW50IHRvb2xzIChNaWNyb3F1aWxsIGZvciBleGFtcGxlKS4KKworCSogcHJvZ3JhbXMvd2NtZC93Y21kbWFpbi5jOiBFcmljIFBvdWVjaCA8cG91ZWNoLWVyaWNAd2FuYWRvby5mcj4KKwlFbnN1cmUgbXN2Y3J0J3MgaW8gYmxvY2sgaXMgcGFzc2VkIGRvd24gZnJvbSB3Y21kJ3MgcGFyZW50IHByb2Nlc3MgdG8KKwljaGlsZCBwcm9jZXNzLgorCisJKiBkbGxzL2dkaS90ZXN0cy9tZXRhZmlsZS5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUZpeCB0aGUgRW51bUVuaE1ldGFGaWxlIHRlc3RzLgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlTZXQgdGhlIGRlZmF1bHQgZG9jIHRpdGxlIHRvIHRoYXQgb2YgV2luZG93cy4KKwlQYXNzIGN1cHMgdGhlIGRvYyB0aXRsZS4KKworCSogZGxscy93aW5lZDNkL3Jlc291cmNlLmMsIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJSW1wbGVtZW50ZWQgR2V0L1NldC9GcmVlIHByaXZhdGUgZGF0YSBpbiByZXNvdXJjZS4KKworCSogZGxscy93aW50cnVzdC93aW50cnVzdF9tYWluLmM6IFBhdWwgVnJpZW5zIDxwYXVsLnZyaWVuc0B4czRhbGwubmw+CisJUmV0dXJuIFRSVVNUX0VfUFJPVklERVJfVU5LTk9XTiB1bnRpbCBpbXBsZW1lbnRlZC4KKworMjAwNS0wNy0xNCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogcHJvZ3JhbXMvcnVuZGxsMzIvcnVuZGxsMzIuYzogRGV0bGVmIFJpZWtlbmJlcmcgPHdpbmUuZGV2QHdlYi5kZT4KKwlTcGFjZSBpcyB2YWxpZCBiZXR3ZWVuIG1vZHVsZSBuYW1lIGFuZCBlbnRyeSBwb2ludC4KKworCSogZGxscy9rZXJuZWwvcHJvY2Vzcy5jLCBkbGxzL250ZGxsL2xvYWRlci5jLCBkbGxzL250ZGxsL250ZGxsX21pc2MuaCwKKwkgIGRsbHMvbnRkbGwvcGF0aC5jLCBkbGxzL250ZGxsL3RocmVhZC5jOgorCU1vdmVkIGluaXRpYWxpemF0aW9uIG9mIHRoZSBkZWZhdWx0IHVzZXIgcHJvY2VzcyBwYXJhbWV0ZXJzIHRvIG50ZGxsLgorCisJKiBkbGxzL3dpbmVkM2QvY3ViZXRleHR1cmUuYzoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJRml4ZWQgYSBidWcgaW4gUHJlbG9hZCBjYXVzZWQgYmUgYSBtaXNzaW5nIGJyYWNlIGFyb3VuZCBhIGZvciBsb29wLAorCXNsaWdodGx5IGltcHJvdmVkIHRoZSB3YXkgdGhhdCBlcnJvcnMgYXJlIGhhbmRsZWQgYnkgcGFzc2luZyBiYWNrIGhyCisJZnJvbSBzb21lIGZ1bmN0aW9uIGNhbGxzLgorCisJKiBkbGxzL2QzZDgvZGV2aWNlLmMsIGRsbHMvZDNkOC9kcmF3cHJpbS5jLCBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsCisJICBkbGxzL3dpbmVkM2QvZHJhd3ByaW0uYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIG1pc3NpbmctZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBkbGxzL21zaHRtbC9vbGVvYmouYywgZGxscy9tc2h0bWwvdGVzdHMvTWFrZWZpbGUuaW4sCisJICBkbGxzL21zaHRtbC90ZXN0cy9odG1sZG9jLmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwktIEFkZGVkIG1vcmUgdGVzdHMuCisJLSBNYWtlIHRlc3RzIHBhc3MgdW5kZXIgV2luZS4KKworCSogdG9vbHMvd2lkbC90eXBlbGliLmM6IFN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJRml4IGEgLVdzaWduLWNvbXBhcmUgd2FybmluZy4KKworCSogZGxscy9tc2h0bWwvbWFpbi5jLCBkbGxzL21zaHRtbC9tc2h0bWwuaW5mLCBpbmNsdWRlL21zaHRtbC5pZGw6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlBZGRlZCBNU0hUTUwgbGlicmFyeSBkZWNsYXJhdGlvbi4KKworCSogc2VydmVyL2ZkLmMsIHNlcnZlci9maWxlLmgsIHNlcnZlci9tYWlsc2xvdC5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIG1haWxzbG90cyB1c2UgYXMgbXVjaCBvZiB0aGUgZGVmYXVsdCBhc3luYyBmZCBpbXBsZW1lbnRhdGlvbiBhcworCXBvc3NpYmxlLgorCisJKiBkbGxzL2tlcm5lbC9rZXJuZWxfbWFpbi5jLCBkbGxzL2tlcm5lbC9wcm9jZXNzLmMsIGRsbHMvbnRkbGwvbnQuYywKKwkgIGRsbHMvbnRkbGwvbnRkbGxfbWlzYy5oLCBkbGxzL250ZGxsL3NlcnZlci5jLCBkbGxzL250ZGxsL3RpbWUuYywKKwkgIGluY2x1ZGUvd2luZS9zZXJ2ZXJfcHJvdG9jb2wuaCwgc2VydmVyL29iamVjdC5oLCBzZXJ2ZXIvcHJvY2Vzcy5jLAorCSAgc2VydmVyL3Byb3RvY29sLmRlZiwgc2VydmVyL3JlcXVlc3QuYywgc2VydmVyL3JlcXVlc3QuaCwKKwkgIHNlcnZlci90aHJlYWQuYywgc2VydmVyL3RyYWNlLmM6CisJTW92ZWQgdGhlIHNlcnZlciBzdGFydCB0aW1lIHRvIHRoZSBpbml0X3RocmVhZCByZXF1ZXN0IGFuZCBnb3QgcmlkIG9mCisJdGhlIGluaXRfcHJvY2VzcyByZXF1ZXN0IChiYXNlZCBvbiBhIHBhdGNoIGJ5IEZlbGl4IE5hd290aG5pZykuCisKKwkqIGRsbHMvY29tY3RsMzIvaW1hZ2VsaXN0LmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlIYW5kbGUgQ29weUltYWdlIGFuZCBvdGhlciBmdW5jdGlvbnMgZmFpbGluZyBieSBub3QgYWRkaW5nIHRoZSBpY29uCisJYW5kIG5vdGlmeWluZyB0aGUgY2FsbGVyLgorCisJKiBkbGxzL2dkaS9kaWIuYzogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCVJlbGVhc2UgREMgaW4gZXJyb3IgY29uZGl0aW9uIG9uIFN0cmV0Y2hESUJpdHMuCisKKwkqIGluY2x1ZGUvcmljaGVkaXQuaDogS2V2aW4gS29sdHphdSA8a2V2aW5AcGxvcC5vcmc+CisJRGVmaW5lIEdDTV9SSUdIVE1PVVNFRFJPUC4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9ObC5yYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlVcGRhdGUgdGhlIER1dGNoIHRyYW5zbGF0aW9ucy4KKworCSogcHJvZ3JhbXMvd2luZWRiZy9zdGFjay5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJUmVtb3ZlIGFkZGl0aW9uYWwgY3VycmVudCBwcm9jZXNzIHRyYWNraW5nIGluIGJhY2t0cmFjZV9hbGwgYXMgaXQgY2FuCisJcmVmZXIgdG8gZnJlZWQgbWVtb3J5LgorCisJKiBkbGxzL21zaHRtbC9odG1sZG9jLmMsIGRsbHMvbXNodG1sL21zaHRtbF9wcml2YXRlLmgsCisJICBkbGxzL21zaHRtbC9vbGV3bmQuYywgZGxscy9tc2h0bWwvdmlldy5jOgorCUphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJLSBCZXR0ZXIgaGFuZGxpbmcgb2YgVUkgYW5kIEluUGxhY2UgYWN0aXZlIHN0YXRlLgorCS0gSW1wbGVtZW50ZWQgSW5QbGFjZURlYWN0aXZhdGUuCisJLSBUSElTIG1hY3JvcyBjbGVhbnVwLgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmMsIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJRW5jb2RlL2RlY29kZSBjZXJ0cywgd2l0aCB0ZXN0cy4KKworMjAwNS0wNy0xMyAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9rZXJuZWwvcHJvY2Vzcy5jLCBkbGxzL250ZGxsL2xvYWRlci5jLCBkbGxzL250ZGxsL250ZGxsX21pc2MuaCwKKwkgIGRsbHMvbnRkbGwvc2VydmVyLmMsIGRsbHMvbnRkbGwvdGhyZWFkLmMsCisJICBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsIHNlcnZlci9wcm9jZXNzLmMsIHNlcnZlci9wcm9jZXNzLmgsCisJICBzZXJ2ZXIvcHJvdG9jb2wuZGVmLCBzZXJ2ZXIvdGhyZWFkLmMsIHNlcnZlci90cmFjZS5jOgorCVJldHVybiB0aGUgc3RhcnR1cCBpbmZvIHNpemUgaW4gdGhlIGluaXRfdGhyZWFkIHJlcXVlc3QsIGFuZCBhbGxvY2F0ZQorCXRoZSBwcm9jZXNzIHBhcmFtZXRlcnMgc3RydWN0dXJlIGluIG50ZGxsIGluc3RlYWQgb2Yga2VybmVsLgorCisJKiBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLCBkbGxzL3dpbmVkM2QvdXRpbHMuYywKKwkgIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJQ29ycmVjdCBhIGZldyBmb3JtYXRzIHRoYXQgd2VyZSBpbmNvcnJlY3QuCisKKwkqIGluY2x1ZGUvd2luY3J5cHQuaDogSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUFkZCBtb3JlIG1pc3NpbmcgZGVmaW5pdGlvbnMuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvRnIucmM6IEpvbmF0aGFuIEVybnN0IDxKb25hdGhhbkBFcm5zdEZhbWlseS5jaD4KKwlVcGRhdGVkIHdpbmVjZmcgRnJlbmNoIHJlc291cmNlcy4KKworCSogc2VydmVyL3NlY3VyaXR5LmgsIHNlcnZlci90b2tlbi5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlTdG9yZSB0aGUgZGVmYXVsdCBEQUNMIGluIHRoZSB0b2tlbi4KKworCSogZGxscy91dWlkL3V1aWQuYywgaW5jbHVkZS8uY3ZzaWdub3JlLCBpbmNsdWRlL01ha2VmaWxlLmluLAorCSAgaW5jbHVkZS9kb3dubG9hZG1nci5pZGw6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlBZGRlZCBkb3dubG9hZG1nci5pZGwuCisKKwkqIGRsbHMvbnRkbGwvbG9hZGVyLmMsIGRsbHMvbnRkbGwvbnRkbGxfbWlzYy5oLCBkbGxzL250ZGxsL3JlbGF5LmM6CisJSW5pdGlhbGl6ZSByZWxheSBkZWJ1Z2dpbmcgZWFybGllciBvbiBub3cgdGhhdCB0aGUgcmVnaXN0cnkgaXMgbG9hZGVkCisJYnkgdGhlIHNlcnZlci4KKworCSogZGxscy9rZXJuZWwvcHJvY2Vzcy5jLCBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsCisJICBzZXJ2ZXIvcHJvdG9jb2wuZGVmLCBzZXJ2ZXIvcmVxdWVzdC5oLCBzZXJ2ZXIvdGhyZWFkLmMsCisJICBzZXJ2ZXIvdHJhY2UuYzoKKwlHZXQgcmlkIG9mIHRoZSBib290X2RvbmUgcmVxdWVzdC4KKworCSogZGxscy93aW5lZDNkL2Jhc2V0ZXh0dXJlLmMsIGRsbHMvd2luZWQzZC9jdWJldGV4dHVyZS5jLAorCSAgZGxscy93aW5lZDNkL2RldmljZS5jLCBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLAorCSAgZGxscy93aW5lZDNkL2RyYXdwcmltLmMsIGRsbHMvd2luZWQzZC9pbmRleGJ1ZmZlci5jLAorCSAgZGxscy93aW5lZDNkL3Jlc291cmNlLmMsIGRsbHMvd2luZWQzZC9zdGF0ZWJsb2NrLmMsCisJICBkbGxzL3dpbmVkM2Qvc3VyZmFjZS5jLCBkbGxzL3dpbmVkM2Qvc3dhcGNoYWluLmMsCisJICBkbGxzL3dpbmVkM2QvdGV4dHVyZS5jLCBkbGxzL3dpbmVkM2QvdXRpbHMuYywKKwkgIGRsbHMvd2luZWQzZC92ZXJ0ZXhidWZmZXIuYywgZGxscy93aW5lZDNkL3ZlcnRleGRlY2xhcmF0aW9uLmMsCisJICBkbGxzL3dpbmVkM2QvdmVydGV4c2hhZGVyLmMsIGRsbHMvd2luZWQzZC92b2x1bWUuYywKKwkgIGRsbHMvd2luZWQzZC92b2x1bWV0ZXh0dXJlLmMsIGRsbHMvd2luZWQzZC93aW5lZDNkX21haW4uYzoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJVGlkeSB1cCBzb21lIGNvbW1lbnRzIGFuZCBmb3JtYXR0aW5nLgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlQYXJ0aWFsIGltcGxlbWVudGF0aW9uIG9mIFNldEpvYlcuCisJU2V0IHRoZSBkb2N1bWVudCB0aXRsZSBpbiBTdGFydERvY1ByaW50ZXIuCisKKwkqIGRsbHMva2VybmVsL3Byb2Nlc3MuYywgZGxscy9udGRsbC9zZXJ2ZXIuYywKKwkgIGluY2x1ZGUvd2luZS9zZXJ2ZXJfcHJvdG9jb2wuaCwgc2VydmVyL3Byb2Nlc3MuYywgc2VydmVyL3Byb2Nlc3MuaCwKKwkgIHNlcnZlci9wcm90b2NvbC5kZWYsIHNlcnZlci90aHJlYWQuYywgc2VydmVyL3RyYWNlLmM6CisJQWxyZWFkeSBpbml0aWFsaXplIHRoZSBwcm9jZXNzIGluIHRoZSBmaXJzdCBpbml0X3RocmVhZCByZXF1ZXN0CisJaW5zdGVhZCBvZiB3YWl0aW5nIGZvciB0aGUgaW5pdF9wcm9jZXNzIHJlcXVlc3QuCisKKwkqIHNlcnZlci9oYW5kbGUuYzoKKwlBdm9pZCBwb3RlbnRpYWwgY3Jhc2hlcyB3aGVuIHRoZXJlIGlzIG5vIGhhbmRsZSB0YWJsZS4KKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2ZpbGVzLmMsIGRsbHMvbXNpL21zaS5jLAorCSAgZGxscy9tc2kvc291cmNlLmMsIGRsbHMvbXNpL3VwZ3JhZGUuYywgaW5jbHVkZS9tc2kuaDoKKwlVc2UgdGhlIG9mZmljaWFsIG5hbWVzIGZvciB0aGUgVW5pY29kZSBzdHJpbmcgY29uc3RhbnRzLgorCisJKiBkbGxzL2RwbGF5eC9kcGxheS5jLCBkbGxzL2RwbGF5eC9kcGxheV9nbG9iYWwuaCwgZGxscy9pdHNzL2l0c3MuYywKKwkgIGRsbHMvaXRzcy9tb25pa2VyLmMsIGRsbHMvaXRzcy9zdG9yYWdlLmMsIGRsbHMvcWNhcC9waW4uaCwKKwkgIGRsbHMvcXVhcnR6L2VudW1maWx0ZXJzLmMsIGRsbHMvcXVhcnR6L2VudW1yZWdmaWx0ZXJzLmMsCisJICBkbGxzL3F1YXJ0ei9maWxlc291cmNlLmMsIGRsbHMvcXVhcnR6L2ZpbHRlcm1hcHBlci5jLAorCSAgZGxscy9xdWFydHovcGluLmgsIGRsbHMvcnBjcnQ0L3JwY19iaW5kaW5nLmgsCisJICBkbGxzL3JwY3J0NC9ycGNfc2VydmVyLmMsIGRsbHMvc2hkb2N2dy9zaGRvY3Z3LmgsCisJICBkbGxzL3NoZG9jdncvc2hkb2N2d19tYWluLmMsIGRsbHMvc2hsd2FwaS90ZXN0cy9jbGlzdC5jLAorCSAgZGxscy91cmxtb24vdGVzdHMvdXJsLmMsIGRsbHMvd2luaW5ldC9pbnRlcm5ldC5jLAorCSAgZGxscy93aW5tbS9tY2lhdmkvcHJpdmF0ZV9tY2lhdmkuaCwgZGxscy93aW5tbS9tY2l3YXZlL21jaXdhdmUuYywKKwkgIGRsbHMvd2lubW0vcGxheXNvdW5kLmMsIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW8uYywKKwkgIGRsbHMvd2lubW0vd2luZW1tLmgsIGRsbHMvd2lubW0vd2luZW9zcy9kc2NhcHR1cmUuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW50ZXJsb2NrZWQgTE9ORyogZ2NjIHdhcm5pbmcgZml4ZXMuCisKKwkqIERFVkVMT1BFUlMtSElOVFMsIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL01ha2VmaWxlLmluLAorCSAgZGxscy93bGRhcDMyLy5jdnNpZ25vcmUsIGRsbHMvd2xkYXAzMi9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvd2xkYXAzMi9tYWluLmMsIGRsbHMvd2xkYXAzMi93bGRhcDMyLnNwZWM6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJQmVnaW5uaW5ncyBvZiBXTERBUDMyLgorCisJKiB0b29scy93aW5lYnVpbGQvaW1wb3J0LmM6IFN0ZXZlIFplbGxlcnMgPHplbGxlcnNAbWFjLmNvbT4KKwlGaXhlZCBsZWZ0b3ZlciBpbXBvcnQgdGFibGUgbmFtZSBpbiBvdXRwdXRfaW1wb3J0X3RodW5rLgorCisJKiBkbGxzL250ZGxsL2NyaXRzZWN0aW9uLmM6IElnbm9yZSBoaWdoIGJpdCBvZiBzcGluIGNvdW50LgorCisJKiBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsIGRsbHMvd2luZWQzZC9yZXNvdXJjZS5jLAorCSAgZGxscy93aW5lZDNkL3N1cmZhY2UuYywgZGxscy93aW5lZDNkL3ZlcnRleGJ1ZmZlci5jLAorCSAgZGxscy93aW5lZDNkL3dpbmVkM2RfbWFpbi5jLCBkbGxzL3dpbmVkM2Qvd2luZWQzZF9wcml2YXRlLmgsCisJICBpbmNsdWRlL3dpbmUvd2luZWQzZF9nbC5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlBZGRlZCBiYXNpYyBtZW1vcnkgbWFuYWdlbWVudCBhbmQgdHJhY2tpbmcgdG8gd2luZWQzZC4KKworCSogaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS93aW5sZGFwLmg6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJQWRkZWQgd2lubGRhcC5oIGhlYWRlci4KKworCSogZGxscy9tc2h0bWwvbXNodG1sX3ByaXZhdGUuaCwgZGxscy9tc2h0bWwvb2xld25kLmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlUSElTIG1hY3JvcyBjbGVhbnVwLgorCisJKiBkbGxzL21zaHRtbC92aWV3LmM6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJQ2FsbCBTaG93VUkgYW5kIEhpZGVVSSBpbiBVSUFjdGl2YXRlLgorCisJKiBkbGxzL3dpbnNwb29sL0RlLnJjLCBkbGxzL3dpbnNwb29sL3dpbnNwb29sLnJjLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9EZS5yYzoKKwlIZW5uaW5nIEdlcmhhcmR0IDxoZW5uaW5nLmdlcmhhcmR0QHdlYi5kZT4KKwktIEFkZGVkIEdlcm1hbiB3aW5zcG9vbCByZXNvdXJjZSBmaWxlLgorCS0gVXBkYXRlZCBHZXJtYW4gd2luZWNmZyByZXNvdXJjZSBmaWxlLgorCisJKiB0b29scy93aWRsL3dyaXRlX21zZnQuYzogU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlGaXggc29tZSAtV3NpZ24tY29tcGFyZSB3YXJuaW5ncy4KKworMjAwNS0wNy0xMiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIHByb2dyYW1zL01ha2VmaWxlLmluLAorCSAgcHJvZ3JhbXMvaGgvLmN2c2lnbm9yZSwgcHJvZ3JhbXMvaGgvTWFrZWZpbGUuaW4sIHByb2dyYW1zL2hoL21haW4uYzoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUFkZGVkIGhoLmV4ZS4KKworCSogZGxscy9rZXJuZWwvcHJvY2Vzcy5jLCBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsCisJICBzZXJ2ZXIvY29uc29sZS5jLCBzZXJ2ZXIvcHJvY2Vzcy5jLCBzZXJ2ZXIvcHJvY2Vzcy5oLAorCSAgc2VydmVyL3Byb3RvY29sLmRlZiwgc2VydmVyL3RyYWNlLmM6CisJTW92ZWQgdGhlIGZpZWxkcyB0aGF0IGRlcGVuZHMgb24gc3RhcnR1cCBpbmZvIGZyb20gdGhlIGluaXRfcHJvY2VzcworCXJlcXVlc3QgdG8gZ2V0X3N0YXJ0dXBfaW5mby4KKworCSogZGxscy91c2VyL2N1cnNvcmljb24uYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUNsZWFuIHVwIENVUlNPUklDT05fTG9hZC4KKworCSogZGxscy9udGRsbC90ZXN0cy9zdHJpbmcuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlCb3RoIHdjc2NociBhbmQgd2NzcmNociBzaG91bGQgYmUgYWJsZSB0byBmaW5kIHRoZSB0ZXJtaW5hdGluZworCWNoYXJhY3Rlci4KKworCSogaW5jbHVkZS93aW5lL3VuaWNvZGUuaDoKKwlGaXhlZCBzdHJjaHJXIGFuZCBzdHJyY2hyVyBmb3IgYSBudWxsIGNoYXJhY3RlciAoc3BvdHRlZCBieSBBcmljCisJU3Rld2FydCkuCisKKwkqIGRsbHMvZG11c2ljL2RtdXNpY19wcml2YXRlLmgsIGRsbHMvZHBsYXl4L2RwY2xhc3NmYWN0b3J5LmMsCisJICBkbGxzL2RwbGF5eC9kcGxheXNwLmMsIGRsbHMvZHBsYXl4L2RwbG9iYnkuYywgZGxscy9kcGxheXgvbG9iYnlzcC5jLAorCSAgZGxscy9kcG5ldC9kcG5ldF9tYWluLmMsIGRsbHMvZHBuZXQvZHBuZXRfcHJpdmF0ZS5oLAorCSAgZGxscy9kc291bmQvZHNvdW5kX3ByaXZhdGUuaCwgZGxscy9kc3dhdmUvZHN3YXZlX3ByaXZhdGUuaCwKKwkgIGRsbHMvaXRzcy9pdHNzLmMsIGRsbHMvaXRzcy9tb25pa2VyLmMsIGRsbHMvbWxhbmcvbWxhbmcuYywKKwkgIGRsbHMvbXNkbW8vZG1vcmVnLmMsIGRsbHMvbmV0YXBpMzIvbmV0Ymlvcy5jLAorCSAgZGxscy9xY2FwL2NhcHR1cmVncmFwaC5jLCBkbGxzL3FjYXAvZW51bW1lZGlhLmMsCisJICBkbGxzL3FjYXAvZW51bXBpbnMuYywgZGxscy9xY2FwL3FjYXBfbWFpbi5jLCBkbGxzL3FjYXAvdmZ3Y2FwdHVyZS5jLAorCSAgZGxscy9xdWFydHovZHNvdW5kcmVuZGVyLmMsIGRsbHMvcXVhcnR6L2VudW1tZWRpYS5jLAorCSAgZGxscy9xdWFydHovZW51bXBpbnMuYywgZGxscy9xdWFydHovZmlsdGVyZ3JhcGguYywKKwkgIGRsbHMvcXVhcnR6L21haW4uYywgZGxscy9xdWFydHovbWVtYWxsb2NhdG9yLmMsIGRsbHMvcXVhcnR6L3BhcnNlci5oLAorCSAgZGxscy9xdWFydHovc3lzdGVtY2xvY2suYywgZGxscy9xdWFydHovdHJhbnNmb3JtLmgsCisJICBkbGxzL3F1YXJ0ei92aWRlb3JlbmRlcmVyLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUludGVybG9ja2VkIExPTkcqIGdjYyB3YXJuaW5nIGZpeGVzLgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlGb3J3YXJkIFNldEpvYkEgLT4gU2V0Sm9iVy4KKworCSogZGxscy9tc2kvY3VzdG9tLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRnVydGhlciB0ZXN0aW5nIHNob3dzIHRoYXQgd2hlbiBDdXN0b21BY3Rpb25EYXRhIG5lZWRzIHRvIGJlIGJsYW5rIGl0CisJaXMgYW4gZW1wdHkgc3RyaW5nIG5vdCAnICcuCisKKwkqIGRsbHMvdXNlci9jdXJzb3JpY29uLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZW1vdmUgQ1VSU09SSUNPTl9TaW11bGF0ZUxvYWRpbmdGcm9tUmVzb3VyY2VXLgorCisJKiBkbGxzL3VzZXIvY3Vyc29yaWNvbi5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTW9kaWZ5IENVUlNPUklDT05fRmluZEJlc3RJY29uL0N1cnNvciB0byB1c2UgZW51bWVyYXRvciBmdW5jdGlvbnMuCisKKwkqIGRsbHMvdXNlci9saXN0Ym94LmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlDYWxsIFNldExhc3RFcnJvciBvbiBlcnJvcnMuCisKKwkqIGRsbHMvdXNlci90ZXh0LmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIFN1cHBvcnQgcmlnaHQtYWxpZ25lZCB0ZXh0IGluIFRhYmJlZFRleHRPdXQuCisJLSBBZGQgZG9jdW1lbnRhdGlvbi4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9Fbi5yYywgcHJvZ3JhbXMvd2luZWNmZy9Gci5yYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvcmVzb3VyY2UuaCwgcHJvZ3JhbXMvd2luZWNmZy94MTFkcnZkbGcuYzoKKwlSYXBoYWVsIEp1bnF1ZWlyYSA8ZmVuaXhAY2x1Yi1pbnRlcm5ldC5mcj4KKwktIGFkZCBkaXJlY3QzZCBjb25maWd1cmF0aW9uIG9uIHdpbmVjZmcgZ3JhcGhpY3MgcGFuZWwKKwktIHJlc3luYyBGciBsaWJyYXJpZXMgZGlhbG9nIChiYXNlZCBvbiBFbi5yYykKKworCSogZGxscy9udGRsbC93Y3N0cmluZy5jOiBVc2UgdGhlIHVuaWNvZGUuaCBmdW5jdGlvbnMgd2hlcmUgcG9zc2libGUuCisKKwkqIGRsbHMvbXNpL21zaS5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVVzZSB0aGUgU291cmNlTGlzdCBmdW5jdGlvbnMgdG8gZ2V0IHRoZSBzb3VyY2UgcGF0aCBpbgorCUNvbmZpZ3VyZVByb2R1Y3RFeFcuCisKKwkqIGRsbHMvbXNpL2ZpbGVzLmM6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJV2hlbiB3b3JraW5nIHRvd2FyZCBpbnN0YWxsIG9uIGRlbWFuZCBzdXBwb3J0IHdlIG5lZWQgdG8gcmVzZXQgYWxsIHRoZQorCWNvbnN0YW50IHZhbHVlcyBzbyB0aGF0IG11bHRpcGxlIGluc3RhbGwgcHJvY2VzcyBkbyBub3QgZ2V0IGNvbmZ1c2VkCisJYnkgbGVmdG92ZXIgdmFsdWVzIGZyb20gdGhlIHByZXZpb3VzIGluc3RhbGwuCisKKwkqIGluY2x1ZGUvY29tbWN0cmwuaDogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJQWRkZWQgV0NfU1RBVElDLgorCisJKiBkbGxzL3VzZXIvbGlzdGJveC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBJbXBsZW1lbnQgTEJfU0VUTE9DQUxFLgorCS0gUmVtb3ZlIGluY29ycmVjdCBGSVhNRXMgZm9yIExCX1VTRVRBQlNUT1BTLgorCisJKiBkbGxzL3V4dGhlbWUvZHJhdy5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlCZXR0ZXIgdmlld3BvcnQgb3JpZ2luIGluIERyYXdUaGVtZVBhcmVudEJhY2tncm91bmQoKS4KKworCSogZGxscy9kM2R4b2YvZDNkeG9mX3ByaXZhdGUuaCwgZGxscy9kM2R4b2YvbWFpbi5jLAorCSAgZGxscy9kaW5wdXQvZGV2aWNlX3ByaXZhdGUuaCwgZGxscy9kaW5wdXQvam95c3RpY2tfbGludXhpbnB1dC5jLAorCSAgZGxscy9kbWJhbmQvZG1iYW5kX3ByaXZhdGUuaCwgZGxscy9kbWNvbXBvcy9kbWNvbXBvc19wcml2YXRlLmgsCisJICBkbGxzL2RtaW1lL2RtaW1lX3ByaXZhdGUuaCwgZGxscy9kbXNjcmlwdC9kbXNjcmlwdF9wcml2YXRlLmgsCisJICBkbGxzL2Rtc3R5bGUvZG1zdHlsZV9wcml2YXRlLmgsIGRsbHMvZG1zeW50aC9kbXN5bnRoX3ByaXZhdGUuaDoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW50ZXJsb2NrZWQgTE9ORyogZ2NjIHdhcm5pbmcgZml4ZXMuCisKKwkqIGRsbHMvd2luZWQzZC9kZXZpY2UuYywgZGxscy93aW5lZDNkL2RyYXdwcmltLmMsCisJICBkbGxzL3dpbmVkM2Qvc3VyZmFjZS5jOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlJbXBsZW1lbnQgVXBkYXRlVGV4dHVyZSBhbmQgVXBkYXRlU3VyZmFjZSBpbiB3aW5lZDNkLgorCUFsbG93IE5VTEwgbWVtYmVycyBvZiBXSU5FRDNEU1VSRkFDRV9ERVNDIHRvIGJlIHNldCB0byBTdXJmYWNlX0dldERlc2MKKwlzbyB0aGF0IHRoZSB3aG9sZSBzdHJ1Y3R1cmUgZG9lc24ndCBoYXZlIHRvIGJlIGZpbGxlZCBqdXN0IHRvIGdldCBiYWNrCisJb25lIHZhbHVlLgorCisJKiBkbGxzL3dpbnNwb29sLy5jdnNpZ25vcmUsIGRsbHMvd2luc3Bvb2wvRW4ucmMsCisJICBkbGxzL3dpbnNwb29sL01ha2VmaWxlLmluLCBkbGxzL3dpbnNwb29sL2luZm8uYywKKwkgIGRsbHMvd2luc3Bvb2wvd2luc3Bvb2wucmMsIGRsbHMvd2luc3Bvb2wvd3Nwb29sLmMsCisJICBkbGxzL3dpbnNwb29sL3dzcG9vbC5oOgorCUh1dyBEYXZpZXMgPGh1d0Bjb2Rld2VhdmVycy5jb20+CisJU2NoZWR1bGVKb2IgZm9yICdmaWxlJyBwb3J0cy4KKworCSogZGxscy9tc2kvZGlhbG9nLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEaXNwbGF5IGljb25zIGluIGJ1dHRvbnMgdGhhdCBoYXZlIHRoZW0uCisKKwkqIGRsbHMvbXNodG1sL2h0bWxkb2MuYywgZGxscy9tc2h0bWwvbXNodG1sX3ByaXZhdGUuaCwKKwkgIGRsbHMvbXNodG1sL29sZW9iai5jLCBkbGxzL21zaHRtbC9vbGV3bmQuYywgZGxscy9tc2h0bWwvcGVyc2lzdC5jLAorCSAgZGxscy9tc2h0bWwvcHJvdG9jb2wuYywgZGxscy9tc2h0bWwvc2VydmljZS5jLCBkbGxzL21zaHRtbC92aWV3LmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwktIEFkZGVkIHN0dWIgaW1wbGVtZW50YXRpb24gb2YgSU9sZUNvbW1hbmRUYXJnZXQuCisJLSBTdG9yZSBJRG9jSG9zdFVJSGFuZGxlciBpbiBIVE1MRG9jdW1lbnQuCisJLSBBY3RpdmF0ZU1lIHNob3VsZCBiZSBjYWxsZWQgZXZlbiBpZiBHZXRDb250YWluZXIgZmFpbGVkLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlEb24ndCBjYWNoZSBjaGlsZCBwaWRscyBpbiBVbml4Rm9sZGVyLCBidXQgY3JlYXRlIHRoZW0gb24gdGhlIGZseS4KKworCSogZGxscy9jcnlwdDMyL2VuY29kZS5jLCBkbGxzL2NyeXB0MzIvdGVzdHMvZW5jb2RlLmM6CisJSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCS0gZW5jb2RlL2RlY29kZSBDRVJUX0lORk8sIHdpdGggdGVzdHMKKwktIGEgZmV3IG1vcmUgdGVzdHMgYW5kIGJ1Z2ZpeGVzCisKKwkqIGRsbHMvdXh0aGVtZS9kcmF3LmM6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCUNvcnJlY3QgYm9yZGVyIHJlY3RhbmdsZSBkcmF3aW5nLgorCisJKiBkbGxzL3V4dGhlbWUvc3lzdGVtLmM6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCURvbid0IGNyYXNoIGlmIE5VTEwgaXMgcGFzc2VkIGFzIHRoZSBjbGFzcyBsaXN0IHRvIE9wZW5UaGVtZURhdGEoKS4KKworMjAwNS0wNy0xMSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9rZXJuZWwvb2xkY29uZmlnLmMsIGluY2x1ZGUvd2luZS9zZXJ2ZXJfcHJvdG9jb2wuaCwKKwkgIHNlcnZlci9wcm90b2NvbC5kZWYsIHNlcnZlci9yZWdpc3RyeS5jLCBzZXJ2ZXIvcmVxdWVzdC5oLAorCSAgc2VydmVyL3RyYWNlLmM6CisJTG9hZCB0aGUgSEtFWV9DVVJSRU5UX1VTRVIgYnJhbmNoIGF0IHNlcnZlciBzdGFydHVwIHRvby4KKworCSogZGxscy9udGRsbC9yZWcuYywgZGxscy9udGRsbC9zZWMuYzoKKwlVc2UgYW4gU0lEIGluc3RlYWQgb2YgdGhlIHVzZXIgbmFtZSBmb3IgdGhlIHBhdGggb2YgdGhlCisJSEtFWV9DVVJSRU5UX1VTRVIga2V5IChiYXNlZCBvbiBhbiBvbGQgcGF0Y2ggYnkgSnVhbiBMYW5nKS4KKworCSogZGxscy9kM2Q5L2N1YmV0ZXh0dXJlLmMsIGRsbHMvZDNkOS9zdXJmYWNlLmMsIGRsbHMvZDNkOS90ZXh0dXJlLmMsCisJICBkbGxzL3dpbmVkM2QvY3ViZXRleHR1cmUuYywgZGxscy93aW5lZDNkL2RldmljZS5jLAorCSAgZGxscy93aW5lZDNkL3N1cmZhY2UuYywgZGxscy93aW5lZDNkL3RleHR1cmUuYywKKwkgIGRsbHMvd2luZWQzZC93aW5lZDNkX3ByaXZhdGUuaCwgaW5jbHVkZS93aW5lL3dpbmVkM2RfaW50ZXJmYWNlLmgsCisJICBpbmNsdWRlL3dpbmUvd2luZWQzZF90eXBlcy5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlNb3ZlIHBhcmFtZXRlcnMgcmVsYXRpbmcgdG8gb3BlbmdsIG9uIHRoZSBzdXJmYWNlIHN0cnVjdHVyZSBvbiB0byBhCisJZ2xEZXNjaXB0aW9uIG1lbWJlci4KKwlSZW1vdmVkIExldmVsIGFuZCBUYXJnZXQgZnJvbSBMb2FkVGV4dHVyZSwgYW5kIHJlZHVjZWQgdGhlIGRlcGVuZGVuY3kKKwlvbiBzdXJmYWNlLT5kZXZpY2UuCisJRml4ZWQgYSBjb3VwbGUgb2YgY29tcGlsZXIgd2FybmluZ3MgaW4gZDNkOS4KKworCSogZGxscy9tc2kvcmVnaXN0cnkuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlQcm9wZXJseSByZXNpemUgdGhlIGJ1ZmZlciBiYXNlZCBvbiBFUlJPUl9NT1JFX0RBVEEuCisJQWxzbyByZW1lbWJlciB0byBmcmVlIHRoZSBhbGxvY2F0ZWQgYnVmZmVyLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy9tb2R1bGUuYzogUGF1bCBWcmllbnMgPHBhdWwudnJpZW5zQHhzNGFsbC5ubD4KKwlCYXNpYyB0ZXN0cyBmb3IgTG9hZExpYnJhcnlBIGFuZCBHZXRQcm9jQWRkcmVzcy4KKworCSogZGxscy9rZXJuZWwvbW9kdWxlLmM6CisJQSBOVUxMIG1vZHVsZSBoYW5kbGUgbWVhbnMgJ21haW4gZXhlJyBpbiBHZXRQcm9jQWRkcmVzcyB0b28uCisKKwkqIHNlcnZlci9ob29rLmMsIHNlcnZlci9yZXF1ZXN0LmMsIHNlcnZlci91c2VyLmgsIHNlcnZlci93aW5zdGF0aW9uLmM6CisJU3RvcmUgdGhlIGdsb2JhbCBob29rcyB0YWJsZSBpbiB0aGUgZGVza3RvcCBvYmplY3QuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbDMyLnNwZWMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX21haW4uYzoKKwlEZXRsZWYgUmlla2VuYmVyZyA8d2luZS5kZXZAd2ViLmRlPgorCVByaW50ZXJzX1JlZ2lzdGVyV2luZG93VyAvIFByaW50ZXJzX1VucmVnaXN0ZXJXaW5kb3cgaW1wbGVtZW50ZWQgYXMKKwlzdHViLgorCVNob3cgdGhlIEZJWE1FIGluIFByaW50ZXJfTG9hZEljb25zVyBvbmx5IHdoZW4gbmVlZGVkLgorCisJKiBkbGxzL2FkdnBhY2svYWR2cGFjay5jLCBkbGxzL2FkdnBhY2svYWR2cGFjay5zcGVjLCBpbmNsdWRlL2FkdnB1Yi5oOgorCVN0ZWZhbiBMZWljaHRlciA8U3RlZmFuLkxlaWNodGVyQGNhbUxpbmUuY29tPgorCUFkZGVkIHN0dWJzIGZvciBFeGVjdXRlQ2FiIGFuZCBUcmFuc2xhdGVJbmZTdHJpbmcuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9tc2kuYywgZGxscy9tc2kvdXBncmFkZS5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJVXNlIHRoZSBzdHJpbmdzIGRlZmluZWQgaW4gbXNpLmguCisKKwkqIGRsbHMvbXNpL3NvdXJjZS5jOiBBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUNvcnJlY3QgYW4gZXJyb3Igd2hlcmUgSSB3YXMgbm90IHByb3Blcmx5IGFkdmFuY2luZyBhIHBvaW50ZXIuCisKKwkqIGRsbHMvbXNodG1sL21zaHRtbC5pbmY6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJLSBSZW1vdmUgbGljZW5jZSBoZWFkZXIuCisJLSBGaXggdHlwb3MuCisKKwkqIGluY2x1ZGUvbXNpLmg6IEFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUmVtb3ZlIHNvbWUgZHVwbGljYXRlIHByb3RvdHlwZXMgYW5kIHJlZm9ybWF0IHRoZSBTb3VyY2VMaXN0IEFQSXMgYQorCWJpdCBtb3JlIHRvIGZpdCB3aXRoIHRoZSBzdHlsZSBvZiB0aGUgcmVzdCBvZiB0aGUgZmlsZS4KKworCSogaW5jbHVkZS9jb21tY3RybC5oOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlBZGRlZCBCU1RfSE9ULCBXQ19CVVRUT04uCisKKwkqIGRsbHMvZGlucHV0L3Rlc3RzL2pveXN0aWNrLmM6IEZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCU9ubHkgcHJpbnQgdGhlIGpveXN0aWNrIHN0YXRlIHdoZW4gaXQgY2hhbmdlcyBzbyB0aGUgdXNlciBkb2VzIG5vdCBnZXQKKwkzMDAgbGluZXMgb2YgdHJhY2VzLgorCisJKiBkbGxzL2dkaS9nZGkzMi5zcGVjOgorCU1ha2UgR2V0S2VybmluZ1BhaXJzIGFuIGFsaWFzIGZvciBHZXRLZXJuaW5nUGFpcnNBLgorCisJKiBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsIGRsbHMvd2luZWQzZC9kcmF3cHJpbS5jLAorCSAgZGxscy93aW5lZDNkL3N1cmZhY2UuYywgZGxscy93aW5lZDNkL3dpbmVkM2RfcHJpdmF0ZS5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlJbXBsZW1lbnRlZCBiYXNpYyBub24tcG93ZXIgMiB0ZXh0dXJlIGluIHdpbmVkM2QuCisJQWxzbyBmaXhlZCBhIHR5cG8gaW4gZHJhd3ByaW0gdGhhdCB3YXMgY2F1c2luZyB2ZXJ0ZXggZGVjbGFyYXRpb25zIHRvCisJY3Jhc2guCisKKwkqIGRsbHMvYW1zdHJlYW0vYW1zdHJlYW0uYywgZGxscy9hbXN0cmVhbS9tYWluLmMsIGRsbHMvYXRsL3JlZ2lzdHJhci5jLAorCSAgZGxscy9jb21jYXQvY29tY2F0X21haW4uYywgZGxscy9jb21jYXQvY29tY2F0X3ByaXZhdGUuaCwKKwkgIGRsbHMvY29tY2F0L2luZm9ybWF0aW9uLmMsIGRsbHMvZGV2ZW51bS9kZXZlbnVtX3ByaXZhdGUuaCwKKwkgIGRsbHMvZGV2ZW51bS9tZWRpYWNhdGVudW0uYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJSW50ZXJsb2NrZWQgTE9ORyogZ2NjIHdhcm5pbmcgZml4ZXMuCisKKwkqIGRsbHMvZGlucHV0L3Rlc3RzL2pveXN0aWNrLmMsIGRsbHMvZGlucHV0L3Rlc3RzL2tleWJvYXJkLmMsCisJICBkbGxzL2RpbnB1dC90ZXN0cy9tb3VzZS5jOgorCUZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCVJlbW92ZSB1bm5lY2Vzc2FyeSBTVFJJQ1QgZGVmaW5lcy4KKworCSogZGxscy9rZXJuZWwvZmlsZS5jOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlTVEFUVVNfVElNRU9VVCBpcyBubyBlcnJvciBmb3IgUmVhZHxXcml0ZUZpbGUuCisKKwkqIGRsbHMvbnRkbGwvZmlsZS5jOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlXYWl0IGZvciB0aGUgb2JqZWN0IG11bHRpcGxlIHRpbWVzIHVudGlsIFRJTUVPVVQgaXMgbWV0LgorCisJKiBkbGxzL3VzZXIvbGlzdGJveC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJVGhlIHVuaXRzIHBhc3NlZCBpbnRvIExCX1NFVFRBQlNUT1BTIGFyZSBkaWFsb2cgdW5pdHMsIG5vdCBsb2dpY2FsCisJdW5pdHMuCisKKwkqIGRsbHMvbXNpL3BhY2thZ2UuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJZiBNc2lHZXRQcm9wZXJ0eShBL1cpIGlzIGNhbGxlZCB3aXRoIGEgTlVMTCBmb3IgdGhlIHZhbHVlIGJ1ZmZlciBidXQKKwlhIHZhbHVlIGluIHRoZSBzaXplIGZvciB0aGUgdmFsdWUgYnVmZmVyLCB0aGVuIE1zaSBmaWxscyBpbiB0aGUgc2l6ZQorCW9mIHRoZSB2YWx1ZSBpbnRvIHRoZSBwb2ludGVyIGZvciBzaXplLiAgVGhpcyBpcyB0ZXN0ZWQgYW5kIGNvbmZpcm1lZAorCXdpdGggbmF0aXZlIE1TSS4KKworCSogZGxscy9tc3ZjcnQvbG9jYWxlLmM6IFZpamF5IEtpcmFuIEthbXVqdSA8aW5meXF1ZXN0QGdtYWlsLmNvbT4KKwlGaXggX3NldG1iY3AgYmVoYXZpb3IgZm9yIHVucmVhbCBjb2RlcGFnZXMuCisKKwkqIHNlcnZlci9xdWV1ZS5jLCBzZXJ2ZXIvdXNlci5oLCBzZXJ2ZXIvd2luZG93LmMsIHNlcnZlci93aW5zdGF0aW9uLmM6CisJVGllIHdpbmRvd3MgYW5kIHRocmVhZCBpbnB1dCBzdHJ1Y3R1cmVzIHRvIGEgc3BlY2lmaWMgZGVza3RvcC4KKwlTdXBwb3J0IG11bHRpcGxlIGRlc2t0b3Agd2luZG93cyAob25lIHBlciBkZXNrdG9wIG9iamVjdCkuCisJVXNlIHRoZSB3aW5kb3cgZGVza3RvcCB0byBmaW5kIHRoZSB3aW5kb3cgc3RhdGlvbiB0byB1c2UgZm9yIHByb3BlcnR5CisJYXRvbXMuCisKKwkqIGRsbHMvbnRkbGwvbG9hZG9yZGVyLmM6CisJQWxzbyBsb29rIGZvciB0aGUgcGxhaW4gbW9kdWxlIHNwZWNpZmljYXRpb24gaW4gV0lORURMTE9WRVJSSURFUyBmb3IKKwltb2R1bGVzIHRoYXQgY29udGFpbiBhIHBhdGgsIGZvciBiZXR0ZXIgY29uc2lzdGVuY3kgd2l0aCB0aGUgcmVnaXN0cnkKKwllbnRyaWVzLgorCisJKiBkbGxzL21zaS9maWxlcy5jLCBkbGxzL21zaS9zb3VyY2UuYywgaW5jbHVkZS9tc2kuaDoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUFkZCB0aGUgc3RyaW5nIGNvbnN0YW50cyBsb2NhdGVkIGluIG1zaS5oIGFuZCBtYWtlIHVzZSBvZiB0aGVtIGluCisJZmlsZXMuYyBhbmQgc291cmNlLmMuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCVNjaGVkdWxlSm9iIGZvciAoYXMgeWV0IHVudXNlZCkgJ2N1cHMnIHBvcnRzLgorCisJKiBkbGxzL3VzZXIvY3Vyc29yaWNvbi5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJUmVwbGFjZSBDVVJTT1JJQ09OX0NyZWF0ZUZyb21SZXNvdXJjZSBieSBDcmVhdGVJY29uRnJvbVJlc291cmNlRXguCisKKwkqIGRsbHMvZDNkOC9kM2Q4X3ByaXZhdGUuaCwgZGxscy9kM2R4OC9kM2R4OGNvcmVfcHJpdmF0ZS5oLAorCSAgZGxscy9kZHJhdy9kM2RfcHJpdmF0ZS5oLCBkbGxzL2RkcmF3L2RkcmF3X3ByaXZhdGUuaCwKKwkgIGRsbHMvZGRyYXcvbWFpbi5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbnRlcmxvY2tlZCBMT05HKiBnY2Mgd2FybmluZyBmaXhlcy4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvaGVhcC5jLCBkbGxzL250ZGxsL2hlYXAuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJLSBNYWtlIHRoZSB2YWx1ZSByZXR1cm5lZCBmcm9tIEhlYXBTaXplIGFsd2F5cyBtYXRjaCB0aGUgcmVxdWVzdGVkCisJICBzaXplIHBhc3NlZCBpbnRvIEhlYXBBbGxvY2F0ZS9IZWFwUmVBbGxvY2F0ZS4KKwktIEFkZCBhIHRlc3QgZm9yIHRoaXMgYmVoYXZpb3VyLgorCisJKiBkbGxzL2FkdmFwaTMyL2xzYS5jLCBkbGxzL2NvbWN0bDMyL3Rlc3RzL2RwYS5jLCBkbGxzL2QzZDgvZGV2aWNlLmMsCisJICBkbGxzL2QzZDkvc3RhdGVibG9jay5jLCBkbGxzL2RkcmF3L3N1cmZhY2VfZGliLmMsCisJICBkbGxzL2RtaW1lL3RlbXBvdHJhY2suYywgZGxscy9zaGVsbDMyL3NobGV4ZWMuYywKKwkgIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYywgZGxscy93aW5lZDNkL2RldmljZS5jLAorCSAgZGxscy93aW5lZDNkL2RpcmVjdHguYywgZGxscy93aW5lZDNkL2RyYXdwcmltLmMsCisJICBkbGxzL3dpbmVkM2Qvc3RhdGVibG9jay5jLCBkbGxzL3dpbmVkM2Qvc3VyZmFjZS5jLAorCSAgZGxscy93aW5lZDNkL3N3YXBjaGFpbi5jLCBkbGxzL3dpbmVkM2QvdmVydGV4ZGVjbGFyYXRpb24uYywKKwkgIHByb2dyYW1zL3dpbmVkYmcvd2luZWRiZy5tYW46CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJQXNzb3J0ZWQgc3BlbGxpbmcgZml4ZXMuCisKKwkqIHRvb2xzL3dpbmFwaS93aW4zMi5hcGk6IEZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCUFkZCBtaXNzaW5nIHR5cGVzIHRvIHdpbjMyLmFwaS4KKworCSogZGxscy9tc2h0bWwvb2xlb2JqLmMsIGRsbHMvbXNodG1sL3Rlc3RzL2h0bWxkb2MuYzoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCS0gQWRkZWQgdGVzdCBvZiBJT2xlT2JqZWN0OjpbU0ddZXRDbGllbnRTaXRlLgorCS0gRml4IElPbGVPYmplY3RfU2V0Q2xpZW50U2l0ZSB0byBwYXNzIHRlc3RzLgorCisJKiBkbGxzL3VzZXIvY3Vyc29yaWNvbi5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJUmVtb3ZlIHVudXNlZCBmdW5jdGlvbiBhcmdzLgorCisJKiBzZXJ2ZXIvYXRvbS5jLCBzZXJ2ZXIvY2xpcGJvYXJkLmMsIHNlcnZlci91c2VyLmgsCisJICBzZXJ2ZXIvd2luc3RhdGlvbi5jOgorCUV4cG9ydCB0aGUgd2luc3RhdGlvbiBhbmQgZGVza3RvcCBzdHJ1Y3R1cmVzIHRvIGF2b2lkIGhhdmluZyB0byB3cml0ZQorCXRvbyBtYW55IGFjY2Vzc29yIGZ1bmN0aW9ucy4KKworCSogZGxscy9vbGVhdXQzMi9jb25ucHQuYywgZGxscy9vbGVhdXQzMi9kaXNwYXRjaC5jLAorCSAgZGxscy9vbGVhdXQzMi9vbGVmb250LmMsIGRsbHMvb2xlYXV0MzIvb2xlcGljdHVyZS5jLAorCSAgZGxscy9vbGVhdXQzMi9yZWNpbmZvLmMsIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYywKKwkgIGRsbHMvb2xlYXV0MzIvdHlwZWxpYi5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIyLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUludGVybG9ja2VkIExPTkcqIGdjYyB3YXJuaW5nIGZpeGVzLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL0VuLnJjLCBwcm9ncmFtcy93aW5lY2ZnL0ZyLnJjLAorCSAgcHJvZ3JhbXMvd2luZWNmZy9hdWRpby5jLCBwcm9ncmFtcy93aW5lY2ZnL3Jlc291cmNlLmg6CisJUmFwaGFlbCBKdW5xdWVpcmEgPGZlbml4QGNsdWItaW50ZXJuZXQuZnI+CisJQWRkIHNvbWUgYmFzaWMgZHNvdW5kIGNvbmZpZ3VyYXRpb24gb24gQXVkaW8gcGFuZWwuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfdW5peGZzLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCURvbid0IHVzZSB1bml4IGZpbGVzeXN0ZW0gc3BlY2lmaWMgYXR0cmlidXRlcyBpbiBVbml4Rm9sZGVyJ3MgcGlkbHMuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfZnMuYywgZGxscy9zaGVsbDMyL3NoZmxkcl9teWNvbXAuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUmVsZWFzZSBwYXJlbnQgc2hlbGwgZm9sZGVyIGluIEdldEF0dHJpYnV0ZXNPZi4KKworCSogcHJvZ3JhbXMvd2NtZC9idWlsdGlucy5jOiBEZXRsZWYgUmlla2VuYmVyZyA8d2luZS5kZXZAd2ViLmRlPgorCURvIG5vdCBwcmludCBhbiBlcnJvciBtZXNzYWdlIHdoZW4gZGVsZXRpbmcgYSBub25leGlzdGVudCB2YXJpYWJsZS4KKworCSogZGxscy91cmxtb24vdW1vbi5jOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlVUkxNb25pa2VySW1wbF9CaW5kVG9TdG9yYWdlOiBEb24ndCB1c2UgYSBIZWFwQWxsb2NhdGVkIHBvaW50ZXIgZm9yCisJb3RoZXIgcHVycG9zZXMuCisKKwkqIGRsbHMvcmljaGVkMjAvZWRpdG9yLmM6IEZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUNoZWNrIHN0cnVjdHVyZSBzaXplIGFuZCBmaXggcmV0dXJuIHZhbHVlcyBpbiBFTV9HRVRDSEFSRk9STUFULgorCisyMDA1LTA3LTEwICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL3NldHVwYXBpL3F1ZXVlLmMsIGRsbHMvc2V0dXBhcGkvc2V0dXBhcGkuc3BlYzoKKwlEZXRsZWYgUmlla2VuYmVyZyA8d2luZS5kZXZAd2ViLmRlPgorCVNldHVwU2V0RmlsZVF1ZXVlQWx0ZXJuYXRlUGxhdGZvcm17QVd9IGltcGxlbWVudGVkIGFzIHN0dWIuCisKKwkqIGRsbHMvd2luZWQzZC9kZXZpY2UuYzogT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCUNoZWNrIHRvIHNlZSBpZiB0aGUgdmVydGV4IGRlY2xhcmF0aW9uIGlzIG51bGwgYmVmb3JlIHRyeWluZyB0bworCXJlZmVyZW5jZSBpdC4KKworCSogZGxscy9rZXJuZWwva2VybmVsMzIuc3BlYzoKKwlUaGUgb3JkaW5hbCBmdW5jdGlvbnMgc2hvdWxkIG5vdCBiZSBleHBvcnRlZCBieSBuYW1lLgorCisJKiBkbGxzL2QzZDgvc2hhZGVyLmM6IE1hcmN1cyBNZWlzc25lciA8bWFyY3VzQGpldC5mcmFua2VuLmRlPgorCUZpeGVkIHNpZ25lZG5lc3MgaXNzdWVzLgorCisJKiBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLCBpbmNsdWRlL3dpbmUvd2luZWQzZF9nbC5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlUaWR5IHVwIHRoZSB3YXkgY2FwcyBhcmUgbWFuYWdlZCBpbiBHZXREZXZpY2VDYXBzIGFuZCBGaWxsR2xDYXBzLgorCisJKiBkbGxzL3VybG1vbi91bW9uLmM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCVVSTE1vbmlrZXJJbXBsX0JpbmRUb1N0b3JhZ2U6IEVzY2FwZSBzcGVjaWFsIGNoYXJhY3RlcnMuCisKKwkqIGRsbHMvY2FiaW5ldC9mY2kuYzoKKwlHZXJvbGQgSmVucyBXdWNoZXJwZmVubmlnIDxnand1Y2hlcnBmZW5uaWdAZ214Lm5ldD4KKwlUaGUgZmNpX2dldF9saXR0bGVfZW5kaWFuLi4uIGFuZCBmY2lfc2V0X2xpdHRsZV9lbmRpYW4uLi4gZnVuY3Rpb25zCisJZG9uJ3QgcmVhbGx5IHNldCBhbmQgdW5zZXQgbGl0dGxlIGVuZGlhbmVzLCB0aGV5IGRvIHRoZSBzYW1lIHRoaW5nOgorCW1lcmVseSBzd2FwcGluZyBieXRlcyBmcm9tIG9uZSBlbmRpYW5lcyB0byB0aGUgb3RoZXIuCisKKwkqIGRsbHMvbXN2Y3J0L2ZpbGUuYzogRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJQWxsb3cgcmVhZGluZyAwIGJ5dGVzIGluIGZyZWFkLgorCisJKiBsaWJzL3dpbmUvbG9hZGVyLmMsIHRvb2xzL3dpbmVidWlsZC9yZXMxNi5jLCB0b29scy93aW5lYnVpbGQvcmVzMzIuYywKKwkgIHRvb2xzL3dyYy9kdW1wcmVzLmMsIHRvb2xzL3dyYy9nZW5yZXMuYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlGaXhlZCBzaWduZWRuZXNzIHdhcm5pbmdzLgorCisJKiBkbGxzL3VzZXIvYnV0dG9uLmM6IEZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUZpeCBhIHR5cG8uCisKKwkqIGRsbHMvbnRkbGwvZW52LmM6IERldGxlZiBSaWVrZW5iZXJnIDx3aW5lLmRldkB3ZWIuZGU+CisJRml4ZWQgdHJhY2VzLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL0VuLnJjOiBCcmlhbiBWaW5jZW50IDx2aW5uQHRoZXNoZWxsLmNvbT4KKwlEZXNjcmliZSB0YWJzIGJlaW5nIGxpbmtlZCB0b2dldGhlci4KKworCSogaW5jbHVkZS93aW50ZXJubC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRGVmaW5lIHRoZSByZW1haW5pbmcgTnQqIGZ1bmN0aW9ucy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvbnRkbGwvY2Ryb20uYywgaW5jbHVkZS9jb25maWcuaC5pbjoKKwlHZXJhbGQgUGZlaWZlciA8Z2VyYWxkQHBmZWlmZXIuY29tPgorCUFkZCBhIGNvbmZpZ3VyZSBjaGVjayBmb3Igc3RydWN0IHJlcXVlc3Rfc2Vuc2UuICBVc2UgdGhpcyBpbgorCUNEUk9NX1Njc2lQYXNzVGhyb3VnaERpcigpIGFuZCBDRFJPTV9TY3NpUGFzc1Rocm91Z2goKSB0byB1bmJyZWFrIHRoZQorCWJ1aWxkIG9uIEZyZWVCU0QuCisKKwkqIGRsbHMvc2V0dXBhcGkvZGlza3NwYWNlLmM6CisJVGhvbWFzIFdlaWRlbm11ZWxsZXIgPHdpbmUtcGF0Y2hlc0ByZWFjdHNvZnQuY29tPgorCUZpeGVkIGVudW1lcmF0aW5nIHRoZSBkcml2ZSBzdHJpbmdzLgorCisJKiBkbGxzL21zaS9pbnN0YWxsLmMsIGRsbHMvbXNpL21zaS5zcGVjOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50IE1zaUdldExhbmd1YWdlLgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlTY2hlZHVsZUpvYiBmb3IgJ2xwcicgcG9ydHMuCisKKzIwMDUtMDctMDggIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHNlcnZlci9hdG9tLmMsIHNlcnZlci9jbGFzcy5jLCBzZXJ2ZXIvb2JqZWN0LmgsIHNlcnZlci93aW5kb3cuYzoKKwlFeHBsaWNpdGx5IHBhc3MgdGhlIHdpbnN0YXRpb24gdG8gdGhlIGF0b20gZnVuY3Rpb25zIHNvIHRoYXQgdGhleSBjYW4KKwliZSB1c2VkIGV2ZW4gd2hlbiBjdXJyZW50IGlzIG5vdCBzZXQuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCB7U3RhcnQsRW5kfURvY1ByaW50ZXIgYW5kIFdyaXRlUHJpbnRlci4KKwl7U3RhcnQsRW5kfVBhZ2VQcmludGVyIGFyZSBzdGlsbCBzdHVicyBidXQgcmV0dXJuIFRSVUUuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jLCBkbGxzL21zaS9wYWNrYWdlLmM6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbnN0YWxsU2hpZWxkIGRvZXMgYSBudW1iZXIgb2YgYWN0aW9ucyB1c2luZyBEb0FjdGlvbiBiZWZvcmUgdGhlCisJSW5zdGFsbCBzdGFydHMgc28gdGhlIFBhY2thZ2VDb2RlIG5lZWRzIHRvIGJlIGxvYWRlZCBvbiBPcGVuUGFja2FnZQorCWluc3RlYWQgb2YgdGhlIGJlZ2lubmluZyBvZiB0aGUgaW5zdGFsbCBwcm9jZXNzLgorCisJKiBkbGxzL3NoZWxsMzIvcGlkbC5jOiBNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJRmFpbCBpbiBTSEdldERhdGFGcm9tSURMaXN0IHdoZW4gY2FsbGVkIG9uIHNwZWNpYWwgZm9sZGVyLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlQYXJ0aWFsbHkgaW1wbGVtZW50ZWQgVW5peEZvbGRlcidzIElTRkhlbHBlcjo6Q29weUl0ZW1zIG1ldGhvZC4KKworCSogZGxscy91c2VyL3VzZXJfbWFpbi5jLCBkbGxzL3VzZXIvdXNlcl9wcml2YXRlLmgsIGRsbHMvdXNlci93aW4uYywKKwkgIGRsbHMvdXNlci93aW5zdGF0aW9uLmMsIGluY2x1ZGUvd2luLmgsCisJICBpbmNsdWRlL3dpbmUvc2VydmVyX3Byb3RvY29sLmgsIHNlcnZlci9wcm90b2NvbC5kZWYsCisJICBzZXJ2ZXIvcmVxdWVzdC5oLCBzZXJ2ZXIvdHJhY2UuYywgc2VydmVyL3VzZXIuaCwgc2VydmVyL3dpbmRvdy5jOgorCVB1dCBpbiBwbGFjZSB0aGUgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgdG8gYWxsb3cgc3VwcG9ydGluZyBtdWx0aXBsZQorCWRlc2t0b3Agd2luZG93cy4KKworCSogZGxscy91c2VyL2RkZV9jbGllbnQuYywgZGxscy91c2VyL2RkZV9taXNjLmMsCisJICBkbGxzL3VzZXIvZGRlX3ByaXZhdGUuaCwgZGxscy91c2VyL2RkZV9zZXJ2ZXIuYywgZGxscy91c2VyL2RkZW1sMTYuYywKKwkgIGRsbHMvdXNlci90ZXN0cy9kZGUuYzoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUFkZCBEREUgdHJhbnNhY3Rpb24gdGVzdCwgbWFrZSBpdCBwYXNzIHVuZGVyIFdpbmUuCisKKwkqIGRsbHMvY29tbWRsZy9jZGxnX0RlLnJjLCBwcm9ncmFtcy9jbWRsZ3RzdC9EZS5yYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvRGUucmM6CisJSGVubmluZyBHZXJoYXJkdCA8aGVubmluZy5nZXJoYXJkdEB3ZWIuZGU+CisJVXBkYXRlIEdlcm1hbiByZXNvdXJjZSBmaWxlcy4KKworCSogZGxscy9zZXR1cGFwaS9QbC5yYywgZGxscy9zZXR1cGFwaS9zZXR1cGFwaS5yYzoKKwlTZWJhc3RpYW4gR2FzaW9yZWsgPHplYmFzb2Z0aXNAZ21haWwuY29tPgorCUFkZGVkIFBvbGlzaCByZXNvdXJjZXMuCisKKwkqIGluY2x1ZGUvbXN2Y3J0L21iY3R5cGUuaDogVmlqYXkgS2lyYW4gS2FtdWp1IDxpbmZ5cXVlc3RAZ21haWwuY29tPgorCUFkZCBfTUJfQ1BfKiBkZWZpbmVzLgorCisJKiBkbGxzL3BzYXBpL3BzYXBpX21haW4uYywgZGxscy9wc2FwaS90ZXN0cy9wc2FwaV9tYWluLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJTWFrZSBHZXRQcm9jZXNzTWVtb3J5SW5mbyBmYWlsIGlmIHRoZSBwYXNzZWQgYnVmZmVyIGlzIHRvbyBzbWFsbC4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQWRkIGEgZmV3IG1vcmUgbWlzc2luZyBkZWZpbmVzLgorCisJKiBkbGxzL3VzZXIvc3lzcGFyYW1zLmM6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCUFsd2F5cyB6ZXJvIGRlc3RpbmF0aW9uIGJ1ZmZlciBpbiBTWVNQQVJBTVNfTG9hZFJhdygpLiBSZW1vdmUKKwlub3ctc3VwZXJmbHVvdXMgbWVtb3J5IHplcm9pbmcgaW4gc29tZSBvdGhlciBwbGFjZXMuCisKKwkqIGRsbHMvY29tY3RsMzIvZHBhLmMsIGRsbHMvY29tY3RsMzIvdGVzdHMvZHBhLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJRml4IHNvbWUgRFBBIGZ1bmN0aW9ucyBzbyB0aGV5IHBhc3MgdGhlIG5ldyB0ZXN0cy4KKworCSogZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYywgZGxscy9zaGVsbDMyL3Rlc3RzL3NobGZvbGRlci5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlSZXR1cm4gY29ycmVjdCBIUkVTVUxUIGNvZGUgaW4gVW5peEZvbGRlcidzIElFbnVtSURMaXN0OjpOZXh0LgorCUNvcnJlc3BvbmRpbmcgdGVzdC4KKworCSogZGxscy9tc2kvbXNpLmM6IFJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbiBNc2lMb2NhdGVDb21wb25lbnQgcGNjaEJ1ZiBjYW4gYmUgTlVMTCBzbyBkb24ndCB0cnkgdG8gZGVyZWZlcmVuY2UKKwlpdC4KKworCSogaW5jbHVkZS90ZXh0c2Vydi5oOiBNYWFydGVuIExhbmtob3JzdCA8bS5iLmxhbmtob3JzdEBnbWFpbC5jb20+CisJSVRleHRTZXJ2aWNlc19PblR4SW5wbGFjZURlYWN0aXZhdGUgZG9lcyBub3QgdGFrZSBhIHBhcmFtZXRlci4KKworCSogZGxscy9kM2Q5L2QzZDlfcHJpdmF0ZS5oLCBkbGxzL2QzZDkvcGl4ZWxzaGFkZXIuYzoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZWxheSBhbGwgdGhlIHBpeGVsIHNoYWRlciBjYWxscyBmcm9tIGQzZDkgdG8gd2luZWQzZC4KKworMjAwNS0wNy0wNyAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9kM2Q5L3ZlcnRleGRlY2xhcmF0aW9uLmMsIGRsbHMvd2luZWQzZC9kZXZpY2UuYywKKwkgIGRsbHMvd2luZWQzZC9kcmF3cHJpbS5jLCBkbGxzL3dpbmVkM2QvdmVydGV4ZGVjbGFyYXRpb24uYywKKwkgIGluY2x1ZGUvd2luZS93aW5lZDNkX2ludGVyZmFjZS5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIHN1cHBvcnQgZm9yIHZlcnRleCBkZWNsYXJhdGlvbnMgdG8gd2luZWQzZCwgaXQncyB0aGUgbGFzdCBwYXRjaAorCXRvIGdpdmUgd2luZWQzZCBiYXNpYyBmdW5jdGlvbmFsaXR5LgorCisJKiBkbGxzL2QzZDkvZGV2aWNlLmMsIGRsbHMvd2luZWQzZC9kZXZpY2UuYywgZGxscy93aW5lZDNkL2RpcmVjdHguYywKKwkgIGRsbHMvd2luZWQzZC9zdXJmYWNlLmMsIGRsbHMvd2luZWQzZC91dGlscy5jLAorCSAgZGxscy93aW5lZDNkL3dpbmVkM2RfcHJpdmF0ZS5oOgorCU9saXZlciBTdGllYmVyIDxvbGl2ZXJAY29kZXdlYXZlcnMuY29tPgorCUltcGxlbWVudCByZW5kZXIgdGFyZ2V0cyB1c2luZyBlaXRoZXIgdGV4dHVyZXMsIHN3YXBjaGFpbnMgb3IKKwlzdGFuZGFsb25lIHN1cmZhY2VzLgorCisJKiBkbGxzL3R0eWRydi93aW5ldHR5LmRydi5zcGVjLCBkbGxzL3R0eWRydi93bmQuYywKKwkgIGRsbHMvdXNlci91c2VyX21haW4uYywgZGxscy91c2VyL3VzZXJfcHJpdmF0ZS5oLCBkbGxzL3VzZXIvd2luLmMsCisJICBkbGxzL3gxMWRydi93aW5kb3cuYywgZGxscy94MTFkcnYvd2luZXgxMS5kcnYuc3BlYywKKwkgIGRsbHMveDExZHJ2L3dpbnBvcy5jOgorCU1vdmVkIGluaXRpYWxpemF0aW9uIG9mIHRoZSBkZXNrdG9wIHdpbmRvdyBpbiB0aGUgZ3JhcGhpY3MgZHJpdmVyIHRvIGEKKwlzZXBhcmF0ZSBDcmVhdGVEZXNrdG9wV2luZG93IGVudHJ5IHBvaW50IGluc3RlYWQgb2Ygb3ZlcmxvYWRpbmcKKwlDcmVhdGVXaW5kb3cuCisKKwkqIGRsbHMvdXNlci9tZW51LmM6CisJUmVtb3ZlZCBjcmVhdGlvbiBvZiB0aGUgbm8gbG9uZ2VyIHVzZWQgc2hhZGluZyBicnVzaC4KKworCSogZGxscy9jcnlwdDMyL2NlcnQuYywgZGxscy9jcnlwdDMyL2NyeXB0MzIuc3BlYywKKwkgIGRsbHMvY3J5cHQzMi90ZXN0cy9tYWluLmM6CisJSnVhbiBMYW5nIDxqdWFuX2xhbmdAeWFob28uY29tPgorCUltcGxlbWVudCBhIGZldyB1dGlsaXR5IGZ1bmN0aW9ucywgd2l0aCB0ZXN0cy4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJQ29ycmVjdCBhIHR5cG8uCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmM6IE1hcnRpbiBGdWNocyA8bWFydGluLWZ1Y2hzQGdteC5uZXQ+CisJLSBtb3ZlIElEX0FCT1VUX1dJTkUgaW50byAjaWZkZWYgX19XSU5FX18KKwktIHN1cHBvcnQgZm9yIHJlZnJlc2ggaW4gc2hlbGwgbmFtZXNwYWNlIHdpbmRvd3MKKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2hlbHBlcnMuYzoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCUZpbGwgYW5kIHVzZSB0aGUgUHJvZHVjdENvZGUgcGFydCBvZiB0aGUgTVNJUEFDS0FHRSBzdHJ1Y3R1cmUuCisKKwkqIGRsbHMvbmV0YXBpMzIvYWNjZXNzLmMsIGRsbHMvbmV0YXBpMzIvbmV0YXBpMzIuc3BlYzoKKwlEZXRsZWYgUmlla2VuYmVyZyA8d2luZS5kZXZAd2ViLmRlPgorCU5ldFVzZXJBZGQgKyBOZXRVc2VyRGVsIGltcGxlbWVudGVkIGFzIHN0dWIuCisJTWFkZSBzb21lIEZJWE1FIG1vcmUgaW5mb3JtYXRpdmUuCisJTWFya2VkIHNvbWUgRklYTUUgYXMgc3R1Yi4KKwlBZGRlZCBjb21tZW50cyBiZWZvcmUgc29tZSBmdW5jdGlvbnMuCisKKwkqIGRsbHMvbnRkbGwvbG9hZG9yZGVyLmM6CisJVXNlIHRoZSBzYW1lIGRlZmF1bHRzIGZvciBtb2R1bGVzIHdpdGggYW5kIHdpdGhvdXQgYW4gZXhwbGljaXQgcGF0aC4KKworCSogZGxscy91c2VyL3N5c3BhcmFtcy5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlBZGQgc3VwcG9ydCBmb3IgcHJvcGVyIHNhdmluZyBvZiB0aGUgIkZMQVRNRU5VIiBhbmQgIkdSQURJRU5UQ0FQSU9OIgorCXN5c3RlbSBwYXJhbWV0ZXJzIHRvIHRoZSByZWdpc3RyeS4KKworCSogZGxscy91c2VyL3VpdG9vbHMuYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJV2luZSBoYXMgbm93IGEgTWFybGV0dCBmb250LCBoZW5jZSB0aGUgd2luZG93IGJ1dHRvbnMgY2FuIG5vdyBiZSBkcmF3bgorCXVzaW5nIHRoYXQgYW5kIG5vdCBzb21lIHBvbHlsaW5lcy4KKworCSogZm9udHMvd2luZV9tYXJsZXR0LnNmZDogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJQWRkZWQgYSByZWFsICJ3aW5kb3cgcmVzdG9yZSIgZ2x5cGggdG8gV2luZSBNYXJsZXR0LgorCisJKiBkbGxzL2NvbW1kbGcvY2RsZ19Fbi5yYywgZGxscy9jb21tZGxnL2NkbGdfUnUucmMsCisJICBkbGxzL2NvbW1kbGcvcHJpbnRkbGcuYzoKKwlFdWdlbnkgR29yZWxvdiA8dGZ0QGV0ZXJzb2Z0LnJ1PgorCUltcGxlbWVudCBtb3N0IGZ1bmN0aW9uYWxpdHkgb2YgUGFnZVNldHVwRGxnIGZ1bmN0aW9uLgorCisJKiBwcm9ncmFtcy9jbWRsZ3RzdC9Fbi5yYywgcHJvZ3JhbXMvY21kbGd0c3QvUnUucmMsCisJICBwcm9ncmFtcy9jbWRsZ3RzdC9jbWRsZ3RzdC5jLCBwcm9ncmFtcy9jbWRsZ3RzdC9jbWRsZ3RzdC5oOgorCUV1Z2VueSBHb3JlbG92IDx0ZnRAZXRlcnNvZnQucnU+CisJQWRkZWQgUGFnZVNldHVwRGxnIHRlc3QuCisKKwkqIGRsbHMveDExZHJ2L3dpbmRvdy5jLCBkbGxzL3gxMWRydi94MTFkcnZfbWFpbi5jOgorCU1vdmVkIG1vc3QgaW5pdGlhbGl6YXRpb25zIG91dCBvZiB0aGUgY3JlYXRlX2Rlc2t0b3AgZnVuY3Rpb24gYW5kIGludG8KKwlwcm9jZXNzX2F0dGFjaC4KKworCSogZGxscy91c2VyL3dpbi5jLCBkbGxzL3VzZXIvd2lucG9zLmMsIGluY2x1ZGUvd2lucG9zLmg6CisJRGVsYXkgY3JlYXRpb24gb2YgdGhlIGludGVybmFsIHBvcyBhdG9tIHVudGlsIG5lZWRlZC4KKworCSogZGxscy9tc2Ntcy90ZXN0cy9NYWtlZmlsZS5pbiwgZGxscy9tc2Ntcy90ZXN0cy9wcm9maWxlLmM6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJRHluYW1pY2FsbHkgbG9hZCBtc2Ntcy4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9EZS5yYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBmb3IgY2hhbmdlcyB0byB0aGUgRExMIG92ZXJyaWRlcyBVSS4KKworCSogaW5jbHVkZS9jb21tZGxnLmg6IEV1Z2VueSBHb3JlbG92IDx0ZnRAZXRlcnNvZnQucnU+CisJQWRkZWQgUFNEX05PTkVUV09SS0JVVFRPTiBkZWZpbmUuCisKKwkqIGRsbHMvb2xlMzIvbWVtbG9ja2J5dGVzLmMsIGRsbHMvb2xlMzIvc3RvcmFnZTMyLmM6CisJVml0YWx5IExpcGF0b3YgPGxhdkBldGVyc29mdC5ydT4KKwlBZGRlZCBzb21lIGRvY3VtZW50YXRpb24uCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJVXNlIExvYWRJbWFnZSB0byBsb2FkIGJpdG1hcHMgYW5kIGljb25zLgorCisJKiBkbGxzL3VzZXIvdGVzdHMvbXNnLmM6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQWRkIGEgTXNnV2FpdEZvck11bHRpcGxlT2JqZWN0cyB0ZXN0LgorCisJKiBkbGxzL2FkdmFwaTMyL3JlZ2lzdHJ5LmMsIGRsbHMvYWR2YXBpMzIvdGVzdHMvY3J5cHQuYywKKwkgIGRsbHMvZGV2ZW51bS9tZWRpYWNhdGVudW0uYywgZGxscy9kbXVzaWMvZG11c2ljLmMsCisJICBkbGxzL2RwbGF5eC9kcGxheS5jLCBkbGxzL2RwbGF5eC9kcGxvYmJ5LmMsCisJICBkbGxzL2Rzb3VuZC9kc291bmRfbWFpbi5jLCBkbGxzL2lwaGxwYXBpL2lwaGxwYXBpX21haW4uYywKKwkgIGRsbHMvbXByL3B3Y2FjaGUuYywgZGxscy9uZXRhcGkzMi9uYnQuYywgZGxscy9vbGVkbGcvaW5zb2JqZGxnLmMsCisJICBkbGxzL3Bvd3Jwcm9mL3Bvd3Jwcm9mLmMsIGRsbHMvc2V0dXBhcGkvdmlydGNvcHkuYywKKwkgIGRsbHMvc2hsd2FwaS9yZWcuYywgZGxscy90YXBpMzIvbGluZS5jLCBkbGxzL3V4dGhlbWUvc3lzdGVtLmMsCisJICBkbGxzL3dpbmluZXQvdXJsY2FjaGUuYywgZGxscy93aW5tbS93aW5lYWxzYS9hdWRpby5jLAorCSAgcHJvZ3JhbXMvcmVnZWRpdC9lZGl0LmMsIHByb2dyYW1zL3dpbmVicm93c2VyL21haW4uYywKKwkgIHByb2dyYW1zL3dpbmVkYmcvd2luZWRiZy5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlnY2MgNC4wIC1XcG9pbnRlci1zaWduIGZpeGVzIChSZWcqIGZ1bmN0aW9ucykuCisKKwkqIHNlcnZlci9tYXBwaW5nLmM6IENvbnZlcnQgdGhlIHNoYXJlZCBtYXBwaW5nIGxpc3QgdG8gYSBzdGFuZGFyZCBsaXN0LgorCisJKiBkbGxzL2RiZ2hlbHAvZWxmX21vZHVsZS5jOgorCVdlIG5vIGxvbmdlciBoYXZlIHRodW5rcyBpbiB0aGUgZGF0YSBzZWN0aW9uLgorCisJKiBkbGxzL3VzZXIvd2luLmMsIGluY2x1ZGUvd2luZS9zZXJ2ZXJfcHJvdG9jb2wuaCwgc2VydmVyL3Byb3RvY29sLmRlZiwKKwkgIHNlcnZlci90cmFjZS5jLCBzZXJ2ZXIvd2luZG93LmM6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIElzV2luZG93VW5pY29kZSB3b3JrIGluIHRoZSBjYXNlIHdoZW4gd2luZG93IGJlbG9uZ3MgdG8gYW5vdGhlcgorCXByb2Nlc3MuCisKKwkqIHByb2dyYW1zL3dpbmVmaWxlL01ha2VmaWxlLmluLCBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5jLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvd2luZWZpbGUuaDoKKwlNYXJ0aW4gRnVjaHMgPG1hcnRpbi1mdWNoc0BnbXgubmV0PgorCS0gcmVtb3ZlIDx0Y2hhci5oPiBhbmQgPHdjaGFyLmg+IGhlYWRlciB1c2FnZSBieSBzd2l0Y2hpbmcgdG8gV0lOMzIKKwkgIEFQSSBzdHJpbmcgbWFuaXB1bGF0aW9uIGZ1bmN0aW9ucyBhcyBmYXIgYXMgcG9zc2libGUKKwktIHN3aXRjaCB0byBVTklDT0RFIGNvbXBpbGF0b24KKwktIHJlbW92ZSBsYXVuY2hfZmlsZUEoKSBhbmQgdGNzY3B5bgorCS0gZG9uJ3QgY3Jhc2ggaW4gc2V0X2N1cmRpcigpIGZvciBOVUxMIGluIHRoZSAnZW50cnknIHBvaW50ZXIKKworCSogcHJvZ3JhbXMvd2luZWNmZy9ObC5yYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlVcGRhdGUgdGhlIER1dGNoIHRyYW5zbGF0aW9ucy4KKworCSogc2VydmVyL2F0b20uYywgc2VydmVyL29iamVjdC5oLCBzZXJ2ZXIvcmVxdWVzdC5jLCBzZXJ2ZXIvdXNlci5oLAorCSAgc2VydmVyL3dpbnN0YXRpb24uYzoKKwlTdG9yZSB0aGUgZ2xvYmFsIGF0b20gdGFibGUgaW4gdGhlIHByb2Nlc3Mgd2luZG93IHN0YXRpb24uCisKKwkqIGluY2x1ZGUvd2ludGVybmwuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUFkZCBtb3JlIE50KiBmdW5jdGlvbnMuCisKKwkqIGRsbHMvdXNlci9jb21iby5jOiBGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlVcGRhdGUgVE9ETyBsaXN0LgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmMsIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJRW5jb2RlL2RlY29kZSBDRVJUX1BVQkxJQ19LRVlfSU5GTywgd2l0aCB0ZXN0cy4KKworCSogZGxscy9jb21jdGwzMi90ZXN0cy9kcGEuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlBZGQgYW5vdGhlciBmYWlsaW5nIERQQSB0ZXN0LgorCisyMDA1LTA3LTA2ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL3dpbmFzcGkvYXNwaS5jOiBHZXJhbGQgUGZlaWZlciA8Z2VyYWxkQHBmZWlmZXIuY29tPgorCVNDU0lfTGludXhfQ2hlY2tEZXZpY2VzKCkgaXMgTGludXgtb25seSBhcyB3ZWxsLgorCisJKiBkbGxzL21zY21zL21zY21zX21haW4uYzogSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJRmFpbCBsb2FkaW5nIHdoZW4gY29tcGlsZWQgd2l0aG91dCBsY21zIHN1cHBvcnQuCisKKwkqIGRsbHMvYWR2YXBpMzIvY3J5cHQuYywgZGxscy9hZHZhcGkzMi9zZXJ2aWNlLmMsCisJICBkbGxzL2FkdmFwaTMyL3Rlc3RzL3JlZ2lzdHJ5LmMsIGRsbHMvZDNkOC9kM2Q4X21haW4uYywKKwkgIGRsbHMvbXN2aWRlby9tc3ZpZGVvMTYuYywgZGxscy9vbGVhdXQzMi90bWFyc2hhbC5jLAorCSAgZGxscy9vbGVhdXQzMi90eXBlbGliMTYuYywgZGxscy9vcGVuZ2wzMi93Z2wuYywKKwkgIGRsbHMvc2V0dXBhcGkvc2V0dXB4X21haW4uYywgZGxscy9zaGVsbDMyL2NsYXNzZXMuYywKKwkgIGRsbHMvc2hlbGwzMi9kaWFsb2dzLmMsIGRsbHMvdXNlci90ZXN0cy9zeXNwYXJhbXMuYywKKwkgIGRsbHMvd2luYXNwaS9hc3BpLmMsIGRsbHMvd2luYXNwaS93aW5hc3BpMTYuYywgZGxscy93aW5lcHMvaW5pdC5jLAorCSAgZGxscy94MTFkcnYveDExZHJ2X21haW4uYywgZGxscy94MTFkcnYveGZvbnQuYywKKwkgIHByb2dyYW1zL3dpbmVjb25zb2xlL3JlZ2lzdHJ5LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCWdjYyA0LjAgLVdwb2ludGVyLXNpZ24gZml4ZXMgKFJlZyogZnVuY3Rpb25zKS4KKworCSogcHJvZ3JhbXMvd2luZWNmZy9Fbi5yYywgcHJvZ3JhbXMvd2luZWNmZy9saWJyYXJpZXMuYywKKwkgIHByb2dyYW1zL3dpbmVjZmcvcmVzb3VyY2UuaDoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlDaGFuZ2VkIGxheW91dCBvZiBsaWJyYXJpZXMgdGFiLCBtb3ZlZCBsb2FkLW9yZGVyIHNldHRpbmcgaW50byBleHRyYQorCWRpYWxvZy4KKworCSogZGxscy9jb21jdGwzMi9wcm9wc2hlZXQuYzoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlEb24ndCBpbnZhbGlkYXRlIHRoZSB3aG9sZSBwcm9wc2hlZXQgd2hlbiB0aGUgcGFnZSBpcyBzd2l0Y2hlZC4KKworCSogZGxscy91c2VyL21lbnUuYzogUmVpbiBLbGF6ZXMgPHdpam5Ad2FuYWRvby5ubD4KKwktIHdoZW4gc2VuZGluZyB0aGUgV01fRFJBV0lURU0gbWVzc2FnZSBpbiBjYXNlIG9mIGEgbWVudSBpdGVtIHdpdGgKKwkgIGhibXBJdGVtID0gSEJNTUVOVV9DQUxMQkFDSywgbW92ZSB0aGUgZHJhd2luZyBvcmlnaW4gdG8gdGhlIHRvcCBsZWZ0CisJICBvZiB0aGUgaXRlbSByZWN0YW5nbGUKKwktIGF0IHRoZSBzYW1lIHRpbWUgYWxzbyBtYWtlIHN1cmUgdGhhdCB0aGUgaXRlbVN0YXRlIGZpZWxkIG9mIHRoZQorCSBEUkFXSVRFTVNUUlVDVCBpcyBwcm9wZXJseSBpbml0aWFsaXplZAorCS0gZG8gdGhlIGRyYXdpbmcgb2YgdGhlIGNoZWNrIG1hcmsgYmVmb3JlIHNlbmRpbmcgdGhlIFdNX0RSQVdJVEVNCisJICBtZXNzYWdlLCBzb21lIGFwcGxpY2F0aW9uIGxpa2VzIHRvICJvdmVyZHJhdyIgdGhlIGNoZWNrbWFyay4KKworCSogZGxscy93aW5lZDNkL2RyYXdwcmltLmM6IE9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlDaGFuZ2UgYWxsIHJlZmVyZW5jZXMgdG8gdXBkYXRlU3RhdGVCbG9jayB0byByZWZlcmVuY2VzIHRvIHN0YXRlQmxvY2sKKwlpbiBkcmF3cHJpbS4KKworCSogZGxscy9yaWNoZWQyMC9wYWludC5jLCBkbGxzL3JpY2hlZDIwL3dyYXAuYywgZGxscy90d2Fpbi9jYXBhYmlsaXR5LmMsCisJICBkbGxzL3gxMWRydi94Zm9udC5jLCBkbGxzL3gxMWRydi94cmFuZHIuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCU1ha2UgZnVuY3Rpb25zIHN0YXRpYyB0byBmaXggLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyB3YXJuaW5ncy4KKworCSogZGxscy91c2VyL3BhaW50aW5nLmMsIGRsbHMvdXNlci90ZXN0cy9kY2UuYzoKKwlSZXN0b3JlIHRoZSBjbGlwIHJlZ2lvbiBhZnRlciBHZXREQ0V4IGluIHNlbmRfZXJhc2UgYXMgaWYgaXQgaGFkIGJlZW4KKwlhIEJlZ2luUGFpbnQuCisKKwkqIHByb2dyYW1zL3dpbmVtZW51YnVpbGRlci93aW5lbWVudWJ1aWxkZXIuYzoKKwlNb3ZlZCB0aGUgY29uZmlndXJhdGlvbiBrZXkgdG8gSEtDVVxTb2Z0d2FyZVxXaW5lXFdpbmVNZW51QnVpbGRlci4KKworCSogZGxscy9jb21jdGwzMi90ZXN0cy90cmVldmlldy5jLCBkbGxzL2RpbnB1dC90ZXN0cy9qb3lzdGljay5jLAorCSAgZGxscy9udGRsbC90ZXN0cy9pbmZvLmMsIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydGVzdC5jLAorCSAgZGxscy9wc2FwaS90ZXN0cy9wc2FwaV9tYWluLmMsIGRsbHMvdXNlci90ZXN0cy9tZW51LmMsCisJICBkbGxzL3VzZXIvdGVzdHMvd2luLmM6CisJRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJQWRkIHRyYWlsaW5nICdcbidzIHRvIG9rKCkgY2FsbHMuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJU3RvcCB0aGUgaW5zdGFsbCB3aGVuIGNhbmNlbGxpbmcgZnJvbSBhIG1vZGVsZXNzIGRpYWxvZy4KKworCSogaW5jbHVkZS93aW50ZXJubC5oOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJQWRkIG1vcmUgTnQqIGZ1bmN0aW9ucy4KKworCSogZGxscy93aW5zcG9vbC9NYWtlZmlsZS5pbiwgZGxscy93aW5zcG9vbC9pbmZvLmM6CisJSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgYW4gaW1wbGVtZW50YXRpb24gb2YgQWRkSm9iIGFuZCBhIHBhcnRpYWwgb25lIG9mIFNjaGVkdWxlSm9iLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlJbXBsZW1lbnRlZCBVbml4Rm9sZGVyJ3MgSVNGSGVscGVyOjpEZWxldGVJdGVtcyBpbnRlcmZhY2UuCisKKwkqIGluY2x1ZGUvd2ludXNlci5oOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlBZGQgbWlzc2luZyBEQ19HUkFESUVOVCBhbmQgRENfQlVUVE9OUywgYXMgdXNlZCBieSBEcmF3Q2FwdGlvbi4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYywgZGxscy9yaWNoZWQyMC9lZGl0b3IuaCwgZGxscy9yaWNoZWQyMC9yb3cuYzoKKwlQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUZpeGVkIEVNX0xJTkVJTkRFWCBoYW5kbGVyIGFuZCBhZGRlZCBFTV9MSU5FRlJPTUNIQVIgaGFuZGxlci4KKworCSogZGxscy9tc2kvZXZlbnRzLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlEb24ndCBjcmFzaCB3aGVuIGNhbmNlbGxpbmcgb3V0IG9mIGEgbW9kZWxlc3MgZGlhbG9nLgorCisJKiBkbGxzL3VzZXIvc3lzcGFyYW1zLmM6IEZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCUNsZWFyIGJ1ZmZlciBiZWZvcmUgcXVlcnlpbmcgdGhlIHJlZ2lzdHJ5IGluIFNZU1BBUkFNU19Mb2FkLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOiBNaWNoYWVsIExpbiA8bWxpbkBjb3J2dS5jb20uYXU+CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUltcGxlbWVudGVkIFVuaXhGb2xkZXIncyBJU0ZIZWxwZXI6OkFkZEZvbGRlci4KKworCSogZGxscy9hZHZhcGkzMi9NYWtlZmlsZS5pbiwgZGxscy9hZHZhcGkzMi9sc2EuYywKKwkgIGRsbHMvYWR2YXBpMzIvc2VjdXJpdHkuYzoKKwlKYW1lcyBIYXdraW5zIDx0cnVpa2VuQGdtYWlsLmNvbT4KKwlCcmFuY2ggdGhlIExTQSBmdW5jdGlvbnMgZnJvbSBzZWN1cml0eS5jIHRvIGxzYS5jLgorCisJKiBkbGxzL3VzZXIvZGRlX2NsaWVudC5jLCBkbGxzL3VzZXIvZGRlX21pc2MuYywgZGxscy91c2VyL2RlZnduZC5jLAorCSAgZGxscy91c2VyL2RyaXZlcjE2LmMsIGRsbHMvdXNlci9ob29rLmMsIGRsbHMvdXNlci9ob29rMTYuYywKKwkgIGRsbHMvdXNlci9tZXNzYWdlLmMsIGRsbHMvdXNlci9zcHkuYywgZGxscy91c2VyL3N5c3BhcmFtcy5jLAorCSAgZGxscy91c2VyL3RleHQuYywgZGxscy91c2VyL3VzZXJfbWFpbi5jLCBkbGxzL3VzZXIvd2lucHJvYy5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwktV3BvaW50ZXItc2lnbiBmaXhlcyBmb3IgZ2NjIDQuMC4KKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL21zaXByaXYuaCwgZGxscy9tc2kvc3RyaW5nLmMsCisJICBkbGxzL21zaS9zdW1pbmZvLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCWdjYyA0LjAgLVdwb2ludGVyLXNpZ24gZml4ZXMuCisKKwkqIGRsbHMvbXNodG1sL21haW4uYywgZGxscy9tc2h0bWwvbXNodG1sX3ByaXZhdGUuaCwKKwkgIGRsbHMvbXNodG1sL3Byb3RvY29sLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCBnY2MgNC4wIC1XcG9pbnRlci1zaWduIHdhcm5pbmdzLgorCisJKiBkbGxzL3JpY2hlZDIwL2VkaXRvci5jLCBkbGxzL3JpY2hlZDIwL2VkaXRvci5oLCBkbGxzL3JpY2hlZDIwL3Jvdy5jOgorCVBoaWwgS3J5bG92IDxwaGlsQG5ld3N0YXIucmluZXQucnU+CisJSW1wbGVtZW50ZWQgRU1fRVhMSU5FRlJPTUNIQVIsIEVNX0xJTkVJTkRFWCwgRU1fRklORFRFWFQsCisJRU1fRklORFRFWFRXLCBFTV9GSU5EVEVYVEVYLCBhbmQgRU1fRklORFRFWFRFWFcgbWVzc2FnZXMuCisKKwkqIGluY2x1ZGUvd2lubnQuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlZmluZSBQVk9JRDY0IGFuZCBGSUxFX1NFR01FTlRfRUxFTUVOVC4KKworCSogZGxscy91eHRoZW1lL3N5c3RlbS5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlFdmVyeSB3aW5kb3cgbmVlZHMgdG8gcmVjZWl2ZSBXTV9USEVNRUNIQU5HRUQgKGVzcC4gY29udHJvbHMpLCBzbyBhbHNvCisJc2VuZCBpdCB0byBjaGlsZCB3aW5kb3dzLgorCisJKiBkbGxzL2NvbWN0bDMyL01ha2VmaWxlLmluLCBkbGxzL2NvbWN0bDMyL2NvbWN0bDMydW5kb2MuYywKKwkgIGRsbHMvY29tY3RsMzIvZHBhLmMsIGRsbHMvY29tY3RsMzIvZHNhLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJTW92ZSBEUEEgYW5kIERTQSBmdW5jdGlvbnMgb3V0IG9mIGNvbWN0bDMydW5kb2MuYyBhcyB0aGV5IGFyZQorCWRvY3VtZW50ZWQgYnkgbm93LgorCisyMDA1LTA3LTA1ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiB0b29scy93aW5lYnVpbGQvcmVsYXkuYzogRG9uJ3QgZGVwZW5kIG9uIEVMRiBmZWF0dXJlcyBmb3IgUElDIGNvZGUuCisJQSBjb3VwbGUgb2Ygb3B0aW1pemF0aW9ucy4KKworCSogZGxscy9tc2kvTWFrZWZpbGUuaW4sIGRsbHMvbXNpL2ZpbGVzLmMsIGRsbHMvbXNpL21zaXByaXYuaCwKKwkgIGRsbHMvbXNpL3NvdXJjZS5jLCBpbmNsdWRlL21zaS5oOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJQWRkIHNvdXJjZS5jIHRvIHN0YXJ0IGhhbmRsaW5nIHRoZSB2YXJpb3VzIE1zaVNvdXJjZUxpc3QgYXBpcyB1c2VkIGluCisJdjMgb2YgTVNJLCBhbmQgbm93IGludGVybmFsbHkuCisJVXBkYXRlIGZpbGVzLmMgdG8gdXNlIHRoZSBNc2lTb3VyY2VMaXN0IGFwaXMgdG8gbWFrZSBzdXJlIG91cgorCVNvdXJjZUxpc3Qga2V5cyBpbiB0aGUgcmVnaXN0cnkgYXJlIGluY2x1ZGVkIGFuZCBjb3JyZWN0LgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGwzMi5zcGVjLCBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmM6CisJRGV0bGVmIFJpZWtlbmJlcmcgPHdpbmUuZGV2QHdlYi5kZT4KKwlQcmludGVyX0xvYWRJY29uc1c6IGltcGxlbWVudGVkIG1pbmltYWwgdmVyc2lvbi4KKworCSogZGxscy9yaWNoZWQyMC93cmFwLmM6IFBoaWwgS3J5bG92IDxwaGlsQG5ld3N0YXIucmluZXQucnU+CisJRml4ZWQgYW4gb2ZmLWJ5LW9uZSBlcnJvciBpbiBFTV9HRVRMSU5FQ09VTlQgaGFuZGxlci4KKworCSogZGxscy9yaWNoZWQyMC93cml0ZXIuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlGaXhlZCBhbm90aGVyIGNvdXBsZSBvZiBFTV9TVFJFQU1PVVQgYnVncy4KKworCSogaW5jbHVkZS90ZXh0c2Vydi5oOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCUZpeGVkIHR5cG8uCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfdW5peGZzLmM6IE1pY2hhZWwgTGluIDxtbGluQGNvcnZ1LmNvbS5hdT4KKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJSVNGSGVscGVyIGludGVyZmFjZSBzdXBwb3J0IGZvciBVbml4Rm9sZGVyIChjdXJyZW50bHkgb25seSBzdHVicykuCisKKwkqIGRsbHMvYXZpZmlsMzIvYWNtc3RyZWFtLmMsIGRsbHMvYXZpZmlsMzIvYXZpZmlsZS5jLAorCSAgZGxscy9hdmlmaWwzMi9lZGl0c3RyZWFtLmMsIGRsbHMvYXZpZmlsMzIvZ2V0ZnJhbWUuYywKKwkgIGRsbHMvYXZpZmlsMzIvaWNtc3RyZWFtLmMsIGRsbHMvYXZpZmlsMzIvdG1wZmlsZS5jLAorCSAgZGxscy9hdmlmaWwzMi93YXZmaWxlLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCWdjYyA0LjAgLVdwb2ludGVyLXNpZ24gZml4ZXMuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJU2V0IHRoZSBpbml0aWFsIGZvY3VzIG9uIHRoZSBjb250cm9sIHNwZWNpZmllZCBieSBDb250cm9sX0ZpcnN0IGluIHRoZQorCURpYWxvZyB0YWJsZS4KKworCSogZGxscy9yaWNoZWQyMC93cml0ZXIuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlSZW1vdmVkIGp1bmsgZnJvbSBVVEYtOCBSVEYgb3V0cHV0LgorCisJKiBpbmNsdWRlL3RleHRzZXJ2Lmg6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtLmIubGFua2hvcnN0QGdtYWlsLmNvbT4KKwlBZGRlZCB0eHRiaXQgZGVjbGFyYXRpb25zLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL2xpYnJhcmllcy5jOiBIYWppbWUgU2VnYXdhIDx3aW5ldGlwc0BzaWRlbmV0LmRkby5qcD4KKwlGaXggZm9yIGRlYnVnIG1lc3NhZ2UgYnVmZmVyIG92ZXJmbG93IGluIGxpYnJhcnkgdGFiLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOiBNaWNoYWVsIExpbiA8bWxpbkBjb3J2dS5jb20uYXU+CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUltcGxlbWVudGVkIFVuaXhGb2xkZXIncyBJU2hlbGxGb2xkZXI6OlNldE5hbWVPZi4KKworCSogZGxscy9kM2Q5L2QzZDlfcHJpdmF0ZS5oLCBkbGxzL2QzZDkvcGl4ZWxzaGFkZXIuYywKKwkgIGRsbHMvZDNkOS9zdGF0ZWJsb2NrLmMsIGRsbHMvZDNkOS92ZXJ0ZXhzaGFkZXIuYzoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJU3RyaXAgb3V0IHN0YXRlYmxvY2tzIGZyb20gZDNkOSBhbmQgcmVsYXkgYWxsIHN0YXRlYmxvY2sgY2FsbHMgdG8KKwl3aW5lZDNkLgorCisJKiB0b29scy9zZm50MmZudC5jLCB0b29scy93aW5lYnVpbGQvc3BlYzE2LmMsIHRvb2xzL3dpbmVkdW1wL2xlLmMsCisJICB0b29scy93aW5lZHVtcC9sbmsuYywgdG9vbHMvd2luZWR1bXAvbmUuYywgdG9vbHMvd2luZWR1bXAvd2luZWR1bXAuaCwKKwkgIHRvb2xzL3dyYy9yZWFkcmVzLmMsIGRsbHMvY29tbWRsZy9maWxlZGxnLmMsCisJICBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYywgZGxscy9jb21tZGxnL2ZvbnRkbGcuYywKKwkgIGRsbHMvY29tbWRsZy9mb250ZGxnMTYuYywgZGxscy9jb21tZGxnL3ByaW50ZGxnLmMsCisJICBkbGxzL2NvbW1kbGcvcHJpbnRkbGcxNi5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlnY2MgNC4wIC1XcG9pbnRlci1zaWduIGZpeGVzLgorCisJKiBpbmNsdWRlL21zeG1sLmlkbDogVmlqYXkgS2lyYW4gS2FtdWp1IDxpbmZ5cXVlc3RAZ21haWwuY29tPgorCUFkZCBJWE1MRWxlbWVudE5vdGlmaWNhdGlvblNpbmsgZGVmaW5pdGlvbiBmb3IgSUU0IGNvbXBhdGliaWxpdHkuCisKKwkqIGRsbHMvbXN2Y3J0L3Byb2Nlc3MuYzogRXJpYyBQb3VlY2ggPHBvdWVjaC1lcmljQHdhbmFkb28uZnI+CisJRml4ZWQgZXJyb25lb3VzIGZpbGUgZmxhZyBpbiBfcG9wZW4uCisKKwkqIGRsbHMvdXJsbW9uLy5jdnNpZ25vcmUsIGRsbHMvdXJsbW9uL01ha2VmaWxlLmluLAorCSAgZGxscy91cmxtb24vcmVnc3ZyLmMsIGRsbHMvdXJsbW9uL3JzcmMucmMsIGRsbHMvdXJsbW9uL3VybG1vbi5pbmYsCisJICBkbGxzL3VybG1vbi91cmxtb25fbWFpbi5oOgorCUphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJUmVnaXN0ZXIgcHJvdG9jb2xzLgorCisJKiBkbGxzL250ZGxsL3Byb2Nlc3MuYywgZGxscy9udGRsbC92aXJ0dWFsLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJUmVwbGFjZSBzdHVicyBmb3IgaW5mb3JtYXRpb24gY2xhc3NlcyBpbiBOdFF1ZXJ5VmlydHVhbE1lbW9yeSBhbmQKKwlOdFF1ZXJ5SW5mb3JtYXRpb25Qcm9jZXNzIGJ5IG1vcmUgZGVzY3JpcHRpdmUgbWVzc2FnZXMuCisKKwkqIGRsbHMvdXh0aGVtZS9kcmF3LmM6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCVVYVEhFTUVfTG9hZEltYWdlKCk6IFNldCBkZWZhdWx0IGltYWdlIGNvdW50IHRvIDEgdG8gYXZvaWQgZGl2aXNpb24gYnkKKwl6ZXJvIGluIGNhc2UgaW1hZ2UgY291bnQgcHJvcGVydHkgaXMgbm90IGdpdmVuLiBQcm9wZXJseSBzdXBwb3J0IDAKKwlzdGF0ZSBJRHMuCisKKwkqIGRsbHMvd2luZWQzZC9kZXZpY2UuYywgZGxscy93aW5lZDNkL2RyYXdwcmltLmMsCisJICBkbGxzL3dpbmVkM2Qvc3RhdGVibG9jay5jLCBkbGxzL3dpbmVkM2Qvd2luZWQzZF9wcml2YXRlLmgsCisJICBpbmNsdWRlL3dpbmUvd2luZWQzZF9pbnRlcmZhY2UuaDoKKwlPbGl2ZXIgU3RpZWJlciA8b2xpdmVyX3N0aWViZXJAeWFob28uY28udWs+CisJSW1wbGVtZW50ZWQgc3RhdGVibG9ja3MgaW4gd2luZWQzZC4KKworCSogZGxscy91c2VyL2VkaXQuYywgZGxscy91c2VyL3Rlc3RzL2VkaXQuYzoKKwlWaXRhbGl5IE1hcmdvbGVuIDx3aW5lLXBhdGNoQGtpZXZpbmZvLmNvbT4KKwlGaXggc29tZSBmYWlsaW5nIHRlc3RzLgorCisJKiB0b29scy93aW5lYnVpbGQvYnVpbGQuaCwgdG9vbHMvd2luZWJ1aWxkL21haW4uYywKKwkgIHRvb2xzL3dpbmVidWlsZC9zcGVjMzIuYzoKKwlHZXQgcmlkIG9mIHRoZSBnbG9iYWwgZGVidWdnaW5nIGZsYWcuCisKKwkqIGRsbHMva2VybmVsL2tlcm5lbDE2X3ByaXZhdGUuaCwgZGxscy9rZXJuZWwvbmVfbW9kdWxlLmMsCisJICBkbGxzL2tlcm5lbC9yZWxheTE2LmMsIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jOgorCUludGVyY2VwdCBmdW5jdGlvbnMgZm9yIDE2LWJpdCByZWxheSBkZWJ1Z2dpbmcgYnkgcGF0Y2hpbmcgdGhlCisJQ0FMTEZST00xNiB0YWJsZSBpbnN0ZWFkIG9mIGhhdmluZyB0aGUgd2luZV9jYWxsX2Zyb21fMTYgZnVuY3Rpb25zCisJY2FsbCBvdXQgdGhlIHJlbGF5IGZ1bmN0aW9ucyBleHBsaWNpdGx5LgorCisJKiBkbGxzL2RwbGF5eC9kcGxheS5jLCBkbGxzL2RwbGF5eC9kcGxheXhfZ2xvYmFsLmMsCisJICBkbGxzL2RwbGF5eC9uYW1lX3NlcnZlci5jLCBkbGxzL2dkaS9lbmhtZXRhZmlsZS5jLAorCSAgZGxscy9tc3ZpZGMzMi9tc3ZpZGVvMS5jLCBkbGxzL25ldGFwaTMyL2FjY2Vzcy5jLAorCSAgZGxscy9yaWNoZWQyMC9lZGl0b3IuYywgZGxscy9ycGNydDQvbmRyX29sZS5jLAorCSAgZGxscy91eHRoZW1lL21zc3R5bGVzLmM6CisJU3RlZmFuIEh1ZWhuZXIgPHN0ZWZhbkBodWVobmVyLm9yZz4KKwlGaXggLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyB3YXJuaW5ncy4KKworCSogZGxscy9vbGUzMi9hbnRpbW9uaWtlci5jLCBkbGxzL29sZTMyL2JpbmRjdHguYywKKwkgIGRsbHMvb2xlMzIvY2xpcGJvYXJkLmMsIGRsbHMvb2xlMzIvY29tcG9ial9wcml2YXRlLmgsCisJICBkbGxzL29sZTMyL2NvbXBvc2l0ZW1vbmlrZXIuYywgZGxscy9vbGUzMi9kYXRhY2FjaGUuYywKKwkgIGRsbHMvb2xlMzIvZGVmYXVsdGhhbmRsZXIuYywgZGxscy9vbGUzMi9lcnJvcmluZm8uYywKKwkgIGRsbHMvb2xlMzIvZmlsZW1vbmlrZXIuYywgZGxscy9vbGUzMi9mdG1hcnNoYWwuYywKKwkgIGRsbHMvb2xlMzIvaGdsb2JhbHN0cmVhbS5jLCBkbGxzL29sZTMyL2lmcy5jLAorCSAgZGxscy9vbGUzMi9pdGVtbW9uaWtlci5jLCBkbGxzL29sZTMyL21hcnNoYWwuYywKKwkgIGRsbHMvb2xlMzIvbWVtbG9ja2J5dGVzLmMsIGRsbHMvb2xlMzIvbWVtbG9ja2J5dGVzMTYuYywKKwkgIGRsbHMvb2xlMzIvbW9uaWtlci5jLCBkbGxzL29sZTMyL29sZTE2LmMsIGRsbHMvb2xlMzIvb2xlMi5jLAorCSAgZGxscy9vbGUzMi9vbGVvYmouYywgZGxscy9vbGUzMi9vbGVwcm94eS5jLCBkbGxzL29sZTMyL3JwYy5jLAorCSAgZGxscy9vbGUzMi9zdGdfcHJvcC5jLCBkbGxzL29sZTMyL3N0b3JhZ2UuYywgZGxscy9vbGUzMi9zdG9yYWdlMzIuaCwKKwkgIGRsbHMvb2xlMzIvc3R1Ym1hbmFnZXIuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGdjYyA0LjAgLVdwb2ludGVyLXNpZ24gd2FybmluZ3MuCisKKwkqIGRsbHMvdXNlci9jdXJzb3JpY29uLmM6IERldGxlZiBSaWVrZW5iZXJnIDx3aW5lLmRldkB3ZWIuZGU+CisJTG9hZEltYWdlVzogRml4IHR5cGUgb2YgVFJBQ0UgcGFyYW1ldGVyLgorCisJKiBpbmNsdWRlLy5jdnNpZ25vcmUsIGluY2x1ZGUvTWFrZWZpbGUuaW4sIGluY2x1ZGUvbWltZWluZm8uaWRsOgorCVZpamF5IEtpcmFuIEthbXVqdSA8aW5meXF1ZXN0QGdtYWlsLmNvbT4KKwlBZGRlZCBkZWNsYXJhdGlvbiBmb3IgSU1pbWVJbmZvIGludGVyZmFjZS4KKworCSogZGxscy9rZXJuZWwvcmVsYXkxNi5jLCBpbmNsdWRlL3dpbmUvd2luYmFzZTE2LmgsCisJICB0b29scy93aW5lYnVpbGQvcmVsYXkuYywgdG9vbHMvd2luZWJ1aWxkL3NwZWMxNi5jOgorCUFkZGVkIHZhcmFyZyBhcmd1bWVudCB0eXBlIHNvIHRoYXQgdGhlIHJlbGF5IGNvZGUgY2FuIGRpc3Rpbmd1aXNoIGZyb20KKwlhIG5vcm1hbCBjZGVjbCBmdW5jdGlvbi4KKwlEb24ndCByZWx5IG9uIHRoZSByZWxheSB0aHVuayBwcmVzZXJ2aW5nIHRoZSBzdGFjayBwb2ludGVyLgorCisJKiBkbGxzL250ZGxsL3Rlc3RzL2luZm8uYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlBZGRlZCBzb21lIHRlc3RzIGZvciBvdGhlciBpbmZvcm1hdGlvbiBjbGFzc2VzLgorCUNvcnJlY3QgY29tbWVudCBmb3IgdGVzdCAweDMuCisKKwkqIGRsbHMvbnRkbGwvbnQuYzogUGF1bCBWcmllbnMgPFBhdWwuVnJpZW5zQHhzNGFsbC5ubD4KKwlJbXByb3ZlZCBzdHVicyB0byBzaG93IHRoZSBjb3JyZWN0IGJlaGF2aW9yLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL0VuLnJjOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhbiBFbmdsaXNoIG5ldXRyYWwgdmVyc2lvbiBvZiB0aGUgZ3JhcGhpY3MgdGFiLgorCisJKiBkbGxzL2tlcm5lbC90b29saGVscC5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IHNvbWUgZ2NjIDQuMCB3YXJuaW5ncy4KKworCSogZGxscy91eHRoZW1lL21zc3R5bGVzLmMsIGRsbHMvdXh0aGVtZS9tc3N0eWxlcy5oOgorCUZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCU9wZW5pbmcgc29tZSB0aGVtZSBjbGFzcyBkYXRhIG5vdyBhbHNvIGluY3JlYXNlcyB0aGUgcmVmZXJlbmNlIGNvdW50CisJb2YgdGhlIHRoZW1lIGZpbGUsIHNvIGFzIGxvbmcgYXMgdGhlbWUgY2xhc3MgZGF0YSBpcyBzdGlsbCBvcGVuZWQKKwlzb21ld2hlcmUsIHRoZSB0aGVtZSBmaWxlIHdvbid0IGdldCBmcmVlZC4gT3RoZXJ3aXNlLCBpdCBjb3VsZCBoYXBwZW4KKwl0aGF0IGludmFsaWQgY2xhc3MgZGF0YSB3YXMgdXNlZCwgd2hpY2ggY291bGQgbGVhZCB0byBwcm9ibGVtcy4KKworCSogZGxscy91eHRoZW1lL2RyYXcuYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJQ2hhbmdlZCB0aGUgZGVmYXVsdCB0cmFuc3BhcmVudCBjb2xvciBpbiBjYXNlIG5vbmUgd2FzIGV4cGxpY2l0bHkKKwlzcGVjaWZpZWQgZnJvbSB0aGUgdXBwZXIgbGVmdCBwaXhlbCBjb2xvciB0byBtYWdlbnRhLiBFbXBpcmljYWxseQorCWdpdmVzIGJldHRlciByZXN1bHRzLgorCisJKiBkbGxzL3VzZXIvbWVudS5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlBZGQgc3VwcG9ydCBmb3IgZHJhd2luZyBtZW51cyBpbiAiZmxhdCIgc3R5bGUuCisKKwkqIGRsbHMvYWR2YXBpMzIvY3J5cHQuYywgZGxscy9jYWJpbmV0L2ZkaS5jLAorCSAgZGxscy9kaW5wdXQvam95c3RpY2tfbGludXguYywgZGxscy9pcGhscGFwaS90ZXN0cy9pcGhscGFwaS5jLAorCSAgZGxscy9tc3ZjcnQvdGVzdHMvaGVhZGVycy5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYywKKwkgIGRsbHMvc2V0dXBhcGkvdmlydGNvcHkuYywgZGxscy93aW5hc3BpL2FzcGkuYywKKwkgIGRsbHMvd2luZWRvcy9zb3VuZGJsYXN0ZXIuYywgZGxscy93aW5lZG9zL3ZnYS5jLAorCSAgZGxscy93aW5zb2NrL3NvY2tldC5jOgorCVN0ZWZhbiBIdWVobmVyIDxzdGVmYW5AaHVlaG5lci5vcmc+CisJRml4IHNvbWUgbW9yZSAtV21pc3NpbmctZGVjbGFyYXRpb25zIHdhcm5pbmdzLgorCisJKiBkbGxzL2RtbG9hZGVyL2RtbG9hZGVyX21haW4uYywgZGxscy9kbWxvYWRlci9kbWxvYWRlcl9wcml2YXRlLmgsCisJICBkbGxzL2RtbG9hZGVyL2xvYWRlci5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggZ2NjIDQuMCAtV3BvaW50ZXItc2lnbiB3YXJuaW5ncy4KKworCSogZGxscy9nZGkvZHJpdmVyLmMsIGRsbHMvZ2RpL2ZyZWV0eXBlLmMsIGRsbHMvZ2RpL3ByaW50ZHJ2LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCS1XcG9pbnRlci1zaWduIGZpeGVzIGZvciBnY2MgNC4wLgorCisJKiBkbGxzL29sZWF1dDMyL29sZWF1dC5jLCBkbGxzL29sZWF1dDMyL3ZhcmlhbnQuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJRG9jdW1lbnQgYWN0aXZlIG9iamVjdCBhbmQgdmFyaWFudCBmdW5jdGlvbnMuCisKKwkqIGRsbHMvY29tY3RsMzIvdGVzdHMvZHBhLmM6CisJRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJRml4IERQQSB0ZXN0cyBvbiBXaW45NS4KKworCSogaW5jbHVkZS93aW50ZXJubC5oOiBQYXVsIFZyaWVucyA8UGF1bC5WcmllbnNAeHM0YWxsLm5sPgorCVJlbW92ZWQgNCBieXRlcyBmcm9tIHRoZSBTWVNURU1fUFJPQ0VTU09SX1BFUkZPUk1BTkNFX0lORk9STUFUSU9OCisJc3RydWN0LgorCUNoYW5nZWQgc29tZSBkd1NwYXJlIGludG8gbGlLZXJuZWxUaW1lIGFuZCBsaVVzZXJUaW1lLgorCisJKiBpbmNsdWRlL3RleHRzZXJ2Lmg6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtLmIubGFua2hvcnN0QGdtYWlsLmNvbT4KKwlBZGRlZCBtaXNzaW5nIGRlY2xhcmF0aW9uIGZvciBJVGV4dFNlcnZpY2VzLT5PblR4SW5QbGFjZURlYWN0aXZhdGUuCisKKwkqIGRsbHMvY29tbWRsZy9jZGxnX0VuLnJjOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUFkZCBFbmdsaXNoIG5ldXRyYWwgdmVyc2lvbiBvZiBJRFNfQ09MT1JfR1JBWS4KKworCSogcHJvZ3JhbXMvd2luZWZpbGUvRnIucmM6IEpvbmF0aGFuIEVybnN0IDxKb25hdGhhbkBFcm5zdEZhbWlseS5jaD4KKwlVcGRhdGVkIHdpbmVmaWxlIEZyZW5jaCByZXNvdXJjZXMuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvRnIucmMsIHByb2dyYW1zL3dpbmVjZmcvd2luZWNmZy5yYzoKKwlKb25hdGhhbiBFcm5zdCA8Sm9uYXRoYW5ARXJuc3RGYW1pbHkuY2g+CisJLSBVcGRhdGVkIHdpbmVjZmcgRnJlbmNoIHJlc291cmNlcy4KKwktIEZpeGVkIGNvbnRyb2wgc2l6ZSBhbmQgcGxhY2VtZW50LgorCisJKiBkbGxzL3dpbnNwb29sL2luZm8uYzogSHV3IERhdmllcyA8aHV3QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGQgb25lIG1vcmUgbGV2ZWwgb2YgaW5kaXJlY3Rpb24gdG8gdGhlIHByaW50ZXIgaGFuZGxlIGFycmF5IHRvIGFsbG93CisJbW9yZSBpbmZvcm1hdGlvbiB0aGFuIGp1c3QgdGhlIG5hbWUgdG8gYmUgc3RvcmVkLgorCVdyYXAgYWNjZXNzZXMgdG8gdGhlIHByaW50ZXIgaGFuZGxlIGFycmF5IGluIGEgY3JpdHNlYy4KKworCSogZGxscy91c2VyL3Rlc3RzL3dpbi5jOiBEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUFkZCBhIHRlc3QgY2FzZSBmb3IgSXNXaW5kb3dVbmljb2RlLgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGwzMl9QdC5yYzogTWFyY2VsbyBEdWFydGUgPG1hcmNlbG90ZHVhcnRlQGdtYWlsLmNvbT4KKwlVcGRhdGUgc2hlbGwzMiByZXNvdXJjZXMgZm9yIFBvcnR1Z3Vlc2UuCisKKwkqIHByb2dyYW1zL3dpbmVtaW5lL1BsLnJjOiBNYXJjZWxvIER1YXJ0ZSA8bWFyY2Vsb3RkdWFydGVAZ21haWwuY29tPgorCVJlbW92ZSBkb3VibGUgU0VQQVJBVE9SLgorCisJKiBkbGxzL3gxMWRydi9vcGVuZ2wuYzogT2xpdmVyIFN0aWViZXIgPG9saXZlcl9zdGllYmVyQHlhaG9vLmNvLnVrPgorCU1ha2Ugc3VyZSB0aGF0IHRoZSBPcGVuR0wgdmlzdWFsIGNyZWF0ZWQgZm9yIGEgd2luZG93IGhhcyBhIHN0ZW5jaWwKKwlidWZmZXIuCisKKwkqIHRvb2xzL3dpbmVpbnN0YWxsOiBWaW5jZW50IELpcm9uIDx2YmVyb25AbWVjYW5vLmdtZS51c2hlcmIuY2E+CisJQ2xlYW4gd2luZWluc3RhbGwgZnJvbSBjb25maWcgZmlsZSByZWZlcmVuY2VzLgorCisJKiBkbGxzL3NoZWxsMzIvc2hmbGRyX3VuaXhmcy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlSZXR1cm4gY29ycmVjdCBhdHRyaWJ1dGVzIGluIFBhcnNlRGlzcGxheU5hbWUuCisKKwkqIGRsbHMva2VybmVsL3ZlcnNpb24uYzogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUZpeCBnY2MgNC4wIHdhcm5pbmdzLgorCisJKiBkbGxzL2NvbWN0bDMyL3Byb3BzaGVldC5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlMZXQgcHJvcGVydHkgc2hlZXRzIHVwZGF0ZSB0aGUgY2FjaGVkIHN5c3RlbSBjb2xvcnMgdXBvbiByZWNlaXZpbmcKKwlXTV9TWVNDT0xPUkNIQU5HRS4KKworCSogZGxscy91eHRoZW1lL3N5c3RlbS5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlXcml0ZSBXQ0hBUiBzdHJpbmdzIHRvIHJlZ2lzdHJ5IHdpdGggY29ycmVjdCBzaXplLgorCisJKiBkbGxzL21zY21zL3Byb2ZpbGUuYywgZGxscy9tc2Ntcy90ZXN0cy9wcm9maWxlLmM6CisJSGFucyBMZWlkZWtrZXIgPGhhbnNAaXQudnUubmw+CisJRml4IGNvbG9yIGRpcmVjdG9yeSBoYW5kbGluZy4KKworCSogZGxscy91eHRoZW1lL2RyYXcuYywgZGxscy91eHRoZW1lL3V4dGhlbWUuc3BlYywgaW5jbHVkZS91eHRoZW1lLmg6CisJVGhvbWFzIFdlaWRlbm11ZWxsZXIgPHdpbmUtcGF0Y2hlc0ByZWFjdHNvZnQuY29tPgorCUlzVGhlbWVEaWFsb2dUZXh0dXJlRW5hYmxlZCBzaG91bGQgaGF2ZSBvbmUgcGFyYW1ldGVyIHRvIG1hdGNoIHRoZQorCXByb3RvdHlwZSBpbiB0aGUgb2ZmaWNpYWwgaGVhZGVycy4KKworCSogZGxscy91c2VyL3N5c3BhcmFtcy5jOiBGcmFuayBSaWNodGVyIDxmcmFuay5yaWNodGVyQGdtYWlsLmNvbT4KKwlBZGQgc3VwcG9ydCBmb3IgU1BJX1tTR11FVEZMQVRNRU5VIGluIFN5c3RlbVBhcmFtZXRlcnNJbmZvIChhbHRob3VnaAorCXdpdGhvdXQgc2F2aW5nIG9mIHRoZSBzZXR0aW5nKS4KKworCSogZGxscy91eHRoZW1lL21zc3R5bGVzLmM6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCUVuYWJsZS9kaXNhYmxlICJmbGF0IG1lbnVzIiBiYXNlZCBvbiB0aGUgc2V0dGluZyBmcm9tIHRoZSBhY3RpdmUKKwl0aGVtZS4KKworMjAwNS0wNy0wMyAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy91cmxtb24vc2VjX21nci5jLCBkbGxzL3VybG1vbi91bW9uLmMsIGRsbHMvdXJsbW9uL3Vtc3RyZWFtLmMsCisJICBkbGxzL3VybG1vbi91cmxtb25fbWFpbi5jLCBkbGxzL3VybG1vbi91cmxtb25fbWFpbi5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggLVdwb2ludGVyLXNpZ24gd2FybmluZ3MuCisKKwkqIGRsbHMvc2hlbGwzMi9hdXRvY29tcGxldGUuYywgZGxscy9zaGVsbDMyL2NsYXNzZXMuYywKKwkgIGRsbHMvc2hlbGwzMi9jcGFuZWxmb2xkZXIuYywgZGxscy9zaGVsbDMyL2RhdGFvYmplY3QuYywKKwkgIGRsbHMvc2hlbGwzMi9kZGUuYywgZGxscy9zaGVsbDMyL2RyYWdkcm9waGVscGVyLmMsCisJICBkbGxzL3NoZWxsMzIvZW51bWlkbGlzdC5jLCBkbGxzL3NoZWxsMzIvZm9sZGVycy5jLAorCSAgZGxscy9zaGVsbDMyL3BpZGwuYywgZGxscy9zaGVsbDMyL3BpZGwuaCwKKwkgIGRsbHMvc2hlbGwzMi9zaGVsbDMyX21haW4uaCwgZGxscy9zaGVsbDMyL3NoZWxsbGluay5jLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsb2xlLmMsIGRsbHMvc2hlbGwzMi9zaGZsZHJfZGVza3RvcC5jLAorCSAgZGxscy9zaGVsbDMyL3NoZmxkcl9mcy5jLCBkbGxzL3NoZWxsMzIvc2hmbGRyX215Y29tcC5jLAorCSAgZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYywgZGxscy9zaGVsbDMyL3NobGZzYmluZC5jLAorCSAgZGxscy9zaGVsbDMyL3NobHZpZXcuYywgZGxscy9zaGVsbDMyL3Nodl9iZ19jbWVudS5jLAorCSAgZGxscy9zaGVsbDMyL3Nodl9pdGVtX2NtZW51LmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCS1XcG9pbnRlci1zaWduIGZpeGVzLgorCisJKiBkbGxzL2NvbWN0bDMyL3Rlc3RzL01ha2VmaWxlLmluLCBkbGxzL2NvbWN0bDMyL3Rlc3RzL2RwYS5jOgorCUZlbGl4IE5hd290aG5pZyA8ZmVsaXgubmF3b3RobmlnQHQtb25saW5lLmRlPgorCVJld3JvdGUgdGhlIERQQSB0ZXN0c3VpdGUuCisKKwkqIGluY2x1ZGUvd2ludGVybmwuaDogTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCURlZmluZSBtb3JlIE50KiBmdW5jdGlvbnMuCisKKwkqIGRsbHMva2VybmVsL2tlcm5lbDE2X3ByaXZhdGUuaCwgZGxscy9rZXJuZWwvc3lzbGV2ZWwuYywKKwkgIGRsbHMva2VybmVsL3dvd3RodW5rLmMsIHRvb2xzL3dpbmVidWlsZC9yZWxheS5jOgorCU1vdmVkIGFsbCAxNi1iaXQgcmVsYXkgY29kZSB0byB0aGUgdGV4dCBzZWN0aW9uLgorCUNoYW5nZWQgYSBmZXcgc3ltYm9sIG5hbWVzIGZvciBiZXR0ZXIgY29uc2lzdGVuY3kuCisKKwkqIGxpYnMvd2luZS9sZHQuYzogQWRkZWQgZXJyb3IgbWVzc2FnZSBmb3IgbWlzc2luZyBMRFQgc3VwcG9ydCBvbiBpMzg2LgorCisJKiBkbGxzL250ZGxsL3NpZ25hbF9pMzg2LmM6IFNvbWUgZml4ZXMgZm9yIHRoZSBEYXJ3aW4gYnVpbGQuCisKKwkqIGRsbHMvd2lubW0vd2luZW9zcy9hdWRpby5jLCBkbGxzL3dpbm1tL3dpbmVvc3MvZHNyZW5kZXIuYzoKKwlWaXRhbGl5IE1hcmdvbGVuIDx3aW5lLXBhdGNoQGtpZXZpbmZvLmNvbT4KKwlDaGFuZ2UgbWVzc2FnZXMgYWJvdXQgY29uZmlnIGZpbGUgdG8gcmVnaXN0cnkuCisKKwkqIGRsbHMvZ2RpL3Rlc3RzL2dlbmVyYXRlZC5jLCBkbGxzL2tlcm5lbC90ZXN0cy9nZW5lcmF0ZWQuYywKKwkgIGRsbHMvbnRkbGwvdGVzdHMvZ2VuZXJhdGVkLmMsIGRsbHMvcnBjcnQ0L3Rlc3RzL2dlbmVyYXRlZC5jLAorCSAgZGxscy9zaGVsbDMyL3Rlc3RzL2dlbmVyYXRlZC5jLCBkbGxzL3NobHdhcGkvdGVzdHMvZ2VuZXJhdGVkLmMsCisJICBkbGxzL3VybG1vbi90ZXN0cy9nZW5lcmF0ZWQuYywgZGxscy91c2VyL3Rlc3RzL2dlbmVyYXRlZC5jLAorCSAgZGxscy93aW5pbmV0L3Rlc3RzL2dlbmVyYXRlZC5jLCB0b29scy93aW5hcGkvd2luYXBpX3Rlc3Q6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VAY29kZXdlYXZlcnMuY29tPgorCUF2b2lkIHdhcm5pbmdzIGluIGdlbmVyYXRlZCB0ZXN0cyBieSBjYXN0aW5nIHNpemVvZih4KSB0byBhbiBpbnQuCisKKwkqIGRsbHMvbXNodG1sL01ha2VmaWxlLmluLCBkbGxzL21zaHRtbC9odG1sZG9jLmMsCisJICBkbGxzL21zaHRtbC9tc2h0bWxfcHJpdmF0ZS5oLCBkbGxzL21zaHRtbC9zZXJ2aWNlLmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlBZGRlZCBzdHViIGltcGxlbWVudGF0aW9uIG9mIElTZXJ2aWNlUHJvdmlkZXIuCisKKwkqIERFVkVMT1BFUlMtSElOVFM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggREVWRUxPUEVSX0hJTlRTIHRvIHJlZmxlY3QgbWFrZSBjb25maWd1cmUgZG9lc24ndCBydW4gYXV0b2NvbmYuCisKKwkqIGRsbHMvZGRyYXcvZGV2aWNlX29wZW5nbC5jOiBNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJTWFrZSBjaGVjayBmYWlscyBpbiBkbGxzL2RkcmF3L3Rlc3RzL2QzZCwgYmVjYXVzZSBhIGhlYXAgYWxsb2NhdGUgaXMKKwlmZWQgdG8gd3Jvbmcgc2l6ZS4gKHNpemVvZihCT09MRUFOKSBpcyAxICwgYnV0IGF0aXZlX2xpZ2h0cyBpcyBhIERXT1JECisJYXJyYXkpLgorCisJKiBkbGxzL3gxMWRydi9kZXNrdG9wLmM6IExpb25lbCBVbG1lciA8bGlvbmVsLnVsbWVyQGZyZWUuZnI+CisJQWRkIHNvbWUgcmVzb2x1dGlvbnMgdG8gd2hhdCBEZXNrdG9wIG1vZGUgc3VwcG9ydHMuCisKKwkqIGluY2x1ZGUvd2ludGVybmwuaDogRmVsaXggTmF3b3RobmlnIDxmZWxpeC5uYXdvdGhuaWdAdC1vbmxpbmUuZGU+CisJQWRkIHNvbWUgdmFsdWVzIHRvIHRoZSBQUk9DRVNTX0lORk9STUFUSU9OX0NMQVNTIGVudW1lcmF0aW9uLgorCisJKiBkbGxzL3VybG1vbi91bW9uLmM6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJRml4IGhhbmRsaW5nIG9mIHBta0NvbnRleHQgaW4gQ3JlYXRlVVJMTW9uaWtlci4KKworCSogcHJvZ3JhbXMvd2luZW1pbmUvbWFpbi5jLCBwcm9ncmFtcy93aW5lbWluZS9tYWluLmg6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlNYWtlIHJlZ2lzdHJ5IGNvbXBhdGlibGUgd2l0aCB3aW5taW5lLgorCisJKiBpbmNsdWRlL2NvbW1jdHJsLmg6IEZyYW5rIFJpY2h0ZXIgPGZyYW5rLnJpY2h0ZXJAZ21haWwuY29tPgorCUFkZCBtaXNzaW5nIE5NQkNIT1RJVEVNIHN0cnVjdC4KKworCSogZGxscy9tc3ZjcnQvd2NzLmM6IE1hcmN1cyBNZWlzc25lciA8bWVpc3NuZXJAc3VzZS5kZT4KKwljaGFyIHBvaW50ZXIgbXVzdCBiZSAxMSBieXRlIHRvIGZpdCAxMCBjaGFyYWN0ZXJzICsgXDAuCisKKwkqIGRsbHMvYWR2YXBpMzIvdGVzdHMvcmVnaXN0cnkuYywgaW5jbHVkZS93aW5yZWcuaDoKKwlGZWxpeCBOYXdvdGhuaWcgPGZlbGl4Lm5hd290aG5pZ0B0LW9ubGluZS5kZT4KKwlBZGRlZCB1bml0IHRlc3RzIGZvciBSZWdHZXRWYWx1ZS4KKworMjAwNS0wNy0wMiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9udGRsbC92aXJ0dWFsLmMsIHNlcnZlci9tYXBwaW5nLmM6CisJVml0YWxpeSBNYXJnb2xlbiA8d2luZS1wYXRjaEBraWV2aW5mby5jb20+CisJTG9hZCBhbGwgZGxsIHNlY3Rpb25zIG5vIG1hdHRlciB3aGF0IGF0dHJpYnV0ZXMgc2F5LgorCisJKiBkbGxzL3VybG1vbi9zZWNfbWdyLmMsIGRsbHMvdXJsbW9uL3Vtb24uYywgZGxscy91cmxtb24vdXJsbW9uX21haW4uYzoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUJldHRlciBtb2R1bGUgbG9ja2luZy4KKworCSogZGxscy9hdmlmaWwzMi9NYWtlZmlsZS5pbiwgZGxscy9hdmlmaWwzMi9hcGkuYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1laXNzbmVyQHN1c2UuZGU+CisJVXNlIENvQ3JlYXRlSW5zdGFuY2UgaW5zdGVhZCBvZiBTSENvQ3JlYXRlSW5zdGFuY2UsIGRyb3Agc2hlbGwzMiBmcm9tCisJaW1wb3J0cy4KKwlDYWxsIE9sZUluaXRpYWxpemUoKSBvbiBBVklGaWxlSW5pdC4KKworCSogZGxscy9tc2h0bWwvbWFpbi5jLCBpbmNsdWRlL21zaHRtaHN0LmlkbDoKKwlKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCS0gQWRkZWQgbW9yZSBkZWZpbml0aW9ucy4KKwktIEZpeGVkIFJ1bkhUTUxBcHBsaWNhdGlvbiBkZWNsYXJhdGlvbi4KKworCSogaW5jbHVkZS9tc3htbC5pZGw6IFZpamF5IEtpcmFuIEthbXVqdSA8aW5meXF1ZXN0QGdtYWlsLmNvbT4KKwlBZGQgbWlzc2luZyBkZWNsYXJhdGlvbnMgZm9yIElYTUxEb2N1bWVudDIgYW5kIElYTUxFbGVtZW50Mi4KKworMjAwNS0wNy0wMSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogc2VydmVyL3JlZ2lzdHJ5LmM6IERvbid0IGJvdGhlciBsb2FkaW5nIHRoZSBjb25maWcgZmlsZSBhbnltb3JlLgorCisJKiB0b29scy93aW5lZHVtcC9uZS5jOiBBZGRlZCBkdW1waW5nIG9mIE5FIHNlZ21lbnRzIGFuZCByZWxvY2F0aW9ucy4KKworCSogdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jOgorCURvbid0IHVzZSB0aGUgZnVsbCAzMiBiaXRzIG9mICVlc3Agd2hlbiBjYWxsZWQgZnJvbSAxNi1iaXQgY29kZS4KKworCSogZGxscy91c2VyL2RkZW1sLnNwZWM6IEFuZHJlYXMgTW9ociA8YW5kaUByaGx4MDEuZmh0LWVzc2xpbmdlbi5kZT4KKwlIQ09OViBhbmQgSENPTlZMSVNUIGFyZSAzMmJpdCBoYW5kbGVzLgorCisJKiBwcm9ncmFtcy93aW5lY2ZnL0RlLnJjLCBwcm9ncmFtcy93aW5lZmlsZS9EZS5yYzoKKwlIZW5uaW5nIEdlcmhhcmR0IDxoZW5uaW5nLmdlcmhhcmR0QHdlYi5kZT4KKwlVcGRhdGUgR2VybWFuIHJlc291cmNlIGZpbGVzLgorCisJKiBkbGxzL2QzZDkvZGV2aWNlLmM6IE9saXZlciBTdGllYmVyIDxvbGl2ZXJfc3RpZWJlckB5YWhvby5jby51az4KKwlDaGVjayBmb3IgYSBudWxsIHN1cmZhY2UgcmV0dXJuZWQgZnJvbSBDcmVhdGVTdXJmYWNlLgorCVJlbGF5IEdldENyZWF0aW9uUGFyYW1ldGVycyBjYWxsIHRvIHdpbmVkM2QuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL250ZGxsL2Nkcm9tLmMsIGluY2x1ZGUvY29uZmlnLmguaW46CisJUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlGaXhlZCBkbGxzL250ZGxsL2Nkcm9tLmMgY29tcGlsYXRpb24gaW4gRGFyd2luIGJ5IGFkZGluZyBIQVZFX0lPS2l0CisJZGV0ZWN0aW9uIHRvIGNvbmZpZ3VyZSBhbmQgZGVmaW5pbmcgU0VOU0VCVUZMRU4gYXMga1NlbnNlRGVmYXVsdFNpemUKKwkod2hpY2ggaXMgY29ycmVzcG9uZGluZyBJT0tpdCBlbnVtIHZhbHVlKS4KKworCSogaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS90ZXh0c2Vydi5oOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCB0ZXh0c2Vydi5oLgorCisJKiBkbGxzL2tlcm5lbC9rZXJuZWwxNl9wcml2YXRlLmgsIGRsbHMva2VybmVsL3RodW5rLmMsCisJICBkbGxzL2tlcm5lbC93b3d0aHVuay5jLCB0b29scy93aW5lYnVpbGQvcmVsYXkuYzoKKwlNb3ZlZCBtb3N0IG9mIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBDQUxMMzJfQ0JDbGllbnQoRXgpIHRvIHRoZSBDCisJY29kZS4KKworCSogdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jLCB0b29scy93aW5lYnVpbGQvbWFpbi5jLAorCSAgdG9vbHMvd2luZWJ1aWxkL3dpbmVidWlsZC5tYW4uaW46CisJQWRkZWQgYSAtLXRhcmdldCBvcHRpb24gdG8gYWxsb3cgY3Jvc3MtY29tcGlsYXRpb24uCisKKwkqIGRsbHMveDExZHJ2L3dpbmRvdy5jOgorCVNldCB0aGUgY2xhc3MgcmVzb3VyY2UgbmFtZSB0byB0aGUgbmFtZSBvZiB0aGUgbWFpbiBiaW5hcnkgKHN1Z2dlc3RlZAorCWJ5IFJhc3Rlcm1hbikuCisKKwkqIGluY2x1ZGUvLmN2c2lnbm9yZSwgaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS94bWxkc28uaWRsLAorCSAgaW5jbHVkZS94bWxkc29kaWQuaDoKKwlWaWpheSBLaXJhbiBLYW11anUgPGluZnlxdWVzdEBnbWFpbC5jb20+CisJQWRkZWQgeG1sZHNvLmlkbC4KKworCSogZGxscy9udGRsbC9yZWxheS5jLCB0b29scy93aW5lYnVpbGQvaW1wb3J0LmM6CisJSW1wcm92ZSBhIGJpdCB0aGUgYXNzZW1ibHkgZ2VuZXJhdGVkIGZvciBpbXBvcnQgdGh1bmtzLgorCisJKiBkbGxzL2NyeXB0MzIvZW5jb2RlLmMsIGRsbHMvY3J5cHQzMi90ZXN0cy9lbmNvZGUuYzoKKwlKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJLSBpbXBsZW1lbnQgZW5jb2RpbmcvZGVjb2Rpbmcgb2YgY2VydCBleHRlbnNpb25zCisJLSByZW1vdmUgc29tZSB1bm5lY2Vzc2FyeSBwYXJhbWV0ZXJzIHRvIGludGVybmFsIGZ1bmN0aW9ucworCS0gdGVzdHMgZm9yIGNlcnQgZXh0ZW5zaW9ucworCisJKiBkbGxzL2NhYmluZXQvY2FiZXh0cmFjdC5jLCBkbGxzL3JpY2hlZDIwL2NhcmV0LmMsCisJICBkbGxzL3V4dGhlbWUvZHJhdy5jLCBkbGxzL3V4dGhlbWUvdXhpbmkuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCU1ha2Ugc29tZSBmdW5jdGlvbiBzdGF0aWMuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvZHJpdmVkZXRlY3QuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJQWRkZWQgYmluZm10X21pc2MgdG8gdGhlIGZpbGVzeXN0ZW0gYmxhY2tsaXN0LgorCisJKiBkbGxzL3V4dGhlbWUvbXNzdHlsZXMuYzogRnJhbmsgUmljaHRlciA8ZnJhbmsucmljaHRlckBnbWFpbC5jb20+CisJSGF2ZSB0aGUgdGhlbWUgSU5JIGZpbGUgcGFyc2VkIHVwb24gdGhlbWUgYWN0aXZhdGlvbiBhbmQgbm90IGp1c3Qgd2hlbgorCXRoZSBmaXJzdCB0aGVtZSBkYXRhIGlzIHJlcXVlc3RlZDsgdGhhdCB3YXksIHRoZSB0aGVtZWQgc3lzdGVtIGNvbG9ycworCWFyZSBzZXQgY29ycmVjdGx5IGZyb20gdGhlIHN0YXJ0LCBhbmQgbm90IGp1c3QgYWZ0ZXIgc29tZSB0aGVtZSBkYXRhCisJd2FzIHJlcXVlc3RlZC4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBKdWFuIExhbmcgPGp1YW5fbGFuZ0B5YWhvby5jb20+CisJLSBhZGQgbW9yZSBwcm90b3R5cGVzCisJLSByZWFycmFuZ2UgcHJvdG90eXBlcyBhY2NvcmRpbmcgdG8gdGhlIERMTCB0aGV5J3JlIGluLCB0byBtYWtlCisJICBjb21tZW50cyBjb3JyZWN0CisKKwkqIGRsbHMvdXNlci9kaWFsb2cuYywgZGxscy91c2VyL3Rlc3RzL2RpYWxvZy5jOgorCVJvYmVydCBTaGVhcm1hbiA8cm9iQGNvZGV3ZWF2ZXJzLmNvbT4KKwlHZXREbGdJdGVtVGV4dCBzaG91bGQgYWx3YXlzIHRyeSB0byBOVUxMIHRlcm1pbmF0ZSB0aGUgc3RyaW5nLgorCisyMDA1LTA2LTMwICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBpbmNsdWRlL3dpbmUvdGVzdC5oLCBpbmNsdWRlL3dpbnNvY2suaDoKKwlBdHRlbXB0IGF0IGEgYmV0dGVyIGZpeCBmb3IgdGhlIHdpbnNvY2suaCBwcm9ibGVtcyBvbiBEYXJ3aW4uCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvTmwucmM6IFBhdWwgVnJpZW5zIDxQYXVsLlZyaWVuc0B4czRhbGwubmw+CisJVXBkYXRlIHRoZSBEdXRjaCB0cmFuc2xhdGlvbnMuCisKKwkqIGRsbHMvbXNodG1sL3Byb3RvY29sLmMsIGRsbHMvbXNodG1sL3JzcmMucmM6CisJVXNlIHByb3BlciBzeW1ib2xzIGluc3RlYWQgb2YgbWFnaWMgbnVtYmVyIDIzIGZvciBIVE1MIHJlc291cmNlIHR5cGUuCisKKwkqIHRvb2xzL3dyYy9nZW5yZXMuYywgdG9vbHMvd3JjL25ld3N0cnVjLmMsIHRvb2xzL3dyYy9uZXdzdHJ1Yy5oLAorCSAgdG9vbHMvd3JjL3BhcnNlci5sLCB0b29scy93cmMvcGFyc2VyLnksIHRvb2xzL3dyYy93cmN0eXBlcy5oOgorCUFkZGVkIHN1cHBvcnQgZm9yIEhUTUwgcmVzb3VyY2UgdHlwZS4KKworCSogZGxscy93aW5pbmV0L3Rlc3RzL2h0dHAuYzogQWRkZWQgbWlzc2luZyBMR1BMIGhlYWRlci4KKworCSogaW5jbHVkZS8uY3ZzaWdub3JlLCBpbmNsdWRlL01ha2VmaWxlLmluLCBpbmNsdWRlL21zeG1sLmlkbCwKKwkgIGluY2x1ZGUvbXN4bWwyLmlkbDoKKwlWaWpheSBLaXJhbiBLYW11anUgPGluZnlxdWVzdEBnbWFpbC5jb20+CisJQWRkZWQgbXN4bWwyLmlkbC4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWM6IFZpdGFsaXkgTWFyZ29sZW4gPHdpbmUtcGF0Y2hAa2lldmluZm8uY29tPgorCUZpeCB0ZXN0IGZvciBhcnRzLgorCisJKiBkbGxzL3NoZWxsMzIvTWFrZWZpbGUuaW4sIGRsbHMvc2hlbGwzMi9kZGUuYywKKwkgIGRsbHMvc2hlbGwzMi9zaGVsbDMyX21haW4uYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50IFNoZWxsRERFSW5pdC4KKworCSogZGxscy9tc2kvYWN0aW9uLmMsIGRsbHMvbXNpL2FjdGlvbi5oLCBkbGxzL21zaS9jdXN0b20uYywKKwkgIGRsbHMvbXNpL2hlbHBlcnMuYywgZGxscy9tc2kvdXBncmFkZS5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJS2VlcCB0cmFjayBvZiB3aGF0IHNlcXVlbmNlIHdlIGFyZSBpbiBhbmQgcmVnaXN0ZXIgdW5pcXVlCisJYWN0aW9ucy4gVGhpcyBhbGxvd3MgdXMgdG8gbWFrZSBzdXJlIGFjdGlvbnMgYW5kIGN1c3RvbSBhY3Rpb25zCisJZmxhZ2dlZCB0byBydW4gb25seSBvbmNlLCBhY3R1YWxseSBydW4gb25seSBvbmNlLgorCUFsc28gY2xlYW4gdXAgc29tZSBvZiB0aGUgbnVtZXJpYyBjb25zdGFudHMgaW4gY3VzdG9tLmMgdXNpbmcgdGhlCisJZGVmaW5lZCB2YWx1ZXMgZnJvbSBtc2lkZWZzLmguCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBpbmNsdWRlL2NvbmZpZy5oLmluOgorCVJlbW92ZWQgc29tZSBubyBsb25nZXIgdXNlZCBhc20gY2hlY2tzLgorCisJKiBkbGxzL2NhYmluZXQvZmNpLmMsIGRsbHMvZDNkOC9kaXJlY3R4LmMsIGRsbHMvcnBjcnQ0L3JwY3J0NF9tYWluLmMsCisJICBkbGxzL3NobHdhcGkvb3JkaW5hbC5jLCBkbGxzL3dpbmVkM2QvZGV2aWNlLmMsCisJICBkbGxzL3dpbmVkM2QvZGlyZWN0eC5jLCBkbGxzL3dpbmVkM2Qvd2luZWQzZF9wcml2YXRlLmgsCisJICBkb2N1bWVudGF0aW9uL1BBQ0tBR0lORywgdG9vbHMvd2luZWR1bXAvUkVBRE1FLAorCSAgdG9vbHMvd2luZWR1bXAvd2luZWR1bXAuaCwgdG9vbHMvd2luZWR1bXAvd2luZWR1bXAubWFuOgorCUZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCUFzc29ydGVkIHNwZWxsaW5nIGZpeGVzLgorCisJKiBkbGxzL3VzZXIvc3lzcGFyYW1zLmMsIGRsbHMvdXNlci90ZXN0cy9zeXNwYXJhbXMuYzoKKwlSZXZlcnQgU1BJX1NFVE1PVVNFQlVUVE9OU1dBUCBjaGFuZ2VzLgorCisJKiBkbGxzL21zaHRtbC90ZXN0cy8uY3ZzaWdub3JlLCBkbGxzL21zaHRtbC90ZXN0cy9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvbXNodG1sL3Rlc3RzL3Byb3RvY29sLmM6CisJSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlBZGRlZCByZXMgcHJvdG9jb2wgdGVzdC4KKworCSogZGxscy91c2VyL2RkZV9taXNjLmM6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJRml4IGEgdHlwbyBpbiBSZXVzZURERWxQYXJhbTogR2xvYmFsTG9jayBzdXBwb3NlZCB0byBiZSBHbG9iYWxVbmxvY2suCisKKwkqIGRsbHMvY29tY3RsMzIvaGVhZGVyLmM6IFZpdGFsaXkgTWFyZ29sZW4gPHdpbmUtcGF0Y2hAa2lldmluZm8uY29tPgorCVNlbmQgQ0REU19JVEVNUE9TVEVSQVNFIHwgQ0REU19QUkVQQUlOVCBub3RpZnkuCisKKwkqIGRsbHMvd2luc3Bvb2wvaW5mby5jOiBIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPgorCUZvcndhcmQgU3RhcnREb2NQcmludGVyQSB0byBTdGFydERvY1ByaW50ZXJXLgorCUltcHJvdmUgdHJhY2UgaW4gdGhlIHVuaWNvZGUgdmVyc2lvbi4KKworCSogZGxscy9tc2h0bWwvcnNyYy5yYzogSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlGaXggYmxhbmsuaHRtIHJlc291cmNlcy4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYywgZGxscy9yaWNoZWQyMC9lZGl0c3RyLmgsCisJICBkbGxzL3JpY2hlZDIwL3dyYXAuYzoKKwlQaGlsIEtyeWxvdiA8cGhpbEBuZXdzdGFyLnJpbmV0LnJ1PgorCUltcGxlbWVudGVkIEVNX0dFVExJTkVDT1VOVCBSaWNoRWRpdCBtZXNzYWdlLgorCisJKiB0b29scy93cmMvZ2VucmVzLmMsIHRvb2xzL3dyYy9nZW5yZXMuaCwgdG9vbHMvd3JjL3dyY3R5cGVzLmgsCisJICB0b29scy93cmMvd3JpdGVyZXMuYzoKKwlTdGVmYW4gSHVlaG5lciA8c3RlZmFuQGh1ZWhuZXIub3JnPgorCUZpeCBzb21lIC1Xc2lnbi1jb21wYXJlIHdhcm5pbmdzLgorCisJKiB0b29scy93cmMvcGFyc2VyLmw6IEphY2VrIENhYmFuIDxqYWNrQGl0bWEucHdyLndyb2MucGw+CisJJy4nIGlzIGEgdmFsaWQgY2hhciBvZiB0SURFTlQuCisKKwkqIHByb2dyYW1zL3dpbmVkYmcvd2luZWRiZy5jOiBGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAY29kZXdlYXZlcnMuY29tPgorCUltcHJvdmUgdGhlIHdpbmVkYmcgdXNhZ2UuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvYXVkaW8uYzogRnJhbmNvaXMgR291Z2V0IDxmZ291Z2V0QGZyZWUuZnI+CisJUmVtb3ZlIHVubmVlZGVkIGNhc3RzLgorCisJKiBkbGxzL2tlcm5lbC90ZXN0cy9kaXJlY3RvcnkuYzoKKwlGcmFuY29pcyBHb3VnZXQgPGZnb3VnZXRAY29kZXdlYXZlcnMuY29tPiBmb3IgTWFuZHJpdmEKKwlUZXN0IHRoZSBiZWhhdmlvciBvZiBDcmVhdGVEaXJlY3RvcnkoKSB3aGVuIGl0IGhhcyBvbmUgb3IgdHdvIHRyYWlsaW5nCisJZG90cyBvciBzcGFjZXMuCisJVHdlYWsgdGhlIHByZXZpb3VzIENyZWF0ZURpcmVjdG9yeSgpIHRlc3RzIHNvIHdlIGdldCBtb3JlIGluZm9ybWF0aW9uCisJaW4gY2FzZSBvZiBhIGZhaWx1cmUuCisKKwkqIHRvb2xzL3dpbmFwaS93aW4zMi5hcGk6IEZyYW5jb2lzIEdvdWdldCA8ZmdvdWdldEBmcmVlLmZyPgorCVVwZGF0ZSB3aW4zMi5hcGkgdG8gbWF0Y2ggY3VycmVudCBzb3VyY2VzLgorCisJKiB0b29scy93aW5lYnVpbGQvdXRpbHMuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlGaXhlZCB3aW5lYnVpbGQgb3BlcmF0aW9uIGluIERhcndpbi4KKworCSogZGxscy9zaGVsbDMyL3JlZ3N2ci5jOiBNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJUmVnaXN0ZXIgdW5peGZzIGF0IGRlc2t0b3AgbGV2ZWwgaW4gRGxsUmVnaXN0ZXJTZXJ2ZXIuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGZsZHJfdW5peGZzLmM6CisJTWljaGFlbCBKdW5nIDxtanVuZ0Bpc3MudHUtZGFybXN0YWR0LmRlPgorCUZpeCB0d28gbW9yZSBjb3JuZXIgY2FzZXMgaW4gVU5JWEZTX2dldF91bml4X3BhdGggYW5kIFVOSVhGU19wYXRoX3RvX3BpZGwuCisKKwkqIGRsbHMvbXNpL2RpYWxvZy5jOiBNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJTW92ZSB0byB0aGUgbmV4dCBtYXNrIGVkaXQgZmllbGQgd2hlbiB0aGUgY3VycmVudCBvbmUgYmVjb21lcyBmdWxsLgorCisJKiBpbmNsdWRlL3dpbmNyeXB0Lmg6IEp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwlBZGQgbW9yZSBtaXNzaW5nIE9JRHMuCisKKwkqIGRsbHMvc2hlbGwzMi90ZXN0cy9zaGxmb2xkZXIuYzoKKwlTYXVsaXVzIEtyYXN1Y2thcyA8c2F1bGl1cy5rcmFzdWNrYXNAaWVlZS5vcmc+CisJUHJlcGFyZSBmb3IgYWRkaW5nIG5ldyB0ZXN0cy4KKwktIFB1dCBPbGVJbml0aWFsaXplIGFuZCBPbGVVbmluaXRpYWxpemUgaW4gdGhlIG1haW4gYmxvY2suCisJLSBNb3ZlIHRlc3RfQmluZFRvT2JqZWN0IGJlZm9yZSB0ZXN0X0VudW1PYmplY3RzX2FuZF9Db21wYXJlSURzLgorCisJKiBkbGxzL21zaHRtbC9wcm90b2NvbC5jOiBKYWNlayBDYWJhbiA8amFja0BpdG1hLnB3ci53cm9jLnBsPgorCUltcGxlbWVudGVkIHJlcyBwcm90b2NvbC4KKworCSogZGxscy9tc2kvZGlhbG9nLmM6IE1pa2UgTWNDb3JtYWNrIDxtaWtlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlNYWtlIHRoZSB0YWIgb3JkZXIgaW4gbXNpIGRpYWxvZ3MgcmlnaHQuCisKKwkqIGRsbHMvbnRkbGwvY2Ryb20uYzogR2VyYWxkIFBmZWlmZXIgPGdlcmFsZEBwZmVpZmVyLmNvbT4KKwlBdm9pZCB1bnVzZWQgdmFyaWFibGUgd2FybmluZ3MgaW4gQ0RST01fU2NzaVBhc3NUaHJvdWdoRGlyKCkgYW5kCisJQ0RST01fU2NzaVBhc3NUaHJvdWdoKCkuCisKKwkqIHByb2dyYW1zL3dpbmVtZW51YnVpbGRlci93aW5lbWVudWJ1aWxkZXIuYzoKKwlTdmVuIFBhc2NodWthdCA8U3Zlbi5QYXNjaHVrYXRAdC1vbmxpbmUuZGU+CisJUmVwYWlyZWQgZXh0cmFjdGlvbiBvZiBpY29ucyB3aGVuIGNvbmZpZyBmaWxlIGlzIG1pc3NpbmcuCisKKwkqIGRsbHMvd2luaW5ldC9pbnRlcm5ldC5jOiBSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJQWRkIHN0dWJzIGZvciBzb21lIEludGVybmV0U2V0T3B0aW9uIG9wdGlvbnMuCisKKzIwMDUtMDYtMjkgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHRvb2xzL3dpbmVidWlsZC9idWlsZC5oLCB0b29scy93aW5lYnVpbGQvc3BlYzMyLmMsCisJICB0b29scy93aW5lYnVpbGQvdXRpbHMuYzoKKwlSZXBsYWNlIGNvbmZpZ3VyZSBtYWNyb3MgYnkgZXhwbGljaXQgcGxhdGZvcm0gY2hlY2tzIChwcm9iYWJseSBub3QKKwljb3JyZWN0IG9uIGFsbCBwbGF0Zm9ybXMgeWV0KS4KKworCSogZGxscy9vbGVhdXQzMi9vbGVhdXQuYywgZGxscy9vbGVhdXQzMi9vbGVhdXQzMi5zcGVjLAorCSAgZGxscy9vbGVhdXQzMi9yZWdzdnIuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+CisJUmVuYW1lIE9MRUFVVDMyX0RsbCogRnVuY3Rpb25zIHRvIERsbCouCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydHlwZS5jLCBkbGxzL29sZWF1dDMyL3ZhcmlhbnQuYzoKKwlSb2JlcnQgU2hlYXJtYW4gPHJvYkBjb2Rld2VhdmVycy5jb20+IGZvciBNYW5kcml2YQorCS0gQ29udmVyc2lvbnMgYmV0d2VlbiB2YXJpYW50cyB0eXBlcyBvZiB0aGUgc2FtZSBzaXplIHNob3VsZCBpZ25vcmUKKwkgIG92ZXJmbG93cy4KKwktIFRlc3RzIGZvciB0aGlzIGJlaGF2aW91ci4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6CisJUm9iZXJ0IFNoZWFybWFuIDxyb2JAY29kZXdlYXZlcnMuY29tPiBmb3IgTWFuZHJpdmEKKwlBZGQgYSBnZW5lcmljIFRZUEVERVNDIFZUIHRvIFZBUklBTlQgVlQgbWFwcGVyIHNvIHdlIGNhbiB1c2UgdGhlCisJc3RhbmRhcmQgVmFyaWFudCogcm91dGluZXMuIFVzZSB0aGlzIG5ldyBmdW5jdGlvbiB0byBwcm9wZXJseSBjb3B5ICYKKwlkZS1yZWZlcmVuY2UgdGhlIHJldHVybiB2YWx1ZS4KKworCSogZGxscy9hZHZhcGkzMi90ZXN0cy9zZWN1cml0eS5jLCBkbGxzL250ZGxsL3NlYy5jOgorCUphbWVzIEhhd2tpbnMgPHRydWlrZW5AZ21haWwuY29tPgorCS0gRml4IGNhbGN1bGF0aW9uIG9mIGdlbmVyaWMgcG9pbnRlcnMuCisJLSBNaW5vciBjbGVhbnVwcy4KKworCSogZGxscy93aW5tbS93aW5lYWxzYS9hdWRpby5jOgorCVZpdGFsaXkgTWFyZ29sZW4gPHdpbmUtcGF0Y2hAa2lldmluZm8uY29tPgorCVN5bmMgY29tbWVudHMgd2l0aCBjb25maWd1cmF0aW9uIGxvY2F0aW9uIGNoYW5nZXMuCisKKwkqIHNlcnZlci9jbGlwYm9hcmQuYywgc2VydmVyL3VzZXIuaCwgc2VydmVyL3dpbnN0YXRpb24uYzoKKwlNYWtlIHRoZSBjbGlwYm9hcmQgaW5mb3JtYXRpb24gbG9jYWwgdG8gdGhlIHByb2Nlc3Mgd2luZG93IHN0YXRpb24uCisKKwkqIHNlcnZlci9wcm9jZXNzLmM6CisJQ2xlYXIgdGhlIHByb2Nlc3MgaGFuZGxlIHRhYmxlIGJlZm9yZSByZWxlYXNpbmcgaXQgdG8gYXZvaWQgcG90ZW50aWFsCisJcHJvYmxlbXMgd2l0aCBkZXN0cnVjdG9ycyB0cnlpbmcgdG8gYWNjZXNzIGhhbmRsZXMuCisKKwkqIGRsbHMveDExZHJ2L2luaXQuYywgZGxscy94MTFkcnYvb3BlbmdsLmMsIGRsbHMveDExZHJ2L3gxMWRydi5oLAorCSAgZGxscy94MTFkcnYveDExZHJ2X21haW4uYzoKKwlEZWxheSBPcGVuR0wgYW5kIEdESSBpbml0aWFsaXphdGlvbiB1bnRpbCB0aGV5IGFyZSBuZWVkZWQuCisKKwkqIGRsbHMva2VybmVsL29sZGNvbmZpZy5jOiBHZXQgcmlkIG9mIHRoZSBvbGQgY29uZmlnIGNvbnZlcnNpb24gY29kZS4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYzogQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlJbXBsZW1lbnRhdGlvbiBmb3IgRU1fR0VUVEVYVEVYLgorCisJKiBpbmNsdWRlL01ha2VmaWxlLmluLCBpbmNsdWRlL21zeG1sMmRpZC5oOgorCVZpamF5IEtpcmFuIEthbXVqdSA8aW5meXF1ZXN0QGdtYWlsLmNvbT4KKwlBZGRlZCBkZWZpbmVzIGZvciBYTUxET00gc3R1ZmYuCisKKwkqIGRsbHMvbXNpL2FjdGlvbi5oLCBkbGxzL21zaS9maWxlcy5jLCBkbGxzL21zaS9oZWxwZXJzLmM6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlIYW5kbGUgaW5zdGFsbHMgb2ZmIG11bHRpcGxlIHZvbHVtZXMgYW5kIHByb3Blcmx5IHB1bGwgdGhlIHByb21wdAorCXN0cmluZyBmcm9tIHRoZSBlcnJvciB0YWJsZS4KKworCSogZGxscy9udGRsbC9jZHJvbS5jOiBNaWtlIEhlYXJuIDxtaEBjb2Rld2VhdmVycy5jb20+CisJRml4IEdDQzQgd2FybmluZy4KKworCSogdG9vbHMvd2lkbC90eXBlbGliX3N0cnVjdC5oLCB0b29scy93aWRsL3dyaXRlX21zZnQuYzoKKwlIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPiBmb3IgTWFuZHJpdmEKKwlVcGRhdGUgdGhlIGltcG9ydCB0YWJsZSBjb2RlIHRvIGVsaW1pbmF0ZSBhIGZldyBtYWdpYyBjb25zdGFudHMuCisKKwkqIGRsbHMvb2xlYXV0MzIvdHlwZWxpYi5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIuaCwKKwkgIGRsbHMvb2xlYXV0MzIvdHlwZWxpYjIuYzoKKwlIdXcgRGF2aWVzIDxodXdAY29kZXdlYXZlcnMuY29tPiBmb3IgTWFuZHJpdmEKKwlDb3BlIHdpdGggdGhlIGluZGV4IGluIGEgaW1wb3J0IHRhYmxlIGVudHJ5IGJlaW5nIGEgdHlwZWluZm8gaW5kZXgKKwlyYXRoZXIgdGhhbiBhIGd1aWQgb2Zmc2V0LgorCisJKiBkbGxzL2NhYmluZXQvZmNpLmM6CisJR2Vyb2xkIEplbnMgV3VjaGVycGZlbm5pZyA8Z2p3dWNoZXJwZmVubmlnQGdteC5uZXQ+CisJU3VwcG9ydCBmb3IgYmlnLWVuZGlhbiBzeXN0ZW1zLgorCisJKiBwcm9ncmFtcy9yZWdlZGl0L2xpc3R2aWV3LmM6IEdlcmFsZCBQZmVpZmVyIDxnZXJhbGRAcGZlaWZlci5jb20+CisJQXZvaWQgY29tcGlsZXIgd2FybmluZyBpbiBBZGRFbnRyeVRvTGlzdCgpLgorCisJKiBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmgsIGRsbHMvc2hlbGwzMi9zaGZsZHJfZGVza3RvcC5jLAorCSAgZGxscy9zaGVsbDMyL3NoZmxkcl91bml4ZnMuYzoKKwlNaWNoYWVsIEp1bmcgPG1qdW5nQGlzcy50dS1kYXJtc3RhZHQuZGU+CisJSWYgdGhlIHVuaXhmcyBpcyByb290ZWQgYXQgdGhlIERlc2t0b3AgZm9sZGVyLCBmb3J3YXJkCisJUGFyc2VEaXNwbGF5TmFtZSBjYWxscyB0byBpdCBpbnN0ZWFkIG9mIHRvIE15Q29tcHV0ZXIuCisKKwkqIGluY2x1ZGUvTWFrZWZpbGUuaW4sIGluY2x1ZGUvYmFzZXR5cHMuaDoKKwlTdGV2ZW4gRWR3YXJkcyA8c3RldmVuX2VkNDE1M0B5YWhvby5jb20+CisJQWRkIGJhc2V0eXBzLmggYmFzZWQgb24gdGhlIHB1YmxpYyBkb21haW4gbWluZ3cgaGVhZGVyIGJ5IEFuZGVycworCU5vcmxhbmRlci4KKworCSogaW5jbHVkZS93aW5jcnlwdC5oOiBQYXVsIFZyaWVucyA8cGF1bC52cmllbnNAeHM0YWxsLm5sPgorCUNvcnJlY3Qgc29tZSBPSURzLgorCisJKiBkbGxzL3NoZWxsMzIvdGVzdHMvc2hsZm9sZGVyLmM6CisJVml0YWxpeSBNYXJnb2xlbiA8d2luZS1wYXRjaEBraWV2aW5mby5jb20+CisJSUxGcmVlIGlzIG5vdCBhdmFpbGFibGUgb24gYWxsIHZlcnNpb25zLgorCisJKiBkbGxzL250ZGxsL2Nkcm9tLmM6IERtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQSB3b3JrYXJvdW5kIGZvciBtaXNzaW5nIHN0cnVjdCByZXF1ZXN0X3NlbnNlIG9uIEZyZWVCU0QuCisKKwkqIGRsbHMvY3J5cHQzMi9lbmNvZGUuYywgZGxscy9jcnlwdDMyL3Rlc3RzL2VuY29kZS5jOgorCUp1YW4gTGFuZyA8anVhbl9sYW5nQHlhaG9vLmNvbT4KKwktIGZpeCBkZWNvZGluZyBvZiBsb25nLWZvcm0gZGF0YSBsZW5ndGhzCisJLSB1c2UgZXhjZXB0aW9uIGhhbmRsaW5nIGluIGRlY29kaW5nCisJLSB0ZXN0cyBmb3IgdGhlc2UgY2hhbmdlcworCisJKiBwcm9ncmFtcy93aW5ldGVzdC9NYWtlZmlsZS5pbjogSmFjZWsgQ2FiYW4gPGphY2tAaXRtYS5wd3Iud3JvYy5wbD4KKwlBZGRlZCBtc2h0bWwgdGVzdC4KKworMjAwNS0wNi0yOCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogdG9vbHMvTWFrZWZpbGUuaW46IFJ1biBtYWtlIGNsZWFuIGluIHRoZSB3aW5hcGkgc3ViZGlyIHRvby4KKworCSogZGxscy91c2VyL3Rlc3RzL3dpbnN0YXRpb24uYywgc2VydmVyL2hvb2suYywgc2VydmVyL3RocmVhZC5jLAorCSAgc2VydmVyL3RocmVhZC5oLCBzZXJ2ZXIvd2luZG93LmMsIHNlcnZlci93aW5zdGF0aW9uLmM6CisJS2VlcCB0cmFjayBvZiB0aGUgd2luZG93cyBhbmQgaG9va3MgdXNlZCBieSBhIHRocmVhZCB0byBwcm9wZXJseQorCXJlZnVzZSB0byBjaGFuZ2UgdGhlIHRocmVhZCBkZXNrdG9wIHdoZW4gaXQncyBpbiB1c2UuCisKKwkqIGRsbHMvY29tbWRsZy9jZGxnMTYuaCwgZGxscy9jb21tZGxnL2NvbG9yZGxnLmMsCisJICBkbGxzL2NvbW1kbGcvY29sb3JkbGcxNi5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZy5jLAorCSAgZGxscy9jb21tZGxnL2ZpbGVkbGcxNi5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZzMxLmMsCisJICBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYywgZGxscy9jb21tZGxnL2ZpbGV0aXRsZS5jLAorCSAgZGxscy9jb21tZGxnL2ZpbmRkbGcuYywgZGxscy9jb21tZGxnL2ZvbnRkbGcuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZUBjb2Rld2VhdmVycy5jb20+CisJRml4IGRlY2xhcmF0aW9ucy4KKworCSogZG9jdW1lbnRhdGlvbi9NYWtlZmlsZS5pbjogVGhlIHNhbXBsZXMgc3ViZGlyZWN0b3J5IG5vIGxvbmdlciBleGlzdHMuCisKKwkqIGRsbHMvZ2RpL2ZyZWV0eXBlLmM6CisJRml4ZWQgSEtMTS9IS0NVIG1peHVwIGZvciB0aGUgZXh0ZXJuYWwgZm9udHMga2V5LgorCisJKiBkbGxzL21zaS9hY3Rpb24uYywgZGxscy9tc2kvaGVscGVycy5jLCBkbGxzL21zaS9tc2kuYywKKwkgIGRsbHMvbXNpL21zaXByaXYuaCwgZGxscy9tc2kvcGFja2FnZS5jOgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJUmVsb2NhdGUgdGhlIG1zaSBmaWxlIHRvIHByZXZlbnQgY2QgbG9ja2luZywgY29ycmVjdGVkIHRvIHByb3Blcmx5IG5vdAorCXRyeSB0byByZWxvY2F0ZWQgI25ubm4gaGFuZGxlcyBhcyBmaWxlcy4KKworCSogZGxscy9jb21tZGxnL01ha2VmaWxlLmluLCBkbGxzL2NvbW1kbGcvZmlsZWRsZy5jOgorCU1pY2hhZWwgSnVuZyA8bWp1bmdAaXNzLnR1LWRhcm1zdGFkdC5kZT4KKwlEb24ndCBleHBhbmQgTXlDb21wdXRlciBpbiB0aGUgZmlsZSBkaWFsb2dzIHdpdGhvdXQgdXNlciBpbnRlcmFjdGlvbiwKKwlpZiB1bml4ZnMgaXMgcm9vdGVkIGF0IGRlc2t0b3AuCisKKwkqIHByb2dyYW1zL3dpbmVjZmcvRW4ucmMsIHByb2dyYW1zL3dpbmVjZmcvTWFrZWZpbGUuaW4sCisJICBwcm9ncmFtcy93aW5lY2ZnL2F1ZGlvLmMsIHByb2dyYW1zL3dpbmVjZmcvcmVzb3VyY2UuaDoKKwlSb2JlcnQgUmVpZiA8cmVpZkBlYXJ0aGxpbmsubmV0PgorCS0gQWRkIGFuIGF1ZGlvIGNvbmZpZ3VyZSBidXR0b24gd2l0aCBjb2RlIHRvIGRpc3BsYXkgdGhlIHNlbGVjdGVkCisJICBhdWRpbyBkcml2ZXIncyBjb25maWd1cmUgZGlhbG9nLgorCS0gQWRkIGFuIGF1ZGlvIGNvbnRyb2wgcGFuZWwgbGF1bmNoIGJ1dHRvbi4KKworCSogZGxscy9yaWNoZWQyMC9lZGl0b3IuYzogUGhpbCBLcnlsb3YgPHBoaWxAbmV3c3Rhci5yaW5ldC5ydT4KKwlGaXhlZCBhIGNvbW1lbnQgYWJvdXQgRU1fU1RSRUFNSU4uCisKKwkqIFZFUlNJT04sIGNvbmZpZ3VyZSwgQU5OT1VOQ0UsIENoYW5nZUxvZzogUmVsZWFzZSAyMDA1MDYyOC4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMjAwNS0wNi0yOCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KIAogCSogZGxscy9nZGkvcHJpbnRkcnYuYzoKZGlmZiAtLWdpdCBhL1ZFUlNJT04gYi9WRVJTSU9OCmluZGV4IDNmMTdmYzkuLmFjMDM4ZTEgMTAwNjQ0Ci0tLSBhL1ZFUlNJT04KKysrIGIvVkVSU0lPTgpAQCAtMSArMSBAQAotV2luZSB2ZXJzaW9uIDIwMDUwNjI4CitXaW5lIHZlcnNpb24gMjAwNTA3MjUKZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZSBiL2NvbmZpZ3VyZQppbmRleCBjNTZjODc5Li4xNTk3MzgwIDEwMDc1NQotLS0gYS9jb25maWd1cmUKKysrIGIvY29uZmlndXJlCkBAIC0xLDYgKzEsNiBAQAogIyEgL2Jpbi9zaAogIyBHdWVzcyB2YWx1ZXMgZm9yIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIGFuZCBjcmVhdGUgTWFrZWZpbGVzLgotIyBHZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTkgZm9yIFdpbmUgMjAwNTA2MjguCisjIEdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OSBmb3IgV2luZSAyMDA1MDcyNS4KICMKICMgUmVwb3J0IGJ1Z3MgdG8gPHdpbmUtZGV2ZWxAd2luZWhxLm9yZz4uCiAjCkBAIC0yNjksOCArMjY5LDggQEAKICMgSWRlbnRpdHkgb2YgdGhpcyBwYWNrYWdlLgogUEFDS0FHRV9OQU1FPSdXaW5lJwogUEFDS0FHRV9UQVJOQU1FPSd3aW5lJwotUEFDS0FHRV9WRVJTSU9OPScyMDA1MDYyOCcKLVBBQ0tBR0VfU1RSSU5HPSdXaW5lIDIwMDUwNjI4JworUEFDS0FHRV9WRVJTSU9OPScyMDA1MDcyNScKK1BBQ0tBR0VfU1RSSU5HPSdXaW5lIDIwMDUwNzI1JwogUEFDS0FHRV9CVUdSRVBPUlQ9J3dpbmUtZGV2ZWxAd2luZWhxLm9yZycKIAogYWNfdW5pcXVlX2ZpbGU9InNlcnZlci9hdG9tLmMiCkBAIC03ODgsNyArNzg4LDcgQEAKICAgIyBPbWl0IHNvbWUgaW50ZXJuYWwgb3Igb2Jzb2xldGUgb3B0aW9ucyB0byBtYWtlIHRoZSBsaXN0IGxlc3MgaW1wb3NpbmcuCiAgICMgVGhpcyBtZXNzYWdlIGlzIHRvbyBsb25nIHRvIGJlIGEgc3RyaW5nIGluIHRoZSBBL1VYIDMuMSBzaC4KICAgY2F0IDw8X0FDRU9GCi1cYGNvbmZpZ3VyZScgY29uZmlndXJlcyBXaW5lIDIwMDUwNjI4IHRvIGFkYXB0IHRvIG1hbnkga2luZHMgb2Ygc3lzdGVtcy4KK1xgY29uZmlndXJlJyBjb25maWd1cmVzIFdpbmUgMjAwNTA3MjUgdG8gYWRhcHQgdG8gbWFueSBraW5kcyBvZiBzeXN0ZW1zLgogCiBVc2FnZTogJDAgW09QVElPTl0uLi4gW1ZBUj1WQUxVRV0uLi4KIApAQCAtODUzLDcgKzg1Myw3IEBACiAKIGlmIHRlc3QgLW4gIiRhY19pbml0X2hlbHAiOyB0aGVuCiAgIGNhc2UgJGFjX2luaXRfaGVscCBpbgotICAgICBzaG9ydCB8IHJlY3Vyc2l2ZSApIGVjaG8gIkNvbmZpZ3VyYXRpb24gb2YgV2luZSAyMDA1MDYyODoiOzsKKyAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1cmF0aW9uIG9mIFdpbmUgMjAwNTA3MjU6Ijs7CiAgICBlc2FjCiAgIGNhdCA8PFxfQUNFT0YKIApAQCAtOTg0LDcgKzk4NCw3IEBACiB0ZXN0IC1uICIkYWNfaW5pdF9oZWxwIiAmJiBleGl0IDAKIGlmICRhY19pbml0X3ZlcnNpb247IHRoZW4KICAgY2F0IDw8XF9BQ0VPRgotV2luZSBjb25maWd1cmUgMjAwNTA2MjgKK1dpbmUgY29uZmlndXJlIDIwMDUwNzI1CiBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTkKIAogQ29weXJpZ2h0IChDKSAyMDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpAQCAtOTk4LDcgKzk5OCw3IEBACiBUaGlzIGZpbGUgY29udGFpbnMgYW55IG1lc3NhZ2VzIHByb2R1Y2VkIGJ5IGNvbXBpbGVycyB3aGlsZQogcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2VzIGEgbWlzdGFrZS4KIAotSXQgd2FzIGNyZWF0ZWQgYnkgV2luZSAkYXNfbWUgMjAwNTA2MjgsIHdoaWNoIHdhcworSXQgd2FzIGNyZWF0ZWQgYnkgV2luZSAkYXNfbWUgMjAwNTA3MjUsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU5LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgJCAkMCAkQApAQCAtMjA1NjksNyArMjA1NjksNyBAQAogfSA+JjUKIGNhdCA+JjUgPDxfQ1NFT0YKIAotVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBXaW5lICRhc19tZSAyMDA1MDYyOCwgd2hpY2ggd2FzCitUaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5IFdpbmUgJGFzX21lIDIwMDUwNzI1LCB3aGljaCB3YXMKIGdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OS4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwogCiAgIENPTkZJR19GSUxFUyAgICA9ICRDT05GSUdfRklMRVMKQEAgLTIwNjMyLDcgKzIwNjMyLDcgQEAKIAogY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YKIGFjX2NzX3ZlcnNpb249IlxcCi1XaW5lIGNvbmZpZy5zdGF0dXMgMjAwNTA2MjgKK1dpbmUgY29uZmlnLnN0YXR1cyAyMDA1MDcyNQogY29uZmlndXJlZCBieSAkMCwgZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU5LAogICB3aXRoIG9wdGlvbnMgXFwiYGVjaG8gIiRhY19jb25maWd1cmVfYXJncyIgfCBzZWQgJ3MvW1xcIiJcYFwkXS9cXFxcJi9nJ2BcXCIKIAo=