ZGlmZiAtLWdpdCBhL0FOTk9VTkNFIGIvQU5OT1VOQ0UKaW5kZXggOTE3MDMyNC4uNDI4MTYwNSAxMDA2NDQKLS0tIGEvQU5OT1VOQ0UKKysrIGIvQU5OT1VOQ0UKQEAgLTEsNCArMSw0IEBACi1UaGlzIGlzIHJlbGVhc2UgMjAwMjA2MDUgb2YgV2luZSwgYSBmcmVlIGltcGxlbWVudGF0aW9uIG9mIFdpbmRvd3Mgb24KK1RoaXMgaXMgcmVsZWFzZSAyMDAyMDcxMCBvZiBXaW5lLCBhIGZyZWUgaW1wbGVtZW50YXRpb24gb2YgV2luZG93cyBvbgogVW5peC4gIFRoaXMgaXMgc3RpbGwgYSBkZXZlbG9wZXJzIG9ubHkgcmVsZWFzZS4gIFRoZXJlIGFyZSBtYW55IGJ1Z3MKIGFuZCB1bmltcGxlbWVudGVkIGZlYXR1cmVzLiAgTW9zdCBhcHBsaWNhdGlvbnMgc3RpbGwgZG8gbm90IHdvcmsKIGNvcnJlY3RseS4KQEAgLTYsMTQgKzYsMTIgQEAKIFBhdGNoZXMgc2hvdWxkIGJlIHN1Ym1pdHRlZCB0byAid2luZS1wYXRjaGVzQHdpbmVocS5jb20iLiAgUGxlYXNlIGRvbid0CiBmb3JnZXQgdG8gaW5jbHVkZSBhIENoYW5nZUxvZyBlbnRyeS4KIAotV0hBVCdTIE5FVyB3aXRoIFdpbmUtMjAwMjA2MDU6IChzZWUgQ2hhbmdlTG9nIGZvciBkZXRhaWxzKQotCS0gQmV0dGVyIE1pbmd3IHN1cHBvcnQsIGluY2x1ZGluZyBjcm9zcy1jb21waWxhdGlvbiBvbiBMaW51eC4KLQktIFN0aWxsIG1vcmUgZGxsIHNlcGFyYXRpb24gd29yay4KLQktIFdpbmVsaWIgYXBwbGljYXRpb25zIG5vdyBnZXQgbG9hZGVkIG11Y2ggbGlrZSBidWlsdGluIGRsbHMuCi0JLSBTb21lIGNvbW1hbmQtbGluZSBvcHRpb25zIHJlcGxhY2VkIGJ5IGNvbmZpZyBlbnRyaWVzLgotCS0gTXVsdGltZWRpYSBpbXByb3ZlbWVudHMsIGluY2x1ZGluZyBhbiBNUDMgZGVjb2Rlci4KLQktIE1hc3NpdmUgd2hpdGVzcGFjZSBjbGVhbnVwLgotCS0gTmV3IFdpbmVsaWIgZmlsZSBtYW5hZ2VyLgorV0hBVCdTIE5FVyB3aXRoIFdpbmUtMjAwMjA3MTA6IChzZWUgQ2hhbmdlTG9nIGZvciBkZXRhaWxzKQorCS0gRGlyZWN0U291bmQgOCBhbmQgRGlyZWN0SW5wdXQgOCBzdXBwb3J0LgorCS0gTWFueSBPTEUgaW1wcm92ZW1lbnRzLgorCS0gU3VwcG9ydCBmb3IgZm9udCBkb3dubG9hZGluZyBpbiBQb3N0c2NyaXB0IGRyaXZlci4KKwktIEFMU0Egc291bmQgZHJpdmVyLgorCS0gTW9yZSBwb3J0YWJpbGl0eSBmaXhlcywgcGFydGljdWxhcmx5IGZvciBTcGFyYy4KIAktIExvdHMgb2YgYnVnIGZpeGVzLgogCiBTZWUgdGhlIFJFQURNRSBmaWxlIGluIHRoZSBkaXN0cmlidXRpb24gZm9yIGluc3RhbGxhdGlvbiBpbnN0cnVjdGlvbnMuCkBAIC0yMiwxMCArMjAsMTAgQEAKIHRoZSByZWxlYXNlIGlzIGF2YWlsYWJsZSBhdCB0aGUgZnRwIHNpdGVzLiAgVGhlIHNvdXJjZXMgd2lsbCBiZSBhdmFpbGFibGUKIGZyb20gdGhlIGZvbGxvd2luZyBsb2NhdGlvbnM6CiAKLSAgaHR0cDovL3d3dy5pYmlibGlvLm9yZy9wdWIvTGludXgvQUxQSEEvd2luZS9kZXZlbG9wbWVudC9XaW5lLTIwMDIwNjA1LnRhci5negotICBmdHA6Ly9mdHAuaW5mb21hZ2ljLmNvbS9wdWIvbWlycm9ycy9saW51eC9zdW5zaXRlL0FMUEhBL3dpbmUvZGV2ZWxvcG1lbnQvV2luZS0yMDAyMDYwNS50YXIuZ3oKLSAgZnRwOi8vZnRwLmZ1LWJlcmxpbi5kZS91bml4L2xpbnV4L21pcnJvcnMvc3Vuc2l0ZS51bmMuZWR1L0FMUEhBL3dpbmUvZGV2ZWxvcG1lbnQvV2luZS0yMDAyMDYwNS50YXIuZ3oKLSAgZnRwOi8vb3JjdXMucHJvZ3NvYy51dHMuZWR1LmF1L3B1Yi9XaW5lL2RldmVsb3BtZW50L1dpbmUtMjAwMjA2MDUudGFyLmd6CisgIGh0dHA6Ly93d3cuaWJpYmxpby5vcmcvcHViL0xpbnV4L0FMUEhBL3dpbmUvZGV2ZWxvcG1lbnQvV2luZS0yMDAyMDcxMC50YXIuZ3oKKyAgZnRwOi8vZnRwLmluZm9tYWdpYy5jb20vcHViL21pcnJvcnMvbGludXgvc3Vuc2l0ZS9BTFBIQS93aW5lL2RldmVsb3BtZW50L1dpbmUtMjAwMjA3MTAudGFyLmd6CisgIGZ0cDovL2Z0cC5mdS1iZXJsaW4uZGUvdW5peC9saW51eC9taXJyb3JzL3N1bnNpdGUudW5jLmVkdS9BTFBIQS93aW5lL2RldmVsb3BtZW50L1dpbmUtMjAwMjA3MTAudGFyLmd6CisgIGZ0cDovL29yY3VzLnByb2dzb2MudXRzLmVkdS5hdS9wdWIvV2luZS9kZXZlbG9wbWVudC9XaW5lLTIwMDIwNzEwLnRhci5negogCiBJdCBzaG91bGQgYWxzbyBiZSBhdmFpbGFibGUgZnJvbSBhbnkgb3RoZXIgc2l0ZSB0aGF0IG1pcnJvcnMgaWJpYmxpby5vcmcuCiBGb3IgbW9yZSBkb3dubG9hZCBsb2NhdGlvbnMsIHNlZSBodHRwOi8vZnRwc2VhcmNoLmx5Y29zLmNvbS4gVGhlc2UKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBhZmU3N2E3Li41YzBiNDEzIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDQgKzEsMTM0NiBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorMjAwMi0wNy0xMCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogZGxscy9rZXJuZWwvd3Byb2NzLnNwZWM6CisJQWRkZWQgRlBVIGVtdWxhdGlvbiBpbnRlcnJ1cHRzLgorCisJKiBtc2Rvcy9mcHUuYywgbXNkb3MvaW50M2QuYywgZGxscy9udGRsbC9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvd2luZWRvcy9kb3N2bS5jLCBpbmNsdWRlL21pc2NlbXUuaDoKKwlBZG1pcmFsIENvZXltYW4gPGFkbWlyYWxAY29ybmVyLm5ldD4KKwlBZGRlZCBzdXBwb3J0IGZvciBGUFUgZW11bGF0aW9uIGludGVycnVwdHMuCisKKwkqIGRsbHMvdXNlci91c2VyMzIuc3BlYywgaW5jbHVkZS93aW5kZWYuaCwgaW5jbHVkZS93aW51c2VyLmgsCisJICB3aW5kb3dzL2hvb2suYzoKKwlKb24gR3JpZmZpdGhzIDxqb25fcF9ncmlmZml0aHNAeWFob28uY29tPgorCVN0dWJzL2RvY3MgZm9yIE5vdGlmeVdpbkV2ZW50LFNldFdpbkV2ZW50SG9vayxJc1dpbkV2ZW50SG9va0luc3RhbGxlZCwKKwlVbmhvb2tXaW5FdmVudC4KKworCSogZGxscy9nZGkvZnJlZXR5cGUuYzoKKwlRdWlldCB0aGUgZm9udCBsb2FkaW5nIGVycm9yLgorCisJKiBjb250cm9scy9jb21iby5jOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlDQlVwZGF0ZUVkaXQ6IExCX0dFVFRFWFRMRU4gcmV0dXJucyBMQl9FUlIgb24gZXJyb3IsIG5vdCAwLgorCisJKiBkbGxzL2RkcmF3L2RzdXJmYWNlL2RpYi5jOgorCUZpeGVkIGNvcnJ1cHRpb24gd2hlbiBjb3B5aW5nIHRvIHRoZSBzYW1lIHN1cmZhY2UgKHdpdGggdGhlIGhlbHAgb2YKKwlUb255IExhbWJyZWd0cyBhbmQgTGlvbmVsIFVsbWVyKS4KKworCSogZG9jdW1lbnRhdGlvbi9zYW1wbGVzL2NvbmZpZzoKKwlKb2hhbiBHaWxsIDxqb2hhbmVAbHlzYXRvci5saXUuc2U+CisJNDggd2FzIHBsYWluIHdyb25nIGFzIHZhbHVlIGZvciBIRUxtYXJnaW4uCisKKwkqIGRsbHMvb2xlYXV0MzIvdHlwZWxpYi5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIuaDoKKwlHcmVnZyBNYXR0aW5zb24gPGdtMTM4MjQyQHNjb3QuY2FuYWRhLnN1bi5jb20+CisJRml4ZXMgdG8gYWxsb3cgYmlnIGVuZGlhbiBtYWNoaW5lcyB0byBsb2FkIE1TRlQgdHlwZWxpYiBmaWxlcy4KKworCSogZmlsZXMvZHJpdmUuYzoKKwlGaXhlZCBoYW5kbGluZyBvZiBkcml2ZXMgd2l0aCAiLyIgcGF0aCAodGhhbmtzIHRvIE1hcmN1cyBNZWlzc25lcikuCisKKwkqIGRsbHMvd2luZXBzL3BwZC5jOgorCUNhcmwgU29wY2hhayA8Y2FybC5zb3BjaGFrQGNlZ2lzMTIzLmNvbT4KKwlQYXNzICJNYW51YWwgRmVlZCIgYXMgc2hvcnQgaW5wdXQgc2xvdCBuYW1lLgorCisJKiB3aW4zMi9jb25zb2xlLmM6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJRml4ZWQgc3luY2hyb25pc2F0aW9uIGZvciBjdHJsIGV2ZW50IGdlbmVyYXRpb24uCisKKwkqIGRsbHMvY29tbWRsZy9mb250ZGxnLmM6CisJU2hhY2hhciBTaGVtZXNoIDxzdW5AY29uc3VtZXIub3JnLmlsPgorCS0gRml4ZWQgYWNjZXNzIHRvIHRoZSBscFRlbXBsYXRlTmFtZSBvZiBDaG9vc2VGb250IGluIGNhc2VzIHdoZXJlIHRoZQorCSAgZmxhZ3MgZG9uJ3Qgc3BlY2lmeSB0byB1c2UgaXQuCisJLSBEbyBub3QgdHJ5IHRvIGNvbnZlcnQgdGhlIHJlc291cmNlIG5hbWUgZnJvbSBBTlNJIHRvIFdpZGUgaWYgaXQgaXMgYQorCSAgcmVzdWx0IG9mIE1BS0VJTlRSRVNPVVJDRSAoYW5kIHRoZXJlZm9yZSBub3QgYSBzdHJpbmcpLgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy9hZHZhcGkzMi9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvYWR2YXBpMzIvdGVzdHMvLmN2c2lnbm9yZSwgZGxscy9hZHZhcGkzMi90ZXN0cy9yZWdpc3RyeS5jOgorCUNyZWF0ZWQgcmVnaXN0cnkgdW5pdCB0ZXN0IGFuZCBhZGRlZCB0ZXN0cyBmb3IgUmVnRW51bVZhbHVlW0FXXS4KKworCSogZGxscy9hZHZhcGkzMi9yZWdpc3RyeS5jLCBtZW1vcnkvcmVnaXN0cnkuYzoKKwlSZWdFbnVtVmFsdWVbQVddIG5lZWQgdG8gdXBkYXRlIHRoZSBkYXRhIHNpemUgb24gYnVmZmVyIG92ZXJmbG93CisJKHNwb3R0ZWQgYnkgTWFzc2ltbyA8bWF4QHZlbmV0by5jb20+KS4KKworCSogZGxscy9kZHJhdy9kZHJhd19wcml2YXRlLmgsIGRsbHMvZGRyYXcvZHBhbGV0dGUvbWFpbi5jLAorCSAgZGxscy9kZHJhdy9kc3VyZmFjZS9tYWluLmM6CisJT3ZlIEthYXZlbiA8b3Zla0B0cmFuc2dhbWluZy5jb20+CisJUmVtb3ZlZCB0aGUgZmxhZ3MgZmllbGRzIG9mIElEaXJlY3REcmF3UGFsZXR0ZUltcGwsIGFzIHdlIHNob3VsZCB1c2UKKwl0aGUgZHdGbGFncyBmaWVsZCBvZiBERFJBV0lfRERSQVdQQUxFVFRFX0dCTCBzdHJ1Y3R1cmUgaW5zdGVhZC4KKworCSogZGxscy9kZHJhdy9kc3VyZmFjZS93bmRwcm9jLmM6CisJT3ZlIEthYXZlbiA8b3Zla0B0cmFuc2dhbWluZy5jb20+CisJSGFuZGxlIFdNX1NZTkNQQUlOVCB3aXRoIERlZldpbmRvd1Byb2MuCisKKwkqIGRlYnVnZ2VyL2RlYnVnLmw6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJRW5oYW5jZWQgZXJyb3IgaGFuZGxpbmcgb24gaW5wdXQgc3RyZWFtIHJlYWRpbmcuCisKKwkqIGRlYnVnZ2VyL2V4dF9kZWJ1Z2dlci5jOgorCUVyaWMgUG91ZWNoIDxlcmljLnBvdWVjaEB3YW5hZG9vLmZyPgorCUZpeGVkIGV4dGVybmFsIGRlYnVnZ2VyIHN0YXJ0dXAuCisKKwkqIGRsbHMvd2lubW0vd2lubW1fU2kucmMsIGRsbHMvd2lubW0vd2lubW1fcmVzLnJjOgorCVJvayBNYW5kZWxqYyA8cm9rbWFuZGVsamNAaG90bWFpbC5jb20+CisJQWRkZWQgU2xvdmVuaWFuIHJlc291cmNlcy4KKworCSogZGxscy9zaGVsbDMyL3NobGZvbGRlci5jOgorCVJlaW4gS2xhemVzIDxya2xhemVzQHhzNGFsbC5ubD4KKwlGaXggYnVmZmVyIGxlbmd0aCBjYWxjdWxhdGlvbiBpbiBJbml0aWFsaXplR2VuZXJpY1NGKCkuCisKKwkqIGRsbHMvY29tY3RsMzIvbGlzdHZpZXcuYzoKKwlHdXkgTC4gQWxiZXJ0ZWxsaSA8Z2FsYmVydGVAbmVvLmxydW4uY29tPgorCS0gSW1wcm92ZSB0cmFjZXMuCisJLSBDaGFuZ2VkIGRlZmF1bHQgY29sdW1uIHdpZHRoIHRvIDEyOCB0byBtYXRjaCBuYXRpdmUgYW5kIG1ha2UgdGhhdAorCSAgdGhlIG1pbWltdW0gZm9yIExWU19TTUFMTElDT04gYW5kIExWU19MSVNUIHN0eWxlcy4KKwktIENvcnJlY3RlZCBtYXggdmFsdWUgZm9yIExWU19MSVNUIHN0eWxlIHNjcm9sbCBpbmZvLgorCS0gSXNzdWUgb3VyIG93biBTaG93U2Nyb2xsQmFyIGxpa2UgdGhlIG5hdGl2ZSB3aXRoIHByb3BlciB0ZXN0LgorCS0gQ29ycmVjdCBhbGlnbm1lbnQgd2hlbiB1c2luZyBMVlNfSUNPTiBzdHlsZS4KKwktIENvcnJlY3QgRklYTUVzIGZvciB1bmltcGxlbWVudGVkIHN0eWxlcy4KKwktIENvcnJlY3QgcmVjdCBzaXplIGNvbXB1dGF0aW9uIGZvciBMVlNfTElTVC4KKwktIFJlc2V0IHNjcm9sbCBiYXJzIHdoZW4gY2hhbmdpbmcgc3R5bGVzLgorCS0gSW1wbGVtZW50IFdNX1dJTkRPV1BPU0NIQU5HRUQuCisKKzIwMDItMDctMDkgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvc2hsd2FwaS9NYWtlZmlsZS5pbiwgZGxscy9zaGx3YXBpL2NsaXN0LmMsCisJICBkbGxzL3NobHdhcGkvb3JkaW5hbC5jLCBkbGxzL3NobHdhcGkvc2hsd2FwaS5zcGVjLAorCSAgZGxscy9zaGx3YXBpL3Rlc3RzLy5jdnNpZ25vcmUsIGRsbHMvc2hsd2FwaS90ZXN0cy9jbGlzdC5jOgorCUpvbiBHcmlmZml0aHMgPGpvbl9wX2dyaWZmaXRoc0B5YWhvby5jb20+CisJSW1wbGVtZW50L2RvY3VtZW50IEAxNywxOCwxOSwyMCwyMSwyMiAoQ29tcGFjdCBsaXN0IEFQSSkuCisKKwkqIGRsbHMvb3BlbmdsMzIvbWFrZV9vcGVuZ2wsIGRsbHMvb3BlbmdsMzIvb3BlbmdsX2V4dC5jOgorCUxpb25lbCBVbG1lciA8bGlvbmVsLnVsbWVyQGZyZWUuZnI+CisJU3VwcG9ydCBuZXcgcmVnaXN0ZXJlZCBleHRlbnNpb25zLgorCisJKiBkbGxzL21zdmNydC9maWxlLmM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCV9vcGVuX29zZmhhbmRsZTogc2V0IGF0IGxlYXN0IHRoZSBfSU9SRUFEIGZsYWcuCisKKwkqIHdpbmRvd3MvZGNlLmM6CisJUnlhbiBDdW1taW5nIDxyeWFuQGNvbXBsZXRlbHkua2lja3MtYXNzLm9yZz4KKwlNYWtlIExvY2tXaW5kb3dVcGRhdGUgcmV0dXJuIG1vcmUgV2luZG93cy1saWtlIHZhbHVlcy4KKworMjAwMi0wNy0wOCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogcmVsYXkzMi9yZWxheTM4Ni5jOgorCVJlbW92ZSAuZGxsIGV4dGVuc2lvbiBmcm9tIG1vZHVsZSBuYW1lLCBhZGRlZCB3aWxkY2FyZCBzdXBwb3J0IGluCisJcmVsYXkgc3BlY2lmaWNhdGlvbnMgKHdpdGggdGhlIGhlbHAgb2YgRG1pdHJ5IFRpbW9zaGtvdikuCisKKwkqIG1lbW9yeS9zdHJpbmcuYzoKKwlUb21teSBTY2h1bHR6IExhc3NlbiA8dGxhc3NlbkB0bGFzc2VuLmRrPgorCUZpeGVkIGxzdHJjcHluQSBkZWJ1ZyB0cmFjaW5nLgorCisJKiBkbGxzL21zdmNydC9tc3ZjcnQuc3BlYzoKKwlVd2UgQm9ubmVzIDxib25AZWxla3Ryb24uaWtwLnBoeXNpay50dS1kYXJtc3RhZHQuZGU+CisJZmdldHMsIGZnZXR3czogZG9uJ3QgdHJlYXQgdGhlIHBvc3NpYmxlIHVuaW5pdGlhbGl6ZWQgYnVmZmVycyBhcyB2YWxpZAorCXN0cmluZ3MuCisKKwkqIGRsbHMvbXN2Y3J0L2ZpbGUuYzoKKwlVd2UgQm9ubmVzIDxib25AZWxla3Ryb24uaWtwLnBoeXNpay50dS1kYXJtc3RhZHQuZGU+CisJTVNWQ1JUX2ZyZWFkOiBleHBvc2UgZmVvZiBmbGFnLgorCisJKiB0b29scy93aW5lY2hlY2s6CisJQ2hyaXMgTW9yZ2FuIDxjbW9yZ2FuQGFsdW0ud3BpLmVkdT4KKwlXaW5kb3dzIHJlZ2lzdHJ5IG5vdCBmb3VuZCBzaG91bGQgYmUgYSBub3RpY2UgdG8gdGhlIHVzZXIsIG5vdCBhCisJY3JpdGljYWwgZXJyb3IuCisKKwkqIGRsbHMvdmVyc2lvbi9pbmZvLmM6CisJUmVtb3ZlZCB3b3JrYXJvdW5kIGZvciAxNi1iaXQgbG9hZGVyIGJ1Zy4KKworCSogcHJvZ3JhbXMvbm90ZXBhZC9EYS5yYywgcHJvZ3JhbXMvbm90ZXBhZC9EZS5yYywKKwkgIHByb2dyYW1zL25vdGVwYWQvRW4ucmMsIHByb2dyYW1zL25vdGVwYWQvRXMucmMsCisJICBwcm9ncmFtcy9ub3RlcGFkL0ZpLnJjLCBwcm9ncmFtcy9ub3RlcGFkL0ZyLnJjLAorCSAgcHJvZ3JhbXMvbm90ZXBhZC9NYWtlZmlsZS5pbiwgcHJvZ3JhbXMvbm90ZXBhZC9QdC5yYywKKwkgIHByb2dyYW1zL25vdGVwYWQvUkVBRE1FLCBwcm9ncmFtcy9ub3RlcGFkL1NrLnJjLAorCSAgcHJvZ3JhbXMvbm90ZXBhZC9Tdy5yYywgcHJvZ3JhbXMvbm90ZXBhZC9UT0RPLAorCSAgcHJvZ3JhbXMvbm90ZXBhZC9XYS5yYywgcHJvZ3JhbXMvbm90ZXBhZC9kaWFsb2cuYywKKwkgIHByb2dyYW1zL25vdGVwYWQvZGlhbG9nLmgsIHByb2dyYW1zL25vdGVwYWQvbGFuZ3VhZ2UuYywKKwkgIHByb2dyYW1zL25vdGVwYWQvbGFuZ3VhZ2UuaCwgcHJvZ3JhbXMvbm90ZXBhZC9tYWluLmMsCisJICBwcm9ncmFtcy9ub3RlcGFkL21haW4uaCwgcHJvZ3JhbXMvbm90ZXBhZC9ub3RlcGFkLnJjLAorCSAgcHJvZ3JhbXMvbm90ZXBhZC9ub3RlcGFkX3Jlcy5oLCBwcm9ncmFtcy9ub3RlcGFkL3NlYXJjaC5jOgorCUFuZHJpeSBQYWxhbWFyY2h1ayA8YXBhM2FAeWFob28uY29tPgorCVVzZSByaWNoIHRleHQgZWRpdCBjb250cm9sIGluc3RlYWQgb2YgaGFuZGxpbmcgdXNlciBpbnB1dCBhbmQKKwlyZW5kZXJpbmcgb24gaXRzIG93biwgdXNlIG5hbWVkIGNvbnN0YW50cyBpbnN0ZWFkIG9mIG1hZ2ljIG51bWJlcnMsCisJY2xlYW5lZCBjb2RlLCBpbXBsZW1lbnRlZCBVbmRvIGZ1bmN0aW9uYWxpdHkuCisKKwkqIGRsbHMva2VybmVsL3RodW5rLmM6CisJQW5kcmVhcyBNb2hyIDxhbmRpQHJobHgwMS5maHQtZXNzbGluZ2VuLmRlPgorCS0gQWx3YXlzIGNvcHkgKGFsbW9zdCkgdGhlIHdob2xlIHN0YWNrIHNwYWNlIG92ZXIgdG8gdGhlIDE2Yml0IHN0YWNrCisJICBpbnN0ZWFkIG9mIGNhbGN1bGF0aW5nIHNvbWUgcG90ZW50aWFsbHkgYm9ndXMgcGFyYW1ldGVyIGNvdW50LgorCS0gQWRkIHNvbWUgY29tbWVudHMuCisKKwkqIGluY2x1ZGUvb2xlYXV0by5oOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlGaXhlZCBWX0RFQ0lNQUwgbWFjcm8gdG8gcmVmbGVjdCB3aGVyZSB0aGUgZGVjVmFsIG1lbWJlciBpcyBhY3R1YWxseQorCXN0b3JlZC4KKworCSogZGxscy9tc3ZjcnQvbXN2Y3J0LnNwZWM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCUFkZGVkIF9VQFlBUEFYSUBaIGFuZCBfVkBZQVBBWElAWi4KKworCSogZGxscy9tc3ZjcnQvZmlsZS5jOgorCVV3ZSBCb25uZXMgPGJvbkBlbGVrdHJvbi5pa3AucGh5c2lrLnR1LWRhcm1zdGFkdC5kZT4KKwlNU1ZDUlRfZnNlZWs6IHNob3VsZCByZXR1cm4gMCBvbiBzdWNjZXNzLgorCisJKiBkbGxzL3JpY2hlZGl0L3JlYWRlci5jLCBkbGxzL3JpY2hlZGl0L3JpY2hlZGl0LmMsCisJICBkbGxzL3JpY2hlZGl0L3J0Zi5oLCBkbGxzL3JpY2hlZGl0L3RleHQtd3JpdGVyLmM6CisJRHVhbmUgQ2xhcmsgPGRjbGFya0Bha2FtYWlsLmNvbT4KKwlBZGQgcmljaGVkaXQgc3VwcG9ydCBmb3IgYSBwbGFpbiB0ZXh0IHN0cmVhbS4KKworCSogZG9jdW1lbnRhdGlvbi9ydW5uaW5nLnNnbWw6CisJQW5kcmVhcyBNb2hyIDxhbmRpQHJobHgwMS5maHQtZXNzbGluZ2VuLmRlPgorCUFkZGVkIHNvbWUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvY3VtZW50YXRpb24uCisKKwkqIGRsbHMvb2xlYXV0MzIvb2xlYXV0MzIuc3BlYywgZGxscy9vbGVhdXQzMi92YXJpYW50LmM6CisJSmFzb24gRWRtZWFkZXMgPHVzQHRoZS1lZG1lYWRlcy5kZW1vbi5jby51az4KKwktIFZhckZvcm1hdCBub3cgc3VwcG9ydHMgVlRfUjggYW5kIEJZUkVGIHZhcmlhbnQgdHlwZXMuCisJLSBBZGQgVmFyQ3lNdWxJNCBzdXBwb3J0LgorCisJKiBkbGxzL3dpbm1tL21tc3lzdGVtLmM6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJRml4ZWQgYW5vdGhlciBQbGF5U291bmQgYnVnICh3aGVuIFNORF9MT09QIGlzIHJlcXVlc3RlZCkuCisKKwkqIGRsbHMvd2lubW0vd2luZWFsc2EvYXVkaW9fMDUuYzoKKwlFcmljIFBvdWVjaCA8ZXJpYy5wb3VlY2hAd2FuYWRvby5mcj4KKwlGaXhlZCBhIGZldyBjb21waWxhdGlvbiB3YXJuaW5ncy4KKworCSogZGxscy9vcGVuZ2wzMi93Z2wuYzoKKwlMaW9uZWwgVWxtZXIgPGxpb25lbC51bG1lckBmcmVlLmZyPgorCVN1cHBvcnQgd2dsVXNlRm9udEJpdG1hcHNBIHdoZW4gdXNpbmcgY2xpZW50LXNpZGUgcmVuZGVyaW5nLgorCisyMDAyLTA3LTA1ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL2Rzb3VuZC9NYWtlZmlsZS5pbjoKKwlTdGV2ZW4gRWR3YXJkcyA8c3RldmVuX2VkNDE1M0B5YWhvby5jb20+CisJTmVlZCB0byBpbXBvcnQgbnRkbGwuCisKKwkqIHByb2dyYW1zL3djbWQvZGlyZWN0b3J5LmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCU1vZGlmaWVkIFdDTURfZmlsZXNpemU2NCB0byBoYW5kbGUgdW5zaWduZWQgbnVtYmVycy4KKworCSogZGxscy9hZHZhcGkzMi9yZWdpc3RyeS5jLCBtZW1vcnkvcmVnaXN0cnkuYzoKKwlNb3JlIGV4cGxpY2l0IGluaXRpYWxpemF0aW9uIG9mIGluZm9fc2l6ZSBmb3Igc3R1cGlkIGNvbXBpbGVycy4KKworCSogcHJvZ3JhbXMvdW5pbnN0YWxsZXIvbWFpbi5jOgorCVVzZSBXaW5lIGRlYnVnZ2luZyBBUEkuIEZpeGVkIE1lc3NhZ2VCb3ggbG9vcC4KKworCSogZGxscy9tc3ZjcnQvZmlsZS5jLCBkbGxzL21zdmNydC9tYWluLmMsIGRsbHMvbXN2Y3J0L21zdmNydC5oOgorCUZsdXNoIHN0ZGlvIG9uIGV4aXQuCisKKwkqIGRsbHMvb2RiYzMyL3Byb3h5b2RiYy5jOiBGaXhlZCB3YXJuaW5ncy4KKworCSogZGxscy94MTFkcnYvd2luZWNsaXBzcnYuYywgaW5jbHVkZS93aW5lL2RlYnVnLmgsCisJICBpbmNsdWRlL3dpbm50LmgsIG1zZG9zL2ludDJmLmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCS0gRm9ydGUgQyBkb2VzIG5vdCBzdXBwb3J0IG5hbWVsZXNzIHN0cnVjdHVyZXMgb3IgdW5pb25zCisJLSBJbXBsZW1lbnRlZCBfX2J1aWx0aW5fcmV0dXJuX2FkZHJlc3MgZm9yIEZvcnRlIEMgb24gc3BhcmMKKwktIEltcGxlbWVudGVkIERFQ0xfR0xPQkFMX0NPTlNUUlVDVE9SIGZvciBub24tMzg2LCBub24tR05VIEMKKwktIEltcGxlbWVudGVkIFdJTkVfRFBSSU5URiB0byBoYXZlIGZ1bmN0aW9uIG5hbWUgd2l0aCBGb3J0ZSBDCisKKwkqIGRsbHMvb2xlMzIvbWVtbG9ja2J5dGVzLmM6CisJTWFyY3VzIE1laXNzbmVyIDxtZWlzc25lckBzdXNlLmRlPgorCUFkZGVkIGEgZ2VuZXJpYyB3YXkgb2YgZG9pbmcgR2V0SEdsb2JhbEZyb21JTG9ja0J5dGVzKCkuCisKKwkqIHByb2dyYW1zL3dpbmVsYXVuY2hlci5pbjoKKwlBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJLSBtYWtlIHN1cmUgZXZlbiBHVUkgdXNlcnMgbm90aWNlIGEgIm1pc3NpbmcgeG1lc3NhZ2UiIHByb2JsZW0gYnkKKwkgIGNoZWNraW5nIGZvciB0b25zIG9mIFgxMSBlZGl0b3JzCisJLSByZXBsYWNlIGR1cGxpY2F0ZWQgKDN4KSBjb2RlIHdpdGggZnVuY3Rpb24gbGF1bmNoX3dpbmVzZXR1cCgpCisJLSBpbXByb3ZlZCAid2luZXNldHVwIG5vdCBmb3VuZCIgZXJyb3IgbWVzc2FnZQorCS0gYnJlYWsgbG9vcGluZyAodmlhIGNvZGUgMTI3KSBpbiBjYXNlIG5vIHhtZXNzYWdlIGluc3RhbGxlZAorCS0gc3RyZXNzIHRoZSBmYWN0IHRoYXQgcGVvcGxlIHNob3VsZCByZW1lbWJlciB0aGF0IHRoZXkgY2FuIHJlZ2FpbiBjZXJ0YWluCisJICBzZXR0aW5ncyBieSBkZWxldGluZyBmbGFnIGZpbGVzCisJLSBzcGVsbGluZyBmaXhlcworCisJKiBkbGxzL2tlcm5lbC9mb3JtYXRfbXNnLmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCUltcGxlbWVudGVkIEZvcm1hdE1lc3NhZ2UgZm9yIHNwYXJjLiAgU2luY2UgdGhlIHZhX2xpc3QgaXMgc3RvcmVkIGluCisJbWVtb3J5IGxpa2UgX19pMzg2X18sIHRoZSBzYW1lIGltcGxlbWVudGF0aW9uIHNob3VsZCB3b3JrLgorCisJKiBkbGxzL2Rzb3VuZC9kc291bmRfbWFpbi5jLCBkbGxzL3gxMWRydi94MTFkcnZfbWFpbi5jLAorCSAgbG9hZGVyL2xvYWRvcmRlci5jLCBtaXNjL3ZlcnNpb24uYzoKKwlObyBuZWVkIHRvIGNhbGwgR2V0TW9kdWxlRmlsZU5hbWUxNiBub3cgdGhhdCBHZXRNb2R1bGVGaWxlTmFtZUEKKwloYW5kbGVzIDE2LWJpdCB0YXNrcy4KKworCSogbG9hZGVyL21vZHVsZS5jOgorCUZpeGVkIEdldE1vZHVsZUZpbGVOYW1lVyByZXR1cm4gdmFsdWUuCisJUXVpZXQgZGxsIGxvYWRpbmcgZXJyb3IgbWVzc2FnZS4KKworCSogcmVsYXkzMi9idWlsdGluMzIuYzoKKwlSZXR1cm4gRVJST1JfQkFEX0VYRV9GT1JNQVQgd2hlbiBidWlsdGluIGRsbCBzdGlsbCBub3QgZm91bmQsIHNpbmNlIHdlCisJbW9zdCBsaWtlbHkgbG9hZGVkIGEgMTYtYml0IGJ1aWx0aW4uCisKKwkqIHdpbmRvd3MvcGFpbnRpbmcuYzoKKwlNb3ZlZCBNc2dXYWl0Rm9yTXVsdGlwbGVPYmplY3RzIGNhbGwgb3V0IG9mIHRoZSB3aW5kb3cgbG9jay4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvcGF0aC5jOgorCUR1YW5lIENsYXJrIDxkY2xhcmtAYWthbWFpbC5jb20+CisJQWRkIGRyaXZlIGxldHRlciBhbmQgVW5peCBwYXRoIHRlc3RzIG9mIEdldEZ1bGxQYXRoTmFtZUEuCisKKwkqIGRsbHMvb2xlYXV0MzIvdmFyaWFudC5jOgorCUphc29uIEVkbWVhZGVzIDx1c0B0aGUtZWRtZWFkZXMuZGVtb24uY28udWs+CisJRW5zdXJlIFZhckJzdHJDYXQgaGFuZGxlcyBudWxsIHBhcm1zIGFzIHBlciB3aW5kb3dzIGFuZCBhY3R1YWxseSBkb2VzCisJdGhlIGNvbmNhdGVuYXRpb24gZXZlbiBmb3IgbnVsbCBhcmdzLgorCisJKiBkbGxzL2FkdmFwaTMyL3JlZ2lzdHJ5LmM6CisJUmVpbiBLbGF6ZXMgPHJrbGF6ZXNAeHM0YWxsLm5sPgorCUNoZWNrIGZvciBOVUxMIGtleXZhbHVlIGluIFJlZ0VudW1LZXlFeEEvVy4KKworCSogY29udHJvbHMvbGlzdGJveC5jOgorCUNvbWJvTEJXbmRQcm9jOiBmYWxsIHRocm91Z2ggdG8gTGlzdEJveFduZFByb2MgaWYgdGhlIGxpc3Rib3ggaXMgbm90IGEKKwlDb21ib0xCb3guCisKKwkqIGRvY3VtZW50YXRpb24vc2FtcGxlcy9jb25maWc6CisJUmVtb3ZlZCAic28iIGZyb20gdGhlIGRlZmF1bHQgbG9hZCBvcmRlci4KKworCSogZGxscy91c2VyL21lc3NhZ2UuYywgZGxscy91c2VyL21zZzE2LmMsIGRsbHMvdXNlci91c2VyLmV4ZS5zcGVjLAorCSAgaW5jbHVkZS93aW5lL3dpbnVzZXIxNi5oLCB3aW5kb3dzL2RpYWxvZy5jOgorCVRyaWVkIHRvIG1ha2UgSXNEaWFsb2dNZXNzYWdlVyBtb3JlIGNvbXBhdGlibGUuIENoYW5nZWQKKwlJc0RpYWxvZ01lc3NhZ2UxNi9BIHRvIGNhbGwgSXNEaWFsb2dNZXNzYWdlVy4KKworCSogdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jLCB0b29scy93aW5lYnVpbGQvbWFpbi5jLAorCSAgdG9vbHMvd2luZWJ1aWxkL3NwZWMzMi5jOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwktIFJlcGxhY2VkIC5wcmV2aW91cyB3aXRoIGEgLnNlY3Rpb24gc3RhdGVtZW50IGZvciB0aGUgYXBwcm9wcmlhdGUKKwkgIHNlY3Rpb24uCisJLSAnLnNlY3Rpb24gLnRleHQnIGlzIGluY29ycmVjdC4gIEl0IHNob3VsZCBiZSAnLnNlY3Rpb24gIi50ZXh0IicuCisKKwkqIGRsbHMvbXN2Y3J0L2hlYXAuYzoKKwlVd2UgQm9ubmVzIDxib25AZWxla3Ryb24uaWtwLnBoeXNpay50dS1kYXJtc3RhZHQuZGU+CisJTVNWQ1JUX29wZXJhdG9yX25ldzogQ2FsbCBoYW5kbGVyIG9ubHkgd2hlbiAibmV3IiBvcGVyYXRpb24gZmFpbHMuCisKKwkqIGxvYWRlci9tb2R1bGUuYzoKKwlKb3NodWEgVGhpZWxlbiA8dGhpZWxlbkBuZXRwcmluY2UubmV0PgorCUNoYW5nZWQgR2V0TW9kdWxlRmlsZU5hbWVBIHRvIHVzZSBHZXRDdXJyZW50VGFzayBpbnN0ZWFkIG9mCisJTU9EVUxFMzJfTG9va3VwSE1PRFVMRSB3aGVuIGNhbGxlZCBieSBhIDE2LWJpdCB0YXNrLgorCisyMDAyLTA3LTAzICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL21zdmNydC9maWxlLmMsIGRsbHMvbXN2Y3J0L21pc2MuYywgZGxscy9zaGx3YXBpL29yZGluYWwuYywKKwkgIGRsbHMvd2luaW5ldC9odHRwLmMsIGRsbHMvd2lubW0vbG9sdmxkcnYuYywgZmlsZXMvc21iLmMsCisJICBncmFwaGljcy94MTFkcnYvZGliLmMsIG1lbW9yeS9nbG9iYWwuYywgbWVtb3J5L3NlbGVjdG9yLmMsCisJICBtZW1vcnkvdmlydHVhbC5jLCB0b29scy93aW5lZHVtcC9wZS5jLCB3aW5kb3dzL3N5c2NvbG9yLmMsCisJICBkZWJ1Z2dlci9tb2R1bGUuYywgZGxscy9kcGxheXgvZHBsYXl4X2dsb2JhbC5jOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlDYXN0IHZvaWQqIHRvIGNoYXIqIGZvciBwb2ludGVyIGFyaXRobWV0aWMuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbG9yZC5jOgorCUR1YW5lIENsYXJrIDxkY2xhcmtAYWthbWFpbC5jb20+CisJc3RyY2FzZWNtcCByZXR1cm5zIHplcm8gb24gYSBtYXRjaC4KKworCSogZGxscy9jb21jdGwzMi9wYWdlci5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZzk1LmMsCisJICBkbGxzL2RkcmF3L2RkcmF3L3RodW5rcy5jLCBkbGxzL2RkcmF3L2RzdXJmYWNlL3RodW5rcy5jLAorCSAgZGxscy9vZGJjMzIvcHJveHlvZGJjLmMsIGRsbHMvd2luc29jay9zb2NrZXQuYywKKwkgIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCVJlbW92ZWQgbm9uLXN0YXRpYyBzdHJ1Y3R1cmUgaW5pdGlhbGl6ZXJzLgorCisJKiBkbGxzL3dpbmVkb3MvdmdhLmM6CisJQW5kcmVhcyBNb2hyIDxhbmRpQHJobHgwMS5maHQtZXNzbGluZ2VuLmRlPgorCUJldHRlciB0b2dnbGUgYWxsIHJlbGV2YW50IGJpdHMgaW4gVkdBIGNydCByZWdpc3Rlci4KKworCSogc2VydmVyL21haW4uYywgc2VydmVyL29iamVjdC5oLCBzZXJ2ZXIvc29jay5jOgorCU1hcnRpbiBXaWxjayA8TWFydGluLldpbGNrQGZ1aml0c3Utc2llbWVucy5jb20+CisJQ2hlY2sgUE9MTEhVUCBzZW1hbnRpY3MgYXQgcmVtb3RlIHNodXRkb3duIHdoZW4gd2luZXNlcnZlciBpcyBzdGFydGVkLgorCUZpeCBzb2NrZXQgc3RhdGUgaGFuZGxpbmcgYW5kIGV2ZW50IGhhbmRsaW5nIGZvciBub24tU1RSRUFNIHNvY2tldHMuCisKKwkqIGdyYXBoaWNzL3gxMWRydi9kaWIuYzoKKwlGaXhlZCBYMTFEUlZfU2V0RElCaXRzVG9EZXZpY2UgdG8gZG8gdGhlIHJpZ2h0IHRoaW5nIGZvciB0b3AtZG93bgorCWFuZC9vciBwYXJ0aWFsIGJpdG1hcHMuCisKKwkqIGRvY3VtZW50YXRpb24vZGVidWdnZXIuc2dtbCwgZG9jdW1lbnRhdGlvbi9kZWJ1Z2dpbmcuc2dtbDoKKwlUb255IExhbWJyZWd0cyA8dG9ueV9sYW1icmVndHNAdGVsdXNwbGFuZXQubmV0PgorCURvY3VtZW50IHRoZSBuZXcgdHJhY2UtcmVsYXRlZCB3aW5lZGJnIGNvbW1hbmRzLgorCisJKiBkbGxzL2RkcmF3L2RzdXJmYWNlL2Zha2V6YnVmZmVyLmMsIGRsbHMvbnRkbGwvcnRsc3RyLmMsCisJICBkbGxzL3NoZWxsMzIvc2hlbGxwYXRoLmMsIGRsbHMvdXNlci93bmQxNi5jOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlWb2lkIGZ1bmN0aW9ucyBjYW4ndCByZXR1cm4gYSB2YWx1ZSwgZXZlbiBpZiBpdCBpcyB0aGUgcmV0dXJuIHZhbHVlCisJZnJvbSBhbm90aGVyIHZvaWQgZnVuY3Rpb24uCisKKwkqIGdyYXBoaWNzL3gxMWRydi9pbml0LmMsIGRsbHMvb3BlbmdsMzIvd2dsLmM6CisJTGlvbmVsIFVsbWVyIDxsaW9uZWwudWxtZXJAZnJlZS5mcj4KKwlEZXRlY3QgRENzIHdpdGhvdXQgZm9udHMgYW5kIHJldHVybiBhbiBlcnJvciBpbiB3Z2xVc2VCaXRtYXBGb250cy4KKworCSogcHJvZ3JhbXMvd2luaGVscC9tYWNyby5sZXgubDoKKwlHcmVnZyBNYXR0aW5zb24gPGdtMTM4MjQyQHNjb3QuY2FuYWRhLnN1bi5jb20+CisJUmVtb3ZlZCB1bnVzdWFsIHR5cGUgY2FzdGluZy4KKworCSogcHJvZ3JhbXMvcmVnZWRpdC9yZWdlZGl0LmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCUF2b2lkIG11bHRpLWxpbmUgc3RyaW5nIGNvbnN0YW50cy4KKworCSogaW5jbHVkZS9zaGx3YXBpLmgsIGluY2x1ZGUvd2luZS9vYmpfc2hlbGxmb2xkZXIuaDoKKwlHcmVnZyBNYXR0aW5zb24gPGdtMTM4MjQyQHNjb3QuY2FuYWRhLnN1bi5jb20+CisJUmVtb3ZlZCBleHRyYSAsIGZyb20gbGFzdCBlbGVtZW50IGluIGVudW0gZGVjbGFyYXRpb25zLgorCisJKiBpbmNsdWRlL2Rzb3VuZC5oOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlSZW1vdmVkIGV4dHJhIDsgZnJvbSBlbmQgb2YgSUNPTV9NRVRIT0QgbWFjcm9zLgorCisJKiBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvLmM6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJRml4ZWQgc29tZSBtb3JlIGNvbmZpZ3VyYXRpb24gaXNzdWVzLgorCisJKiBkbGxzL3dpbmVkb3MvaW50MTYuYzoKKwlBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJTWFrZSBzdXJlIHdlIHdhaXQgc29tZSB0aW1lIGR1cmluZyBpbnQxNiBrZXlib2FyZCBxdWVyeSBjYWxsLgorCisJKiBkbGxzL3dpbmVkb3MvdmdhLmM6CisJQW5kcmVhcyBNb2hyIDxhbmRpQHJobHgwMS5maHQtZXNzbGluZ2VuLmRlPgorCUFkZGVkIGEgRE9TIHRleHQgbW9kZSBtZW1vcnkgYnVmZmVyIGNvcHkgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byB0ZWxsCisJd2hpY2ggbGluZXMgb2YgdGV4dCBjaGFuZ2VkIGFuZCB0aHVzIHdoaWNoIG9uZXMgdG8gdXBkYXRlLgorCisJKiBtc2Rvcy9pbnQyZi5jOgorCUFuZHJlYXMgTW9ociA8YW5kaUByaGx4MDEuZmh0LWVzc2xpbmdlbi5kZT4KKwlDYWxsIFNsZWVwIGZvciBpbnQgMHgyZiBmdW5jdGlvbiAweDE2ODAgKElETEUgQ0FMTCkuCisKKzIwMDItMDctMDIgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHByb2dyYW1zL3dpbmVjb25zb2xlL3VzZXIuYzoKKwlSZW1vdmVkIHJlZHVuZGFudCBHZXRNZXNzYWdlIGNhbGwuCisKKwkqIGRsbHMvbXNhY20vbXNhZHAzMi9tc2FkcDMyLmMsIGRsbHMvc2hlbGwzMi9kZWJ1Z2hscC5oLAorCSAgZGxscy93aW5tbS93aW5lYWxzYS9hdWRpby5jLCBmaWxlcy9zbWIuYywgbG9hZGVyL3BlX2ltYWdlLmMsCisJICBwcm9ncmFtcy9jbG9jay9sYW5ndWFnZS5jLCBwcm9ncmFtcy9ub3RlcGFkL2xhbmd1YWdlLmMsCisJICBwcm9ncmFtcy93aW5oZWxwL3dpbmhlbHAuYzoKKwlGaXhlZCB3YXJuaW5ncy4KKworCSogZGxscy9NYWtlZmlsZS5pbiwgZGxscy9zaGx3YXBpL01ha2VmaWxlLmluLAorCSAgZGxscy9zaGx3YXBpL29yZGluYWwuYywgZGxscy9zaGx3YXBpL3N0cmluZy5jOgorCUp1ZXJnZW4gU2NobWllZCA8anVlcmdlbnNjaG1pZWRAbHljb3MuZGU+CisJLSBpbXBsZW1lbnRhdGlvbnMgZm9yIFNITFdBUElfMjY3LCBTSExXQVBJXzI2OAorCS0gc21hbGwgZml4ZXMKKworCSogZGxscy9jb21tZGxnL2ZpbGVkbGc5NS5jLCBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYywKKwkgIGRsbHMvc2hlbGwzMi9jbGlwYm9hcmQuYywgZGxscy9zaGVsbDMyL2RlYnVnaGxwLmMsCisJICBkbGxzL3NoZWxsMzIvcGlkbC5jLCBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmMsCisJICBkbGxzL3NoZWxsMzIvc2hlbGwzMl9tYWluLmgsIGRsbHMvc2hlbGwzMi9zaGVsbGxpbmsuYywKKwkgIGRsbHMvc2hlbGwzMi9zaGVsbG9sZS5jLCBkbGxzL3NoZWxsMzIvc2hlbGxvcmQuYywKKwkgIGRsbHMvc2hlbGwzMi9zaGVsbHN0cmluZy5jLCBkbGxzL3NoZWxsMzIvc2hsZm9sZGVyLmMsCisJICBkbGxzL3NoZWxsMzIvdW5kb2NzaGVsbC5oLCBpbmNsdWRlL3dpbmUvb2JqX3NoZWxsZm9sZGVyLmg6CisJSnVlcmdlbiBTY2htaWVkIDxqdWVyZ2Vuc2NobWllZEBseWNvcy5kZT4KKwktIGNoYW5nZWQgU1RSUkVUIGRlZmluaXRpb24KKwktIHNtYWxsIGNoYW5nZXMgZm9yIHNlcGVyYXRpb24gb2Ygc2hlbGwzMiBmcm9tIG9sZTMyCisJLSBkZWJ1Z2hlbHBlciBmb3IgcHJpbnRpbmcgaW50ZXJmYWNlIG5hbWVzIChzaGVsbCBpbnRlcm5hbCkKKwktIGNoYW5nZWQgc2hlbGwgbWVtb3J5IGFsbG9jYXRpb24gdG8gdXNlIElNYWxsb2Mgb2Ygb2xlMzIgd2hlbiB0aGlzCisJICBsaWJyYXJ5IGlzIGFscmVhZHkgbG9hZGVkCisJLSBmYWxsYmFjayBJTWFsbG9jIGludGVybmFsbHkgaW4gc2hlbGwKKwktIHVuaWZpZWQgY29uc3RydWN0b3Igc3ludGF4IGZvciBzZXZlcmFsIG9iamVjdHMgIGNyZWF0ZWQgYnkgRGxsR2V0Q2xhc3NPYmplY3QKKwktIHJld3JvdGUgaW5zdGFuY2UgY3JlYXRpb24gZm9yIGNvbSBvYmplY3RzCisJLSBtYWRlIHRoZSBkZXNrdG9wIGZvbGRlciBwYXJzaW5nIHBhdGhzIGxpa2UgOjp7Q0xTSUR9CisJLSBJbXBsZW1lbnRlZCBJUGVyc2lzdEZvbGRlcjMgcGFydGlhbGx5CisKKzIwMDItMDctMDEgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIHByb2dyYW1zL3dpbmVjb25zb2xlL3VzZXIuYywgcHJvZ3JhbXMvd2luZWNvbnNvbGUvd2luZWNvbnNvbGUuYywKKwkgIHByb2dyYW1zL3dpbmVjb25zb2xlL3dpbmVjb25zb2xlX0RlLnJjLAorCSAgcHJvZ3JhbXMvd2luZWNvbnNvbGUvd2luZWNvbnNvbGVfRW4ucmMsCisJICBwcm9ncmFtcy93aW5lY29uc29sZS93aW5lY29uc29sZV9Gci5yYywKKwkgIHByb2dyYW1zL3dpbmVjb25zb2xlL3dpbmVjb25zb2xlX3Jlcy5oLAorCSAgcHJvZ3JhbXMvd2luZWNvbnNvbGUvd2luZWNvbnNvbGVfcmVzLnJjLCBzZXJ2ZXIvY29uc29sZS5jOgorCUFuZHJlYXMgTW9ociA8YW5kaUByaGx4MDEuZmh0LWVzc2xpbmdlbi5kZT4KKwktIFVzZSBQZWVrTWVzc2FnZSBsb29wIGFyb3VuZCBHZXRNZXNzYWdlLgorCS0gQWRkZWQgR2VybWFuIHJlc291cmNlIGZpbGUuCisJLSBSZWFsaWduIHNvbWUgZGlhbG9nIHBhcnRzLgorCS0gIlByb3BlcnR5IiAtPiAiUHJvcGVydGllcyIKKwktIEFkZCBzb21lIHRyYWNlcy4KKworCSogZGxscy9zaGx3YXBpL29yZGluYWwuYywgZGxscy9zaGx3YXBpL3NobHdhcGkuc3BlYzoKKwktIHN0dWJzIGZvciBTSExXQVBJLjI5NSAoY3JlYXRlIGEgVVJMIHNob3J0Y3V0ID8pIGFuZCBTSExXQVBJLjM5NAorCS0gbWlub3IgY2xlYW51cHMKKworCSogd2luZWRlZmF1bHQucmVnOgorCUFuZHJlYXMgTW9ociA8YW5kaUByaGx4MDEuZmh0LWVzc2xpbmdlbi5kZT4KKwlBZGRlZCB0aGUgRmlyc3RJbnN0YWxsRGF0ZVRpbWUga2V5LgorCisJKiBkbGxzL250ZGxsL2hlYXAuYzoKKwlNYWtlIHN1cmUgYWxsb2NhdGVkIGJsb2NrcyBhcmUgYWxpZ25lZCBvbiBhbiA4LWJ5dGUgYm91bmRhcnkuCisKKwkqIGFjbG9jYWwubTQsIGNvbmZpZ3VyZToKKwlIb3BlZnVsbHkgbW9yZSBwb3J0YWJsZSBlcnJubyBjaGVjay4KKworCSogUkVBRE1FLCBkbGxzL01ha2VmaWxlLmluLCBkbGxzL21ha2VfZGxscywKKwkgIGRvY3VtZW50YXRpb24vTWFrZWZpbGUuaW4sIE1ha2VmaWxlLmluOgorCUZpeGVkIG1ha2UgaW5zdGFsbCBmcm9tIHJlYWQtb25seSBidWlsZCBkaXJlY3RvcnkgKHNwb3R0ZWQgYnkgTWFyY3VzCisJTWVpc3NuZXIpLgorCisJKiB3aW5kb3dzL21lc3NhZ2UuYzoKKwlSZWxlYXNlIHRoZSBXaW4xNiBsb2NrIGJlZm9yZSB3YWl0aW5nIGluIE1zZ1dhaXRGb3JNdWx0aXBsZU9iamVjdHNFeC4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGluY2x1ZGUvY29uZmlnLmguaW4sIGxpYnJhcnkvY29uZmlnLmM6CisJQWRkZWQgY29uZmlndXJlIGNoZWNrIGZvciBnZXRwd3VpZC4KKworCSogZGxscy9udGRsbC90aW1lLmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCUF2b2lkIGFsaWdubWVudCBwcm9ibGVtIGluIE50UXVlcnlTeXN0ZW1UaW1lLgorCisJKiBkbGxzL3dpbmVkb3MvaW50MTAuYywgZGxscy93aW5lZG9zL3ZnYS5jLCBkbGxzL3dpbmVkb3MvdmdhLmgsCisJICBpbmNsdWRlL21pc2NlbXUuaDoKKwlBbmRyZWFzIE1vaHIgPGFuZGlAcmhseDAxLmZodC1lc3NsaW5nZW4uZGU+CisJSW1wbGVtZW50ZWQgc2V0IGN1cnNvciBzaGFwZSBmdW5jdGlvbmFsaXR5LgorCisJKiBmaWxlcy9wcm9maWxlLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VtQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXR1cm4gdGhlIGNvcnJlY3QgbGVuZ3RoIHdoZW4gZ2V0dGluZyBhIGNvbXBsZXRlIHNlY3Rpb24gaW4KKwlQUk9GSUxFX0dldFN0cmluZy4KKworCSogZGxscy9vbGUzMi9oZ2xvYmFsc3RyZWFtLmMsIGRsbHMvb2xlMzIvaWZzLmM6CisJSnVlcmdlbiBTY2htaWVkIDxqdWVyZ2Vuc2NobWllZEBseWNvcy5kZT4KKwlTdXBwb3J0IGZvciBsYXJnZSBhbmQgbmVnYXRpdmUgb2Zmc2V0cy4KKworMjAwMi0wNi0yOCAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogb2JqZWN0cy9iaXRtYXAuYzoKKwlCSVRNQVBfU2VsZWN0T2JqZWN0IG11c3QgcmV0dXJuIHRoZSBvbGQgaGFuZGxlLCBub3QgdGhlIGN1cnJlbnQgb25lLgorCisJKiB3aW5kb3dzL2RlZmRsZy5jOgorCUNoZWNrIGZvciB2YWxpZCBkaWFsb2cgaW5mbyBiZWZvcmUgdXNpbmcgaXQuCisKKwkqIGRsbHMvc2hlbGwzMi9kaWFsb2dzLmM6CisJTml4IE4uIE5peCA8bml4QGdvLW5peC5jYT4KKwlSZW1vdmVkIG1lc3NhZ2UgYm94IHRoYXQgd291bGQgcG9wIHVwIGlmIGEgUnVuTVJVIGxpc3Qgd2FzIG5vdCBmb3VuZC4KKworCSogZGxscy9jb21jdGwzMi9jb21jdGxfU2kucmMsIGRsbHMvY29tY3RsMzIvcnNyYy5yYywKKwkgIGRsbHMvY29tbWRsZy9jZGxnX1NpLnJjLCBkbGxzL2NvbW1kbGcvcnNyYy5yYzoKKwlSb2sgTWFuZGVsamMgPHJva21hbmRlbGpjQGhvdG1haWwuY29tPgorCUFkZGVkIFNsb3ZlbmlhbiByZXNvdXJjZXMuCisKKwkqIGRsbHMvdXNlci90ZXN0cy9zeXNwYXJhbXMuYywgd2luZG93cy9zeXNwYXJhbXMuYzoKKwlQaGlsaXBwIFdvbGxlcm1hbm4gPHBoaWxfd29AZ214Lm5ldD4KKwlJbXBsZW1lbnRlZCBTUElfR0VUREVTS1dBTExQQVBFUiBhY3Rpb24sIGZpeGVkIFNQSV9TRVRERVNLV0FMTFBBUEVSLgorCisJKiBkbGxzL2RkcmF3L2RzdXJmYWNlL3VzZXIuYzoKKwlKdWtrYSBIZWlub25lbiA8amhlaUBpa2kuZmk+CisJRGlzYWJsZSBPV05fV0lORE9XIGFzIGl0IG5vIGxvbmdlciB3b3Jrcy4KKworCSogY29uZmlndXJlLCBjb25maWd1cmUuYWMsIGRsbHMvd2lubW0vd2luZWFsc2EvTWFrZWZpbGUuaW4sCisJICBkbGxzL3dpbm1tL3dpbmVhbHNhL2Fsc2EuaCwgaW5jbHVkZS9jb25maWcuaC5pbjoKKwlBZGRlZCBzb21lIEFMU0EgY29uZmlndXJlIGNoZWNrcy4KKworCSogY29uZmlndXJlLmFjLCBkbGxzL01ha2VmaWxlLmluLCBkbGxzL3dpbm1tL3dpbmVhbHNhLy5jdnNpZ25vcmUsCisJICBkbGxzL3dpbm1tL3dpbmVhbHNhL01ha2VmaWxlLmluLCBkbGxzL3dpbm1tL3dpbmVhbHNhL2Fsc2EuYywKKwkgIGRsbHMvd2lubW0vd2luZWFsc2EvYWxzYS5oLCBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvLmMsCisJICBkbGxzL3dpbm1tL3dpbmVhbHNhL2F1ZGlvXzA1LmMsCisJICBkbGxzL3dpbm1tL3dpbmVhbHNhL3dpbmVhbHNhLmRydi5zcGVjLCBjb25maWd1cmU6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJQ3JlYXRlZCBhbiBBTFNBIGRyaXZlciAod2l0aCB0aGUgaGVscCBvZiBEYXZpZCBIYW1tZXJ0b24gYW5kIE1hcmNvCisJUGlldHJvYm9ubykuCisKKwkqIGdyYXBoaWNzL3gxMWRydi9ncmFwaGljcy5jOgorCUZpeGVkIHR5cG8gaW4gWDExRFJWX1NldFBpeGVsLgorCisJKiBkbGxzL2FkdmFwaTMyL2NyeXB0LmgsIGRsbHMvcmljaGVkaXQvY2hhcmxpc3QuaCwKKwkgIGRsbHMvdHdhaW4vdHdhaW4uaCwgZGxscy93c29jazMyL3dzY29udHJvbC5oLAorCSAgaW5jbHVkZS93bmFzcGkzMi5oLCBwcm9ncmFtcy9ub3RlcGFkL2xhbmd1YWdlLmMsCisJICBwcm9ncmFtcy9ub3RlcGFkL2xhbmd1YWdlLmgsIHByb2dyYW1zL25vdGVwYWQvbWFpbi5jLAorCSAgcHJvZ3JhbXMvd2luZWZpbGUvc3BsaXRwYXRoLmMsIHByb2dyYW1zL3dpbmVmaWxlL3dpbmVmaWxlLmMsCisJICBwcm9ncmFtcy93aW5lZmlsZS93aW5lZmlsZS5oOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlSZW1vdmVkIEMrKyBzdHlsZSBjb21tZW50cy4KKworCSogZGxscy9zaGx3YXBpL3Rlc3RzL3NocmVnLmM6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJTm8gbG9uZ2VyIGRlcGVuZHMgb24gZXh0ZXJuYWwgZW52IHN0cmluZ3MgdmFsdWVzLgorCisJKiBkbGxzL2NvbW1kbGcvZmlsZWRsZ2Jyb3dzZXIuYzoKKwlTYW5kZXIgdmFuIExlZXV3ZW4gPHNhbmRlcnZsQHhzNGFsbC5ubD4KKwlEbyBub3QgY2hhbmdlIGRpcmVjdG9yeSBpZiBwYXRoIGlzIGludmFsaWQuCisKKwkqIGRsbHMvc2hlbGwzMi9jaGFuZ2Vub3RpZnkuYzoKKwlLbnV0IFN0LiBPc211bmRzZW4gPGJpcmRAYW5kdWluLm5ldD4KKwlEbyBub3QgYWNjZXNzIG1lbW9yeSB0aGF0IGhhcyBqdXN0IGJlZW4gZnJlZWQuCisKKwkqIHdpbmRvd3Mvc3B5LmM6CisJR3V5IEwuIEFsYmVydGVsbGkgPGdhbGJlcnRlQG5lby5scnVuLmNvbT4KKwktIEFkZCBzdXBwb3J0IGZvciBVcERvd24gY29udHJvbCBtZXNzYWdlcy4KKwktIEFkZCBkZXRlY3Rpb24gZm9yIFdpbmUncyBQcm9wZXJ0eVNoZWV0IERpYWxvZyB0byB0cmFuc2xhdGUKKwkgIG1lc3NhZ2VzLgorCisJKiBwcm9ncmFtcy9yZWdlZGl0L3JlZ3Byb2MuYywgcHJvZ3JhbXMvcmVnZWRpdC90ZXN0cy9vcmlnLnJlZywKKwkgIHByb2dyYW1zL3JlZ2VkaXQvdGVzdHMvcmVnZWRpdC5wbDoKKwlBbmRyaXkgUGFsYW1hcmNodWsgPGFwYTNhQHlhaG9vLmNvbT4KKwlGaXhlZCBhIGZldyBidWdzLCBhZGRlZCBwcm9jZXNzaW5nIG9mIFJFR19NVUxUSV9TWiBmb3JtYXQuCisKKwkqIGRsbHMvZGRyYXcvZHN1cmZhY2UvZGliLmM6CisJVG9ueSBMYW1icmVndHMgPHRvbnlfbGFtYnJlZ3RzQHRlbHVzcGxhbmV0Lm5ldD4KKwlBZGRlZCBzdXBwb3J0IGZvciBEREJMVF9LRVlTUkNPVkVSUklERS9EREJMVF9LRVlERVNUT1ZFUlJJREUuCisKKwkqIGRsbHMvY29tY3RsMzIvcHJvcHNoZWV0LmM6CisJR3V5IEwuIEFsYmVydGVsbGkgPGdhbGJlcnRlQG5lby5scnVuLmNvbT4KKwlBZGQgVENNX1NFVENVUlNFTCB3aGVuIHNldHRpbmcgcGFnZSBjdXJyZW50LgorCisJKiBkbGxzL3dpbm1tL3dpbmVvc3MvYXVkaW8uYzoKKwlFcmljIFBvdWVjaCA8ZXJpYy5wb3VlY2hAd2FuYWRvby5mcj4KKwlFbnN1cmVkIGZ1bGwgZHVwbGV4IG1vZGUgaXMgb25seSB1c2VkIHdpdGggc2FtZSBwYXJhbWV0ZXJzIGluIGluL291dAorCXN0cmVhbXMuCisJU29tZSBtb3JlIHdvcmsgdG93YXJkcyBtdWx0aXBsZSBhdWRpbyBjYXJkcyBzdXBwb3J0LgorCisyMDAyLTA2LTI1ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBpbmNsdWRlL2dkaS5oLCBvYmplY3RzL2NsaXBwaW5nLmMsIGRsbHMvZ2RpL3dpbjE2ZHJ2L2dyYXBoaWNzLmMsCisJICBkbGxzL2dkaS93aW4xNmRydi9pbml0LmMsIGRsbHMvZ2RpL3dpbjE2ZHJ2L3RleHQuYywKKwkgIGRsbHMvZ2RpL3dpbjE2ZHJ2L3dpbjE2ZHJ2LmgsIGRsbHMvd2luZXBzL3RleHQuYywKKwkgIGdyYXBoaWNzL21hcHBpbmcuYywgZ3JhcGhpY3MvcGF0aC5jLCBncmFwaGljcy94MTFkcnYvYml0Ymx0LmMsCisJICBncmFwaGljcy94MTFkcnYvZGliLmMsIGdyYXBoaWNzL3gxMWRydi9ncmFwaGljcy5jLAorCSAgZ3JhcGhpY3MveDExZHJ2L3RleHQuYzoKKwlSZXBsYWNlZCBMUFRPRFAvRFBUT0xQIG1hY3JvcyBieSBjYWxscyB0byBMUHRvRFAvRFB0b0xQICh3aXRoIHRoZSBoZWxwCisJb2YgSHV3IERhdmllcykuCisKKwkqIGNvbmZpZ3VyZSwgY29uZmlndXJlLmFjLCBkbGxzL01ha2VmaWxlLmluLCBkbGxzL2QzZDgvLmN2c2lnbm9yZSwKKwkgIGRsbHMvZDNkOC9NYWtlZmlsZS5pbiwgZGxscy9kM2Q4L2QzZDguc3BlYywKKwkgIGRsbHMvZDNkOC9kM2Q4X21haW4uYzoKKwlTeWx2YWluIFBldHJlb2xsZSA8c3BldHJlb2xsZUB5YWhvby5mcj4KKwlDcmVhdGVkIGQzZDggc3R1YiBkbGwuCisKKwkqIGluY2x1ZGUvbWFwaWRlZnMuaCwgaW5jbHVkZS93dHlwZXMuaDoKKwlGaXhlZCBlbmRpYW5uZXNzICNpZmRlZnMgKHNwb3R0ZWQgYnkgSmFzb24gRWRtZWFkZXMpLgorCisJKiBkbGxzL3dpbm1tL21tc3lzdGVtLmM6CisJRXJpYyBQb3VlY2ggPGVyaWMucG91ZWNoQHdhbmFkb28uZnI+CisJRml4ZWQgZmxhZ3MgaGFuZGxpbmcgaW4gc25kUGxheVNvdW5kLgorCisJKiBkbGxzL2NvbW1kbGcvZmlsZWRsZzk1LmM6CisJSmFzb24gRWRtZWFkZXMgPHVzQHRoZS1lZG1lYWRlcy5kZW1vbi5jby51az4KKwlGaXhlZCBjcmFzaCBpbiBvcGVuIGZpbGUgZGlhbG9nIG9uIG5vbi13aW5kb3dzIDk4IGVtdWxhdGlvbiB3aGVuCisJbHBzekluaXRpYWxEaXIgaXMgbnVsbC4KKworCSogZGxscy9vbGVhdXQzMi9vbGVmb250LmM6CisJSmFzb24gRWRtZWFkZXMgPHVzQHRoZS1lZG1lYWRlcy5kZW1vbi5jby51az4KKwlFbnN1cmUgd2UgZnJlZSB0aGUgY2FjaGVkIEhGT05UIGFmdGVyIGxvYWRpbmcgaW4gYSBmcmVzaCBmb250LiBFbmFibGVzCisJZm9udHMgaW4gVkIgcHJvZ3JhbXMgdG8gYXBwZWFyIGNvcnJlY3RseS4KKworCSogbWVtb3J5L2NvZGVwYWdlLmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCUFyaWMgU3Rld2FydCA8YXJpY0Bjb2Rld2VhdmVycy5jb20+CisJRml4ZWQgbmFzdHkgYnVnIGZvciAyKyBieXRlIG11bHRpYnl0ZSBzdHJpbmdzIGFuZCBHZXRTdHJpbmdUeXBlLgorCUZsZXNoZWQgb3V0IEdldFN0cmluZ1R5cGUgQ1RZUEUzIGZyb20gdGhlIHVuaWNvZGUgdGFibGVzLgorCUNQX1NZTUJPTCBpcyBub3QgYSB2YWxpZCBjb2RlcGFnZSB3aGlsZSBDUF9VVEY3fDggYXJlLgorCisJKiBkb2N1bWVudGF0aW9uL3dpbmUuY29uZi5tYW4sIGluY2x1ZGUvbW9kdWxlLmgsCisJICBsb2FkZXIvbG9hZG9yZGVyLmMsIGxvYWRlci9tYWluLmMsIGxvYWRlci9tb2R1bGUuYzoKKwlBZGRlZCBzdXBwb3J0IGZvciBwYXRoIHdpbGRjYXJkcyBvZiB0aGUgZm9ybSAiKmRsbG5hbWUiIGluIGxvYWQgb3JkZXIKKwlzcGVjaWZpY2F0aW9ucy4KKwlPbmx5IHVzZSB3aWxkY2FyZCBlbnRyeSBmb3IgZGxscyB0aGF0IGRvbid0IHNwZWNpZnkgYW4gZXhwbGljaXQgcGF0aC4KKwlSZW1vdmVkIHRoZSBvbGQgRGxsT3ZlcnJpZGVzIHN5bnRheCBzdXBwb3J0LgorCU1pc2MgY2xlYW51cHMgYW5kIG9wdGltaXphdGlvbnMuCisKKzIwMDItMDYtMjQgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMvd2luZXBzL01ha2VmaWxlLmluLCBkbGxzL3dpbmVwcy9icnVzaC5jLAorCSAgZGxscy93aW5lcHMvYnVpbHRpbi5jLCBkbGxzL3dpbmVwcy9kb3dubG9hZC5jLAorCSAgZGxscy93aW5lcHMvZHJpdmVyLmMsIGRsbHMvd2luZXBzL2VzY2FwZS5jLCBkbGxzL3dpbmVwcy9mb250LmMsCisJICBkbGxzL3dpbmVwcy9wcGQuYywgZGxscy93aW5lcHMvcHMuYywgZGxscy93aW5lcHMvcHNkcnYuaCwKKwkgIGRsbHMvd2luZXBzL3RleHQuYywgZGxscy93aW5lcHMvdHlwZTEuYywgZGxscy93aW5lcHMvdHlwZTQyLmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIFR5cGUgMSBhbmQgVHlwZSA0MiBmb250IGRvd25sb2FkaW5nLgorCU1pc2MgYnVnIGZpeGVzLgorCisJKiBkbGxzL3dpbmVwcy9pbml0LmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCUhhbmRsZSBkbVNjYWxlLgorCisJKiBkbGxzL3dpbmVwcy9jbGlwcGluZy5jOgorCUh1dyBEIE0gRGF2aWVzIDxoZGF2aWVzQGNvZGV3ZWF2ZXJzLmNvbT4KKwlwc2RydiBkb2Vzbid0IGNhcmUgYWJvdXQgaEdDQ2xpcFJnbiwganVzdCB1c2UgR2V0Q2xpcFJnbiBpbnN0ZWFkLgorCisJKiBkbGxzL3dpbmVwcy9hZm0uYywgZGxscy93aW5lcHMvZ2x5cGhsaXN0LmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCUdldCByaWQgb2YgYSBmZXcgdGhvdXNhbmQgdXNlbGVzcyBUUkFDRSBsaW5lcy4KKworCSogZGxscy93aW5lcHMvdHlwZTFhZm0uYzoKKwlIdXcgRCBNIERhdmllcyA8aGRhdmllc0Bjb2Rld2VhdmVycy5jb20+CisJQWRkZWQgYWZtIHdlaWdodCAiTk9STUFMIi4KKworCSogaW5jbHVkZS93aW5nZGkuaCwgb2JqZWN0cy9lbmhtZXRhZmlsZS5jOgorCVVscmljaCBDemVrYWxsYSA8dWN6ZWthbGxhQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCB0ZW1wIGZpeCBmb3Igd29ybGQgdHJhbnNmb3JtIGJ1ZyBpbiBTZXRXaW5kb3dPcmdFeCBoYW5kbGVyLgorCUFkZGVkIGhhbmRsZXJzIGZvciBFTVJfU0VUVEVYVEpVU1RJRklDQVRJT04gYW5kIEVNUl9TRVRMQVlPVVQuCisKKwkqIGRsbHMvZ2RpL21mZHJ2L3RleHQuYzoKKwlIdXcgRCBNIERhdmllcyA8aGRhdmllc0Bjb2Rld2VhdmVycy5jb20+CisJRG9uJ3QgbWFwIHN5bWJvbCBjaGFyc2V0IHRocm91Z2ggV0NUb01CLgorCisJKiBwcm9ncmFtcy93aW5lY29uc29sZS93aW5lY29uc29sZS5jOgorCUFuZHJlYXMgTW9ociA8YW5kaUByaGx4MDEuZmh0LWVzc2xpbmdlbi5kZT4KKwlNYWRlIGluaXRpYWxpemF0aW9uIG1vcmUgdmVyYm9zZSBpbiBjYXNlIG9mIGVycm9ycy4KKworCSogY29uZmlndXJlLmFjLCBpbmNsdWRlL2NvbmZpZy5oLmluLCBsaWJyYXJ5L2NvbmZpZy5jLCBjb25maWd1cmU6CisJU3RldmVuIEVkd2FyZHMgPHN0ZXZlbl9lZDQxNTNAeWFob28uY29tPgorCUFkZGVkIGNoZWNrIGZvciBwd2QuaC4KKworCSogZGxscy93aW5lZG9zL2lvcG9ydHMuYywgZGxscy93aW5lZG9zL3ZnYS5jOgorCUp1a2thIEhlaW5vbmVuIDxqaGVpQGlraS5maT4KKwlSZWRpcmVjdCBhbGwgcmVhZHMgYW5kIHdyaXRlcyB0byBWR0EgY29udHJvbGxlciB0byBWR0EgZW11bGF0aW9uLgorCUNhdGNoIGFuZCByZXBvcnQgMTYvMzItYml0IHJlYWRzL3dyaXRlcyB0byBWR0EgY29udHJvbGxlci4KKwlVc2UgY29ycmVjdCBmbGFncyB3aGVuIGNyZWF0aW5nIGZ1bGwgc2NyZWVuIERpcmVjdERyYXcgd2luZG93IGZvcgorCVZHQS4KKworCSogZGxscy93aW5lZG9zL2ludDY3LmM6CisJSnVra2EgSGVpbm9uZW4gPGpoZWlAaWtpLmZpPgorCUFkZCBzYXZlL3Jlc3RvcmUgbWFwcGluZyBjb250ZXh0IHJvdXRpbmVzLgorCUFkZCBtYXAgbXVsdGlwbGUgcGFnZXMgcm91dGluZS4KKwlBZGQgcGFydGlhbCBpbXBsZW1lbnRhdGlvbiBvZiBoYXJkd2FyZSBpbmZvcm1hdGlvbiBxdWVyeSByb3V0aW5lLgorCVJlcGxhY2UgaW5jb3JyZWN0IHVzZSBvZiBNYXBTTCB3aXRoIFBUUl9SRUFMX1RPX0xJTi4KKworMjAwMi0wNi0yMiAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogc2VydmVyL3RocmVhZC5jOgorCVVubG9jayB0aGUgbWFzdGVyIHNvY2tldCBpZiB0aGUgYm9vdCB0aHJlYWQgdGVybWluYXRlcyBlYXJseS4KKwlBdm9pZCBjcmFzaCBpZiB0aHJlYWQgZGllZCBkdXJpbmcgdGltZW91dCB3YWtldXAuCisKKwkqIGRsbHMvZ2RpL2ZyZWV0eXBlLmMsIGRsbHMvZ2RpL2dkaTMyLnNwZWMsIGluY2x1ZGUvZm9udC5oLAorCSAgaW5jbHVkZS93aW5nZGkuaCwgb2JqZWN0cy9mb250LmMsIG9iamVjdHMvdGV4dC5jOgorCUh1dyBEIE0gRGF2aWVzIDxoZGF2aWVzQGNvZGV3ZWF2ZXJzLmNvbT4KKwktIEltcGxlbWVudCBBZGRGb250UmVzb3VyY2UqLCBhZGQgc3R1YnMgZm9yIFJlbW92ZUZvbnRSZXNvdXJjZSouCisJLSBBZGQgc3VwcG9ydCBmb3IgR0dPX0JFWklFUiBhbmQgYSBmZXcgYnVnIGZpeGVzIGZvciBHR09fTkFUSVZFLgorCS0gTXVjaCBiZXR0ZXIgc3VwcG9ydCBmb3Igbm9uIGFuc2kgY2hhcnNldHMgaW4gZm9udCBtYXRjaGluZy4KKwktIFByb3BlciBpbXBsZW1lbnRhdGlvbiBvZiBHZXRUZXh0RmFjZSBmb3IgZ2RpIGZvbnQuCisJLSBMb2FkIGZvbnRzIHRoYXQgYXJlIGxpc3RlZCBpbiB0aGUgcmVnaXN0cnkgYnV0IGFyZW4ndCBpbgorCSAgJVdJTkRPV1NESVIlXGZvbnRzLgorCS0gUmV2ZXJ0IFRyYW5zbGF0ZUNoYXJzZXRJbmZvIHRvIHVzZSBjb2RlcGFnZSAxMjUyIHdpdGggQU5TSV9DSEFSU0VULgorCS0gQWRkIHN1cHBvcnQgZm9yIFZJRVROQU1FU0VfQ0hBUlNFVCBhbmQgU1lNQk9MX0NIQVJTRVQuCisKKwkqIGRsbHMveDExZHJ2L2tleWJvYXJkLmM6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCBCdWxnYXJpYW4ga2V5Ym9hcmRzLgorCisJKiBkbGxzL3gxMWRydi94cmVuZGVyLmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCVN0b3JlIHRoZSBjYWNoZSBlbnRyeSBpbmRpY2VzIGFuZCBub3QgdGhlIHB0cnMuCisJUHJvdGVjdCBjYWNoZSB3aXRoIGEgY3JpdGljYWwgc2VjdGlvbi4KKworCSogZGxscy9rZXJuZWwvdGVzdHMvZmlsZS5jLCBkbGxzL2tlcm5lbC90ZXN0cy9wYXRoLmMsCisJICBkbGxzL2tlcm5lbC90ZXN0cy9wcm9jZXNzLmMsIGRsbHMva2VybmVsL3Rlc3RzL3RocmVhZC5jLAorCSAgZGxscy9zaGx3YXBpL3Rlc3RzL3NocmVnLmMsIGRsbHMvdXNlci90ZXN0cy9jbGFzcy5jLAorCSAgZGxscy93aW5zb2NrL3Rlc3RzL3NvY2suYywgaW5jbHVkZS93aW5lL3Rlc3QuaCwKKwkgIHByb2dyYW1zL3dpbmV0ZXN0L3d0bWFpbi5jOgorCUFkZGVkIHByaW50ZiBmb3JtYXQgY2hlY2tpbmcgdG8gdGhlIG9rKCkgYW5kIHRyYWNlKCkgbWFjcm9zLCBhbmQgZml4ZWQKKwl0aGUgcmVzdWx0aW5nIHdhcm5pbmdzLgorCisyMDAyLTA2LTIxICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy93aW5pbmV0Ly5jdnNpZ25vcmUsCisJICBkbGxzL3dpbmluZXQvTWFrZWZpbGUuaW4sIGRsbHMvd2luaW5ldC9odHRwLmMsCisJICBkbGxzL3dpbmluZXQvaW50ZXJuZXQuYywgZGxscy93aW5pbmV0L2ludGVybmV0LmgsCisJICBkbGxzL3dpbmluZXQvdGVzdHMvLmN2c2lnbm9yZSwgZGxscy93aW5pbmV0L3Rlc3RzL2h0dHAuYywKKwkgIGRsbHMvd2luaW5ldC91cmxjYWNoZS5jLCBkbGxzL3dpbmluZXQvdXRpbGl0eS5jLAorCSAgZGxscy93aW5pbmV0L3ZlcnNpb24ucmMsIGRsbHMvd2luaW5ldC93aW5pbmV0LnNwZWM6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlSZXdvcmtpbmcgb2YgaHR0cCBhbmQgYXN5bmNyb25vdXMgY2FsbHMgdG8gZ2V0IElFNiB0byBpbnN0YWxsLgorCUFkZGVkIGEgdmVyc2lvbiByZXNvdXJjZS4KKwlBZGRlZCB1bml0IHRlc3QgZm9yIGh0dHAuCisKKwkqIGRsbHMvYWR2YXBpMzIvY3J5cHQuYywgZGxscy9jb21jdGwzMi9saXN0dmlldy5jLAorCSAgZGxscy9vbGUzMi9vbGVvYmouYywgZGxscy9vbGVhdXQzMi92YXJpYW50LmMsCisJICBkbGxzL3gxMWRydi93aW5wb3MuYywgY29udHJvbHMvYnV0dG9uLmM6CisJVmluY2VudCBC6XJvbiA8dmJlcm9uQG1lY2Fuby5nbWUudXNoZXJiLmNhPgorCUZpeGVkIHNvbWUgdmFyaW91cyBjb21wYXJpc29ucyB3cnQgc2lnbmVkbmVzcy4KKworCSogZGxscy9vbGUzMi9jb21wb2JqLmM6CisJRml4ZWQgQ0xTSURGcm9tU3RyaW5nIGVuZGlhbm5lc3MgYXNzdW1wdGlvbnMgKHJlcG9ydGVkIGJ5IEdyZWdnIE1hdHRpbnNvbikuCisKKwkqIGRsbHMvbXN2Y3J0MjAvTWFrZWZpbGUuaW4sIGRsbHMvbXN2Y3J0MjAvZHVtbXkuYywKKwkgIGRsbHMvbXN2Y3J0MjAvbXN2Y3J0MjAuYywgZGxscy9tc3ZjcnQyMC9tc3ZjcnQyMC5zcGVjOgorCWdldG1haW5hcmdzOiBuZXdfbW9kZSBhcmd1bWVudCBpcyBub3QgYSBwb2ludGVyIGluIG1zdmNydDIwIChzcG90dGVkCisJYnkgQmlsbCBNZWRsYW5kKS4KKworCSogZGxscy94MTFkcnYva2V5Ym9hcmQuYzoKKwlSb2sgTWFuZGVsamMgPHJva21hbmRlbGpjQGhvdG1haWwuY29tPgorCUFkZGVkIFNsb3ZlbmlhbiBrZXlib2FyZC4KKworCSogZGxscy9vbGVhdXQzMi92YXJpYW50LmM6CisJSm9obiBLLiBIb2htIDxqaG9obUBhY20ub3JnPgorCUltcGxlbWVudGVkIFNpemVPZlZhcmlhbnREYXRhIGNhc2VzIGZvciBWVF9ESVNQQVRDSCwgVlRfVU5LTk9XTiwgVlRfQ1kuCisKKwkqIHByb2dyYW1zL3JlZ2VkaXQvdGVzdHMvb3JpZy5yZWc6CisJQmlsbCBNZWRsYW5kIDxtZWRiaTAxQGFjY3BhYy5jb20+CisJVGVzdCB0aGUgYWJpbGl0eSB0byBoYW5kbGUgaGV4IHZhbHVlcyBpbiBleGNlc3Mgb2YgMTAyNCBieXRlcyBhbmQKKwlpbnB1dCBsaW5lcyBpbiBleGNlc3Mgb2YgNDA5NiBieXRlcy4KKworCSogcHJvZ3JhbXMvcmVnZWRpdC9yZWdwcm9jLmM6CisJQmlsbCBNZWRsYW5kIDxtZWRiaTAxQGFjY3BhYy5jb20+CisJLSBSZXdvcmsgdGhlIGxpbmUgcmVhZGluZy4gIFRoaXMgdmVyc2lvbiB1c2VzIGEgc2luZ2xlIGV4cGFuZGluZworCSAgYnVmZmVyIHJhdGhlciB0aGFuIGEgbWFpbiBidWZmZXIgYW5kIGEgIm5leHQgbGluZSIgYnVmZmVyLiAgVGhpcworCSAgdmVyc2lvbiBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgYWxsb2NhdGVkIG1lbW9yeSAoaG9wZWZ1bGx5KS4gIFRoZQorCSAgcHJldmlvdXMgdmVyc2lvbiBkaWQgd2hlbiBjb25jYXRlbmF0aW5nIHRoZSBjb250aW51YXRpb24gbGluZXMuCisJLSBBZGQgcHJvdGVjdGlvbiB0byB0aGUgSGV4Q1NWVG9IZXggdG8gcHJldmVudCBvdmVyZmxvdy4KKwktIEFsbG93IGZvciBjb252ZXJzaW9uIG9mIGxhcmdlciBoZXggdmFsdWVzLiAgVGVzdGVkIG9uIGEgcmVhbCAyLjZLQgorCSAgdmFsdWUuCisKKwkqIHByb2dyYW1zL3JlZ2VkaXQvdGVzdHMvcmVnZWRpdC5wbDoKKwlCaWxsIE1lZGxhbmQgPG1lZGJpMDFAYWNjcGFjLmNvbT4KKwlDb3JyZWN0IHRoZSBjb21wYXJpc29uIG9mIHR3byBmaWxlcy4gIEp1c3QgYmVjYXVzZSB0aGV5IGFyZSB0aGUgc2FtZQorCXNpemUgZG9lc24ndCBtZWFuIHRoZXkgaGF2ZSB0aGUgc2FtZSBjb250ZW50LgorCisJKiBkbGxzL250ZGxsL3NpZ25hbF9zcGFyYy5jOgorCUdyZWdnIE1hdHRpbnNvbiA8Z20xMzgyNDJAc2NvdC5jYW5hZGEuc3VuLmNvbT4KKwlJbXBsZW1lbnRlZCBEYmdCcmVha1BvaW50IGFuZCBEYmdVc2VyQnJlYWtQb2ludCBmb3IgU3BhcmMuICBEZWJ1Z2dlcgorCW11c3QgYWxyZWFkeSBiZSBhdHRhY2hlZCBmb3IgdGhpcyBpbXBsZW1lbnRhdGlvbiB0byB3b3JrLgorCisJKiBpbmNsdWRlL3JwY3Byb3h5Lmg6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCU1vdmVkIGFsbCAjaW5jbHVkZXMgdG8gdGhlIHRvcCBzbyB0aGF0IF9fc3RkY2FsbCBpcyBkZWZpbmVkIGZvciB0aGUKKwlkZWNsYXJhdGlvbiBvZiBJSURMb29rdXBSdG4uCisKKwkqIGRsbHMvc2hlbGwzMi9pY29uY2FjaGUuYywgZGxscy9zaGVsbDMyL3NoZWxsLmM6CisJU3RldmVuIEVkd2FyZHMgPFN0ZXZlbl9FZDQxNTNAeWFob28uY29tPgorCU1vdmVkIGEgZmV3IHdpbjMyIGZ1bmN0aW9ucyB0byBhIGJldHRlciBsb2NhdGlvbiBmb3IgYnVpbGRpbmcgYSBXaW4zMgorCW9ubHkgZGxsLgorCisJKiBkbGxzL3dpbm1tL3dpbmVvc3Mvd2luZW9zcy5kcnYuc3BlYywgZGxscy93aW5ubHMvd2lubmxzLnNwZWMsCisJICBkbGxzL3dpbm5scy93aW5ubHMzMi5zcGVjLCBkbGxzL3dpbnNvY2svd2luc29jay5zcGVjLAorCSAgZGxscy93aW5zb2NrL3dzMl8zMi5zcGVjLCBkbGxzL3dpbnNwb29sL3dpbnNwb29sLmRydi5zcGVjLAorCSAgZGxscy93aW50cnVzdC93aW50cnVzdC5zcGVjLCBkbGxzL3dvdzMyL3dvdzMyLnNwZWMsCisJICBkbGxzL3dzb2NrMzIvd3NvY2szMi5zcGVjLCBkbGxzL3gxMWRydi94MTFkcnYuc3BlYywKKwkgIG1pc2NlbXUvTWFrZWZpbGUuaW4sIG1pc2NlbXUvd2luZS5zcGVjLCB0b29scy93aW5lYnVpbGQvUkVBRE1FLAorCSAgdG9vbHMvd2luZWJ1aWxkL2ltcG9ydC5jLCB0b29scy93aW5lYnVpbGQvbWFpbi5jLAorCSAgdG9vbHMvd2luZWJ1aWxkL3BhcnNlci5jLCB0b29scy93aW5lYnVpbGQvc3BlYzE2LmMsCisJICB0b29scy93aW5lYnVpbGQvc3BlYzMyLmMsIGRsbHMvdXNlci9kZGVtbC5zcGVjLAorCSAgZGxscy91c2VyL2Rpc3BsYXkuc3BlYywgZGxscy91c2VyL2tleWJvYXJkLnNwZWMsCisJICBkbGxzL3VzZXIvbW91c2Uuc3BlYywgZGxscy91c2VyL3VzZXIuZXhlLnNwZWMsCisJICBkbGxzL3VzZXIvdXNlcjMyLnNwZWMsIGRsbHMvdmVyc2lvbi92ZXIuc3BlYywKKwkgIGRsbHMvdmVyc2lvbi92ZXJzaW9uLnNwZWMsIGRsbHMvd2luMzJzL3czMnNrcm5sLnNwZWMsCisJICBkbGxzL3dpbjMycy93MzJzeXMuc3BlYywgZGxscy93aW4zMnMvd2luMzJzMTYuc3BlYywKKwkgIGRsbHMvd2luYXNwaS93aW5hc3BpLnNwZWMsIGRsbHMvd2luYXNwaS93bmFzcGkzMi5zcGVjLAorCSAgZGxscy93aW5lZG9zL3dpbmVkb3Muc3BlYywgZGxscy93aW5lcHMvd2luZXBzLnNwZWMsCisJICBkbGxzL3dpbmVwcy93aW5lcHMxNi5zcGVjLCBkbGxzL3dpbmluZXQvd2luaW5ldC5zcGVjLAorCSAgZGxscy93aW5tbS9qb3lzdGljay9qb3lzdGljay5kcnYuc3BlYywKKwkgIGRsbHMvd2lubW0vbWNpYW5pbS9tY2lhbmltLmRydi5zcGVjLAorCSAgZGxscy93aW5tbS9tY2lhdmkvbWNpYXZpLmRydi5zcGVjLAorCSAgZGxscy93aW5tbS9tY2ljZGEvbWNpY2RhLmRydi5zcGVjLAorCSAgZGxscy93aW5tbS9tY2lzZXEvbWNpc2VxLmRydi5zcGVjLAorCSAgZGxscy93aW5tbS9tY2l3YXZlL21jaXdhdmUuZHJ2LnNwZWMsCisJICBkbGxzL3dpbm1tL21pZGltYXAvbWlkaW1hcC5kcnYuc3BlYywgZGxscy93aW5tbS9tbXN5c3RlbS5zcGVjLAorCSAgZGxscy93aW5tbS9zb3VuZC5zcGVjLCBkbGxzL3dpbm1tL3dhdmVtYXAvbXNhY20uZHJ2LnNwZWMsCisJICBkbGxzL3dpbm1tL3dpbmVhcnRzL3dpbmVhcnRzLmRydi5zcGVjLCBkbGxzL3dpbm1tL3dpbm1tLnNwZWMsCisJICBkbGxzL29wZW5nbDMyL29wZW5nbDMyLnNwZWMsIGRsbHMvcHNhcGkvcHNhcGkuc3BlYywKKwkgIGRsbHMvcWNhcC9xY2FwLnNwZWMsIGRsbHMvcXVhcnR6L3F1YXJ0ei5zcGVjLAorCSAgZGxscy9yYXNhcGkzMi9yYXNhcGkxNi5zcGVjLCBkbGxzL3Jhc2FwaTMyL3Jhc2FwaTMyLnNwZWMsCisJICBkbGxzL3JpY2hlZGl0L3JpY2hlZDMyLnNwZWMsIGRsbHMvcnBjcnQ0L3JwY3J0NC5zcGVjLAorCSAgZGxscy9zZXJpYWx1aS9zZXJpYWx1aS5zcGVjLCBkbGxzL3NldHVwYXBpL3NldHVwYXBpLnNwZWMsCisJICBkbGxzL3NldHVwYXBpL3NldHVweC5zcGVjLCBkbGxzL3NoZG9jdncvc2hkb2N2dy5zcGVjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsLnNwZWMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyLnNwZWMsCisJICBkbGxzL3NoZm9sZGVyL3NoZm9sZGVyLnNwZWMsIGRsbHMvc2hsd2FwaS9zaGx3YXBpLnNwZWMsCisJICBkbGxzL3NubXBhcGkvc25tcGFwaS5zcGVjLCBkbGxzL3N0aS9zdGkuc3BlYywKKwkgIGRsbHMvdGFwaTMyL3RhcGkzMi5zcGVjLCBkbGxzL3R0eWRydi90dHlkcnYuc3BlYywKKwkgIGRsbHMvdHdhaW4vdHdhaW5fMzIuc3BlYywgZGxscy91cmwvdXJsLnNwZWMsCisJICBkbGxzL3VybG1vbi91cmxtb24uc3BlYywgZGxscy9tc2ltZzMyL21zaW1nMzIuc3BlYywKKwkgIGRsbHMvbXNpc3lzL21zaXN5cy5vY3guc3BlYywgZGxscy9tc25ldDMyL21zbmV0MzIuc3BlYywKKwkgIGRsbHMvbXNybGUzMi9tc3JsZTMyLnNwZWMsIGRsbHMvbXN2Y3J0L21zdmNydC5zcGVjLAorCSAgZGxscy9tc3ZjcnQyMC9tc3ZjcnQyMC5zcGVjLCBkbGxzL21zdmlkZW8vbXN2ZnczMi5zcGVjLAorCSAgZGxscy9tc3ZpZGVvL21zdmlkZW8uc3BlYywgZGxscy9uZXRhcGkzMi9uZXRhcGkzMi5zcGVjLAorCSAgZGxscy9udGRsbC9udGRsbC5zcGVjLCBkbGxzL29kYmMzMi9vZGJjMzIuc3BlYywKKwkgIGRsbHMvb2xlMzIvY29tcG9iai5zcGVjLCBkbGxzL29sZTMyL29sZTIuc3BlYywKKwkgIGRsbHMvb2xlMzIvb2xlMmNvbnYuc3BlYywgZGxscy9vbGUzMi9vbGUybmxzLnNwZWMsCisJICBkbGxzL29sZTMyL29sZTJwcm94LnNwZWMsIGRsbHMvb2xlMzIvb2xlMnRoay5zcGVjLAorCSAgZGxscy9vbGUzMi9vbGUzMi5zcGVjLCBkbGxzL29sZTMyL3N0b3JhZ2Uuc3BlYywKKwkgIGRsbHMvb2xlYXV0MzIvb2xlMmRpc3Auc3BlYywgZGxscy9vbGVhdXQzMi9vbGVhdXQzMi5zcGVjLAorCSAgZGxscy9vbGVhdXQzMi90eXBlbGliLnNwZWMsIGRsbHMvb2xlY2xpL29sZWNsaS5zcGVjLAorCSAgZGxscy9vbGVjbGkvb2xlY2xpMzIuc3BlYywgZGxscy9vbGVkbGcvb2xlZGxnLnNwZWMsCisJICBkbGxzL29sZXBybzMyL29sZXBybzMyLnNwZWMsIGRsbHMvb2xlc3ZyL29sZXN2ci5zcGVjLAorCSAgZGxscy9vbGVzdnIvb2xlc3ZyMzIuc3BlYywgZGxscy9pbWFnZWhscC9pbWFnZWhscC5zcGVjLAorCSAgZGxscy9pbW0zMi9pbW0uc3BlYywgZGxscy9pbW0zMi9pbW0zMi5zcGVjLAorCSAgZGxscy9rZXJuZWwvY29tbS5zcGVjLCBkbGxzL2tlcm5lbC9rZXJuZWwzMi5zcGVjLAorCSAgZGxscy9rZXJuZWwva3JubDM4Ni5leGUuc3BlYywgZGxscy9rZXJuZWwvc3RyZXNzLnNwZWMsCisJICBkbGxzL2tlcm5lbC9zeXN0ZW0uc3BlYywgZGxscy9rZXJuZWwvdG9vbGhlbHAuc3BlYywKKwkgIGRsbHMva2VybmVsL3dpbjg3ZW0uc3BlYywgZGxscy9rZXJuZWwvd2luZGVidWcuc3BlYywKKwkgIGRsbHMva2VybmVsL3dwcm9jcy5zcGVjLCBkbGxzL2x6ZXhwYW5kL2x6MzIuc3BlYywKKwkgIGRsbHMvbHpleHBhbmQvbHpleHBhbmQuc3BlYywgZGxscy9tYXBpMzIvbWFwaTMyLnNwZWMsCisJICBkbGxzL21wci9tcHIuc3BlYywgZGxscy9tc2FjbS9pbWFhZHAzMi9pbWFhZHAzMi5hY20uc3BlYywKKwkgIGRsbHMvbXNhY20vbXNhY20uc3BlYywgZGxscy9tc2FjbS9tc2FjbTMyLnNwZWMsCisJICBkbGxzL21zYWNtL21zYWRwMzIvbXNhZHAzMi5hY20uc3BlYywKKwkgIGRsbHMvbXNhY20vbXNnNzExL21zZzcxMS5hY20uc3BlYywKKwkgIGRsbHMvbXNhY20vd2luZW1wMy93aW5lbXAzLmFjbS5zcGVjLCBkbGxzL21zZG1vL21zZG1vLnNwZWMsCisJICBkbGxzL2FkdmFwaTMyL2FkdmFwaTMyLnNwZWMsIGRsbHMvYXZpY2FwMzIvYXZpY2FwMzIuc3BlYywKKwkgIGRsbHMvYXZpZmlsMzIvYXZpZmlsMzIuc3BlYywgZGxscy9hdmlmaWwzMi9hdmlmaWxlLnNwZWMsCisJICBkbGxzL2NvbWNhdC9jb21jYXQuc3BlYywgZGxscy9jb21jdGwzMi9jb21jdGwzMi5zcGVjLAorCSAgZGxscy9jb21tZGxnL2NvbWRsZzMyLnNwZWMsIGRsbHMvY29tbWRsZy9jb21tZGxnLnNwZWMsCisJICBkbGxzL2NydGRsbC9jcnRkbGwuc3BlYywgZGxscy9jcnlwdDMyL2NyeXB0MzIuc3BlYywKKwkgIGRsbHMvZGNpbWFuMzIvZGNpbWFuMzIuc3BlYywgZGxscy9kZHJhdy9kZHJhdy5zcGVjLAorCSAgZGxscy9kZXZlbnVtL2RldmVudW0uc3BlYywgZGxscy9kaW5wdXQvZGlucHV0LnNwZWMsCisJICBkbGxzL2RpbnB1dDgvZGlucHV0OC5zcGVjLCBkbGxzL2RwbGF5L2RwbGF5LnNwZWMsCisJICBkbGxzL2RwbGF5eC9kcGxheXguc3BlYywgZGxscy9kc291bmQvZHNvdW5kLnNwZWMsCisJICBkbGxzL2dkaS9kaXNwZGliLnNwZWMsIGRsbHMvZ2RpL2dkaS5leGUuc3BlYywKKwkgIGRsbHMvZ2RpL2dkaTMyLnNwZWMsIGRsbHMvZ2RpL3dpbmcuc3BlYywgZGxscy9nbHUzMi9nbHUzMi5zcGVjLAorCSAgZGxscy9pY21wL2ljbXAuc3BlYywgTWFrZS5ydWxlcy5pbjoKKwlNYWRlIHNvbWUgbW9yZSBzcGVjIGZpbGUgZW50cmllcyBvcHRpb25hbCBvciB1bm5lY2Vzc2FyeS4KKwlGaXhlZCBhIGZldyBETExOYW1lL0RMTEZpbGVOYW1lIG1pc21hdGNoZXMuCisKKwkqIHNlcnZlci9zb2NrLmM6CisJQXR0ZW1wdCBhdCBmaXhpbmcgUE9MTEhVUCBoYW5kbGluZyBmb3IgTGludXggMi4yLnguCisKKwkqIGRsbHMvb2xlYXV0MzIvdGVzdHMvdmFydGVzdC5jOgorCU1vdmVkIHN1Y2NlZWRpbmcgdGVzdCBvdXQgb2YgdG9kbyBibG9jay4KKworCSogZmlsZXMvZG9zX2ZzLmM6CisJRml4ZWQgcmVncmVzc2lvbiBjYXVzZWQgYnkgcHJldmlvdXMgY2hhbmdlLgorCisyMDAyLTA2LTIwICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBkbGxzL29sZWF1dDMyL29sZWF1dDMyLnNwZWMsIGRsbHMvb2xlYXV0MzIvc2FmZWFycmF5LmMsCisJICBkbGxzL29sZWF1dDMyL3ZhcmlhbnQuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZW1AY29kZXdlYXZlcnMuY29tPgorCUZpeGVkIG9yZGluYWxzIHRvIG1hdGNoIHRoZSBXaW5kb3dzIHZhbHVlcy4KKwlBZGRlZCBhIGNvdXBsZSBvZiBzdHVicy4KKworCSogc2VydmVyL21haW4uYywgc2VydmVyL3Byb2Nlc3MuYywgc2VydmVyL3JlcXVlc3QuYywKKwkgIHNlcnZlci9yZXF1ZXN0LmgsIGZpbGVzL2RyaXZlLmMsIGZpbGVzL3Byb2ZpbGUuYywKKwkgIGdyYXBoaWNzL3gxMWRydi94Zm9udC5jLCBpbmNsdWRlL3dpbmUvbGlicmFyeS5oLAorCSAgaW5jbHVkZS93aW5lL3NlcnZlci5oLCBsaWJyYXJ5L01ha2VmaWxlLmluLCBsaWJyYXJ5L2NvbmZpZy5jLAorCSAgbWlzYy9yZWdpc3RyeS5jLCBzY2hlZHVsZXIvY2xpZW50LmM6CisJQ3JlYXRlIHRoZSBzZXJ2ZXIgZGlyZWN0b3J5IGFuZCBzb2NrZXQgZmlsZSBpbiAvdG1wLgorCVVzZSBmY250bCBmaWxlIGxvY2tpbmcgdG8gZW5zdXJlIGV4Y2x1c2lvbiBvbiB0aGUgc2VydmVyIHNvY2tldCBhbmQgdG8KKwliZXR0ZXIgcmVjb3ZlciBmcm9tIGNyYXNoZXMuCisJRmx1c2ggdGhlIHJlZ2lzdHJ5IGJlZm9yZSBjbG9zaW5nIHRoZSBzb2NrZXQgdG8gYXZvaWQgdGltZW91dHMgb24gdGhlCisJY2xpZW50IHNpZGUuCisJTW92ZWQgZ2V0X2NvbmZpZ19kaXIgZnVuY3Rpb25hbGl0eSB0byBsaWJ3aW5lLgorCisJKiBzZXJ2ZXIvb2JqZWN0LmgsIHNlcnZlci9yZWdpc3RyeS5jLCBzZXJ2ZXIvc2VsZWN0LmM6CisJU3RvcmUgZGlydHkgZmxhZyBpbiBlYWNoIHJlZ2lzdHJ5IGtleSBhbmQgdXNlIGl0IHRvIHNhdmUgb25seSBtb2RpZmllZAorCWJyYW5jaGVzLgorCisJKiBmaWxlcy9kb3NfZnMuYywgZmlsZXMvZHJpdmUuYzoKKwlNYWtlIHN1cmUgdGhhdCBEUklWRV9GaW5kRHJpdmVSb290IGFsd2F5cyByZXR1cm5zIGFuIGFic29sdXRlIHBhdGguCisKKwkqIHByb2dyYW1zL01ha2Vwcm9nLnJ1bGVzLmluOgorCUFkZGVkIGRlcGVuZGVuY3kgb24gcHJvZ3JhbSBzeW1saW5rIGZvciB1bml0IHRlc3RzLgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgcHJvZ3JhbXMvcmVnZWRpdC9NYWtlZmlsZS5pbiwKKwkgIHByb2dyYW1zL3JlZ2VkaXQvcmVnZWRpdC5jLCBwcm9ncmFtcy9yZWdlZGl0L3Rlc3RzLy5jdnNpZ25vcmUsCisJICBwcm9ncmFtcy9yZWdlZGl0L3Rlc3RzL29yaWcucmVnLAorCSAgcHJvZ3JhbXMvcmVnZWRpdC90ZXN0cy9yZWdlZGl0LnBsOgorCUFuZHJpeSBQYWxhbWFyY2h1ayA8YXBhM2FAeWFob28uY29tPgorCUFkZGVkIHJlZ2VkaXQgdW5pdCB0ZXN0LCBhIGNvdXBsZSBtaW5vciBjaGFuZ2VzIHRvIHJlZ2VkaXQuCisKKwkqIGRsbHMvb2xlYXV0MzIvb2xlYXV0MzIuc3BlYywgZGxscy9vbGVhdXQzMi9wYXJzZWR0LmMsCisJICBkbGxzL29sZWF1dDMyL3BhcnNlZHQuaCwgZGxscy9vbGVhdXQzMi90eXBlbGliLmMsCisJICBkbGxzL29sZWF1dDMyL3R5cGVsaWIuaCwgZGxscy9vbGVhdXQzMi92YXJpYW50LmMsCisJICBpbmNsdWRlL3d0eXBlcy5oOgorCUphc29uIEVkbWVhZGVzIDx1c0B0aGUtZWRtZWFkZXMuZGVtb24uY28udWs+CisJLSBWYXJBbmQsIFZhckNtcCAoU3RyaW5ncyBvbmx5KSwgVmFyTm90IGltcGxlbWVudGVkLgorCS0gVmFyUGFyc2VOdW1Gcm9tU3RyL1Zhck51bUZyb21QYXJzZU51bSBoYW5kbGUgbmVnYXRpdmUgY3VycmVuY3kKKwkgIG51bWJlcnMuCisJLSBNb3JlIFZhckNtcCBzdXBwb3J0IChEZWNpbWFscyBhbmQgRGF0ZXMpLgorCS0gRGF0ZSBzdXBwb3J0IGZvciBWQiB0aW1lIG9ubHkgKDAuMC0+MS4wKSwgY29ycmVjdGVkIHNvbWUgZGF0ZQorCSAgcm91bmRpbmcgYW5kIGNhbGN1bGF0aW9uIGVycm9ycyBhcm91bmQgdmFyaWFudCBkYXRlcyBhbmQgdGhlIHN5c3RlbQorCSAgdGltZS4KKwktIFZhcmlhbnQgZGF0ZSBzdXBwb3J0IG5vdyByb3VuZCB0cmlwcyEgKERhdGUtPlZhcmlhbnQtPkRhdGUpIGR1ZSB0bworCSAgbWlzdXNlIG9mIHRtX21vbiAoMC4uMTEgbm90IDEuLjEyKS4KKwktIEJldHRlciBwcmUtMTg5OSBzdXBwb3J0IGZvciBkYXRlcyBpbiB0aGUgU1lTVEVNVElNRSBmb3JtYXQuCisJLSBWYXJCc3RyRnJvbUN5LCBWYXJDeUZyb21TdHIgaW1wbGVtZW50ZWQuCisJLSBWYXJGb3JtYXQgcGFydGlhbCBpbXBsZW1lbnRhdGlvbiAoY3VycmVuY3kgYW5kIGRhdGUgc3VwcG9ydCkuCisJLSBWYXJGb3JtYXRGcm9tVG9rZW5zLCBWYXJUb2tlbml6ZUZvcm1hdFN0cmluZyBwYXJ0aWFsIGltcGxlbWVudGF0aW9uCisJICBhcyBwZXIgdzJrIChkYXRlcyBvbmx5IHNvIGZhcikuCisJLSBCZXR0ZXIgZGVidWdnaW5nIHdoZW4gZHVtcGluZyB2YXJpYW50cywgYW5kIHNvbWUgYWRkaXRpb25hbCB0cmFjZQorCSBwb2ludHMgdG8gaGVscCBkZWJ1Z2dpbmcuCisJLSBGaXggdG8gVmFyQnN0ckNtcCB0byBoYW5kbGUgbnVsbCBhbmQgZW1wdHkgc3RyaW5nIHRoZSBzYW1lIChhcyBwZXIKKwkgIHcyaywgZGlmZmVyZW50IHRvIG1zZG4pLgorCS0gRml4IHJldHVybiBmcm9tIFZhckRhdGVGcm9tVWRhdGUuCisJLSBDb3JyZWN0IGRlZmluaXRpb24gb2YgQ1kgc3RydWN0dXJlLgorCisJKiBsb2FkZXIvcGVfaW1hZ2UuYywgbWVtb3J5L3ZpcnR1YWwuYzoKKwlBdm9pZCBsb2FkaW5nIHByb2dyYW1zIGludG8gdGhlIERPUyBtZW1vcnkgYXJlYS4KKworCSogcHJvZ3JhbXMvcmVnYXBpL3Rlc3RzL3JlZ2FwaS5wbDoKKwlBbmRyaXkgUGFsYW1hcmNodWsgPGFwYTNhQHlhaG9vLmNvbT4KKwlSZW1vdmVkIHRyYWNlcyBvZiB0aGUgcmVnZWRpdCB1bml0IHRlc3RzLgorCisJKiBkbGxzL2NvbWN0bDMyL3RhYi5jOgorCUd1eSBMLiBBbGJlcnRlbGxpIDxnYWxiZXJ0ZUBuZW8ubHJ1bi5jb20+CisJLSBBZGQgcm91dGluZXMgdG8gZHVtcCBvdXQgdGFiIGl0ZW1zIGludGVybmFsbHkgYW5kIGV4dGVybmFsbHkKKwktIEFkanVzdCBUQUJfU2V0SXRlbUJvdW5kcyB0byBzcGxpdCB2ZXJ0aWNhbCB0YWJzIG1vcmUgbGlrZSB0aGUgbmF0aXZlLgorCS0gRG9jdW1lbnQgbWFqb3IgZGlmZmVyZW5jZSBpbiBsYXlpbmcgb3V0IHRoZSB2ZXJ0aWNhbCB0YWJzLgorCS0gRml4IGRyYXdpbmcgb2YgaWNvbnMuIFdyb25nIGl0ZW0gcGFkZGluZyB1c2VkIGluIHZlcnRpY2FsIGNhc2UuCisJLSBGaXhlZCBzaXplIG9mIGhvcml6b250YWwgcGFkZGluZy4KKworCSogZGxscy9vbGVhdXQzMi90bWFyc2hhbC5jLCBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlJVHlwZWxpYjo6SW52b2tlOiBIYW5kbGUgZGlmZmVyZW50IGxlbmd0aCBhcmd1bWVudHMgYmV0dGVyLCB3ZSBhbHNvCisJcmV0dXJuIDEgVkFSSUFOVCBvbmx5LgorCisJKiB0b29scy93aW5lYnVpbGQvTWFrZWZpbGUuaW46CisJU3RldmVuIEVkd2FyZHMgPHN0ZXZlbl9lZDQxNTNAeWFob28uY29tPgorCVBvcnRhYmlsaXR5IGZpeC4KKworCSogZGxscy9NYWtlZGxsLnJ1bGVzLmluOgorCVN0ZXZlbiBFZHdhcmRzIDxzdGV2ZW5fZWQ0MTUzQHlhaG9vLmNvbT4KKwlHaXZlIHRoZSBpbXBvcnQgbGlicyBhIHByb3BlciBuYW1lLgorCisJKiBpbmNsdWRlL3NldHVwYXBpLmg6CisJU2FuZGVyIHZhbiBMZWV1d2VuIDxzYW5kZXJ2bEB4czRhbGwubmw+CisJJ2NsYXNzJyBpcyBhIHJlc2VydmVkIHdvcmQgKEMrKykuCisKKzIwMDItMDYtMTQgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRvY3VtZW50YXRpb24vTWFrZWZpbGUuaW4sIGRvY3VtZW50YXRpb24vd2luZW1ha2VyLm1hbiwKKwkgIGxpYnJhcnkvTWFrZWZpbGUuaW4sIG9sZS9NYWtlZmlsZS5pbiwgcHJvZ3JhbXMvLmN2c2lnbm9yZSwKKwkgIHByb2dyYW1zL01ha2VmaWxlLmluLCBwcm9ncmFtcy9NYWtlcHJvZy5ydWxlcy5pbiwKKwkgIHByb2dyYW1zL3dpbmVsYXVuY2hlci5pbiwgdG9vbHMvLmN2c2lnbm9yZSwgdG9vbHMvTWFrZWZpbGUuaW4sCisJICB0b29scy93aW5hcGkvTWFrZWZpbGUuaW4sIHRvb2xzL3dpbmVidWlsZC9NYWtlZmlsZS5pbiwKKwkgIHRvb2xzL3dpbmVsYXVuY2hlci5pbiwgdG9vbHMvd2luZW1ha2VyLm1hbiwKKwkgIHRvb2xzL3dtYy9NYWtlZmlsZS5pbiwgdG9vbHMvd3JjL01ha2VmaWxlLmluLCB0c3gxMS9NYWtlZmlsZS5pbiwKKwkgIHVuaWNvZGUvTWFrZWZpbGUuaW4sIE1ha2UucnVsZXMuaW4sIE1ha2VmaWxlLmluLAorCSAgZGxscy9NYWtlZmlsZS5pbiwgZGxscy9tYWtlX2RsbHMsIGRsbHMvc2hlbGwzMi9NYWtlZmlsZS5pbjoKKwlGaXhlZCBtYWtlIGluc3RhbGwgdGFyZ2V0IHRvIHdvcmsgZXZlbiB3aGVuIG5vdGhpbmcgaGFzIGJlZW4gY29tcGlsZWQKKwl5ZXQuCisJQWRkZWQgaW5zdGFsbC1saWIgYW5kIGluc3RhbGwtZGV2IHRhcmdldHMgdG8gYWxsb3cgcGFydGlhbAorCWluc3RhbGxhdGlvbnM7IG1vdmVkIHdpbmVtYWtlci5tYW4gYW5kIHdpbmVsYXVuY2hlci5pbiB0byBiZXR0ZXIgZml0CisJaW4gdGhlIG5ldyBpbnN0YWxsIGNhdGVnb3JpZXMuCisKKwkqIGRsbHMva2VybmVsL2tlcm5lbDMyLnNwZWMsIGlmMTYzMi9idWlsdGluLmMsCisJICB0b29scy93aW5lYnVpbGQvYnVpbGQuaCwgdG9vbHMvd2luZWJ1aWxkL3NwZWMxNi5jLAorCSAgdG9vbHMvd2luZWJ1aWxkL3NwZWMzMi5jOgorCVVucmVnaXN0ZXIgMTYtYml0IGRsbHMgb24gbW9kdWxlIHVubG9hZC4KKworCSogZGxscy9hZHZhcGkzMi9yZWdpc3RyeS5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlbUBjb2Rld2VhdmVycy5jb20+CisJSW1wbGVtZW50ZWQgcmVjdXJzaXZlIFJlZ0RlbGV0ZUtleSBpbiBXaW45NSBlbXVsYXRpb24uCisKKwkqIGRsbHMvYWR2YXBpMzIvYWR2YXBpLmMsIGRsbHMvYWR2YXBpMzIvYWR2YXBpMzIuc3BlYywgaW5jbHVkZS93aW5iYXNlLmg6CisJQXJpYyBTdGV3YXJ0IDxhcmljQGNvZGV3ZWF2ZXJzLmNvbT4KKwlBZGRlZCBHZXRDdXJyZW50SHdQcm9maWxlQS4KKworCSogb2JqZWN0cy90ZXh0LmM6CisJU2hhY2hhciBTaGVtZXNoIDx3aW5lLXBhdGNoZXNAc3VuLmNvbnN1bWVyLm9yZy5pbD4KKwlFeHRUZXh0T3V0VzogaWYgR2V0Rm9udExhbmd1YWdlSW5mbyBzYXlzIHRoYXQgdGhlIGZvbnQgbWF5IHJlcXVpcmUKKwlyZW9yZGVyaW5nLCBjYWxsIEdldENoYXJhY3RlclBsYWNlbWVudFcgYW5kIHByaW50IHRoZSByZXN1bHQuCisKKwkqIG9iamVjdHMvZm9udC5jOgorCVNoYWNoYXIgU2hlbWVzaCA8d2luZS1wYXRjaGVzQHN1bi5jb25zdW1lci5vcmcuaWw+CisJLSBJbXBsZW1lbnRlZCBhIHNrZWxldG9uIGZvciBHZXRGb250TGFuZ3VhZ2VJbmZvLiBVc2luZyBjb25zdCBtYXNrcyB0bworCSAgbWF0Y2ggYWdhaW5zdCB0aGUgcmVzdWx0IG9mIEdldFRleHRDaGFyc2V0SW5mby4gTm90IGFsbCBhdHRyaWJ1dGVzIGFyZQorCSAgaW1wbGVtZW50ZWQgeWV0LgorCS0gRW5oYW5jZWQgdGhlIGltcGxlbWVudGF0aW9uIG9mIEdldENoYXJhY3RlclBsYWNlbWVudFcgdG8gc3VwcG9ydAorCSAgYmFzaWMgcmVvcmRlcmluZy4gTm90IGltcGxlbWVudGluZyB0aGUgZnVsbCBCaURpIGFsZ29yaXRobSB5ZXQuCisKKwkqIGRsbHMva2VybmVsL25scy9oZWIubmxzOgorCVNoYWNoYXIgU2hlbWVzaCA8d2luZS1wYXRjaGVzQHN1bi5jb25zdW1lci5vcmcuaWw+CisJQ2hhbmdlZCB0aGUgY291bnRyeSdzIG5hbWUgdG8gIklMIiB0byBjb25mb3JtIHRvIGNvbW1vbmx5IGhlbGQKKwlwcmFjdGljZXMuCisKKwkqIHdpbmRvd3Mvc3B5LmM6CisJR3V5IEwuIEFsYmVydGVsbGkgPGdhbGJlcnRlQG5lby5scnVuLmNvbT4KKwktIER1bXAgb3V0IHRoZSBUQ0lURU0gc3RydWN0dXJlIGZvciBhcHByb3ByaWF0ZSBtZXNzYWdlcy4KKwktIER1bXAgb3V0IHRoZSByZWN0YW5nbGUgZm9yIHRoZSBUQ01fQURKVVNUUkVDVCBtZXNzYWdlLgorCisJKiBkbGxzL2NvbWN0bDMyL3Byb3BzaGVldC5jOgorCUd1eSBMLiBBbGJlcnRlbGxpIDxnYWxiZXJ0ZUBuZW8ubHJ1bi5jb20+CisJU3VwcG9ydCBpbWFnZXMgb24gdGhlIHRhYnMgb2YgcGFnZXMgdGhhdCBhcmUgYWRkZWQgKG5vdCBqdXN0IHRoZQorCWZpcnN0KS4KKworCSogZGxscy9NYWtlZGxsLnJ1bGVzLmluLCBkbGxzL01ha2VmaWxlLmluLCBkbGxzL2dkaS9NYWtlZmlsZS5pbiwKKwkgIGRsbHMva2VybmVsL01ha2VmaWxlLmluLCBkbGxzL21ha2VfZGxscywgZGxscy9udGRsbC9NYWtlZmlsZS5pbiwKKwkgIGRsbHMvdXNlci9NYWtlZmlsZS5pbiwgZGxscy93aW5zcG9vbC9NYWtlZmlsZS5pbiwKKwkgIGRsbHMveDExZHJ2L01ha2VmaWxlLmluOgorCVJlbW92ZWQgaW5zdGFsbF9saWJkaXIgdGFyZ2V0cyBhbmQgY2VudHJhbGl6ZWQgdGhlIHN5bWxpbmtzIGNyZWF0aW9uCisJaW4gdGhlIG1haW4gZGxsIG1ha2VmaWxlLgorCisJKiBjb25maWd1cmUsIGNvbmZpZ3VyZS5hYywgZGxscy9NYWtlZmlsZS5pbiwgZGxscy9kaW5wdXQvZGV2aWNlLmMsCisJICBkbGxzL2RpbnB1dC9kZXZpY2VfcHJpdmF0ZS5oLCBkbGxzL2RpbnB1dC9kaW5wdXRfbWFpbi5jLAorCSAgZGxscy9kaW5wdXQvZGlucHV0X3ByaXZhdGUuaCwgZGxscy9kaW5wdXQvam95c3RpY2svbGludXguYywKKwkgIGRsbHMvZGlucHV0L2pveXN0aWNrL2xpbnV4aW5wdXQuYywgZGxscy9kaW5wdXQva2V5Ym9hcmQvbWFpbi5jLAorCSAgZGxscy9kaW5wdXQvbW91c2UvbWFpbi5jLCBkbGxzL2RpbnB1dDgvLmN2c2lnbm9yZSwKKwkgIGRsbHMvZGlucHV0OC9NYWtlZmlsZS5pbiwgZGxscy9kaW5wdXQ4L2RpbnB1dDguc3BlYywKKwkgIGRsbHMvZGlucHV0OC9kaW5wdXQ4X21haW4uYywgaW5jbHVkZS9kM2R0eXBlcy5oLAorCSAgaW5jbHVkZS9kaW5wdXQuaDoKKwlPdmUgS2FhdmVuIDxvdmVrQHRyYW5zZ2FtaW5nLmNvbT4KKwktIHN1cHBvcnQgRGlyZWN0SW5wdXQgOCBpbnRlcmZhY2VzLgorCS0gaW1wbGVtZW50ZWQgbW91c2Ugd2hlZWwgc3VwcG9ydC4KKworCSogZGxscy9vbGVhdXQzMi90bWFyc2hhbC5jOgorCU1hcmN1cyBNZWlzc25lciA8bWFyY3VzQGpldC5mcmFua2VuLmRlPgorCUhhbmRsZSBhcmdzaXplIGZvciBWVF9EQVRFLgorCisJKiBkbGxzL250ZGxsL2ZpbGUuYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZW1AY29kZXdlYXZlcnMuY29tPgorCVBhcnRpYWxseSBpbXBsZW1lbnQgTnRPcGVuRmlsZSBhbmQgTnRSZWFkRmlsZS4KKworCSogZGxscy94MTFkcnYvZXZlbnQuYywgZGxscy94MTFkcnYvbW91c2UuYywgZGxscy94MTFkcnYvd2luZG93LmMsCisJICBkbGxzL3gxMWRydi94MTFkcnZfbWFpbi5jLCBpbmNsdWRlL3gxMWRydi5oOgorCVVwZGF0ZSB0aGUgY3Vyc29yIGZvciBlYWNoIHdpbmRvdyBvbiByZWNlaXZpbmcgYW4gWDExIGV2ZW50LCBkb24ndAorCXdhaXQgZm9yIHRoZSBTZXRDdXJzb3IgY2FsbC4KKwlBZGRlZCBFbnRlck5vdGlmeSBoYW5kbGVyIHRvIHNldCB0aGUgY3Vyc29yIG9uIHdpbmRvdyBtYXAvdW5tYXAuCisKKwkqIGluY2x1ZGUvcXVldWUuaCwgd2luZG93cy9jdXJzb3JpY29uLmM6CisJU3RvcmUgdGhlIGN1cnJlbnQgY3Vyc29yIGluIHRoZSB0aHJlYWQgcXVldWUgaW5zdGVhZCBvZiBnbG9iYWxseS4KKworCSogZGxscy9jb21jdGwzMi9wcm9ncmVzcy5jOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQ29zbWV0aWMgZml4LgorCisJKiBkbGxzL2dkaS9NYWtlZmlsZS5pbiwgZGxscy9nZGkvZW5obWZkcnYvYml0Ymx0LmMsCisJICBkbGxzL2dkaS9lbmhtZmRydi9pbml0LmM6CisJSHV3IEQgTSBEYXZpZXMgPGhkYXZpZXNAY29kZXdlYXZlcnMuY29tPgorCUFkZGVkIFBhdEJsdCBzdXBwb3J0IGluIGVuaGFuY2VkIG1ldGFmaWxlcy4KKworMjAwMi0wNi0xMyAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KKworCSogb2JqZWN0cy9nZGlvYmouYzoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUZpeGVkIHRoZSBuYW1lcyBvZiBzb21lIHN0b2NrIGZvbnRzLgorCisJKiBkbGxzL3N0aS9zdGkuc3BlYywgZGxscy9zdGkvc3RpX21haW4uYzoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVN0dWIgZm9yIFN0aUNyZWF0ZUluc3RhbmNlLgorCisJKiBkbGxzL29sZTMyL3N0b3JhZ2UuYywgZGxscy9zZXR1cGFwaS9xdWV1ZS5jLCBkbGxzL3VzZXIvbHN0ci5jLAorCSAgZGxscy94MTFkcnYvd2lucG9zLmMsIGdyYXBoaWNzL3BhdGguYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZW1AY29kZXdlYXZlcnMuY29tPgorCUplcmVteSBXaGl0ZSA8andoaXRlQGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXhlZCBtZW1vcnkgbGVha3MuCisKKwkqIGRsbHMvZGRyYXcvdmVyc2lvbi5yYzoKKwlEbWl0cnkgVGltb3Noa292IDxkbWl0cnlAY29kZXdlYXZlcnMuY29tPgorCUZpeGVkIHZlcnNpb24gaW5mby4KKworCSogZGxscy9jb21jdGwzMi90b29sYmFyLmM6CisJRnJhbudvaXMgR291Z2V0IDxmZ291Z2V0QGNvZGV3ZWF2ZXJzLmNvbT4KKwlGaXggaGFuZGxpbmcgb2Ygc3RyaW5ncyB0aGF0IGRvIG5vdCBmaW5pc2ggd2l0aCAifHwiLgorCUZpeCB0aGUgaW5kZW50YXRpb24gb2YgdGhlIHdoaWxlIGxvb3AgaW4gVE9PTEJBUl9BZGRTdHJpbmdXLgorCisJKiBkbGxzL2NyeXB0MzIvY3J5cHQzMi5zcGVjLCBkbGxzL2NyeXB0MzIvbWFpbi5jOgorCU1pa2UgTWNDb3JtYWNrIDxtaWtlX21jY29ybWFja0BzdGFydC5jb20uYXU+CisJQWRkZWQgYSBmZXcgc3R1YnMuCisKKwkqIGRsbHMva2VybmVsL25scy9iZ3IubmxzOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQWRkZWQgQnVsZ2FyaWFuIE5MUyBkZWZpbml0aW9ucyAod2l0aCB0aGUgaGVscCBvZiBBbnRvbiBaaW5vdmlldikuCisKKwkqIHNjaGVkdWxlci9jbGllbnQuYywgc2NoZWR1bGVyL3Byb2Nlc3MuYywKKwkgIGRsbHMvbnRkbGwvc2lnbmFsX2kzODYuYywgZGxscy9udGRsbC9zaWduYWxfc3BhcmMuYzoKKwlGcmFu529pcyBHb3VnZXQgPGZnb3VnZXRAY29kZXdlYXZlcnMuY29tPgorCVJlc2V0IHNpZ25hbHMgdG8gU0lHX0RGTCBiZWZvcmUgc3RhcnRpbmcgYSBjaGlsZCBwcm9jZXNzLgorCisJKiB3aW5kb3dzL3BhaW50aW5nLmM6CisJRG1pdHJ5IFRpbW9zaGtvdiA8ZG1pdHJ5QGNvZGV3ZWF2ZXJzLmNvbT4KKwlBdm9pZCBjcmFzaGVzIGlmIHdpbmRvdyBiZWxvbmdzIHRvIGFub3RoZXIgcHJvY2Vzcy4KKworCSogcmVsYXkzMi9idWlsdGluMzIuYzoKKwlNYWtlIGJ1aWx0aW5zIHByZXRlbmQgdG8gYmUgbG9hZGVkIGZyb20gdGhlIHN5c3RlbSBkaXJlY3RvcnkuCisKKwkqIGxvYWRlci9wZV9pbWFnZS5jOgorCURvbid0IGdvIHRocm91Z2ggdGhlIGV4cG9ydCB0YWJsZSBpZiB3ZSBhcmUgbm90IHRyYWNpbmcgYW55dGhpbmcuCisKKwkqIGRsbHMvc2V0dXBhcGkvcGFyc2VyLmM6CisJRm9yIGxpbmVzIHRoYXQgY29udGFpbiBhIHNpbmdsZSBmaWVsZCwgdGhlIGZpZWxkIGlzIGFsc28gdGhlIGxpbmUga2V5CisJKHRoYW5rcyB0byBBcmljIFN0ZXdhcnQpLgorCisJKiBkbGxzL3NldHVwYXBpL2luc3RhbGwuYzoKKwlBcmljIFN0ZXdhcnQgPGFyaWNAY29kZXdlYXZlcnMuY29tPgorCVdoZW4gcHJvY2Vzc2luZyB0aGUgcmVnIHNlY3Rpb24gd2UgbmVlZCB0byBkZWxldGUgYmVmb3JlIGFkZGluZy4KKwlGaXJzdCBwYXNzIGltcGxlbWVudGF0aW9uIG9mIFVwZGF0ZUluaS4KKworCSogZGxscy9ycGNydDQvcnBjcnQ0LnNwZWMsIGRsbHMvcnBjcnQ0L3JwY3J0NF9tYWluLmM6CisJTWlrZSBNY0Nvcm1hY2sgPG1pa2VfbWNjb3JtYWNrQGxvb2tzbWFydC5jb20uYXU+CisJQWRkZWQgYW4gZW1wdHkgaW1wbGVtZW50YXRpb24gZm9yIFV1aWRGcm9tU3RyaW5nQS9XLgorCisJKiBkbGxzL250ZGxsL2hlYXAuYzoKKwlSZXN0b3JlZCBNYWtlQ3JpdGljYWxTZWN0aW9uR2xvYmFsIHRoYXQgZ290IGxvc3Qgc29tZXdoZXJlLgorCisJKiBkbGxzL250ZGxsL2Nkcm9tLmM6CisJRG9uJ3QgdHJ5IHRvIG9wZW4gQ0RST00gZGV2aWNlIGlmIG5vbmUgd2FzIHNwZWNpZmllZC4KKworCSogZGxscy9rZXJuZWwvdGltZS5jOgorCVVscmljaCBDemVrYWxsYSA8dWxyaWNoY0Bjb2Rld2VhdmVycy5jb20+CisJQWRkZWQgc3VwcG9ydCBmb3IgQ0FMX0lUV09ESUdJVFlFQVJNQVguCisKKwkqIGRsbHMvY3J0ZGxsL2NydGRsbC5zcGVjLCBkbGxzL2NydGRsbC9jcnRkbGxfbWFpbi5jOgorCXN0cnVjdCBfc3RhdCBsYXlvdXQgaXMgZGlmZmVyZW50IGJldHdlZW4gY3J0ZGxsIGFuZCBtc3ZjcnQuCisKKwkqIGRsbHMvY29tbWRsZy9wcmludGRsZy5jOgorCVN0b3JlIHByaW50IGRsZyBzdHJ1Y3R1cmUgaW4gYSBwcm9wZXJ0eSBpbnN0ZWFkIG9mIERXTF9VU0VSLgorCisJKiBkbGxzL2F2aWNhcDMyL2F2aWNhcDMyLnNwZWMsIGRsbHMvYXZpY2FwMzIvYXZpY2FwMzJfbWFpbi5jOgorCURtaXRyeSBUaW1vc2hrb3YgPGRtaXRyeUBjb2Rld2VhdmVycy5jb20+CisJQWRkZWQgc3R1YnMgZm9yIGNhcEdldERyaXZlckRlc2NyaXB0aW9uLgorCisJKiBkZWJ1Z2dlci9kZWJ1Zy5sLCBkZWJ1Z2dlci9tZW1vcnkuYywgZGVidWdnZXIvdHlwZXMuYzoKKwlBZGRlZCAvZyBkZWJ1ZyBmb3JtYXQgdG8gZHVtcCBHVUlEcy4KKworCSogZGVidWdnZXIvZGVidWdnZXIuaCwgZGVidWdnZXIvc291cmNlLmMsIGRlYnVnZ2VyL3dpbmVkYmcuYzoKKwlEb24ndCBhc2sgZm9yIHNvdXJjZSBmaWxlIGluIGF1dG8gbW9kZS4KKworCSogb2xlL29sZTJubHMuYzoKKwlQYXVsIE1pbGxhciA8cGF1bG1AYXN0cm8uZ2xhLmFjLnVrPgorCUZpeCB1c2Ugb2YgTE9DQUxFX05PVVNFUk9WRVJSSURFIGZsYWcgaW4gR2V0TnVtYmVyRm9ybWF0QSBhbmQKKwlHZXRDdXJyZW5jeUZvcm1hdEEuCisKKwkqIGNvbnRyb2xzL2NvbWJvLmMsIGNvbnRyb2xzL2VkaXQuYywgY29udHJvbHMvbGlzdGJveC5jOgorCU1ha2Ugc3VyZSBlZGl0IGFuZCBsaXN0Ym94IGNvbnRyb2xzIGFyZSBvZiBzYW1lIEFTQ0lJL1VuaWNvZGUgc3R5bGUgYXMKKwl0aGUgY29tYm8gYm94LiBGaXhlZCBhIGZldyBNQkNTIGlzc3VlcyB3aXRoIFdNX0dFVFRFWFRMRU5HVEggaGFuZGxpbmcuCisKKwkqIGRsbHMvZHNvdW5kL01ha2VmaWxlLmluLCBkbGxzL2Rzb3VuZC9idWZmZXIuYywKKwkgIGRsbHMvZHNvdW5kL2NhcHR1cmUuYywgZGxscy9kc291bmQvZHNvdW5kLnNwZWMsCisJICBkbGxzL2Rzb3VuZC9kc291bmRfbWFpbi5jLCBkbGxzL2Rzb3VuZC9kc291bmRfcHJpdmF0ZS5oLAorCSAgZGxscy9kc291bmQvbWl4ZXIuYywgZGxscy9kc291bmQvcHJpbWFyeS5jLAorCSAgZGxscy9kc291bmQvcHJvcHNldC5jLCBkbGxzL2Rzb3VuZC9zb3VuZDNkLmMsIGluY2x1ZGUvZHNvdW5kLmg6CisJT3ZlIEthYXZlbiA8b3Zla0B0cmFuc2dhbWluZy5jb20+CisJU3VwcG9ydCBEaXJlY3RTb3VuZCA4IGludGVyZmFjZXMuIFNwbGl0IGludGVyZmFjZSBpbXBsZW1lbnRhdGlvbnMgaW50bworCXNlcGFyYXRlIGZpbGVzLiBTcGxpdCBwcmltYXJ5IGJ1ZmZlciBhbmQgc2Vjb25kYXJ5IGJ1ZmZlciBpbnRlcmZhY2VzCisJaW50byBzZXBhcmF0ZSBpbXBsZW1lbnRhdGlvbnMuIE1hZGUgdGhlIHByaW1hcnkgYnVmZmVyIHN0YXRlIHBhcnQgb2YKKwl0aGUgZHNvdW5kIG9iamVjdCwgc28gcHJpbWFyeSBidWZmZXIgb2JqZWN0cyBjYW4gYmUgY3JlYXRlZCBhbmQKKwlyZWZjb3VudGVkIGluZGVwZW5kZW50bHkuIE1hZGUgdGhlIGludGVyZmFjZXMgZm9sbG93IENPTSBhZ2dyZWdhdGlvbgorCXJ1bGVzIG1vcmUgY2xvc2VseS4gQ29udmVydGVkIHRoZSBkc291bmQgY3JpdGljYWwgc2VjdGlvbiB0byBhIFIvVworCWxvY2sgdG8gaW1wcm92ZSBwb3RlbnRpYWwgcmVtaXhpbmcgY29uY3VycmVuY3kuIEZpeGVkIHZhcmlvdXMgYnVncyBhbmQKKwlyZWZjb3VudGluZyBpc3N1ZXMuCisKKwkqIGRsbHMvY29tY2F0L01ha2VmaWxlLmluLCBkbGxzL2NvbWNhdC9jb21jYXQuaCwKKwkgIGRsbHMvY29tY2F0L2NvbWNhdC5zcGVjLCBkbGxzL2NvbWNhdC9jb21jYXRfbWFpbi5jLAorCSAgZGxscy9jb21jYXQvaW5mb3JtYXRpb24uYywgZGxscy9jb21jYXQvcmVnaXN0ZXIuYywKKwkgIGRsbHMvY29tY2F0L3JlZ3N2ci5jLCBkbGxzL2NvbWNhdC9yZWdzdnIuaDoKKwlKb2huIEsuIEhvaG0gPGpob2htQGFjbS5vcmc+CisJQ29tcGxldGVkIGltcGxlbWVudGF0aW9uIG9mIGNvbWNhdC5kbGwsIGluY2wuIERsbFtVbl1SZWdpc3RlclNlcnZlci4KKworCSogcHJvZ3JhbXMvcmVnc3ZyMzIvTWFrZWZpbGUuaW46IERvbid0IHVzZSBtc3ZjcnQuCisKKwkqIHByb2dyYW1zL3JlZ3N2cjMyL3JlZ3N2cjMyLmM6CisJR3JlZ2cgTWF0dGluc29uIDxnbTEzODI0MkBzY290LmNhbmFkYS5zdW4uY29tPgorCVJlcGxhY2VkIHN0cmljbXAvc3RybmljbXAgd2l0aCBzdHJjYXNlY21wL3N0cm5jYXNlY21wLgorCisJKiBkbGxzL3gxMWRydi9kZXNrdG9wLmM6CisJVXdlIEJvbm5lcyA8Ym9uQGVsZWt0cm9uLmlrcC5waHlzaWsudHUtZGFybXN0YWR0LmRlPgorCURpc3BsYXkgdGhlIG5hbWUgb2YgdGhlIHN0YXJ0ZWQgcHJvY2VzcyBpbiB0aGUgZGVza3RvcCB0aXRsZS4KKworCSogb2JqZWN0cy9nZGlvYmouYzoKKwlXb24gS3l1IFBhcmsgPHdrcGFya0BjaGVtLnNra3UuYWMua3I+CisJRml4ZWQgZGVmYXVsdEd1aUZvbnQgZm9yIEtvcmVhbi4KKworCSogZGxscy9jb21jdGwzMi9wcm9wc2hlZXQuYzoKKwlHdXkgTC4gQWxiZXJ0ZWxsaSA8Z2FsYmVydGVAbmVvLmxydW4uY29tPgorCS0gQ29ycmVjdCBwYWdlIHJlY3RhbmdsZSBjYWxjdWxhdGlvbi4KKwktIEltcHJvdmUgdHJhY2VzLgorCisJKiBkbGxzL3dpbnNvY2svc29ja2V0LmMsIGRsbHMvd2luc29jay93czJfMzIuc3BlYzoKKwlQZXRlciBIdW5uaXNldHQgPHBldGVyQHRyYW5zZ2FtaW5nLmNvbT4KKwlPdmUgS2FhdmVuIDxvdmVrQHRyYW5zZ2FtaW5nLmNvbT4KKwktIGNoZWNrIGZvciBzb2NrYWRkciBiZWluZyBOVUxMLgorCS0gaGFja2lzaCBpbXBsZW1lbnRhdGlvbiBvZiBXU0FEdXBsaWNhdGVTb2NrZXQuCisKKzIwMDItMDYtMTAgIEFsZXhhbmRyZSBKdWxsaWFyZCAgPGp1bGxpYXJkQHdpbmVocS5jb20+CisKKwkqIGRsbHMveDExZHJ2L2tleWJvYXJkLmM6CisJRGF2aWQgSGFtbWVydG9uIDxkYXZpZEB0cmFuc2dhbWluZy5jb20+CisJTWFwVmlydHVhbEtleSBhY3R1YWxseSByZXR1cm5zIHVwcGVyY2FzZSBrZXlzIGluIFdpbmRvd3MuCisKKwkqIHdpbmRvd3MvbWVzc2FnZS5jOgorCURhdmlkIEhhbW1lcnRvbiA8ZGF2aWRAdHJhbnNnYW1pbmcuY29tPgorCVBldGVyIEh1bm5pc2V0dCA8cGV0ZXJAdHJhbnNnYW1pbmcuY29tPgorCS0gRml4IFRyYW5zbGF0ZU1lc3NhZ2UgcmV0dXJuIGNvZGUuCisJLSBNYWtlIEdldEtleVN0YXRlIHdvcmsgcHJvcGVybHkgZm9yIGFwcHMgdGhhdCB0ZXN0IDB4ODAgaW5zdGVhZCBvZgorCSAgMHg4MDAwLgorCisJKiBkbGxzL29sZWF1dDMyL3R5cGVsaWIuYywgZGxscy9vbGVhdXQzMi90eXBlbGliLmg6CisJSHV3IEQgTSBEYXZpZXMgPGguZGF2aWVzMUBwaHlzaWNzLm94LmFjLnVrPgorCUFkZCBtb3JlIG1hZ2ljIHRvIGZpbmQgdGhlIHN0YXJ0IG9mIHRoZSBuYW1ldGFibGUuCisKKwkqIGRsbHMvZ2RpL2RyaXZlci5jLCBkbGxzL2dkaS9lbmhtZmRydi9pbml0LmMsCisJICBkbGxzL2dkaS9tZmRydi9pbml0LmMsIGRsbHMvZ2RpL3dpbjE2ZHJ2L2dyYXBoaWNzLmMsCisJICBkbGxzL2dkaS93aW4xNmRydi9pbml0LmMsIGRsbHMvZ2RpL3dpbjE2ZHJ2L3dpbjE2ZHJ2LmgsCisJICBkbGxzL3R0eWRydi9kYy5jLCBkbGxzL3R0eWRydi9ncmFwaGljcy5jLCBkbGxzL3R0eWRydi90dHlkcnYuaCwKKwkgIGRsbHMvdHR5ZHJ2L3R0eWRydi5zcGVjLCBkbGxzL3R0eWRydi93bmQuYywgZGxscy93aW5lcHMvaW5pdC5jLAorCSAgZGxscy93aW5lcHMvd2luZXBzLnNwZWMsIGRsbHMveDExZHJ2L3dpbnBvcy5jLAorCSAgZGxscy94MTFkcnYveDExZHJ2LnNwZWMsIGRsbHMveDExZHJ2L3hyZW5kZXIuYywKKwkgIGdyYXBoaWNzL3gxMWRydi9iaXRibHQuYywgZ3JhcGhpY3MveDExZHJ2L2NsaXBwaW5nLmMsCisJICBncmFwaGljcy94MTFkcnYvZGliLmMsIGdyYXBoaWNzL3gxMWRydi9ncmFwaGljcy5jLAorCSAgZ3JhcGhpY3MveDExZHJ2L2luaXQuYywgZ3JhcGhpY3MveDExZHJ2L3RleHQuYywgaW5jbHVkZS9nZGkuaCwKKwkgIGluY2x1ZGUveDExZHJ2LmgsIG9iamVjdHMvY2xpcHBpbmcuYywgb2JqZWN0cy9kYy5jLAorCSAgb2JqZWN0cy9yZWdpb24uYzoKKwlNb3ZlZCBEQyBvcmlnaW4gaW50byBkZXZpY2Utc3BlY2lmaWMgc3RydWN0dXJlLgorCUZpeGVkIGhhbmRsaW5nIG9mIERDIG9yaWdpbiBpbiBYMTEgZHJpdmVyLgorCisJKiBkbGxzL21zYWNtL2ltYWFkcDMyL2ltYWFkcDMyLmM6CisJRGF2aWQgRC4gSGFnb29kIDx3b3diYWdnZXJAc2t0Yy5uZXQ+CisJQURQQ00gbnliYmxlIHByb2Nlc3Npbmcgb3JkZXIgd2FzIGluY29ycmVjdC4KKworCSogZGxscy91c2VyL3RleHQuYzoKKwlQYXVsIFJ1cGUgPHBydXBlQG15cmVhbGJveC5jb20+CisJRmFzdGVyIHBlcmZvcm1hbmNlIGluIFRFWFRfRWxsaXBzaWZ5IGZvciBsb25nIHN0cmluZ3MuCisKKwkqIGRsbHMvY29tY3RsMzIvbGlzdHZpZXcuYzoKKwlQYXVsIFJ1cGUgPHBydXBlQG15cmVhbGJveC5jb20+CisJU3VwcG9ydCBmb3IgTFZNX1NVQklURU1ISVRURVNUOyBjaGVjayBmb3Igb3V0LW9mLWJvdW5kcyBzdWJpdGVtIGluZGV4CisJaW4gTElTVFZJRVdfR2V0U3ViSXRlbVJlY3QuCisKKwkqIGRsbHMvc2hlbGwzMi9kaWFsb2dzLmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0NhLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfQ3MucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0RhLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfRGUucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0VuLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfRW8ucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0VzLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfRmkucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0ZyLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfSHUucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0l0LnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfSmEucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX0tvLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfTmwucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX05vLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfUGwucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX1B0LnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfUnUucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX1NrLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfU3YucmMsIGRsbHMvc2hlbGwzMi9zaGVsbDMyX1dhLnJjLAorCSAgZGxscy9zaGVsbDMyL3NoZWxsMzJfWmgucmM6CisJTml4IE4uIE5peCA8bml4QGdvLW5peC5jYT4KKwlBZGRlZCBSdW5GaWxlRGxnIHdpdGggTVJVIGxpc3QuCisJQWRkZWQgdGVtcGxhdGUgdG8gYWxsIC5yYyBmaWxlcy4KKworCSogZG9jdW1lbnRhdGlvbi9idWdzLnNnbWw6CisJVG9ueSBMYW1icmVndHMgPHRvbnlfbGFtYnJlZ3RzQHRlbHVzcGxhbmV0Lm5ldD4KKwlTb21lIGdyYW1tYXIgZml4ZXMuCisKKwkqIGRsbHMvY29tY3RsMzIvY29tY3RsX0tvLnJjLCBkbGxzL2NvbWN0bDMyL3JzcmMucmMsCisJICBkbGxzL2NvbW1kbGcvY2RsZ19Lby5yYywgZGxscy91c2VyL3Jlc291cmNlcy91c2VyMzJfS28ucmMsCisJICBkbGxzL3dpbmVwcy9yc3JjLnJjLCBkbGxzL3dpbmVwcy93cHNfS28ucmM6CisJV29uLWt5dSBQYXJrIDx3a3BhcmtAa2xkcC5vcmc+CisJQWRkZWQgS29yZWFuIHJlc291cmNlcy4KKworCSogZGxscy9jb21tZGxnL2ZpbGVkbGc5NS5jOgorCVNhbmRlciB2YW4gTGVldXdlbiA8c2FuZGVydmxAeHM0YWxsLm5sPgorCS0gU2F2ZSBhbmQgcmVzdG9yZSBjdXJyZW50IGRpcmVjdG9yeSBpbiBHZXRGaWxlRGlhbG9nOTVXIGlmCisJICBPRk5fTk9DSEFOR0VESVIgZmxhZyBzZXQuCisJLSBHZXRGaWxlRGlhbG9nOTVXOiBvbmx5IGNvbnZlcnQgb2ZuLT5scFRlbXBsYXRlTmFtZSBpZiBpdCdzIGEgc3RyaW5nCisJICByZXNvdXJjZSBpZCAoZml4ZXMgT3Blbk9mZmljZSAxLjAgZmlsZSBvcGVuIGRpYWxvZyBjcmFzaCkuCisJLSBJZ25vcmUgT0ZOX0ZJTEVNVVNURVhJU1QgZmxhZyBmb3Igc2F2ZSBmaWxlIGRpYWxvZyAoZml4ZXMgc2F2ZQorCSAgZGlhbG9nIGluIEVsc3RhckZvcm11bGFyKS4KKwktIFJld3JvdGUgY2FzdHMgdGhhdCBzb21lIGNvbXBpbGVycyBkb24ndCBhY2NlcHQuCisKKwkqIGRvY3VtZW50YXRpb24vc2FtcGxlcy9jb25maWc6CisJTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJQ2hhbmdlZCBEbGxPdmVycmlkZXMgc28gd2UgdXNlIGJ1aWx0aW4gcnBjcnQ0LCBvbGUzMiwgb2xlYXV0MzIuCisKKwkqIGRsbHMvb2xlYXV0MzIvdG1hcnNoYWwuYzoKKwlNYXJjdXMgTWVpc3NuZXIgPG1hcmN1c0BqZXQuZnJhbmtlbi5kZT4KKwlNZXJnZWQgdGhlIHR3byBzZXJpYWxpemVyIGFuZCB1bnNlcmlhbGl6ZXIgZnVuY3Rpb25zIGludG8gb25lLCBjbGVhbmVkCisJdGhlbSB1cC4KKwlWVF9QVFI6IEhhbmRsZSBOVUxMIHBvaW50ZXJzIGJ5IHNlbmRpbmcgYSBjb29raWUuCisJQWRkZWQgc3VwcG9ydCBmb3I6IFZUX0NBUlJBWSwgVlRfRElTUEFUQ0gsIFRLSU5EX1JFQ09SRCwgVlRfVk9JRCwKKwlWVF9VSTEsIFZUX1VJMiwgVlRfRVJST1IsIFZUX1VJNCwgVlRfVUlOVC4KKwlBZGRlZCBhIGN1c3RvbSBzZXJpYWxpemVyIGZvciBESVNQUEFSQU1TIHN0cnVjdC4KKworCSogZGxscy9vbGVhdXQzMi90eXBlbGliLmM6CisJTWFyY3VzIE1laXNzbmVyIDxtYXJjdXNAamV0LmZyYW5rZW4uZGU+CisJQWRkZWQgc29tZSBkZWJ1Z291dHB1dCBmdW5jdGlvbnMgZm9yIFRZUEVBVFRSLCBJRExERVNDLCBWQVJERVNDLgorCVN1cHBvcnQgbW9yZSBwYXJhbWV0ZXJzIGluIF9pbnZva2UgKG5lZWRlZCBmb3IgSURpc3BhdGNoOjpJbnZva2UgaW4KKwl0aGUgbWFyc2hhbGxlcikuCisKKwkqIGRsbHMvc2hlbGwzMi9zaGVsbG9sZS5jOgorCVNhbmRlciB2YW4gTGVldXdlbiA8c2FuZGVydmxAeHM0YWxsLm5sPgorCUhhbmRsZSBhc2NpaSAmIHVuaWNvZGUgZHJhZyBhbmQgZHJvcCBzdHJ1Y3R1cmVzIGluIERyYWdRdWVyeUZpbGVBICYKKwlEcmFnUXVlcnlGaWxlVy4KKworCSogZGxscy9vcGVuZ2wzMi93Z2wuYywgaW5jbHVkZS93aW5nZGkuaDoKKwlKZXNzZSBBbGxlbiA8dWhfamFAZ214Lm5ldD4KKwlMaW9uZWwgVWxtZXIgPGxpb25lbC51bG1lckBmcmVlLmZyPgorCUFkZGVkIGltcGxlbWVudGF0aW9uIG9mIHdnbFN3YXBMYXllckJ1ZmZlcnMuCisKKwkqIGRsbHMvbnRkbGwvbG9hZGVyLmMsIGRsbHMvbnRkbGwvbnRkbGwuc3BlYzoKKwlNaWtlIE1jQ29ybWFjayA8bWlrZW1AY29kZXdlYXZlcnMuY29tPgorCS0gUGFydGlhbGx5IGltcGxlbWVudCBMZHJHZXREbGxIYW5kbGUuCisJLSBJbXBsZW1lbnQgTGRyR2V0UHJvY2VkdXJlQWRkcmVzcy4KKworCSogZG9jdW1lbnRhdGlvbi9SRUFETUUuZnI6CisJVmluY2VudCBC6XJvbiA8dmJlcm9uQG1lY2Fuby5nbWUudXNoZXJiLmNhPgorCVVwZGF0ZWQgc28gaXQncyBpbiBsaW5lIHdpdGggUkVBRE1FLgorCisyMDAyLTA2LTA1ICBBbGV4YW5kcmUgSnVsbGlhcmQgIDxqdWxsaWFyZEB3aW5laHEuY29tPgorCisJKiBWRVJTSU9OLCBjb25maWd1cmUsIEFOTk9VTkNFLCBDaGFuZ2VMb2c6CisJUmVsZWFzZSAyMDAyMDYwNS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMjAwMi0wNi0wNSAgQWxleGFuZHJlIEp1bGxpYXJkICA8anVsbGlhcmRAd2luZWhxLmNvbT4KIAogCSogZG9jdW1lbnRhdGlvbi9SRUFETUUuZnI6CmRpZmYgLS1naXQgYS9WRVJTSU9OIGIvVkVSU0lPTgppbmRleCBjOGE0YWZlLi4yNjBjMzQzIDEwMDY0NAotLS0gYS9WRVJTSU9OCisrKyBiL1ZFUlNJT04KQEAgLTEgKzEgQEAKLVdpbmUgdmVyc2lvbiAyMDAyMDYwNQorV2luZSB2ZXJzaW9uIDIwMDIwNzEwCmRpZmYgLS1naXQgYS9jb25maWd1cmUgYi9jb25maWd1cmUKaW5kZXggMTVmYjM1NS4uYTAyOWRiMCAxMDA3NTUKLS0tIGEvY29uZmlndXJlCisrKyBiL2NvbmZpZ3VyZQpAQCAtMSw2ICsxLDYgQEAKICMhIC9iaW4vc2gKICMgR3Vlc3MgdmFsdWVzIGZvciBzeXN0ZW0tZGVwZW5kZW50IHZhcmlhYmxlcyBhbmQgY3JlYXRlIE1ha2VmaWxlcy4KLSMgR2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjUzIGZvciBXaW5lIDIwMDIwNjA1LgorIyBHZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTMgZm9yIFdpbmUgMjAwMjA3MTAuCiAjCiAjIENvcHlyaWdodCAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAxOTk2LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyCiAjIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpAQCAtMjU0LDggKzI1NCw4IEBACiAjIElkZW50aXR5IG9mIHRoaXMgcGFja2FnZS4KIFBBQ0tBR0VfTkFNRT0nV2luZScKIFBBQ0tBR0VfVEFSTkFNRT0nd2luZScKLVBBQ0tBR0VfVkVSU0lPTj0nMjAwMjA2MDUnCi1QQUNLQUdFX1NUUklORz0nV2luZSAyMDAyMDYwNScKK1BBQ0tBR0VfVkVSU0lPTj0nMjAwMjA3MTAnCitQQUNLQUdFX1NUUklORz0nV2luZSAyMDAyMDcxMCcKIFBBQ0tBR0VfQlVHUkVQT1JUPScnCiAKIGFjX3VuaXF1ZV9maWxlPSJzZXJ2ZXIvYXRvbS5jIgpAQCAtNzYwLDcgKzc2MCw3IEBACiAgICMgT21pdCBzb21lIGludGVybmFsIG9yIG9ic29sZXRlIG9wdGlvbnMgdG8gbWFrZSB0aGUgbGlzdCBsZXNzIGltcG9zaW5nLgogICAjIFRoaXMgbWVzc2FnZSBpcyB0b28gbG9uZyB0byBiZSBhIHN0cmluZyBpbiB0aGUgQS9VWCAzLjEgc2guCiAgIGNhdCA8PF9BQ0VPRgotXGBjb25maWd1cmUnIGNvbmZpZ3VyZXMgV2luZSAyMDAyMDYwNSB0byBhZGFwdCB0byBtYW55IGtpbmRzIG9mIHN5c3RlbXMuCitcYGNvbmZpZ3VyZScgY29uZmlndXJlcyBXaW5lIDIwMDIwNzEwIHRvIGFkYXB0IHRvIG1hbnkga2luZHMgb2Ygc3lzdGVtcy4KIAogVXNhZ2U6ICQwIFtPUFRJT05dLi4uIFtWQVI9VkFMVUVdLi4uCiAKQEAgLTgyNSw3ICs4MjUsNyBAQAogCiBpZiB0ZXN0IC1uICIkYWNfaW5pdF9oZWxwIjsgdGhlbgogICBjYXNlICRhY19pbml0X2hlbHAgaW4KLSAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1cmF0aW9uIG9mIFdpbmUgMjAwMjA2MDU6Ijs7CisgICAgIHNob3J0IHwgcmVjdXJzaXZlICkgZWNobyAiQ29uZmlndXJhdGlvbiBvZiBXaW5lIDIwMDIwNzEwOiI7OwogICAgZXNhYwogICBjYXQgPDxcX0FDRU9GCiAKQEAgLTkxOCw3ICs5MTgsNyBAQAogdGVzdCAtbiAiJGFjX2luaXRfaGVscCIgJiYgZXhpdCAwCiBpZiAkYWNfaW5pdF92ZXJzaW9uOyB0aGVuCiAgIGNhdCA8PFxfQUNFT0YKLVdpbmUgY29uZmlndXJlIDIwMDIwNjA1CitXaW5lIGNvbmZpZ3VyZSAyMDAyMDcxMAogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjUzCiAKIENvcHlyaWdodCAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAxOTk2LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyCkBAIC05MzMsNyArOTMzLDcgQEAKIFRoaXMgZmlsZSBjb250YWlucyBhbnkgbWVzc2FnZXMgcHJvZHVjZWQgYnkgY29tcGlsZXJzIHdoaWxlCiBydW5uaW5nIGNvbmZpZ3VyZSwgdG8gYWlkIGRlYnVnZ2luZyBpZiBjb25maWd1cmUgbWFrZXMgYSBtaXN0YWtlLgogCi1JdCB3YXMgY3JlYXRlZCBieSBXaW5lICRhc19tZSAyMDAyMDYwNSwgd2hpY2ggd2FzCitJdCB3YXMgY3JlYXRlZCBieSBXaW5lICRhc19tZSAyMDAyMDcxMCwgd2hpY2ggd2FzCiBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTMuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKIAogICAkICQwICRACkBAIC0xMzY0Miw3ICsxMzY0Miw3IEBACiB9ID4mNQogY2F0ID4mNSA8PF9DU0VPRgogCi1UaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5IFdpbmUgJGFzX21lIDIwMDIwNjA1LCB3aGljaCB3YXMKK1RoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgV2luZSAkYXNfbWUgMjAwMjA3MTAsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjUzLiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgQ09ORklHX0ZJTEVTICAgID0gJENPTkZJR19GSUxFUwpAQCAtMTM3MDQsNyArMTM3MDQsNyBAQAogCiBjYXQgPj4kQ09ORklHX1NUQVRVUyA8PF9BQ0VPRgogYWNfY3NfdmVyc2lvbj0iXFwKLVdpbmUgY29uZmlnLnN0YXR1cyAyMDAyMDYwNQorV2luZSBjb25maWcuc3RhdHVzIDIwMDIwNzEwCiBjb25maWd1cmVkIGJ5ICQwLCBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTMsCiAgIHdpdGggb3B0aW9ucyBcXCJgZWNobyAiJGFjX2NvbmZpZ3VyZV9hcmdzIiB8IHNlZCAncy9bXFwiIlxgXCRdL1xcXFwmL2cnYFxcIgogCg==